@charset "UTF-8";

/* --------------------------------- 
 * index
 * ------------
 * 00_setting       : content-width, base-font, color, html, body, a, ul
 * 01_header/footer :
 * 02_component     : button, section, title
 * 03_hero          :
 * 04_sec1          :
 * 05_sec2          :
 * 06_sec3          :
 * 07_sec4          :
 * 08_sec5          :
 * 09_back to top   :
 * 10_comversion    :
 * 11_animation     :
 * --------------------------------- */

/* -----------
 * 00_setting
 * ------------*/
:root {
  /* width */
  --main-content-width: 970px;         /*コンテンツ幅*/
  --main-content-min-width: 970px;     /*コンテンツ幅(最小)*/
  /* color */
  --font-color-base: #292929;
  --color-navy: #064292;
  @media screen and (min-width: 2000px) { /* large display */
  }
  @media screen and (max-width: 1280px) { /* small display */
  }
  @media screen and (max-width: 1000px) { /* min display */
  }
  @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
   --main-content-width: 90% ;         /*コンテンツ幅*/
  }
  @media screen and (max-width: 768px) { /* smartphone */
   --main-content-width: 90% ;         /*コンテンツ幅*/
  }
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  color: var(--base-font-color);
  background-color: var(--main-bg-color);
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.6rem;
  color: var(--font-color-base);
  /*font-weight: 900; */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

main {
   width: 100%;
   overflow: hidden;
   position: relative;
}

ul {
   padding-left: 0;
}

li {
   list-style-type: none;
}

dd {
   margin: 0;
   box-sizing: border-box;
}

a {
   color: var(--base-link-color);
   text-decoration: none;
}
a:hover {
   opacity: 0.7;
}

figure {
   margin: 0;
}

.pc_only {
   display: block;
   @media screen and (max-width: 768px) { /* smartphone */
      display: none;
  }
}
.sp_only {
   display: none;
   @media screen and (max-width: 768px) { /* smartphone */
      display: block;
   }
}
/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 01_header/footer
 * ------------*/
 /* header */
 .header {
   position: relative;
   z-index: 10;
   background-color: #fff;
   height: 128px;
   padding: 30px 60px;
   box-sizing: border-box;
   display: flex;
   justify-content: space-between;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      height: 100px;
      padding: 15px 30px;
      align-items: center;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      height: 70px;
      padding: 13px 27px;
   }
 }
 .header_logo > a:hover {
   opacity: 1;
 }
 .header_logo img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 213px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 213px;
   }
 }
 .header_entry {
   width: 400px;
   @media screen and (max-width: 768px) { /* smartphone */
      display: none;
   }
 }

 /* footer */
 .footer {
   background-color: #f1f1f1;
   padding: 80px 0;
   text-align: center;
   @media screen and (max-width: 1280px) { /* small display */
      padding-bottom: 160px;
   }
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      padding-bottom: 200px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 50px 0 200px;
   }
 }
 .footer_corp {
   font-size: 18px;
   font-weight: 500;
   margin-bottom: 0;
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 16px;
   }
 }
 .footer_addr {
   margin-top: 0.5em;
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 12px;
   }
 }
 .footer_logo img {
   @media screen and (max-width: 768px) { /* smartphone */
      width: 50%;
   }
 }
 .footer_list {
   display: flex;
   justify-content: center;
 }
 .footer_item {
   padding: 0 24px;
   border-right: 1px solid #d4d4d4;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 0 8px;
      font-size: 10px;
   }
 }
 .footer_item:first-of-type {
   border-left: 1px solid #d4d4d4;
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 02_component
 * ------------*/
 /* button */
 .btn_entry {
   display: block;
   background-color: #DC460C;
   color: #fff; 
   padding: 17px 0;
   border: 2px solid #fff;
   border-radius: 30px;
   box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.09);
   text-align: center;
   font-weight: bold;
 }
 .header_entry .btn_entry {
   width: 100%;
 }
 /* 右下端固定表示：エントリーボタン */
 .btn_entry--fixed {
   position: relative;
   display: inline-block;
   width: 307px;
   height: 127px;
   box-sizing: border-box;
   background-color: #DC460C;
   padding: 33px 88px 36px 42px;
   border-top-right-radius: 25px;
   border-top-left-radius: 25px;
   color: #fff;
   font-size: 20px;
   font-weight: bold;
   line-height: 29px;
   font-feature-settings: "palt";
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      padding: 23px 78px 26px 42px;
      font-size: 18px;
      width: 290px;
      height: 100px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      border: 2px solid #fff;
      border-radius: 30px;
      font-size: 16px;
      line-height: 1.3;
      margin-bottom: 24px;
      padding: 17px 0;
      width: 100%;
      height: 55px;
      text-align: center;
   }
 }
 .btn_entry--fixed::after {
   position: absolute;
   top: 35%;
   right: 14px;
   border: 18px solid transparent;
   border-left: 26px solid #fff;
   content: "";
   @media screen and (max-width: 768px) { /* smartphone */
      display: none;
   }
 }
 .btn_entry--fixed .pc_only {
   @-moz-document url-prefix() { /* firefox */
      display: inline !important;
   }
 }

 /* section */
 .sec_container {
   width: var(--main-content-width);
   margin: auto;
 }

 /* section_heading */
 .sec_heading {
   display: flex;
   align-items: center;
   @media screen and (max-width: 768px) { /* smartphone */
      justify-content: center;
   }
 }
 .sec_heading--title {
   opacity: 0;
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 03_hero
 * ------------*/
 .hero {
   position: relative;
   z-index: 3;
   background: var(--color-navy);
 }
 .hero::after {
   position: absolute;
   left: -50%;
   bottom: -90px;
   z-index: 2;
   width: 200vw;
   height: 200vw;
   border-radius: 50%;
   background: #E7F9FF;
   background: linear-gradient(90deg, #E7F9FF 0%, #BBE4FF 100%);
   content: "";
   @media screen and (max-width: 768px) { /* smartphone */
      width: 205vw;
      height: 205vw;
      left: -48%;
   }
 }
 .hero--container {
   position: relative;
   z-index: 4;
   width: 1170px;
   min-height: 578px;
   margin: auto;
   padding-top: 107px;
   background: url(../img/img_mv.png) no-repeat;
   background-position: right;
   color: var(--color-navy);
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: var(--main-content-width);
      background-size: 70%;
      background-position-y: bottom;
      padding-top: 50px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: var(--main-content-width);
      background-position: bottom;
      background-size: contain;
      padding-top: 37px;
   }
 }
 .hero--title img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 470px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 321px;
   }
 }
 .hero--lead {
   font-size: 24px;
   line-height: 41px;
   font-weight: 700;
   font-feature-settings: "palt";
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      font-size: 20px;
      line-height: 1.5;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 18px;
      line-height: 29px;
   }
 }
 .hero--txt {
   font-weight: 500;
   line-height: 33px;
   font-feature-settings: "palt";
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 14px;
      line-height: 23px;
   }
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 04_sec1
 * ------------*/
 .sec01 {
   padding: 180px 0 160px;
   background-color: var(--color-navy);
   color: #fff;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 140px 0 78px;
   }
 }
 .sec01 .sec_heading--num {
   margin-right: 66px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      margin-right: 30px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      margin-right: 17px;
   }
 }
 .sec01 .sec_heading--num img {
   width: 62px;
 }
 .sec01 .sec_heading--title img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 100%;
   }
 }
 .sec01 .interview_item + .interview_item {
   margin-top: 80px;
   @media screen and (max-width: 768px) { /* smartphone */
      margin-top: 50px;
   }
 }
 .sec01 .interview_item--fig {
   display: flex;
   align-items: center;
   @media screen and (max-width: 768px) { /* smartphone */
      flex-direction: column;
   }
 }
 .sec01 .interview_item--fig img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 280px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 178px;
   }
 }
 .sec01 .interview_item.younger img {
   margin-right: 55px;
   @media screen and (max-width: 768px) { /* smartphone */
      margin-right: 0;
   }
 }
 .sec01 .interview_item.older .interview_item--fig {
   flex-direction:row-reverse;
   justify-content: space-between;
   @media screen and (max-width: 768px) { /* smartphone */
      flex-direction: column;
   }
 }
 .sec01 .interview_item--question_outline {
   position: relative;
   font-size: 28px;
   line-height: 1.42;
   margin-bottom: 0;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      font-size: 20px;
      margin-top: 60px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 18px;
      margin-top: 60px;
   }
 }
 .sec01 .interview_item--question_outline::before {
   position: absolute;
   top: -50px;
   left: 0;
   height: 49px;
   content: "";
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      top: -34px;
      left: 0;
      height: 38px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      top: -34px;
      left: 19%;
      height: 26px;
   }
 }
 .sec01 .interview_item.younger .interview_item--question_outline::before {
   background: url(../img/icon_sec1_younger.png) no-repeat;
   background-size: contain;
   width: 338px;
   @media screen and (max-width: 768px) { /* smartphone */
      width: 191px;
   }
 }
 .sec01 .interview_item.older .interview_item--question_outline::before {
   background: url(../img/icon_sec1_older.png) no-repeat;
   background-size: contain;
   width: 306px;
   @media screen and (max-width: 768px) { /* smartphone */
      width: 173px;
      background-size: cover;
   }
 }
 .sec01 .interview_item--question_desc {
   line-height: 25px;
   font-feature-settings: "palt";
   @media screen and (max-width: 768px) { /* smartphone */
      width: 294px;
      font-size: 14px;
      line-height: 21px;
   }
 }
 .sec01 .interview_item--answer {
   position: relative;
   margin-top: 90px;
   @media screen and (max-width: 768px) { /* smartphone */
      margin-top: 54px;
   }
 }
 .sec01 .interview_item--answer::before {
   position: absolute;
   top: -50px;
   left: 0;
   width: 128px;
   height: 45px;
   background: url(../img/icon_sec1_answer.png) no-repeat;
   background-size: contain;
   content: "";
   @media screen and (max-width: 768px) { /* smartphone */
      width: 73px;
      height: 25px;
      top: -80%;
      left: 38%;
      background-size: cover;
   }
 }
 .sec01 .interview_item--answer img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 90%;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 298px;
   }
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 05_sec2
 * ------------*/
 .sec02 {
   position: relative; 
   background-color: #A6E5FF;
   padding: 106px 0 95px;
   overflow: hidden;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 45px 0 67px;
   }
 }
 .sec02::before,
 .sec02::after {
   position: absolute;
   content: "";
   border-radius: 50%;
   background-color: rgba(255,255,255,0.3);
 }
 .sec02::before {
   width: 577px;
   height: 577px;
   top: -80px;
   left: 41px;
   @media screen and (min-width: 2000px) { /* large display */
      left: 23%;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 290px;
      height: 290px;
      top: -39px;
      left: -91px;
   }
 }
 .sec02::after {
   width: 488px;
   height: 488px;
   bottom: -244px;
   right: 84px;
   @media screen and (min-width: 2000px) { /* large display */
      right: 23%;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 360px;
      height: 360px;
      bottom: -57px;
      right: -75px;
   }
 }
 .sec02 .sec_container {
   position: relative;
 }
 .sec02 .sec_container::before,
 .sec02 .sec_container::after {
   position: absolute;
   content: "";
   z-index: 1;
   border-radius: 50%;
   background-color: rgba(118,180,222,0.3);
 }
 .sec02 .sec_container::before {
   width: 494px;
   height: 494px;
   top: 37%;
   right: -37%;
   @media screen and (min-width: 2000px) { /* large display */
      /* right: 23%; */
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 343px;
      height: 343px;
      top: 27%;
      right: -49%;
   }
 }
 .sec02 .sec_container::after {
   width: 352px;
   height: 352px;
   bottom: 12%;
   left: -10%;
   @media screen and (min-width: 2000px) { /* large display */
      /* left: 23%; */
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 203px;
      height: 203px;
      bottom: 32%;
      left: -27%;
   }
 }
 .sec02 .sec_heading {
   flex-direction:row-reverse;
 }
 .sec02 .sec_heading--num {
   margin-left: 43px;
   @media screen and (max-width: 768px) { /* smartphone */
      margin-left: -23px;
   }
 }
 .sec02 .sec_heading--num img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 89px;
      margin-right: 28px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 89px;
      margin-right: 28px;
   }
 }
 .sec02 .sec_heading--title img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 100%;
   }
 }
 .sec02 .sec_heading--pic {
   @media screen and (max-width: 768px) { /* smartphone */
      margin-left: 35px;
   }
 }
 .sec02 .business_list {
   display: grid;
   grid-template-columns: repeat(3, calc((100% - 24px * 2) / 3));
   column-gap: 24px;
   position: relative;
   z-index: 3;
   width: 891px;
   margin: 50px auto 0;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: var(--main-content-width);
      grid-template-columns: repeat(3, calc((100% - 14px * 2) / 3));
      column-gap: 14px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 281px;
      grid-template-columns: repeat(1, 1fr);
      row-gap: 10px;
      margin-top: 10px;
   }
 }
 .sec02 .business_item {
   display: grid;
   background-color: #fff;
   box-shadow: 3px 4px 4px 0px rgba(0,0,0,0.06);
   padding: 40px 23px;
   box-sizing: border-box;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      padding: 20px 10px;
   }
 }
 .sec02 .business_item:last-of-type {
   padding: 40px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      padding: 20px;
   }
 }
 .sec02 .card {
   display: grid; 
   grid-row: span 3;
   grid-template-rows: subgrid;
 }
 .sec02 .card_img {
   text-align: center;
 }
 .sec02 .card_title {
   font-size: 24px;
   font-weight: bold;
   line-height: 58px;
   color: var(--color-navy);
   text-align: center;
   margin: 6px 0;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      font-size: 20px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 20px;
   }
 }
 .sec02 .card_list--item {
   list-style-type: disc;
   list-style-position: inside;
   line-height: 27px;
   font-feature-settings: "palt";
   font-weight: 500;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      font-size: 14px;
      line-height: 23px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 14px;
      line-height: 23px;
   }
 }
 .sec02 .card_list--item.blank {
   list-style-type: none;
 }
 .sec02 .video {
   margin-top: 75px;
   position: relative;
   z-index: 3;
   @media screen and (max-width: 768px) { /* smartphone */
      margin: 33px;
   }
 }
 .sec02 .video_lead {
   text-align: center;
 }
 .sec02 .video_lead img {
   @media screen and (max-width: 768px) { /* smartphone */
      width: 280px;
   }
 }
 .sec02 .video_content {
   width: 800px;
   height: 480px;
   margin: auto;
   background-color: #d9d9d9;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: var(--main-content-width);
      height: 400px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 293px;
      height: 150px;
   }
 }
.sec02 .video_content iframe {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 100%;
      height: 100%;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 100%;
      height: auto;
   }
}

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 06_sec3
 * ------------*/
 .sec03 {
   padding: 75px 0 126px;
   background-color: #FFF9F4;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 63px 0 58px;
   }
 }
 .sec03 .sec_heading--num {
   margin-right: 55px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      margin-right: 16px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      margin-right: 16px;
   }
 }
 .sec03 .sec_heading--num img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 62px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 62px;
   }
 }
 .sec03 .sec_heading--title img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 100%;
   }
 }
 .sec03 .merit_list {
   margin: 53px auto 0;
   display: flex;
   justify-content: space-between;
   flex-wrap: wrap;
   width: 772px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 100%;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      display: block;
      width: 100%;
   }
 }
 .sec03 .merit_item {
   width: calc((100% - 62px) / 2);
   text-align: center;
   color: var(--color-navy);
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: calc((100% - 30px) / 2);
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 293px;
      margin: auto;
   }
 }
 .sec03 .merit_item--title img {
   @media screen and (max-width: 768px) { /* smartphone */
      width: 102px;
   }
 }
 .sec03 .merit_item--fig img {
   @media screen and (max-width: 768px) { /* smartphone */
      width: 213px;
   }
 }
 .sec03 .merit_item:nth-of-type(-n+2) {
   margin-bottom: 43px;
 }
 .sec03 .merit_item--lead {
   font-size: 20px;
   font-weight: 700;
   line-height: 1.6;
   font-feature-settings: "palt";
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 18px;
      margin: 17px 0 5px;
   }
 }
 .sec03 .merit_item--txt {
   text-align: left;
   line-height: 27px;
   margin-top: 14px;
   font-feature-settings: "palt";
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 14px;
      line-height: 24px;
   }
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 07_sec4
 * ------------*/

 .sec04 {
   background-color: var(--color-navy);
   padding: 62px 0 83px;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 44px 0 58px;
   }
 }
 .sec04 .sec_heading {
   flex-direction:row-reverse;
 }
 .sec04 .sec_heading--num {
   margin-left: 121px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      margin-left: -23px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      margin-left: -23px;
   }
 }
 .sec04 .sec_heading--num img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 102px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 102px;
   }
 }
 .sec04 .sec_heading--title img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 100%;
   }
 }
 .sec04 .team {
   text-align: center;
   margin-top: -20px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      margin-top: 13px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      margin-top: 13px;
   }
 }
 .sec04 .team img {
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 80%;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 293px;
   }
 }
 .sec04 .team_txt {
   color: #fff;
   line-height: 33px;
   width: 628px;
   margin: 34px auto 0;
   text-align: left;
   @media screen and (max-width: 768px) { /* smartphone */
      width: 296px;
      margin: 24px auto 0;
      font-size: 14px;
      list-style: 29px;
   }
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 08_sec5
 * ------------*/
 .sec05 {
   background-color: #5CB7EA;
   padding: 82px 0 105px;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 42px 0 56px;
   }
 }
 .sec05 .sec_heading {
   @media screen and (max-width: 768px) { /* smartphone */
      justify-content: flex-start;
      padding-left: 10px;
   }
 }
 .sec05 .sec_heading--num {
   margin-right: 69px;
   @media screen and (max-width: 768px) { /* smartphone */
      margin-right: 17px;
   }
 }
 .sec05 .sec_heading--num img {
   @media screen and (max-width: 768px) { /* smartphone */
      width: 87px;
   }
 }
 .sec05 .faq_list {
   margin: 0;
 }
 .sec05 .faq_item {
   background-color: #fff;
   margin-bottom: 14px;
   padding: 8px 11px 9px;
   border-radius: 8px;
 }
 .sec05 .faq_item:last-of-type {
   margin-bottom: 0;
 }
 .sec05 .faq_item--question {
   position: relative;
   border-bottom: 1px solid #DCDCDC;
   margin: 0;
   padding-left: 94px;
   height: 64px;
   line-height: 55px;
   @media screen and (max-width: 768px) { /* smartphone */
      display: flex;
      align-items: center;
      font-size: 14px;
      line-height: 23px;
      height: unset;
      min-height: 57px;
      padding-left: 70px;
   }
 }
 .sec05 .faq_item--question::before {
   position: absolute;
   top: 10px;
   left: 16px;
   content: "";
   width: 30px;
   height: 44px;
   background: url(../img/icon_sec4_Q.png) no-repeat;
   background-size: contain;
   @media screen and (max-width: 768px) { /* smartphone */
      left: 11px;
   }
 }
 .sec05 .faq_item--question::after,
 .sec05 .faq_item--answer::after {
   position: absolute;
   top: 0;
   left: 70px;
   content: "";
   width: 1px;
   height: 55px;
   background-color: #DCDCDC;
   @media screen and (max-width: 768px) { /* smartphone */
      left: 55px;
      height: 50px;
   }
 }
 .sec05 .faq_item--answer::after {
   height: 100%;
 }
 .sec05 .faq_item--answer {
   position: relative;
   margin: 9px 0 0;
   padding: 11px 0 11px 94px;
   line-height: 1.6;
   font-weight: 500;
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 14px;
      line-height: 23px;
      padding-left: 70px;
   }
 }
 .sec05 .faq_item--answer::before {
   position: absolute;
   top: 14px;
   left: 16px;
   content: "";
   width: 27px;
   height: 44px;
   background: url(../img/icon_sec4_A.png) no-repeat;
   background-size: contain;
   @media screen and (max-width: 768px) { /* smartphone */
      left: 11px;
   }
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 09_back to top
 * ------------*/
.btn_area {
   position: fixed;
   z-index: 10;
   bottom: 0;
   right: 50px;
   width: 307px;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      right: 20px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      right: unset;
      width: 100%;
   }
}
.btn_area .sec_container {
   width: auto;
   @media screen and (max-width: 768px) { /* smartphone */
      width: 90%;
   }
}
.back2top {
   background-color: #27AC7D;
   border: 2px solid #fff;
   border-radius: 50%;
   width: 110px;
   height: 110px;
   color: #fff;
   font-weight: bold;
   line-height: 21px;
   display: flex;
   justify-content: center;
   align-items: center;
   text-align: center;
   margin: 0 0 28px auto;
   @media (min-width: 769px)  and (max-width: 1024px) { /* tablet */
      width: 80px;
      height: 80px;
      margin-bottom: 14px;
      font-size: 13px;
      line-height: 16px;
      margin-bottom: 10px;
   }
   @media screen and (max-width: 768px) { /* smartphone */
      width: 80px;
      height: 80px;
      margin-bottom: 14px;
      font-size: 13px;
      line-height: 16px;
   } 
}

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 10_comversion 
 * ------------*/
 .conversion {
   background-color: #5CB7EA;
   padding: 84px 0;
   text-align: center;
   @media screen and (max-width: 768px) { /* smartphone */
      padding: 55px 0;
   }
 }
 .conversion.second {
   background-color: #FFF9F4;
 }
 .conversion_lead {
   color: #fff;
   font-size: 20px;
   font-weight: 500;
   line-height: 31px;
   text-align: center;
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 16px;
      line-height: 26px;
   }
 }
 .conversion.second .conversion_lead {
   color: var(--color-navy);
 }
 .conversion_btn {
   margin: 20px auto 0;
   width: 696px;
   @media screen and (max-width: 768px) { /* smartphone */
   width: 100%;
   }
 }
 .conversion_btn .btn_entry {
   font-size: 24px;
   padding: 33.5px 0;
   border-radius: 50px;
   @media screen and (max-width: 768px) { /* smartphone */
      font-size: 16px;
      line-height: 1.3;
      padding: 20px 0;
      border-radius: 30px;
   }
 }

/* ----------------------------------------------------------------------------------------------*/

/* -----------
 * 11_animation 
 * ------------*/

 /* フェードイン */
 .fadein {
   opacity: 0;
   transition: 1.3s ease 0s;
   transform: translateY(100px);
 }
 .fadein.active {
   top: 0;
   opacity: 1 !important;
   transform: translateY(0);
 }
 /* タイトル部分のフェードイン */
 .fade-in-top-left {
   animation: revealTopLeft 1s ease-out forwards;
 }
 @keyframes revealTopLeft {
  0% {
   clip-path: inset(0 100% 100% 0);
   opacity: 0;
   transform: translateX(100px);
  }
  100% {
   clip-path: inset(0 0 0 0);
   opacity: 1;
   transform: translateX(0);
  }
}


