/*
Theme Name: careetlp_20250822
Description: careetlp_20250402のaupdate
Version: 1.0
*/
@charset "UTF-8";
/* CSS@charset 'UTF-8'; /* 文字コードの指定 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");

/* 変数部分
------------------------------------------------------------*/
/* ベースのスタイル
------------------------------------------------------------*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
a,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: normal;
  line-height: 1.5;
  vertical-align: baseline;
}

* {
  font-family: "Noto Sans JP", sans-serif;
}

/* 予約
------------------------------------------------------------*/
.reserve {
  background-color: #FAB751;
  padding-bottom: 100px;
  padding-top: 85px;
}

.cmn-txt p {
  font-size: 30px;
  font-weight: 400;
  color: #fff;
  letter-spacing: 0.11em;
  line-height: 1;
  text-align: center;
  padding: 0 130px;
  font-feature-settings: 'palt';
  /* text-decoration: underline 1px #fff; */
  padding-bottom: 3px;
}


.cmn-txt p .small {
  font-size: 18px;
  font-feature-settings: 'palt';
  letter-spacing: 0;
}

.marker p .pad-0 {
  background: linear-gradient(transparent calc(100% - 1px), #fff calc(100% - 1px));
}

.cmn-txt p span {
  color: #fff;
}

.reserve-txt {
  padding: 0 130px;
}

.reserve-txt p {
  color: #fff;
  text-align: center;
  font-size: 16px;
  margin-top: 45px;
  line-height: 2;
  font-feature-settings: 'palt';
  letter-spacing: 0.11em;
}

.reserve-txt p span {
  color: #fff;
  text-align: center;
  font-size: 16px;
  line-height: 2;
}

.reserve-box {
  background-color: #fff;
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  position: relative;
  z-index: 10;
  margin-top: 70px;
  padding: 90px 100px;
}

.reserve-box::before {
  content: "";
  width: 156px;
  height: 244px;
  background-image: url(img/calender_left.png);
  position: absolute;
  top: -242px;
  left: -3%;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: -1;
}

.reserve-box::after {
  content: "";
  width: 176px;
  height: 270px;
  background-image: url(img/calender_right.png);
  position: absolute;
  top: -265px;
  right: -3%;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: -1;
}

@media screen and (max-width:1100px) {
  .reserve-box::before {
    width: 14vw;
    height: 22vw;
    top: -21.7vw;
  }

  .reserve-box::after {
    width: 16vw;
    height: 24.5vw;
    top: -24.3vw;
  }
}

@media screen and (max-width:930px) {
  .reserve {
    padding-bottom: 85px;
    padding-top: 85px;
  }

  .cmn-txt p {
    font-size: 26px;
    padding: 0 50px;
  }

  .cmn-txt p .small {
    font-size: 16px;
  }

  .reserve-txt p {
    margin-top: 30px;
  }

  .reserve-box {
    margin-top: 50px;
    padding: 40px 50px;
  }

}

@media screen and (max-width:650px) {

  .cmn-txt p {
    padding: 0 30px;
  }

  .reserve-txt {
    padding: 0 80px;
  }
}

@media screen and (max-width:480px) {
  .reserve {
    padding: 50px 0;
  }

  .cmn-txt p {
    font-size: 22px;
    padding: 0 30px;
  }

  .cmn-txt p .small {
    font-size: 15px;
  }

  .reserve-txt {
    padding: 0 70px;
  }

  .reserve-txt p {
    font-size: 14px;
    margin-top: 20px;
    line-height: 1.7;
  }

  .reserve-txt p br {
    display: none;
  }

  .reserve-txt p .inline-b {
    display: inline;
    font-size: 14px;
    line-height: 1.4;
  }

  .reserve-box {
    margin-top: 30px;
    padding: 20px 30px;
  }

  .reserve-box::before {
    left: -5%;
  }

  .reserve-box::after {
    right: -5%;
  }
}

/* ボタン部分
------------------------------------------------------------*/
.bn-hover {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 3rem auto 0;
  width: 34rem;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  cursor: pointer;
  height: 50px;
  text-align: center;
  border: none;
  background-size: 300% 100%;
  border-radius: 50px;
  moz-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
}

@media (max-width: 768px) {
  .bn-hover {
    width: 26rem;
    height: 40px;
  }
}

@media (max-width: 320px) {
  .bn-hover .policy-txt {
    width: 20rem;
  }
}


.bn-hover:hover {
  background-position: 100% 0;
  moz-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  transform: translate3d(0, 3px, 0);
}

.bn-hover:focus {
  outline: none;
}

.bn-hover.bn {
  background-image: linear-gradient(to right, #F08300, #FDD000, #FDD000, #F08300);
}

.bnleft {
  margin: 3rem 0;
}

.gradient4 {
  /*ボタンの形状*/
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 3rem auto 0;
  width: 34rem;
  height: 40px;
  font-size: 1.6rem;
  font-weight: 600;
  border-radius: 30px;
  text-decoration: none;
  border: 3px solid #fff;
  color: #fff;
  outline: none;
  /*アニメーションの指定*/
  transition: all .4s ease-in-out;
}

@media (max-width: 768px) {
  .gradient4 {
    width: 26rem;
  }
}

/*hoverした際、グラデーションと影を付ける*/
.gradient4:hover {
  /*ボタンの形状*/
  border-color: transparent;
  color: #fff;
  /*背景の色と形状*/
  background: linear-gradient(to right, #F08300, #FDD000, #FDD000, #F08300);
  background-size: 200% auto;
  background-position: right center;
  transform: translate3d(0, 3px, 0);
}




/* サンクスページ
------------------------------------------------------------*/
.thanks {
  background-color: #FFF0CB;
}

.thanks-txt {
  margin: 10rem 0;
  padding: 5rem;
  background-color: #fff;
}

.thanks-txt h3 {
  padding-bottom: 3rem;
  color: #F15A24;
  font-size: 2.35rem;
  font-weight: 700;
}

.thanks-txt p {
  font-size: 1.4rem;
}

@media screen and (max-width: 600px) {
  .thanks-txt {
    padding: 3rem;
    margin: 4rem 0;
  }
}

@media screen and (max-width:480px) {
  .thanks-txt p {
    text-align: justify;
  }
}

/* 利用規約
------------------------------------------------------------*/
.thanks .box,
.policy .box {
  max-width: 100rem;
  margin: 0 auto;
  padding: 10rem 0;
  text-align: center;
}

@media screen and (max-width: 600px) {
  .thanks .box {
    padding-top: 1rem;
    padding-bottom: 10rem;
  }
}

.policy {
  background-color: #FFF0CB;
}

.flexbox-nw {
  display: flex;
}

.flexbox {
  display: flex;
}

.policy h4 {
  font-size: 18px;
}

@media screen and (max-width:768px) {
  .policy h4 {
    font-size: 14px;
  }
}

.policy-txt {
  text-align: left;
  padding: 5rem;
  background-color: #fff;
}

.policy-txt h3 {
  text-align: center;
  padding-bottom: 3rem;
  color: #F15A24;
  font-size: 2.4rem;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
}

.policy-txt p {
  font-size: 1.4rem;
}

@media (max-width: 600px) {
  .policy-txt {
    padding: 3rem;
  }
}

.policy-box {
  margin: 3rem 0;
}

.policy-no {
  width: auto;
  font-size: 1.4rem;
  margin-right: 1rem;
}

.policy-t {
  flex: 1;
  font-size: 1.4rem;
}

.mg2 {
  margin: 2rem 0;
}

.plan-img {
  width: 80%;
}

@media (max-width: 600px) {
  .plan-img {
    width: 100%;
  }
}

#booking-package_inputFormPanel {
  text-align: initial;
}

@media (max-width: 1024px) {

  .thanks .box,
  .policy .box {
    width: 80%;
  }
}

@media (max-width: 768px) {

  .thanks .box,
  .policy .box {
    width: auto;
    margin: 0 4rem;
  }
}

@media (max-width: 480px) {

  .thanks .box,
  .policy .box {
    width: auto;
    margin: 0 2rem;
  }
}

/* 20240820 */

* {
  box-sizing: border-box;
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
}

body {
  width: 100%;
  overflow-x: hidden;
}

img {
  width: 100%;
}

a {
  text-decoration: none;
}

.inline-b {
  display: inline-block;
}

.pc-none {
  display: none;
}

@media screen and (max-width:481px) {
  .pc-none {
    display: inherit;
  }

  .sp-none {
    display: none;
  }
}
.pc{
  display: block;
}
@media screen and (max-width:481px) {
  .pc {
    display: none;
  }
}

.sp{
  display: none;
}
@media screen and (max-width:481px) {
  .sp{
    display: block;
  }
}

p,
span,
a,
dd,
dt,
ul,
li,
h1 {
  color: #404040;
  font-family: noto-sans-cjk-jp, sans-serif;
}

.noto_cjk {
  font-family: noto-sans-cjk-jp, sans-serif;
}

.noto {
  font-family: "Noto Sans JP", sans-serif;
}

.josefin {
  font-family: "Josefin Sans", sans-serif;
}

.alex {
  font-family: "Alex Brush", cursive;
}

.max-1080 {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

/* header */

header {
  width: 100%;
  background-color: #fff;
  position: fixed;
  z-index: 51;
}

.header_content {
  height: 80px;
  max-width: 1300px;
  width: 95%;
  margin: 0 auto;
}

.header_flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 21px 0;
}

.pc_nav {
  display: flex;
  align-items: center;
}

.pc_nav ul {
  display: flex;
  align-items: center;
}

.pc_nav ul a {
  display: block;
  min-width: 110px;
  padding: 0 18px;
  position: relative;
}

.pc_nav ul a li {
  transition: .3s;
  display: block;
  letter-spacing: -0.05em;
  font-size: 15px;
  line-height: 1;
}

.pc_nav ul a li:hover {
  color: #FAB751;
}

.pc_nav ul a+a::after {
  content: "|";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0px;
  font-family: noto-sans-cjk-jp, sans-serif;
  font-size: 15px;
}

.pc_nav ul a li {
  font-size: 15px;
  text-align: center;
  white-space: nowrap;
}

.header_logo a img {
  max-width: 140px;
}

.header_counsel_btn a {
  background: linear-gradient(-45deg, #FFC86B 0%, #FFC86B 10%, #FF6287 50%, #FFC86B 100%);
  background-position: 1% 50%;
  background-size: 200% auto;
  /*アニメーションの指定*/
  transition: all 0.3s ease-out;
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.07em;
  padding: 13px 18px;
  border-radius: 200px;
  display: block;
  white-space: nowrap;
  line-height: 1;
}

.header_counsel_btn a:hover {
  background-position: 99% 60%;
}

main {
  padding-top: 80px;
}

@media screen and (max-width:1299px) {
  .header_content {
    height: 6.15vw
  }

  main {
    padding-top: 6.15vw;
  }

  * {
    scroll-padding-top: 6.15vw;
  }

  .header_flex {
    padding: 1.62vw 0;
  }


  .pc_nav ul a {
    min-width: 8.46vw;
    padding: 0 1.38vw;
  }

  .pc_nav ul a+a::after {
    font-size: 15px;
  }

  .pc_nav ul a li {
    font-size: 1.15vw;
  }

  .header_counsel_btn a {
    font-size: 1.076vw;
    padding: 1vw 1.38vw;
  }

  .header_logo a img {
    max-width: 140px;
    min-width: 110px;
  }
}

@media screen and (max-width:930px) {
  .header_content {
    height: 55px;
  }

  main {
    padding-top: 55px;
  }

  * {
    scroll-padding-top: 55px;
  }

  .pc_nav {
    display: none;
  }

  .header_logo {
    padding-top: 5px;
  }

  .header_logo a img {
    width: 130px;
  }

  .header_flex {
    padding: 8px 0;
  }

}

/* ハンバーガー */
/* ハンバーガーメニュー */

.sp-nav-logo {
  display: block;
  width: 150px;
  margin: 0 auto;
}

.sp-nav {
  display: none;
}

@media screen and (max-width:930px) {
  .sp-nav {
    display: inherit;
  }
}

/* チェックボックスを非表示にする */
.checkbox-hidden {
  display: none;
}

/* 設置スペース */
.hum-open {
  display: flex;
  height: 20px;
  width: 30px;
  justify-content: center;
  align-items: center;
  position: fixed;
  z-index: 100;
  /* 重なり順を一番上にする */
  cursor: pointer;
  border-radius: 100px;
  top: 7px;
  right: 4%;
}

.hum-open {
  display: flex;
  height: 40px;
  width: 40px;
  top: 8px;
}

/* アイコンの見た目 */
.hum-open span,
.hum-open span:before,
.hum-open span:after {
  content: '';
  display: block;
  height: 1px;
  width: 30px;
  border-radius: 3px;
  background: #000;
  transition: 0.5s;
  position: absolute;
}

/* 上の線の位置 */
.hum-open span:before {
  bottom: 8px;
}

/* 下の線の位置 */
.hum-open span:after {
  top: 8px;
}

/* メニューが開いた時に真ん中の線を消す */
#hum-icon:checked~.hum-open span {
  background: rgba(255, 255, 255, 0);
}

/* メニューが開いた時に線が×になる*/
#hum-icon:checked~.hum-open span::before {
  bottom: 0;
  transform: rotate(-45deg);
  background: #FAB751;
}

#hum-icon:checked~.hum-open span::after {
  top: 0;
  transform: rotate(45deg);
  background: #FAB751;
}

/* ハンバーガーメニューの中身*/
.sp-nav-content {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 99;
  background: #fff;
  transition: .5s;
  display: table;
}

/* アイコンがクリックされたらメニューを右から入れる */
#hum-icon:checked~.sp-nav-content {
  left: 0;
}

/* メニューのスタイル */

.sp-nav-list {
  width: 80%;
  max-width: 500px;
  list-style: none;
  display: block;
  margin: 0 auto;
  height: fit-content;
  font-size: 18px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


/* メニューを画面の中央に表示する */

.sp-nav-list a li {
  font-size: 16px;
  transition: .3s;
  letter-spacing: 0.12em;
}

.sp-nav-list a:hover li {
  color: #FAB751;
}

.sp-nav-list a:first-child {
  padding-top: 0;
}

.sp-nav-list a {
  display: block;
  position: relative;
  margin: 20px auto;
  border-bottom: 1px dotted #FAB751;
  padding-bottom: 10px;
  width: 100%;
}


.sp-nav .header_counsel_btn a {
  background: linear-gradient(-45deg, #FFC86B 0%, #FFC86B 10%, #FF6287 50%, #FFC86B 100%);
  background-position: 1% 50%;
  background-size: 200% auto;
  /*アニメーションの指定*/
  transition: all 0.3s ease-out;
  color: #fff;
  font-size: 15px;
  letter-spacing: 0.07em;
  padding: 13px 18px;
  border-radius: 200px;
  display: block;
  white-space: nowrap;
  line-height: 1;
  max-width: 300px;
  margin-top: 20px;
}

.sp-nav .header_counsel_btn a:hover {
  background-position: 99% 60%;
}

.sp-header-logo img {
  max-width: 200px;
  margin: 0 auto;
}

.sp-nav-list a.sp-header-logo {
  border: none;
}

/* 950px以下でspheader */

/* mv */

#mv {
  background-image: url(img/mv.jpg);
  background-size: cover;
  background-position: 70%;
  padding-bottom: 40px;
  padding-top: 80px;
}

.mv_content {
  margin: 0 auto;
  position: relative;
}



.main_copy {
  position: relative;
  width: fit-content;
}

.copy_en {
  font-size: 73.25px;
  letter-spacing: 0;
  position: absolute;
  right: 20px;
  bottom: -13px;
  color: #fff;
  z-index: 0;
}

.main_copy h1 {
  font-size: 42px;
  letter-spacing: 0.14em;
  line-height: 2;
  font-weight: 300;
  display: block;
  z-index: 5;
  position: relative;
}


.main_copy h1 .size01 {
  font-size: 62px;
}

.main_copy h1 .size02 {
  font-size: 48px;
}

.sub_copy {
  margin-top: 30px;
  display: block;
  font-size: 23px;
  letter-spacing: 0.1em;
  line-height: 1;
}

.mv_data {
  display: flex;
  max-width: 624px;
  width: 80%;
  gap: 20px;
  margin-top: 55px;
}

.mv_data .a-data {
  text-align: center;
  display: block;
  background-color: #fff;
  width: 190px;
  border-radius: 10px;
  padding: 20px 20px 20px 20px;
  box-sizing: border-box;
  ;

}

.mv_data .a-data .a-data-head {
  font-size: 17px;
  letter-spacing: 0.06em;
  line-height: 1.47;
  display: block;
  height: fit-content;
}

.mv_data .a-data .a-data-num {
  font-size: 101px;
  line-height: 1;
  display: block;
  height: fit-content;
  color: #EA8172;
  font-family: "Jost", sans-serif;
  font-weight: 400;
  margin-top: 8px;

}

.mv_data .a-data .a-data-num .small {
  font-size: 50px;
  font-weight: 600;
  position: relative;
  color: #EA8172;
}

.mv_data .a-data .a-data-num .small::after {
  content: "※1";
  font-size: 10px;
  font-family: noto-sans-cjk-jp, sans-serif;
  position: absolute;
  right: 5px;
  top: 0px;
  color: #404040;
  letter-spacing: 0;
}

.mv_data .a-data .a-data-num .small.ca02::after {
  content: "※2";
}

.mv_ann {
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: 0;
  display: block;
  margin-top: 8px;
}

.mv_cta {
  position: fixed;
  bottom: 10%;
  right: 3%;
  width: fit-content;
  z-index: 50;
  transition: .3s;
}

.mv_cta a {
  border-radius: 500px;
  overflow: hidden;
  width: 200px;
  display: block;
  transition: .3s;
  position: relative;
  box-shadow: 0px 4px 7px 0px rgba(0, 0, 0, 0.3);
}

.mv_cta a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
  transform: skewX(-25deg);
  animation: shine 3s infinite;
}

@keyframes shine {
  50% {
    left: 125%;
  }

  100% {
    left: 125%;
  }
}

.mv_cta.scroll-cta {
  scale: 0.7;
  transform-origin: bottom right;
  transition: .3s;
}

.mv_cta.scroll-cta:hover {
  scale: 1;
  transform-origin: bottom right;
}

.sp-cta {
  display: none;
}

@media screen and (max-width:1020px) {

  .copy_en {
    font-size: 7.18vw;
    right: 1.9vw;
    bottom: -1.27vw;
  }

  .main_copy h1 {
    font-size: 4.11vw;
  }


  .main_copy h1 .size01 {
    font-size: 6.08vw;
  }

  .main_copy h1 .size02 {
    font-size: 4.7vw;
  }

  .sub_copy {
    margin-top: 2.94vw;
    font-size: 2.25vw;
  }

  .mv_data {
    margin-top: 5.4vw;
    gap: 10px;
  }

  .mv_data .a-data {
    width: 18.6vw;
    padding: 1.96vw;

  }

  .mv_data .a-data .a-data-head {
    font-size: 1.67vw;
  }

  .mv_data .a-data .a-data-num {
    font-size: 9.9vw;
    margin-top: 0.78vw;

  }

  .mv_data .a-data .a-data-num .small {
    font-size: 4.9vw;
  }

  .mv_cta a {
    width: 19.6vw;
    box-shadow: 0px 0.4vw 0.68vw 0px rgba(0, 0, 0, 0.3);
  }

}

@media screen and (max-width:767px) {
  #mv {
    background-position: 70%;
  }

  .copy_en {
    font-size: 60px;
  }

  .main_copy h1 {
    font-size: 28.6px;
  }


  .main_copy h1 .size01 {
    font-size: 54.6px;
  }

  .main_copy h1 .size02 {
    font-size: 36.4px;
  }

  .sub_copy {
    margin-top: 16px;
    font-size: 21px;
  }

  .mv_data {
    width: 100%;
    margin-top: 40px;
  }

  .mv_data .a-data {
    width: 32%;
    padding: 15px 13px 15px 13px;
    height: fit-content;
  }

  .mv_data .a-data .a-data-head {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 1.45;
  }

  .mv_data .a-data .a-data-num {
    font-size: 76.7px;
  }

  .mv_data .a-data .a-data-num .small {
    font-size: 37.7px;
  }

  .mv_cta {
    display: none;
  }

  .sp-cta {
    display: table;
    position: fixed;
    background-color: #fff;
    width: 100%;
    bottom: 0;
    z-index: 90;
    left: 0;
    height: 25vw;
    max-height: 110px;
    transition: .3s;
  }

  .sp-cta .wtd_cta {
    margin: 0 auto;
    display: table-cell;
    vertical-align: middle;
  }

  .sp-cta .wtd_cta a::after {
    content: "";
    width: 7px;
    height: 7px;
    background-color: #fff;
    border-radius: 500px;
    border-right: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    border-top: 0px solid transparent;
    border-bottom: 0px solid transparent;
    border-left: 0px solid #fff;
  }

}

@media screen and (max-width:600px) {
  #mv {
    background-position: 80%;
    padding-bottom: 15px;
    padding-top: 145px;
  }

  .copy_en {
    font-size: 46.88px;
    left: -13px;
    bottom: -13px;
  }

  .main_copy h1 {
    font-size: 22px;
  }

  .main_copy h1 br.pc-none {
    display: inherit;
  }

  .main_copy h1 .size01 {
    font-size: 42px;
  }

  .main_copy h1 .size02 {
    font-size: 28px;
  }

  .sub_copy {
    margin-top: 20px;
    font-size: 16px;
    line-height: 1.5;
  }

  .mv_data {
    max-width: 1000px;
    width: 100%;
    margin-top: 20px;
  }

  .mv_data .a-data {
    width: 32%;
    padding: 13px 10px 13px 10px;
    height: fit-content;

  }

  .mv_data .a-data .a-data-head {
    font-size: 10px;
    letter-spacing: 0.06em;
    line-height: 1.45;
  }

  .mv_data .a-data .a-data-num {
    font-size: 59px;
  }

  .mv_data .a-data .a-data-num .small {
    font-size: 29px;
  }

  .mv_data .a-data .a-data-num .small::after {
    font-size: 8px;
    right: 0px;
  }

  .mv_ann {
    font-size: 7px;
    margin-top: 6px;
  }

}

/* your issue */

/* h2共通 */
.h2-en {
  line-height: 1;
  font-size: 22px;
  letter-spacing: 0;
  display: block;
  background-color: #FAB751;
  width: 180px;
  padding: 2px 0;
  padding-top: 7px;
  text-align: center;
  color: #fff;
  border-radius: 100px;
  margin: 0 auto;
}

.h2-jp {
  font-size: 30px;
  color: #EA8172;
  letter-spacing: 0.08em;
  text-align: center;
  margin: 0 auto;
  margin-top: 20px;
  font-weight: 400;
}

.h2-en.color02 {
  background-color: #FFF799;
  color: #FAB751;
}

.h2-jp.color02 {
  color: #fff;
}

@media screen and (max-width:930px) {
  .h2-en {
    font-size: 20px;
    width: 160px;
    padding: 2px 0;
    padding-top: 6px;
  }

  .h2-jp {
    font-size: 26px;
    margin-top: 18px;
  }
}

@media screen and (max-width:480px) {
  .h2-en {
    font-size: 18px;
    width: 150px;
  }

  .h2-jp {
    font-size: 22px;
    margin-top: 13px;
  }
}

#yourissue {
  padding-bottom: 125px;
  padding-top: 100px;
  background-color: #FFFCD1;
}

.issue-img {
  position: relative;
  padding-top: 95px;
}

.issue-img .issue_center {
  max-width: 475px;
  display: block;
  margin: 0 auto;
}

.a-issue {
  position: absolute;
}

.issue01.left {
  max-width: 238px;
  left: 14%;
  top: 45px;
}

.issue01.right {
  max-width: 238px;
  right: 11%;
  top: 25px;
}

.issue02.left {
  max-width: 216px;
  left: 0;
  top: 205px;
}

.issue02.right {
  max-width: 238px;
  right: 0;
  top: 185px;

}

.issue03.left {
  max-width: 217px;
  left: 10%;
  bottom: 0;
}

.issue03.right {
  max-width: 218px;
  right: 10%;
  bottom: 0;
}

.issue-img .tb {
  display: none;
}

@media screen and (max-width:1200px) {
  .issue-img {
    padding-top: 7.91vw;
  }

  .issue-img .issue_center {
    width: 39.58vw;
  }

  .issue01.left {
    width: 19.8vw;
    top: 3.75vw;
  }

  .issue01.right {
    width: 19.8vw;
    top: 2.08vw;
  }

  .issue02.left {
    width: 18vw;
    top: 17.08vw;
  }

  .issue02.right {
    width: 19.8vw;
    top: 15.4vw;
  }

  .issue03.left {
    width: 18.08vw;
  }

  .issue03.right {
    width: 18.16vw;
  }
}

@media screen and (max-width:767px) {
  #yourissue {
    padding: 70px 0;
  }

  .issue-img .tb-none {
    display: none;
  }

  .issue-img .tb {
    display: inherit;
  }

  .issue-img {
    padding-top: 98vw;
    margin-top: 7.5vw;
  }

  .issue-img .issue_center {
    width: 65vw;
    max-width: 1000px;
  }

  .issue01.left {
    max-width: 1000px;
    width: 42.5vw;
    top: 0;
    left: 0;
  }

  .issue01.right {
    max-width: 1000px;
    width: 41.75vw;
    top: 0;
    right: 1%;
  }

  .issue02.left {
    max-width: 1000px;
    width: 40vw;
    top: 35.3vw;
    left: 2%;
  }

  .issue02.right {
    max-width: 1000px;
    width: 44vw;
    top: 32vw;
    right: 2%;
  }

  .issue03.left {
    max-width: 1000px;
    width: 40vw;
    bottom: 58.75vw;
    left: 0;
  }

  .issue03.right {
    max-width: 1000px;
    width: 40.25vw;
    bottom: 60vw;
    right: 0;
  }

  .issue01.left::after {
    content: "";
    width: 5.75vw;
    height: 3.64vw;
    background-color: #7CB4D0;
    border-radius: 50%;
    position: absolute;
    left: 0;
    bottom: -1.75vw;
  }

  .issue01.right::after {
    content: "";
    width: 7.27vw;
    height: 4vw;
    background-color: #90B595;
    border-radius: 50%;
    position: absolute;
    right: 0;
    bottom: -2.5vw;
  }

  .issue02.left::after {
    content: "";
    width: 3.025vw;
    height: 2vw;
    background-color: #7CB4D0;
    border-radius: 50%;
    position: absolute;
    right: 2vw;
    bottom: -3vw;
  }

  .issue02.right::after {
    content: "";
    width: 3.5vw;
    height: 2.25vw;
    background-color: #90B595;
    border-radius: 50%;
    position: absolute;
    left: 8.25vw;
    bottom: -1vw;
  }
}

@media screen and (max-width:600px) {
  #yourissue {
    padding: 50px 0;
  }
}

/* 今どうすればいいのかな？ */

#wtd {
  padding-top: 35px;
}

.wtd-content {
  position: relative;
  padding-bottom: 70px;
}

.wtd-content::before {
  content: "";
  width: 228px;
  height: 386px;
  background-image: url(img/wtd_left.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center bottom;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.wtd-content::after {
  content: "";
  width: 251px;
  height: 386px;
  background-repeat: no-repeat;
  background-image: url(img/wtd_right.png);
  background-position: center bottom;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
}

@media screen and (max-width:1300px) {
  .wtd-content::before {
    width: 17.53vw;
    height: 29.7vw;
  }

  .wtd-content::after {
    width: 19.3vw;
    height: 29.7vw;
  }
}

.wtd-h2 {
  padding-top: 40px;
  max-width: 439px;
  margin: 0 auto;
}

.wtd_txt {
  margin-top: 25px;
  text-align: center;
  font-size: 18px;
  line-height: 2.2;
  letter-spacing: 0.1em;
  font-feature-settings: 'palt';
}

.wtd_cta {
  margin-top: 25px;
}

.wtd_cta a {
  display: block;
  text-align: center;
  line-height: 1.5;
  font-size: 16px;
  background-color: #64D000;
  width: 400px;
  margin: 0 auto;
  border-radius: 10px;
  color: #fff;
  padding: 6px 0;
  letter-spacing: 0.13em;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
  position: relative;
  overflow: hidden;
}

.wtd_cta a .big {
  font-size: 30px;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #fff;
}

.wtd_cta a::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #fff;
  border-right: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
}

.wtd_cta a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
  transform: skewX(-25deg);
  animation: shine 3s infinite;
}

@media screen and (max-width:767px) {

  .wtd_txt .pc-none {
    display: inherit;
  }

  .wtd-h2 {
    padding-top: 30px;
    width: 80%;
  }

  .wtd_txt {
    margin-top: 20px;
    font-size: 16px;
  }

  .wtd_cta {
    margin-top: 20px;
  }

  .wtd-content::before {
    width: 15vw;
    height: 25.26vw;
  }

  .wtd-content::after {
    width: 16.6vw;
    height: 22.82vw;
  }
}

@media screen and (max-width:630px) {
  .wtd-content::before {
    bottom: 145px;
  }

  .wtd-content::after {
    bottom: 145px;
  }
}

@media screen and (max-width:480px) {

  #wtd {
    padding-top: 25px;
  }

  .wtd-content {
    padding-bottom: 50px;
  }

  .wtd-h2 {
    padding-top: 20px;
    width: 90%;
  }

  .wtd_txt {
    font-size: 15px;
    padding: 0 13vw;
    line-height: 1.6;
    letter-spacing: 0.06em;
  }

  .wtd-content::before {
    width: 12.5vw;
    height: 23vw;
    bottom: calc(50px + 16.8vw);
  }

  .wtd-content::after {
    width: 13.75vw;
    height: 19.125vw;
    bottom: calc(50px + 16.8vw);
  }

  .wtd_cta a {
    font-size: 3.3vw;
    width: 83.3vw;
    border-radius: 2.08vw;
    padding: 1.25vw 0;
    box-shadow: 0px 0.625vw 1.041vw 0px rgba(0, 0, 0, 0.2);
  }

  .wtd_cta a .big {
    font-size: 6.25vw;
  }

  .wtd_cta a::after {
    border-top: 1.25vw solid transparent;
    border-bottom: 1.25vw solid transparent;
    border-left: 2.08vw solid #fff;
    right: 2.08vw;
  }
}

/* aboutus */

#aboutus {
  background-image: url(img/aboutus_back.jpg);
  background-size: cover;
  padding: 100px 0;
}

.aboutus-txt {
  margin-top: 30px;
}

.aboutus-txt p {
  font-size: 16px;
  line-height: 3.15;
  text-align: center;
  letter-spacing: 0.18em;
}

.aboutus-img p {
  margin-top: 25px;
}

.aboutus-img {
  max-width: 980px;
  margin: 0 auto;
}

.btn-coach {
  margin-top: 40px;
}

.btn-coach a {
  line-height: 1;
  display: block;
  width: fit-content;
  padding: 13px 40px;
  background-color: #404040;
  color: #fff;
  margin: 0 auto;
  border-radius: 100px;
  position: relative;
  letter-spacing: 0.07em;
  font-size: 14px;
}

.coach-btn-arrow img {
  width: 9px;
  padding: 3px 0;
  margin-left: 10px;
}

.aboutus-img .tb {
  display: none;
}

@media screen and (max-width:767px) {
  #aboutus {
    padding: 70px 0;
  }

  .aboutus-txt {
    margin-top: 25px;
  }

  .aboutus-txt p {
    line-height: 2.8;
  }


  .aboutus-img {
    max-width: 980px;
    margin: 0 auto;
  }

  .aboutus-img p {
    margin-top: 20px;
  }

  .btn-coach {
    margin-top: 30px;
  }

  .aboutus-txt .tb-none {
    display: none;
  }

  .aboutus-img .pc {
    display: none;
  }

  .aboutus-img .tb {
    display: inherit;
  }
}

@media screen and (max-width:480px) {
  #aboutus {
    padding: 50px 0;
  }

  .aboutus-txt {
    margin-top: 20px;
  }

  .aboutus-txt p {
    line-height: 2;
    font-feature-settings: 'palt';
  }

  .aboutus-img p {
    margin-top: 15px;
  }

  .btn-coach {
    margin-top: 25px;
  }

  .aboutus-txt .tb-none {
    display: none;
  }

  .aboutus-img .pc {
    display: none;
  }

  .aboutus-img .tb {
    display: inherit;
  }
}

/* reason */

#reason {
  background: linear-gradient(to bottom, #FAB751, #FFFCD1);
  padding: 95px 0;
}

.a-reason {
  background-color: #fff;
  border-radius: 10px;
  width: 330px;
  padding: 40px 0px;
  padding-bottom: 20px;

}

.a-reason-num {
  font-size: 15px;
  letter-spacing: 0.22em;
  color: #90B595;
  text-align: center;
}

.a-reason-title {
  font-size: 20px;
  text-align: center;
  line-height: 1.725;
  margin-top: 2px;
  padding: 0 25px;
  position: relative;
}

.a-reason-title.title03::after {
  content: "★5段階評価";
  font-size: 10px;
  color: #808080;
  letter-spacing: 0.09em;
  position: absolute;
  bottom: 8px;
  left: 62%;
}

.a-reason-title.ls-7 {
  letter-spacing: 0;
}

.a-reason-img {
  max-width: 270px;
  margin: 10px auto;
}


.a-reason-txt p {
  font-size: 14px;
  line-height: 1.785;
  letter-spacing: 0.008em;
  padding: 0 30px;
}

.a-reason-txt .orange {
  display: inline;
  background: linear-gradient(transparent 85%, #FAB751 15%);
  /* 
  text-decoration: underline 2px;
  text-decoration-color: #FAB751; */
}


.a-reason-txt .small {
  font-size: 10px;
  line-height: 1.8;
  letter-spacing: 0.08em;
}

.reason_wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
  gap: 20px;
}

.reason-content .wtd_cta {
  margin-top: 50px;
}

@media screen and (max-width:1300px) {

  .a-reason {
    padding: 3.07vw 0px;
    padding-bottom: 1.53vw;

  }

  .a-reason-num {
    font-size: 1.6vw;
  }

  .a-reason-title {
    font-size: 1.7vw;
    margin-top: 0.15vw;
    padding: 0 1.9vw;
  }

  .a-reason-title.title03::after {
    bottom: 0.2vw;
  }

  .a-reason-img {
    margin: 0.76vw auto;
  }


  .a-reason-txt p {
    padding: 0 2.3vw;
  }

  .reason_wrap {
    gap: 1.5vw;
  }

}

@media screen and (max-width:767px) {
  .a-reason {
    width: 85%;
    padding: 40px 0px;
    padding-bottom: 20px;
    margin: 0 auto;
  }

  .a-reason+.a-reason {
    margin-top: 20px;
  }

  .a-reason-num {
    font-size: 15px;
  }

  .a-reason-title {
    font-size: 20px;
    margin-top: 2px;
    padding: 0 25px;
  }

  .a-reason-title.title03::after {
    bottom: 7px;
    left: 60%;
  }

  .a-reason-img {
    max-width: 290px;
  }

  .reason_wrap {
    display: block;
    margin-top: 40px;
  }

  .reason-content .wtd_cta {
    margin-top: 40px;
  }

  .a-reason.delay01,
  .a-reason.delay02 {
    animation-delay: 0s;
  }

  #reason {
    padding: 70px 0;
  }
}

@media screen and (max-width:480px) {
  #reason {
    padding: 50px 0;
  }

  .a-reason {
    width: 100%;
    padding: 30px 0px;
    padding-bottom: 15px;
  }

  .a-reason+.a-reason {
    margin-top: 10px;
  }

  .a-reason-num {
    font-size: 14px;
  }

  .a-reason-title {
    font-size: 18px;
    margin-top: 1px;
    padding: 0 20px;
  }

  .a-reason-title.title03::after {
    bottom: 4px;
  }

  .a-reason-img {
    width: 90%;
  }

  .reason_wrap {
    display: block;
    margin-top: 30px;
  }

  .reason-content .wtd_cta {
    margin-top: 30px;
  }

  .a-reason-txt p {
    padding: 0 20px;
  }
}

/* service */
#service {
  background-color: #f0e8d2;
  padding: 100px 0;
}

.service-top-txt p {
  font-size: 16px;
  text-align: center;
  line-height: 1.56;
  letter-spacing: 0.11em;
}

.service-top-txt {
  margin-top: 50px;
}

/* スライド */

#service .slide-container {
  margin-top: 85px;
}

.slick-track {
  display: flex;
}

.slick-slide {
  height: auto !important;
}

#service .a-slide {
  max-width: 1080px;
  width: 90vw;
  padding: 55px 0;
  background-color: #fff;
}

.a-slide-flex {
  display: flex;
  justify-content: space-between;
  width: 88%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.a-slide-right {
  position: relative;
}

.a-slide-flex .a-slide-right .a-slide-title::after {
  content: "";
  width: 154px;
  height: 93px;
  position: absolute;
  top: -20px;
  right: -20px;
  z-index: 0;
  background-size: contain;
  background-repeat: no-repeat;
}

.a-slide-flex.num01 .a-slide-right .a-slide-title::after {
  background-image: url(img/slidenum01.png);
}

.a-slide-flex.num02 .a-slide-right .a-slide-title::after {
  background-image: url(img/slidenum02.png);
}

.a-slide-flex.num03 .a-slide-right .a-slide-title::after {
  background-image: url(img/slidenum03.png);
}

.a-slide-flex.num04 .a-slide-right .a-slide-title::after {
  background-image: url(img/slidenum04.png);
}

.a-slide-flex.num05 .a-slide-right .a-slide-title::after {
  background-image: url(img/slidenum05.png);
}

.a-slide-flex.num06 .a-slide-right .a-slide-title::after {
  background-image: url(img/slidenum06.png);
}

.a-slide-img {
  width: 51%;
  border-radius: 20px;
}

.a-slide-img img {
  border-radius: 20px;
}

.a-slide-right {
  width: 45%;
  padding-top: 20px;
}

.a-slide-title {
  position: relative;
  width: 100%;
  display: block;
  padding-bottom: 15px;
  position: relative;
  z-index: 2;
}

.a-slide-title span {
  font-size: 25px;
  color: #EA8172;
  letter-spacing: 0.08em;
  font-feature-settings: 'palt';
}


.a-slide-title.ls-custom {
  letter-spacing: 0;
}

.a-slide-title::before {
  content: "";
  width: 105%;
  height: 1px;
  background-color: #EA8172;
  position: absolute;
  right: 0;
  bottom: 0;
}

.a-slide-txt {
  font-size: 16px;
  line-height: 2.43;
  letter-spacing: 0.02em;
  margin-top: 20px;
  position: relative;
  z-index: 2;
  font-feature-settings: 'palt';
}

#service .slick-prev,
#service .slick-next {
  width: 40px;
  height: 40px;
  background-color: #90B595;
  cursor: pointer;
  position: relative;
  display: block;
}

#service .slick-prev::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 17px solid #fff;
  border-left: 0;
  position: absolute;
  top: 50%;
  left: 47%;
  transform: translate(-50%, -50%);
}

#service .slick-next::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 17px solid #fff;
  border-right: 0;
  position: absolute;
  top: 50%;
  left: 53%;
  transform: translate(-50%, -50%);
}

#service .slide-container {
  position: relative;
  height: fit-content;
}

#service .slide-arrows {
  position: absolute;
  z-index: 5;
  display: flex;
  gap: 15px;
  top: 85%;
  right: 6%;
  width: fit-content;
  height: fit-content;
}

#service .slide-dots {
  position: initial !important;
  display: flex;
  width: 100%;
  margin-bottom: 10px;
}

#service .slide-dots li button {
  border: none;
  background-color: #FAB751;
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

#service .slide-dots li.slick-active button {
  background-color: #EA8172;
}

#service .slide-dots li {
  width: 16.66%;
  height: 60px;
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  z-index: 0;
}

@media screen and (max-width:1300px) {
  #service .slide-dots li {
    height: 4.6vw;
  }
}

#service .slide-dots li button {
  font-size: 0;
  /* テキストを非表示にする */
}

#service .slideslide-dots li.slick-active button::before {
  content: '';
}

#service .slide-dots li button::before {
  display: block;
  font-size: 17px;
  /* フォントサイズ調整 */
  color: #fff;
  text-align: center;
  /* テキストの中央揃え */
  line-height: 1.35;
  /* 行の高さ調整 */
  letter-spacing: 0.11em;
  white-space: pre-wrap;
  padding-right: 30px;
}

#service .slide-dots li:nth-child(1) button::before {
  content: "01\A自己分析";
}

#service .slide-dots li:nth-child(2) button::before {
  content: "02\A個性・特性分析";
}

#service .slide-dots li:nth-child(3) button::before {
  content: "03\A仕事分析";
}

#service .slide-dots li:nth-child(4) button::before {
  content: "04\Aキャリアプラン";
}

#service .slide-dots li:nth-child(5) button::before {
  content: "05\A転職活動支援";
}

#service .slide-dots li:nth-child(6) button::before {
  content: "0 6\Aその他プログラム";
  letter-spacing: -0.05em;
}

@media screen and (max-width:1300px) {

  .a-slide-flex .a-slide-right .a-slide-title::after {
    width: 11.84vw;
    height: 7.15vw;
    top: -1.53vw;
    right: -1.53vw;
  }

  #service .a-slide {
    padding-bottom: 85px;
  }

  #service .slide-dots li button::before {
    font-size: 1.3vw;
    /* フォントサイズ調整 */
    padding-right: 2.3vw;
  }

}

@media screen and (max-width:767px) {

  #service {
    padding: 70px 0;
  }

  .service-top-txt {
    margin-top: 40px;
  }

  /* スライド */

  #service .slide-container {
    margin-top: 50px;
  }

  .a-slide-flex {
    display: block;
    width: 90%;
  }

  #service .a-slide {
    padding: 40px 0;
    padding-bottom: 85px;
  }

  .a-slide-flex .a-slide-right .a-slide-title::after {
    width: 154px;
    height: 93px;
    top: auto;
    right: 0;
    bottom: 0;
  }

  .a-slide-img {
    width: 100%;
  }

  .a-slide-img img {
    border-radius: 20px;
  }

  .a-slide-right {
    width: 100%;
    padding-top: 0;
  }

  .a-slide-title {
    box-sizing: border-box;
    height: 100px;
    display: table;
    padding: 0;
    font-size: 22px;
  }

  .a-slide-title span {
    display: table-cell;
    vertical-align: middle;
    line-height: 1;
    line-height: 1.2;
  }

  .a-slide-title span br.pc-none {
    display: inherit;
  }

  .a-slide-title::before {
    width: 100%;
  }

  #service .slick-prev,
  #service .slick-next {
    width: 40px;
    height: 40px;
    background-color: #90B595;
    cursor: pointer;
    position: relative;
    display: block;
  }

  #service .slide-arrows {
    position: absolute;
    z-index: 5;
    display: flex;
    gap: 15px;
    top: 92%;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: fit-content;
    height: fit-content;
  }

  #service .slide-dots {
    flex-wrap: wrap;
    gap: 5px 0;
  }

  #service .slide-dots li {
    width: 33%;
    height: 6.45vw;
    min-height: 40px;
  }

  #service .slide-dots li button::before {
    font-size: 2.2vw;
    letter-spacing: 0em;
    white-space: pre-wrap;
    padding-right: 25px;
  }

  #service .slide-dots li:nth-child(6) button::before {
    content: "06\Aその他プログラム";
    letter-spacing: 0em;
  }
}

@media screen and (max-width:480px) {
  #service {
    padding: 50px 0;
  }

  .service-top-txt {
    margin-top: 30px;
  }

  .service-top-txt p {
    line-height: 1.7;
  }

  /* スライド */

  #service .slide-container {
    margin-top: 30px;
  }

  .a-slide-flex .a-slide-right .a-slide-title::after {
    width: 113px;
    height: 66px;
  }

  #service .a-slide {
    padding: 20px 0;
    padding-bottom: 65px;
  }

  .a-slide-img img {
    border-radius: 10px;
  }

  .a-slide-title {
    height: 85px;
  }

  .a-slide-title span {
    font-size: 20px;
  }

  .a-slide-title::before {
    width: 100%;
  }

  .a-slide-txt {
    font-size: 16px;
    line-height: 2;
  }


  #service .slick-prev,
  #service .slick-next {
    width: 30px;
    height: 30px;
  }

  #service .slide-dots li button::before {
    font-size: 2.55vw;
    letter-spacing: 0em;
    white-space: pre-wrap;
    padding-right: 10px;
  }

  #service .slide-arrows {
    gap: 10px;
    top: 93%;
    right: 5%;
  }

  #service .slick-prev::after {
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-right: 12px solid #fff;
  }

  #service .slick-next::after {
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #fff;
  }


  #service .slide-dots {
    gap: 3px 0;
  }

  #service .slide-dots li {
    width: 33%;
  }

  #service .slide-dots li:nth-child(4) button::before,
  #service .slide-dots li:nth-child(1) button::before {
    padding-right: 5px;
  }
}

#service .slide-dots li::after {
  content: "";
  width: 25px;
  height: 100%;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 100% 50%);
  position: absolute;
  top: 0;
  left: -24px;
  background-color: #FAB751;
  z-index: 2;
}

#service .slide-dots li:nth-child(1):after {
  width: 0;
}

#service .slide-dots li.slick-active::after {
  background-color: #EA8172;
}

#service .slide-dots li::before {
  content: "";
  width: 30px;
  height: calc(100% + 2px);
  clip-path: polygon(0 0, 20% 0, 100% 50%, 20% 100%, 0 100%, 80% 50%);
  position: absolute;
  top: -1px;
  right: -1px;
  background-color: #f0e8d2;
  z-index: 5;
}

@media screen and (max-width:1300px) {
  #service .slide-dots li::after {
    width: 1.92vw;
    left: -1.846vw;
  }

  #service .slide-dots li::before {
    width: 2.3vw;
  }
}

#service .slide-dots li:nth-child(3):before {
  clip-path: polygon(0 0, 100% 0, 100% 50%, 100% 100%, 0 100%, 80% 50%);
  background-color: #f0e8d2;
  right: -1px;
}

#service .slide-dots li:nth-child(6):before {
  clip-path: polygon(0 0, 100% 0, 100% 50%, 100% 100%, 0 100%, 100% 50%);
  background-color: #f0e8d2;
  height: calc(100% + 2px);
  top: -1px;
}


@media screen and (max-width:767px) {
  #service .slide-dots li::after {
    width: 2.2vw;
    left: -2.1vw;
  }

  #service .slide-dots li::before {
    content: "";
    width: 2.6vw;
    height: calc(100% + 2px);
    clip-path: polygon(0 0, 20% 0, 100% 50%, 20% 100%, 0 100%, 80% 50%);
  }

  #service .slide-dots li:nth-child(3):before {
    clip-path: polygon(0 0, 100% 0, 100% 50%, 100% 100%, 0 100%, 80% 50%);
    background-color: #f0e8d2;
    right: -1px;
  }

  #service .slide-dots li:nth-child(6):before {
    clip-path: none;
    background-color: #FAB751;
    height: 100%;
    top: 0;
  }

  #service .slide-dots li:nth-child(4):after {
    clip-path: polygon(100% 50%, 0 0, 0 100%);
    background-color: #f0e8d2;
    width: 2.2vw;
    left: -1px;
    top: 0;
  }

  #service .slide-dots li:nth-child(6):before {
    clip-path: none;
    background-color: #FAB751;
    height: 100%;
    top: 0;
  }

  #service .slide-dots li:nth-child(6).slick-active::before {
    background-color: #EA8172;
  }

}

/* coach */

#coach {
  padding: 108px 0;
  background-image: url(img/coach_back.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.coach-rep {
  display: flex;
  background-color: #fff;
  max-width: 1080px;
  width: 95%;
  margin: 0 auto;
  border-radius: 20px;
  padding: 40px;
  gap: 3%;
  margin-top: 55px;
}

.coach-rep-img {
  width: 28%;
}

.coach-rep-img img {
  width: 100%;
  height: auto;
}

.coach-rep-txt {
  width: calc(100% - 28% - 3%);
}

.a-coach-name .position {
  font-size: 14px;
  color: #FAB751;
  letter-spacing: 0.11em;
}

.a-coach-name .name {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.11em;
  margin-top: 5px;
}

.a-coach-name .name .name-en {
  font-size: 15px;
  letter-spacing: 0.05em;
  color: #BFBFBF;
  padding-left: 20px;
}

.coach-rep-explain {
  margin-top: 25px;
}

.coach-rep-explain p {
  font-size: 13px;
  font-feature-settings: 'palt';
  line-height: 2;
}

.coach-rep-message .title {
  font-size: 16px;
  background-color: #FAB751;
  color: #fff;
  padding: 7px 10px;
  line-height: 1;
  margin-top: 20px;
}

.coach-rep-message .content {
  font-size: 14px;
  line-height: 2;
  font-feature-settings: 'palt';
  margin-top: 15px;
}

.a-coach {
  background-color: #fff;
  max-width: 400px;
  padding: 30px 35px;
  border-radius: 15px;
  margin: 0 12.5px;
}

.a-coach .a-coach-name {
  margin-top: 20px;
}

.a-coach-txt {
  margin-top: 15px;
}

.a-coach-txt p {
  font-size: 13px;
  line-height: 2;
  font-feature-settings: 'palt';
}

.slide-container.coach {
  position: relative;
  margin-top: 30px;
}

#coach .slick-prev,
#coach .slick-next {
  width: 80px;
  height: 80px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 200px;
  cursor: pointer;
}

#coach .slick-prev {
  background-image: url(img/voice-prev.png);
}

#coach .slick-next {
  background-image: url(img/voice_next.png);
}

.slide-arrows_coach {
  display: flex;
  justify-content: space-between;
  padding: 0 30px;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
}

.wtd_cta.coach {
  margin-top: 50px;
}


@media screen and (max-width:767px) {

  #coach {
    padding: 70px 0;
  }

  .coach-rep {
    display: block;
    width: 90%;
    padding: 30px;
    margin-top: 40px;
  }

  .coach-rep-img {
    width: 100%;
  }

  .coach-rep-txt {
    width: 100%;
    margin-top: 20px;
  }

  .coach-rep-explain {
    margin-top: 15px;
  }

  .coach-rep-message .content {
    margin-top: 10px;
  }

  .a-coach-txt {
    margin-top: 10px;
  }

  #coach .slick-prev,
  #coach .slick-next {
    width: 50px;
    height: 50px;
  }

  .slide-arrows_coach {
    padding: 0 10px;
  }

  .wtd_cta.coach {
    margin-top: 40px;
  }
}

@media screen and (max-width:480px) {
  #coach {
    padding: 50px 0;
  }

  .a-coach {
    width: 80vw;
    padding: 20px 25px;
    border-radius: 10px;
    margin: 0 10px;
  }

  .slide-container.coach {
    margin-top: 25px;
  }

  #coach .slick-prev,
  #coach .slick-next {
    width: 40px;
    height: 40px;
  }

  .slide-arrows_coach {
    padding: 0 5px;
  }

  .wtd_cta.coach {
    margin-top: 30px;
  }

}

/* voice */

#voice {
  padding: 100px 0;
}

.a-voice {
  background-color: #E5DDC4;
  border-radius: 10px;
  max-width: 380px;
  padding: 60px 30px 35px 30px;
  margin: 0 15px;
}

.a-voice-txt {
  min-height: 170px;
  position: relative;
}

.a-voice-txt::before {
  content: "";
  width: 33px;
  height: 27px;
  background-image: url(img/voice_s.png);
  background-size: contain;
  background-repeat: no-repeat;
  top: -40px;
  left: -20px;
  position: absolute;
}

.a-voice-txt::after {
  content: "";
  width: 33px;
  height: 27px;
  background-image: url(img/voice_e.png);
  background-size: contain;
  background-repeat: no-repeat;
  bottom: -3px;
  right: -20px;
  position: absolute;
}

.a-voice-txt p {
  font-size: 14px;
  line-height: 1.86;
  font-feature-settings: "palt";
}

.a-voice-bottom {
  display: flex;
  gap: 9px;
  align-items: end;
}

.a-voice-img img {
  width: 61px;
  height: 61px;
}

.a-voice-info p {
  font-size: 14px;
  color: #EA8172;
  letter-spacing: 0.14em;
  line-height: 1.7;
}

@media screen and (max-width:480px) {
  .a-voice-info p {
    font-size: 13px;
    letter-spacing: 0.04em;
    line-height: 1.7;
  }

  .a-voice {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
  }
}



/* voice slide */

.slide-container.voice {
  margin-top: 47px;
  position: relative;
}

#voice .slick-prev,
#voice .slick-next {
  width: 50px;
  height: 50px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 200px;
  cursor: pointer;
}

#voice .slick-prev {
  background-image: url(img/voice-prev.png);
}

#voice .slick-next {
  background-image: url(img/voice_next.png);
}

.slide-arrows_voice {
  display: flex;
  justify-content: space-between;
  padding: 0 30px;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width:767px) {
  #voice {
    padding: 70px 0;
  }

  /* voice slide */

  .slide-container.voice {
    margin-top: 40px;
    position: relative;
  }

  .slide-arrows_voice {
    padding: 0 15px;
  }
}

@media screen and (max-width:480px) {
  #voice {
    padding: 50px 0;
  }

  .a-voice {
    margin: 0 10px;
    width: 80vw;
  }

  .a-voice-txt {
    min-height: 200px;
  }

  .a-voice-txt::before {
    width: 27px;
    height: 22px;
  }

  .a-voice-txt::after {
    width: 27px;
    height: 22px;
  }

  /* voice slide */

  .slide-container.voice {
    margin-top: 30px;
  }

  .slide-arrows_voice {
    padding: 0 5px;
  }
}

/* refund */
#refund{
  padding-top: 100px;
  padding-bottom: 95px;
}
@media screen and (max-width: 930px) {
  #refund{
    padding: 70px 0;
  }
}
@media screen and (max-width: 480px) {
  #refund{
    padding: 50px 0;
  }
}
.refund-content .item{
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  margin-top: 45px;
}
.refund-content .item:after{
  position: absolute;
  content: "";
  background: url(img/refund_badge.png) center / cover no-repeat;
  right: -30px;
  top: -20px;
  max-width: 100px;
  width: 100%;
  z-index: 1;
  height: 100%;
  max-height: 128px;
}
@media screen and (max-width: 900px) {
  .refund-content .item:after{
    max-width: 11.1vw;
    max-height: 14.2vw;
    right: -3.33vw;
    top: -2.22vw;
  }
}
@media screen and (max-width: 481px) {
  .refund-content .item:after{
    max-width: 20vw;
    max-height: 25.75vw;
    right: initial;
    top: -10vw;
    left: 0;
  }
}
.refund-content .txt{
  font-size: 16px;
  line-height: calc(39 / 16);
  letter-spacing: .11em;
  text-align: center;
  margin-top: 30px;
}
@media screen and (max-width: 481px) {
  .refund-content .txt{
    margin-top: 20px;
    line-height: 1.7;
  }
}

.refund-content .imgflame{
  display: block;
  height: 100%;
  width: 100%;
  box-shadow: 10px 10px 15px -8px rgba(0, 0, 0, .3);
}
.refund-content .imgflame img{
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.refund-content .attention{
  font-size: 12px;
  line-height: calc(29.5 / 12);
  letter-spacing: .11em;
  text-align: end;
  opacity: .5;
  margin-top: 7px;
  font-weight: 300;
}
@media screen and (max-width: 481px) {
  .refund-content .attention{
    font-size: max(10px, 3vw);
    text-align: center;
    letter-spacing: 0.005em;
    margin-top: 5px;
    white-space: nowrap;
  }
}
/* refund */
/* rateplan */

#rate_plan {
  padding-top: 120px;
  padding-bottom: 100px;
  background-color: #FFFCD1
}

.a-plan {
  width: 32%;
  background-color: #fff;
  border-radius: 20px;
  overflow: hidden;
}

.a-plan-content {
  padding: 0 30px;
  padding-top: 18px;
  padding-bottom: 30px;
}

.a-plan.plan01 {
  border: solid 3px #FCCE4D;
}

.a-plan.plan02 {
  border: solid 3px #F7B249;
}

.a-plan.plan03 {
  border: solid 3px #EA8172;
}

.a-plan-head p {
  color: #fff;
  text-align: center;
  font-size: 24px;
  line-height: 1;
  padding: 25px 0;
}

.a-plan.plan01 .a-plan-head {
  background-color: #FCCE4D;
}

.a-plan.plan02 .a-plan-head {
  background-color: #F7B249;
}

.a-plan.plan03 .a-plan-head {
  background-color: #EA8172;
}

.osusume {
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.07em;
}

.a-plan-explain {
  margin: 10px 0;
  min-height: 108px;
}

@media screen and (max-width:1100px) {
  .a-plan-explain {
    min-height: 140px;
  }
}

.a-plan-explain li {
  padding-left: 20px;
  position: relative;
  font-size: 15px;
  line-height: 1.8;
  font-feature-settings: 'palt';
}

.a-plan-explain li::before {
  content: "";
  width: 14px;
  height: 14px;
  background-image: url(img/plan_check.png);
  background-size: contain;
  background-repeat: no-repeat;
  top: 7px;
  left: 0;
  position: absolute;
}

.a-plan .title {
  color: #fff;
  text-align: center;
  font-size: 16px;
  letter-spacing: 0.07em;
  border-radius: 200px;
  padding: 5px 0;
  margin-bottom: 10px;
  line-height: 1.25;
}
.a-plan .title .installment{
  color: #fff;
  font-size: 14px;
}

.a-plan .title.small {
  font-size: 14px;
  letter-spacing: 0.05em;
}

.a-plan.plan01 .title {
  background-color: #FCCE4D;
}

.a-plan.plan02 .title {
  background-color: #F7B249;
}

.a-plan.plan03 .title {
  background-color: #EA8172;
}

.a-plan-price p.content {
  text-align: center;
  font-size: 20px;
  color: #F15A24;
  line-height: 1;
  margin-bottom: 10px;
}

.a-plan-price p.content .big {
  font-size: 50px;
  font-family: m-plus-1c, sans-serif;
  font-weight: 900;
  color: #F15A24;
  line-height: 0.8;
}

.a-plan-price p.content .small {
  font-size: 15px;
  font-weight: 300;
  display: block;
  margin-top: 10px;
}

.a-plan-term {
  display: flex;
  justify-content: space-between;
}

.a-plan-term .left,
.a-plan-term .right {
  width: calc(50% - 1px);
}

.a-plan-term p.content {
  font-size: 40px;
  text-align: center;
  font-family: m-plus-1c, sans-serif;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 10px;
}

.a-plan-term p.content .small {
  font-size: 18px;
  font-weight: 300;
}

.a-plan-program p.content {
  font-size: 15px;
  font-feature-settings: 'palt';
  line-height: 1.67;
}

.a-plan-program .center {
  text-align: center;
  line-height: 1;
  font-size: 27px;
  font-weight: 900;
  color: #F15A24;
}

.a-plan-program .center .gray {
  font-size: 15px;
  font-weight: 700;
  display: block;
  background-color: rgba(204, 204, 204, 0.5);
  padding: 5px 0;
}

.plan-wrap {
  display: flex;
  gap: 2%;
  margin-top: 65px;
}

@media screen and (max-width:1300px) {

  .a-plan-content {
    padding: 0 2.3vw;
    padding-top: 1.38vw;
    padding-bottom: 2.3vw;
  }

  .a-plan-head p {
    font-size: 1.84vw;
    padding: 1.9vw 0;
  }

  .osusume {
    font-size: 1.38vw;
  }

  /* .a-plan .title{
    font-size:16px;
    letter-spacing:0.07em;
    border-radius:200px;
    padding:5px 0;
    margin-bottom:10px;
  } */

  .a-plan .title.small {
    font-size: 1.07vw;
    padding: 0.38vw 0;
  }

  .a-plan-price p.content {
    font-size: 1.53vw;
  }

  .a-plan-price p.content .big {
    font-size: 3.84vw;
  }

  .a-plan-term p.content {
    font-size: 3.07vw;
  }

  .a-plan-term p.content .small {
    font-size: 1.38vw;
  }

  /*   
  .a-plan-program p.content{
    font-size:15px;
    font-feature-settings: 'palt';
    line-height:1.67;
  }
   */
  .a-plan-program .center {
    font-size: 2.07vw;
  }

  .a-plan-program .center .gray {
    font-size: 1.23vw;
    padding: 0.38vw 0;
  }

}

@media screen and (max-width:900px) {
  .a-plan-term {
    display: block;
  }

  .a-plan-term .left,
  .a-plan-term .right {
    width: 100%;
  }

  .a-plan .title.small {
    font-size: 16px;
    padding: 5px 0;
  }

}

@media screen and (max-width:767px) {
  #rate_plan {
    padding: 70px 0;
  }

  .a-plan {
    width: 100%;
  }

  .a-plan-content {
    padding: 0 30px;
    padding-top: 18px;
    padding-bottom: 30px;
  }

  .a-plan-head p {
    color: #fff;
    text-align: center;
    font-size: 24px;
    line-height: 1;
    padding: 25px 0;
  }

  .a-plan.plan01 .a-plan-head {
    background-color: #FCCE4D;
  }

  .a-plan.plan02 .a-plan-head {
    background-color: #F7B249;
  }

  .a-plan.plan03 .a-plan-head {
    background-color: #EA8172;
  }

  .osusume {
    text-align: center;
    font-size: 18px;
    letter-spacing: 0.07em;
  }

  .a-plan-explain {
    margin: 10px 0;
    min-height: 108px;
  }

  .a-plan-explain li {
    padding-left: 20px;
    position: relative;
    font-size: 15px;
    line-height: 1.8;
    font-feature-settings: 'palt';
  }

  .a-plan-explain li::before {
    content: "";
    width: 14px;
    height: 14px;
    background-image: url(img/plan_check.png);
    background-size: contain;
    background-repeat: no-repeat;
    top: 7px;
    left: 0;
    position: absolute;
  }

  .a-plan .title {
    color: #fff;
    text-align: center;
    font-size: 16px;
    letter-spacing: 0.07em;
    border-radius: 200px;
    padding: 5px 0;
    margin-bottom: 10px;
  }

  .a-plan .title.small {
    font-size: 14px;
    letter-spacing: 0.05em;
  }

  .a-plan-price p.content {
    text-align: center;
    font-size: 20px;
    color: #F15A24;
    line-height: 1;
    margin-bottom: 10px;
  }

  .a-plan-price p.content .big {
    font-size: 50px;
    font-family: m-plus-1c, sans-serif;
    font-weight: 900;
    color: #F15A24;
    line-height: 0.8;
  }

  .a-plan-price p.content .small {
    font-size: 15px;
    font-weight: 300;
    display: block;
    margin-top: 10px;
  }

  .a-plan-term {
    display: flex;
    justify-content: space-between;
  }

  .a-plan-term .left,
  .a-plan-term .right {
    width: calc(50% - 1px);
  }

  .a-plan-term p.content {
    font-size: 40px;
    text-align: center;
    font-family: m-plus-1c, sans-serif;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 10px;
  }

  .a-plan-term p.content .small {
    font-size: 18px;
    font-weight: 300;
  }

  .a-plan-program p.content {
    font-size: 15px;
    font-feature-settings: 'palt';
    line-height: 1.67;
  }

  .a-plan-program .center {
    text-align: center;
    line-height: 1;
    font-size: 27px;
    font-weight: 900;
    color: #F15A24;
  }

  .a-plan-program .center .gray {
    font-size: 15px;
    font-weight: 700;
    display: block;
    background-color: rgba(204, 204, 204, 0.5);
    padding: 5px 0;
  }

  .plan-wrap {
    display: block;
    margin-top: 50px;
  }

  .a-plan+.a-plan {
    margin-top: 20px;
  }


}

@media screen and (max-width:480px) {
  #rate_plan {
    padding: 50px 0;
  }

  .a-plan-price p.content {
    font-size: 16px;
  }

  .a-plan-price p.content .big {
    font-size: 40px;
  }

  .a-plan-price p.content .small {
    font-size: 14px;
  }

  .a-plan-term p.content {
    font-size: 35px;
  }

  .a-plan-term p.content .small {
    font-size: 16px;
  }
}


/* todo */

#todo {
  padding: 100px 0;
  background-color: #E5DDC4;
  position: relative;
}

#todo::before {
  content: "";
  width: 290px;
  height: 521px;
  background-image: url(img/todo_right.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 75.5%;
  z-index: 0;

}

.point-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
  position: relative;
  z-index: 5;
}

.todo-top-txt {
  margin-top: 45px;
  position: relative;
  z-index: 4;
}

.todo-top-txt p {
  font-size: 16px;
  line-height: 2.43;
  text-align: center;
}

.point-wrap .a-point {
  background-color: #fff;
  width: 23.5%;
  border-radius: 15px;
  border: 1px solid #FAB751;
  padding: 20px;
  padding-bottom: 15px;
}

.point-wrap .a-point .a-point-num {
  font-size: 22px;
  background-color: #90B595;
  width: 110px;
  text-align: center;
  color: #fff;
  border-radius: 200px;
  line-height: 1;
  padding-top: 7px;
  padding-bottom: 2px;
  margin: 0 auto;
}

.point-wrap .a-point .a-point-title {
  margin-top: 15px;
}

.point-wrap .a-point .a-point-title,
.point-wrap .a-point .a-point-title span {
  font-size: 20px;
  font-weight: 500;
  color: #EA8172;
  text-align: center;
  line-height: 1.5;
  font-feature-settings: 'palt';
}

.point-wrap .a-point .a-point-txt {
  font-size: 15px;
  line-height: 1.66;
  font-feature-settings: 'palt';
  letter-spacing: 0.09em;
  margin-top: 10px;
}

.point-wrap .a-point .a-point-txt-small {
  font-size: 11px;
  color: #B3B3B3;
  letter-spacing: 0.09em;
  font-feature-settings: 'palt';
  line-height: 1.18;
  margin-top: 5px;
}

#todo .wtd_cta {
  margin-top: 80px;
}

@media screen and (max-width:1300px) {

  #todo::before {
    width: 22.3vw;
    height: 40.07vw;
  }

}

@media screen and (max-width:1140px) {
  .point-wrap .a-point .a-point-num {
    font-size: 1.75vw;
    width: 9.65vw;
    padding-top: 0.6vw;
    padding-bottom: 0.17vw;
  }

  .point-wrap .a-point .a-point-title,
  .point-wrap .a-point .a-point-title span {
    font-size: 1.75vw;
  }

  .point-wrap .a-point .a-point-txt {
    margin-top: 0.87vw;
  }

  .point-wrap .a-point .a-point-txt-small {
    margin-top: 0.44vw;
  }

}

@media screen and (max-width:1040px) {
  .point-wrap .a-point .title-box {
    margin-top: 1.315vw;
    height: 9vw;
    display: table;
    margin: 0 auto;
    margin-top: 1.3vw;
  }

  .point-wrap .a-point .a-point-title {
    display: table-cell;
    vertical-align: middle;
    margin: 0 auto;
    height: fit-content;
  }

}

@media screen and (max-width:767px) {
  #todo {
    padding: 70px 0;
    padding-bottom: 250px;
  }

  #todo::before {
    width: 222px;
    height: 398px;
    top: calc(100% - 398px);
    left: auto;
    right: 2%;
    z-index: 0;
  }

  .point-wrap {
    flex-wrap: wrap;
    gap: 10px 1%;
    margin: 0 auto;
    margin-top: 35px;
    max-width: 610px;
  }

  .todo-top-txt {
    margin-top: 30px;
  }

  .point-wrap .a-point {
    width: 49%;
    max-width: 300px;
    padding: 15px;
  }

  .point-wrap .a-point .a-point-num {
    font-size: 20px;
    width: 100px;
  }

  .point-wrap .a-point .title-box {
    margin-top: 10px;
    height: auto;
  }

  .point-wrap .a-point .a-point-title,
  .point-wrap .a-point .a-point-title span {
    font-size: 17px;
  }

  .point-wrap .a-point .a-point-txt {
    font-size: 14px;
    margin-top: 5px;
  }

  #todo .wtd_cta {
    margin-top: 50px;
  }
}

@media screen and (max-width:480px) {
  #todo {
    padding: 50px 0;
    padding-bottom: 220px;
  }

  #todo::before {
    width: 124px;
    height: 221px;
    top: calc(100% - 221px);
    left: auto;
    right: 2%;
    z-index: 0;
  }

  .todo-top-txt {
    margin-top: 20px;
  }

  .todo-top-txt p {
    line-height: 1.7;
  }

  .point-wrap .a-point .a-point-num {
    font-size: 18px;
    width: 95px;
    padding-top: 5px;
    padding-bottom: 0;
  }

  .point-wrap .a-point {
    padding: 15px 10px;
  }

  .point-wrap .a-point .a-point-title {
    font-size: 16px;
  }

  .point-wrap .a-point .title-box {
    margin-top: 7px;
  }

  .point-wrap .a-point .a-point-title,
  .point-wrap .a-point .a-point-title span {
    font-size: 15px;
  }

  #todo .wtd_cta {
    margin-top: 30px;
  }
}

/* faq */

#faq {
  background: linear-gradient(to bottom, #FAB751, #FFFCD1);
  padding: 95px 0;
}
#faq .cta{
  color: #7cb4d0;
  transition: all .3s;
}
#faq .cta:hover{
  color: #7cb4d09a;
  transition: all .3s;
}

.faq-wrap {
  margin-top: 90px;
}

.faq-wrap .cp_actab {
  position: relative;
  overflow: hidden;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
}

.cp_actab+.cp_actab {
  margin-top: 20px;
}

.faq-wrap .cp_actab input {
  position: absolute;
  opacity: 0;
}

/* 質問 */
.faq-wrap .cp_actab label {
  text-align: left;
  line-height: 1.2;
  position: relative;
  display: block;
  cursor: pointer;
  background: #fff;
  font-size: 15px;
  padding: 30px;
  border-radius: 15px;
  padding-right: 70px;
  padding-left: 45px;
}

.faq-wrap .cp_actab label::before {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 900;
  font-size: 32px;
  content: 'Q';
  color: #EA8172;
  margin-right: 15px;
  position: absolute;
  left: 13px;
  top: 24px;
}

.faq-wrap .cp_actab label:hover {
  transition: all 0.3s;
}

/* --質問の＋アイコン */
.faq-wrap .cp_actab label::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 30px;
  content: '';
  background-image: url(img/faq-cross.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 22px;
  height: 22px;
  -webkit-transition: transform 0.4s;
  transition: transform 0.4s;

}

/* 答え */
.faq-wrap .cp_actab .cp_actab-content {
  text-align: left;
  position: relative;
  overflow: hidden;
  max-height: 0;
  padding: 0 0 0 2.5em;
  -webkit-transition: max-height 1s;
  transition: max-height 1s;
  border-radius: 0 0 0.5em 0.5em;
  transition: .5s;
  padding: 0 30px;
}

.faq-wrap .cp_actab .cp_actab-content::before {
  font-family: "Josefin Sans", sans-serif;
  font-size: 32px;
  position: absolute;
  content: 'A';
  color: #EA8172;
  margin-right: 15px;
  top: 27px;
  font-weight: 900;
}

.faq-wrap .cp_actab .cp_actab-content p {
  border-top: 1px solid rgba(26, 26, 26, 0.5);
  font-size: 15px;
  line-height: 2.1;
  padding: 30px 0;
  padding-left: 40px;
}

/* 質問を開いた時の仕様 */
/* --答えの高さ */
.faq-wrap .cp_actab input:checked~.cp_actab-content {
  max-height: 40rem;
  background-color: #fff;
  transition: .5s;
  border-radius: 0 0 15px 15px;
}


/* 質問をクリックした時のアイコンの動き */
.faq-wrap .cp_actab input:checked~label {
  border-radius: 15px 15px 0 0;
}

/* 質問をクリックした時の+の動き */
.faq-wrap .cp_actab input[type=checkbox]:checked+label::after {
  -webkit-transform: rotateZ(45deg);
  transform: translateY(-50%) rotateZ(45deg);
}

@media screen and (max-width:930px) {
  #faq {
    padding: 70px 0;
  }

  .faq-wrap {
    margin-top: 50px;
  }

  .cp_actab+.cp_actab {
    margin-top: 15px;
  }

  /* 質問を開いた時の仕様 */
  /* --答えの高さ */
  .faq-wrap .cp_actab input:checked~.cp_actab-content {
    max-height: 100rem;
  }

}

@media screen and (max-width:480px) {
  #faq {
    padding: 50px 0;
  }

  .faq-wrap {
    margin-top: 30px;
  }

  .cp_actab+.cp_actab {
    margin-top: 10px;
  }

  /* 質問 */
  .faq-wrap .cp_actab label {
    line-height: 1.4;
    padding: 20px;
    border-radius: 10px;
    padding-right: 55px;
    padding-left: 45px;
  }

  .faq-wrap .cp_actab label::before {
    top: 12px;
  }

  /* --質問の＋アイコン */
  .faq-wrap .cp_actab label::after {
    right: 26px;
    width: 18px;
    height: 18px;
  }

  .faq-wrap .cp_actab label::before {
    font-size: 28px;
    left: 13px;
    top: 14px;
  }

  .faq-wrap .cp_actab .cp_actab-content::before {
    font-size: 28px;
    top: 32px;
  }

  /* 答え */
  .faq-wrap .cp_actab .cp_actab-content {
    transition: .5s;
    padding: 0 20px;
  }

  .faq-wrap .cp_actab .cp_actab-content p {
    padding-left: 30px;
  }

  /* 質問を開いた時の仕様 */
  /* --答えの高さ */
  .faq-wrap .cp_actab input:checked~.cp_actab-content {
    border-radius: 0 0 10px 10px;
    max-height: 100rem;
  }


  /* 質問をクリックした時のアイコンの動き */
  .faq-wrap .cp_actab input:checked~label {
    border-radius: 10px 10px 0 0;
  }
}


/* cta */

#cta_bottom {
  padding-top: 110px;
  padding-bottom: 80px;
}

#cta_bottom .cta-bottom {
  width: 95%;
  margin: 0 auto;
}

#cta_bottom .cta-bottom {
  max-width: 800px;
  position: relative;
  display: block;
  width: fit-content;
  height: fit-content;
}


@media screen and (max-width:930px) {
  #cta_bottom {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  #cta_bottom .cta-bottom {
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (max-width:480px) {
  #cta_bottom {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

/* カレンダー */

/* footer */

.footer-flex {
  display: flex;
  justify-content: space-between;
  padding-top: 55px;
  padding-bottom: 50px;
}

.footer-left a {
  display: block;
  max-width: 180px;
}

.footer-right {
  margin-top: 20px;
}

.footer-nav ul {
  display: flex;
}

.footer-nav ul a {
  position: relative;
}

.footer-nav ul a+a {
  padding: 0 20px;
}

.footer-nav ul a+a::before {
  content: '|';
  font-size: 16px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.footer-nav ul a:nth-child(1) {
  padding-right: 20px;
}

.footer-nav ul a:nth-child(4) {
  padding-right: 0px;
}

.footer-nav ul a li {
  font-size: 16px;
  letter-spacing: 0.11em;
  transition: .3s;
}

.footer-nav ul a:hover li {
  color: #FAB751;
}

.footer-right-bottom {
  display: flex;
  margin-left: auto;
  width: fit-content;
  gap: 20px;
  align-items: center;
  margin-top: 30px;
}

.footer-right-bottom .sns-btn p {
  font-size: 16px;
  letter-spacing: 0.11em;
  line-height: 1;
  color: #fff;
  background-color: #FAB751;
  border: 1px solid #FAB751;
  box-sizing: border-box;
  padding: 10px 25px;
  border-radius: 200px;
  display: block;
  transition: .3s;
}


.footer-right-bottom .note-btn {
  max-width: 128px;
}

.footer-right-bottom .note-btn a {
  transition: .3s;
}

.footer-right-bottom .note-btn a:hover {
  opacity: 0.5;
}

footer .copy {
  text-align: center;
  background-color: #EA8172;
  display: block;
  width: 100%;
  padding: 13px 0;
}

footer .copy p {
  font-size: 12px;
  letter-spacing: 0.11em;
  font-weight: 300;
  color: #fff;
}

/* 20241003 コピーライトのリンク設定 */
footer .copy a {
  font-size: 12px;
  letter-spacing: 0.11em;
  font-weight: 300;
  color: #fff;
}

/* //20241003 コピーライトのリンク設定 */

@media screen and (max-width:930px) {
  .footer-flex {
    padding: 30px 0;
    display: block;
  }

  .footer-left a {
    display: block;
    max-width: 160px;
    margin: 0 auto;
  }

  .footer-right {
    margin: 0 auto;
    width: fit-content;
    margin-top: 20px;
  }

  /* .footer-nav ul{
      display:flex;
    }
   */

  .footer-nav ul a+a {
    padding: 0 10px;
  }

  .footer-nav ul a+a::before {
    font-size: 15px;
  }

  .footer-nav ul a:nth-child(1) {
    padding-right: 10px;
  }

  .footer-nav ul a li {
    font-size: 15px;
    letter-spacing: 0.06em;
  }

  .footer-right-bottom {
    display: flex;
    margin: 0 auto;
    gap: 10px;
    margin-top: 20px;
  }

  .footer-right-bottom .sns-btn p {
    font-size: 15px;
    letter-spacing: 0.06em;
    padding: 7px 20px;
  }

  .footer-right-bottom .note-btn {
    max-width: 110px;
  }
}

@media screen and (max-width:480px) {
  .footer-flex {
    padding: 20px 0;
  }


  .footer-left a {
    max-width: 140px;
  }

  .footer-right,
  .footer-right-bottom {
    margin-top: 15px;
  }

  /* .footer-nav ul{
      display:flex;
    }
   */

  .footer-nav ul a+a::before {
    font-size: 3.125vw;
  }

  .footer-nav ul a+a {
    padding: 0 2vw;
  }

  .footer-nav ul a:nth-child(1) {
    padding-right: 2vw;
  }

  .footer-nav ul a li {
    font-size: 3.125vw;
  }

  .footer-right-bottom .sns-btn p {
    font-size: 14px;
    letter-spacing: 0.06em;
    padding: 5px 17px;
  }

  .footer-right-bottom .note-btn {
    max-width: 100px;
  }
}


/* Booking Package */


/* 20241017 見出しタグの修正・調整 start */
.main_copy .cmn_main_text {
  font-size: 42px;
  letter-spacing: 0.14em;
  line-height: 2;
  font-weight: 300;
  display: block;
  z-index: 5;
  position: relative;
  color: #404040;
  font-family: noto-sans-cjk-jp, sans-serif;
}

.main_copy .cmn_main_text .size01 {
  font-size: 62px;
}

.main_copy .cmn_main_text .size02 {
  font-size: 48px;
}

.cmn-h1-title {
  margin-top: 30px;
  display: block;
  font-size: 23px;
  letter-spacing: 0.1em;
  line-height: 1.47;
}

@media screen and (max-width:767px) {
  .main_copy .cmn_main_text {
    font-size: 28.6px;
  }

  .main_copy .cmn_main_text .size01 {
    font-size: 54.6px;
  }

  .main_copy .cmn_main_text .size02 {
    font-size: 36.4px;
  }
}

@media screen and (max-width:600px) {
  .main_copy .cmn_main_text {
    font-size: 22px;
  }

  .main_copy .cmn_main_text br.pc-none {
    display: inherit;
  }

  .main_copy .cmn_main_text .size01 {
    font-size: 42px;
  }

  .main_copy .cmn_main_text .size02 {
    font-size: 28px;
  }

  .cmn-h1-title {
    margin-top: 20px;
    font-size: 14px;
    line-height: 1.5;
  }
}

/* 20241017 見出しタグの修正・調整 end */

/* 20241226 */
.address-block {
  margin-top: 20px;
}

@media screen and (max-width: 480px) {
  .address-block {
    text-align: center;
  }
}

/* 20250120 キャリートコラムアーカイブページ作成 */
.p-archive_hero {
  background-color: #FFFCD1;
  ;
  padding: 55px 0;
  text-align: center;
}

.p-archive_title {
  font-size: 3rem;
}

.p-archive_title_sub {
  font-size: 1.6rem;
}

.p-archive_title_categoryTag {
  font-size: 1.6rem;
}

.p-archive_inner {
  display: flex;
  margin: 0 auto;
  max-width: 1300px;
  padding: 30px 10px;
  gap: 40px;
}

.p-archive_main {
  font-size: 1.6rem;
  width: calc(100% - 360px);
}

.p-archive_aside {
  font-size: 1.6rem;
  width: 300px;
  padding-top: 20px;
}

.p-archive_column_list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  row-gap: 40px;
}

.p-archive_aside_block:nth-of-type(n+2) {
  margin-top: 40px;
}

.p-archive_aside_title {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 10px;
}

.p-archive_aside_list {
  font-size: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

@media screen and (max-width:767px) {
  .p-archive_inner {
    flex-direction: column;
  }

  .p-archive_main {
    width: 100%;
  }

  .p-archive_aside {
    width: 100%;
    padding-top: 0;
  }

  .p-archive_aside_block:nth-of-type(n+2) {
    margin-top: 20px;
  }

  .p-archive_aside_list {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

/* ループ部分 */
.p-archive_column_list_item {
  width: calc((100% - 20px) / 2);
}

.p-archive_column_thumbnail {
  border-radius: 25px;
  height: 20.076923076923077vw;
  max-height: 300px;
  overflow: hidden;
  width: 100%;
  margin-bottom: 15px;
}

.p-archive_column_thumbnail img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-archive_column_thumbnail-nonImg img {
  object-fit: contain;
}

.p-archive_column_title {
  font-weight: bold;
}

.p-archive_column_date {
  color: #B3B3B3;
  font-size: 1.5rem;
}

.p-archive_tag_list {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.5rem;
}

.p-archive_tag_list_item {
  display: inline;
}

@media screen and (max-width:767px) {
  .p-archive_column_list_item {
    width: calc((100% - 20px) / 2);
  }

  .p-archive_column_thumbnail {
    border-radius: 15px;
    max-height: 29vw;
    height: unset;
  }
}

/* ページネーション */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
}

.pagination span:not(.dots) {
  margin: 0 12px;
  padding: 3px 12px;
  background-color: #FFF;
  border: 2px solid #333;
  border-radius: 2px;
  opacity: .5;
  display: block;
}

.pagination a {
  margin: 0 12px;
  padding: 3px 12px;
  border: 2px solid #FAB751;
  border-radius: 2px;
  display: block;
  transition: all .3s linear;
}

.pagination a:hover {
  background-color: #FAB751;
  color: #FFF;
}

/* 投稿ページ */
/* パンくず */
.breadcrumb {
  margin: 0 auto;
  max-width: 1300px;
  padding: 0 10px;
}

.breadcrumb_list {
  display: flex;
  flex-wrap: wrap
}

.breadcrumb_list_item {
  font-size: 1.6rem;
}

.breadcrumb_list_item::after {
  content: ">";
  display: inline-block;
  color: #B3B3B3;
  padding: 0 5px;
}

.breadcrumb_list_item:last-child::after {
  content: unset;
}

.breadcrumb_list_item a,
.breadcrumb_list_item span {
  color: #B3B3B3;
}

/* 下記コンテンツ部分 */
.p-single_inner {
  display: flex;
  margin: 0 auto;
  max-width: 1300px;
  padding: 30px 10px;
  gap: 40px;
}

.p-single_main {
  font-size: 1.6rem;
  width: calc(100% - 360px);
}

.p-single_titleArea {
  margin-bottom: 20px;
}

.p-single_titleArea_title {
  border-bottom: #FAB751 2px solid;
  font-size: 3rem;
  padding-bottom: 10px;
}

.p-single_titleArea_postdate {
  color: #B3B3B3;
  font-size: 1.6rem;
}

.p-single_column_thumbnai {
  width: 100%;
}

.p-single_column_thumbnai img {
  width: 100%;
  object-fit: cover;
}

.p-single_readmore {
  overflow: hidden;
  border: 1px solid #FAB751;
  border-radius: 20px;
}

.p-single_readmore_title {
  background-color: #FAB751;
  color: #fff;
  font-weight: bold;
  padding: 10px 20px;
}

.p-single_readmore_contentsArea {
  padding: 20px;
}

@media screen and (max-width:767px) {
  .p-single_inner {
    flex-direction: column;
  }

  .p-single_main {
    width: 100%;
  }
}

/* 中身 */
.p-single_contents {
  padding: 20px 0;
}

/* サイド部分 */
.p-single_aside {
  font-size: 1.6rem;
  width: 300px;
}

.p-single_column_list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  row-gap: 40px;
}

.p-single_aside_block:nth-of-type(n+2) {
  margin-top: 40px;
}

.p-single_aside_title {
  font-weight: bold;
  font-size: 1.8rem;
  border-bottom: #FAB751 2px solid;
  padding-bottom: 10px;
  margin-bottom: 20px;
}

.p-single_aside_list {
  font-size: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-single_aside_column_thumbnail {
  border-radius: 25px;
  max-height: 195px;
  overflow: hidden;
  width: 100%;
  margin-bottom: 10px;
}

.p-single_aside_column_thumbnail_nonImg {
  height: 100%;
  height: 25.390625vw
}

.p-single_aside_column_thumbnail img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-single_aside_column_thumbnail_nonImg img {
  object-fit: contain;
}

.p-single_aside_taglist {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.5rem;
  gap: 10px;
}

.p-single_aside_taglist_item {
  display: inline;
}

@media screen and (max-width:767px) {
  .p-single_aside {
    width: 100%;
    padding-top: 0;
  }

  .p-single_aside_block:nth-of-type(n+2) {
    margin-top: 20px;
  }

  .p-single_aside_list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
  }

  .p-single_aside_list_item {
    width: calc((100% - 20px) / 2);
  }

  .p-single_aside_column_thumbnail {
    border-radius: 15px;
    max-height: 29vw;
    height: unset;
  }

  .p-single_aside_column_thumbnail_nonImg {
    height: 31.586701434159064vw
  }
}

/* 投稿ページコンテンツ内 */
.accordion-002 {
  border-radius: 5px;
}

.accordion-002 summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 0.5em 2em 0.5em 0;
  background-position: right calc(2em - 7px) center;
  background-size: 22px;
  background-repeat: no-repeat;
  font-weight: bold;
  cursor: pointer;
}

.accordion-002 summary::-webkit-details-marker {
  display: none;
}

.accordion-002 summary::after {
  transform: translateY(-25%) rotate(45deg);
  width: 5px;
  height: 5px;
  border-bottom: 3px solid #FAB751;
  border-right: 3px solid #FAB751;
  content: '';
  transition: transform .3s;
}

.accordion-002[open] summary::after {
  transform: rotate(225deg);
}

.accordion-002 p {
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: 0.5em 2em;
  color: #333333;
  transition: transform .5s, opacity .5s;
}

.accordion-002[open] p {
  transform: none;
  opacity: 1;
}

.p-single_main {
  margin-top: 40px;
}

.p-single_main p {
  margin-bottom: 20px;
  font-size: 16px;
}

#toc_container {
  width: 90%;
  margin: 40px auto 0;
  padding: 20px;
  border: solid 2px #FAB751;
}

#toc_container .toc_title {
  font-size: 22px;
  margin-bottom: 0.5em;
}

.p-single_main .wp-block-list {
  padding-left: 0.5em;

}

.p-single_main .wp-block-list li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
  box-sizing: border-box;
}

.p-single_main .wp-block-list li:before {
  content: "●";
  color: #fab751;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.p-single_main .wp-block-list a {
  font-size: 16px;
  color: #404040;
}

.p-single_main h2 {
  margin: 80px 0 20px;
  font-size: 22px;
  font-weight: bold;
  color: #404040;
}

.p-single_main h3 {
  margin: 60px 0 20px;
  font-size: 18px;
  font-weight: bold;
  color: #404040;
}

.p-single_main .career-txt p {
  margin-bottom: 20px;
}

.p-single_main p {
  font-size: 16px;
  color: #404040;
}

.p-single_main ul.wp-block-list {
  margin: 20px 0;
  margin-left: 1em;
}

.p-single_main ul.wp-block-list li {
  margin-bottom: 10px;
  text-indent: -1em;
  padding-left: 1em;
}

.p-single_main ul.wp-block-list li:last-child {
  margin-bottom: 0;
}

.p-single_main ul.wp-block-list span {
  color: #FAB751;
}

.p-single_main .career-img-block {
  margin-top: 60px;
}

.p-single_main .career-img-block img {
  height: 500px;
  object-fit: cover;
}

#career-area .link-txt {
  text-decoration: underline;
}

#career-area .summary-txt p {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  #career-area .career-img-block img {
    height: auto;
  }

  .mv-career {
    height: auto;
  }

  .mv-career h1 {
    font-size: 20px;
  }

  .p-single_main .wp-block-list {
    width: 100%;
  }

  .accordion-002 summary {
    padding: 0.5em 0;
  }
}

@media screen and (max-width: 600px) {
  .mv_career {
    height: auto;
  }
}

/* footer調整 */
.footer-nav.retouch ul {
  flex-wrap: wrap;
}

.footer-nav.retouch ul li {
  position: relative;
}

.footer-nav.retouch ul li a {
  padding: 20px;
  font-size: 16px;
  letter-spacing: 0.11em;
  transition: .3s;
}

.footer-nav.retouch ul li:first-child a {
  padding-left: 0;
}

.footer-nav.retouch ul li:last-child a {
  padding-right: 0;
}

.footer-nav.retouch ul li a:hover {
  color: #FAB751;
}

.footer-nav.retouch ul li::before {
  content: '|';
  font-size: 16px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  display: block;
}

.footer-nav.retouch ul li:first-child::before {
  content: none;
}

@media screen and (max-width:767px) {
  .footer-nav.retouch ul {
    flex-wrap: wrap;
    justify-content: center;
  }

  .footer-nav.retouch ul li a {
    font-size: 3.125vw;
    padding: 0 2vw;
  }

  .footer-nav.retouch ul li::before {
    font-size: 3.125vw;
  }

  /* 二段目の最初　個数によって調整 */
  .footer-nav.retouch ul li:nth-child(5)::before {
    content: none;
  }
}

/* 20250303 ページトップへ戻るボタン */
.p-footer-pagetop {
  opacity: 1;
  pointer-events: auto;
  position: fixed;
  right: 0;
  bottom: 0;
  transition: opacity .2s ease-in-out;
  z-index: 99;
}

.p-footer-pagetop a {
  display: block;
  width: 45px;
  height: 0;
  padding-top: 45px;
  background: rgba(255, 255, 255, .7);
  overflow: hidden;
}

.p-footer-pagetop a:before {
  content: '';
  position: absolute;
  top: calc(50% - 8px + 4px);
  left: calc(50% - 8px);
  width: 16px;
  height: 16px;
  border-top: 1px solid #97999b;
  border-right: 1px solid #97999b;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

@media screen and (max-width: 767px) {
  .p-footer-pagetop {
    bottom: 25vw;
  }

  .p-footer-pagetop a {
    width: 36px;
    height: 0;
    padding-top: 36px;
  }

  .p-footer-pagetop a:before {
    content: '';
    position: absolute;
    top: calc(50% - 6px + 4px);
    left: calc(50% - 6px);
    width: 12px;
    height: 12px;
    border-top: 1px solid #97999b;
    border-right: 1px solid #97999b;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

/* 20250313 他のキャリアサービスとの違い */
#difference {
  background-color: #FFD966;
  padding: 100px 0;
}

.difference-txt {
  width: 90%;
  max-width: 560px;
  background-color: #fff;
  text-align: center;
  line-height: 1.56;
  font-size: 16px;
  letter-spacing: 0.11em;
  border-radius: 10px;
  padding: 14px 20px;
  margin: 50px auto 30px auto;
}

.difference-imgbox-spscroll {
  width: 95%;
  max-width: 1300px;
  margin: 0px auto;
}

.difference-img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .difference-imgbox-spscroll {
    overflow-x: scroll;
  }

  .difference-imgbox {
    width: 1000px;
  }
}

/* 202504追記 ACS */

#acs {
  background: linear-gradient(to bottom, #f7faf0, #bdd0a0);
  padding: 90px 0;
  font-family: "Noto Sans JP", sans-serif;
}

.acs-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.acs-flex {
  display: flex;
  align-items: center;
  gap: 7%;
  width: 100%;
}

.acs-left {
  width: 38%;
}

.acs-right {
  width: 55%;
  min-width: 570px;
}

.acs-right h3 span {
  color: #00693e;
  display: block;
  font-feature-settings: 'palt';
  font-family: "Noto Sans JP", sans-serif;
}

.acs-right h3 .small {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.acs-right h3 .small br {
  display: none;
}

.acs-right h3 .big {
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-top: 10px;
}

.acs-right .acs-txt {
  margin-top: 20px;
}

.acs-right .acs-txt p {
  font-size: 16px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0.1em;
  font-feature-settings: 'palt';
  font-family: "Noto Sans JP", sans-serif;
}

.acs-right .recom-box {
  position: relative;
  border-radius: 20px;
  padding: 5px;
  margin-top: 40px;
}

.acs-right .recom-box::before {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #00b369, #00794f);
  position: absolute;
  border-radius: 25px;
  top: 0;
  left: 0;
  z-index: 0;
}

.acs-right h4 {
  position: absolute;
  color: #fff;
  background: linear-gradient(to right, #00b369, #00794f);
  font-weight: 600;
  font-size: 21px;
  font-feature-settings: 'palt';
  line-height: 1;
  letter-spacing: 0.1em;
  top: -18px;
  left: -12px;
  z-index: 3;
  padding: 10px 30px;
  border-radius: 15px;
}

.acs-right .recom-box .box-inner {
  position: relative;
  background-color: #fff;
  padding: 35px 30px 30px 35px;
  border-radius: 20px;
}

.acs-right .recom-box .box-inner li {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.6;
  font-feature-settings: 'palt';
  font-weight: 500;
  color: #00693e;
  list-style-type: '•　';
  list-style-position: inside;
}

.acs-btn {
  margin: 0 auto;
  width: fit-content;
  margin-top: 45px;
}

.acs-btn a {
  display: block;
  background-color: #00693e;
  color: #fff;
  font-feature-settings: 'palt';
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-size: 23px;
  border-radius: 200px;
  padding: 15px 80px;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.11em;
  box-sizing: border-box;
  border: 1px solid #00693e;
  transition: 0.3s;

}

.acs-btn a::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #fff;
  border-right: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  transition: 0.3s;
}

.acs-btn a:hover {
  background-color: #fff;
  color: #00693e;
}

.acs-btn a:hover::after {
  border-left: 10px solid #00693e;
}

@media screen and (max-width:1100px) {

  .acs-flex {
    align-items: flex-start;
  }

  .acs-right {
    min-width: 0;
  }

  .acs-right h3 .small {
    font-size: 1.5vw;
  }


  .acs-right h3 .big {
    font-size: 2.7vw;
    margin-top: 0.1vw;
  }
}

@media screen and (max-width:900px) {
  .acs-right h3 .small {
    font-size: 1.8vw;
  }

  .acs-right h3 .small br {
    display: inherit;
  }
}

@media screen and (max-width:768px) {
  #acs {
    padding: 70px 0;
  }

  .acs-flex {
    display: block;
  }

  .acs-left {
    width: 70%;
    margin: 0 auto;
  }

  .acs-right {
    width: 100%;
    margin-top: 40px;
  }

  .acs-right h3 .small {
    font-size: 15px;
    letter-spacing: 0.04em;
  }

  .acs-right h3 .small br {
    display: none;
  }

  .acs-right h3 .big {
    font-size: 28px;
    margin-top: 7px;
    letter-spacing: 0.06em;
  }


  .acs-right .acs-txt p {
    font-size: 15px;
    line-height: 1.6;
  }

  .acs-right h4 {
    font-size: 18px;
    top: -15px;
    left: -10px;
    padding: 7px 27px;
  }

  .acs-right .recom-box .box-inner {
    padding: 32px 25px 28px 32px;
  }

  .acs-right .recom-box .box-inner li {
    font-size: 15px;
    line-height: 1.5;
  }

  .acs-btn {
    margin-top: 40px;
  }

  .acs-btn a {
    font-size: 26px;
    padding: 15px 70px;

  }

}

@media screen and (max-width:480px) {
  #acs {
    padding: 50px 0;
  }

  .acs-right {
    margin-top: 30px;
  }

  .acs-right h3 .small {
    font-size: 13px;
    letter-spacing: 0.02em;
  }

  .acs-right h3 .big {
    font-size: 22px;
    margin-top: 5px;
  }

  .acs-right .acs-txt {
    margin-top: 15px;
  }


  .acs-right .acs-txt p {
    font-size: 14px;
  }

  .acs-right .recom-box {
    border-radius: 10px;
    margin-top: 35px;
  }

  .acs-right .recom-box::before {
    border-radius: 25px;
  }

  .acs-right h4 {
    font-size: 16px;
    top: -10px;
    left: -8px;
    padding: 7px 20px;
    border-radius: 10px;
  }

  .acs-right .recom-box .box-inner {
    padding: 28px 20px 25px 25px;
  }

  .acs-right .recom-box .box-inner li {
    font-size: 14px;
    letter-spacing: 0.06em;
    list-style-type: '• ';
  }

  .acs-btn {
    margin-top: 30px;
  }

  .acs-btn a {
    font-size: 18px;
    padding: 13px 50px;
    padding-bottom: 14px;

  }

  .acs-btn a::after {
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 8px solid #fff;
  }

  .acs-btn a:hover::after {
    border-left: 8px solid #00693e;
  }

}

.toc_list>li {
  display: block;
  position: relative;
  padding: 0.5em 2em 0.5em 0;
  background-position: right calc(2em - 7px) center;
  background-size: 22px;
  background-repeat: no-repeat;
  font-weight: bold;
  cursor: pointer;
}

.toc_list ul li {
  display: block;
  transform: translateY(-10px);
  margin: 0;
  padding: 0.5em 2em;
  color: #333333;
  transition: transform .5s, opacity .5s;
}

.toc_list ul {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.toc_list ul.open {
  max-height: 500px;
  /* 必要に応じて調整 */
}

.toc_list ul.open li:first-child {
  margin-top: 20px;
}

.toc_list ul.open li:last-child {
  margin-bottom: 0px;
}

.toc_list>li.has-sub:after {
  content: '';
  position: absolute;
  top: 16px;
  right: 10px;
  width: 5px;
  height: 5px;
  border-bottom: 3px solid rgb(250, 183, 81);
  border-right: 3px solid rgb(250, 183, 81);
  transform: translateY(-25%) rotate(45deg);
  transition: transform 0.3s ease;
}

/* 展開時（回転） */
.toc_list>li.has-sub.active:after {
  transform: rotate(225deg);
}

.p-single_contents h2 {
  padding-bottom: 0.8rem;
  border-bottom: 2px solid #333;
}

.p-single_contents h3 {
  padding-left: 0.8rem;
  border-left: 4px solid #ccc;
}

.p-single_contents h2 span,
.p-single_contents h3 span {
  font-weight: 700;
}