@media (any-hover: hover) {
  .p-faq .p-faq__qu:hover {
    cursor: pointer;
  }
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100%);
  }
}

@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }

  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }

  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }

  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }

  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }

  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }

  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100%);
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px), print {
  .p-fv {
    background: linear-gradient(180deg, #ffe3ce 0%, #ffffff 100%);
    margin-bottom: -130px;
    padding-block: 304px 200px;
  }

  .p-fv .p-fv__con {
    align-items: center;
    display: grid;
    gap: 0 17.6%;
    grid-template-columns: 38.2% 45.9%;
    margin-bottom: 159px;
    margin-inline: auto;
    position: relative;
    width: min(95%, 1480px);
    position: relative;
    left: -82px;
  }

  .p-fv .p-fv__con-left h1 {
    font-size: 64px;
    font-size: clamp(2rem, 0.667rem + 2.78vw, 4rem);
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.6;
    margin-bottom: 72px;
  }

  .p-fv .p-fv__con-left h1 span {
    display: block;
  }

  .p-fv .p-fv__con-left h1 span.bottom {
    position: relative;
    left: 34px;
  }

  .p-fv .p-fv__con-left {
    position: relative;
    top: 14px;
  }

  .p-fv .p-fv__con-left p {
    font-size: 20px;
    font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.5;
    padding-inline: 22px 0;
  }

  .p-fv .p-fv__con-right .top {
    margin-bottom: -226px;
  }

  .p-fv .p-fv__con-right .top img {
    height: auto;
    width: 100%;
  }

  .p-fv .p-fv__con-right .bottom {
    height: 167px;
    left: 54px;
    margin-left: auto;
    position: relative;
    width: 165px;
  }

  .p-fv .p-fv__con-right .bottom .bg {
    animation: rotation 16s linear infinite;
  }

  .p-fv .p-fv__con-right .bottom .arrow {
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translate(-50%, -50%);
  }

  .p-fv .p-fv__loop {
    margin-bottom: -197px;
  }

  .p-fv .l-inner.l-loop {
    overflow: hidden;
  }

  .p-fv .p-fv__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 24px;
    width: 200%;
  }

  .p-fv .p-fv__slider {
    animation: scroll-left 60s linear infinite;
  }

  .p-fv .p-fv__slider img {
    height: auto;
    width: 100%;
  }

  .p-fv .p-fv__subttl {
    font-size: 38px;
    font-size: clamp(1.875rem, 1.542rem + 0.69vw, 2.375rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.9;
    text-align: center;
    color: #262320;
  }

  .p-like {
    margin-bottom: 63px;
  }

  /* 背景は上下にフェードするグラデーション（タブまわりは白のまま） */
  .p-like .p-like__con.--tab01 {
    background: linear-gradient(
      180deg,
      rgba(249, 207, 176, 0) 0%,
      rgba(249, 207, 176, 0.88) 42%,
      rgba(249, 207, 176, 0) 100%
    );
  }

  .p-like .p-like__con.--tab02 {
    background: linear-gradient(
      180deg,
      rgba(255, 243, 207, 0) 0%,
      rgba(255, 243, 207, 0.88) 42%,
      rgba(255, 243, 207, 0) 100%
    );
  }

  .p-like .p-like__con-inner {
    display: grid;
    gap: 0 112px; /* 2026.10 画面が狭いとき左右の余白に合わせて gap も狭く 旧:gap: 0 7.6%; */
    gap: 0 min(112px, 5.833vw);
    grid-template-columns: 47.3fr 45.1fr; /* 2026.10 gap が変わっても比率を保つため fr に 旧:47.3% 45.1% */
    margin-inline: auto;
    padding-block: 130px 0;
    padding-block: min(130px, 6.771vw) 0;
    width: min(95%, 1473px); /* 2026.10 旧 */
    width: min(1473px, calc(100% - 11.666vw)); /* 2026.10 狭い画面で左右の余白を gap と同じだけ取る（1920で左右224px） 旧:min(95%, 1473px) */
    margin-bottom: 16px;
    margin-bottom: min(16px, 0.833vw);
  }

  .p-like .p-like__con-inner.--tab02 {
    grid-template-columns: 45.1fr 47.3fr; /* 2026.10 旧:45.1% 47.3% */
    margin-bottom: 73px;
    margin-bottom: min(73px, 3.802vw);
  }

  /* 02は写真が右・本文が左（Figma）。並びはCSSで入れ替え */
  .p-like .p-like__con-inner.--tab02 .p-like__con-left {
    grid-column: 2;
    grid-row: 1;
  }

  .p-like .p-like__con-inner.--tab02 .p-like__con-right {
    grid-column: 1;
    grid-row: 1;
  }

  .p-like .p-like__con-left img {
    height: auto;
    width: 100%;
  }

  .p-like .p-like__con-right {
    padding-top: 178px;
    padding-top: min(178px, 9.271vw);
  }

  /* 見出しブロック（Future. ＋ 見出し）：写真群の上端より70px上に重ねる（Figma 1920px） 2026-10-06 */
  .p-like .p-like__con {
    position: relative;
  }

  .p-like .p-like__head {
    align-items: center;
    display: flex;
    flex-direction: column;
    left: 0;
    position: absolute;
    top: 60px;
    top: calc(min(130px, 6.771vw) - 70px);
    width: 100%;
    z-index: 2;
  }

  .p-like .p-like__head-en {
    align-items: center;
    color: #bb823d;
    display: flex;
    font-family: "Times New Roman", Times, serif;
    font-size: 31px;
    font-style: italic;
    gap: 9px;
    justify-content: center;
    letter-spacing: -0.05em;
    line-height: 1.16;
    margin-bottom: 10px;
  }

  .p-like .p-like__head-en-num {
    display: block;
    height: 43px;
    width: auto;
  }

  .p-like .p-like__con-ttl {
    background: #fff;
    color: #0a121c;
    font-family: "Shippori Mincho", serif;
    font-size: 32px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.4375;
    max-width: 100%;
    padding: 14px 40px;
    text-align: center;
    white-space: nowrap;
    width: 744px;
  }

  .p-like .p-like__con-txt.--tab01 {
    padding-inline: 17px 0;
  }

  .p-like .p-like__con-txt p {
    font-size: 18px;
    font-size: clamp(1rem, 0.917rem + 0.17vw, 1.125rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.2222222222;
    margin-bottom: 40px;
    color: #262320;
  }

  .p-like .p-like__con-txt p span {
    display: inline-block;
    font-size: 24px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.6666666667;
    margin-block: 80px 0;
  }

  .p-like .p-like__con-txt p:last-child {
    margin-bottom: 0;
  }

  .p-like .p-like__bottom-txt {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.75;
    margin-bottom: 55px;
    text-align: center;
    color: #262320;
  }

  .p-like .p-like__bottom-txt span {
    display: block;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.3333333333;
  }

  .p-like .p-like__scrolldown {
    animation: scroll 2s infinite;
    background: #a9887c;
    height: 80px;
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: 1px;
    z-index: 10;
  }

  .p-like {
  }

  .p-like .p-like__tab-list {
    display: flex;
    gap: 40px;
    justify-content: center;
    margin-inline: auto;
    position: relative;
    top: -24px;
    width: min(95%, 1440px);
    z-index: 1;
  }

  .p-like .js-future-tab-btn {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    align-items: center;
    appearance: none;
    border-radius: 50px;
    display: flex;
    filter: drop-shadow(0 8px 16px rgba(0, 0, 0, 0.15));
    font-family: inherit;
    gap: 20px;
    height: 100px;
    justify-content: center;
    position: relative;
    transition:
      background 0.3s ease,
      border-color 0.3s ease;
    width: calc((100% - 40px) / 2);
  }

  .p-like .js-future-tab-btn span {
    font-size: 20px;
    font-size: clamp(0.75rem, 0.417rem + 0.694vw, 1.25rem);
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.9;
    color: #262320;
  }

  .p-like .js-future-tab-btn img {
    height: auto;
    width: 19px;
  }

  /* 選択中：オレンジのグラデーション＋白フチ＋下向きのしっぽ */
  .p-like .js-future-tab-btn[aria-selected="true"] {
    background: linear-gradient(180deg, #ffe4d0 0%, #fec396 100%);
    border: 2px solid #ffffff;
  }

  /* しっぽの白フチ（::afterのしっぽの下に敷く） */
  .p-like .js-future-tab-btn[aria-selected="true"]::before {
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-top: 18px solid #ffffff;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
    width: 0;
  }

  .p-like .js-future-tab-btn[aria-selected="true"]::after {
    border-left: 13px solid transparent;
    border-right: 13px solid transparent;
    border-top: 16px solid #fec396;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
    width: 0;
  }

  .p-like .js-future-tab-btn[aria-selected="true"] img {
    display: none;
  }

  /* 選択中（タブ02）：イエローのグラデーション＋下向きのしっぽ */
  .p-like .js-future-tab-btn.--tab02[aria-selected="true"] {
    background: linear-gradient(180deg, #fff9e8 0%, #ffe8a2 100%);
  }

  .p-like .js-future-tab-btn.--tab02[aria-selected="true"]::after {
    border-top-color: #ffe8a2;
  }

  /* 非選択：白地＋金色の枠線＋▼ */
  .p-like .js-future-tab-btn[aria-selected="false"] {
    background: #ffffff;
    border: 2px solid #e9d38f;
  }

  .p-reason {
    background: #f3e0d9;
    margin-bottom: 140px;
    margin-inline: auto;
    width: min(95%, 1692px);
  }

  .p-reason .l-inner.l-reason {
    padding-block: 0 80px;
  }

  .p-reason .p-reason__ttl-wrap {
    align-items: flex-end;
    display: flex;
    gap: 0 26px;
    margin-bottom: 30px;
    margin-inline: auto;
    position: relative;
    top: -16px;
    width: min(95%, 618px);
  }

  .p-reason .p-reason__ttl-wrap .img img {
    height: auto;
    width: 78px;
  }

  .p-reason .p-reason__ttl-wrap h2 {
    font-size: 36px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
  }

  .p-reason .p-reason__ttl-wrap h2 span {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
  }

  .p-reason .p-reason__items {
    display: grid;
    gap: 8px 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 40px;
    margin-inline: auto;
    width: min(95%, 1050px);
    position: relative;
    left: 39px;
  }

  .p-reason .p-reason__item {
    align-items: center;
    background: #ffffff;
    color: #262320;
    display: grid;
    gap: 0 16px;
    grid-template-columns: 10px minmax(0, 1fr);
    padding-block: 18px;
    padding-inline: 40px;
  }

  .p-reason .p-reason__item .mark {
    background: #dfe0d9;
    display: block;
    height: 10px;
    width: 10px;
  }

  .p-reason .p-reason__item .txt {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
  }

  .c-btn__txt {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: 10px;
    text-align: center;
    position: relative;
    left: 42px;
    color: #262320;
  }

  .p-course .c-btn__txt {
    left: 0;
  }

  .p-course .c-btn {
    left: 0;
  }

  .c-btn {
    margin-inline: auto;
    width: min(95%, 880px);
    position: relative;
    left: 42px;
  }

  .c-btn a {
    align-items: center;
    background: linear-gradient(180deg, #9cb1b0 0%, #597f7e 100%);
    border: 2px solid #fff;
    border-radius: 200px;
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.15);
    color: #fff;
    display: flex;
    font-size: 20px;
    font-weight: 500;
    height: 100px;
    justify-content: center;
    line-height: 1;
    position: relative;
    text-align: center;
    text-decoration: none;
  }

  .c-btn a:hover {
    opacity: 0.8;
    text-decoration: none;
  }

  .c-btn a::after {
    background: url(../images/index/btn_human.png) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 120px;
    position: absolute;
    right: 40px;
    width: 80px;
  }

  .p-about {
    margin-bottom: -100px;
  }

  .p-about .c-about__ttl {
    font-size: 32px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: -5px;
    text-align: center;
    position: relative;
  }

  .p-about .p-about__line {
    margin-bottom: 0;
    text-align: center;
  }

  .p-about .p-about__txt {
    margin-bottom: 114px;
    text-align: center;
  }

  .p-about .p-about__txt p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.4375;
    margin-bottom: 42px;
  }

  .p-about .p-about__txt p:last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__txt p span {
    font-weight: 700;
  }

  .p-about .p-about__con {
    display: grid;
    gap: 0 7.6%;
    grid-template-columns: 40.7% 46.2%;
    margin-bottom: -75px;
    margin-inline: auto;
    width: min(95%, 1441px);
  }

  .p-about .p-about__con-left img {
    height: auto;
    width: 100%;
  }

  .p-about .p-about__con-right {
    position: relative;
    top: 20px;
  }

  .p-about .p-about__con-right p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.625;
    margin-bottom: 40px;
  }

  .p-about .p-about__con-right p:last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__con-right p strong {
    font-weight: 700;
  }

  .p-about .p-about__con02 {
    margin-bottom: 126px;
  }

  .p-about .p-about__con02-maru {
    background: #f5f0e6;
    border-radius: 50%;
    height: 187px;
    margin-bottom: -150px;
    margin-inline: auto;
    position: relative;
    width: 187px;
  }

  .p-about .p-about__con02-maru:before {
    background: url(../images/index/about_en.svg) no-repeat center
      center/contain;
    content: "";
    height: 140px;
    position: absolute;
    right: -13px;
    top: -55px;
    width: 140px;
  }

  .p-about .p-about__con02-inner {
    background: #f5f0e6;
    margin-inline: auto;
    padding-block: 50px 0;
    position: relative;
    width: min(95%, 1089px);
    color: #262320;
  }

  .p-about .p-about__con02-inner h3 {
    color: #262320;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: -11px;
    text-align: center;
  }

  .p-about .p-about__con02-inner .line {
    margin-bottom: 32px;
    text-align: center;
  }

  .p-about .p-about__con02-inner .txt {
    margin-bottom: -111px;
    text-align: center;
  }

  .p-about .p-about__con02-inner .txt p {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: 29px;
  }

  .p-about .p-about__con02-inner .txt p:last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__con02-inner .txt p span {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 2;
  }

  .p-about .p-about__con02-inner .txt p span.bold {
    font-weight: 700;
  }

  .p-about .p-about__con02-inner .txt p span.bold02 {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1.9;
  }

  .p-about .p-about__con02-inner .img {
    margin-inline: auto;
    text-align: right;
    width: min(95%, 1010px);
  }

  .p-about .p-about__con02-inner .img img {
    height: auto;
    width: 144px;
  }

  .p-about .p-about__bottom-ttl {
    font-size: 26px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: 45px;
    text-align: center;
  }

  .p-about .p-about__bottom-txt {
    margin-bottom: 56px;
    text-align: center;
  }

  .p-about .p-about__bottom-txt p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.375;
    margin-bottom: 39px;
  }

  .p-about .p-about__bottom-txt p::last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__bottom-txt p span {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.9;
  }

  .p-about .l-inner.l-about__loop {
    overflow: hidden;
  }

  .p-about .p-about__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 24px;
    width: 3840px;
  }

  .p-about .p-about__slider {
    animation: scroll-left 60s linear infinite;
  }

  .p-about .p-about__slider img {
    height: auto;
    width: 1920px;
  }

  .p-support {
    background: #f5f0e6;
    padding-block: 237px 120px;
  }

  .p-support .l-inner.l-support {
    margin-inline: auto;
    width: min(95%, 1041px);
  }

  .p-support .c-support__ttl {
    font-size: 32px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: -86px;
    text-align: center;
  }

  .p-support .p-support__img {
    margin-inline: auto;
    text-align: right;
    width: min(95%, 824px);
    margin-bottom: -17px;
    position: relative;
  }

  .p-support .p-support__img img {
    height: auto;
    width: 126px;
  }

  .p-support .p-support__items {
    display: grid;
    gap: 8px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 65px;
  }

  .p-support .p-support__item {
    background: #ffffff;
    color: #262320;
    padding-block: 0px 32px;
  }

  .p-support .p-support__item:nth-child(2) {
    background: transparent;
    padding-block: 0;
    text-align: center;
  }

  .p-support .p-support__item h3 {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 20px;
    padding-block: 10px;
    padding-inline: 30px;
    width: -moz-fit-content;
    width: fit-content;
  }

  .p-support .p-support__item h3.support01 {
    background: #dfe0d9;
  }

  .p-support .p-support__item h3.support02 {
    background: #f3e0d9;
  }

  .p-support .p-support__item p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-inline: auto;
    width: min(95%, 961px);
  }

  .p-support .p-support__item .list {
    display: grid;
    gap: 10px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-block: 24px 0;
    margin-inline: auto;
    width: min(95%, 976px);
  }

  .p-support .p-support__item .list li {
    align-items: center;
    border-bottom: 1px solid #e5e5e5;
    display: grid;
    gap: 0 0px;
    grid-template-columns: 2px minmax(0, 1fr);
    padding-block: 0 10px;
    padding-inline: 7px 0;
  }

  .p-support .p-support__item .list li .mark {
    background: #f3e0d9;
    height: 10px;
    width: 10px;
  }

  .p-support .p-support__item .list li p {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
  }

  .p-support .p-support__detail {
    margin-inline: auto;
    width: min(100%, 1041px);
  }

  .p-support .p-support__detail h3 {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: 35px;
    text-align: center;
  }

  .p-support .p-support__info {
    border-collapse: collapse;
    width: 100%;
  }

  .p-support .p-support__info-row {
    border-bottom: 1px solid #f5f0e6;
  }

  .p-support .p-support__info-row:last-child {
    border-bottom: none;
  }

  .p-support .p-support__info-row-left {
    background: #dfe0d9;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1;
    margin: 0;
    padding: 0;
    padding: 36px 40px;
    text-align: left;
    vertical-align: middle;
    width: 240px;
  }

  .p-support .p-support__info-row-right {
    background: #ffffff;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    margin: 0;
    padding: 0;
    padding: 20px 40px;
    width: calc(100% - 240px);
  }

  /* CTA（無料説明会） */
  .p-cta {
    margin-bottom: 112px;
    position: relative;
  }

  /* ピンクの背景。下側はベージュパネルが白地に乗る */
  .p-cta::before {
    background: #f3e0d9;
    content: "";
    height: 1991px;
    left: 0;
    max-height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
  }

  .p-cta .l-inner.l-cta {
    margin-inline: auto;
    position: relative;
    width: min(95%, 1100px);
  }

  .p-cta__worry {
    padding: 113px 0 40px;
    position: relative;
  }

  .p-cta__worry-ttl {
    display: table;
    font-size: 36px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.3;
    margin: 0 auto 46px;
    position: relative;
    text-align: center;
  }

  .p-cta__worry-ttl .deco {
    height: auto;
    margin-right: 13px;
    position: absolute;
    right: 100%;
    top: -18px;
    width: 25px;
  }

  .p-cta__worry-ttl .illust {
    height: auto;
    left: 100%;
    margin-left: 23px;
    position: absolute;
    top: -64px;
    width: 119px;
  }

  .p-cta__worry-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-inline: auto;
    width: min(100%, 579px);
  }

  .p-cta__worry-list li {
    align-items: center;
    background: #ffffff;
    display: flex;
    font-size: 14px;
    font-weight: 400;
    gap: 16px;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
    padding: 18px 40px;
    white-space: nowrap;
  }

  .p-cta__worry-list li::before {
    background: #dfe0d9;
    content: "";
    flex-shrink: 0;
    height: 10px;
    width: 10px;
  }

  .p-cta__main {
    background: #f5f0e6;
    margin-inline: auto;
    padding: 157px 0 92px;
    position: relative;
    width: min(95%, 1400px);
  }

  /* パネル上部の▼の切り込み */
  .p-cta__main::before {
    background: #f3e0d9;
    -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: "";
    height: 90px;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: min(62%, 863px);
  }

  .p-cta__lead {
    font-size: 26px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.3;
    margin-bottom: 10px;
    text-align: center;
  }

  .p-cta__ttl {
    align-items: center;
    display: flex;
    font-size: 36px;
    font-weight: 400;
    gap: 17px;
    justify-content: center;
    letter-spacing: 0em;
    line-height: 1.3;
    margin-bottom: 63px;
  }

  .p-cta__ttl .line {
    flex-shrink: 0;
    height: auto;
    width: 41px;
  }

  .p-cta__ttl .line:first-child {
    transform: scaleX(-1);
  }

  .p-cta__box {
    margin-bottom: 60px;
  }

  .p-cta__box + .p-cta__box {
    margin-bottom: 59px;
  }

  .p-cta__box-ttl {
    align-items: center;
    background: #829695;
    color: #ffffff;
    display: flex;
    font-size: 16px;
    font-weight: 400;
    height: 50px;
    justify-content: center;
    letter-spacing: 0em;
    line-height: 1.3;
  }

  .p-cta__box-con {
    background: #ffffff;
    padding: 48px 60px;
  }

  .p-cta__box + .p-cta__box .p-cta__box-con {
    padding: 48px 54px;
  }

  .p-cta__contents {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  .p-cta__contents li {
    align-items: center;
    background: #f5f0e6;
    display: flex;
    gap: 14px;
    min-height: 83px;
    padding: 0 30px;
    width: calc((100% - 20px) / 3);
  }

  .p-cta__contents li:nth-child(n + 4) {
    padding: 0 45px;
    width: calc((100% - 10px) / 2);
  }

  .p-cta__contents li .icon {
    align-items: center;
    background: #ffffff;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    height: 38px;
    justify-content: center;
    width: 38px;
  }

  .p-cta__contents li .icon img {
    height: auto;
    width: 22px;
  }

  .p-cta__contents li:nth-child(2) .icon img {
    width: 27px;
  }

  .p-cta__contents li:nth-child(4) .icon img {
    width: 25px;
  }

  .p-cta__contents li:nth-child(5) .icon img {
    width: 23px;
  }

  .p-cta__contents li p {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
  }

  .p-cta__speakers {
    display: flex;
    gap: 60px;
    justify-content: center;
  }

  .p-cta__speakers li {
    width: 236px;
  }

  .p-cta__speakers li.--founder {
    width: 400px;
  }

  .p-cta__speakers li .img {
    margin-bottom: 20px;
  }

  .p-cta__speakers li .img img {
    display: block;
    height: auto;
    width: 100%;
  }

  .p-cta__speakers li .role {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-cta__speakers li .name {
    font-size: 32px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-cta__info {
    margin-bottom: 38px;
    margin-inline: auto;
    width: min(100%, 500px);
  }

  .p-cta__info .row {
    align-items: center;
    background-image: linear-gradient(to right, #b2b3ac 7px, transparent 7px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 12px 1px;
    display: flex;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.3;
    min-height: 52px;
    padding-left: 41px;
  }

  .p-cta__info dt {
    flex-shrink: 0;
    width: 100px;
  }

  .p-cta__info .num {
    font-size: 24px;
    line-height: 0;
  }

  .p-cta .c-btn {
    left: 0;
    width: min(100%, 880px);
  }

  .c-btn__free {
    align-items: center;
    background: #ffffff;
    border: 2px solid #7d9998;
    border-radius: 50%;
    color: #7d9998;
    display: flex;
    flex-direction: column;
    font-size: 16px;
    font-weight: 500;
    height: 120px;
    justify-content: center;
    left: 57px;
    letter-spacing: 0.03em;
    line-height: 1.9;
    position: absolute;
    top: -45px;
    width: 120px;
  }

  .c-btn__free span {
    font-size: 28px;
    line-height: 1.3;
  }
  .p-tutor {
    margin-bottom: 112px;
  }

  .p-tutor .p-tutor__items {
    display: grid;
    gap: 0 5.6%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 1040px);
  }

  .p-tutor .p-tutor__item .con {
    display: grid;
    gap: 0 50px;
    grid-template-columns: 40.8% minmax(0, 1fr);
    margin-bottom: 40px;
  }

  .p-tutor .p-tutor__item .con-img img {
    height: 230px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .p-tutor .p-tutor__item .con-right p.teach {
    color: #829695;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 12px;
  }

  .p-tutor .p-tutor__item .con-right p.name {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 0px;
    color: #262320;
  }

  .p-tutor .p-tutor__item .con-right h3 {
    color: #262320;
    font-size: 32px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  /* 講師のキャッチ（推しポイント） */
  .p-tutor .p-tutor__item .con-right p.catch {
    border-top: 1px solid #e0d5c4;
    color: #bb823d;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-top: 16px;
    padding-top: 14px;
  }

  .p-tutor .p-tutor__item .txt p {
    color: #262320;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
    margin-bottom: 22px;
  }

  .p-tutor .p-tutor__item .txt p:last-child {
    margin-bottom: 0;
  }

  .c-sec__en {
    margin-bottom: 25px;
    text-align: center;
  }

  .c-sec__ttl {
    font-size: 48px;
    font-size: clamp(2.25rem, 1.75rem + 1.04vw, 3rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    text-align: center;
  }

  .c-sec__ttl.--tutor {
    margin-bottom: 72px;
  }

  .p-course {
    background: #f5f0e6;
  }

  .p-course .l-inner.l-course {
    padding-block: 130px 177px;
  }

  .p-course .c-sec__ttl.--course {
    margin-bottom: 39px;
  }

  .p-course .p-course__items {
    display: grid;
    gap: 20px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 64px;
    margin-inline: auto;
    width: min(95%, 1100px);
  }

  .p-course .p-course__item .top {
    background: #829695;
    padding-block: 13px 16px;
    text-align: center;
  }

  .p-course .p-course__item .bottom {
    background: #ffffff;
    padding-block: 48px 60px;
  }

  .p-course .p-course__item .bottom.--course02 {
    padding-block: 40px 36px;
  }

  .p-course .p-course__item .bottom-inner {
    margin-inline: auto;
    width: min(95%, 980px);
  }

  .p-course .p-course__item .bottom-inner h3 {
    border-bottom: 1px solid #0a121c;
    color: #262320;
    font-size: 28px;
    font-size: clamp(1.5rem, 1.333rem + 0.35vw, 1.75rem);
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 30px;
    padding-block: 0 24px;
    text-align: center;
  }

  .p-course .p-course__item .bottom-inner h3 .sub {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-course .p-course__item .bottom-inner p.target {
    color: #262320;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: 20px;
  }

  .p-course .p-course__item .bottom-inner p.target.--course02 {
    padding-bottom: 22px;
    border-bottom: 1px solid #c1c1c1;
    margin-bottom: 30px;
  }

  .p-course .p-course__item .bottom-inner p.txt {
    color: #262320;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.5625;
    margin-bottom: 20px;
  }

  .p-course .p-course__item .price {
    color: #262320;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 8px;
    padding-block: 20px 0;
    padding-inline: 40px;
  }

  .p-course .p-course__item .price.--course02 {
    margin-bottom: 0;
    border-top: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
    padding-block: 14px;
  }

  .p-course .p-course__item .price span.price-name {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-course .p-course__item .price span.price-num {
    color: #bb823d;
    display: inline-block;
    font-size: 34px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-inline: 4px;
  }

  .p-course .p-course__item .price span.price-unit {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.0211111111em;
    line-height: 1.5;
  }

  .p-course .p-course__item .price-txt {
    border-bottom: 1px solid #c1c1c1;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 30px;
    padding-block: 0 20px;
    padding-inline: 40px;
    color: #262320;
  }

  /* COURSE.02: 特典 → 価格 の順（AUN LP02 No.19） */
  .p-course .p-course__item .bottom.--course02 .list {
    margin-bottom: 30px;
  }

  /* COURSE.01: 特典の相当額＋総額（AUN LP02 No.20 / カンプ KMJ説明会_20260922） */
  .p-course .p-course__item .list.--value {
    margin-bottom: 20px;
  }

  .p-course .p-course__item .list.--value li,
  .p-course .p-course__item .list.--value li:nth-child(7),
  .p-course .p-course__item .list.--value li:nth-child(8) {
    align-content: start;
    gap: 8px 20px;
    grid-template-rows: auto 1fr;
    padding-block: 20px;
    padding-inline: 30px 20px;
  }

  .p-course .p-course__item .list.--value li .icon {
    grid-row: 1 / 3;
    position: relative;
    top: 3px;
  }

  .p-course .p-course__item .list li p.value {
    color: #bb823d;
    font-size: clamp(14px, 4.75px + 1.205vw, 18px);
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.2222222222;
    word-break: keep-all;
  }

  .p-course .p-course__item .bracket {
    border: solid #c1c1c1;
    border-width: 0 4px 4px;
    height: 44px;
    margin-bottom: 46px;
    margin-inline: -2px;
    position: relative;
  }

  .p-course .p-course__item .bracket::after {
    background: #c1c1c1;
    content: "";
    height: 36px;
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
    width: 4px;
  }

  .p-course .p-course__item .total {
    color: #262320;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 10px;
    text-align: center;
  }

  .p-course .p-course__item .price-area {
    align-items: center;
    column-gap: clamp(14px, 0.12px + 1.807vw, 20px);
    display: grid;
    grid-template-columns: auto auto;
    justify-content: center;
  }

  .p-course .p-course__item .price-wrap {
    display: contents;
  }

  .p-course .p-course__item .price-was {
    align-items: center;
    background: #d9d9d9;
    color: #262320;
    display: flex;
    font-size: clamp(12px, 2.75px + 1.205vw, 16px);
    font-weight: 500;
    grid-row: 1;
    height: clamp(45px, 5.68px + 5.12vw, 62px);
    justify-content: center;
    letter-spacing: 0.03em;
    line-height: 1.5;
    position: relative;
    text-decoration: line-through;
    width: clamp(128px, 12.34px + 15.06vw, 178px);
  }

  .p-course .p-course__item .price-was::after {
    border-color: transparent transparent transparent #d9d9d9;
    border-style: solid;
    border-width: 8.66px 0 8.66px 8px;
    content: "";
    left: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 768〜1100px は1行に収まるよう縮小（1100px以上はカンプ値） */
  .p-course .p-course__item .price.--course01 {
    font-size: clamp(10px, 5.37px + 0.602vw, 12px);
    margin-bottom: 0;
    padding: 0;
  }

  .p-course .p-course__item .price.--course01 span.price-name {
    font-size: clamp(12px, 2.75px + 1.205vw, 16px);
  }

  .p-course .p-course__item .price.--course01 span.price-num {
    font-size: clamp(36px, 3.61px + 4.217vw, 50px);
  }

  .p-course .p-course__item .price.--course01 span.price-unit {
    font-size: clamp(12px, 2.75px + 1.205vw, 16px);
  }

  .p-course .p-course__item .price-txt.--course01 {
    border-bottom: none;
    grid-column: 2;
    margin-bottom: 0;
    padding: 0;
    text-align: right;
  }

  .p-course .p-course__item .list {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .p-course .p-course__item .list li {
    background: #f5f0e6;
    display: grid;
    gap: 0 14px;
    grid-column: span 2;
    grid-template-columns: 38px minmax(0, 1fr);
    padding-block: 22px 17px;
    padding-inline: 31px 16px;
  }

  .p-course .p-course__item .list li:nth-child(7),
  .p-course .p-course__item .list li:nth-child(8) {
    grid-column: span 3;
    gap: 0 13px;
    padding-inline: 46px 16px;
  }

  .p-course .p-course__item .list li .icon {
    align-items: center;
    aspect-ratio: 1/1;
    background: #ffffff;
    border-radius: 50%;
    display: grid;
    height: 38px;
    justify-items: center;
    place-items: center;
    width: 100%;
  }

  .p-course .p-course__item .list li p {
    font-size: 14px;
    font-size: clamp(0.75rem, 0.667rem + 0.17vw, 0.875rem);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
    color: #262320;
  }

  .p-course .p-course__benfit {
    margin-bottom: 40px;
  }

  .p-course .p-course__benfit h3 {
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.7115384615;
    margin-bottom: 20px;
    margin-inline: auto;
    padding-inline: 24px;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
  }

  .p-course .p-course__benfit h3:before {
    background: url(../images/index/course_line.svg) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 54px;
    left: -40px;
    position: absolute;
    width: 41px;
  }

  .p-course .p-course__benfit h3::after {
    background: url(../images/index/course_line.svg) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 54px;
    position: absolute;
    right: -42px;
    transform: scale(-1, 1);
    width: 41px;
  }

  .p-course .p-course__benfit h3 span {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 2.4444444444;
  }

  .p-course .p-course__benfit .con {
    margin-inline: auto;
    width: min(95%, 1100px);
  }

  .p-course .p-course__benfit .top {
    background: #dfe0d9;
    padding-block: 3px 16px;
    text-align: center;
  }

  .p-course .p-course__benfit .bottom {
    background: #fff;
    padding-block: 21px 32px;
  }

  .p-course .p-course__benfit .bottom p {
    color: #262320;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-bottom: 34px;
    margin-inline: auto;
    width: min(95%, 980px);
  }

  .p-course .p-course__benfit .bottom .list {
    align-items: center;
    display: grid;
    gap: 10px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 976px);
  }

  .p-course .p-course__benfit .bottom .list li {
    align-items: center;
    border-bottom: 1px solid #e5e5e5;
    display: grid;
    gap: 0 0px;
    grid-template-columns: 2px minmax(0, 1fr);
    padding-block: 0 10px;
    padding-inline: 0px 0;
    color: #262320;
  }

  .p-course .p-course__benfit .bottom .list li .mark {
    background: #dfe0d9;
    height: 10px;
    width: 10px;
  }

  .p-course .p-course__benfit .bottom .list li p {
    color: #262320;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.7142857143;
    margin-bottom: 0;
  }

  .c-sec__txt {
    color: #262320;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    margin-bottom: -160px;
    text-align: center;
  }

  .p-simulation {
    background: #f5f0e6;
    margin-bottom: 120px;
  }

  .p-simulation .l-inner.l-simulation {
    padding-block: 0 100px;
  }

  .p-simulation .c-sec__ttl.--simulation {
    margin-bottom: 8px;
    font-size: 40px;
    font-size: clamp(2rem, 1.667rem + 0.69vw, 2.5rem);
  }

  .p-simulation .p-simulation__img {
    margin-bottom: 27px;
    margin-inline: auto;
    width: min(95%, 1036px);
  }

  .p-simulation .p-simulation__img img {
    height: auto;
    width: 156px;
  }

  .p-simulation .p-simulation__items {
    display: grid;
    gap: 0 30px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 28px;
    margin-inline: auto;
    width: min(95%, 1200px);
  }

  .p-simulation .p-simulation__item {
    display: grid;
    display: block grid;
    grid-row: span 2;
    grid-template-rows: subgrid;
  }

  .p-simulation .p-simulation__item .top {
    align-items: center;
    display: grid;
    justify-items: center;
    place-items: center;
    padding-block: 22px;
  }

  .p-simulation .p-simulation__item .top.--simulation01 {
    background: #dfe0d9;
  }

  .p-simulation .p-simulation__item .top.--simulation02 {
    background: #f3e0d9;
  }

  .p-simulation .p-simulation__item .top.--simulation03 {
    background: #b0d0cb;
  }

  .p-simulation .p-simulation__item .top p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    text-align: center;
  }

  .p-simulation .p-simulation__item .bottom {
    background: #fff;
    padding-block: 24px;
  }

  .p-simulation .p-simulation__item .bottom p {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.8888888889;
    text-align: center;
  }

  .p-simulation .p-simulation__item .bottom p span {
    color: #bb823d;
    font-size: 46px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.9;
  }

  .p-simulation .p-simulation__note {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    text-align: center;
    width: min(95%, 952px);
    margin-inline: auto;
    color: #262320;
  }

  .p-simulation .p-simulation__note a {
    -webkit-text-decoration: underline;
    text-decoration: underline;
  }

  .p-overview {
    margin-bottom: 114px;
  }

  .p-overview .c-sec__ttl.--overview {
    margin-bottom: 42px;
  }

  .p-overview .c-sec__txt {
    margin-bottom: 40px;
  }

  .p-overview .p-overview__items {
    display: grid;
    gap: 0 15px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 56px;
    margin-inline: auto;
    width: min(95%, 1200px);
  }

  .p-overview .p-overview__item {
    position: relative;
  }

  .p-overview .p-overview__item::after {
    content: "";
    position: absolute;
    background: url(../images/index/overview_triangle.svg) no-repeat center
      center / contain;
    width: 26px;
    height: 44px;
    top: 50%;
    transform: translateY(-50%);
    right: -26px;
    z-index: 1;
  }

  .p-overview .p-overview__item:last-of-type::after {
    content: none;
  }

  .p-overview .p-overview__item .day {
    margin-bottom: -61px;
    position: relative;
    text-align: center;
  }

  .p-overview .p-overview__item .box {
    border: 1px solid #cfcfcf;
    border-radius: 10px;
    padding-block: 92px 16px;
    height: 100%;
  }

  .p-overview .p-overview__item .box h3 {
    font-size: 20px;
    font-size: clamp(0.875rem, 0.625rem + 0.52vw, 1.25rem);
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.6;
    margin-bottom: 10px;
    text-align: center;
  }

  .p-overview .p-overview__item .box h4 {
    color: #262320;
    font-size: 16px;
    font-size: clamp(0.75rem, 0.583rem + 0.35vw, 1rem);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-bottom: 20px;
    text-align: center;
  }

  .p-overview .p-overview__item .img {
    margin-bottom: 17px;
    text-align: center;
    width: min(95%, 316px);
    margin-inline: auto;
  }

  .p-overview .p-overview__item .img img {
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__item p {
    color: #262320;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5555555556;
    margin-bottom: 10px;
    text-align: center;
  }

  .p-overview .p-overview__item .list {
    display: grid;
    gap: 4px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 316px);
  }

  .p-overview .p-overview__item .list li {
    display: grid;
    gap: 0 11px;
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .p-overview .p-overview__item .list li span img {
    height: auto;
    width: 100%;
    position: relative;
    top: 2px;
  }

  .p-overview .p-overview__item .list li p {
    color: #262320;
    font-size: 14px;
    font-size: clamp(0.75rem, 0.667rem + 0.17vw, 0.875rem);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 2;
    margin-bottom: 0;
    text-align: left;
  }

  .p-overview .p-overview__item .etc {
    color: #262320;
    font-size: 16px;
    font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-bottom: 0;
    margin-inline: auto;
    text-align: right;
    width: min(95%, 316px);
    margin-block: 13px 0;
  }

  .p-overview .p-overview__ready {
    margin-bottom: 100px;
    margin-inline: auto;
    width: min(95%, 1200px);
  }

  .p-overview .p-overview__ready .top {
    background: #f3e0d9;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.5555555556;
    padding-block: 10px;
    text-align: center;
    margin-bottom: 2px;
  }

  .p-overview .p-overview__ready .txt {
    margin-bottom: 14px;
  }

  .p-overview .p-overview__ready .txt p {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    padding-inline: 100px;
    padding-inline: clamp(2.5rem, 5.21vw, 6.25rem);
    background: #f6f6f6;
    padding-block: 6px;
    margin-bottom: 2px;
  }

  .p-overview .p-overview__ready .txt p:last-child {
    margin-bottom: 0;
  }

  .p-overview .p-overflow__flow {
    background: #faf7f5;
    margin-inline: auto;
    width: min(95%, 1200px);
  }

  .p-overview .p-overview__flow-inner {
    margin-inline: auto;
    padding-block: 69px 60px;
    position: relative;
    width: min(95%, 990px);
  }

  .p-overview .p-overview__flow-inner h3 {
    font-size: 32px;
    font-size: clamp(1.5rem, 1.167rem + 0.69vw, 2rem);
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.6;
    margin-bottom: 48px;
    text-align: center;
  }

  .p-overview .p-overview__flow-items {
    display: grid;
    gap: 30px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    position: relative;
  }

  .p-overview .p-overview__flow-items > .p-overview__flow-item::before {
    border-left: 1px dashed #a2a39b;
    bottom: -30px;
    content: "";
    left: 27px;
    position: absolute;
    top: 0;
  }

  .p-overview .p-overview__flow-items > .p-overview__flow-item:first-child::before {
    top: 28px;
  }

  .p-overview .p-overview__flow-items > .p-overview__flow-item:last-child::before {
    bottom: auto;
    height: 28px;
  }

  .p-overview .p-overview__flow-item {
    display: grid;
    gap: 0 34px;
    grid-template-columns: 56px 759px;
    position: relative;
  }

  /* STEPが付かない先頭行（リスト外に置き、STEP列を空けて本文だけ2列目へ） */
  .p-overview .p-overview__flow-item.--lead {
    margin-bottom: 30px;
  }

  .p-overview .p-overview__flow-item.--lead .con {
    grid-column: 2/3;
  }

  .p-overview .p-overview__flow-item p {
    color: #262320;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7;
  }

  .p-overview .p-overview__flow-item .step {
    position: relative;
    z-index: 1;
  }

  .p-overview .p-overview__flow-item .step img {
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__flow-item .icon img {
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__flow-item .con-top {
    align-items: center;
    display: grid;
    gap: 0 20px;
    grid-template-columns: 58px minmax(0, 1fr);
    margin-bottom: -10px;
  }

  .p-overview .p-overview__flow-item .accent {
    color: #bb823d;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7;
  }

  .p-overview .p-overview__flow-item .line {
    display: block;
    margin-top: 24px;
  }

  .p-overview .p-overview__flow-item .line img {
    display: block;
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__flow-item .note {
    color: #626262;
    font-size: 13px;
    font-weight: 400;
    grid-column: 2/3;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-top: 0px;
  }

  .p-experience {
    background: #f3e0d9;
  }

  .p-experience .l-inner.l-experience {
    padding-block: 106px 80px;
  }

  .p-experience .c-sec__en {
    margin-bottom: 32px;
  }

  .p-experience .c-sec__ttl {
    margin-bottom: 43px;
    margin-inline: auto;
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
    font-size: clamp(2.125rem, 1.542rem + 1.22vw, 3rem);
  }

  .p-experience .c-sec__ttl:before {
    background: url(../images/index/experience_line.svg) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 100px;
    left: -90px;
    position: absolute;
    width: 36px;
  }

  .p-experience .c-sec__ttl::after {
    background: url(../images/index/experience_line.svg) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 100px;
    position: absolute;
    right: -90px;
    transform: scale(-1, 1);
    width: 36px;
  }

  .p-experience .p-experience__items {
    display: grid;
    gap: 0 8px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 62px;
    margin-inline: auto;
    width: min(95%, 1208px);
    color: #262320;
  }

  .p-experience .p-experience__item {
    background: #fff;
    border-radius: 6.534px;
    padding-block: 26px;
    text-align: center;
  }

  .p-experience .p-experience__item .num {
    color: #bb823d;
    font-size: 28px;
    font-size: clamp(1.375rem, 1.125rem + 0.52vw, 1.75rem);
    font-weight: 400;
    letter-spacing: 0.0303214286em;
    line-height: 1.3642857143;
  }

  .p-experience .p-experience__item .unit {
    color: #bb823d;
    font-size: 22px;
    font-size: clamp(1.125rem, 0.958rem + 0.35vw, 1.375rem);
    font-weight: 400;
    letter-spacing: 0.0296818182em;
    line-height: 1.4113636364;
  }

  .p-experience .p-experience__item p {
    color: #262320;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-block: 9px 0;
  }

  .p-experience .p-experience__history {
    margin-bottom: 82px;
    color: #262320;
  }

  .p-experience .p-experience__history h3 {
    color: #262320;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 14px;
    text-align: center;
  }

  .p-experience .p-experience__history-items {
    border-top: 1px solid #ffffff;
    display: grid;
    gap: 21px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    padding-block: 28px;
    position: relative;
    width: min(95%, 1115px);
    color: #262320;
  }

  .p-experience .p-experience__history-item {
    border-bottom: 1px solid #ffffff;
    display: grid;
    gap: 0 44px;
    grid-template-columns: 43px 10px minmax(0, 1fr);
    padding-block: 0 24px;
    padding-inline: 28px 0;
    position: relative;
  }

  .p-experience .p-experience__history-item:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 120px;
    height: calc(100% + 21px);
    border-left: 1px solid #829695;
  }

  .p-experience .p-experience__history-item .year {
    color: #262320;
    display: inline-block;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.2;
  }

  .p-experience .p-experience__history-item .icon {
    background: #829695;
    border-radius: 50%;
    display: block;
    display: inline-block;
    height: 10px;
    margin-inline: 0px 118px;
    position: relative;
    width: 10px;
    z-index: 10;
    top: 8px;
  }

  .p-experience .p-experience__history-item .txt p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.625;
    margin-inline: 44px 0;
  }

  .p-experience .p-experience__history-item .txt p:not(:first-child) {
    margin-top: 14px;
  }

  .p-experience .l-inner.l-loop {
    overflow: hidden;
  }

  .p-experience .p-experience__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 44px;
    width: 200%;
  }

  .p-experience .p-experience__slider {
    animation: scroll-left 60s linear infinite;
  }

  .p-experience .p-experience__slider img {
    height: auto;
    width: 1920px;
  }

  .p-voice {
    background: #f3e0d9;
    margin-bottom: 100px;
    padding-block: 0 130px;
  }

  .p-voice .l-inner.l-voice {
    background: #f7ece8;
    margin-inline: auto;
    padding-block: 70px 80px;
    width: min(95%, 1440px);
  }

  .p-voice .c-sec__ttl {
    margin-bottom: 56px;
    font-size: 36px;
  }

  /* 768px まで4列を維持するため、幅・余白・文字は 768〜1920px で可変にする */
  .p-voice .p-voice__items {
    display: grid;
    gap: 0 clamp(12px, 4px + 1.042vw, 24px);
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-inline: auto;
    width: min(96%, 1360px);
  }

  .p-voice .p-voice__item {
    display: grid;
    display: block grid;
    grid-row: span 2;
    grid-template-rows: subgrid;
  }

  /* 段と段のアキ。subgridの行間が開かないよう、item自体ではなく .box に持たせる */
  .p-voice .p-voice__item:not(:nth-last-child(-n + 4)) .box {
    margin-bottom: clamp(32px, 16px + 2.083vw, 56px);
  }

  .p-voice .p-voice__item .img img {
    height: auto;
    width: 100%;
  }

  .p-voice .p-voice__item .box {
    background: #fffefa;
    padding-block: clamp(14px, 10px + 0.521vw, 20px);
  }

  .p-voice .p-voice__item .box-inner {
    margin-inline: auto;
    width: calc(100% - clamp(20px, 6.667px + 1.736vw, 40px));
  }

  .p-voice .p-voice__item .box-inner h3 {
    font-size: clamp(13px, 10.333px + 0.347vw, 17px);
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: clamp(4px, 2.667px + 0.174vw, 6px);
    color: #262320;
  }

  /* 活動状況（主婦をしながら／専業として など） */
  .p-voice .p-voice__item .box-inner .status {
    color: #8b7f76;
    font-size: clamp(10px, 8.667px + 0.174vw, 12px);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: clamp(9px, 5.667px + 0.434vw, 14px);
  }

  .p-voice .p-voice__item .list {
    display: grid;
    gap: clamp(9px, 5.667px + 0.434vw, 14px) 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: clamp(7px, 5px + 0.26vw, 10px);
  }

  .p-voice .p-voice__item .list li {
    border-bottom: 1px solid #d9d9d9;
    color: #262320;
    font-size: clamp(10px, 8.667px + 1.174vw, 14px);
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1.7;
    padding-block: 0 clamp(8px, 4.667px + 0.434vw, 13px);
  }

  .p-voice .p-voice__item .data {
    display: grid;
    gap: clamp(7px, 4.333px + 0.347vw, 11px) 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-voice .p-voice__item .data .data-item {
    border-bottom: 1px solid #d9d9d9;
    padding-block: 0 clamp(5px, 3.667px + 0.174vw, 7px);
  }

  .p-voice .p-voice__item .data dt {
    color: #262320;
    font-size: clamp(10px, 8.667px + 0.174vw, 12px);
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin: 0;
    padding: 0;
  }

  .p-voice .p-voice__item .data dd {
    color: #262320;
    font-size: clamp(10px, 8.667px + 0.174vw, 12px);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin: 0;
    padding: 0;
  }

  .p-voice .p-voice__item .txt {
    color: #262320;
    font-size: clamp(11px, 9.667px + 0.174vw, 13px);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: clamp(9px, 5.667px + 0.434vw, 14px);
  }

  .p-story {
    margin-bottom: 100px;
  }

  .p-story .p-story__con {
    display: grid;
    gap: 0 4.7%;
    grid-template-columns: 39.1% 41.4%;
    justify-content: flex-end;
    margin-bottom: 192px;
    margin-inline: auto;
    width: min(95%, 1720px);
  }

  .p-story .p-story__con-left {
    color: #262320;
  }

  .p-story .p-story__con-left p {
    font-size: 18px;
    font-size: clamp(1rem, 0.917rem + 0.17vw, 1.125rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.2222222222;
    margin-bottom: 40px;
  }

  .p-story .p-story__con-left p span {
    font-size: 24px;
    font-size: clamp(1.25rem, 1.083rem + 0.35vw, 1.5rem);
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.9;
  }

  .p-story .p-story__con-left .txt02 p:first-child {
    margin-bottom: 10px;
  }

  .p-story .p-story__con-left .txt02 p:last-child {
    margin-bottom: 0;
  }

  .p-story .p-story__con-left p.last-child {
    margin-bottom: 0;
  }

  .p-story .p-story__con-left .txt01 {
    margin-bottom: 80px;
  }

  .p-story .p-story__con-right {
    position: relative;
    top: 143px;
  }

  .p-story .p-story__con-right:before {
    background: url(../images/index/story_img_top.jpg) no-repeat center
      center/contain;
    content: "";
    height: 220px;
    left: 41%;
    position: absolute;
    top: -280px;
    /* transform: translateX(-50%); */
    width: 210px;
  }

  .p-story .p-story__con-right img {
    height: auto;
    width: 100%;
  }

  .p-story .p-story__txt {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: 10px;
    text-align: center;
  }

  .p-story .p-story__txt02 {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.2222222222;
    margin-bottom: 36px;
    text-align: center;
  }

  .p-story .p-story__img {
    margin-bottom: 60px;
    margin-inline: auto;
    text-align: center;
    width: min(85%, 1060px);
  }

  .p-story .p-story__img img {
    height: auto;
    width: 100%;
  }

  .p-story .p-story__txt03 {
    margin-bottom: 28px;
    text-align: center;
  }

  .p-story .p-story__txt03 p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.5;
  }

  .p-story .p-story__txt03 p span {
    display: inline-block;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.9166666667;
    margin-bottom: 40px;
  }

  .p-story .p-story__txt03 p.top {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.2222222222;
    margin-bottom: 10px;
  }

  .p-story .p-story__scrolldown {
    animation: scroll 2s infinite;
    background: #a9887c;
    height: 80px;
    left: 50%;
    margin-bottom: -32px;
    position: relative;
    transform: translateX(-50%);
    width: 1px;
    z-index: 10;
  }

  .p-story {
    /*上から下に流れる線*/
  }

  .p-story .p-story__loop {
    background: url(../images/index/story_bg.jpg) no-repeat top center/cover;
    margin-inline: auto;
    max-width: 1920px;
    width: 100%;
  }

  .p-story .l-inner.l-loop {
    padding-block: 110px 80px;
    overflow: hidden;
  }

  .p-story .p-story__loop-txt {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.3333333333;
    margin-bottom: 25px;
    text-align: center;
  }

  .p-story .p-story__loop-txt02 {
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.8461538462;
    margin-bottom: 60px;
    text-align: center;
  }

  .p-story .p-story__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0;
    width: max-content;
  }

  .p-story .p-story__slider {
    animation: scroll-left 60s linear infinite;
    flex-shrink: 0;
    padding-right: 40px;
  }

  .p-story .p-story__slider img {
    display: block;
    height: auto;
    max-height: none;
    -o-object-fit: initial;
    object-fit: initial;
    width: 2160px;
  }

  .p-faq {
    margin-bottom: 141px;
  }

  .p-faq .l-inner.l-faq {
    margin-inline: auto;
    width: min(95%, 1000px);
  }

  .p-faq .c-sec__en {
    margin-bottom: 24px;
    text-align: center;
  }

  .p-faq .c-sec__ttl {
    margin-bottom: 52px;
  }

  .p-faq .p-faq__box {
    display: grid;
    gap: 40px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-faq summary {
    display: block;
  }

  .p-faq summary::-webkit-details-marker {
    display: none;
  }

  .p-faq .p-faq__qu {
    position: relative;
    display: block;
  }

  .p-faq .p-faq__qu::before,
  .p-faq .p-faq__qu::after {
    background: #ffffff;
    content: "";
    position: absolute;
    top: 50%;
    translate: 0 -50%;
  }

  .p-faq .p-faq__qu::before {
    height: 1px;
    right: 43px;
    width: 24px;
  }

  .p-faq .p-faq__qu::after {
    height: 24px;
    right: 55px;
    transition: rotate 0.3s ease;
    width: 1px;
  }

  .p-faq details[open] .p-faq__qu::after {
    rotate: 90deg;
  }

  .p-faq .p-faq__item[open] .p-faq__an {
    animation: fadeIn 0.5s ease;
  }

  .p-faq .p-faq__qu-txt {
    background: #829695;
    color: #ffffff;
    display: block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.75;
    padding-block: 19px;
    padding-inline: 86px 83px;
  }

  .p-faq .p-faq__qu-txt::before {
    background: url(../images/index/faq_qu.svg) no-repeat center center/contain;
    content: "";
    height: 39px;
    left: 40px;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    width: 30px;
  }

  .p-faq__an-txt {
    display: block;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    padding-block: 22px;
    padding-inline: 86px 64px;
    position: relative;
    background: #F6F6F6;
  }

  .p-faq__an-txt:first-child {
    position: relative;
    margin-block: 0 -10px;
  }

  .p-faq__an-txt:first-child::before {
    background: url(../images/index/faq_an.svg) no-repeat center center/contain;
    content: "";
    height: 39px;
    left: 40px;
    position: absolute;
    width: 30px;
  }

  .p-bottom {
    background: #f5f0e6;
    margin-bottom: 135px;
  }

  .p-bottom .l-inner.l-bottom {
    padding-block: 120px;
  }

  .p-bottom .p-bottom__con {
    align-items: center;
    display: grid;
    gap: 0 7.2%;
    grid-template-columns: 42.9% 49.9%;
    margin-bottom: 110px;
    margin-inline: auto;
    width: min(95%, 1113px);
  }

  .p-bottom .p-bottom__con-left {
    position: relative;
    top: -1px;
  }

  .p-bottom .p-bottom__con-left h2 {
    font-size: 28px;
    font-size: clamp(1.375rem, 1.125rem + 0.52vw, 1.75rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.7142857143;
    margin-bottom: 40px;
  }

  .p-bottom .p-bottom__con-left .txt p {
    font-size: 16px;
    font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.25;
    margin-bottom: 32px;
  }

  .p-bottom .p-bottom__con-left .txt p span {
    font-weight: 700;
  }

  .p-bottom .p-bottom__con-left .txt p:last-child {
    margin-bottom: 0;
  }

  .p-bottom .p-bottom__con-right img {
    height: auto;
    width: 100%;
  }

  .p-bottom .p-bottom__txt {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin-bottom: 36px;
    text-align: center;
  }

  .p-bottom .p-bottom__txt02 {
    font-size: 24px;
    font-size: clamp(1.25rem, 1.083rem + 0.35vw, 1.5rem);
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.75;
    text-align: center;
  }

  .p-bottom .p-bottom__txt02 span {
    font-size: 18px;
    font-size: clamp(1rem, 0.917rem + 0.17vw, 1.125rem);
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.2222222222;
  }

  .p-message {
    margin-bottom: 100px;
  }

  .p-message .c-sec__ttl.--message {
    margin-bottom: 80px;
  }

  .p-message .p-message__lead {
    margin-bottom: 80px;
  }

  .p-message .p-message__lead-ttl {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.8;
    margin-bottom: 64px;
    text-align: center;
  }

  .p-message .p-message__lead-txt {
    text-align: center;
  }

  .p-message .p-message__lead-txt p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin-bottom: 30px;
  }

  .p-message .p-message__lead-txt p:last-child {
    margin-bottom: 0;
  }

  .p-message .p-message__con {
    display: grid;
    gap: 0 5.8%;
    grid-template-columns: 43.5% 50.8%;
    margin-inline: auto;
    width: min(95%, 1104px);
  }

  .p-message .p-message__con-left img {
    height: auto;
    width: 100%;
  }

  .p-message .p-message__con-right p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin-bottom: 32px;
  }

  .p-message .p-message__con-right p:last-child {
    margin-bottom: 0;
  }

  .p-message .p-message__con-right .p-message__signature {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.6;
    margin-block: 40px 0;
    text-align: right;
  }
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1750px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1750px) {
  .p-fv .p-fv__loop {
    margin-bottom: -11.257vw;
  }

  .p-fv .p-fv__con {
    left: 0;
    gap: 0 10.6%;
    margin-bottom: 9.086vw;
  }

  .p-fv .p-fv__con-right .top {
    margin-bottom: -12.914vw;
  }

  .p-fv .p-fv__con-right .bottom {
    height: 9.543vw;
    left: 3.086vw;
    margin-left: auto;
    position: relative;
    width: 9.429vw;
  }

  .p-fv .p-fv__con-right .bottom .bg img {
    height: 9.543vw;
    width: 9.429vw;
  }

  .p-fv .p-fv__con-right .bottom .arrow img {
    width: 1.029vw;
    height: auto;
  }

  .p-fv {
    margin-bottom: -9.429vw;
    padding-block: 17.371vw 11.429vw;
  }

  .p-like .js-future-tab-btn {
    justify-content: center;
    padding-block: 2.286vw;
  }

  .p-like .js-future-tab-btn.--tab01 {
    padding-inline: 2vw;
  }

  .p-like .js-future-tab-btn.--tab02 {
    padding-inline: 2vw;
  }
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1400px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1400px) {
  .p-reason .p-reason__items {
    left: 0;
  }

  .c-btn__txt {
    left: 0;
  }

  .c-btn {
    left: 0;
  }

  .p-about .p-about__con {
    margin-bottom: -3vw;
    grid-template-columns: 40.7% 48.2%;
  }

  .p-about .p-about__con02-maru {
    background: #f5f0e6;
    border-radius: 50%;
    height: 13.357vw;
    margin-bottom: -10.714vw;
    margin-inline: auto;
    position: relative;
    width: 13.357vw;
  }

  .p-about .p-about__con02-maru:before {
    background: url(../images/index/about_en.svg) no-repeat center
      center/contain;
    content: "";
    height: 10vw;
    position: absolute;
    right: -0.929vw;
    top: -3.929vw;
    width: 10vw;
  }

  .p-about .p-about__con02-inner .img img {
    height: auto;
    width: 10.286vw;
  }

  .p-about .p-about__con02-inner .txt {
    margin-bottom: -7.929vw;
    text-align: center;
  }
}

/* （.p-like__con-inner の margin-bottom 上書きは、Figma配置への変更に伴い削除 2026-10-06。バックアップ：bk/20261006page-top_before-pp.css） */

/* ========================================
@media screen and (min-width:768px) and ( max-width:1300px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1300px) {
  .p-about .p-about__con {
    margin-bottom: 6vw;
  }
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1200px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .p-story .p-story__con-right:before {
    background: url(../images/index/story_img_top.jpg) no-repeat center
      center/contain;
    content: "";
    height: 18.333vw;
    left: 41%;
    position: absolute;
    top: -23.333vw;
    /* transform: translateX(-50%); */
    width: 17.5vw;
  }

  .p-story .p-story__con {
    grid-template-columns: 48.1% 41.4%;
  }

  .p-overview .p-overview__item::after {
    content: "";
    position: absolute;
    background: url(../images/index/overview_triangle.svg) no-repeat center
      center / contain;
    width: 2.167vw;
    height: 3.667vw;
    top: 50%;
    transform: translateY(-50%);
    right: -2.167vw;
  }

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1050px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1050px) {
  .p-experience .p-experience__history-item {
    border-bottom: 1px solid #ffffff;
    display: grid;
    gap: 0 4.19vw;
    grid-template-columns: 4vw 0.95vw minmax(0, 1fr);
    padding-block: 0 2.286vw;
    padding-inline: 2.667vw 0;
  }

  .p-experience .p-experience__history-item:not(:last-child)::before {
    left: 11.5vw;
  }

  .p-simulation .c-sec__txt {
    color: #262320;
    font-size: 1.524vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    margin-bottom: -15.238vw;
    text-align: center;
  }

  .p-simulation .p-simulation__img {
    margin-bottom: 2.571vw;
    margin-inline: auto;
    width: min(95%, 1036px);
  }

  .p-simulation .p-simulation__img img {
    height: auto;
    width: 14.857vw;
  }


}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1000px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1000px) {
  .p-about .p-about__con02-inner .txt {
    margin-bottom: 1vw;
  }

  .p-tutor .p-tutor__item .con-img img {
    height: 23vw;
  }
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:950px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 950px) {
  .p-overview .p-overview__flow-item {
    display: grid;
    gap: 0 3.579vw;
    grid-template-columns: 5.895vw 79.895vw;
    position: relative;
  }
}

/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
  .p-fv {
    background: linear-gradient(180deg, #ffe1cb 0%, #ffffff 100%);
    margin-bottom: -26.401vw;
    padding-block: 27.232vw 38.164vw;
  }

  .p-fv .l-inner.l-fv {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-fv .p-fv__con {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 0.338vw;
    margin-inline: auto;
    order: 1;
    position: relative;
    width: min(95%, 80.541063vw);
    z-index: 10;
  }

  .p-fv .p-fv__con-left h1 {
    font-size: 6.763vw;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.6;
    margin-bottom: 4.797vw;
  }

  .p-fv .p-fv__con-left h1 span {
    display: block;
  }

  .p-fv .p-fv__con-left h1 span.top {
    position: relative;
    left: -4vw;
  }

  .p-fv .p-fv__con-left p {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.875;
  }

  .p-fv .p-fv__con-right {
    margin-inline: auto;
    width: min(95%, 75.3623188406vw);
  }

  .p-fv .p-fv__con-right .top {
    margin-bottom: -23.155vw;
  }

  .p-fv .p-fv__con-right .top img {
    height: auto;
    width: 100%;
  }

  .p-fv .p-fv__con-right .bottom {
    height: 16.976vw;
    left: 2.865vw;
    margin-left: auto;
    position: relative;
    width: 16.976vw;
  }

  .p-fv .p-fv__con-right .bottom .bg {
    animation: rotation 16s linear infinite;
  }

  .p-fv .p-fv__con-right .bottom .arrow {
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translate(-50%, -50%);
  }

  .p-fv .p-fv__con-right .bottom .arrow img {
    height: auto;
    width: 1.787vw;
  }

  .p-fv .p-fv__loop {
    margin-bottom: 13.662vw;
    order: 2;
  }

  .p-fv .l-inner.l-loop {
    overflow: hidden;
  }

  .p-fv .p-fv__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 5.797vw;
    width: 200vw;
  }

  .p-fv .p-fv__slider {
    animation: scroll-left 60s linear infinite;
  }

  .p-fv .p-fv__slider img {
    height: auto;
    width: 100vw;
  }

  .p-fv .p-fv__subttl {
    font-size: 5.797vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.6666666667;
    order: 3;
    text-align: center;
  }

  .p-like {
    margin-bottom: 11vw;
  }

  /* 背景は上下にフェードするグラデーション（タブまわりは白のまま） */
  .p-like .p-like__con.--tab01 {
    background: linear-gradient(
      180deg,
      rgba(249, 207, 176, 0) 0%,
      rgba(249, 207, 176, 0.88) 42%,
      rgba(249, 207, 176, 0) 100%
    );
  }

  .p-like .p-like__con.--tab02 {
    background: linear-gradient(
      180deg,
      rgba(254, 242, 206, 0) 0%,
      rgba(254, 242, 206, 0.88) 42%,
      rgba(254, 242, 206, 0) 100%
    );
  }

  .p-like .p-like__con-inner {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 12.077vw;
    margin-inline: auto;
    padding-block: 0;
    width: min(95%, 90.3381642512vw);
  }

  .p-like .p-like__con-left {
    margin-bottom: 7.246vw;
    order: 2;
  }

  .p-like .p-like__con-left img {
    height: auto;
    width: 100%;
  }

  .p-like .p-like__con-right {
    display: contents;
  }

  /* 見出しブロック（Future. ＋ 見出し）2026-10-06 */
  .p-like .p-like__head {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-bottom: 8.454vw;
    padding-top: 16vw;
  }

  .p-like .p-like__head-en {
    align-items: center;
    color: #bb823d;
    display: flex;
    font-family: "Times New Roman", Times, serif;
    font-size: 6.4vw;
    font-style: italic;
    gap: 2.4vw;
    justify-content: center;
    letter-spacing: -0.05em;
    line-height: 1.2;
    margin-bottom: 2.667vw;
  }

  .p-like .p-like__head-en-num {
    display: block;
    height: 7.733vw;
    width: auto;
  }

  .p-like .p-like__con-ttl {
    align-items: center;
    display: flex;
    flex-direction: column;
    font-family: "Shippori Mincho", serif;
    font-size: 5.867vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.5;
    text-align: center;
    color: #0a121c;
  }

  .p-like .p-like__con-ttl span {
    background: #fff;
    padding: 2.133vw 5.333vw;
    white-space: nowrap;
  }

  .p-like .p-like__con-ttl br.sp {
    display: none !important;
  }

  .p-like .p-like__con-ttl span:not(:last-child) {
    margin-bottom: 1.6vw;
  }

  .p-like .p-like__con-txt {
    order: 3;
  }

  .p-like .p-like__con-txt p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
    margin-bottom: 7.246vw;
  }

  .p-like .p-like__con-txt p span {
    display: inline-block;
    font-size: 4.831vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin-block: 0.246vw 0;
  }

  .p-like .p-like__con-txt p:last-child {
    margin-bottom: 0;
  }

  .p-like .p-like__bottom-txt {
    font-size: 5.314vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.8181818182;
    margin-bottom: 8.454vw;
    text-align: center;
    color: #262320;
  }

  .p-like .p-like__bottom-txt span {
    display: block;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.5;
  }

  .p-like .p-like__scrolldown {
    animation: scroll 2s infinite;
    background: #a9887c;
    height: 19.324vw;
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: 0.242vw;
    z-index: 10;
  }

  .p-like .p-like__tab-list {
    display: flex;
    flex-direction: column;
    gap: 8.454vw;
    margin-inline: auto;
    position: relative;
    top: -4.831vw;
    width: min(95%, 94.686vw);
    z-index: 1;
  }

  .p-like .js-future-tab-btn {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    align-items: center;
    appearance: none;
    border-radius: 19.324vw;
    display: flex;
    filter: drop-shadow(0 1.932vw 3.865vw rgba(0, 0, 0, 0.15));
    font-family: inherit;
    gap: 3.623vw;
    height: 19.324vw;
    justify-content: center;
    position: relative;
    transition:
      background 0.3s ease,
      border-color 0.3s ease;
    width: 100%;
  }

  .p-like .js-future-tab-btn span {
    font-size: 3.623vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.7;
    color: #262320;
  }

  .p-like .js-future-tab-btn img {
    height: auto;
    width: 2.899vw;
  }

  /* 選択中：オレンジのグラデーション＋白フチ＋下向きのしっぽ */
  .p-like .js-future-tab-btn[aria-selected="true"] {
    background: linear-gradient(180deg, #fff1e7 0%, #fec396 100%);
    border: 1px solid #ffffff;
  }

  /* しっぽの白フチ（::afterのしっぽの下に敷く） */
  .p-like .js-future-tab-btn[aria-selected="true"]::before {
    border-left: 4.106vw solid transparent;
    border-right: 4.106vw solid transparent;
    border-top: 4.106vw solid #ffffff;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
    width: 0;
  }

  .p-like .js-future-tab-btn[aria-selected="true"]::after {
    border-left: 3.623vw solid transparent;
    border-right: 3.623vw solid transparent;
    border-top: 3.623vw solid #fec396;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
    width: 0;
  }

  .p-like .js-future-tab-btn[aria-selected="true"] img {
    display: none;
  }

  /* 選択中（タブ02）：イエローのグラデーション＋下向きのしっぽ */
  .p-like .js-future-tab-btn.--tab02[aria-selected="true"] {
    background: linear-gradient(180deg, #fff9e8 0%, #ffe8a2 100%);
  }

  .p-like .js-future-tab-btn.--tab02[aria-selected="true"]::after {
    border-top-color: #ffe8a2;
  }

  /* 非選択：白地＋金色の枠線＋▼ */
  .p-like .js-future-tab-btn[aria-selected="false"] {
    background: #ffffff;
    border: 1px solid #e9d38f;
  }

  .p-reason {
    background: #f3e0d9;
    margin-bottom: 19.155vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-reason .l-inner.l-reason {
    padding-block: 0 12.077vw;
  }

  .p-reason .p-reason__ttl-wrap {
    align-items: flex-end;
    display: flex;
    gap: 0 3.865vw;
    margin-bottom: 9.246vw;
    margin-inline: auto;
    position: relative;
    top: -2.797vw;
    width: min(95%, 82.1vw);
  }

  .p-reason .p-reason__ttl-wrap .img img {
    height: auto;
    width: 12.319vw;
  }

  .p-reason .p-reason__ttl-wrap h2 {
    font-size: 6.28vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    position: relative;
    top: 3.865vw;
  }

  .p-reason .p-reason__ttl-wrap h2 span {
    display: block;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    margin-block: 3.865vw 0;
    text-align: right;
  }

  .p-reason .p-reason__items {
    display: grid;
    gap: 2.415vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 9.662vw;
    margin-inline: auto;
    width: min(95%, 82.1vw);
  }

  .p-reason .p-reason__item {
    align-items: center;
    background: #ffffff;
    color: #262320;
    display: grid;
    gap: 0 2.5vw;
    grid-template-columns: 10px minmax(0, 1fr);
    padding-block: 3.623vw;
    padding-inline: 4.348vw;
  }

  .p-reason .p-reason__item .mark {
    background: #dfe0d9;
    display: block;
    height: 2.415vw;
    width: 2.415vw;
  }

  .p-reason .p-reason__item .txt {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
  }

  .c-btn__txt {
    font-size: 2.899vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-bottom: 1.932vw;
    text-align: center;
    color: #262320;
  }

  .c-btn {
    margin-inline: auto;
    width: min(95%, 82.1vw);
  }

  .c-btn a {
    align-items: center;
    background: linear-gradient(180deg, #9cb1b0 0%, #597f7e 100%);
    border: 1px solid #fff;
    border-radius: 18.841vw;
    box-shadow: 0 0.749vw 1.498vw 0 rgba(0, 0, 0, 0.15);
    color: #fff;
    display: flex;
    font-size: 3.382vw;
    font-weight: 500;
    height: 14.493vw;
    justify-content: center;
    line-height: 1;
    position: relative;
    text-align: center;
    text-decoration: none;
  }

  .c-btn a::after {
    background: url(../images/index/btn_human.png) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 18.841vw;
    position: absolute;
    right: 6.28vw;
    width: 12.56vw;
  }

  .p-about {
    margin-bottom: -9.662vw;
  }

  .p-about .c-about__ttl {
    font-size: 5.314vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.6;
    margin-bottom: -2vw;
    text-align: center;
    position: relative;
  }

  .p-about .p-about__line {
    margin-bottom: 5vw;
    text-align: center;
  }

  .p-about .p-about__line img {
    height: auto;
    width: 79.227vw;
  }

  .p-about .p-about__txt {
    margin-bottom: 9.662vw;
    text-align: center;
  }

  .p-about .p-about__txt p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
    margin-bottom: 7vw;
  }

  .p-about .p-about__txt p:last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__txt p span {
    font-weight: 700;
  }

  .p-about .p-about__con {
    display: grid;
    gap: 9.662vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 18.217vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-about .p-about__con-left img {
    height: auto;
    width: 100%;
  }

  .p-about .p-about__con-right {
    position: static;
  }

  .p-about .p-about__con-right p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
    margin-bottom: 6.797vw;
  }

  .p-about .p-about__con-right p:last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__con-right p strong {
    font-weight: 700;
  }

  .p-about .p-about__con02 {
    margin-bottom: 13.155vw;
  }

  .p-about .p-about__con02-maru {
    background: #f5f0e6;
    border-radius: 50%;
    height: 45.169vw;
    margin-bottom: -35.816vw;
    margin-inline: auto;
    position: relative;
    width: 45.169vw;
  }

  .p-about .p-about__con02-maru:before {
    background: url(../images/index/about_en.svg) no-repeat center
      center/contain;
    content: "";
    height: 33.816vw;
    position: absolute;
    right: -2.865vw;
    top: -13.077vw;
    width: 33.816vw;
    z-index: 1;
  }

  .p-about .p-about__con02-inner {
    background: #f5f0e6;
    margin-inline: auto;
    padding-block: 9.662vw 0;
    position: relative;
    width: min(95%, 90.3381642512vw);
  }

  .p-about .p-about__con02-inner h3 {
    color: #262320;
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: -2.415vw;
    text-align: center;
  }

  .p-about .p-about__con02-inner .line {
    margin-bottom: 7.662vw;
    text-align: center;
  }

  .p-about .p-about__con02-inner .line img {
    height: auto;
    width: 77.778vw;
  }

  .p-about .p-about__con02-inner .txt {
    margin-bottom: -17.324vw;
    margin-inline: auto;
    text-align: left;
    width: min(95%, 80.4347826087vw);
  }

  .p-about .p-about__con02-inner .txt p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
    margin-bottom: 4.348vw;
  }

  .p-about .p-about__con02-inner .txt p:last-child {
    margin-bottom: 0;
    width: min(95%, 63.768115942vw);
  }

  .p-about .p-about__con02-inner .txt p span {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
  }

  .p-about .p-about__con02-inner .txt p span.bold {
    font-weight: 700;
  }

  .p-about .p-about__con02-inner .txt p span.bold02 {
    font-size: 3.382vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
  }

  .p-about .p-about__con02-inner .img {
    margin-inline: auto;
    text-align: right;
    width: 100%;
  }

  .p-about .p-about__con02-inner .img img {
    height: auto;
    width: 24.879vw;
  }

  .p-about .p-about__bottom-ttl {
    font-size: 4.831vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.7;
    margin-bottom: 9.87vw;
    text-align: center;
  }

  .p-about .p-about__bottom-txt {
    margin-bottom: 16.908vw;
    text-align: center;
  }

  .p-about .p-about__bottom-txt p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.1428571429;
    margin-bottom: 6.662vw;
  }

  .p-about .p-about__bottom-txt p::last-child {
    margin-bottom: 0;
  }

  .p-about .p-about__bottom-txt p span {
    font-size: 4.348vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.6666666667;
  }

  .p-about .p-about__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 3.382vw;
    width: 576.329vw;
  }

  .p-about .p-about__slider {
    animation: scroll-left 60s linear infinite;
  }

  .p-about .p-about__slider img {
    height: auto;
    width: 288.164vw;
  }

  .p-support {
    background: #f5f0e6;
    padding-block: 23.155vw 16.908vw;
  }

  .p-support .l-inner.l-support {
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-support .c-support__ttl {
    font-size: 5.314vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.6;
    margin-bottom: -20.324vw;
    text-align: center;
  }

  .p-support .p-support__img {
    margin-bottom: 8.454vw;
    margin-inline: auto;
    text-align: right;
    width: min(100%, 92.338164vw);
  }

  .p-support .p-support__img img {
    height: auto;
    width: 17.874vw;
  }

  .p-support .p-support__items {
    display: grid;
    gap: 6.039vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 13.077vw;
  }

  .p-support .p-support__item {
    background: #ffffff;
    color: #262320;
    padding-block: 0px 7.729vw;
  }

  .p-support .p-support__item:nth-child(2) {
    background: transparent;
    padding-block: 0;
    text-align: center;
  }

  .p-support .p-support__item:nth-child(2) img {
    height: auto;
    width: 6.28vw;
  }

  .p-support .p-support__item h3 {
    font-size: 3.382vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 4.831vw;
    padding-block: 3vw;
    padding-inline: 7.246vw;
    width: -moz-fit-content;
    width: fit-content;
  }

  .p-support .p-support__item h3.support01 {
    background: #dfe0d9;
  }

  .p-support .p-support__item h3.support02 {
    background: #f3e0d9;
  }

  .p-support .p-support__item p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 2;
    margin-inline: auto;
    width: min(95%, 80.6763285024vw);
  }

  .p-support .p-support__item .list {
    display: grid;
    gap: 2.415vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-block: 8.246vw 2vw;
    width: min(95%, 80.6763285024vw);
    margin-inline: auto;
  }

  .p-support .p-support__item .list li {
    align-items: center;
    border-bottom: 1px solid #e5e5e5;
    display: grid;
    gap: 0 1.865vw;
    grid-template-columns: 10px minmax(0, 1fr);
    padding-block: 0 2.415vw;
  }

  .p-support .p-support__item .list li .mark {
    background: #f3e0d9;
    height: 2.415vw;
    width: 2.415vw;
  }

  .p-support .p-support__item .list li p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
  }

  .p-support .p-support__detail {
    margin-inline: auto;
    width: min(100%, 90.3381642512vw);
  }

  .p-support .p-support__detail h3 {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: 6.246vw;
    text-align: center;
  }

  .p-support .p-support__info {
    border-collapse: collapse;
    width: 100%;
  }

  .p-support .p-support__info-row {
    border-bottom: 1px solid #f5f0e6;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-support .p-support__info-row:last-child {
    border-bottom: none;
  }

  .p-support .p-support__info-row-left {
    background: #dfe0d9;
    font-size: 3.865vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1;
    margin: 0;
    padding: 0;
    padding: 6.696vw 9.662vw;
    text-align: left;
    vertical-align: middle;
    width: 100%;
  }

  .p-support .p-support__info-row-right {
    background: #ffffff;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin: 0;
    padding: 0;
    padding: 4.831vw;
    width: 100%;
  }

  /* CTA（無料説明会） */
  .p-cta {
    margin-bottom: 27.05vw;
    position: relative;
  }

  /* ピンクの背景。下側はベージュパネルが白地に乗る */
  .p-cta::before {
    background: #f3e0d9;
    content: "";
    height: 210.145vw;
    left: 0;
    max-height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
  }

  .p-cta__worry .l-inner.l-cta {
    margin-inline: auto;
    position: relative;
    width: min(95%, 82.126vw);
  }

  .p-cta__main .l-inner.l-cta {
    margin-inline: auto;
    position: relative;
    width: min(95%, 80.676vw);
  }

  .p-cta__worry {
    padding: 15.942vw 0 12.802vw;
    position: relative;
  }

  .p-cta__worry-ttl {
    display: table;
    font-size: 5.314vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.3636363636;
    margin: 0 auto 10.628vw;
    position: relative;
    text-align: center;
  }

  .p-cta__worry-ttl .deco {
    left: 0;
    position: absolute;
    top: -1.208vw;
    width: 3.623vw;
  }

  .p-cta__worry-ttl .illust {
    left: 100%;
    margin-left: 4.348vw;
    position: absolute;
    top: -0.966vw;
    width: 15.217vw;
  }

  .p-cta__worry-list {
    display: flex;
    flex-direction: column;
    gap: 2.415vw;
  }

  .p-cta__worry-list li {
    align-items: center;
    background: #ffffff;
    display: flex;
    font-size: 3.382vw;
    font-weight: 400;
    gap: 2.415vw;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
    padding: 3.623vw 4.348vw;
    white-space: nowrap;
  }

  .p-cta__worry-list li::before {
    background: #dfe0d9;
    content: "";
    flex-shrink: 0;
    height: 2.415vw;
    width: 2.415vw;
  }

  .p-cta__main {
    background: #f5f0e6;
    margin-inline: auto;
    padding: 16.667vw 0 12.077vw;
    position: relative;
    width: min(95%, 92.754vw);
  }

  /* パネル上部の▼の切り込み */
  .p-cta__main::before {
    background: #f3e0d9;
    -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: "";
    height: 7.246vw;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 60.628vw;
  }

  .p-cta__lead {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.5;
    margin-bottom: 1.449vw;
    text-align: center;
  }

  .p-cta__ttl {
    align-items: center;
    display: flex;
    font-size: 5.314vw;
    font-weight: 400;
    gap: 2.415vw;
    justify-content: center;
    letter-spacing: 0em;
    line-height: 1.3;
    margin-bottom: 5.314vw;
  }

  .p-cta__ttl .line {
    flex-shrink: 0;
    width: 7.246vw;
  }

  .p-cta__ttl .line:first-child {
    transform: scaleX(-1);
  }

  .p-cta__box {
    margin-bottom: 7.246vw;
  }

  .p-cta__box + .p-cta__box {
    margin-bottom: 7.005vw;
  }

  .p-cta__box-ttl {
    align-items: center;
    background: #829695;
    color: #ffffff;
    display: flex;
    font-size: 3.865vw;
    font-weight: 400;
    height: 10.87vw;
    justify-content: center;
    letter-spacing: 0em;
    line-height: 1.3;
  }

  .p-cta__box-con {
    background: #ffffff;
    padding: 4.831vw 4.106vw;
  }

  .p-cta__contents {
    display: flex;
    flex-direction: column;
    gap: 2.415vw;
  }

  .p-cta__contents li {
    align-items: center;
    background: #f5f0e6;
    display: flex;
    gap: 3.623vw;
    min-height: 17.633vw;
    padding: 3.623vw 4.831vw;
  }

  .p-cta__contents li .icon {
    align-items: center;
    background: #ffffff;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    height: 9.179vw;
    justify-content: center;
    width: 9.179vw;
  }

  .p-cta__contents li .icon img {
    height: auto;
    width: 5.314vw;
  }

  .p-cta__contents li:nth-child(2) .icon img {
    width: 6.522vw;
  }

  .p-cta__contents li:nth-child(4) .icon img {
    width: 6.039vw;
  }

  .p-cta__contents li:nth-child(5) .icon img {
    width: 5.556vw;
  }

  .p-cta__contents li p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
  }

  .p-cta__speakers {
    display: flex;
    flex-wrap: wrap;
    gap: 7.246vw 2.899vw;
  }

  .p-cta__speakers li {
    width: calc((100% - 2.899vw) / 2);
  }

  .p-cta__speakers li.--founder {
    width: 100%;
  }

  .p-cta__speakers li .img {
    margin-bottom: 2.415vw;
  }

  .p-cta__speakers li .img img {
    display: block;
    height: auto;
    width: 100%;
  }

  .p-cta__speakers li .role {
    font-size: 2.899vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.3;
  }

  .p-cta__speakers li.--founder .role {
    font-size: 3.382vw;
    line-height: 1.5;
    margin-bottom: 1.208vw;
  }

  .p-cta__speakers li .name {
    font-size: 4.831vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-cta__speakers li.--founder .name {
    font-size: 6.28vw;
    line-height: 1.3;
  }

  .p-cta__info {
    margin-bottom: 4.831vw;
  }

  .p-cta__info .row {
    align-items: center;
    background-image: linear-gradient(to right, #b2b3ac 0.483vw, transparent 0.483vw);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 0.966vw 1px;
    display: flex;
    font-size: 2.899vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.3;
    min-height: 8.937vw;
    padding-left: 3.14vw;
  }

  .p-cta__info dt {
    flex-shrink: 0;
    width: 18.116vw;
  }

  .p-cta__info .num {
    font-size: 4.348vw;
    line-height: 0;
  }

  .p-cta .c-btn {
    position: relative;
    width: 100%;
  }

  .c-btn__free {
    align-items: center;
    background: #ffffff;
    border: 1px solid #7d9998;
    border-radius: 50%;
    color: #7d9998;
    display: flex;
    flex-direction: column;
    font-size: 2.095vw;
    font-weight: 500;
    height: 14.734vw;
    justify-content: center;
    left: 6.28vw;
    letter-spacing: 0.03em;
    line-height: 1.9;
    position: absolute;
    top: -5.072vw;
    width: 14.734vw;
  }

  .c-btn__free span {
    font-size: 3.619vw;
    line-height: 1.3;
  }
  .p-tutor {
    margin-bottom: 24.662vw;
  }

  .p-tutor .p-tutor__items {
    display: grid;
    gap: 14.493vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-tutor .p-tutor__item .con {
    align-items: flex-end;
    display: grid;
    gap: 0 6.039vw;
    grid-template-columns: 36.2vw minmax(0, 1fr);
    margin-bottom: 7.662vw;
  }

  .p-tutor .p-tutor__item .con-img img {
    height: 41.063vw;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .p-tutor .p-tutor__item .con-right p.teach {
    color: #829695;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 2.899vw;
  }

  .p-tutor .p-tutor__item .con-right p.name {
    font-size: 3.865vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 0px;
    color: #262320;
  }

  .p-tutor .p-tutor__item .con-right h3 {
    color: #262320;
    font-size: 6.28vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    color: #262320;
  }

  /* 講師のキャッチ（推しポイント） */
  .p-tutor .p-tutor__item .con-right p.catch {
    border-top: 1px solid #e0d5c4;
    color: #bb823d;
    font-size: 3.14vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-top: 3.382vw;
    padding-top: 2.899vw;
  }

  .p-tutor .p-tutor__item .txt p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7142857143;
    margin-bottom: 5.797vw;
  }

  .p-tutor .p-tutor__item .txt p:last-child {
    margin-bottom: 0;
  }

  .c-sec__en {
    margin-bottom: 3.174vw;
    text-align: center;
  }

  .c-sec__en img {
    height: auto;
    width: 13.043vw;
  }

  .c-sec__ttl.--tutor {
    margin-bottom: 11.662vw;
  }

  .c-sec__ttl {
    font-size: 7.246vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1;
    text-align: center;
  }

  .p-course {
    background: #f5f0e6;
  }

  .p-course .l-inner.l-course {
    padding-block: 11.493vw 19.739vw;
  }

  .p-course .c-sec__ttl.--course {
    margin-bottom: 9.662vw;
  }

  .p-course .p-course__items {
    display: grid;
    gap: 9.662vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 16.908vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-course .p-course__item .top {
    background: #829695;
    padding-block: 3.415vw;
    text-align: center;
  }

  .p-course .p-course__item .top img {
    height: auto;
    width: 19.565vw;
  }

  .p-course .p-course__item .bottom {
    background: #ffffff;
    padding-block: 7.246vw 14.493vw;
  }

  .p-course .p-course__item .bottom.--course02 {
    padding-block: 7.246vw 9.662vw;
  }

  .p-course .p-course__item .bottom-inner {
    margin-inline: auto;
    width: min(95%, 82.1vw);
  }

  .p-course .p-course__item .bottom-inner h3 {
    border-bottom: 1px solid #0a121c;
    color: #262320;
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 5.246vw;
    padding-block: 0 3.797vw;
    text-align: center;
  }

  .p-course .p-course__item .bottom-inner h3 .sub {
    font-size: 3.865vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-course .p-course__item .bottom-inner p.target {
    color: #262320;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: 3.831vw;
  }

  .p-course .p-course__item .bottom-inner p.txt {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 2;
    margin-bottom: 4.831vw;
  }

  .p-course .p-course__item .price {
    color: #262320;
    font-size: 2.899vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.4;
    margin-bottom: 0.932vw;
    padding-block: 3.623vw 0.415vw;
    padding-inline: 0;
  }

  .p-course .p-course__item .price.--course02 {
    margin-block: 0;
    border-top: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
    padding-block: 2vw;
  }

  .p-course .p-course__item .price span.price-name {
    font-size: 3.865vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-course .p-course__item .price span.price-num {
    color: #bb823d;
    display: inline-block;
    font-size: 8.213vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-inline: 0.966vw;
  }

  .p-course .p-course__item .price span.price-unit {
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0.0211111111em;
    line-height: 1.5;
  }

  .p-course .p-course__item .price-txt {
    border-bottom: 1px solid #c1c1c1;
    font-size: 2.899vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 4.246vw;
    padding-block: 0 2.797vw;
    padding-inline: 0;
    color: #262320;
  }

  /* COURSE.02: 特典 → 価格 の順（AUN LP02 No.19） */
  .p-course .p-course__item .bottom-inner p.target.--course02 {
    border-bottom: 1px solid #c1c1c1;
    margin-bottom: 4.246vw;
    padding-bottom: 3.831vw;
  }

  .p-course .p-course__item .bottom.--course02 .list {
    margin-bottom: 4.246vw;
  }

  /* COURSE.01: 特典の相当額＋総額（AUN LP02 No.20 / カンプ KMJ説明会_20260922） */
  .p-course .p-course__item .list.--value {
    margin-bottom: 2.415vw;
  }

  .p-course .p-course__item .list.--value li,
  .p-course .p-course__item .list.--value li:nth-child(7),
  .p-course .p-course__item .list.--value li:nth-child(8) {
    align-content: start;
    align-items: start;
    gap: 1.932vw 4.831vw;
    grid-template-columns: 9.179vw minmax(0, 1fr);
    grid-template-rows: auto 1fr;
    padding-block: 4.831vw;
    padding-inline: 4.831vw;
  }

  .p-course .p-course__item .list.--value li .icon {
    grid-row: 1 / 3;
    height: 9.179vw;
    position: relative;
    top: 0.725vw;
  }

  .p-course .p-course__item .list li p.value {
    color: #bb823d;
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.2222222222;
  }

  .p-course .p-course__item .bracket {
    border: solid #c1c1c1;
    border-width: 0 0.966vw 0.966vw;
    height: 10.628vw;
    margin-bottom: 11.111vw;
    margin-inline: -0.483vw;
    position: relative;
  }

  .p-course .p-course__item .bracket::after {
    background: #c1c1c1;
    content: "";
    height: 8.696vw;
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
    width: 0.966vw;
  }

  .p-course .p-course__item .total {
    color: #262320;
    font-size: 4.348vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 2.415vw;
    text-align: center;
  }

  .p-course .p-course__item .price-area {
    align-items: center;
    display: flex;
    flex-direction: column;
  }

  .p-course .p-course__item .price-was {
    align-items: center;
    background: #d9d9d9;
    color: #262320;
    display: flex;
    font-size: 3.865vw;
    font-weight: 500;
    height: 13.527vw;
    justify-content: center;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 7.246vw;
    position: relative;
    text-decoration: line-through;
    width: 76.812vw;
  }

  .p-course .p-course__item .price-was::after {
    border-color: #d9d9d9 transparent transparent;
    border-style: solid;
    border-width: 4.831vw 4.184vw 0;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
  }

  .p-course .p-course__item .price.--course01 {
    line-height: 1.3;
    margin-bottom: 2.415vw;
    padding: 0;
    text-align: center;
  }

  .p-course .p-course__item .price.--course01 span.price-num {
    line-height: 1.3;
  }

  .p-course .p-course__item .price.--course01 span.price-num.--early {
    font-size: 8.696vw;
  }

  .p-course .p-course__item .price-txt.--course01 {
    border-bottom: none;
    font-size: 2.657vw;
    margin-bottom: 0;
    padding: 0;
    text-align: center;
  }

  .p-course .p-course__item .list {
    display: grid;
    gap: 1.415vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-course .p-course__item .list li {
    background: #f5f0e6;
    display: grid;
    gap: 0 5.382vw;
    grid-template-columns: 7.24vw minmax(0, 1fr);
    padding-block: 5.314vw;
    padding-inline: 4.831vw 4.831vw;
    align-items: center;
  }

  .p-course .p-course__item .list li:nth-child(7),
  .p-course .p-course__item .list li:nth-child(8) {
    align-items: center;
  }

  .p-course .p-course__item .list li .icon {
    align-items: center;
    aspect-ratio: 1/1;
    background: #ffffff;
    border-radius: 50%;
    display: grid;
    height: 7.24vw;
    justify-items: center;
    place-items: center;
    width: 100%;
  }

  .p-course .p-course__item .list li p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5714285714;
    color: #262320;
  }

  .p-course .p-course__benfit {
    margin-bottom: 9.662vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-course .p-course__benfit h3 {
    font-size: 5.314vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.3636363636;
    margin-bottom: 4.831vw;
    margin-inline: auto;
    padding-inline: 0px;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
  }

  .p-course .p-course__benfit h3:before {
    background: url(../images/index/course_line.svg) no-repeat center
      center/contain;
    bottom: 1vw;
    content: "";
    height: 13.043vw;
    left: -10.797vw;
    position: absolute;
    width: 9.903vw;
  }

  .p-course .p-course__benfit h3::after {
    background: url(../images/index/course_line.svg) no-repeat center
      center/contain;
    bottom: 1vw;
    content: "";
    height: 13.043vw;
    position: absolute;
    right: -9.797vw;
    transform: scale(-1, 1);
    width: 9.903vw;
  }

  .p-course .p-course__benfit h3 span {
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.6666666667;
  }

  .p-course .p-course__benfit .con {
    margin-inline: auto;
    width: min(100%, 90.338164vw);
  }

  .p-course .p-course__benfit .top {
    background: #dfe0d9;
    padding-block: 2.415vw;
    text-align: center;
  }

  .p-course .p-course__benfit .top img {
    height: auto;
    width: 13.768vw;
  }

  .p-course .p-course__benfit .bottom {
    background: #fff;
    padding-block: 5.831vw 9.662vw;
  }

  .p-course .p-course__benfit .bottom p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: 8.246vw;
    margin-inline: auto;
    width: min(95%, 82.1vw);
  }

  .p-course .p-course__benfit .bottom .list {
    align-items: center;
    display: grid;
    gap: 2.415vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 82.1vw);
  }

  .p-course .p-course__benfit .bottom .list li {
    align-items: start;
    border-bottom: 1px solid #e5e5e5;
    display: grid;
    gap: 0 1.865vw;
    grid-template-columns: 10px minmax(0, 1fr);
    padding-block: 0 2.415vw;
  }

  .p-course .p-course__benfit .bottom .list li .mark {
    background: #dfe0d9;
    height: 2.415vw;
    position: relative;
    top: 2.415vw;
    width: 2.415vw;
    top: 2vw;
  }

  .p-course .p-course__benfit .bottom .list li p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.7142857143;
    margin-bottom: 0;
  }

  .c-sec__txt {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    margin-bottom: -35.783vw;
    text-align: center;
    color: #262320;
  }

  .p-simulation {
    background: #f5f0e6;
    margin-bottom: 18.155vw;
  }

  .p-simulation .l-inner.l-simulation {
    padding-block: 0 14.077vw;
  }

  .p-simulation .c-sec__en.--simulation img {
    height: auto;
    width: 23.671vw;
  }

  .p-simulation .c-sec__ttl.--simulation {
    font-size: 5.314vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.3636363636;
    margin-bottom: 4.831vw;
  }

  .p-simulation .p-simulation__img {
    margin-bottom: 27.155vw;
    margin-inline: auto;
    width: min(95%, 94.6859903382vw);
  }

  .p-simulation .p-simulation__img img {
    height: auto;
    width: 15.7vw;
  }

  .p-simulation .p-simulation__items {
    display: grid;
    gap: 4.589vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 4.831vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-simulation .p-simulation__item {
    display: block;
  }

  .p-simulation .p-simulation__item .top.--simulation01 {
    background: #dfe0d9;
  }

  .p-simulation .p-simulation__item .top.--simulation02 {
    background: #f3e0d9;
  }

  .p-simulation .p-simulation__item .top.--simulation03 {
    background: #b0d0cb;
  }

  .p-simulation .p-simulation__item .top p {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    padding-block: 4.314vw;
    text-align: center;
  }

  .p-simulation .p-simulation__item .bottom {
    background: #fff;
    padding-block: 2.797vw;
  }

  .p-simulation .p-simulation__item .bottom p {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.75;
    text-align: center;
  }

  .p-simulation .p-simulation__item .bottom p span {
    color: #bb823d;
    font-size: 11.111vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.9;
  }

  .p-simulation .p-simulation__note {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-inline: auto;
    text-align: left;
    width: min(95%, 90.3381642512vw);
    color: #262320;
  }

  .p-simulation .p-simulation__note a {
    -webkit-text-decoration: underline;
    text-decoration: underline;
    color: #262320;
  }

  .p-overview {
    margin-bottom: 13.527vw;
  }

  .p-overview .c-sec__en.--overview img {
    width: 26vw;
    height: auto;
  }

  .p-overview .c-sec__ttl.--overview {
    margin-bottom: 4.831vw;
  }

  .p-overview .c-sec__txt {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7142857143;
    margin-bottom: 7.246vw;
  }

  .p-overview .p-overview__items {
    display: grid;
    gap: 13.043vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 6.662vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-overview .p-overview__item {
    display: grid;
    position: relative;
  }

  .p-overview .p-overview__item::after {
    content: "";
    position: absolute;
    background: url(../images/index/overview_triangle_sp.svg) no-repeat center
      center / contain;
    width: 11.1vw;
    height: 6.28vw;
    left: 50%;
    transform: translateX(-50%);
    bottom: -11vw;
  }

  .p-overview .p-overview__item:last-of-type::after {
    content: none;
  }

  .p-overview .p-overview__item .day {
    margin-bottom: -13.87vw;
    position: relative;
    text-align: center;
  }

  .p-overview .p-overview__item .day img {
    height: auto;
    width: 21.739vw;
  }

  .p-overview .p-overview__item .box {
    border: 1px solid #cfcfcf;
    border-radius: 2.415vw;
    display: grid;
    display: block grid;
    grid-row: span 6;
    grid-template-rows: subgrid;
    padding-block: 22.222vw 1.662vw;
  }

  .p-overview .p-overview__item .box h3 {
    font-size: 4.831vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.6;
    margin-bottom: 2.415vw;
    text-align: center;
  }

  .p-overview .p-overview__item .box h4 {
    color: #262320;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-bottom: 4.831vw;
    text-align: center;
  }

  .p-overview .p-overview__item .img {
    margin-bottom: 4.106vw;
    text-align: center;
  }

  .p-overview .p-overview__item .img img {
    height: auto;
    width: 76.3vw;
  }

  .p-overview .p-overview__item p {
    color: #262320;
    font-size: 4.348vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5555555556;
    margin-bottom: 2.415vw;
    text-align: center;
  }

  .p-overview .p-overview__item .list {
    display: grid;
    gap: 0.966vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 76.3285024155vw);
  }

  .p-overview .p-overview__item .list li {
    align-items: center;
    display: grid;
    gap: 0 2.657vw;
    grid-template-columns: 5.6vw minmax(0, 1fr);
  }

  .p-overview .p-overview__item .list li span img {
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__item .list li p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 2;
    margin-bottom: 0;
    text-align: left;
  }

  .p-overview .p-overview__item .etc {
    color: #262320;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-inline: auto;
    text-align: right;
    width: min(95%, 76.3285024155vw);
  }

  .p-overview .p-overview__ready {
    margin-bottom: 14.155vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-overview .p-overview__ready .top {
    background: #f3e0d9;
    font-size: 3.381vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.5555555556;
    padding-block: 3.415vw;
    text-align: center;
  }

  .p-overview .p-overview__ready .txt {
    padding-block: 0.2vw 0;
  }

  .p-overview .p-overview__ready .txt p {
    font-size: 3.14vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.1538461538;
    margin-bottom: 0.4vw;
    background: #f6f6f6;
    padding-inline: 5vw;
    padding-block: 1vw;
  }

  .p-overview .p-overview__ready .txt p:last-child:last-child {
    margin-bottom: 0;
    padding-block: 2vw;
  }

  .p-overview .p-overflow__flow {
    background: #faf7f5;
    width: 100%;
  }

  .p-overview .p-overview__flow-inner {
    margin-inline: auto;
    padding-block: 7.662vw 13.662vw;
    position: relative;
    width: min(95%, 90.3381642512vw);
  }

  .p-overview .p-overview__flow-inner h3 {
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.7777777778;
    margin-bottom: 9.662vw;
    text-align: center;
  }

  .p-overview .p-overview__flow-items {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 3.5vw 0;
  }

  .p-overview .p-overview__flow-items > .p-overview__flow-item::before {
    border-left: 1px dashed #a2a39b;
    bottom: -3.5vw;
    content: "";
    left: 4.831vw;
    position: absolute;
    top: 0;
  }

  .p-overview .p-overview__flow-items > .p-overview__flow-item:first-child::before {
    top: 4.831vw;
  }

  .p-overview .p-overview__flow-items > .p-overview__flow-item:last-child::before {
    bottom: auto;
    height: 4.831vw;
  }

  .p-overview .p-overview__flow-item {
    display: grid;
    gap: 0 2.865vw;
    grid-template-columns: 40px minmax(0, 1fr);
    position: relative;
  }

  /* STEPが付かない先頭行 */
  .p-overview .p-overview__flow-item.--lead {
    margin-bottom: 3.5vw;
  }

  .p-overview .p-overview__flow-item.--lead .con {
    grid-column: 2/3;
  }

  .p-overview .p-overview__flow-item p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7;
    position: relative;
    top: 2vw;
  }

  .p-overview .p-overview__flow-item .step {
    position: relative;
    z-index: 1;
  }

  .p-overview .p-overview__flow-item .step img {
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__flow-item .icon img {
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__flow-item .con-top {
    align-items: start;
    gap: 0 3.5vw;
    grid-template-columns: 40px minmax(0, 1fr);
    display: grid;
  }

  .p-overview .p-overview__flow-item .accent {
    color: #bb823d;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.02625em;
    line-height: 1.4875;
  }

  .p-overview .p-overview__flow-item .line {
    display: block;
    margin-top: 5.865vw;
  }

  .p-overview .p-overview__flow-item .line img {
    display: block;
    height: auto;
    width: 100%;
  }

  .p-overview .p-overview__flow-item .note {
    color: #626262;
    font-size: 2.899vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-top: 3.415vw;
    grid-column: 2/3;
  }

  .p-experience {
    background: #f3e0d9;
  }

  .p-experience .l-inner.l-experience {
    padding-block: 17.874vw 14.493vw;
  }

  .p-experience .c-sec__en {
    margin-bottom: 2.729vw;
  }

  .p-experience .c-sec__en img {
    height: auto;
    width: 29.71vw;
  }

  .p-experience .c-sec__ttl {
    font-size: 5.797vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.5;
    margin-bottom: 4.696vw;
    margin-inline: auto;
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
  }

  .p-experience .c-sec__ttl:before {
    background: url(../images/index/experience_line.svg) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 23.43vw;
    left: -10.077vw;
    position: absolute;
    width: 8.454vw;
  }

  .p-experience .c-sec__ttl::after {
    background: url(../images/index/experience_line.svg) no-repeat center
      center/contain;
    bottom: 0;
    content: "";
    height: 23.43vw;
    position: absolute;
    right: -10.077vw;
    width: 8.454vw;
    transform: scale(-1, 1);
  }

  .p-experience .p-experience__items {
    display: grid;
    gap: 2.5vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 16.908vw;
    margin-inline: auto;
    width: min(95%, 90.0966183575vw);
  }

  .p-experience .p-experience__item {
    background: #fff;
    border-radius: 1.578vw;
    padding-block: 2.8vw;
    text-align: center;
  }

  .p-experience .p-experience__item .num {
    color: #bb823d;
    font-size: 7.246vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.35;
  }

  .p-experience .p-experience__item .unit {
    color: #bb823d;
    font-size: 5.797vw;
    font-weight: 400;
    letter-spacing: 0.025em;
    line-height: 1.5;
  }

  .p-experience .p-experience__item p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-block: 0.382vw 0;
  }

  .p-experience .p-experience__history {
    margin-bottom: 6.077vw;
  }

  .p-experience .p-experience__history h3 {
    color: #262320;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5;
    margin-bottom: 2.382vw;
    text-align: center;
  }

  .p-experience .p-experience__history-items {
    border-top: 1px solid #ffffff;
    display: grid;
    gap: 4.831vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    padding-block: 5.831vw;
    position: relative;
    width: min(95%, 90.3381642512vw);
  }

  .p-experience .p-experience__history-item {
    align-items: flex-start;
    border-bottom: 1px solid #ffffff;
    display: grid;
    gap: 0 2.831vw;
    grid-template-columns: 8.4vw 2.4vw minmax(0, 1fr);
    padding-block: 0 4.5vw;
    position: relative;
  }

  .p-experience .p-experience__history-item:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 2.415vw;
    left: 12.493vw;
    height: calc(100% + 4.831vw);
    border-left: 1px solid #829695;
  }

  .p-experience .p-experience__history-item .year {
    color: #262320;
    display: inline-block;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.5;
  }

  .p-experience .p-experience__history-item .icon {
    background: #829695;
    border-radius: 50%;
    display: block;
    display: inline-block;
    height: 2.657vw;
    margin-inline: 0px 20.531vw;
    position: relative;
    top: 2.415vw;
    width: 2.657vw;
    z-index: 10;
  }

  .p-experience .p-experience__history-item .txt p {
    color: #262320;
    font-size: 3.382vw;
    font-weight: 400;
    line-height: 6.28vw;
    letter-spacing: 0.101vw;
  }

  .p-experience .p-experience__history-item p.bottom {
    margin-block: 7vw 0;
  }

  .p-experience .p-experience__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 7.971vw;
    width: 1396.135vw;
  }

  .p-experience .p-experience__slider {
    animation: scroll-left 60s linear infinite;
  }

  .p-experience .p-experience__slider img {
    height: auto;
    width: 349.034vw;
  }

  .p-voice {
    background: #f3e0d9;
    margin-bottom: 18.077vw;
    padding-block: 0 12.077vw;
  }

  .p-voice .l-inner.l-voice {
    background: #f7ece8;
    margin-inline: auto;
    padding-block: 13.246vw 8.246vw;
    width: min(95%, 90.3381642512vw);
  }

  .p-voice .c-sec__en img {
    height: auto;
    width: 11.836vw;
  }

  .p-voice .c-sec__ttl {
    margin-bottom: 11.87vw;
    line-height: 1.4;
  }

  .p-voice .p-voice__items {
    display: grid;
    gap: 10.662vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 84.5410628019vw);
  }

  .p-voice .p-voice__item {
    display: block;
  }

  .p-voice .p-voice__item .img img {
    height: auto;
    width: 100%;
  }

  .p-voice .p-voice__item .box {
    background: #fffefa;
    padding-block: 5.797vw;
  }

  .p-voice .p-voice__item .box-inner {
    margin-inline: auto;
    width: min(95%, 72.9468599034vw);
    color: #262320;
  }

  .p-voice .p-voice__item .box-inner h3 {
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 1.449vw;
  }

  /* 活動状況（主婦をしながら／専業として など） */
  .p-voice .p-voice__item .box-inner .status {
    color: #8b7f76;
    font-size: 3.14vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
    margin-bottom: 3.865vw;
  }

  .p-voice .p-voice__item .list {
    display: grid;
    gap: 3.865vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-block: 0 2vw;
  }

  .p-voice .p-voice__item .list li {
    border-bottom: 1px solid #d9d9d9;
    color: #262320;
    font-size: 3.4vw;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1.7;
    padding-block: 0 3.932vw;
  }

  .p-voice .p-voice__item .data {
    display: grid;
    gap: 2.865vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-voice .p-voice__item .data .data-item {
    border-bottom: 1px solid #d9d9d9;
    padding-block: 0 1.932vw;
  }

  .p-voice .p-voice__item .data dt {
    color: #262320;
    font-size: 3.14vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.65;
  }

  .p-voice .p-voice__item .data dd {
    color: #262320;
    font-size: 3.14vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.65;
  }

  .p-voice .p-voice__item .txt {
    color: #262320;
    font-size: 2.899vw;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.9;
    margin-bottom: 3.865vw;
  }

  .p-story {
    margin-bottom: 19.324vw;
  }

  .p-story .p-story__con {
    display: grid;
    gap: 9.662vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 5.077vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-story .p-story__con-left {
    color: #262320;
    display: contents;
  }

  .p-story .p-story__con-left p {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.125;
    margin-bottom: 7.662vw;
  }

  .p-story .p-story__con-left p span {
    font-size: 4.831vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.9;
  }

  .p-story .p-story__con-left p.last-child {
    margin-bottom: 0;
  }

  .p-story .p-story__con-left .txt01 {
    margin-bottom: -6.923vw;
    order: 1;
  }

  .p-story .p-story__con-left .txt02 {
    order: 3;
  }

  .p-story .p-story__con-left .txt02 p.top {
    margin-bottom: 2.5vw;
  }

  .p-story .p-story__con-left .txt02 p {
    margin-bottom: 8.662vw;
  }

  .p-story .p-story__con-right {
    margin-bottom: 0.662vw;
    order: 2;
    position: static;
  }

  .p-story .p-story__con-right:before {
    content: none;
  }

  .p-story .p-story__con-right img {
    height: auto;
    width: 100%;
  }

  .p-story .p-story__txt {
    font-size: 4.831vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1;
    margin-bottom: 3.623vw;
    text-align: center;
  }

  .p-story .p-story__txt02 {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.125;
    margin-bottom: 7.831vw;
    text-align: center;
  }

  .p-story .p-story__img {
    margin-bottom: 7.077vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-story .p-story__img img {
    height: auto;
    width: 100%;
  }

  .p-story .p-story__txt03 {
    margin-bottom: 10.831vw;
    text-align: center;
  }

  .p-story .p-story__txt03 p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
  }

  .p-story .p-story__txt03 p span {
    display: inline-block;
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.8888888889;
    margin-bottom: 4.831vw;
  }

  .p-story .p-story__txt03 p.top {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.8571428571;
    margin-bottom: 2.415vw;
  }

  .p-story .p-story__scrolldown {
    animation: scroll 2s infinite;
    background: #a9887c;
    height: 19.324vw;
    left: 50%;
    margin-bottom: -9.662vw;
    position: relative;
    transform: translateX(-50%);
    width: 0.242vw;
    z-index: 10;
  }

  .p-story .p-story__loop {
    background: url(../images/index/story_bg_sp.jpg) no-repeat top center/cover;
    margin-inline: auto;
    max-width: 100%;
    width: 100%;
    padding-block: 14vw 21vw;
  }

  .p-story .p-story__loop-txt {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin-bottom: 4.831vw;
    text-align: center;
  }

  .p-story .p-story__loop-txt02 {
    font-size: 4.831vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.8;
    margin-bottom: 10.077vw;
    text-align: center;
  }

  .p-story .p-story__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0;
    width: max-content;
  }

  .p-story .p-story__slider {
    animation: scroll-left 60s linear infinite;
    flex-shrink: 0;
    padding-right: 5.39vw;
  }

  .p-story .p-story__slider img {
    height: auto;
    width: 298.551vw;
  }

  .p-faq {
    margin-bottom: 19.324vw;
  }

  .p-faq .l-inner.l-faq {
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-faq .c-sec__en {
    margin-bottom: 2.415vw;
    text-align: center;
  }

  .p-faq .c-sec__en img {
    height: auto;
    width: 9.662vw;
  }

  .p-faq .c-sec__ttl {
    margin-bottom: 9.662vw;
    font-size: 11.594vw;
  }

  .p-faq .p-faq__box {
    display: grid;
    gap: 4.5vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .p-faq summary {
    display: block;
  }

  .p-faq summary::-webkit-details-marker {
    display: none;
  }

  .p-faq .p-faq__qu {
    position: relative;
    display: block;
  }

  .p-faq .p-faq__qu::before,
  .p-faq .p-faq__qu::after {
    background: #ffffff;
    content: "";
    position: absolute;
    top: 50%;
    translate: 0 -50%;
  }

  .p-faq .p-faq__qu::before {
    height: 0.242vw;
    right: 1.657vw;
    width: 5.797vw;
  }

  .p-faq .p-faq__qu::after {
    height: 5.797vw;
    right: 4.4vw;
    transition: rotate 0.3s ease;
    width: 0.242vw;
  }

  .p-faq details[open] .p-faq__qu::after {
    rotate: 90deg;
  }

  .p-faq .p-faq__item[open] .p-faq__an {
    animation: fadeIn 0.5s ease;
  }

  .p-faq .p-faq__qu-txt {
    background: #829695;
    display: block;
    font-size: 3.382vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 2;
    padding-block: 4vw;
    padding-inline: 14.734vw 9.903vw;
    color: #fff;
  }

  .p-faq .p-faq__qu-txt::before {
    background: url(../images/index/faq_qu.svg) no-repeat center center/contain;
    content: "";
    height: 9.42vw;
    left: 3.314vw;
    position: absolute;
    top: 12.865vw;
    translate: 0 0%;
    width: 7.246vw;
    top: 50%;
    transform: translateY(-50%);
  }

  .p-faq__an-txt {
    display: block;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    padding-block: 5.797vw;
    padding-inline: 14.734vw 4.106vw;
    position: relative;
    background: #f6f6f6;
  }

  .p-faq__an-txt:nth-child(2) {
    padding-block: 1.797vw 5.797vw;
  }

  .p-faq__an-txt:first-child {
    position: relative;
  }

  .p-faq__an-txt:first-child::before {
    background: url(../images/index/faq_an.svg) no-repeat center center/contain;
    content: "";
    height: 9.42vw;
    left: 3.797vw;
    position: absolute;
    top: 5.657vw;
    width: 7.246vw;
  }

  .p-bottom {
    background: #f5f0e6;
    margin-bottom: 15.324vw;
  }

  .p-bottom .l-inner.l-bottom {
    padding-block: 12.077vw 13.493vw;
  }

  .p-bottom .p-bottom__con {
    display: grid;
    gap: 4.831vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 7.246vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-bottom .p-bottom__con-left {
    display: contents;
  }

  .p-bottom .p-bottom__con-left h2 {
    font-size: 5.314vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.8181818182;
    margin-bottom: 0px;
    order: 1;
  }

  .p-bottom .p-bottom__con-left .txt {
    order: 3;
  }

  .p-bottom .p-bottom__con-left .txt p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2.1428571429;
    margin-bottom: 7.797vw;
  }

  .p-bottom .p-bottom__con-left .txt p span {
    font-weight: 700;
  }

  .p-bottom .p-bottom__con-left .txt p:last-child {
    margin-bottom: 0;
  }

  .p-bottom .p-bottom__con-right {
    order: 2;
  }

  .p-bottom .p-bottom__con-right img {
    height: auto;
    width: 100%;
  }

  .p-bottom .p-bottom__txt {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.8571428571;
    margin-bottom: 7.246vw;
    text-align: center;
  }

  .p-bottom .p-bottom__txt02 {
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.8888888889;
    text-align: center;
  }

  .p-bottom .p-bottom__txt02 span {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    display: inline-block;
    margin-block: 4vw 0;
  }

  .p-message {
    margin-bottom: 24.155vw;
  }

  .p-message .c-sec__en img {
    height: auto;
    width: 22.705vw;
  }

  .p-message .c-sec__ttl {
    font-size: 5.797vw;
    margin-block: 0 19vw;
  }

  .p-message .p-message__lead {
    margin-bottom: 12.077vw;
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-message .p-message__lead-ttl {
    font-size: 4.348vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 2;
    margin-bottom: 6.459vw;
    text-align: center;
  }

  .p-message .p-message__lead-txt p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 1.8571428571;
    margin-bottom: 6.797vw;
    text-align: left;
  }

  .p-message .p-message__lead-txt p:last-child {
    margin-bottom: 0;
  }

  .p-message .p-message__con {
    display: grid;
    gap: 9.662vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 90.3381642512vw);
  }

  .p-message .p-message__con-left img {
    height: auto;
    width: 100%;
  }

  .p-message .p-message__con-right p {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0em;
    line-height: 2;
    margin-bottom: 8.797vw;
  }

  .p-message .p-message__con-right p:last-child {
    margin-bottom: 0;
  }

  .p-message .p-message__con-right .p-message__signature {
    font-size: 4.831vw;
    font-weight: 500;
    letter-spacing: 0em;
    line-height: 1.6;
    margin-block: 9.662vw 0;
    text-align: right;
  }
}

/* 募集要項：定員の下の注記（さりげなく小さめ・薄め）2026-09-30 */
@media screen and (min-width: 768px), print {
  .p-support .p-support__info-note {
    font-size: 14px;
    line-height: 1.7142857143;
    letter-spacing: 0.05em;
    line-break: strict;
    color: #6e645c;
  }
  .p-support .p-support__info-note-br {
    display: none; /* PCは改行しない（タブレット・SPで改行） */
  }
}
/* タブレット（768〜1024px）：少し小さくし、1文目の後で改行して「い。」だけの行が出ないように */
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .p-support .p-support__info-note {
    font-size: 13px;
    line-height: 1.7692307692;
  }
  .p-support .p-support__info-note-br {
    display: inline;
  }
}
@media screen and (max-width: 767px) {
  .p-support .p-support__info-note {
    font-size: 3.14vw;
    line-height: 1.8;
    letter-spacing: 0.02em;
    line-break: strict;
    color: #6e645c;
  }
}

/* Future. 見出し：1199px以下は 1200px時の大きさを vw で縮小（見出しが写真・本文に重ならないように） 2026-10-06 */
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .p-like .p-like__head {
    top: 0.938vw;
  }

  .p-like .p-like__head-en {
    font-size: 2.583vw;
    gap: 0.75vw;
    margin-bottom: 0.833vw;
  }

  .p-like .p-like__head-en-num {
    height: 3.583vw;
  }

  .p-like .p-like__con-ttl {
    font-size: 2.667vw;
    padding: 1.167vw 3.333vw;
    width: 62vw;
  }
}

/* 2026.10 1299px以下は、写真の上の段がタイトル（Future. と白い帯）と重なるので、写真をタイトルの下まで下げる */
@media screen and (min-width: 768px) and (max-width: 1299px) {
  .p-like .p-like__con-left {
    padding-top: 6vw;
  }
}
