@charset "UTF-8";
@font-face {
  font-family: "NotoSans";
  src: url("../fonts/NotoSansJP-Thin.woff") format("woff"), url("../fonts/NotoSansJP-Thin.woff2") format("woff2"), url("../fonts/NotoSansJP-Thin.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "NotoSans";
  src: url("../fonts/NotoSansJP-Light.woff") format("woff"), url("../fonts/NotoSansJP-Light.woff2") format("woff2"), url("../fonts/NotoSansJP-Light.otf") format("opentype");
  font-weight: nomal;
  font-style: normal;
}
@font-face {
  font-family: "NotoSans";
  src: url("../fonts/NotoSansJP-Regular.woff") format("woff"), url("../fonts/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/NotoSansJP-Regular.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "NotoSans";
  src: url("../fonts/NotoSansJP-Medium.woff") format("woff"), url("../fonts/NotoSansJP-Medium.woff2") format("woff2"), url("../fonts/NotoSansJP-Medium.otf") format("opentype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "NotoSans";
  src: url("../fonts/NotoSansJP-Bold.woff") format("woff"), url("../fonts/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/NotoSansJP-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "NotoSans";
  src: url("../fonts/NotoBK.woff") format("woff"), url("../fonts/NotoBK.otf") format("opentype");
  font-weight: 900;
  font-style: normal;
}
* {
  -ms-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
}

html, body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, ul, ol, li, dl, dt, dd, table, th, td, form, fieldset {
  -webkit-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -ms-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  font-family: "NotoSans", HelveticaNeue, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;
}

/* --------------------------------------------------------- */
.red {
  color: #e60033;
}

.blu {
  color: #0095d9;
}

.bg_red {
  background: #e60033;
}

.bg_blu {
  background: #0095d9;
}

/*----------------------------------------------------------------------*/
.indent {
  text-indent: -1em;
  padding-left: 1em;
}

/*----------------------------------------------------------------------*/
.bold {
  font-weight: 900;
}

.sbold {
  font-weight: 700;
}

/*----------------------------------------------------------------------*/
.left {
  text-align: left !important;
}

.right {
  text-align: right !important;
}

.center {
  text-align: center !important;
}

/*----------------------------------------------------------------------*/
ol, ul {
  list-style-type: none;
}

/*----------------------------------------------------------------------*/
.mb0 {
  margin-bottom: 0 !important;
}

/*========================================================================
BASIC
=========================================================================*/
/*----------------------------------------------------------------------*/
dl#profileBloc dd figure a:hover, dl#profileBloc dd figure img:hover, .top_thumb a:hover {
  -moz-opacity: 0.75;
  opacity: 0.75;
}

/*----------------------------------------------------------------------*/
#top_contents ul#top_reasonList li a:hover .cont_txt, #top_contents ul#top_reasonList li img, ul#bottomLinks li a:after, .navi_pic, a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
dl#profileBloc, .one_period.two_layout, ul#reform_picList li, ul#reform_picList, #picBox.two_layout, dl#whatsnew_Conatainer, #accessContainer, dl#greetingBody, #top_contents ul#top_reasonList, ul#bottomLinks, dl#footerContainer, ul#subnaviList {
  display: -moz-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/*----------------------------------------------------------------------*/
dl#profileBloc dd figure a, dl#profileBloc dd figure img, .voice_pic, .top_thumb a, .top_thumb img, #top_contents ul#top_reasonList li a, #top_contents ul#top_reasonList li img, #footLogo,
#footLogo img, .site-logo a, .site-logo img, .navi_pic img, ul#subnaviList li a, .pic_basic img, .pic_basic {
  width: 100%;
  height: auto;
  display: block;
}

ul#contact_infoList li, dl#profileBloc dt, dl#profileBloc dd, table#companyTable, ul.support_list li, dl.step_box dd p, dl.step_box dt, table#service_infoTable th, table#service_infoTable td, .voice_box, dl.voice_container dd p, #btnMore, #whatsnewTitle, #upDate, dl#whatsnew_Conatainer #Coming, #addressBox, dl#greetingBody, .headline_body p, ul.service_linklist li, #top_contents .cont_txt, ul#bottomLinks li, .one_period {
  font-size: 17px;
}
@media screen and (min-width: 1201px) and (max-width: 1919px) {
  ul#contact_infoList li, dl#profileBloc dt, dl#profileBloc dd, table#companyTable, ul.support_list li, dl.step_box dd p, dl.step_box dt, table#service_infoTable th, table#service_infoTable td, .voice_box, dl.voice_container dd p, #btnMore, #whatsnewTitle, #upDate, dl#whatsnew_Conatainer #Coming, #addressBox, dl#greetingBody, .headline_body p, ul.service_linklist li, #top_contents .cont_txt, ul#bottomLinks li, .one_period {
    font-size: min(17px, 1.2vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1200px) {
  ul#contact_infoList li, dl#profileBloc dt, dl#profileBloc dd, table#companyTable, ul.support_list li, dl.step_box dd p, dl.step_box dt, table#service_infoTable th, table#service_infoTable td, .voice_box, dl.voice_container dd p, #btnMore, #whatsnewTitle, #upDate, dl#whatsnew_Conatainer #Coming, #addressBox, dl#greetingBody, .headline_body p, ul.service_linklist li, #top_contents .cont_txt, ul#bottomLinks li, .one_period {
    font-size: max(15px, 1.333vw);
  }
}
@media screen and (max-width: 782px) {
  ul#contact_infoList li, dl#profileBloc dt, dl#profileBloc dd, table#companyTable, ul.support_list li, dl.step_box dd p, dl.step_box dt, table#service_infoTable th, table#service_infoTable td, .voice_box, dl.voice_container dd p, #btnMore, #whatsnewTitle, #upDate, dl#whatsnew_Conatainer #Coming, #addressBox, dl#greetingBody, .headline_body p, ul.service_linklist li, #top_contents .cont_txt, ul#bottomLinks li, .one_period {
    font-size: max(13px, 1.79vw);
  }
}

.force_headline, .support_list_headeline, dl.step_box dt .step_headline, dl.step_box dt em, .voice_headline, #access_companyName {
  font-size: 22px;
}
@media screen and (min-width: 1201px) and (max-width: 1919px) {
  .force_headline, .support_list_headeline, dl.step_box dt .step_headline, dl.step_box dt em, .voice_headline, #access_companyName {
    font-size: min(22px, 1.415vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1200px) {
  .force_headline, .support_list_headeline, dl.step_box dt .step_headline, dl.step_box dt em, .voice_headline, #access_companyName {
    font-size: max(18px, 1.666vw);
  }
}
@media screen and (max-width: 782px) {
  .force_headline, .support_list_headeline, dl.step_box dt .step_headline, dl.step_box dt em, .voice_headline, #access_companyName {
    font-size: max(16px, 2.301vw);
  }
}

/*----------------------------------------------------------------------*/
.d_none {
  display: none !important;
}

@media screen and (min-width: 981px) {
  .for_sp {
    display: none !important;
  }
}
@media screen and (max-width: 782px) {
  .for_pc {
    display: none !important;
  }
}
/* ----------------------------------------------------------------------------- */
.grecaptcha-badge {
  z-index: 9 !important;
}

/*----------------------------------------------------------------------*/
.section_basic,
.inner_basic {
  height: auto;
  margin: 0 auto;
  max-width: 1200px;
  padding: 60px 0;
}
@media screen and (max-width: 782px) {
  .section_basic,
  .inner_basic {
    padding: 9% 0;
  }
}

.section_basic {
  width: 90%;
}

.inner_basic {
  width: 100%;
}

/*----------------------------------------------------------------------*/
.section_title {
  width: 100%;
  font-size: 48px;
  color: #444;
  line-height: 140%;
  font-weight: 900;
  margin: 0 auto;
  position: relative;
}
.section_title span {
  display: inline-block;
  position: relative;
  z-index: 1;
  padding-left: 2em;
}
.section_title span:before {
  content: "";
  position: absolute;
  width: 1.5em;
  height: 1.5em;
  left: 0em;
  top: 0em;
  background-image: url("../img/plus1.webp");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
}
@media screen and (min-width:783px) and (max-width:1919px) {
  .section_title {
    font-size: max(40px, 2.501vw);
  }
}
@media screen and (max-width: 782px) {
  .section_title {
    font-size: 4.603vw;
  }
}
@media screen and (max-width:480px) {
  .section_title {
    font-size: 5.833vw;
  }
}
.section_title p {
  font-weight: 600;
  color: #639af6;
  font-size: 20px;
  line-height: 140%;
}
@media screen and (min-width:783px) and (max-width:1919px) {
  .section_title p {
    font-size: max(18px, 1.042vw);
  }
}
@media screen and (max-width: 782px) {
  .section_title p {
    font-size: max(14px, 2.555vw);
  }
}
@media screen and (max-width:480px) {
  .section_title p {
    font-size: min(13px, 3.75vw);
  }
}

/*----------------------------------------------------------------------*/
.in_section_title {
  width: 100%;
  font-size: 32px;
  color: #444;
  line-height: 140%;
  font-weight: 700;
  margin: 0 auto 1.5em;
  padding: 0 0 0 2em;
  position: relative;
}
@media screen and (min-width:783px) and (max-width:1919px) {
  .in_section_title {
    font-size: max(28px, 1.667vw);
  }
}
@media screen and (max-width: 782px) {
  .in_section_title {
    font-size: 3.32vw;
  }
}
@media screen and (max-width:480px) {
  .in_section_title {
    font-size: 4.583vw;
  }
}
.in_section_title p {
  color: #444;
  font-size: 18px;
  line-height: 140%;
}
@media screen and (min-width:783px) and (max-width:1919px) {
  .in_section_title p {
    font-size: max(16px, 1.042vw);
  }
}
@media screen and (max-width: 782px) {
  .in_section_title p {
    font-size: max(14px, 2.555vw);
  }
}
@media screen and (max-width:480px) {
  .in_section_title p {
    font-size: min(13px, 3.75vw);
  }
}
.in_section_title:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1.8em;
  height: 1.85em;
  background-image: url("../img/plus1.webp");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/*----------------------------------------------------------------------*/
.in_section_subtitle {
  font-weight: 700;
  color: #639af6;
  font-size: 24px;
  line-height: 140%;
  margin-bottom: 1em;
}
.in_section_subtitle span {
  position: relative;
  z-index: 1;
}
.in_section_subtitle span:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 2px;
  background: #639af6;
}
@media screen and (min-width:783px) and (max-width:1919px) {
  .in_section_subtitle {
    font-size: max(22px, 1.25vw);
  }
}
@media screen and (max-width: 782px) {
  .in_section_subtitle {
    font-size: max(18px, 2.557vw);
  }
}
@media screen and (max-width:480px) {
  .in_section_subtitle {
    font-size: min(16px, 3.75vw);
  }
}

/*----------------------------------------------------------------------*/
.home section {
  width: 100vw;
  height: auto;
  margin: 0 calc(50% - 50vw);
}

#Contents01 .section_basic,
#Contents01 #top_contents,
#Contents02 .section_basic,
#Contents02 #top_contents,
#Contents03 .section_basic,
#Contents03 #top_contents {
  padding: 0;
  max-width: inherit;
  width: 100%;
}

.home .content-area {
  margin-bottom: 0;
}

/*----------------------------------------------------------------------*/
.pic_basic {
  padding: 0;
  margin: 0 auto;
}
/* --------------------------------------------------------- */
.link_more {
  display: block;
}
.link_more a {
  background: #639af6;
  border: 1px solid #639af6;
  font-weight: 700;
  color: #fff;
  border-radius: 100vh;
  padding: 0.4em 1em;
  font-size: 18px;
  text-decoration: none;
}
@media screen and (min-width: 981px) and (max-width: 1200px) {
  .link_more a {
    font-size: clamp(16px, 1.834vw, 18px);
  }
}
@media screen and (min-width:783px) and (max-width:1919px) {
  .link_more a {
    font-size: clamp(14px, 2.0434vw, 16px);
  }
}
@media screen and (max-width: 782px) {
  .link_more a {
    font-size: max(16px, 2.046vw);
  }
}
@media screen and (max-width:480px) {
  .link_more a {
    font-size: 3.33vw;
  }
}
.link_more a:hover {
  background: transparent;
  color: #639af6;
}

/*----------------------------------------------------------------------*/
.site-content {
  max-width: 1200px !important;
}

.entry-content, .blog .site-content {
  padding-top: 60px;
}
@media screen and (max-width: 782px) {
  .entry-content, .blog .site-content {
    padding-top: 6%;
  }
}

.home .entry-content {
  padding-top: 0;
}

.one_period {
  margin: 0 auto 45px;
}
.one_period p {
  margin-bottom: 1.6em;
}
.one_period p:last-of-type {
  margin-bottom: 0;
}
.one_period:last-of-type {
  margin-bottom: 0;
}

/* SUB NAVI
=========================================================================*/
#subNavi {
  width: 100%;
  height: auto;
  margin: 0 auto 90px;
}
@media screen and (max-width: 782px) {
  #subNavi {
    margin-bottom: 9%;
  }
}

/*----------------------------------------------------------------------*/
ul#subnaviList {
  list-style-type: none;
  width: 90%;
  height: auto;
  margin: 0 auto;
  max-width: 1200px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
ul#subnaviList li {
  width: 18%;
  height: auto;
  margin: 0 2% 0 0;
}
@media screen and (max-width: 782px) {
  ul#subnaviList li {
    width: 23%;
  }
  ul#subnaviList li:nth-of-type(4n) {
    margin-right: 0;
  }
}
ul#subnaviList li:nth-of-type(5n) {
  margin-right: 0;
}
@media screen and (max-width: 782px) {
  ul#subnaviList li:nth-of-type(5n) {
    margin-right: 2%;
  }
}
ul#subnaviList li p {
  text-align: center;
  margin: 0;
}
ul#subnaviList li a {
  text-decoration: none;
  color: #639af6;
  line-height: 140%;
  font-weight: 700;
  font-size: 16px;
}
@media screen and (min-width: 981px) and (max-width: 1200px) {
  ul#subnaviList li a {
    font-size: clamp(14px, 1.33vw, 16px);
  }
}
@media screen and (min-width:783px) and (max-width:1919px) {
  ul#subnaviList li a {
    font-size: clamp(13px, 1.428vw, 14px);
  }
}
@media screen and (max-width: 782px) {
  ul#subnaviList li a {
    font-size: max(12px, 1.79vw);
  }
}
@media screen and (max-width:480px) {
  ul#subnaviList li a {
    font-size: 2.5vw;
  }
}

/*----------------------------------------------------------------------*/
.navi_pic {
  width: 45%;
  margin: 0 auto 0.5em;
  height: auto;
  display: block;
}
/*=========================================================================
HEADER
=========================================================================*/
.top-bar-content, .main-header-content, .home-header-content, .site-bottom-content {
  max-width: 1200px !important;
}

.main-header-content,
.footer-widget-content,
.site-bottom-content {
  padding: 0 2%;
}

/* --------------------------------------------------------- */
.site-header {
  margin-bottom: 0em !important;
  border: 0 !important;
}

/* --------------------------------------------------------- */
.main-header {
  max-height: 120px;
  padding-bottom: 0 !important;
  padding: 1.5em 0 0.5em !important;
  margin: 0 auto;
}

.main-header-clone {
  padding: 1em 0 0.5em !important;
}

/* --------------------------------------------------------- */
.site-branding {
  background: none;
  padding: 0;
  width: 24%;
}

/* --------------------------------------------------------- */
.site-logo {
  padding: 0;
  max-width: 240px;
}
/* --------------------------------------------------------- */
.main-navigation {
  margin-left: 4%;
  width: 72%;
  line-height: 120% !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 783px) and (max-width: 980px) {
  .main-navigation {
    width: 100% !important;
    margin: 0 auto !important;
    display: block;
    padding-top: 30px;
  }
}
@media screen and (max-width: 782px) {
  .main-navigation {
    width: 100% !important;
    margin: 0 auto !important;
    display: block;
    padding-top: 30px;
  }
}
.main-navigation ul li {
  line-height: 140%;
  margin: 0% 3% 0 0 !important;
  padding: 0 0 2% !important;
}
@media screen and (min-width: 783px) and (max-width: 980px) {
  .main-navigation ul li {
    width: 100% !important;
    border-bottom: 1px solid #ccc;
    display: block;
    padding: 0 !important;
    margin: 0 auto !important;
  }
  .main-navigation ul li:first-of-type {
    border-top: 1px solid #ccc;
  }
}
@media screen and (max-width: 782px) {
  .main-navigation ul li {
    width: 100% !important;
    padding: 0 !important;
    border-bottom: 1px solid #ccc;
    margin: 0 auto !important;
  }
  .main-navigation ul li:first-of-type {
    border-top: 1px solid #ccc;
  }
}
.main-navigation ul li a {
  padding: 0 !important;
  margin: 0;
  display: block;
  font-size: 18px !important;
}
@media screen and (min-width: 981px) and (max-width: 1200px) {
  .main-navigation ul li a {
    font-size: 1.5vw !important;
  }
}
@media screen and (min-width: 783px) and (max-width: 980px) {
  .main-navigation ul li a {
    font-size: 1.632vw !important;
    margin-bottom: 0 !important;
    padding: 0.8em 1em !important;
  }
}
@media screen and (max-width: 782px) {
  .main-navigation ul li a {
    font-size: 2.416vw !important;
    margin-bottom: 0 !important;
    padding: 0.8em 1em !important;
  }
}
@media screen and (max-width:480px) {
  .main-navigation ul li a {
    font-size: 3.75vw !important;
    width: 100%;
  }
}
.main-navigation ul li a:hover {
  color: #639af6;
}
@media screen and (min-width: 783px) and (max-width: 980px) {
  .main-navigation ul li a:hover {
    background: #f7f7f7;
  }
}
@media screen and (max-width: 782px) {
  .main-navigation ul li a:hover {
    background: #f7f7f7;
  }
}

/* --------------------------------------------------------- */
.drawer-navigation-content {
  padding: 8vh 4% 5vh 1.2em;
}

.drawer-navigation ul {
  width: 100%;
}

.drawer-navigation ul li ß a:hover {
  color: #639af6;
}

/*=========================================================================
FOOTER
=========================================================================*/
#Footer {
  background: #003e97;
  padding: 3em 0 1em;
}

/* --------------------------------------------------------- */
#Copy {
  text-align: center;
  font-size: 13px;
  color: #fff;
  margin-bottom: 0;
  padding: 0;
}
@media screen and (max-width: 782px) {
  #Copy {
    font-size: 1.662vw;
  }
}
@media screen and (max-width:480px) {
  #Copy {
    font-size: 2.708vw;
  }
}

/* --------------------------------------------------------- */
dl#footerContainer {
  width: 90%;
  max-width: 1200px;
  height: auto;
  margin: 0 auto;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 782px) {
  dl#footerContainer {
    display: block;
  }
}
dl#footerContainer dt, dl#footerContainer dd {
  height: auto;
}
dl#footerContainer dt {
  width: 24%;
  margin-right: 4%;
}
@media screen and (max-width: 782px) {
  dl#footerContainer dt {
    width: 48%;
    margin: 0 auto 6%;
  }
}
dl#footerContainer dd {
  width: 72%;
  margin: 0;
}
@media screen and (max-width: 782px) {
  dl#footerContainer dd {
    width: 90%;
    margin: 0 auto;
  }
}

/* --------------------------------------------------------- */
#footLogo {
  padding: 0;
  margin: 0;
  max-width: 200px;
}
@media screen and (max-width: 782px) {
  #footLogo {
    margin: 0 auto;
    max-width: inherit;
  }
}

/* --------------------------------------------------------- */
ul#bottomLinks {
  list-style-type: none;
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0 auto 4%;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 782px) {
  ul#bottomLinks {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
ul#bottomLinks li {
  margin: 0 3% 3% 0;
  line-height: 140%;
  font-weight: 700;
}
ul#bottomLinks li:nth-fo-type(4n) {
  margin-right: 0;
}
ul#bottomLinks li a {
  font-size: 80%;
  position: relative;
  color: #fff;
  text-decoration: none;
}
ul#bottomLinks li a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0%;
  height: 2px;
  background: #ff0;
  opacity: 0;
}
ul#bottomLinks li a:hover {
  color: #ff0;
}
ul#bottomLinks li a:hover:after {
  width: 100%;
  opacity: 1;
}

/*=========================================================================
TOP：MAIN VISUAL
=========================================================================*/
.home .subheader,
.home .jumbotron-title {
  display: none;
}

/* --------------------------------------------------------- */
.jumbotron-overlay {
  background: rgba(99, 154, 246, 0.4) !important;
}

/* --------------------------------------------------------- */
#visualBox {
  width: 100%;
  height: auto;
  overflow: hidden;
}

.jumbotron-content {
  height: 280px;
  position: relative;
  z-index: 1;
  margin-bottom: 0;
}
@media screen and (max-width: 782px) {
  .jumbotron-content {
    height: 20vh;
  }
}

.home .jumbotron-content {
  height: 480px;
  max-width: inherit !important;
  overflow: hidden;
}
@media screen and (max-width: 782px) {
  .home .jumbotron-content {
    height: 30vh;
  }
}

/* --------------------------------------------------------- */
.jumbotron {
  background-image: url("../img/header.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  -webkit-animation: animationZoom 60s ease-in-out infinite;
          animation: animationZoom 60s ease-in-out infinite;
  overflow: hidden;
}

/* --------------------------------------------------------- */
@-webkit-keyframes animationZoom {
  80% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@keyframes animationZoom {
  80% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
/* --------------------------------------------------------- */
#top_visualCatch {
  position: absolute;
  left: 50%;
  top: 45%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 90%;
  height: 100%;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#top_visualCatch #visualCatch {
  color: #fff;
  font-weight: 900;
  line-height: 160%;
  font-size: 36px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
@media screen and (min-width:783px) and (max-width:1919px) {
  #top_visualCatch #visualCatch {
    font-size: max(30px, 1.875vw);
  }
}
@media screen and (max-width: 782px) {
  #top_visualCatch #visualCatch {
    font-size: 3.23vw;
  }
}
@media screen and (max-width:480px) {
  #top_visualCatch #visualCatch {
    font-size: 5vw;
  }
}

.jumbotron-title {
  line-height: 140%;
}

.subheader {
  color: #fff;
  line-height: 100%;
  font-weight: 900;
  margin-bottom: 0.5em;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

/*=========================================================================
TOP：TOP CONTENTS
=========================================================================*/
#Contents01 {
  padding: 45px 0;
}
@media screen and (max-width: 782px) {
  #Contents01 {
    padding: 6% 0;
  }
}
#Contents01 .section_title {
  width: 90%;
  max-width: 1200px;
}

/* --------------------------------------------------------- */
#top_contents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  /* --------------------------------------------------------- */
  /* --------------------------------------------------------- */
}
#top_contents ul#top_reasonList {
  width: 100%;
  gap: inherit;
  margin: 0 auto 2.5em;
  list-style-type: none;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
#top_contents ul#top_reasonList li {
  display: block !important;
  width: 19%;
  height: auto;
  margin: 0;
  -webkit-box-flex: inherit !important;
      -ms-flex: inherit !important;
          flex: inherit !important;
  max-width: inherit !important;
}
#top_contents ul#top_reasonList li:nth-of-type(5n) {
  margin-right: 0;
}
@media screen and (max-width: 782px) {
  #top_contents ul#top_reasonList li {
    width: 48.5%;
  }
  #top_contents ul#top_reasonList li:nth-of-type(3n) {
    margin-right: 3%;
  }
  #top_contents ul#top_reasonList li:nth-of-type(even) {
    margin-right: 0;
  }
}
#top_contents ul#top_reasonList li a, #top_contents ul#top_reasonList li img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#top_contents ul#top_reasonList li img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 0;
}
#top_contents ul#top_reasonList li .thumb_cover {
  position: relative;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  padding-bottom: 100%;
  overflow: hidden;
}
#top_contents ul#top_reasonList li a {
  text-decoration: none !important;
  width: 100%;
  font-weight: 600;
  position: relative;
}
#top_contents ul#top_reasonList li a:hover .thumb_cover img {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
}
#top_contents ul#top_reasonList li a:hover .cont_txt {
  background: rgba(22, 154, 246, 0.8);
  color: #fff;
}
#top_contents .cont_txt {
  position: absolute;
  width: 80%;
  display: inline-block;
  z-index: 1;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: rgba(255, 255, 255, 0.8);
  color: #444;
  text-align: center;
  font-weight: 900;
  line-height: 140%;
  padding: 0.6em 1em;
}

/*=========================================================================
TOP：Section #02,#03
=========================================================================*/
#Contents02, #Contents03 {
  background: #f5fbff;
}
#Contents02 .two_layout, #Contents03 .two_layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 980px) {
  #Contents02 .two_layout, #Contents03 .two_layout {
    display: block;
  }
}
#Contents02 .two_layout .pic_basic, #Contents02 .two_layout .serviec_linkbox, #Contents03 .two_layout .pic_basic, #Contents03 .two_layout .serviec_linkbox {
  width: 50%;
  margin: 0;
}
@media screen and (max-width: 980px) {
  #Contents02 .two_layout .pic_basic, #Contents02 .two_layout .serviec_linkbox, #Contents03 .two_layout .pic_basic, #Contents03 .two_layout .serviec_linkbox {
    width: 100%;
    margin: 0 auto;
  }
}
#Contents02 .two_layout .pic_basic, #Contents03 .two_layout .pic_basic {
  position: relative;
  z-index: 1;
  padding-bottom: 35%;
  overflow: hidden;
}
@media screen and (max-width: 980px) {
  #Contents02 .two_layout .pic_basic, #Contents03 .two_layout .pic_basic {
    padding-bottom: 40%;
  }
}
#Contents02 .two_layout .pic_basic img, #Contents03 .two_layout .pic_basic img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 980px) {
  #Contents02 .two_layout .pic_basic img, #Contents03 .two_layout .pic_basic img {
    -o-object-position: center top;
       object-position: center top;
  }
}
#Contents02 .link_more, #Contents03 .link_more {
  margin: 6% auto 0 !important;
  width: 90%;
  text-align: center;
}
@media screen and (max-width: 782px) {
  #Contents02 .link_more, #Contents03 .link_more {
    margin: 6% auto 0 !important;
  }
}

/* --------------------------------------------------------- */
.serviec_linkbox {
  padding: 4% 0;
}
@media screen and (max-width: 782px) {
  .serviec_linkbox {
    padding: 6% 0;
  }
}
.serviec_linkbox .section_title {
  width: 90%;
  margin-bottom: 2%;
}

/* --------------------------------------------------------- */
ul.service_linklist {
  list-style-type: none;
  width: 90%;
  height: auto;
  margin: 0 auto !important;
}
ul.service_linklist li {
  margin-bottom: 3%;
  padding: 0;
}
ul.service_linklist li:last-of-type {
  margin-bottom: 0;
}
ul.service_linklist li a {
  font-weight: 700;
  color: #639af6;
  text-decoration: underline;
}
ul.service_linklist li a:hover {
  color: #639af6;
  text-decoration: none;
}
ul.service_linklist li p {
  font-size: 80%;
  margin-bottom: 0;
}
@media screen and (max-width: 980px) {
  ul.service_linklist li p {
    font-size: 90%;
  }
}

/* --------------------------------------------------------- */
#Contents03 .two_layout {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
#Contents03 .section_title {
  text-align: right;
}
@media screen and (max-width: 980px) {
  #Contents03 .section_title {
    text-align: left;
  }
}
#Contents03 ul.service_linklist li {
  text-align: right;
}
@media screen and (max-width: 980px) {
  #Contents03 ul.service_linklist li {
    text-align: left;
  }
}
#Contents03 .link_more {
  margin: 3% auto 0;
  width: 90%;
}

/*=========================================================================
TOP：Section #04
=========================================================================*/
#Contents04 .section_basic {
  padding: 60px 0;
  max-width: 1200px;
}
@media screen and (max-width: 782px) {
  #Contents04 .section_basic {
    padding: 6% 0;
  }
}

/* --------------------------------------------------------- */
ul#top_contentsList {
  list-style-type: none;
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 782px) {
  ul#top_contentsList {
    display: block;
  }
}
ul#top_contentsList li {
  list-style-type: none;
  width: 31.3333%;
  height: auto;
  margin-right: 2%;
}
@media screen and (max-width: 782px) {
  ul#top_contentsList li {
    width: 96%;
    margin: 0 auto 6%;
  }
}
ul#top_contentsList li:last-of-type {
  margin-right: 0;
}
@media screen and (max-width: 782px) {
  ul#top_contentsList li:last-of-type {
    margin-bottom: 0;
  }
}
ul#top_contentsList.one_contents li {
  width: 76%;
  margin: 0 auto;
}
ul#top_contentsList.one_contents li .top_sub_headline {
  font-size: 120%;
}
@media screen and (max-width: 782px) {
  ul#top_contentsList.one_contents li {
    width: 100%;
  }
}

/* --------------------------------------------------------- */
dl.top_contbody {
  width: 100%;
  height: auto;
  position: relative;
  z-index: 1;
}
dl.top_contbody dt, dl.top_contbody dd {
  width: 100%;
  height: auto;
  margin: 0;
  position: relative;
  z-index: 1;
}

/* --------------------------------------------------------- */
.top_thumb {
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0 auto 1.2em;
}
@media screen and (max-width: 782px) {
  .top_thumb {
    margin-bottom: 4%;
  }
}
/* --------------------------------------------------------- */
.headline_body {
  height: auto;
}
.headline_body p {
  line-height: 160%;
  color: #333;
}

/* --------------------------------------------------------- */
.top_sub_headline {
  position: relative;
  z-index: 1;
  font-weight: 0;
  line-height: 140%;
  padding: 0;
  margin: 0 0 1em;
  font-size: 18px;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 981px) and (max-width: 1200px) {
  .top_sub_headline {
    font-size: clamp(16px, 1.834vw, 18px);
  }
}
@media screen and (min-width: 783px) and (max-width: 980px) {
  .top_sub_headline {
    font-size: clamp(14px, 2.0434vw, 16px);
  }
}
@media screen and (max-width: 782px) {
  .top_sub_headline {
    font-size: max(18px, 3.23vw);
  }
}
@media screen and (max-width:480px) {
  .top_sub_headline {
    font-size: 3.75vw;
  }
}
.top_sub_headline a {
  color: #333;
  font-weight: 600;
  text-decoration: none;
}

/* --------------------------------------------------------- */
.mark_more {
  text-align: center;
}
.mark_more a {
  display: inline-block;
  background: #639af6;
  border: 1px solid #639af6;
  font-weight: 700;
  color: #fff;
  border-radius: 100vh;
  padding: 0.4em 1em;
  font-size: 18px;
  text-decoration: none;
  line-height: 100%;
}
@media screen and (min-width: 1201px) and (max-width: 1919px) {
  .mark_more a {
    font-size: max(16px, 0.8337vw);
  }
}
@media screen and (min-width: 769px) and (max-width: 1200px) {
  .mark_more a {
    font-size: min(14px, 1.25vw);
  }
}
@media screen and (max-width: 782px) {
  .mark_more a {
    font-size: max(16px, 2.046vw);
  }
}
@media screen and (max-width:480px) {
  .mark_more a {
    font-size: 3.33vw;
  }
}
.mark_more a:hover {
  background: transparent;
  color: #639af6;
}

/*=========================================================================
TOP：Section #05
=========================================================================*/
#Contents05 {
  background: #f5fbff;
}
#Contents05 .section_basic {
  width: 90%;
  max-width: 1060px;
}

/* --------------------------------------------------------- */
dl#greetingBody {
  width: 100%;
  height: auto;
  margin: 0 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 782px) {
  dl#greetingBody {
    display: block;
  }
}
dl#greetingBody dt, dl#greetingBody dd {
  height: auto;
  padding: 0 !important;
}
dl#greetingBody dt {
  width: 26%;
  margin: 0 !important;
}
@media screen and (max-width: 782px) {
  dl#greetingBody dt {
    width: 60%;
    max-width: 480px;
    margin: 0 auto 4% !important;
  }
}
@media screen and (max-width:480px) {
  dl#greetingBody dt {
    width: 90%;
  }
}
dl#greetingBody dt p {
  font-size: 90%;
  line-height: 140%;
  text-align: center !important;
  margin: 0.5em 0 0;
}
dl#greetingBody dd {
  width: 70%;
  margin: 0 4% 0 0 !important;
}
@media screen and (max-width: 782px) {
  dl#greetingBody dd {
    width: 100%;
    margin: 0 auto !important;
  }
}

/*=========================================================================
TOP：Section #06
=========================================================================*/
#Contents06 {
  background-image: url("../img/office.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  position: relative;
  z-index: 1;
  /* --------------------------------------------------------- */
}
#Contents06:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.94);
  z-index: -1;
}
#Contents06 .section_title {
  margin-bottom: 6%;
}
@media screen and (max-width: 782px) {
  #Contents06 .section_title {
    margin-bottom: 0;
  }
}

/* --------------------------------------------------------- */
#accessContainer {
  width: 100%;
  height: auto;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 782px) {
  #accessContainer {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
}

#addressBox, #mapBox {
  padding: 0;
  width: 50%;
  height: auto;
}
@media screen and (max-width: 782px) {
  #addressBox, #mapBox {
    width: 100%;
  }
}

/* --------------------------------------------------------- */
#mapBox {
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

.map_frame {
  position: relative;
  padding: 0 0 50%;
  width: 100%;
  overflow: hidden;
}
.map_frame img, .map_frame iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  margin: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

/* --------------------------------------------------------- */
#addressBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
}
@media screen and (max-width: 782px) {
  #addressBox {
    display: block;
    width: 90%;
    margin: 0 auto 6%;
  }
}
#addressBox .add_text {
  font-size: 110%;
  font-weight: 600;
  margin-bottom: 1em;
}
#addressBox .add_text:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 980px) {
  #addressBox .add_text {
    font-size: 100%;
  }
}
@media screen and (max-width: 782px) {
  #addressBox .add_text {
    font-size: 110%;
    padding: 0;
  }
}

/* --------------------------------------------------------- */
.add_inner {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 80%;
  margin: 0 auto;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media screen and (min-width: 783px) and (max-width: 980px) {
  .add_inner {
    width: 80%;
  }
}
@media screen and (max-width: 782px) {
  .add_inner {
    position: static;
    width: 100%;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

/* --------------------------------------------------------- */
#access_inBloc {
  border: 3px solid #868686;
  padding: 1em 1em;
  margin: 0 auto;
  max-width: 480px;
  text-align: center;
}

/* --------------------------------------------------------- */
#access_companyName {
  line-height: 140%;
  font-weight: 700;
  margin: 0 0 0.5em;
  text-align: center;
}

/* --------------------------------------------------------- */
#access_inBloc .tel-link {
  font-weight: 900;
  line-height: 140%;
  text-align: center;
  color: #e60033;
  margin-bottom: 0.5em;
  font-size: 40px;
}
@media screen and (min-width:783px) and (max-width:1919px) {
  #access_inBloc .tel-link {
    font-size: max(33px, 2.084vw);
  }
}
@media screen and (max-width: 782px) {
  #access_inBloc .tel-link {
    font-size: 5.882vw;
  }
}
@media screen and (max-width:480px) {
  #access_inBloc .tel-link {
    font-size: 4.583vw;
  }
}

/*=========================================================================
TOP：WHATS NEW
=========================================================================*/
section#whatsNew {
  width: 100vw;
  height: auto;
  margin: 0 calc(50% - 50vw);
  background: #003e97;
}

/* --------------------------------------------------------- */
dl#whatsnew_Conatainer {
  width: 90%;
  height: auto;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 782px) {
  dl#whatsnew_Conatainer {
    display: block;
    padding: 0.5em 0;
  }
}
dl#whatsnew_Conatainer dt, dl#whatsnew_Conatainer dd {
  padding: 1em 0;
  height: auto;
  color: #fff;
  line-height: 160%;
}
@media screen and (max-width: 782px) {
  dl#whatsnew_Conatainer dt, dl#whatsnew_Conatainer dd {
    padding: 0;
  }
}
dl#whatsnew_Conatainer dt p, dl#whatsnew_Conatainer dd p {
  margin: 0 !important;
}
dl#whatsnew_Conatainer dt {
  width: 17%;
  margin: 0 3% 0 0 !important;
}
@media screen and (max-width: 782px) {
  dl#whatsnew_Conatainer dt {
    width: 100%;
    margin: 0 !important;
  }
}
dl#whatsnew_Conatainer dd {
  width: 80%;
  margin: 0 !important;
  position: relative;
}
@media screen and (max-width: 782px) {
  dl#whatsnew_Conatainer dd {
    width: 100%;
  }
}
dl#whatsnew_Conatainer #Coming {
  padding: 1em 0;
  width: 100%;
  margin: 0;
  color: #fff;
  font-weight: 900;
  text-align: center;
}

/* --------------------------------------------------------- */
#upDate {
  color: #fff;
  font-weight: 900;
}

#whatsnewTitle {
  position: relative;
  font-weight: 600;
  width: 76%;
  margin: 0 !important;
  padding: 0 !important;
}
@media screen and (max-width: 782px) {
  #whatsnewTitle {
    width: 100%;
  }
}
#whatsnewTitle a {
  color: #fff;
  text-decoration: none;
}
#whatsnewTitle a:hover {
  color: #ff0;
}

/* --------------------------------------------------------- */
#btnMore {
  position: absolute;
  right: 0;
  top: 50%;
  width: 40%;
  text-align: right;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 782px) {
  #btnMore {
    text-align: right;
    position: static;
    -webkit-transform: translatY(0);
            transform: translatY(0);
    margin: 0.5em 0 0.5em auto;
  }
}
#btnMore a {
  font-weight: 900;
  background-color: #639af6;
  color: #fff;
  text-decoration: none;
  font-size: 80%;
  padding: 0.4em 1em 0.5em;
  display: inline-block;
  border-radius: 6px;
  line-height: 120%;
}
#btnMore a:hover {
  background-color: #fff;
  color: #003e97;
}

/*=========================================================================
VOICE
=========================================================================*/
#voiceCatch {
  text-align: center;
  margin: 0 auto 45px !important;
  padding: 0;
}
@media screen and (max-width: 782px) {
  #voiceCatch {
    margin-bottom: 6% !important;
  }
}

/* --------------------------------------------------------- */
ul#voiceList {
  list-style-type: none;
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 782px) {
  ul#voiceList {
    display: block;
  }
}
ul#voiceList li {
  width: 49%;
  height: auto;
  margin: 0 2% 2% 0;
  /* padding:  0 0 45px; */
  border: 1px solid #ccc;
  border-radius: 6px;
}
ul#voiceList li:nth-of-type(even) {
  margin-right: 0;
}
@media screen and (max-width: 782px) {
  ul#voiceList li:nth-of-type(even) {
    margin: 0 auto 6%;
  }
}
@media screen and (max-width: 782px) {
  ul#voiceList li {
    width: 100%;
    margin: 0 auto 6%;
    padding-bottom: 6%;
    border: 0;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
  }
  ul#voiceList li:last-of-type {
    border-bottom: 0;
    margin-bottom: 0;
  }
}

/* --------------------------------------------------------- */
dl.voice_container {
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 1.5em;
}
@media screen and (max-width: 782px) {
  dl.voice_container {
    padding: 0;
  }
}
dl.voice_container dt, dl.voice_container dd {
  height: auto;
  padding: 0;
}
dl.voice_container dt {
  width: 8em;
  margin: 0 4% 6% 0;
}
dl.voice_container dt:last-of-type {
  margin-bottom: 0;
}
dl.voice_container dd {
  width: calc(100% - (8em + 4%));
  margin: 0 0 6%;
}
dl.voice_container dd:last-of-type {
  margin-bottom: 0;
}
dl.voice_container dd p {
  margin-bottom: 0 !important;
}

/* --------------------------------------------------------- */
.voice_headline {
  line-height: 140%;
  font-weight: 600;
  width: 100%;
  margin: 0 auto 0.5em;
  position: relative;
  /* padding: 0 0 0 8em; */
}
.voice_headline span {
  position: relative;
  background-color: #fff;
  padding: 0 1em;
}
.voice_headline span:after {
  content: "";
  position: absolute;
  z-index: -1;
  left: -8em;
  top: 50%;
  width: calc(100% + 8em);
  height: 1px;
  background: #444;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* --------------------------------------------------------- */
.voice_pic {
  padding: 0;
  overflow: hidden;
  border-radius: 100%;
  padding-bottom: 100%;
  background: #f5fbff;
  border: 1px solid #ccc;
  position: relative;
}
.voice_pic img {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 90%;
  height: auto;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

/* --------------------------------------------------------- */
.voice_box {
  margin-bottom: 1.6em;
}
.voice_box:last-of-type {
  margin-bottom: 0;
}
.voice_box p {
  font-size: 90%;
  margin-bottom: 1.2em !important;
  line-height: 180%;
}
.voice_box p:last-of-type {
  margin-bottom: 0 !important;
}

/*=========================================================================
SERVICE
=========================================================================*/
#page_Service #Service01.inner_basic {
  padding-top: 0;
}

#page_Service section {
  border-bottom: 1px solid #ccc;
}
#page_Service section:last-of-type {
  border-bottom: 0;
}

/* --------------------------------------------------------- */
#picBox {
  width: 100%;
  height: auto;
  margin: 0 auto 6%;
}
#picBox.two_layout .pic_basic {
  width: 48%;
  margin-right: 4%;
}
#picBox.two_layout .pic_basic:nth-of-type(even) {
  margin-right: 0;
}

/* --------------------------------------------------------- */
table#service_infoTable {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
table#service_infoTable th, table#service_infoTable td {
  width: 50%;
  line-height: 140%;
  color: #050505;
}
table#service_infoTable th {
  padding: 0.4em 1em;
  text-align: center;
  font-weight: 900;
}
table#service_infoTable th.bg_red {
  background: #e60033 !important;
  border: 1px solid #e60033;
}
table#service_infoTable th.bg_red strong {
  color: #fff;
}
table#service_infoTable th.bg_blu {
  background: #0095d9 !important;
  border: 1px solid #0095d9;
}
table#service_infoTable th.bg_blu strong {
  color: #fff;
}
table#service_infoTable td {
  padding: 0.6em 1em;
  border: 1px solid #444;
}

/* --------------------------------------------------------- */
ul#reform_picList {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
ul#reform_picList li {
  width: 48%;
  height: auto;
  margin: 0 4% 4% 0;
}
ul#reform_picList li:nth-of-type(even) {
  margin-right: 0;
}
ul#reform_picList li .pic_basic {
  width: 50%;
}
@media screen and (max-width: 782px) {
  ul#reform_picList li {
    width: 100%;
    margin: 0 auto 4%;
  }
  ul#reform_picList li:nth-of-type(even) {
    margin: 0 auto 4%;
  }
  ul#reform_picList li:nth-of-type(even):last-of-type {
    margin-bottom: 0;
  }
}

.reform_list_cap {
  font-size: 15px;
  line-height: 140%;
  margin: 0.5em 0 0;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 782px) {
  .reform_list_cap {
    font-size: 2.25vw;
  }
}
@media screen and (max-width:480px) {
  .reform_list_cap {
    font-size: 3.125vw;
  }
}

/* --------------------------------------------------------- */
ul#stepList {
  list-style-type: none;
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0;
}
ul#stepList li {
  width: 100%;
  height: auto;
  margin: 0 auto 30px;
  padding: 0;
}
ul#stepList li:last-of-type {
  margin-bottom: 0;
}

/* --------------------------------------------------------- */
dl.step_box {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0;
}
dl.step_box dt, dl.step_box dd {
  padding: 0;
  margin: 0;
  height: auto;
}
dl.step_box dt {
  margin-bottom: 0.2em;
  font-weight: 900;
}
dl.step_box dt span {
  font-size: 110%;
}
dl.step_box dt em {
  font-weight: 900;
  font-style: normal;
  line-height: 140%;
  padding-left: 0.3em;
}
dl.step_box dt .step_headline {
  margin: 0 0 0 0.8em;
  line-height: 140%;
  font-weight: 700;
  display: inline-block;
}
dl.step_box dd {
  padding: 0 1em;
  position: relative;
}
dl.step_box dd p {
  margin-bottom: 1em;
}
dl.step_box dd p:last-of-type {
  margin-bottom: 0;
}
dl.step_box dd p:before {
  content: "";
  position: absolute;
  left: 0;
  top: 1em;
  width: 0.8em;
  height: 1px;
  background: #444;
}

/*=========================================================================
SUPPORT
=========================================================================*/
#page_Support section {
  border-bottom: 1px solid #ccc;
}
#page_Support section:last-of-type {
  border-bottom: 0;
}

/* --------------------------------------------------------- */
#Introduction {
  padding-bottom: 45px;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 782px) {
  #Introduction {
    padding-bottom: 4%;
  }
}

/* --------------------------------------------------------- */
ul.support_list {
  padding: 2.5em 1.5em;
  list-style-type: none;
  border: 2px solid #003e97;
  background: #f5fbff;
  border-radius: 6px;
  display: inline-block;
  margin: 45px auto;
  position: relative;
}
@media screen and (max-width: 782px) {
  ul.support_list {
    margin: 9% auto 0;
    padding: 2.5em 1.5em;
  }
}
ul.support_list li {
  font-weight: 700;
  margin-bottom: 0.5em;
}
ul.support_list li:last-of-type {
  margin-bottom: 0;
}

/* --------------------------------------------------------- */
.support_list_headeline {
  display: inline-block;
  padding: 0.5em 1em;
  background: #fff;
  position: absolute;
  line-height: 140%;
  left: -1.5em;
  top: -3em;
  z-index: 2;
  border: 2px solid #003e97;
  border-radius: 6px;
}

/* --------------------------------------------------------- */
.one_period.two_layout {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 782px) {
  .one_period.two_layout {
    display: block;
  }
}
.one_period.two_layout ul.support_list {
  width: 40%;
  margin: 0;
}
@media screen and (max-width: 782px) {
  .one_period.two_layout ul.support_list {
    width: 80%;
    margin: 0 auto !important;
    display: block;
  }
}

.two_box_container {
  width: 54%;
  height: auto;
  margin-right: 6%;
}
@media screen and (max-width: 782px) {
  .two_box_container {
    width: 100%;
    margin: 0 auto 2em;
  }
}

/* --------------------------------------------------------- */
.force_headline {
  display: block;
  margin: 0 0 0.4em;
  line-height: 140%;
}
.force_headline span {
  color: #0095d9;
  display: block;
  line-height: 100%;
  margin-bottom: 0.4em;
  position: relative;
  z-index: 1;
  padding-left: 1em;
}
.force_headline span:before {
  content: "";
  left: 0;
  top: 0;
  position: absolute;
  width: 0.5em;
  height: 100%;
  border-radius: 2px;
  border: 1px solid #f5fbff;
  background: #0095d9;
  /*background: linear-gradient(90deg, rgba(0, 62, 151, 1) 0%, rgba(106, 185, 235, 1) 51%, rgba(181, 216, 242, 0.49) 82%);
  */
}

/* --------------------------------------------------------- */
#supportBox {
  background: #f5fbff;
  border: 2px solid #003e97;
  padding: 2em 1em;
  margin: 1.5em 0;
  width: 100%;
  max-width: 780px;
}

/*=========================================================================
COMPANY
=========================================================================*/
table#companyTable {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
table#companyTable th, table#companyTable td {
  padding: 1em 1.2em;
  border: 1px solid #eee;
  line-height: 180%;
}
table#companyTable th {
  width: 32%;
  background: #eee;
  font-weight: 900;
  border-bottom-color: #fff;
}
table#companyTable td {
  width: 68%;
}
table#companyTable tr:last-of-type th {
  border-bottom-color: #eee;
}

/* --------------------------------------------------------- */
#company_dataBloc.two_layout {
  margin: 0 auto;
}
#company_dataBloc.two_layout table#companyTable {
  width: 100%;
  margin-bottom: 4%;
}
#company_dataBloc.two_layout #companyMap {
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 640px) {
  #company_dataBloc.two_layout {
    display: block;
  }
}
#company_dataBloc.two_layout .pic_basic {
  width: 48%;
  margin-right: 4%;
}
@media screen and (max-width: 640px) {
  #company_dataBloc.two_layout .pic_basic {
    width: 100%;
    margin: 0 auto 4%;
    max-width: 480px;
  }
}
#company_dataBloc.two_layout .map_frame {
  width: 48%;
  padding-bottom: 48% !important;
}
@media screen and (max-width: 640px) {
  #company_dataBloc.two_layout .map_frame {
    width: 100%;
    padding-bottom: 70% !important;
    max-width: 480px;
    margin: 0 auto;
  }
}

dl#profileBloc {
  width: 100%;
  height: auto;
  margin: 0 auto !important;
  padding: 0 !important;
}
@media screen and (max-width: 640px) {
  dl#profileBloc {
    display: block;
  }
}
dl#profileBloc dt, dl#profileBloc dd {
  height: auto;
  padding: 0;
}
dl#profileBloc dt {
  width: 63%;
  margin: 0 4% 0 0 !important;
}
@media screen and (max-width: 640px) {
  dl#profileBloc dt {
    width: 100%;
    margin: 0 auto 6% !important;
  }
}
dl#profileBloc dt p {
  font-weight: 500;
}
dl#profileBloc dd {
  width: 33%;
  margin: 0 !important;
}
@media screen and (max-width: 640px) {
  dl#profileBloc dd {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
dl#profileBloc dd figure {
  margin-bottom: 4%;
  padding: 0;
}
@media screen and (max-width: 640px) {
  dl#profileBloc dd figure {
    width: 48%;
    margin: 0 4% 4% 0;
  }
  dl#profileBloc dd figure:nth-of-type(even) {
    margin-right: 0;
  }
}
dl#profileBloc dd figure figcaption {
  font-size: 80%;
  text-align: center;
}
dl#profileBloc dd figure:last-of-type {
  margin-bottom: 0;
}

/*=========================================================================
CONTACT
=========================================================================*/
#page_Contact #Contact.inner_basic {
  padding-top: 0;
}

/* --------------------------------------------------------- */
ul#contact_infoList {
  list-style-type: none;
  width: 100%;
  height: auto;
  margin: 0 auto 45px;
  max-width: 900px;
}
@media screen and (max-width: 782px) {
  ul#contact_infoList {
    margin-bottom: 6%;
  }
}
ul#contact_infoList li {
  margin-bottom: 0.5em;
}
ul#contact_infoList li:last-of-type {
  margin-bottom: 0;
}
ul#contact_infoList li p {
  font-size: 90%;
}
ul#contact_infoList li.border {
  margin: 45px 0;
  border-top: 1px solid #ccc;
  padding-top: 30px;
}

/* --------------------------------------------------------- */
#mail_notesBox {
  border: 1px solid #ccc;
  padding: 2em 2em;
  border-radius: 6px;
  margin: 30px auto 0;
  max-width: 800px;
}

/* --------------------------------------------------------- */
#btnMail {
  max-width: 900px;
  text-align: center;
  width: 100%;
  margin: 0 auto;
}
#btnMail a {
  display: inline-block;
  padding: 1.2rem 2rem;
  font-weight: 900;
  background: #BEDBF1;
  background: linear-gradient(126deg, rgb(190, 219, 241) 0%, rgb(0, 147, 216) 20%, rgb(0, 127, 200) 50%, rgb(6, 58, 148) 80%, rgb(142, 142, 197) 100%);
  color: #fff;
  border: 2px solid #003e97;
  line-height: 120%;
  text-decoration: none;
  border-radius: 6px;
  font-size: 110%;
}
#btnMail a:hover {
  background: transparent;
  color: #003e97;
}