* {
    margin: 0;
}

.adlp-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

body {
    font-feature-settings: "palt";
}

.adlp-wrapper .adlp-relative {
    position: relative;
}

.adlp-wrapper {
    max-width: 750px;
    margin: 0 auto;
    overflow: hidden;
}

.adlp-wrapper .fv_btn {
    position: absolute;
    width: min(calc((710 / 750) * 100vw), 710px);
    top: min(calc((1150 / 750) * 100vw), 1150px);
    left: 50%;
    transform: translateX(-50%);
}

.adlp-wrapper .cv01_btn {
    position: absolute;
    width: min(calc((710 / 750) * 100vw), 710px);
    top: min(calc((106 / 750) * 100vw), 106px);
    left: 50%;
    transform: translateX(-50%);
}

.adlp-wrapper .cv02_btn {
    position: absolute;
    width: min(calc((710 / 750) * 100vw), 710px);
    top: min(calc((150 / 750) * 100vw), 150px);
    left: 50%;
    transform: translateX(-50%);
}

.adlp-wrapper .sec09 {
    padding-bottom: min(calc((80 / 750) * 100vw), 80px);
    background: #E7F4FF;
}
.adlp-accordion {
    width: min(calc((690 / 750) * 100vw), 690px);
    margin: 0 auto;
    background-color: #fff;
    box-shadow: 0px min(calc((20 / 750) * 100vw), 20px) min(calc((30 / 750) * 100vw), 30px) 0px rgba(0, 0, 0, 0.10);
  }
  .adlp-accordion__wrapper {
    display: flex;
    flex-direction: column;
    gap: min(calc((40 / 750) * 100vw), 40px);
  }

  .adlp-accordion__header {
    position: relative;
    cursor: pointer;
  }
  
  .adlp-accordion__header.--img::after {
    display: none;
  }
  .adlp-accordion__header.--img > span:last-child {
    display: none;
  }
  .adlp-accordion__header.--img.--open > span:first-child {
    display: none;
  }
  .adlp-accordion__header.--img.--open > span:last-child {
    display: block;
  }
  
  .adlp-accordion__body {
    display: none;
  }


  .adlp-wrapper .sec10 {
    padding-bottom: min(calc((63 / 750) * 100vw), 63px); 
  }

  .adlp-wrapper .sec10 form{
    max-width: min(calc((630 / 750) * 100vw), 630px); 
    margin: 0 auto;
  }

   form .item {
    color: #000062;
    font-family: "Noto Sans JP";
    font-size: min(calc((30 / 750) * 100vw), 30px);
    font-style: normal;
    font-weight: 700;
    line-height: 140%; 
    position: relative;
    margin-top: min(calc((48 / 750) * 100vw), 48px);
    margin-bottom: min(calc((16 / 750) * 100vw), 16px);
    display: block;
  }
  form .item:after {
    content: "任意";
    background: #DDD;
    color: #666;
    padding: min(calc((8 / 750) * 100vw), 8px) min(calc((22 / 750) * 100vw), 22px);
    border-radius: min(calc((30 / 750) * 100vw), 30px);
    font-size: min(calc((22 / 750) * 100vw), 22px);
    margin-left: min(calc((20 / 750) * 100vw), 20px);
  }

  form .item.required:after {
    content: "必須";
    background: #F5541F;
    color: #ffffff;
    padding: min(calc((8 / 750) * 100vw), 8px) min(calc((22 / 750) * 100vw), 22px);
    border-radius: min(calc((30 / 750) * 100vw), 30px);
    font-size: min(calc((22 / 750) * 100vw), 22px);
    margin-left: min(calc((20 / 750) * 100vw), 20px);
  }

  form .note {
    color: #666;
    font-family: "Noto Sans JP";
    font-size: min(calc((20 / 750) * 100vw), 20px);
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    margin-top: min(calc((16 / 750) * 100vw), 16px);
  }

  form input[type="text"] {
    /* テキスト入力欄のスタイル */
    border: min(calc((2 / 750) * 100vw), 2px) solid var(--base-ddd, #DDD);
    background: linear-gradient(180deg, #FFF 0%, #F4F4F4 100%);
    box-shadow: 0px min(calc((4 / 750) * 100vw), 4px) min(calc((4 / 750) * 100vw), 4px) 0px rgba(0, 0, 0, 0.10);
    width: min(calc((630 / 750) * 100vw), 630px);
    height: min(calc((80 / 750) * 100vw), 80px);
    box-sizing: border-box;
    padding: 0 min(calc((30 / 750) * 100vw), 30px);
    color: #333;
    font-family: "Noto Sans JP";
    font-size: min(calc((32 / 750) * 100vw), 32px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
  }

  form input[type="tel"] {
    /* テキスト入力欄のスタイル */
    border: min(calc((2 / 750) * 100vw), 2px) solid var(--base-ddd, #DDD);
    background: linear-gradient(180deg, #FFF 0%, #F4F4F4 100%);
    box-shadow: 0px min(calc((4 / 750) * 100vw), 4px) min(calc((4 / 750) * 100vw), 4px) 0px rgba(0, 0, 0, 0.10);
    width: min(calc((630 / 750) * 100vw), 630px);
    height: min(calc((80 / 750) * 100vw), 80px);
    box-sizing: border-box;
    padding: 0 min(calc((30 / 750) * 100vw), 30px);
    color: #333;
    font-family: "Noto Sans JP";
    font-size: min(calc((32 / 750) * 100vw), 32px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
  }


  form input[type="text"].year {
    width: min(calc((180 / 750) * 100vw), 180px);
    margin-right: min(calc((10 / 750) * 100vw), 10px);
  }

  form select.month {
    width: min(calc((100 / 750) * 100vw), 100px);
    border: min(calc((2 / 750) * 100vw), 2px) solid var(--base-ddd, #DDD);
    background: linear-gradient(180deg, #FFF 0%, #F4F4F4 100%);
    box-shadow: 0px min(calc((4 / 750) * 100vw), 4px) min(calc((4 / 750) * 100vw), 4px) 0px rgba(0, 0, 0, 0.10);
    height: min(calc((80 / 750) * 100vw), 80px);
    margin-left: min(calc((19 / 750) * 100vw), 19px);
    margin-right: min(calc((10 / 750) * 100vw), 10px);
    font-size: min(calc((26 / 750) * 100vw), 26px);
  }

  form select.date {
    width: min(calc((100 / 750) * 100vw), 100px);
    border: min(calc((2 / 750) * 100vw), 2px) solid var(--base-ddd, #DDD);
    background: linear-gradient(180deg, #FFF 0%, #F4F4F4 100%);
    box-shadow: 0px min(calc((4 / 750) * 100vw), 4px) min(calc((4 / 750) * 100vw), 4px) 0px rgba(0, 0, 0, 0.10);
    height: min(calc((80 / 750) * 100vw), 80px);
    margin-left: min(calc((19 / 750) * 100vw), 19px);
    margin-right: min(calc((10 / 750) * 100vw), 10px);
    font-size: min(calc((26 / 750) * 100vw), 26px);
  }


  form .birthday {
    color: #333;
    font-family: "Noto Sans JP";
    font-size: min(calc((30 / 750) * 100vw), 30px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
  }

  input[type="radio"] {
    margin-right: min(calc((5 / 750) * 100vw), 5px);
    width: min(calc((32 / 750) * 100vw), 32px);
    height: min(calc((32 / 750) * 100vw), 32px);
    position: relative;
    bottom: min(calc((-2 / 750) * 100vw), -2px);
  }

  form .agree {
    color: #333;
    font-family: "Noto Sans JP";
    font-size: min(calc((26 / 750) * 100vw), 26px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
  }

  form .sex {
    color:#333;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: min(calc((30 / 750) * 100vw), 30px);
    font-style: normal;
    font-weight: 500;
    line-height: 180%;
  }

  form .privacy {
    color: var(--base-black-333, #333);
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: min(calc((24 / 750) * 100vw), 24px);
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
  }

  form .privacy a {
    color: #4F4FE2;
    font-weight: 700;
  }

  form .note02{
    color: #333;
    text-align: justify;
    font-family: "Noto Sans JP";
    font-size: min(calc((24 / 750) * 100vw), 24px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-top: min(calc((48 / 750) * 100vw), 48px);
    margin-bottom: min(calc((80 / 750) * 100vw), 80px);
  }

  /* 送信ボタンのスタイル */
input[type="submit"] {
    width: min(calc((630 / 750) * 100vw), 630px);
    height: min(calc((120 / 750) * 100vw), 120px);
    border-radius: min(calc((80 / 750) * 100vw), 80px);
    background: #000062;
    color: var(--white, #FFF);
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: min(calc((30 / 750) * 100vw), 30px);
    font-style: normal;
    font-weight: 700;
    line-height: 140%; 
    transition: filter 0.3s;
}

input[type="submit"]:hover {
    filter: brightness(130%);
}


  .adlp-wrapper .adlp-footer_inner {
    position: absolute;
    width: min(calc((310 / 750) * 100vw), 310px);
    top: min(calc((70 / 750) * 100vw), 70px);
    left: 50%;
    transform: translateX(-50%);
    display: block;
}

.adlp-wrapper .adlp-footer_inner div {
    margin-bottom: min(calc((54 / 750) * 100vw), 54px);
}

.adlp-wrapper .adlp-footer_inner div:last-child {
    margin-bottom: 0;
}

.adlp-wrapper .adlp-floating {
    background: rgba(112, 112, 255, 0.90);
    max-width: 750px;
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 10;
    padding: min(calc((16 / 750) * 100vw), 16px) 0 min(calc((2 / 750) * 100vw), 2px) ;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.adlp-wrapper .adlp-floating.--show {
    opacity: 1;
    visibility: visible;
}

.adlp-wrapper .adlp-floating_inner {
    width: min(calc((690 / 750) * 100vw), 690px);
    margin: 0 auto;
    display: flex;
}

.adlp-wrapper .adlp-btn:hover {
    filter: brightness(130%);
}

.adlp-wrapper .adlp-btn {
    transition: filter 0.3s;
}

.adlp-wrapper .adlp-btn.-anime01:hover,
.adlp-wrapper .adlp-btn.-anime02:hover,
.adlp-wrapper .adlp-btn.-anime03:hover {
    filter: none;
}

.adlp-wrapper .adlp-btn.-anime01,
.adlp-wrapper .adlp-btn.-anime02,
.adlp-wrapper .adlp-btn.-anime03 {
    transition: none;
}

.adlp-wrapper .adlp-btn.-anime01 a,
.adlp-wrapper .adlp-btn.-anime02 a,
.adlp-wrapper .adlp-btn.-anime03 a {
    transition: transform 0.3s;
    display: block;
}

.adlp-wrapper .adlp-btn.-anime01:hover a {
    transform: scale(1.1);
}

.adlp-wrapper .adlp-btn.-anime02:hover a {
    transform: translateY(-5px);
}

.adlp-wrapper .adlp-btn.-anime03:hover a {
    animation: adlpHoverShake 0.15s linear 3;
}

@keyframes adlpHoverShake {
    0% {transform: skew(0deg,0deg);}
    25% {transform: skew(1deg, 1deg);}
    75% {transform: skew(-1deg, -1deg);}
    100% {transform: skew(0deg,0deg);}
}

@media all and (max-width:749px) {}


/* 面談の流れへのCTA */

.img-wrapper{
  position: relative;
}

.cta-wrapper{
  position: absolute;
  top: 63%;        /* 親の上から50%の位置 */
  left: 50%;       /* 親の左から50%の位置 */
  transform: translate(-50%, -50%); /* 自身の大きさの半分だけ左上にずらして補正 */
  
  text-align: center;
 
}


/* サンクスページのCTA */
.adlp-wrapper .img-caution {
  width: clamp(20.625rem, 15.795rem + 20.61vw, 31.25rem);
  margin: 30px auto 15px;
  display: block;
}


.adlp-wrapper .reservation-cta {
  background-color: #0064FF;
  padding: 20px 40px;
  border: solid 4px #000;
  border-radius: 60px;
  margin-bottom: 30px;
  display: inline-block;
  font-weight: 700;
  font-size: clamp(1.25rem, 1.136rem + 0.48vw, 1.5rem) ;
  color: #fff;
  text-decoration: none !important;
  transition: 0.3s;

}





/* マウスオーバー時のスタイル */
.reservation-cta:hover {
  /* box-shadow: 横 縦 ぼかし範囲 色 */
  box-shadow: 0 0 15px rgba(63, 63, 63, 0.8);
  /* 浮き上がらせる */
  transform: translateY(-2px);

  color: #fff;
  text-decoration: none;


}


/* ▶の記号 */
.reservation-cta::after {
  content: "▶";
  margin-left: 10px;
  font-size: 0.8em;


}

/* @media (min-width: 767px) {
  .reservation-cta {
    font-size: 22px
  }

} */

/* ここまでがサンクスページのCTA */