#header::before {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
#header.scroll::before {
  opacity: 1;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
#header {
  margin-top: 40px;
}
#header .hd-bar {
  position: fixed;
  width: 100%;
  height: 40px;
  left: 0;
  top: 0;
  background: #000;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#header .hd-bar p {
  text-align: center;
  font-size: 13px;
  line-height: 1.4;
  margin-bottom: 0.1em;
}
@media only screen and (max-width: 768px) {
  #header {
    margin-top: 11.2820512821vw;
  }
  #header .hd-bar {
    height: 11.2820512821vw;
  }
  #header .hd-bar p {
    font-size: 2.5641025641vw;
  }
  #header .hd-bar p > span {
    display: inline-block;
  }
}

/*                #first-view
======================================================= */
#first-view {
  position: relative;
  margin-top: 40px;
}
#first-view .fv_image {
  position: absolute;
  left: calc(50% - 85px);
  width: calc(50% + 85px);
  height: 100%;
  bottom: 0;
  overflow: visible;
}
#first-view .fv_image img {
  width: auto;
  max-width: 100vw;
  height: 100%;
  border-bottom-left-radius: 64px;
}
#first-view .fv_image {
  /* @include media1300 {
    left: calc(50% - calc(85vw / 1300 * 100));
    width: calc(50% + calc(85vw / 1300 * 100));
    img{
      border-bottom-left-radius: calc(64vw / 1300 * 100);
    }
  } */
}
@media only screen and (max-width: 768px) {
  #first-view .fv_image {
    position: relative;
    left: 0;
    bottom: auto;
    padding-left: 23.0769230769vw;
    width: 100%;
    height: 92.3076923077vw;
  }
  #first-view .fv_image img {
    width: 100%;
    border-bottom-left-radius: 12.3076923077vw;
  }
}
#first-view .fv_main_wrap {
  position: relative;
  width: 100%;
  height: 628px;
  /* @include media1300 {
    height: calc(628vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #first-view .fv_main_wrap {
    height: 100%;
  }
}
#first-view .fv_main {
  position: relative;
  width: calc(50% - 85px);
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 140px;
}
#first-view .fv_catch {
  font-size: 48px;
  font-weight: 700;
  line-height: 1.275;
  letter-spacing: 0.05em;
  margin-bottom: 0.1em;
}
#first-view .fv_catch_en {
  width: 231px;
  margin-bottom: 27px;
}
#first-view .fv_catch_en img {
  width: 100%;
}
#first-view .fv-ctas {
  width: 273px;
}
#first-view .fv-ctas .fv-cta-li {
  width: 100%;
}
#first-view .fv-ctas .fv-cta-li .btn {
  width: 100%;
}
#first-view .fv-ctas .fv-cta-li:nth-child(n+2) {
  margin-top: 8px;
}
#first-view {
  /* @include media1300 {
    .fv_main{
      width: calc(50% - calc(85vw / 1300 * 100));
      padding-top: calc(140vw / 1300 * 100);
    }
    .fv_catch{
      font-size: calc(48vw / 1300 * 100);
    }
    .fv_catch_en{
      width: calc(231vw / 1300 * 100);
      margin-bottom: calc(27vw / 1300 * 100);
    }
    .fv-ctas{
      width: calc(273vw / 1300 * 100);
    }
  } */
}
@media only screen and (max-width: 768px) {
  #first-view {
    margin-top: 11.2820512821vw;
  }
  #first-view .fv_main {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 5.1282051282vw;
    padding-left: 2.5641025641vw;
    padding-right: 2.5641025641vw;
  }
  #first-view .fv_catch {
    font-size: 8.2051282051vw;
  }
  #first-view .fv_catch_en {
    width: 47.3358974359vw;
    padding-top: 1.5384615385vw;
    padding-bottom: 3.3333333333vw;
  }
  #first-view .fv_catch_en img {
    width: 100%;
  }
  #first-view .fv-ctas {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #first-view .fv-ctas .fv-cta-li {
    width: 61.5384615385vw;
  }
  #first-view .fv-ctas .fv-cta-li .btn {
    width: 100%;
  }
  #first-view .fv-ctas .fv-cta-li:nth-child(n+2) {
    margin-top: 1.7948717949vw;
  }
}

/*                #reasons
======================================================= */
#reasons .reasons-wrap {
  margin-top: 88px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* @include media1300 {
    margin-top: calc(88vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-wrap {
    margin-top: 21.0256410256vw;
    display: block;
  }
}
#reasons .reasons-head {
  width: 346px;
  position: relative;
  padding: 85px 87px 0 0;
}
#reasons .reasons-head::before {
  position: absolute;
  display: block;
  content: "";
  right: 0;
  top: 0;
  max-width: 100vw;
  width: 748px;
  height: 100%;
  border-top-right-radius: 24px;
  border-bottom-right-radius: 24px;
  background-color: #0074d7;
  background-image: url("../images/home/reasons-head_bg.jpg");
  background-position: right center;
  background-size: cover;
  background-repeat: no-repeat;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  #reasons .reasons-head::before {
    background-image: url("../images/home/reasons-head_bg@2x.jpg");
  }
}
@media only screen and (min-width: 2000.1px) {
  #reasons .reasons-head::before {
    width: 37.4vw;
  }
}
#reasons .reasons-head::before {
  /* @include media1300 {
    width: calc(748vw / 1300 * 100);
    border-top-right-radius: calc(24vw / 2000 * 100);
    border-bottom-right-radius: calc(24vw / 2000 * 100);
  } */
}
#reasons .reasons-head {
  /* @include media1300 {
    width: calc(346vw / 1300 * 100);
    padding: calc(65vw / 1200 * 100) calc(87vw / 1200 * 100) 0 0;
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-head {
    width: 100%;
    height: 47.6923076923vw;
    padding: 15.3846153846vw 0 0 0;
  }
  #reasons .reasons-head::before {
    position: absolute;
    display: block;
    content: "";
    right: -4.1025641026vw;
    top: 0;
    max-width: 100vw;
    width: calc(100% + 8.2051282051vw);
    height: 55.8974358974vw;
    border-top-right-radius: 0;
    border-bottom-right-radius: 6.1538461538vw;
    border-bottom-left-radius: 6.1538461538vw;
  }
}
@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2), only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  #reasons .reasons-head::before {
    background-image: url("../images/home/reasons-head_bg.jpg");
  }
}
#reasons .reasons-ttl {
  position: relative;
  z-index: 1;
  color: #fff;
}
#reasons .reasons-ttl::before {
  background: #fff;
}
#reasons .reasons-main {
  width: calc(100% - 346px);
  padding-left: 28px;
  position: relative;
  z-index: 1;
  /* @include media1300 {
    width: calc(100% - calc(346vw / 1200 * 100));
    padding-left: calc(28vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-main {
    width: 100%;
    padding-left: 2.0512820513vw;
    padding-right: 2.0512820513vw;
  }
}
#reasons .reasons-main_li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#reasons .reasons-main_li:nth-child(n+2) {
  margin-top: 10px;
}
#reasons .reasons-main_li {
  /* @include media1300 {
    &:nth-child(n+2){
      margin-top: calc(10vw / 1300 * 100);
    }
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-main_li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #reasons .reasons-main_li:nth-child(n+2) {
    margin-top: 4.8717948718vw;
  }
}
#reasons .reasons-image {
  width: 412px;
  border-radius: 24px;
  overflow: hidden;
}
#reasons .reasons-image img {
  width: 100%;
}
#reasons .reasons-image {
  /* @include media1300 {
    width: calc(412vw / 1300 * 100);
    border-radius: calc(24vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-image {
    width: 100%;
    border-radius: 4.1025641026vw;
  }
}
#reasons .reasons-detail {
  padding-left: 31px;
  width: calc(100% - 412px);
  /* @include media1300 {
    width: calc(100% - calc(412vw / 1200 * 100));
    padding-left: calc(31vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-detail {
    padding-left: 0px;
    padding-top: 4.1025641026vw;
    width: 100%;
  }
}
#reasons .reasons-detail_ttl {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.025em;
}
#reasons .reasons-detail_ttl .en {
  font-size: 16px;
  font-weight: 700;
  color: #0060ce;
  letter-spacing: -0.0125em;
  display: block;
}
#reasons .reasons-detail_ttl {
  /* @include media1300 {
    font-size: calc(22vw / 1300 * 100);
    .en{
      font-size: calc(16vw / 1300 * 100);
    }
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-detail_ttl {
    font-size: 5.641025641vw;
  }
  #reasons .reasons-detail_ttl .en {
    font-size: 4.1025641026vw;
  }
}
#reasons .reasons-detail_txt {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.9;
  margin-top: 0.75em;
  /* @include media1300 {
    font-size: calc(16vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-detail_txt {
    width: 100%;
    margin-top: 0.15em;
    font-size: 4.1025641026vw;
  }
}
#reasons .reasons-link-btn_li {
  border-top: solid 1px #dcdcdc;
  margin: 40px 0 0;
  padding: 32px 0 0;
}
@media only screen and (max-width: 768px) {
  #reasons .reasons-link-btn_li {
    margin: 8.2051282051vw 0 0;
    padding: 8.2051282051vw 0 0;
  }
}
#reasons .reasons-link-btn {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*                #service
======================================================= */
#service .service-wrap {
  margin-top: 110px;
}
#service .service-cont {
  border-radius: 24px;
  padding: 16px;
  margin-top: 48px;
  border: solid 1px #b1b1b1;
  background: #fff;
}
#service .service-cont-image img {
  border-radius: 24px;
}
#service .service-detail_ttl {
  font-size: 28px;
  font-weight: 700;
  margin: 0 0 0.6em;
  letter-spacing: 0.05em;
}
#service .service-detail_txt {
  line-height: 2.01;
  font-size: 16px;
  letter-spacing: 0.075em;
}
#service .service-detail_txt + .service-detail_link-btn {
  margin-top: 30px;
}
#service .service-detail_link-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media only screen and (min-width: 768.1px) {
  #service .service-cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #service .service-cont-image {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 602px;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 2;
        -ms-flex-positive: 2;
            flex-grow: 2;
  }
  #service .service-cont-detail {
    width: calc(100% - 602px);
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -ms-flex-negative: 2;
        flex-shrink: 2;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding: 80px 50px 0 88px;
  }
  #service .service-cont-detail > * {
    max-width: 376px;
  }
}
@media only screen and (max-width: 768px) {
  #service .service-wrap {
    margin-top: 16.4102564103vw;
  }
  #service .service-cont {
    border-radius: 4.1025641026vw;
    padding: 2.5641025641vw 2.5641025641vw 8.2051282051vw;
    margin-top: 8.2051282051vw;
  }
  #service .service-cont-image img {
    border-radius: 4.1025641026vw;
  }
  #service .service-detail_ttl {
    font-size: 5.641025641vw;
    margin: 1.2em 0 0.6em;
    padding: 0 4.1025641026vw;
    letter-spacing: 0.05em;
  }
  #service .service-detail_txt {
    line-height: 2.01;
    font-size: 4.1025641026vw;
    letter-spacing: 0.075em;
    padding: 0 4.1025641026vw;
  }
  #service .service-detail_txt + .service-detail_link-btn {
    margin-top: 30px;
  }
  #service .service-detail_link-btn {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

/*                #step
======================================================= */
#step {
  position: relative;
}
#step::before {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: calc(100% + 244px);
  left: 0;
  bottom: 0;
  background: #0060ce;
  z-index: -1;
  border-radius: 24px;
}
#step .step-wrap {
  padding-top: 66px;
  padding-bottom: 140px;
  /* @include media1300 {
    margin-top: calc(120vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step::before {
    height: calc(100% + 111.2820512821vw);
    border-radius: 4.1025641026vw;
  }
  #step .step-wrap {
    padding-top: 16.4102564103vw;
    padding-bottom: 12.5641025641vw;
  }
}
#step .step-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  #step .step-head {
    display: block;
  }
}
#step .step-ttl {
  color: #fff;
}
#step .step-ttl::before {
  background: #fff;
}
#step .step-read {
  font-size: 14px;
  width: 26.5em;
  color: #fff;
}
#step .step-read p {
  font-size: 100%;
  line-height: 1.8;
}
#step .step-read {
  /* @include media1300 {
    font-size: calc(14vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-read {
    font-size: 4.1025641026vw;
    width: 100%;
    margin-top: 8.2051282051vw;
  }
  #step .step-read p {
    line-height: 2;
  }
}
#step .step-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 48px -18px 0;
  /* @include media1300 {
    margin: calc(48vw / 1200 * 100) calc(-18vw / 1200 * 100) 0;
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-flow {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media only screen and (max-width: 768px) {
  #step .step-flow {
    margin: 8.2051282051vw 0 0;
  }
}
#step .step-flow_li {
  width: 25%;
  padding: 0 18px;
  position: relative;
}
#step .step-flow_li:nth-child(n+2)::before {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  left: -18px;
  width: 36px;
  height: 1px;
  background-color: #b1b1b1;
}
#step .step-flow_li {
  /* @include media1300 {
    padding: 0 calc(18vw / 1300 * 100);
    &:nth-child(n+2){
      &::before{
        position: absolute;
        display: block;
        content: "";
        top: 50%;
        left: calc(-18vw / 1300 * 100);
        width: calc(36vw / 1300 * 100);
      }
    }
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-flow_li {
    padding: 0;
    width: 100%;
  }
  #step .step-flow_li:nth-child(n+2) {
    margin-top: 4.1025641026vw;
  }
  #step .step-flow_li:nth-child(n+2)::before {
    top: -4.1025641026vw;
    left: 50%;
    width: 1px;
    height: 4.1025641026vw;
  }
}
#step .step-item {
  position: relative;
  width: 100%;
  height: 100%;
  border: solid 1px #b1b1b1;
  border-radius: 24px;
  padding: 10px;
  background: #fff;
  /* @include media1300 {
    border-radius: calc(24vw / 1300 * 100);
    padding: calc(10vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-item {
    border-radius: 4.1025641026vw;
    padding: 3.8461538462vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
#step .step-thumb {
  width: 100%;
  height: 171px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ebf2ff;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  /* @include media1300 {
    height: calc(171vw / 1300 * 100);
    border-top-left-radius: calc(16vw / 1300 * 100);
    border-top-right-radius: calc(16vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-thumb {
    width: 22.8205128205vw;
    height: 36.9230769231vw;
    border-top-right-radius: 0;
    border-top-left-radius: 2.0512820513vw;
    border-bottom-left-radius: 2.0512820513vw;
  }
}
#step .step-thumb_txt {
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  letter-spacing: -0.025em;
}
#step .step-thumb_txt .num {
  display: block;
  font-size: 42px;
  color: #0060ce;
}
#step .step-thumb_txt {
  /* @include media1300 {
    font-size: calc(18vw / 1300 * 100);
    .num{
      font-size: calc(42vw / 1300 * 100);
    }
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-thumb_txt {
    font-size: 3.0769230769vw;
  }
  #step .step-thumb_txt .num {
    font-size: 7.1794871795vw;
  }
}
#step .step-detail {
  padding: 30px 22px;
  /* @include media1300 {
    padding: calc(30vw / 1200 * 100) calc(22vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-detail {
    width: calc(100% - 22.8205128205vw);
    padding: 0 2.0512820513vw 0 3.8461538462vw;
  }
}
#step .step-detail_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 20px;
  color: #0060ce;
  font-weight: 700;
  height: 52px;
  /* @include media1300 {
    font-size: calc(20vw / 1300 * 100);
    height: calc(52vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-detail_ttl {
    font-size: 5.1282051282vw;
    height: 13.8461538462vw;
  }
}
#step .step-detail_txt {
  margin-top: 13px;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  padding: 0 0.5em 0 0;
  /* @include media1300 {
    margin-top: calc(13vw / 1300 * 100);
    font-size: calc(14vw / 1300 * 100);
  } */
}
@media only screen and (max-width: 768px) {
  #step .step-detail_txt {
    font-size: 3.5897435897vw;
    padding: 0;
  }
}

/*                #faq
======================================================= */
#faq .faq-wrap {
  margin-top: 64px;
  margin-bottom: 120px;
}
#faq .faq-cont {
  background: #ebf2ff;
  border-radius: 24px;
  padding: 67px 62px;
  position: relative;
}
#faq .faq-cont::before {
  display: block;
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  top: 50%;
  right: 40px;
  translate: 0 -50%;
  background: url("../images/common/icon_arrow_r.svg") center/contain no-repeat;
  opacity: 1;
}
@media (hover: hover) {
  #faq .faq-cont {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
  #faq .faq-cont::before {
    -webkit-transition: right 0.5s;
    transition: right 0.5s;
  }
  #faq .faq-cont:hover {
    color: #0060ce;
    opacity: 0.8;
  }
  #faq .faq-cont:hover::before {
    right: 30px;
  }
}
#faq .faq-cont-ttl,
#faq .faq-cont-txt {
  padding: 0 0 0 48px;
}
#faq .faq-cont-ttl {
  color: #0060ce;
  font-size: 28px;
  font-weight: 700;
}
#faq .faq-cont-txt {
  font-size: 16px;
  margin-top: 0.5em;
  line-height: 2;
}
@media only screen and (min-width: 768.1px) {
  #faq .faq-cont {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 0px 1fr 0px 1fr 0px 1fr 0px 1fr 0px 1fr 0px 1fr;
    grid-template-columns: repeat(7, 1fr);
    -ms-grid-rows: 1fr 0px 1fr;
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }
  #faq .faq-cont > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  #faq .faq-cont > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  #faq .faq-cont > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  #faq .faq-cont > *:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
  }
  #faq .faq-cont > *:nth-child(5) {
    -ms-grid-row: 1;
    -ms-grid-column: 9;
  }
  #faq .faq-cont > *:nth-child(6) {
    -ms-grid-row: 1;
    -ms-grid-column: 11;
  }
  #faq .faq-cont > *:nth-child(7) {
    -ms-grid-row: 1;
    -ms-grid-column: 13;
  }
  #faq .faq-cont > *:nth-child(8) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  #faq .faq-cont > *:nth-child(9) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  #faq .faq-cont > *:nth-child(10) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  #faq .faq-cont > *:nth-child(11) {
    -ms-grid-row: 3;
    -ms-grid-column: 7;
  }
  #faq .faq-cont > *:nth-child(12) {
    -ms-grid-row: 3;
    -ms-grid-column: 9;
  }
  #faq .faq-cont > *:nth-child(13) {
    -ms-grid-row: 3;
    -ms-grid-column: 11;
  }
  #faq .faq-cont > *:nth-child(14) {
    -ms-grid-row: 3;
    -ms-grid-column: 13;
  }
  #faq .faq-cont-icon {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 1/1/3/2;
    width: 154px;
    border-right: solid 1px #b1b1b1;
  }
  #faq .faq-cont-ttl {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 6;
    grid-area: 1/2/2/8;
    width: 100%;
    max-width: calc(100% - 154px);
  }
  #faq .faq-cont-txt {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 6;
    grid-area: 2/2/3/8;
    width: 100%;
    max-width: calc(100% - 154px);
  }
}
@media only screen and (max-width: 768px) {
  #faq .faq-wrap {
    margin-top: 10.2564102564vw;
    margin-bottom: 18.4615384615vw;
  }
  #faq .faq-cont {
    border-radius: 6.1538461538vw;
    padding: 11.7948717949vw 6.6666666667vw 23.3333333333vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #faq .faq-cont::before {
    width: 4.1025641026vw;
    height: 4.1025641026vw;
    top: auto;
    bottom: 10.2564102564vw;
    right: 50%;
    translate: 0 50%;
  }
  #faq .faq-cont-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 0 8.2051282051vw;
    margin-bottom: 8.2051282051vw;
    border-bottom: solid 1px #b1b1b1;
  }
  #faq .faq-cont-icon img {
    width: 25.1282051282vw;
  }
  #faq .faq-cont-ttl,
  #faq .faq-cont-txt {
    padding: 0 4.1025641026vw;
  }
  #faq .faq-cont-ttl {
    font-size: 7.1794871795vw;
    text-align: center;
    margin-bottom: 0.25em;
  }
  #faq .faq-cont-txt {
    font-size: 4.1025641026vw;
    margin-top: 0.5em;
    line-height: 2;
  }
}

/*                .photo-scroll-section
======================================================= */
.photo-scroll-section {
  margin: auto;
}
.photo-scroll-section .photo-scroll_img-wrap {
  padding: 0 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.photo-scroll-section .photo-scroll_img-wrap img {
  border-radius: 16px;
  width: 100%;
}
.photo-scroll-section .photo-scroll_img-wrap.-large img {
  width: 346px;
}
.photo-scroll-section .photo-scroll_img-wrap.-small img {
  width: 280px;
}
@media only screen and (max-width: 768px) {
  .photo-scroll-section .photo-scroll_img-wrap {
    padding: 0 5.7346153846vw;
  }
  .photo-scroll-section .photo-scroll_img-wrap img {
    border-radius: 2.5615384615vw;
  }
  .photo-scroll-section .photo-scroll_img-wrap.-large img {
    width: 54.358974359vw;
  }
  .photo-scroll-section .photo-scroll_img-wrap.-small img {
    width: 43.9897435897vw;
  }
}

.slide_wrap {
  opacity: 0;
}
.slide_wrap.slick-initialized {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  opacity: 1;
}
.slide_wrap .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
/*                #news
======================================================= */
#news {
  margin-top: 100px;
  margin-bottom: 120px;
}
#news .news-cont-link-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 768.1px) {
  #news .news-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #news .news-head {
    width: 309px;
  }
  #news .news-cont {
    width: calc(100% - 309px);
  }
  #news .news-list-ul {
    margin-top: -32px;
  }
  #news .news-cont-link-btn {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 768px) {
  #news {
    margin-top: 18.4615384615vw;
    margin-bottom: 31.7948717949vw;
  }
  #news .news-cont-link-btn {
    margin-top: 8.2051282051vw;
  }
}

/*                #cta
======================================================= */
#cta .cta-wrap {
  height: 764px;
}
@media only screen and (min-width: 768.1px) {
  #cta .cta-wrap {
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #cta .cta-wrap .cta-image,
  #cta .cta-wrap .cta-main {
    width: calc(50% - 8px);
  }
  #cta .cta-wrap .cta-image {
    display: block;
  }
  #cta .cta-wrap .cta-main {
    padding: 0 80px;
  }
}
@media only screen and (max-width: 768px) {
  #cta .cta-wrap {
    height: auto;
    margin-top: 31.7948717949vw;
  }
  #cta .cta-wrap .cta-image,
  #cta .cta-wrap .cta-main {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  #cta .cta-main {
    padding: 17.9487179487vw 6.358974359vw 9.7435897436vw;
  }
}
#cta .cta-main-wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 768.1px) {
  #cta .cta-box {
    width: 100%;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
  }
  #cta .cta-box + .cta-box {
    margin-top: 16px;
  }
}