@charset "UTF-8";
/*
Theme Name: Kotoba School Theme
Theme URI:
Description: ことばと発達 SCHOOL あいのて 公式テーマ
Version: 1.0
*/

/*
---------------------------
カスタムプロパティー
---------------------------
*/
/* カラー */
:root {
    --color-black: #4D4844;
    --color-deep-black: #333333;
    --color-orange: #F87D0C;
    --color-light-orange: #FFF5E4;
    --color-creamy-light-orange: #FFE4B2;
    --color-vivid-orange: #F98216;
    --color-warm-white: #FFF1DA;
    --color-yellow: #FFE13A;
    --color-yellow-light: #FFE56B;
    --color-cream-yellow: #FFEAAD;
    --color-accent-yellow: #FFCA0B;
    --color-yellow-pale: #FFF3C0;
    --color-butter-yellow: #FDF5C0;
    --color-mustard-yellow: #DAB416;
    --color-white: #FFFFFF;
    --color-green: #90CE33;
    --color-mint-green: #DCF7ED;
    --color-emerald-green: #50C8B2;
    --color-pale-lime: #EDF6C0;
    --color-pale-lime-light: #F1FECB;
    --color-green-tea: #E5F6D5;
    --color-lime-green: #79C236;
    --color-light-yellow: #FFFAE4;
    --color-light-cream: #FFF0B2;
    --color-vanilla: #FFF3B1;
    --color-gray: #5B5B5B;
    --color-gray-light: #D9D9D9;
    --color-medium-gray: #7E7E7E;
    --color-home-wave-bg: #FFF0A2;
    --color-pastel-magenta: #AEA18F;
    --color-pink-light: #FC9FB9;
    --color-pink-pale: #FFE8EE;
    --color-baby-pink: #FFEDEF;
    --color-rose-pink: #F1799F;
    --color-ice-blue: #DCF0F7;
    --color-Sky-blue: #3FA4CB;
    --color-pale-lavender: #EEE9F5;
    --color-amethyst: #A17FD3;
}

/* フォント */
:root {
    --font-family: 'Zen Maru Gothic', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'Noto Sans JP', 'Meiryo', sans-serif;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
}

/* フォントサイズ */
:root {
    --font-size-h1: clamp(2.6rem, 1.333vw + 2.08rem, 4.0rem);
    --font-size-h2: clamp(2.2rem, 1.143vw + 1.754rem, 3.4rem);
    --font-size-h3: clamp(2rem, 1.6286rem + 0.9524vw, 3rem);
    --font-size-h4: clamp(1.6rem, 0.762vw + 1.303rem, 2.4rem);
    --font-size-h5: clamp(1.6rem, 0.381vw + 1.451rem, 2.0rem);
    --font-size-h6: clamp(1.4rem, 0.19vw + 1.326rem, 1.6rem);
    --font-size-body01: clamp(1.4rem, 0.19vw + 1.326rem, 1.6rem);
    --font-size-body02: clamp(1.3rem, 0.19vw + 1.22rem, 1.5rem);
    --font-size-button: clamp(1.6rem, 0.19vw + 1.526rem, 1.8rem);
    --font-size-siteDescription: clamp(1rem, calc(0.8886rem + 0.457vw), 1.3rem);
    --font-size-subNav-pc: 1.3rem;
    --font-size-subNav-sp: 1.5rem;
    --font-size-globalNav: 1.5rem;
    --font-size-buttonHeader: 1.5rem;
    --font-size-buttonHeader-sp: 1.8rem;
    --font-size-subList: 1.4rem;
    --font-size-dropdown: 1.5rem;
    --font-size-fv-subtitle: clamp(1.8rem, 0.38vw + 1.652rem, 2.2rem);
    --font-size-fv-title: clamp(2.6rem, 1.333vw + 2.08rem, 4.0rem);
    --font-size-buttonFv: clamp(1.6rem, 0.19vw + 1.526rem, 1.8rem);
    --font-size-summary: clamp(1.6rem, 0.762vw + 1.303rem, 2.4rem);
    --font-size-text-note: clamp(1.2rem, 0.19vw + 1.125rem, 1.4rem);
    --font-size-visitCta-heading: clamp(2.0rem, 1.33vw + 1.48rem, 3.4rem);
    --font-size-flow-stepNum: clamp(1.8rem, 0.57vw + 1.58rem, 2.4rem);
    --font-size-flow-link: 1.4rem;
    --font-size-schedule-caption: clamp(1.6rem, 0.76vw + 1.303rem, 2.4rem);
    --font-size-schedule-th: clamp(1.6rem, 0.76vw + 1.303rem, 2.4rem);
    --font-size-schedule-td: clamp(1.6rem, 0.76vw + 1.303rem, 2.4rem);
    --font-size-blog-subtitle: clamp(1.8rem, 0.57vw + 1.58rem, 2.4rem);
    --font-size-reportCard-title: 1.8rem;
    --font-size-reportCard-content: 1.6rem;
    --font-size-reportCard-date: 1.6rem;
    --font-size-cta-text: clamp(1.6rem, 0.61vw + 1.362rem, 2rem);
    --font-size-footer-siteDescription: clamp(1.4rem, 0.095vw + 1.363rem, 1.5rem);
    --font-size-footer-catchphrase: clamp(1.4rem, 0.095vw + 1.363rem, 1.5rem);
    --font-size-footer-companyName: clamp(1.5rem, 0.095vw + 1.463rem, 1.6rem);
    --font-size-footer-address: clamp(1.2rem, 0.19vw + 1.126rem, 1.4rem);
    --font-size-footer-navTitle: 1.5rem;
    --font-size-footer-navList: 1.4rem;
    --font-size-copyright: clamp(1.0rem, 0.19vw + 0.926rem, 1.2rem);
    --font-size-breadcrumb: clamp(1.2rem, 0.19vw + 1.126rem, 1.4rem);
    --font-size-question-item: clamp(1.6rem, 0.381vw + 1.451rem, 2.0rem);
    --font-size-c-category: clamp(1.2rem, 0.19vw + 1.126rem, 1.4rem);
    --font-size-c-area-category: clamp(1.0rem, 0.19vw + 0.926rem, 1.2rem);
}

/* コンテンツ幅 */
:root {
    /* 1160px */
    --width-standard: 1200px;
    /* 1280px */
    --width-wide: 1320px;
    --inner-padding: 20px;
}

/*
---------------------------
共通スタイル
---------------------------
*/
html {
    font-size: 62.5%;
    scrollbar-gutter: stable; /* ガタつき防止 */
    scroll-padding-top: 120px;
}

body {
    background: var(--color-light-yellow);
    font-feature-settings: 'palt';
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: var(--font-family);
    font-weight: var(--font-weight-medium);
    letter-spacing: 0;
    color: var(--color-black);
}

/* JS側の is-loaded は残しても害はない */
body.is-loaded {
    opacity: 1;
}

/* 3. メニュー展開時の背景固定 */
body.is-active,
html.is-active {
    overflow: hidden !important;
    height: 100% !important;
    overscroll-behavior: none;
}

* {
    transition: all 0.3s ease-in-out;
}

li {
    list-style: none;
}

a {
    text-decoration: none;
    color: inherit;
}

a:hover {
    opacity: 0.7;
}

h1,h2,h3,h4,h5,h6 {
    font-weight: normal;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.u-sp-only,
.u-lg-up,
.u-mid-only,
.mid-about-only,
.l-br {
    display: none;
}

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

.u-img-fit {
    width: 100%;
}

.u-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

#breadcrumbs > span:first-child {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: min(0.6944vw, 10px);
    padding: 10px 0;
}

#breadcrumbs a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
    gap: min(0.6944vw, 10px);
}

#breadcrumbs a::after {
    display: block;
    width: 4px;
    aspect-ratio: 4 / 13;
    background: url(img/icon/bread_icon.svg) no-repeat center / contain;
    content: "";
}

.breadcrumb_last {
    color: var(--color-medium-gray);
    pointer-events: none;
}

/* 基本のアニメーション */
.fade-up {
    opacity: 0;
    transform: translateY(50px);
    will-change: transform, opacity;
    /* JS読み込み前のチラつき防止用 */
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

/* スマホの時はアニメーションさせない */
@media (max-width: 500px) {
    .fade-up {
        transform: translateY(0) !important;
        transition: opacity 0.3s ease-out, transform 0.3s ease-out;
    }
}

/* GSAPでアニメーションが完了した要素に付与されるクラス */
.fade-up.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/*
---------------------------
コンポーネント
---------------------------
*/
/* ---テキスト--- */
.heading-h1 {
    font-size: var(--font-size-h1);
}

.heading-h2 {
    font-size: var(--font-size-h2);
}

.heading-h3 {
    font-size: var(--font-size-h3);
}

.heading-h4 {
    font-size: var(--font-size-h4);
}

.heading-h5 {
    font-size: var(--font-size-h5);
}

.heading-h6 {
    font-size: var(--font-size-h6);
}

.heading-h1,
.heading-h2,
.heading-h3,
.heading-h4,
.heading-h5,
.heading-h6 {
    font-weight: var(--font-weight-bold);
    line-height: 1.5;
}

.body-01 {
    font-size: var(--font-size-body01);
    line-height: 1.8;
}

.body-02 {
    font-size: var(--font-size-body02);
    line-height: 1.6;
}

.l-header__siteDescription{
    font-size: var(--font-size-siteDescription);
    line-height: calc(20 / 13);
    white-space: nowrap;
}

.l-subNav__link {
    font-size: var(--font-size-subNav-pc);
    line-height: calc(28 / 13);
    color: var(--color-gray);
}

.l-globalNav__link {
    font-size: var(--font-size-globalNav);
    line-height: calc(28 / 15);
}

.l-nav__subList {
    font-size: var(--font-size-subList);
    line-height: 2;
}

.l-globalNav__dropdown li a {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-dropdown);
    line-height: 1.6;
}

.p-home-firstView__subtitle {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-fv-subtitle);
    line-height: 1.4;
    letter-spacing: 1px;
    color: var(--color-orange);
}

.p-home-firstView__title {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-fv-title);
    line-height: 1;
    letter-spacing: 1px;
}

.section-title {
    margin-bottom: clamp(3rem, 1.905vw + 2.257rem, 5rem);
    text-align: center;
}

.u-color-accent {
    color: var(--color-orange);
}

.p-home-worries__subtext,
.u-plan__subtitle-label,
.u-plan__example-text {
    color: var(--color-gray);
}

.p-home__summary {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-summary);
    line-height: 1.6;
}

.p-home-worries .u-block-sp,
.p-home-worries .u-block-pc,
.p-home-case .u-block,
.p-home-flow__description a {
    position: relative;
    z-index: 1;
    width: 100%;
}

.p-home-worries .u-block-sp::after,
.p-home-worries .u-block-pc::after,
.p-home-case .u-block::after,
.p-home-flow__description a::after {
    content: "";
    position: absolute;
    bottom: 3px;
    left: 0;
    height: 8px;
    background-color: var(--color-yellow);
    z-index: -1;
}

.p-home-worries .u-block-sp::after {
    content: none;
}

.p-home-worries .u-block-pc::after {
    width: 100.47%;
}

.p-home-case__summary {
    line-height: 1;
}

.p-home-case .u-block::after {
    width: 98.13%;
}

.p-home-support__heading {
    font-size: clamp(2rem, 0.8525rem + 1.4903vw, 3rem);
    white-space: nowrap;
}

.p-home-about__heading,
.p-home-about__description,
.p-home-list__heading,
.u-case__others02-title,
.p-development-feedback__item-title,
.p-support__sub-title,
.u-cta__message-block,
.p-course__description,
.p-course__schedule-title,
.p-course__schedule td,
.p-group__description {
    text-align: center;
}

.u-text-note {
    display: block;
    width: 100%;
    font-size: var(--font-size-text-note);
    line-height: 1.6;
    text-align: left;
}

.p-home-visitCta__heading,
.p-home-cta__title,
.u-cta__title {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-visitCta-heading);
    line-height: 1.4;
    color: var(--color-white);
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: clamp(0.9rem, 0.48vw + 0.714rem, 1.4rem);
    text-align: center;
}

.page-id-11 .u-cta01 .u-cta__title,
.page-id-15 .u-cta01 .u-cta__title {
    gap: clamp(0rem, 1.524vw - 0.594rem, 1.6rem);
}

.p-home-cta__title,
.u-cta__title {
    line-height: 1.5;
}

.p-home-visitCta__heading::before,
.p-home-visitCta__heading::after,
.p-home-cta__title::before,
.p-home-cta__title::after,
.u-cta__title::before,
.u-cta__title::after {
    content: "";
    width: clamp(30px, 0.57vw + 27.77px, 36px);
    aspect-ratio: 1 / 1;
}

.p-home-visitCta__heading::before,
.p-home-cta__title::before,
.u-cta__title::before {
    background: url(img/icon/line_icon1.svg) no-repeat center / contain;
}

.p-home-visitCta__heading::after,
.p-home-cta__title::after,
.u-cta__title::after {
    background: url(img/icon/line_icon2.svg) no-repeat center / contain;
}

.p-home-visitCta__description {
    color: var(--color-deep-black);
}

.p-home-lessonFlow .section-title,
.p-home-flow .section-title {
    position: relative;
    display: inline-block;
    padding-left: clamp(2.8rem, 0.952vw + 2.429rem, 3.8rem);
}

.p-home-schedule .section-title {
    position: relative;
    display: inline-block;
    padding-left: clamp(2.8rem, 0.762vw + 2.503rem, 3.6rem);
}

.p-home-lessonFlow .section-title::before,
.p-home-flow .section-title::before,
.p-home-schedule .section-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(calc(-50% + 1.5px));
    width: clamp(18px, 0.95vw + 14.3px, 28px);
    aspect-ratio: 1 / 1;
    border: clamp(5px, 0.29vw + 3.9px, 8px) solid var(--color-orange);
    border-radius: 50%;
}

.p-home-flow .section-title {
    line-height: 1.4;
}

.p-home-flow .section-title::before {
    transform: translateY(-50%);
}

.p-home-lessonFlow__label,
.u-cta__description,
.u-case-card__label,
.u-cta__media-lead,
.u-cta__media-text,
.p-course__schedule-caption {
    color: var(--color-white);
}

.p-home-flow__stepNum {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-flow-stepNum);
    line-height: 1.6;
    color: var(--color-orange);
}

.p-home-flow__description a {
    margin: 0 2.75px;
}

.p-home-flow__description a::after {
    background: #000;
    width: 108.65%;
    height: 1px;
    left: -1px;
    bottom: -1.8px;
}

.p-home-flow__link {
    font-size: var(--font-size-flow-link);
    line-height: 1.8;
    text-decoration: underline;
    text-decoration-color: rgba(77, 72, 68, 0.3);
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}

.p-home-flow__link02 {
    text-decoration: underline;
    text-decoration-color: rgba(77, 72, 68, 0.3);
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}

.p-home-schedule__caption {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-schedule-caption);
    line-height: 1.6;
    color: var(--color-white);
    text-align: center;
}

.p-home-schedule th[scope="row"] {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-schedule-th);
    line-height: 1.6;
    color: var(--color-green);
    text-align: center;
}

.m-holiday th[scope="row"],
.p-course .m-orange th[scope="row"] {
    color: var(--color-orange);
}

.p-home-schedule td {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-schedule-td);
    line-height: 1.4;
    letter-spacing: 1px;
}

.p-home-blog__sub-title {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-blog-subtitle);
    line-height: 1.4;
    letter-spacing: 1px;
    color: var(--color-orange);
}

.c-reportCard__title {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-reportCard-title);
    line-height: 1.2;
}

.c-reportCard__content p {
    font-size: var(--font-size-reportCard-content);
    line-height: 1.2;
}

.c-reportCard__date {
    font-size: var(--font-size-reportCard-date);
    line-height: 1.2;
}

.p-home-cta__text {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-cta-text);
    line-height: 1.6;
    color: var(--color-white);
}

.l-footer__siteDescription {
    font-size: var(--font-size-footer-siteDescription);
    line-height: 1.6;
}

.l-footer__catchphrase {
    font-size: var(--font-size-footer-catchphrase);
    line-height: 1.6;
}

.l-footer__company-name {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-footer-companyName);
    line-height: 1.4;
}

.l-footer__address {
    font-size: var(--font-size-footer-address);
    line-height: 1.6;
}

.l-footer__nav-title {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-footer-navTitle);
    line-height: 1.6;
}

.l-footer__nav-list {
    font-size: var(--font-size-footer-navList);
    line-height: 1.8;
}

.l-footer__copyright small {
    font-style: normal;
    font-size: var(--font-size-copyright);
    line-height: 2;
    color: var(--color-pastel-magenta);
}

.c-breadcrumb {
    font-size: var(--font-size-breadcrumb);
    line-height: 1.5;
}

.u-about__description,
.u-plan__description,
.p-word-homework__description {
    text-align: center;
}

.u-plan__example-caption {
    font-weight: var(--font-weight-medium);
}

.u-plan__item:nth-child(4) .u-plan__example-text,
.u-plan__item:nth-child(5) .u-plan__example-text,
.p-faq__question-text {
    color: var(--color-black);
}

.page-id-13 .u-question__item,
.page-id-11 .u-question__item {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-question-item);
    line-height: 1.5;
}

.p-support .section-title,
.p-faq__question-text,
.c-table01 th {
    text-align: left;
}

.p-course__schedule th[scope="row"]  {
    color: var(--color-green);
}

.p-course .m-yellow th[scope="row"] {
    color: var(--color-accent-yellow);
}

.p-group .c-reportCard__category {
    font-size: var(--font-size-c-category);
    line-height: 1.5;
}

.p-group .c-reportCard__area-category {
    font-size: var(--font-size-c-area-category);
    line-height: 1.6;
}

@media (max-width: 1180px) {
    .p-home-visitCta__heading,
    .p-home-cta__title,
    .u-cta__title {
        align-items: flex-end;
    }
}

@media (max-width: 1175px) {
    .l-header__siteDescription {
        line-height: 2;
    }
    .l-subNav__link,
    .l-globalNav__link {
        font-weight: var(--font-weight-bold);
        font-size: var(--font-size-subNav-sp);
        line-height: 1.6;
        color: var(--color-black);
    }
    .nav-top .l-subNav__link {
        font-size: 1.6rem;
    }
}

@media (max-width: 885px) {
    .u-about__description,
    .p-group__description {
        text-align: left;
    }
    .page-id-11 .u-about__description,
    .page-id-15 .u-about__description {
        text-align: center;
    }
}


@media (max-width: 768px) {
    .p-home-worries .u-block-pc::after,
    .p-home-flow__description a::after {
        content: none;
    }
    .p-home-worries .u-block-sp::after {
        content: "";
        width: 98%;
        height: 6px;
    }
    .p-home-worries .heading-h5 {
        line-height: 1.6;
        white-space: nowrap;
    }
    .p-home__summary {
        line-height: 1.7;
    }
    .p-home-case .u-block::after {
        width: 98.75%;
        height: 6px;
    }
    .p-home-support__heading {
        font-size: var(--font-size-h3);
    }
    .p-home-support__item:last-child .p-home-support__description {
        font-size: 1.6rem;
    }
    .p-home-about__heading,
    .p-home-lessonFlow__videoCaption,
    .p-home-flow__title,
    .p-home-blog .section-title {
        line-height: 1.4;
    }
    .p-home-about__description,
    .u-plan__description,
    .p-word-homework__description,
    .p-course__description {
        text-align: left;
    }
    .p-home-visitCta__heading,
    .p-home-flow .section-title {
        line-height: 1.5;
    }
    .p-home-worries__subtext,
    .p-home-list__heading,
    .p-home-visitCta__item,
    .p-home-lessonFlow__label,
    .p-home-schedule__item {
        line-height: 1.6;
    }
    .p-home-lessonFlow .section-title::before,
    .p-home-flow .section-title::before,
    .p-home-schedule .section-title::before {
        transform: translateY(calc(-50%));
    }
    .p-home-cta__title {
        gap: 0;
    }
    .p-home-cta__title::before {
        margin-right: -11px;
    }
    .p-home-cta__title::after {
        margin-left: -11px;
    }
    .p-home-cta__text {
        text-align: center;
    }
}

@media (max-width: 635px) {
    .page-id-11 .u-about__description {
        text-align: left;
    }
}

@media (max-width: 500px) {
    .page-id-15 .u-about__description {
        text-align: left;
    }
}


@media (max-width: 391px) {
    .l-header__siteDescription {
        font-size: 1rem;
    }
}

/* --- Button --- */
/* Button Base */
.c-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 224px;
    padding: 18px 18px 18px 38px;
    border-radius: 99px;
    white-space: nowrap;
    font-size: var(--font-size-button);
    font-weight: var(--font-weight-bold);
    line-height: 1.6;
    cursor: pointer;
    transition:
        background-color .3s,
        color .3s,
        border-color .3s;
}

/* icon */
.c-button__icon {
    width: 14px;
    height: 12px;
    background:
        url(img/icon/arrow_icon-orange.svg)
        no-repeat center / contain;
    flex-shrink: 0;
}

/* primary */
.c-button--primary {
    background: var(--color-white);
    color: var(--color-orange);
    border: 2px solid var(--color-orange);
}

/* hover */
.c-button--primary:hover,
.c-button--primary:focus-visible {
    background: var(--color-light-orange);
}

/* focus accessibility */
.l-header__logo a:focus-visible,
.c-button:focus-visible {
    outline: 3px solid var(--color-yellow);
    outline-offset: 4px;
}

.c-button--header {
    max-width: 143px;
    padding: 30px 24px 20px 24px;
    background: var(--color-orange);
    color: var(--color-white);
    border-radius: 0 0 15px 15px;
    font-size: var(--font-size-buttonHeader);
    font-weight: var(--font-weight-medium);
    line-height: calc(28 / 15);
    letter-spacing: 1px;
}

.c-button__label {
    width: 100%;
    display:flex;
    flex-direction: column;
}

.l-header .c-button__label {
    align-items: center;
    gap: 6px;
}

.l-header .c-button__label-icon {
    width: 27px;
    height: 20px;
    background:
        url(img/icon/contact-icon.svg)
        no-repeat center / contain;
    flex-shrink: 0;
    /* デザインカンプ上微調整 */
    transform: translateX(-2px);
}

.c-button--firstView {
    background: var(--color-white);
    border: 2px solid var(--color-orange);
    border-radius: 15px;
    font-size: var(--font-size-buttonFv);
    --btn-padding-y: clamp(1.6rem, 0.19vw + 1.526rem, 1.8rem);
    --btn-padding-x: clamp(2.0rem, 0.762vw + 1.704rem, 2.8rem);
    padding: var(--btn-padding-y) var(--btn-padding-x);
    max-width: none;
}

.p-home-firstView .c-button__label {
    align-items: flex-start;
}

.p-home-firstView__cta .u-block::after,
.p-home-firstView__cta .u-blockLast::after {
    content: "";
    position: absolute;
    bottom: 3px;
    left: 0;
    background-color: var(--color-yellow);
    max-width: 100%;
    height: clamp(0.4rem, 0.19vw + 0.326rem, 0.6rem);
    z-index: -1;
}

.p-home-firstView__cta .u-block::after {
    width: clamp(23.4rem, 3.238vw + 22.137rem, 26.8rem);
}

.p-home-firstView__cta .u-blockLast::after {
    width: clamp(17.8rem, 2.381vw + 16.872rem, 20.3rem);
}

.p-home-firstView .u-emphasis {
    width: 100%;
    display: inline-flex;
    align-items: center;
    gap: 0.833vw;
    color: var(--color-orange);
    font-size: clamp(2.0rem, 0.38vw + 1.852rem, var(--font-size-h4));
}

.p-home-firstView .u-emphasis::after {
    content: "";
    width: 32px;
    aspect-ratio: 1 / 1;
    background: url(img/icon/arrow_icon-bg_orange.svg) no-repeat center / contain;
    flex-shrink: 0;
}

.p-home-visitCta__cta .c-button--primary {
    max-width: 342px;
    padding: clamp(1.8rem, 0.38vw + 1.651rem, 2.2rem) clamp(1.8rem, 0.95vw + 1.428rem, 2.8rem) clamp(1.8rem, 0.38vw + 1.651rem, 2.2rem) clamp(2.8rem, 0.95vw + 2.428rem, 3.8rem);
}

.p-home-visitCta__cta .c-button__icon {
    width: 16px;
    height: 14px;
    margin-left: clamp(3rem, 0.95vw + 2.628rem, 4rem);
}

.p-home-lessonFlow .c-button--primary {
    max-width: 314px;
}

.p-home-lessonFlow .c-button__icon {
    margin-left: 60px;
}

.p-home-cta .p-home-visitCta__cta .heading-h4,
.u-cta__container .p-home-visitCta__cta .heading-h4 {
    line-height: 1.6;
}

@media (max-width: 1175px) {
    .c-button--header {
        max-width: 400px;
        margin: 0 auto;
        padding-top: 20px;
        border-radius: 99px;
        font-size: var(--font-size-buttonHeader-sp);
        line-height: calc(28 / 18);
    }
    .l-header .c-button__label {
        flex-direction: row;
        justify-content: center;
        gap: 12px;
    }
    .l-header .c-button__label-icon {
        width: 28px;
        transform: none;
    }
}

@media (max-width: 768px) {
    .p-home-firstView .u-emphasis {
        line-height: 1.4;
        gap: min(3.59vw, 14px);
    }
    .p-home-visitCta__cta .heading-h4,
    .c-button--primary,
    .p-home-cta .p-home-visitCta__cta .heading-h4 {
        line-height: 1.4;
    }
}

@media (max-width: 391px) {
    .p-home-firstView__cta .u-blockLast::after {
        width: 178px;
    }
}

/* ---コンテンツ--- */
/* pc */
.l-inner {
    width: min(var(--width-standard), 100% - (var(--inner-padding) * 2));
    padding: 0 var(--inner-padding);
    margin: 0 auto;
}

.l-inner--wide {
    width: min(var(--width-wide), 100% - (var(--inner-padding) * 2));
}

.l-main-container {
    overflow: hidden;
    width: 100%;
}

@media (max-width: 768px) {
    .l-inner--wide,
    .l-inner {
        width: 100%;
    }
}

/*
---------------------------
header
---------------------------
*/
/* メニューが開いている時、スクロールバーを非表示にする */
.l-header.is-open {
    /* 標準のブラウザ用 */
    scrollbar-width: none;
}

/* Chrome, Safari, Edge 用 */
.l-header.is-open::-webkit-scrollbar {
    display: none;
}

/* メニューのラップ部分 */
.l-header__navWrapper {
    -ms-overflow-style: none; /* IE, Edge */
    scrollbar-width: none;    /* Firefox */
}
.l-header__navWrapper::-webkit-scrollbar {
    display: none;            /* Chrome, Safari */
}

/* header base */
.l-header {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: transparent;
    transition: background-color 0.4s ease, box-shadow 0.4s ease;
}

/* スクロール後：is-activeがついたら背景色を出す */
.l-header.is-active {
    background-color: var(--color-light-yellow);
}

/* メニューが開いているときは、スクロールに関わらず背景を出す（文字被り防止） */
.l-header.is-open {
    background-color: var(--color-light-yellow);
}

.l-header__inner {
    /* max-width: 1440px; */
    margin: auto;
    padding: 0 40px;
    height: 120px;
    display: flex;
    justify-content: space-between;
}

.l-header__logoArea {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 20px;
    flex: 0 1 auto;
    min-width: 0;
}

.l-header__logo {
    width: fit-content;
    line-height: 0;
    margin-top: -40px;
}

.l-header__logo img {
    max-width: none;
}

.l-header__navWrapper {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}

.l-header__navGroup {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-top: 16px;
}

.l-subNav__list {
    display: flex;
    align-items: center;
    width: fit-content;
    margin-left: auto;
    padding-right: 10px;
}

.l-globalNav__item,
.l-subNav__item {
    position: relative;
}

.l-subNav__item + .l-subNav__item {
    margin-left: 20px;
    padding-left: 20px;
}

.l-subNav__item + .l-subNav__item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 14px;
    background: var(--color-orange);
    transform: translateY(-50%);
}

.l-globalNav__list {
    display: grid;
    grid-template-columns: repeat(3, max-content);
    column-gap: 40px;
}

.l-globalNav__link {
    position: relative;
    display: inline-block;
    padding-left: 11px;
    white-space: nowrap;
}

/* orange dot */
.l-globalNav__link::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 5px;
    aspect-ratio: 1 / 1;
    background: var(--color-orange);
    border-radius: 50%;
    transform: translateY(-50%);
}

.nav-blog {
    position: relative;
}

/* カテゴリーがある場合（is-has-categoriesが付いている）だけ、ホバー時にシャドウを出す */
.nav-blog.is-has-categories:hover .l-globalNav__link {
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

/* ドロップダウンメニューの初期状態 */
.l-globalNav__dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    width: 101.55%;
    background: var(--color-white);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    padding: 7px 0;
    margin: 0;
    border-radius: 7px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 100;
}

.nav-blog:hover .l-globalNav__dropdown {
    opacity: 1;
    visibility: visible;
}

.l-globalNav__dropdown li a {
    display: block;
    padding: 4px 3px;
    transition: background 0.2s;
    font-weight: var(--font-weight-bold);
    font-size: 1.5rem;
    line-height: 1.6;
}

.l-globalNav__dropdown li a::before,
.l-footer__nav-list--blog li a::before,
.nav-blog .l-nav__subList li a::before {
    content: "-";
    display: inline-block;
    margin-right: 0.5em;
}

.l-globalNav__dropdown li a:hover {
    background-color: #f7f7f7;
}

.pc-text {
    display: inline;
}

.sp-text,
.l-nav__subList {
    display: none;
}

.c-menuButton {
    display: none;
    cursor: pointer;
}

/*
-------------------------------
First View (p-home-firstView)
-------------------------------
*/
/* --- 装飾 --- */
.p-home-firstView__out-decor {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    pointer-events: none;
}

.p-home-firstView__decoration-parts {
    position: relative;
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
    height: 0;
}

.p-home__decor-item {
    position: absolute;
}

.p-home__decor-item img {
    width: 100%;
    animation: floatAnimation 10s ease-in-out infinite;
}

.p-home-firstView__decorations {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.p-home-firstView__decorations.-back {
    z-index: 1;
}

.is-deco-fv1-1 {
    --rotate: -8.93deg;
    position: absolute;
    z-index: 101;
    width: min(22.02vw, 317.11px);
    top: min(8.11vw, 116.79px);
    left: min(6.926vw, 99.74px);
}

.is-deco-fv2-1 {
    position: absolute;
    z-index: 101;
    width: min(9.722vw, 140px);
    top: min(5vw, 72px);
    left: min(22.85vw, 329px);
    mix-blend-mode: multiply;
}

.is-deco-fv5-2 {
    width: min(11.81vw, 170px);
    top: min(30.9vw, 445px);
    right: 0;
}

.is-deco-maru1-1 {
    width: min(2.222vw, 32px);
    top: min(13.54vw, 195px);
    right: 45.14vw; /* 650px */
    mix-blend-mode: multiply;
}

.is-deco-maru3-1 {
    width: min(4.306vw, 62px);
    top: min(31.32vw, 451px);
    left: 0;
    mix-blend-mode: multiply;
}

.is-deco-maru4-2 {
    width: min(2.5vw, 36px);
    top: min(31.6vw, 455px);
    left: min(5.417vw, 78px);
    mix-blend-mode: multiply;
}

.is-deco-maru5-1 {
    width: min(12.71vw, 183px);
    top: min(9.375vw, 135px);
    right: 0;
}

.is-deco-maru2-1 {
    width: min(2.431vw, 35px);
    top: min(1.458vw, 21px);
    right: 18.33vw; /* 264px */
}

.is-deco-illust1,
.is-deco-maru2-2 {
    z-index: 2;
}

.is-deco-illust1 {
    width: min(27.78vw, 400px);
    right: min(22.15vw, 319px);
    top: max(-6.458vw, -93px);
    mix-blend-mode: multiply;
}

.is-deco-maru2-2 {
    width: min(2.431vw, 35px);
    top: min(4.375vw, 63px);
    left: 40.97vw; /* 590px */
}

.p-home-firstView__decorations.-front {
    z-index: 3;
}

.p-home-firstView__wave-area {
    position: absolute;
    width: 100%;
    transform: translateY(max(-6.528vw, -94px));
    z-index: -1;
}

.p-home__waveSvg {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

/* --- アニメーション設定 --- */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

.js-fade {
    opacity: 0;
    animation: fadeInUp 1.2s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

@keyframes floatAnimation {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

/* 1. デコレーション */
.-back .js-fade {
    animation-delay: 0.2s;
}

/* 2. テキスト */
.p-home-firstView__titleArea,
.u-firstView__title {
    animation-delay: 0.6s;
}

/* 3. メイン画像（LCP対象なので opacity を使わない） */
.p-home-firstView__main,
.u-firstView__main {
    opacity: 1;
    animation: fvSlideUp 1.2s cubic-bezier(0.33, 1, 0.68, 1) 0.3s backwards;
}

@keyframes fvSlideUp {
    from { transform: translateY(30px); }
    to   { transform: translateY(0); }
}

/* 4. サブ画像 */
.p-home-firstView__sub {
    animation-delay: 1.2s;
}

/* 5. 前面のデコレーション */
.-front .js-fade {
    animation-delay: 1.4s;
}

/* --- 全体レイアウト --- */
.p-home-firstView {
    position: relative;
    z-index: 1;
    padding-bottom: 128px;
}

.p-home-firstView__content-inner {
    position: relative;
    z-index: 2;
    /* max-width: 1440px; */
    margin: 0 auto;
    /* padding: min(3.125vw, 45px) min(4.167vw, 60px) 0 min(4.167vw, 60px); */
    padding: 3.125vw 4.167vw 0 4.167vw;
}

.p-home-firstView__flexArea {
    display: flex;
    justify-content: space-between;
}

.p-home-firstView__flex-group {
    display: flex;
    flex-direction: column;
    flex: 0 1 51.439%;
    /* gap: min(2.361vw, 34px); */
    gap: 2.361vw;
    /* padding-top: min(1.736vw, 25px); */
    padding-top: 1.736vw;
}

.p-home-firstView__titleArea {
    /* padding-left: clamp(2.0rem, 15.774vw - 10.113rem, 12.6rem); */
    padding-left: clamp(2.0rem, 15.774vw - 10.113rem, 8.75vw);
}

.p-home-firstView__subtitle {
    margin-bottom: clamp(1.4rem, 0.762vw + 1.103rem, 2.2rem);
}

.p-home-firstView .u-block {
    display: block;
    white-space: nowrap;
    margin-bottom: clamp(1.0rem, 0.667vw + 0.74rem, 1.7rem);
}

.p-home-firstView__title-flex {
    display: flex;
    gap: clamp(0.7rem, 0.476vw + 0.514rem, 1.2rem);
}

.p-home-firstView__copy-img {
    display: inline-block;
    width: clamp(11.9rem, 3.524vw + 10.526rem, 15.6rem);
}

.p-home-firstView__copy-text {
    white-space: nowrap;
    padding-top: 13px;
    padding-bottom: 7px;
}

.p-home-firstView__sub {
    display: flex;
    /* gap: clamp(4.0rem, 11.756vw - 5.028rem, 11.9rem); */
    gap: clamp(4.0rem, 11.756vw - 5.028rem, 8.264vw);
}

.p-home-firstView__sub img,
.p-home-firstView__main img {
    border-radius: 20px;
}

.p-home-firstView__pic-02 {
    width: 32.401%;
}

.p-home-firstView__pic-wrap {
    position: relative;
    width: 50.074%;
    padding-top: 40px;
}

.p-home-firstView__main {
    flex: 0 1 40.909%;
}

.p-home-firstView__cta {
    position: absolute;
    bottom: clamp(-9.0rem, 4.116vw - 12.165rem, -6.238rem);
    left: clamp(-25.6rem, -12.072vw - 8.217rem, -17.5rem);
    z-index: 10;
    width: clamp(28.7rem, 5.524vw + 26.545rem, 34.5rem);
}

.p-home-firstView__cta .u-block,
.p-home-firstView__cta .u-blockLast {
    position: relative;
    z-index: 1;
    width: 100%;
    margin-bottom: 0;
    transform: translateX(1px);
}

.p-home-firstView__cta .u-blockLast {
    display: block;
    margin-bottom: 10px;
}

/*
-------------------------------
worries (p-home-worries)
-------------------------------
*/
.p-home-worries {
    background: linear-gradient(
        to top,
        transparent min(100px, 6.944vw),
        var(--color-home-wave-bg) 0
    );
    position: relative;
    z-index: 1;
    padding-bottom: max(6.944vw, 100px);
}

.p-home-worries__inner {
    transform: translateX(2px);
}

.p-home-worries__content {
    display: grid;
    grid-template-columns:
        min(17.22vw, 248px)
        min(54.17vw, 780px)
        min(17.43vw, 251px);
    justify-content: center;
    margin-bottom: 35px;
}

.p-home-worries .section-title,
.p-home-worries__list,
.p-home-worries__summary {
    order: 2;
    grid-column: 2;
    grid-row: 1;
    height: min-content;
    text-align: center;
}

.p-home-worries .section-title {
    margin-bottom: clamp(2.4rem, 2.476vw + 1.434rem, 5.0rem);
}

.p-home-worries__list {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(1.0rem, 0.571vw + 0.777rem, 1.6rem) clamp(1.0rem, 0.952vw + 0.628rem, 2.0rem);
    justify-content: center;
    margin-top: 101px; /* 余白込見出しの高さ分 */
}

.p-home-worries__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: fit-content;
    background: var(--color-white);
    border: 2px solid var(--color-yellow-light);
    border-radius: 20px;
}

.p-home-worries__item:nth-child(1),
.p-home-worries__item:nth-child(4),
.p-home-worries__item:nth-child(5) {
    padding: 18px 28px;
}

.p-home-worries__item:nth-child(2),
.p-home-worries__item:nth-child(3),
.p-home-worries__item:nth-child(6) {
    padding: 14px 28px;
}

.p-home-worries__figure.-type01 {
    order: 1;
    grid-column: 1;
    grid-row: 1;
    padding-top: 93px;
    display: flex;
    justify-content: flex-start;
}

.p-home-worries__figure.-type02 {
    order: 3;
    grid-column: 3;
    grid-row: 1;
    padding-top: 125px;
    display: flex;
    justify-content: flex-end;
}

.p-home-worries__pics-group .u-img-fit {
    width: min(16.67vw, 240px);
}

.p-home-worries__pics-group {
    display: contents;
}

.p-home-worries__summary {
    margin-top: 456px; /* 余白込見出しとリストの高さ分 */
}

.p-home-worries__wave-area {
    position: absolute;
    width: 100%;
    z-index: -1;
    background: var(--color-light-yellow);
}

.is-deco-maru2-5 {
    z-index: 2;
    width: min(2.431vw, 35px);
    top: min(0.8333vw, 12px);
    right: 29.17vw;
}

/*
-------------------------------
case (p-home-case)
-------------------------------
*/
.p-home-case {
    position: relative;
    z-index: 1;
    padding: min(5.556vw, 80px) 0 min(5.278vw, 76px) 0;
}

.is-deco-maru1-3 {
    z-index: 2;
    width: min(2.222vw, 32px);
    top: 0;
    right: 20.83vw;
    mix-blend-mode: multiply;
}

.p-home-case__list {
    display: flex;
    justify-content: space-between;
    margin-bottom: clamp(2.4rem, 2.476vw + 1.43rem, 5rem);
}

.p-home-case__item {
    display: flex;
    flex-direction: column;
    flex: 0 1 48.276%;
    background: var(--color-white);
    border-radius: 20px;
    padding: clamp(1.4rem, 0.381vw + 1.25rem, 1.8rem) clamp(1.8rem, 1.905vw + 1.06rem, 3.8rem) clamp(2.2rem, 0.571vw + 1.98rem, 2.8rem) clamp(1.8rem, 1.905vw + 1.06rem, 3.8rem);
}

.p-home-case__item:first-child {
    border: 2px solid var(--color-green);
}

.p-home-case__item:last-child {
    border: 2px solid var(--color-vivid-orange);
}

.p-home-case__label-img {
    display: block;
    max-width: 460px;
    margin: 0 auto min(1.389vw, 20px) auto;
}

.p-home-case__item:first-child .u-img-fit {
    border-radius: 99px;
    box-shadow: 0 5px 0 0 rgba(144, 206, 51, 0.2);
}

.p-home-case__item:last-child .u-img-fit {
    border-radius: 99px;
    box-shadow: 0 5px 0 0 rgba(248, 125, 12, 0.2);
}

.p-home-case_heading {
    text-align: center;
    margin-bottom: clamp(1.6rem, 0.19vw + 1.526rem, 1.8rem);
    white-space: nowrap;
}

.p-home-case__item:first-child .p-home-case_heading {
    padding-left: clamp(4.238rem, 1.726vw + 3.565rem, 6.05rem);
    padding-right: clamp(4.363rem, 3.797vw + 2.882rem, 8.35rem);
}

.p-home-case__item:last-child .p-home-case_heading {
    padding-left: clamp(5.157rem, 3.136vw + 3.934rem, 8.45rem);
    padding-right: clamp(6.643rem, 3.911vw + 5.118rem, 10.75rem);
}

.p-home-case__summary {
    text-align: center;
}

/*
-------------------------------
support (p-home-support)
-------------------------------
*/
.p-home-support {
    padding-bottom: min(8.611vw, 124px);
}

.p-home-support__inner {
    display: flex;
    justify-content: flex-start;
    gap: clamp(4rem, -0.5902rem + 5.9613vw, 8rem);
}

.p-home-support__figure {
    flex: 0 0 50%;
}

.p-home-support .u-img-fit {
    border-radius: 20px;
}

.p-home-support__list {
    display: flex;
    flex-direction: column;
    gap: 40px;
    flex: 0 0 39.06%;
}

.p-home-support__heading {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    margin-bottom: clamp(1.6rem, 1.34rem + 0.67vw, 2.3rem);
}

.p-home-support__heading::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: clamp(8px, 7.26px + 0.19vw, 10px);
    aspect-ratio: 1 / 1;
    background: var(--color-vivid-orange);
    border-radius: 50%;
    transform: translateY(-50%);
}

.p-home-support__description {
    padding-left: 20px;
}

/*
-------------------------------
about (p-home-about)
-------------------------------
*/
.p-home-about {
    position: relative;
    z-index: 1;
    background: linear-gradient(
        to bottom,
        transparent min(309px, 18vw),
        var(--color-home-wave-bg) min(309px, 18vw)
    );
    padding-bottom: min(7.613vw, 109.63px);
}

.p-home-about__top {
    padding-top: min(2.778vw, 40px);
}

.is-deco-fv5-4 {
    z-index: 2;
    width: min(19.72vw, 284px);
    top: 0;
    left: 7.431vw;
    mix-blend-mode: multiply;
}

.is-deco-fv2-2 {
    z-index: 2;
    width: min(9.722vw, 140px);
    top: min(0.0694vw, 1px);
    right: min(11.81vw, 170px);
    mix-blend-mode: multiply;
}

.p-home-about__wave-area {
    position: absolute;
    width: 100%;
    transform: translateY(max(-1.597vw, -23px));
    z-index: -1;
}

.is-deco-fv1-2 {
    z-index: 2;
    width: min(21.78vw, 313.64px);
    top: min(-2.51vw, -36.15px);
    right: 0;
    mix-blend-mode: multiply;
}

.is-deco-maru4-4 {
    z-index: 2;
    width: min(2.5vw, 36px);
    top: min(0.2083vw, 3px);
    left: 3.264vw;
    mix-blend-mode: multiply;
}

.is-deco-maru2-3 {
    z-index: 2;
    width: min(2.431vw, 35px);
    height: min(2.361vw, 34px);
    object-fit: contain;
    top: min(6.25vw, 90px);
    left: 13.19vw;
}

.p-home-about .section-title {
    margin-bottom: 0;
}

.p-home-about__heading {
    margin-top: clamp(8.6rem, 1.52vw + 8rem, 10.2rem);
    margin-bottom: min(1.181vw, 17px);
}

.p-home-about__description {
    margin-bottom: clamp(3.8rem, 1.15vw + 3.351rem, 5.009rem);
}

.p-home-about__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
}

.p-home-about__item {
    display: flex;
    flex-direction: column;
    flex: 0 0 360px;
    background: var(--color-white);
    border-radius: 20px;
    padding: 0 clamp(20px, 0.286vw + 18.89px, 23px) clamp(20.17px, 0.54vw + 19.82px, 26px) clamp(20px, 0.381vw + 18.51px, 24px);
}

.p-home-about__img {
    margin-top: max(-0.9896vw, -14.25px);
    margin-bottom: clamp(1.6rem, 0.76vw + 1.303rem, 2.4rem);
}

.p-home-list__heading {
    margin-bottom: clamp(1.6rem, 0.381vw + 1.451rem, 2rem);
}

.p-home-about__item:nth-child(1) .p-home-list__heading {
    padding-left: clamp(0rem, 23.13vw - 23.711rem, 6rem);
    padding-right: clamp(0rem, 28.14vw - 28.848rem, 7.3rem);
}

.p-home-about__item:nth-child(2) .p-home-list__heading {
    padding-left: clamp(0rem, 0.952vw - 0.371rem, 1rem);
    padding-right: clamp(0.6rem, 1.62vw - 0.032rem, 2.3rem);
}

.p-home-about__item:nth-child(3) .p-home-list__heading {
    margin-bottom: clamp(1.6rem, 0.19vw + 1.526rem, 1.8rem);
}

.p-home-about__item:nth-child(1) .p-home-list__description {
    margin-bottom: min(0.2021vw, 2.91px);
}

.p-home-about__item:nth-child(2) .p-home-list__description {
    margin-bottom: 6px;
}

.is-deco-illust2 {
    z-index: -1;
    width: min(17.64vw, 254px);
    top: min(45.35vw, 653px);
    left: 0;
}

/*
-------------------------------
visitCta (p-home-visitCta)
-------------------------------
*/
.p-home-visitCta {
    position: relative;
    z-index: 1;
    background: linear-gradient(
        to bottom,
        var(--color-home-wave-bg) min(191px, 20vw),
        transparent min(191px, 20vw)
    );
    padding-bottom: min(6.319vw, 91px);
}

.p-home-visitCta__wave-area {
    position: absolute;
    width: 100%;
    z-index: -1;
    padding-top: min(13.26vw, 191px);
}

.p-home-worries .p-home__waveSvg,
.p-home-visitCta .p-home__waveSvg,
.u-cta__wave-area .p-home__waveSvg,
.p-word-homework__wave-area--bottom {
    margin-top: -1px;
}

.p-home-visitCta__inner {
    position: relative;
    z-index: 2;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 min(2.778vw, 40px);
}

.p-home-visitCta__container {
    max-width: 1280px;
    display: flex;
    flex-direction: column;
    background: var(--color-vivid-orange);
    border-radius: 40px;
    padding: min(3.819vw, 55px) min(4.167vw, 60px);
}

.p-home-visitCta__heading {
    padding-left: clamp(2.6rem, 18.67vw - 4.68rem, 22.2rem);
    padding-right: clamp(2.6rem, 15.81vw - 3.56rem, 19.2rem);
    margin-bottom: clamp(2.8rem, 0.76vw + 2.5rem, 3.6rem);
}

.p-home-visitCta__flexArea {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: min(2.778vw, 40px);
    margin-bottom: min(3.056vw, 44px);
}

.p-home-visitCta__list {
    display: flex;
    flex-direction: column;
    gap: clamp(0.6rem, 0.19vw + 0.526rem, 0.8rem);
}

.p-home-visitCta__item {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: clamp(1rem, 0.19vw + 0.926rem, 1.2rem);
}

.p-home-visitCta__item::before {
    content: "";
    width: clamp(24px, 0.38vw + 22.51px, 28px);
    aspect-ratio: 1 / 1;
    background: url(img/icon/check_icon-orange.svg) no-repeat center / contain;
}

.p-home-visitCta__slider {
    background: var(--color-white);
    border-radius: 20px;
    padding: 31px min(4.167vw, 60px) min(1.979vw, 28.5px) min(4.167vw, 60px);
}

.p-home-visitCta .splide__list {
    display: flex !important;
    justify-content: space-between;
    gap: min(2.778vw, 40px);
}

.p-home-visitCta .splide__slide {
    flex: 0 0 30.77%;
}

.p-home-visitCta .splide__slide .u-img-fit {
    border-radius: 10px;
}

.p-home-visitCta__img {
    margin-bottom: 10px;
}

.p-home-visitCta__illust {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 3;
}

.p-home-visitCta__kid {
    position: absolute;
    display: block;
    width: clamp(78px, 4vw + 62.4px, 120px);
}

.p-home-visitCta__kid.-left {
    left: 40px;
    top: -40.51%;
}

.p-home-visitCta__kid.-right {
    right: 30px;
    top: -40.51%;
}

/*
-------------------------------
lesson (p-home-lesson)
-------------------------------
*/
.p-home-lesson {
    padding-bottom: min(5.972vw, 86px);
}

.p-home-lesson .section-title {
    margin-bottom: clamp(3rem, 0.95vw + 2.629rem, 4rem);
}

.p-home-lesson .splide__list {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px 13px;
}
@media (max-width: 768px) {
    .p-home-lesson .splide__list {
        display: flex !important;
        gap: initial;
        grid-template-columns: initial;
    }
}


.p-home-lesson .splide__slide:nth-child(6) {
  grid-column: 2;
}

.p-home-lesson .splide__slide {
    flex: 0 0 18.75%;
}

/*
-------------------------------
lessonFlow (p-home-lessonFlow)
-------------------------------
*/
.p-home-lessonFlow {
    padding-bottom: min(6.25vw, 90px);
}

.p-home-lessonFlow__inner {
    display: flex;
    justify-content: flex-end;
    gap: min(5.417vw, 78px);
}

.p-home-lessonFlow__textArea {
    flex: 0 0 39.22%;
}

.p-home-lessonFlow .section-title {
    margin-bottom: clamp(2.4rem, 1.714vw + 1.731rem, 4.2rem);
}

.p-home-lessonFlow__list {
    margin-bottom: 30px;
}

.p-home-lessonFlow__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 20px;
    background-color: var(--color-vivid-orange);
    border-radius: 10px;
    margin-bottom: clamp(1rem, 0.19vw + 0.926rem, 1.2rem);
}

.p-home-lessonFlow__item:last-child {
    padding-bottom: 0;
}

/* 点線 */
.p-home-lessonFlow__item:not(:last-child)::after {
    content: "";
    position: absolute;
    left: clamp(1.3rem, 0.571vw + 1.077rem, 1.9rem);
    transform: translateX(-50%);
    top: clamp(4.4rem, 0.476vw + 4.214rem, 4.9rem);
    bottom: clamp(0.6rem, 0.476vw + 0.414rem, 1.1rem);
    width: 3px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='3' height='9'%3E%3Cline x1='1.5' y1='1.5' x2='1.5' y2='1.5' stroke='%23F87D0CCC' stroke-width='3' stroke-linecap='round' stroke-dasharray='1 8'/%3E%3C/svg%3E");
    background-size: 3px 9px; /* 1(点) + 8(隙間) = 9px 周期 */
    background-repeat: repeat-y;
    background-position: center top;
}

.p-home-lessonFlow__item {
    position: relative;
    padding-bottom: 22px;
}

.p-home-lessonFlow__body {
    padding-left: clamp(3.8rem, 0.19vw + 3.726rem, 4rem);
}

.p-home-lessonFlow__description:first-of-type {
    padding-left: 2px;
}

.p-home-lessonFlow__description + .p-home-lessonFlow__description {
    margin-top: clamp(2rem, 1.238vw + 1.517rem, 3.3rem);
}

.p-home-lessonFlow__videoArea {
    flex: 0 0 50%;
    display: flex;
    flex-direction: column;
    padding-top: 53px;
}

.p-home-lessonFlow__videoWrapper {
    position: relative;
    width: 100%;
    max-width: 640px;
    height: 0;
    padding-top: 56.25%; /* 縦横比を「16:9」に微調整 */
    margin-bottom: clamp(1.2rem, 0.381vw + 1.051rem, 1.6rem);
}

.p-home-lessonFlow__videoInput {
    display: none;
}

.p-home-lessonFlow__videoLabel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2; /* 動画より手前に配置 */
    cursor: pointer;
}

.p-home-lessonFlow__videoLabel,
.p-home-lessonFlow__videoWrapper {
    background: var(--color-light-yellow);
}

.p-home-lessonFlow__videoThumb img {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.p-home-lessonFlow__videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    border: none;
}

/* 画像をクリックしてチェックが入ったら、画像を消す */
.p-home-lessonFlow__videoInput:checked ~ .p-home-lessonFlow__videoLabel {
    display: none;
}

.p-home-lessonFlow__videoCaption {
    margin-bottom: clamp(1.2rem, -0.857vw + 2.434rem, 2.1rem);
}

.p-home-lessonFlow__videoLink {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    margin-left: auto;
}

.p-home-lessonFlow__videoLink::after {
    content: "";
    width: 23px;
    aspect-ratio: 1 / 1;
    background: url(img/icon/arrow_icon-bg_orange.svg) no-repeat center / contain;
}

/*
-------------------------------
flow (p-home-flow)
-------------------------------
*/
.p-home-flow {
    padding-bottom: min(6.181vw, 89px);
}

.p-home-flow .section-title {
    text-align: left;
    margin-bottom: clamp(3rem, 2.57vw + 2rem, 4.2rem);
}

.p-home-flow__list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 93.1%;
    gap: 30px;
    margin: 0 auto;
}

:root {
    --flow-padding-t: clamp(2rem, 0.85vw + 1.66rem, 2.9rem);
    --flow-padding-l: clamp(1.6rem, 2.28vw + 0.71rem, 4rem);
}

.p-home-flow__item {
    position: relative;
    display: flex;
    background: var(--color-white);
    border-radius: 20px;
    padding:
        var(--flow-padding-t)
        14px
        clamp(1.5rem, 0.66vw + 1.24rem, 2.2rem)
        var(--flow-padding-l);
}

.p-home-flow__item:first-child {
    padding-top: clamp(2rem, 0.67vw + 1.74rem, 2.7rem);
}

.p-home-flow__item:nth-child(3) {
    padding-bottom: clamp(1.5rem, 1.24vw + 1.02rem, 2.8rem);
}

.p-home-flow__item:nth-child(4) {
    padding-top: clamp(2rem, 0.57vw + 1.78rem, 2.6rem);
    padding-bottom: clamp(1.6rem, 0.86vw + 1.27rem, 2.5rem);
}

/* 点線 */
.p-home-flow__item:not(:last-child)::after {
    content: "";
    position: absolute;
    left: calc(var(--flow-padding-l) + (9.26% / 2)); /* アイコンの幅の半分 + padding-leftの半分 を考慮して調整 */
    transform: translateX(-50%);
    top: calc(var(--flow-padding-t) + 6.944vw + 10px);
    bottom: -52px;
    width: 3px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='3' height='9'%3E%3Cline x1='1.5' y1='1.5' x2='1.5' y2='1.5' stroke='%23F87D0CCC' stroke-width='3' stroke-linecap='round' stroke-dasharray='1 8'/%3E%3C/svg%3E");
    background-size: 3px 9px;
    background-repeat: repeat-y;
    background-position: center top;
    z-index: 1;
}

.p-home-flow__item:first-child::after {
    top: calc(clamp(2rem, 0.67vw + 1.74rem, 2.7rem) + 6.944vw + 12px);
}

.p-home-flow__label {
    flex: 0 0 9.75%;
    aspect-ratio: 1 / 1;
}

.p-home-flow__label .u-img-fit {
    border-radius: 50px;
}

.p-home-flow__item:nth-child(4) .p-home-flow__label {
    padding-top: 3px;
}

.p-home-flow__body {
    padding-left: clamp(2rem, 1.24vw + 1.52rem, 3.3rem);
}

.p-home-flow__content {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: clamp(0.8rem, 0.19vw + 0.73rem, 1rem);
}

.p-home-flow__item:first-child .p-home-flow__content {
    padding-top: 2px;
}

.p-home-flow__item:nth-child(3) .p-home-flow__body {
    margin: auto 0 auto 0;
}

/*
-------------------------------
schedule (p-home-schedule)
-------------------------------
*/
.p-home-schedule {
    position: relative;
    z-index: 1;
    padding-bottom: min(7.5vw, 108px);
}

.p-home-schedule__inner {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    gap: min(7.083vw, 102px);
}

.p-home-schedule .section-title {
    margin-bottom: clamp(1.5rem, 1.133vw + 1.058rem, 2.5rem);
    text-align: left;
    width: 250%;
}

.p-home-schedule__left {
    flex: 0 0 32.66%;
}

.p-home-schedule__list {
    display: flex;
    flex-direction: column;
    gap: 11px;
    padding-left: clamp(0.8rem, 0.19vw + 0.726rem, 1rem);
    margin-bottom: clamp(2.4rem, 1.905vw + 1.657rem, 4.4rem);
}

.p-home-schedule__item {
    position: relative;
    display: inline-block;
    padding-left: clamp(1.1rem, 0.19vw + 1.026rem, 1.3rem);
}

.p-home-schedule__item::before {
    content: "";
    position: absolute;
    left: 0;
    top: calc(1em * 1.5 / 2);
    width: 5px;
    aspect-ratio: 1 / 1;
    background: var(--color-orange);
    border-radius: 50%;
    transform: translateY(calc(-50% + 2.5px));
}

.p-home-schedule__illust {
    width: 86.84%;
    margin-left: auto;
}

.p-home-schedule__right {
    flex: 0 0 54.69%;
    display: flex;
    justify-content: space-between;
    padding-top: 76px;
}

.p-home-schedule__table {
    flex: 0 0 48.57%;
    border-collapse: collapse;
}

.m-weekday { border: 2px solid var(--color-green); }
.m-holiday { border: 2px solid var(--color-orange); }

.p-home-schedule__caption {
    padding: clamp(0.3rem, 0.648vw + 0.047rem, 0.98rem) 38px;
}

.m-weekday .p-home-schedule__caption {
    background: var(--color-green);
}

.m-holiday .p-home-schedule__caption {
    background: var(--color-orange);
}

/* 番号列のスタイル */
.p-home-schedule th[scope="row"] {
    width: 18.24%;
    background: var(--color-pale-lime);
    border: 2px solid var(--color-green);
    padding: 7px;
}

.m-holiday th[scope="row"] {
    background-color: var(--color-light-cream);
    border: 2px solid var(--color-orange);
}

.p-home-schedule td {
    background: var(--color-white);
    font-feature-settings: "tnum";
    padding: 7px clamp(0.9rem, 1.81vw + 0.194rem, 2.8rem);
}

.m-weekday td {
    border: 2px solid var(--color-green);
}

.m-holiday td {
    border: 2px solid var(--color-orange);
}

.is-deco-maru4-5 {
    rotate: -10.49deg;
    z-index: 2;
    width: min(2.5vw, 36px);
    bottom: min(2.153vw, 31px);
    right: 17.15vw;
    mix-blend-mode: multiply;
}

/*
-------------------------------
blog (p-home-blog)
-------------------------------
*/
.p-home-blog {
    position: relative;
    z-index: 1;
    background: linear-gradient(to bottom, transparent min(107.44px, 7vw), var(--color-home-wave-bg) min(107.44px, 7vw));
    padding-bottom: min(6.944vw, 100px);
}

.is-deco-illust3 {
    z-index: 1;
    width: min(21.02vw, 302.7px);
    top: min(-1.747vw, -25.15px);
    right: 0;
    mix-blend-mode: multiply;
}

.is-deco-maru2-4 {
    z-index: 1;
    width: min(2.431vw, 35px);
    height: min(2.361vw, 34px);
    object-fit: contain;
    top: min(3.125vw, 45px);
    right: 24.65vw;
}

.is-deco-maru2-3 img,
.is-deco-maru2-4 img,
.is-deco-c-maru2-2 img,
.is-deco-c-maru2-3 img,
.is-deco-c-maru2-4 img {
    height: 100%;
}

.is-deco-fv5-5 {
    z-index: -1;
    width: min(12.71vw, 183px);
    bottom: min(26.94vw, 388px);
    left: 0;
}

.is-deco-fv2-3 {
    z-index: -1;
    width: min(12.15vw, 175px);
    bottom: min(4.444vw, 64px);
    left: 5.486vw;
    mix-blend-mode: multiply;
}

.p-home-blog .l-inner {
    position: relative;
    z-index: 2;
}

.p-home-blog__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: max(-1.072vw, -15.44px);
}

.p-home-blog .section-title {
    margin-bottom: clamp(3.8rem, 0.381vw + 3.651rem, 4.2rem);
}

.p-home-blog__sub-title {
    display: inline-block;
    margin-bottom: min(0.4167vw, 6px);
}

.p-home-blog__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: clamp(2.524rem, 2.168vw + 1.679rem, 4.8rem);
}

.p-home-blog__item {
    width: calc((360 / 1160) * 100%);
}

.c-reportCard__link {
    display: flex;
    flex-direction: column;
}

.c-reportCard__img {
    margin-bottom: 10px;
}

.c-reportCard__img > img {
    aspect-ratio: 360 / 240;
    inline-size: 100%;
    object-fit: cover;
}

.c-reportCard__title {
    margin-bottom: 4px;
    word-break: break-all;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.c-reportCard__content {
    display: flex;
    flex-direction: column;
}

.c-reportCard__content p {
    min-height: calc(1em * 1.2 * 2);
    word-break: break-all;
}

.c-reportCard__date {
    display: inline-flex;
    align-items: center;
    gap: 4.86px;
    font-feature-settings: "tnum";
    margin-left: auto;
}

.c-reportCard__date::before {
    content: "";
    width: 11px;
    aspect-ratio: 1 / 1;
    background: url(img/icon/time-icon.svg) no-repeat center / contain;
}

.p-home-blog .c-button--primary {
    margin: 0 auto;
}

/*
-------------------------------
link (p-home-link)
-------------------------------
*/
.p-home-link {
    background: var(--color-home-wave-bg);
    padding-bottom: min(6.944vw, 100px);
}

.p-home-link .section-title {
    margin-bottom: clamp(3rem, 0.952vw + 2.629rem, 4rem);
}

.p-home-link__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: clamp(1rem, 0.571vw + 0.777rem, 1.6rem) 1.373%;
}

.p-home-link__item {
    flex: 0 0 23.97%;
}

.p-home-link .u-img-fit {
    border-radius: 6px;
}

/*
-------------------------------
cta (p-home-cta)
-------------------------------
*/
.p-home-cta {
    position: relative;
    z-index: 1;
    background: linear-gradient(
        to bottom,
        var(--color-home-wave-bg) min(206.1px, 14.31vw),
        transparent min(206.1px, 14.31vw)
    );
}

.p-home-cta__wave-area {
    position: absolute;
    width: 100%;
    z-index: -1;
    padding-top: min(1.787vw, 25.73px);
}

.p-home-cta .p-home__waveSvg {
    margin-top: -1px;
}

.p-home-cta .l-inner--wide {
    position: relative;
    z-index: 2;
}

.p-home-cta__container {
    display: flex;
    flex-direction: column;
    background: var(--color-vivid-orange);
    border-radius: 40px;
    padding: clamp(5.2rem, 0.381vw + 5.051rem, 5.6rem) clamp(2rem, 11.429vw - 2.457rem, 14rem) clamp(4.2rem, 1.714vw + 3.531rem, 6rem) clamp(2rem, 11.429vw - 2.457rem, 14rem);
}

.p-home-cta__title {
    margin-bottom: clamp(3rem, 0.286vw + 2.889rem, 3.3rem);
}

.p-home-cta__flexArea {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: clamp(3rem, 7.601vw - 2.845rem, 8.1rem);
}

.p-home-cta__figure {
    flex: 0 0 46%;
}

.p-home-cta__figure .u-img-fit {
    border-radius: 20px;
}

.p-home-cta__content {
    flex: 0 0 44%;
    display: flex;
    flex-direction: column;
    gap: clamp(3rem, 0.952vw + 2.629rem, 4rem);
}

/*
-------------------------------
footer
-------------------------------
*/
.l-footer {
    padding-top: 80px;
    padding-bottom: 23px;
}

.l-footer__inner {
    /* max-width: 1440px; */
    margin: auto;
    padding: 0 40px;
}

.l-footer__container {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 53px;
}

.l-footer__info {
    flex: 0 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.l-footer__logoArea {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 10px;

}

.l-footer__logo {
    width: 100%;
    max-width: 308px;
    margin-top: -65px;
}

.l-footer__logoLink {
    display: block;
    width: 100%;
}

.l-footer__logo img {
    width: 100%;
}

.l-footer__contact {
    font-style: normal;
    margin-top: -60px;
}

.l-footer__catchphrase {
    padding-left: 12px;
    margin-bottom: 9px;
}

.l-footer__company-name {
    margin-bottom: 16px;
}

.l-footer__address {
    padding-left: 12px;
}

.l-footer__nav {
    flex: 0 0 61.18%;
}

.l-footer__nav-row {
    display: flex;
    flex-wrap: wrap;
    row-gap: min(2.778vw, 40px);
    column-gap: min(4.167vw, 60px);
}

.l-footer__nav-title {
    margin-bottom: min(0.4167vw, 6px);
}

.l-footer__nav-list {
    padding-left: min(0.2778vw, 4px);

}

.l-footer__nav-title--standalone {
    margin-bottom: 0;
    margin-top: min(1.458vw, 21px);
}

.l-footer__copyright {
    text-align: center;
}

.l-footer__nav-title a .inline-block:first-child {
    margin-right: 0.5em;
}

/*
-------------------------------
First View (u-firstView)
-------------------------------
*/
.u-firstView {
    position: relative;
    z-index: 1;
    overflow: hidden;
    background: linear-gradient(to bottom, transparent calc(100% - 93px), var(--color-home-wave-bg) calc(100% - 93px));
    padding-bottom: 92px;
}

.u-firstView__decorations.-back {
    z-index: 1;
}

.u-firstView__decorations {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.is-deco-c-maru1-1 {
    width: min(2.222vw, 32px);
    top: min(1.25vw, 18px);
    left: 31.04vw;
    mix-blend-mode: multiply;
}

.is-deco-c-maru2-2 {
    width: min(2.431vw, 35px);
    height: min(2.361vw, 34px);
    object-fit: contain;
    top: min(8.194vw, 118px);
    left: 41.53vw;
}

.u-firstView__content-inner {
    position: relative;
    z-index: 2;
    /* max-width: 1440px; */
    width: min(1320px, 100% - var(--inner-padding));
    margin-left: auto;
    /* padding-top: min(1.944vw, 28px); */
    padding-top: 1.944vw;
    padding-left: var(--inner-padding);
}

.u-firstView__flexArea {
    display: flex;
    justify-content: space-between;
}

.u-firstView__titleArea {
    flex: 0 1 38.46%;
    padding-top: 6.667vw;
}

.u-firstView__main {
    flex: 0 1 54.31%;
}

.u-firstView__main .u-img-fit {
    border-radius: 999px 0 0 999px;
}

.u-firstView__main.is-dummy {
    aspect-ratio: 1412 / 736;
    max-width: 1300px;
}

.u-firstView__decorations.-front {
    z-index: 3;
}

.is-deco-c-fv5-2 {
    width: min(17.74vw, 255.45px);
    top: min(19.44vw, 280px);
    left: 37.64vw;
}

.u-firstView__wave-area {
    position: absolute;
    width: 100%;
    transform: translateY(max(-15.14vw, -218px));
    z-index: -1;
}

.is-deco-c-maru5-1 {
    width: min(9.514vw, 137px);
    left: 0;
    top: max(-4.444vw, -64px);
}

.c-breadcrumb {
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 4;
    /* transform: translateY(min(-4.097vw, -59px)); */
    transform: translateY(-4.097vw);
}

.c-breadcrumb__inner {
    width: min(var(--width-standard), 100% - (var(--inner-padding) * 2));
    padding: 0 var(--inner-padding);
    margin: 0 auto;
}

/*
-------------------------------
about (u-about)
-------------------------------
*/
.u-about {
    background: var(--color-home-wave-bg);
    padding-bottom: max(5.556vw, 80px);
}

.u-about .section-title {
    margin-bottom: 30px;
}

.u-about__content {
    max-width: 824px;
    margin: 0 auto;
}

/*
-------------------------------
question (u-question)
-------------------------------
*/
.u-question {
    background: var(--color-home-wave-bg);
    padding-bottom: min(5.174vw, 74.51px);
}

.c-question__comment {
    border: 2px solid var(--color-green);
    background: var(--color-white);
    border-radius: 20px;
    max-width: 860px;
    width: 100%;
    margin: 0 auto;
    padding: clamp(1.4rem, 0.381vw + 1.251rem, 1.8rem) clamp(1.8rem, 6.381vw - 0.689rem, 8.5rem) clamp(2.2rem, 2.602vw + 1.185rem, 4.932rem) clamp(1.8rem, 6.381vw - 0.689rem, 8.5rem);
    display: flex;
    flex-direction: column;
    position: relative;
}

.c-question__comment::before {
    content: "";
    position: absolute;
    bottom: -13.49px;
    left: 50%;
    width: 24px;
    height: 24px;
    background: var(--color-white);
    border-left: 2px solid var(--color-green);
    border-bottom: 2px solid var(--color-green);
    transform: translateX(-50%) rotate(-45deg);
    border-bottom-left-radius: 3px;
}

.u-question h2 {
    width: 100%;
    max-width: 680px;
    margin: 0 auto min(1.667vw, 24px) auto;
}

.u-question .u-img-fit {
    border-radius: 99px;
    box-shadow: 0 5px 0 0 rgba(144, 206, 51, 0.2);
}

.u-question__list {
    display: flex;
    justify-content: center;
    gap: min(4.1667vw, 60px);
}

.u-question__item::before {
    content: "・";
    display: inline;
}

/*
-------------------------------
cta01 (u-question)
-------------------------------
*/
.u-cta01 {
    position: relative;
    z-index: 1;
    padding-bottom: min(7.431vw, 107px);
}

.u-cta__wave-area {
    position: absolute;
    width: 100%;
    z-index: -1;
}

.u-cta__inner {
    position: relative;
    z-index: 2;
}

.u-cta__container {
    display: flex;
    flex-direction: column;
    background: var(--color-vivid-orange);
    border-radius: 40px;
    padding: min(3.889vw, 56px) min(3.958vw, 57px) min(3.889vw, 56px) min(4.167vw, 60px);
    position: relative;
}

.u-cta__title {
    margin-bottom: clamp(3.2rem, 0.76vw + 3.2rem, 4.3rem);
}

.u-cta__flexArea {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: clamp(3rem, 7.601vw - 2.845rem, 8.1rem);
}

.u-cta01 .p-home-visitCta__cta {
    margin-bottom: 8px;
}

.u-cta__container .c-button--primary {
    max-width: 366px;
}

.u-cta__illust {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 3;
}

.u-cta__kid {
    position: absolute;
    display: block;
}

.u-cta__kid.-kid01 {
    width: clamp(88px, 4vw + 72.4px, 130px);
    right: 50px;
    top: -17.15%;
}

/*
-------------------------------
voice (u-voice)
-------------------------------
*/
.u-voice {
    position: relative;
    z-index: 1;
    padding-bottom: min(9.722vw, 140px);
}

.is-deco-c-maru4-4 {
    z-index: 2;
    width: min(2.5vw, 36px);
    top: max(-2.014vw, -29px);
    right: 14.38vw;
    mix-blend-mode: multiply;
}

.is-deco-c-maru2-3 {
    z-index: 2;
    width: min(2.431vw, 35px);
    height: min(2.361vw, 34px);
    object-fit: contain;
    top: min(4.028vw, 58px);
    right: 4.167vw;
}

.u-voice .section-title {
    margin-bottom: clamp(3rem, 1.905vw + 2.057rem, 4.8rem);
}

.u-voice__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: min(1.667vw, 24px);
}

.u-voice__item {
    flex: 0 1 368px;
}

.is-deco-c-illust1 {
    z-index: -1;
    width: min(28.33vw, 408px);
    bottom: min(4.792vw, 69px);
    left: 1.111vw;
    mix-blend-mode: multiply;
}

/*
-------------------------------
plan (u-plan)
-------------------------------
*/
.u-plan {
    position: relative;
    z-index: 1;
    background: linear-gradient(to bottom, transparent min(100px, 6.8vw), var(--color-home-wave-bg) min(100px, 6.8vw));
    padding-bottom: min(8.056vw, 116px);
}

.is-deco-c-fv2-2 {
    width: min(13.68vw, 197px);
    top: min(6.944vw, 100px);
    right: 11.25vw;
    mix-blend-mode: multiply;
}

.is-deco-c-fv1-2 {
    z-index: -1;
    width: min(21.39vw, 308px);
    top: min(4.976vw, 71.66px);
    right: 0;
    mix-blend-mode: multiply;
}

.is-deco-c-fv5-5 {
    z-index: -1;
    width: min(12.43vw, 179px);
    top: min(51.88vw, 747px);
    left: 0;
}

.is-deco-c-fv5-4 {
    z-index: -1;
    width: min(11.81vw, 170px);
    top: min(66.67vw, 960px);
    left: 0;
    mix-blend-mode: multiply;
}

.is-deco-c-maru5-2 {
    z-index: -1;
    width: min(32.19vw, 463.48px);
    bottom: min(7.912vw, 113.93px);
    right: 0;
}

.is-deco-c-maru2-4 {
    z-index: -1;
    width: min(2.431vw, 35px);
    height: min(2.361vw, 34px);
    object-fit: contain;
    bottom: min(13.82vw, 199px);
    left: 3.194vw;
}

.is-deco-c-maru4-5 {
    z-index: -1;
    rotate: -10.49deg;
    width: min(2.5vw, 36px);
    bottom: min(3.404vw, 49.02px);
    left: 16.25vw;
    mix-blend-mode: multiply;
}

.u-plan__header {
    padding-top: min(2.361vw, 34px);
    margin-bottom: clamp(2.5rem, 1.376vw + 3.518rem, 5.5rem);
}

.u-plan .section-title {
    margin-bottom: min(1.389vw, 20px);
}

.u-plan__list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 30px;
}

.u-plan__item {
    display: flex;
    background: var(--color-white);
    border-radius: 20px;
    padding: clamp(1.6rem, 2.286vw + 0.709rem, 4rem);
}

.u-plan__item:nth-child(3) {
    padding-bottom: clamp(2.6rem, 2.286vw + 1.709rem, 5rem);
}

.u-plan__label {
    flex: 0 0 15.74%;
    aspect-ratio: 1 / 1;
    margin-left: 1px;
}

.u-plan__item:nth-child(4) .u-plan__label {
    padding-top: 2px;
}

.u-plan__label .u-img-fit {
    border-radius: 85px;
}

.u-plan__body {
    padding-left: clamp(1.7rem, 1.221vw + 1.242rem, 3rem);
}

.u-plan__item:first-child .u-plan__body {
    padding-left: clamp(1.7rem, 1.221vw + 1.242rem, 2.8rem);
}

.u-plan__item:nth-child(5) .u-plan__body {
    padding-top: 5px;
}

.u-plan__content-group {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: min(4.097vw, 59px);
}

.u-plan__title {
    margin-bottom: clamp(0.8rem, 1.143vw + 0.354rem, 2rem);
}

.u-plan__example-area {
    flex: 0 0 54.55%;
    aspect-ratio: 480 / 180;
    background: var(--color-light-yellow);
    border-radius: 6px;
    padding: 12px clamp(1.4rem, 0.571vw + 1.177rem, 2rem) clamp(1.4rem, 0.571vw + 1.177rem, 2rem) clamp(1.4rem, 0.571vw + 1.177rem, 2rem);
}

.u-plan__item:first-child .u-plan__example-area {
    flex: 0 0 54.43%;
}

.u-plan__item:nth-child(3) .u-plan__example-area {
    aspect-ratio: 480 / 140;
}

.u-plan__item:nth-child(4) .u-plan__example-area {
    aspect-ratio: 480 / 290;
}

.u-plan__item:nth-child(5) .u-plan__example-area {
    aspect-ratio: 480 / 201;
}

.u-plan__subtitle-label {
    display: block;
    margin-bottom: 2px;
}

.u-plan__example-caption::before {
    content: "■";
    display: inline;
}

.u-plan__example-list li::before {
    content: "・";
    display: inline;
}

/*
-------------------------------
cta02 (u-cta02)
-------------------------------
*/
.u-cta02 {
    position: relative;
    z-index: 1;
    padding-bottom: min(6.944vw, 100px);
}

.u-cta02 .u-cta__container,
.u-cta03 .u-cta__container {
    padding-bottom: min(4.861vw, 70px);
}

.u-cta02 .u-cta__flexArea,
.u-cta03 .u-cta__flexArea {
    gap: clamp(3rem, 7.601vw - 2.845rem, 7.7rem);
    align-items: flex-start;
}

.u-cta02 .p-home-visitCta__cta,
.u-cta03 .p-home-visitCta__cta {
    padding-top: 7px;
}

.u-cta__kid.-kid02 {
    width: clamp(129px, 5.81vw + 106.34px, 190px);
    right: 50px;
    top: -11.49%;
}

/*
-------------------------------
case (u-case)
-------------------------------
*/
.u-case {
    padding-bottom: min(6.944vw, 100px);
}

.u-case .section-title {
    margin-bottom: clamp(3.3rem, 2.095vw + 2.483rem, 5.5rem);
}

.u-case__list {
    display: flex;
    flex-direction: column;
    gap: clamp(2.6rem, 2.286vw + 1.709rem, 5.0rem);
    margin-bottom: clamp(4.0rem, 3.810vw + 2.514rem, 8.0rem);
}

.u-case__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: clamp(2.0rem, 0.952vw + 1.629rem, 3.0rem);
}

.u-case__item:first-child .u-case__title {
    margin-bottom: clamp(0.8rem, 1.143vw + 0.354rem, 2rem);
}

.u-case-card {
    background: var(--color-white);
    border-radius: 20px;
    padding: clamp(1.4rem, 1.502vw + 0.837rem, 3.0rem) clamp(1.8rem, 2.066vw + 1.025rem, 4.0rem) clamp(1.8rem, 2.066vw + 1.025rem, 4.0rem) clamp(1.8rem, 2.066vw + 1.025rem, 4.0rem);
}

.u-case__label-group {
    display: flex;
    align-items: center;
    border-radius: 5px;
    background: var(--color-pink-pale);
    margin-bottom: clamp(2.4rem, 0.381vw + 2.251rem, 2.8rem);
}

.u-case-card__label {
    flex: 0 0 23.15%;
    padding: 10px 10px 12px 10px;
    border-radius: 5px 0 0 5px;
    text-align: center;
}

.u-case-card__label--pink { background: var(--color-pink-light); }

.u-case-card__label-text {
    padding: 10px min(1.389vw, 20px) 12px min(1.389vw, 20px);
}

.u-case-card__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: min(4.167vw, 60px);
}

.u-case-card__figure {
    display: flex;
    gap: clamp(1.0rem, 0.952vw + 0.629rem, 2.0rem);
}

.u-case-card__figure picture {
    flex: 0 0 52.94%;
}

.u-case-card__label--green {
    background: var(--color-green);
}

.u-case-card--green .u-case__label-group {
    background: var(--color-pale-lime-light);
}

.u-case-card__flex {
    display: flex;
    padding-left: 10px;
    justify-content: space-between;
}

.u-case-card__list {
    counter-reset: item;
}

.u-case-card__list li {
    position: relative;
    padding-left: 1em;
}

.u-note {
    display: block;
    margin-left: -1em;
}

.u-case-card__list li::before {
    counter-increment: item;
    content: counter(item) ".";
    position: absolute;
    left: 0;
}

.u-case-card__img {
    flex: 0 0 43.93%;
}

.u-case-card__label--orange {
    background: var(--color-accent-yellow);
}

.u-case-card--orange .u-case__label-group {
    background: var(--color-yellow-pale);
}

.u-case-card--orange .u-case-card__flex {
    padding-left: 12px;
}

.u-case__others {
    max-width: 860px;
    margin: 0 auto;
    width: 100%;
}

.u-case__others-title {
    display: flex;
    align-items: center;
    gap: 18px;
    white-space: nowrap;
    margin-bottom: clamp(2.0rem, 0.952vw + 1.629rem, 3.0rem);
}

.u-case__others-title::before,
.u-case__others-title::after {
    content: "";
    flex-grow: 1;
    height: 2px;
    background: var(--color-vivid-orange);
}

.u-case__others-list-wrapper {
    display: flex;
    justify-content: center;
    gap: min(4.167vw, 60px);
    padding-bottom: clamp(2.6rem, 1.333vw + 2.08rem, 4.0rem);
    position: relative;
}

.u-case__others-list-wrapper::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color-vivid-orange);
}

.u-case__others-list li::before {
    content: "・";
    display: inline;
}

/*
-------------------------------
homework (p-word-homework)
-------------------------------
*/
.p-word-homework {
    position: relative;
    z-index: 1;
    --wave-top: min(100px, 6.9vw);
    --wave-bottom: min(190px, 13.19vw);
    background: linear-gradient(
        to bottom,
        transparent var(--wave-top),
        var(--color-home-wave-bg) var(--wave-top),
        var(--color-home-wave-bg) calc(100% - var(--wave-bottom)),
        transparent calc(100% - var(--wave-bottom))
    );
}

.p-word-homework .l-inner {
    position: relative;
    z-index: 2;
}

.is-deco-c-maru4-6 {
    z-index: 2;
    width: min(2.5vw, 36px);
    top: max(-1.944vw, -28px);
    right: 30vw;
    mix-blend-mode: multiply;
}

.is-deco-c-maru2-5 {
    z-index: 2;
    width: min(2.431vw, 35px);
    top: min(4.931vw, 71px);
    right: 21.18vw;
}

.p-word-homework__header {
    padding-top: min(1.389vw, 20px);
    margin-bottom: clamp(2.7rem, 3.143vw + 1.474rem, 6.0rem);
}

.p-word-homework .section-title {
    margin-bottom: min(1.389vw, 20px);
}

.p-word-homework__flexArea {
    display: flex;
    justify-content: space-between;
    gap: min(4.444vw, 64px);
}

.p-word-homework__figure {
    flex: 0 0 39.66%
}

.p-word-homework__figure .u-img-fit {
    border-radius: 20px;
}

.p-word-homework__list {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.p-word-homework__heading {
    margin-bottom: 16px;
}

.p-word-homework__description-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.p-word-homework__description-list li {
    position: relative;
    display: inline-block;
    padding-left: 11px;
}

.p-word-homework__description-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.9em;
    width: 5px;
    aspect-ratio: 1 / 1;
    background: var(--color-orange);
    border-radius: 50%;
    transform: translateY(-50%);
}

.is-deco-c-fv5-6 {
    z-index: 1;
    width: min(17.36vw, 250px);
    top: min(12.92vw, 186px);
    right: 2.083vw;
}

.is-deco-p-maru3-1 {
    z-index: 1;
    width: min(13.47vw, 194px);
    bottom: min(9.236vw, 133px);
    left: 0;
    mix-blend-mode: multiply;
}

.is-deco-c-maru4-2 {
    z-index: 2;
    width: min(2.5vw, 36px);
    bottom: min(5.903vw, 85px);
    left: 15vw;
    mix-blend-mode: multiply;
}

.is-deco-maru5-3 {
    z-index: 2;
    width: min(20.82vw, 299.83px);
    bottom: max(-26.7vw, -384.49px);
    right: 0;
}

/*
-------------------------------
point (p-word-point)
-------------------------------
*/
.p-word-point {
    position: relative;
    z-index: 1;
    padding: min(4.167vw, 60px) 0 min(7.361vw, 106px) 0;
}

.p-word-point .section-title {
    margin-bottom: clamp(2.7rem, 3.143vw + 1.474rem, 6.0rem);
}

.p-word-point__section {
    background: var(--color-white);
    border-radius: 20px;
    padding: clamp(2.0rem, 1.905vw + 1.257rem, 4.0rem) clamp(2.0rem, 3.810vw + 0.514rem, 6.0rem) clamp(2.0rem, 1.905vw + 1.257rem, 4.0rem) 0;
    margin-bottom: clamp(2.6rem, 2.286vw + 1.709rem, 5.0rem);
}

.p-word-point__section:last-child {
    margin-bottom: 0;
}

.p-word-point__header {
    display: flex;
    justify-content: space-between;
    gap: min(2.778vw, 40px);
    margin-bottom: min(2.778vw, 40px);
}

.p-word-point__point-label {
    flex: 0 0 25.45%;
}

.p-word-point__point-label .u-img-fit {
    border-radius: 0 99px 99px 0;
}

.p-word-point__main-title {
    margin-bottom: 16px;
}

.p-word-point__case,
.p-word-point__voices {
    /* 太さ3pxの正円ドットを、10px間隔で配置。
    1.5px(半径) + 0.1px(にじみ防止) / 10px(間隔) 4px(描画高さ)
    */
    background: radial-gradient(circle, var(--color-orange) 1.5px, #0000 1.6px) top center / 10px 4px repeat-x;
    margin-left: clamp(2.0rem, 3.810vw + 0.514rem, 6.0rem);
    padding-top: 13px;
}

.p-word-point__case-title {
    margin-bottom: clamp(2.34rem, 0.724vw + 2.057rem, 3.1rem);
}

.p-word-point__step-list {
    display: flex;
    justify-content: space-between;
    gap: min(2.778vw, 40px);
}

.p-word-point__step-item {
    flex: 0 0 30.77%;
}

.p-word-point__step-figure picture {
    display: block;
    margin-bottom: 10px;
}

.p-word-point__step-sub-list li::before {
    content: "・";
    display: inline;
}

.p-word-point__voices-title {
    margin-bottom: 19px;
}

.p-word-point__voice-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 10px;
}

.p-word-point__voice-item {
    background: var(--color-vanilla);
    padding: 12px 20px;
    border-radius: 99px;
}

.is-deco-c-fv1-3 {
    z-index: -1;
    width: min(25.49vw, 367.01px);
    bottom: min(22.98vw, 330.95px);
    left: 0;
    mix-blend-mode: multiply;
}

.is-deco-illust4 {
    z-index: -1;
    width: min(33.13vw, 477px);
    bottom: max(-4.306vw, -62px);
    right: 0;
    mix-blend-mode: multiply;
}

/*
-------------------------------
cta03 (u-cta03)
-------------------------------
*/
.u-cta__kid.-kid03 {
    width: clamp(119px, 5.81vw + 96.34px, 180px);
    right: 60px;
    top: -14.73%;
}

/*
-------------------------------
page-development
-------------------------------
*/
.page-id-13 .c-question__comment,
.page-id-11 .c-question__comment {
    padding: clamp(1.4rem, 0.381vw + 1.251rem, 1.8rem) clamp(1.8rem, 6.667vw - 0.8rem, 8.8rem) clamp(2.2rem, 1.462vw + 1.63rem, 3.735rem) clamp(1.8rem, 6.667vw - 0.8rem, 8.8rem);
}

.page-id-13 .u-question__list,
.page-id-11 .u-question__list {
    flex-direction: column;
    gap: min(0.8333vw, 12px);
    width: fit-content;
    margin-inline: auto;
}

.page-id-13 .u-cta01 {
    padding-bottom: min(7.222vw, 104px);
}

.page-id-13 .u-cta__kid.-kid01 {
    right: 60px;
}

.page-id-13 .is-deco-c-maru4-4 {
    top: max(-1.806vw, -26px);
}

.page-id-13 .is-deco-c-maru2-3 {
    top: min(4.236vw, 61px);
}

.page-id-13 .u-voice .section-title {
    margin-bottom: clamp(3rem, 2.118vw + 2.05rem, 5.1rem);
}

.page-id-13 .u-plan__item {
    padding-right: clamp(1.6rem, 6vw - 0.74rem, 7.9rem);
}

.page-id-13 .u-plan__label {
    flex: 0 0 16.33%;
    padding-top: 1.538%;
}

.page-id-13 .u-plan__item:nth-child(3) {
    padding-bottom: clamp(1.6rem, 2.286vw + 0.709rem, 4rem);
}

.page-id-13 .u-plan__item:nth-child(3) .u-plan__label {
    padding-top: 2px;
}

.page-id-13 .u-plan__item:nth-child(5) .u-plan__body {
    padding-top: 0;
}

.page-id-13 .is-deco-c-fv5-5 {
    top: min(49.1vw, 707px);
}

.page-id-13 .is-deco-c-fv5-4 {
    top: min(63.89vw, 920px);
}

.page-id-13 .is-deco-c-maru5-2 {
    width: min(33.02vw, 475.48px);
    bottom: min(6.963vw, 100.27px);
}

.page-id-13 .is-deco-c-maru2-4 {
    bottom: min(15vw, 216px);
}

.page-id-13 .is-deco-c-maru4-5 {
    bottom: min(3.335vw, 48.02px);
}

.page-id-13 .u-case {
    padding-bottom: min(6.319vw, 91px);
}

.page-id-13 .u-case .section-title {
    margin-bottom: clamp(2.7rem, 3.143vw + 1.474rem, 6.0rem);
}

.u-case__list02 {
    display: grid;
    gap: clamp(2.4rem, 0.694vw + 2.4rem, 3.4rem) clamp(2.0rem, 0.833vw + 2.0rem, 3.2rem);
    grid-template-columns: repeat(auto-fit, minmax(296px, 1fr));
    margin-bottom: clamp(6rem, 2.095vw + 5.183rem, 8.2rem);
}

.page-id-13 .c-reportCard {
    max-width: 400px;
    margin: 0 auto;
}

.u-case__list02 .c-reportCard__img {
    border-radius: 10px;
    margin-bottom: 12px;
}

.u-case__list02 .c-reportCard__img > img {
    aspect-ratio: 296 / 200;
}

.u-case__list02 .p-reportCard__title {
    margin-bottom: 12px;
}

.u-case__others02-title {
    margin-bottom: clamp(1.5rem, 0.417vw + 1.5rem, 2.1rem);
}

.u-case__others02-list {
    display: flex;
    flex-direction: column;
    gap: clamp(1.5rem, 0.476vw + 1.314rem, 2rem);
    background: var(--color-white);
    border-radius: 20px;
    padding: clamp(1.4rem, 2.476vw + 0.434rem, 4rem) clamp(1.8rem, 5.905vw - 0.503rem, 8rem);
}

.u-case__others02-item:not(:last-child) {
    padding-bottom: clamp(1.4rem, 2.476vw + 0.434rem, 3rem);
    position: relative;
}

.u-case__others02-item:not(:last-child)::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--color-cream-yellow);
    border-radius: 100vh;
}

.u-case__others02-item:last-child {
    padding-bottom: 12px;
}

.u-case__others02-item-title {
    position: relative;
    display: inline-block;
    padding-left: clamp(1.2rem, 0.19vw + 1.126rem, 1.4rem);
    margin-bottom: 8px;
}

.u-case__others02-item-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 6px;
    aspect-ratio: 1 / 1;
    background: var(--color-orange);
    border-radius: 50%;
    transform: translateY(-50%);
}

.page-id-13 .p-word-homework {
    background: linear-gradient(
        to bottom,
        transparent var(--wave-top),
        var(--color-home-wave-bg) var(--wave-top)
    );
    padding-bottom: min(7.361vw, 106px);
}

.page-id-13 .is-deco-maru5-3 {
    width: min(20.73vw, 298.49px);
    bottom: max(-10.38vw, -149.49px);
    left: 0;
}

.page-id-13 .p-word-homework__header {
    margin-bottom: clamp(2.7rem, 1.458vw + 2.7rem, 4.8rem);
}

.p-development-feedback__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: min(2.778vw, 40px);
}

.p-development-feedback__item {
    background: url(img/feedback01.png) no-repeat center / contain;
    background: url(img/feedback01.webp) no-repeat center / contain;
    flex: 0 1 360px;
    aspect-ratio: 360 / 371;
    display: flex;
    position: relative;
}

.p-development-feedback__body {
    padding: 18.62% 10% 10% 17.78%;
}

.p-development-feedback__item-title {
    margin-bottom: 0.8em;
}

.p-development-feedback__item--green {
    background: url(img/feedback02.png) no-repeat center / contain;
    background: url(img/feedback02.webp) no-repeat center / contain;
}

.p-development-feedback__item--yellow {
    background: url(img/feedback03.png) no-repeat center / contain;
    background: url(img/feedback03.webp) no-repeat center / contain;
}

/*
-------------------------------
page-support
-------------------------------
*/
.page-id-11 .u-cta01 .u-cta__flexArea {
    align-items: flex-start;
}

.page-id-11 .u-cta01 .p-home-visitCta__cta {
    margin-bottom: 0;
}

.page-id-11 .u-cta__kid.-kid01 {
    top: -17.53%;
}

.page-id-11 .u-cta01 {
    padding-bottom: min(8.333vw, 120px);
}

.p-support {
    padding-bottom: min(5.278vw, 76px);
}

.p-support .u-img-fit {
    border-radius: 20px;
}

.p-support .p-home-support__inner {
    align-items: center;
    margin-bottom: clamp(4rem, 5.333vw + 1.92rem, 9.6rem);
}

.p-support .section-title {
    margin-bottom: 0;
}

.p-support .p-home-support__description {
    padding-left: 0;
}

.p-support .is-deco-c-maru4-4 {
    top: max(-3.958vw, -57px);
}

.p-support .is-deco-c-maru2-3 {
    top: min(2.083vw, 30px);
}

.p-support .is-deco-c-illust1 {
    bottom: min(25.21vw, 363px);
}

.p-support__sub-title {
    margin-bottom: clamp(3rem, 0.95vw + 2.629rem, 4rem);
}

.p-support__card-list {
    display: flex;
    justify-content: space-between;
    gap: min(4.444vw, 64px);
    background: var(--color-white);
    border-radius: 20px;
    padding: clamp(2.0rem, 1.905vw + 1.257rem, 4.0rem) clamp(2.0rem, 3.810vw + 0.514rem, 6.0rem) clamp(2.0rem, 1.905vw + 1.257rem, 3.8rem) clamp(2.0rem, 3.810vw + 0.514rem, 6.0rem)
}

.p-support__card-item {
    flex: 0 0 46.92%;
}

.p-support__card-title {
    margin-bottom: 8px;
}

.page-id-11 .u-plan {
    padding-bottom: min(8.333vw, 120px);
}

.page-id-11 .is-deco-c-fv2-2 {
    top: min(4.954vw, 71.34px);
}

.page-id-11 .is-deco-c-fv1-2 {
    top: min(3.75vw, 54px);
}

.page-id-11 .is-deco-c-fv5-5 {
    z-index: 1;
    top: min(9.514vw, 137px);
}

.page-id-11 .is-deco-c-fv5-4 {
    top: min(24.31vw, 350px);
}

.page-id-11 .is-deco-c-maru5-2 {
    width: min(33.02vw, 475.48px);
    bottom: min(5.366vw, 77.27px);
}

.page-id-11 .is-deco-c-maru2-4 {
    bottom: min(9.167vw, 132px);
}

.page-id-11 .is-deco-c-maru4-5 {
    bottom: 0;
}

.page-id-11 .u-plan__header {
    margin-bottom: clamp(2.5rem, 4.657vw + 1.408rem, 5.6rem);
}

.page-id-11 .u-plan .section-title {
    margin-bottom: 0;
}

.page-id-11 .p-home-flow__item:first-child {
    padding-bottom: clamp(1.5rem, 1.429vw + 0.943rem, 3rem);
}

.p-home-flow__action {
    display: flex;
    align-items: flex-end;
    gap: clamp(1.6rem, 6.855vw - 3.672rem, 6.2rem);
}

.p-home-flow__action .p-home-flow__description {
    flex: 0 0 64.73%;
}

.p-home-flow__link02 {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.p-home-flow__link02::after {
    content: "";
    width: 23px;
    aspect-ratio: 1 / 1;
    background: url(img/icon/arrow_icon-bg_orange.svg) no-repeat center / contain;
}

.page-id-11 .p-home-flow__item:nth-child(2) {
    padding-bottom: clamp(1.5rem, 1.238vw + 1.017rem, 2.8rem);
}

.page-id-11 .p-home-flow__item:nth-child(2) .p-home-flow__body,
.page-id-11 .p-home-flow__item:nth-child(4) .p-home-flow__body,
.page-id-11 .p-home-flow__item:nth-child(5) .p-home-flow__body {
    margin: auto 0 auto 0;
}

.page-id-11 .p-home-flow__item:nth-child(3),
.page-id-11 .p-home-flow__item:nth-child(4),
.page-id-11 .p-home-flow__item:nth-child(5) {
    margin-top: 2px;
}

.page-id-11 .p-home-flow__item:nth-child(4),
.page-id-11 .p-home-flow__item:nth-child(5) {
    padding: var(--flow-padding-t) 14px clamp(1.5rem, 0.66vw + 1.24rem, 2.2rem) var(--flow-padding-l);
    padding-bottom: clamp(1.5rem, 1.24vw + 1.02rem, 2.8rem);
}

.page-id-11 .p-home-flow__item:nth-child(4) .p-home-flow__label {
    padding-top: 0;
}

.page-id-11 .p-home-flow__item:first-child::after {
    bottom: -50px;
}

.p-info {
    position: relative;
    z-index: 1;
    background: linear-gradient(to top, transparent min(250px, 13.19vw), var(--color-home-wave-bg) min(250px, 13.19vw));
    padding-bottom: min(7.014vw, 101px);
}

.p-info .l-inner {
    position: relative;
    z-index: 2;
}

.p-info .section-title {
    margin-bottom: clamp(3rem, 0.95vw + 2.629rem, 4rem);
}

.p-info .u-case__others02-list {
    margin-bottom: 8px;
}

.p-info .u-case__others02-item:last-child {
    padding-bottom: 8px;
}

.p-info .is-deco-c-fv1-3 {
    z-index: 1;
    bottom: min(12.08vw, 173.95px);
}

.p-info .is-deco-c-illust5 {
    width: min(19.93vw, 287px);
    bottom: max(-5.972vw, -86px);
    right: 0;
    mix-blend-mode: multiply;
}

.u-faq {
    display: grid;
    grid-template-columns:
    211fr
    minmax(20px, 1fr)
    minmax(auto, 1000px)
    minmax(20px, 1fr)
    229fr;
    padding-bottom: min(7.014vw, 101px);
}

.u-faq__inner {
    grid-column: 3;
    width: 100%;
}

.u-faq .section-title {
    margin-bottom: clamp(2.4rem, 3.048vw + 1.211rem, 5.6rem);
}

.u-faq__item {
    margin-bottom: 20px;
    padding-bottom: clamp(1.4rem, 1.143vw + 0.954rem, 2.6rem);
    position: relative;
}

.u-faq__item:last-child {
    margin-bottom: 0;
}

.u-faq__item::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--color-creamy-light-orange);
    border-radius: 100vh;
}

.p-faq__question {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border: none;
    width: 100%;
    padding: 0 10px;
}

.p-faq__question-icon {
    flex-shrink: 0;
    margin-right: 0.322em;
}

.p-faq__question-button {
    height: 30px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: flex-start;
    margin-left: auto;
    padding-left: 20px;
    padding-top: 7px;
}

.p-faq__question-button-arrow {
    position: relative;
    display: inline-block;
    width: 20px;
    aspect-ratio: 1 / 1;
    transition: transform 0.3s ease;
}

/* 横棒（−） */
.p-faq__question-button-arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    background: var(--color-orange);
    transform: translate(-50%, -50%);
}

/* 縦棒（＋用） */
.p-faq__question-button-arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    height: 20px;
    background: var(--color-orange);
    transform: translate(-50%, -50%);
}

/* open状態 */
.p-faq__question-button-arrow.is-open::after {
    opacity: 0;
}

.p-faq__answer {
    /* 開いたときだけ高さが増えるように */
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    padding: 0 50px 0 10px;
}

.p-faq__answer-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    padding-top: clamp(1.4rem, 0.952vw + 1.029rem, 2.4rem);
}

.p-faq__item.is-open .p-faq__question-button-arrow {
    transform: rotate(180deg);
}

/*
-------------------------------
page-order
-------------------------------
*/
.page-id-15 .u-about {
    padding-bottom: max(6.389vw, 92px);
}

.page-id-15 .u-cta01 .u-cta__container {
    padding-top: min(4.106vw, 59.13px);
    padding-bottom: min(3.3vw, 47.52px);
}

.page-id-15 .u-cta01 .u-cta__title {
    margin-bottom: 24.92px;
}

.u-cta__stack-layout {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.u-cta__message-block {
    margin-bottom: clamp(2.6rem, 0.212vw + 2.517rem, 2.823rem);
}

.page-id-15 .u-cta01 .u-cta__flexArea {
    max-width: 1000px;
    width: 100%;
    padding-top: 8px;
    position: relative;
}

.page-id-15 .u-cta01 .u-cta__flexArea::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color-white);
    border-radius: 100vh;
}

.u-cta__media-content {
    display: flex;
    gap: min(2.014vw, 29px);
}

.u-cta__media-content picture {
    flex: 0 0 21.67%;
}

.u-cta__media-body {
    padding-top: clamp(1.8rem, 0.286vw + 1.689rem, 2.1rem);
}

.u-cta__media-lead {
    margin-bottom: 8px;
}

.page-id-15 .u-cta01 {
    background: linear-gradient(to bottom, var(--color-home-wave-bg) min(10vw, 28px), transparent min(10vw, 28px));
    padding-bottom: min(7.222vw, 104px);
}

.page-id-15 .u-cta01 .p-home-visitCta__cta {
    margin-bottom: 0;
    padding-right: 3px;
}

.page-id-15 .u-cta__kid.-kid01 {
    top: -15.17%;
}

.p-course {
    padding-bottom: min(2.778vw, 40px);
}

.page-id-15 .u-cta01 .u-cta__wave-area {
    padding-top: min(1.944vw, 28px);
}

.page-id-15 .is-deco-c-maru4-4 {
    top: max(-3.056vw, -44px);
}

.page-id-15 .is-deco-c-maru2-3 {
    top: min(2.986vw, 43px);
}

.is-deco-p-fv1-4 {
    z-index: -1;
    width: min(25.9vw, 373.03px);
    bottom: min(6.872vw, 98.95px);
    left: 0;
    mix-blend-mode: multiply;
}

.p-course__header {
    margin-bottom: clamp(3rem, 1.69vw + 2.366rem, 4.8rem);
}

.p-course .section-title {
    margin-bottom: min(1.389vw, 20px);
}

.p-course__schedule-title {
    margin-bottom: clamp(3rem, 1.69vw + 2.366rem, 4.8rem);
}

.p-course__schedule-group {
    margin-bottom: 24px;
}

.p-course__schedule {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: min(2.222vw, 32px);
}

.p-course .m-green,
.p-course .m-yellow {
    flex: 0 0 320px;
}

.p-course .m-green {
    border: 2px solid var(--color-green);
}

.p-course .m-yellow {
    border: 2px solid var(--color-accent-yellow);
}

.p-course .m-orange {
    flex: 0 0 456px;
    border: 2px solid var(--color-orange);
}

.p-course__schedule-caption {
    padding: clamp(0.3rem, 0.657vw + 0.054rem, 1rem) 10px;
}

.m-green .p-course__schedule-caption {
    background: var(--color-green);
}

.m-yellow .p-course__schedule-caption {
    background: var(--color-accent-yellow);
}

.m-orange .p-course__schedule-caption {
    background: var(--color-orange);
}

.p-course__schedule th[scope="row"] {
    width: 38.32%;
    padding: 7px;
}

.p-course .m-green th[scope="row"] {
    background: var(--color-pale-lime);
    border: 2px solid var(--color-green);
}

.p-course .m-yellow th[scope="row"] {
    background: var(--color-light-yellow);
    border: 2px solid var(--color-accent-yellow);
}

.p-course .m-orange th[scope="row"] {
    border: 2px solid var(--color-orange);
}

.p-course .m-orange th[scope="row"].p-course__schedule__th-time {
    width: 26.41%;
    background: var(--color-light-cream);
}

.p-course__schedule td {
    background: var(--color-white);
    font-feature-settings: "tnum";
    padding: 9.5px clamp(0.9rem, 1.81vw + 0.194rem, 2.8rem);
}

.p-course .m-green td {
    border: 2px solid var(--color-green);
    padding-top: 9px;
    padding-bottom: 9px;
}

.p-course .m-green td span {
    display: block;
}

.p-course .m-yellow td {
    border: 2px solid var(--color-accent-yellow);
}

.p-course .m-orange td {
    border: 2px solid var(--color-orange);
}

.p-course .m-orange th[scope="row"].p-home-schedule__th-set {
    width: 30.81%;
}

.p-course__schedule__price-wrapper {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 4px;
    width: 100%;
}

.p-course__notes {
    padding-left: 2px;
}

.p-course__note-item::before {
    content: "※";
    display: inline;
}

.p-faq-section {
    position: relative;
    z-index: 1;
    padding-bottom: min(9.375vw, 135px);
}

.page-id-15 .is-deco-fv5-4 {
    width: min(16.67vw, 240px);
    left: 64.72vw;
    mix-blend-mode: multiply;
}

.is-deco-p-fv5-5 {
    width: min(24.17vw, 348px);
    top: min(5.556vw, 80px);
    right: 4.722vw;
}

.p-faq-section .u-faq {
    grid-template-columns: 1fr minmax(20px, 1fr) minmax(auto, 1000px) minmax(20px, 1fr) 1fr;
    padding-top: min(8.333vw, 120px);
    padding-bottom: 0;
}

.page-id-15 .u-cta02 {
    padding-bottom: 0;
}

.page-id-15 .u-cta02 .u-cta__container {
    padding: min(3.889vw, 56px);
}

.page-id-15 .u-cta02 .u-cta__flexArea {
    gap: clamp(3rem, 4.695vw + 1.24rem, 8rem);
    justify-content: center;
}

.page-id-15 .u-cta02 .p-home-visitCta__cta {
    padding-top: 0;
}

.page-id-15 .u-cta__kid.-kid02 {
    top: -12.36%;
}

.page-id-15 .l-footer {
    position: relative;
    z-index: 1;
}

.page-id-15 .is-deco-c-illust5 {
    z-index: -1;
    width: min(19.93vw, 287px);
    bottom: min(11.32vw, 163px);
    right: 0;
    mix-blend-mode: multiply;
}

/*
-------------------------------
page-seminar
-------------------------------
*/
.page-id-17 .is-deco-c-maru1-1,
.page-id-6 .is-deco-c-maru1-1 {
    top: min(1.528vw, 22px);
    left: 31.11vw;
}

.page-id-17 .is-deco-c-maru2-2,
.page-id-6 .is-deco-c-maru2-2 {
    top: min(8.472vw, 122px);
    left: 41.6vw;
}

.page-id-17 .u-firstView {
    padding-bottom: 88px;
}

.page-id-17 .u-firstView__content-inner,
.page-id-6 .u-firstView__content-inner {
    padding-top: min(2.222vw, 32px);
}

.page-id-17 .is-deco-c-maru5-1,
.page-id-6 .is-deco-c-maru5-1 {
    width: min(9.583vw, 138px);
    top: max(-4.167vw, -60px);
}

.page-id-17 .is-deco-c-fv5-2,
.page-id-6 .is-deco-c-fv5-2 {
    top: min(19.72vw, 284px);
    left: 37.71vw;
}

.page-id-17 .u-firstView__titleArea {
    gap: min(6.458vw, 93px);
}

.page-id-17 .u-about {
    padding-bottom: max(7.222vw, 104px);
}

.page-id-17 .u-about .section-title {
    margin-bottom: clamp(3rem, 3.238vw + 1.737rem, 6.4rem);
}

.page-id-17 .u-text-nowrap {
    display: inline;
}

.page-id-17 .u-case__list02 {
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(2.4rem, 1.524vw + 1.806rem, 4rem) clamp(2rem, 4.19vw + 0.366rem, 6.4rem);
    background: var(--color-white);
    border-radius: 20px;
    margin-bottom: 0;
    padding: clamp(1.4rem, 2.476vw + 0.434rem, 4rem) clamp(1.8rem, 4vw + 0.24rem, 6rem) clamp(1.4rem, 3.238vw + 0.137rem, 4.8rem) clamp(1.8rem, 4vw + 0.24rem, 6rem);
}

.page-id-17 .u-case__list02 .c-reportCard__img {
    border-radius: 0;
    margin-bottom: 20px;
}

.page-id-17 .u-case__list02 .c-reportCard__img > img {
    aspect-ratio: 488 / 304;
}

.page-id-17 .u-case__list02 .p-reportCard__title {
    margin-bottom: 8px;
}

.page-id-17 .u-case__item02:nth-child(3) .p-reportCard__title {
    width: 101%;
}

/*
-------------------------------
page-corporate
-------------------------------
*/
.page-id-6 .u-firstView {
    padding-bottom: 104px;
}

.page-id-6 .l-inner {
    position: relative;
    z-index: 2;
}

.p-map {
    position: relative;
    z-index: 1;
    background: linear-gradient(to top, transparent min(190px, 13.19vw), var(--color-home-wave-bg) min(190px, 13.19vw));
    padding-bottom: 0;
}

.page-id-6 .is-deco-c-fv1-2 {
    z-index: 1;
    width: min(28.19vw, 406px);
    top: min(31.04vw, 447px);
}

.page-id-6 .is-deco-c-maru4-4 {
    top: min(2.778vw, 40px);
}

.page-id-6 .is-deco-c-maru2-3 {
    top: min(8.819vw, 127px);
}

.p-company {
    padding-top: min(4.167vw, 60px);
    padding-bottom: min(12.57vw, 181px);
}

.p-company__inner {
    display: grid;
    grid-template-columns: 1fr minmax(20px, 1fr) minmax(auto, 1000px) minmax(20px, 1fr) 1fr;
}

.p-company__inner > .section-title,
.p-company__inner > .p-company__info-table {
    grid-column: 3;
    width: 100%;
}

.p-company .section-title {
    margin-bottom: clamp(3rem, 2.91vw + 1.408rem, 5.6rem);
}

.p-company .c-table01 {
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}

.p-company .c-table01 th {
    width: 18%;
}

.p-company th,
.p-company td {
    padding-bottom: clamp(1.4rem, 1.502vw + 0.237rem, 2.4rem);
}

.p-company tr + tr th,
.p-company tr + tr td {
    padding-top: clamp(1.4rem, 1.502vw + 0.237rem, 2.4rem);
}

.p-company tr {
    position: relative;
}

.p-company tr::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--color-creamy-light-orange);
    border-radius: 100vh;
}

.p-company__info-list li::before {
    content: "・";
    display: inline;
}

.p-company__link {
    text-decoration: underline;
    text-decoration-color: rgba(77, 72, 68, 0.3);
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}

.p-group {
    position: relative;
    z-index: 1;
    background: linear-gradient(to bottom, transparent min(100px, 6.8vw), var(--color-home-wave-bg) min(100px, 6.8vw));
    padding-bottom: min(10.14vw, 146px);
}

.is-deco-illust6 {
    z-index: 2;
    width: min(15.37vw, 221.29px);
    top: max(-5.764vw, -83px);
    left: 0;
    mix-blend-mode: multiply;
}

.page-id-6 .is-deco-fv5-4 {
    z-index: -1;
    width: min(16.67vw, 240px);
    top: min(90.9vw, 1309px);
    left: 63.47vw;
}

.page-id-6 .is-deco-p-fv5-5 {
    z-index: -1;
    top: min(96.81vw, 1394px);
    right: 6.875vw;
}

.p-group__header {
    padding-top: min(2.222vw, 32px);
    margin-bottom: clamp(2.5rem, 4.657vw + 1.408rem, 5.6rem);
}

.p-group .section-title {
    margin-bottom: min(1.389vw, 20px);
}

.p-group__container-title {
    position: relative;
    display: inline-block;
    padding-left: clamp(1.8rem, 1.726rem + 0.19vw, 2rem);
    margin-bottom: clamp(1.6rem, 1.524vw + 1.006rem, 3.2rem);
}

.p-group__container-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: clamp(0.9rem, 0.286vw + 0.789rem, 1.2rem);
    aspect-ratio: 1 / 1;
    background: var(--color-orange);
    border-radius: 50%;
    transform: translateY(calc(-50% + 1px));
}

.p-group .u-case__list02 {
    gap: clamp(2.0rem, 0.833vw + 2.0rem, 3.2rem);
    grid-template-columns: repeat(auto-fill, minmax(266px, 1fr));
    margin-bottom: clamp(4rem, 0.381rem + 9.28vw, 8rem);
}

.p-group .u-case__item02 {
    background: var(--color-white);
    border-radius: 10px;
}

.p-group .c-reportCard__img {
    border-radius: 10px 10px 0 0;
}

.p-group .c-reportCard__img > img {
    aspect-ratio: 266 / 168;
}

.p-group .c-reportCard__category {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 99px;
    background-color: #ccc;
    color: var(--color-white);
    margin-bottom: 12px;
}

.p-group .c-reportCard.term-day-service .c-reportCard__category {
    background: var(--color-mint-green);
    color: var(--color-emerald-green);
}

.p-group .c-reportCard.term-child-support .c-reportCard__category {
    background: var(--color-warm-white);
    color: var(--color-orange);
}

.p-group .c-reportCard.term-massage .c-reportCard__category {
    background: var(--color-ice-blue);
    color: var(--color-Sky-blue);
}

.p-group .c-reportCard.term-relaxation .c-reportCard__category {
    background: var(--color-pale-lavender);
    color: var(--color-amethyst);
}

.p-group .c-reportCard.term-shouro-a .c-reportCard__category,
.p-group .c-reportCard.term-shouro-b .c-reportCard__category {
    background: var(--color-green-tea);
    color: var(--color-lime-green);
}

.p-group .c-reportCard.term-soudan .c-reportCard__category {
    background: var(--color-baby-pink);
    color: var(--color-rose-pink);
}

.c-reportCard.term-nichu .c-reportCard__category {
    background: var(--color-butter-yellow);
    color: var(--color-mustard-yellow);
}

.p-group .c-reportCard__body {
    padding: 0 18px 17px 20px;
}

.p-group .p-reportCard__title {
    margin-bottom: 0;
}

.p-group .c-reportCard__area-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

.day-service .u-case__list02 .u-case__item02:first-child .c-reportCard__area-wrapper {
    gap: 8px;
}

.p-group .c-reportCard__area-category {
    display: inline-block;
    padding: 3px 5px;
    border: 1px solid var(--color-black);
}

.day-service .u-case__list02 .u-case__item02:first-child .c-reportCard__area-category {
    padding: 3px 7px;
}

.day-service .u-case__list02 .u-case__item02:nth-child(2) .c-reportCard__category {
    margin-bottom: 8px;
}

.self-evaluation .p-group__container-title {
    margin-bottom: clamp(1.6rem, 2.381vw + 0.671rem, 4.1rem);
}

.p-group__selfEvaluation-links {
    display: flex;
    gap: clamp(1.6rem, 2.381vw + 0.671rem, 4.1rem);
    margin-bottom: clamp(2.4rem, 1.905vw + 1.657rem, 4.4rem);
    padding-left: clamp(1.8rem, 1.726rem + 0.19vw, 2rem);
}

.p-group__linkText {
    position: relative;
}

.p-group__linkText::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--color-black);
    width: 100%;
    height: 1px;
}

.p-group__selfEvaluation-links .p-group__linkText:nth-child(2)::after {
    width: 99.52%;
}

.p-group__selfEvaluation-grid {
    display: flex;
    flex-direction: column;
    gap: clamp(2.0rem, 0.833vw + 2.0rem, 3.2rem);
    padding-left: clamp(1.8rem, 1.726rem + 0.19vw, 2rem);
}

.p-group__selfEvaluation-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.p-group__selfEvaluation-year {
    white-space: nowrap;
    margin-right: min(2.778vw, 40px);
}

.p-group__selfEvaluation-buttonGroup {
    display: flex;
    gap: min(1.111vw, 16px);
    width: 78.17%;
}

.p-group .c-btnEvaluation {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-white);
    border: 1px solid var(--color-black);
    padding: 7px;
    width: 26.94%;
    white-space: nowrap;
    transition: all 0.2s ease;
}

.c-btnEvaluation:hover {
    background-color: #f7f7f7;
    border-color: #333333;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    transform: translateY(-1px);
}

.page-id-6 .u-cta03 .u-cta__wave-area {
    transform: translateY(max(-3.194vw, -46px));
}

/*
-------------------------------
blog
-------------------------------
*/
.ly-pageReport {
    background: linear-gradient(to top, transparent min(190px, 13vw), var(--color-home-wave-bg) min(190px, 13vw));
}

.pageReport__contents {
    display: grid;
    grid-template-columns: 1fr min(24.65vw, 355px);
    grid-template-areas: "main side";
    column-gap: clamp(27.2px, 1.0134vw + 19.407px, 34px);
    padding-block-end: min(6.944vw, 100px);
}

.pageReport__main {
    grid-area: main;
}

.pageReport__cards {
    margin-inline: auto;
    max-inline-size: 100%;
}

.blogCards {
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    grid-template-columns: repeat(2, minmax(0, 360px));
    gap: clamp(16px, 5.216vw - 24.08px, 51px);
}

.blog .p-home-blog__item,
.category .p-home-blog__item,
.archive .p-home-blog__item {
    width: auto;
    display: grid;
    grid-template-rows: subgrid;
}

.c-reportCard__img {
    overflow: hidden;
}

.c-reportCard__img img {
    transition: 0.3s ease-in-out;
}

.c-reportCard__link:hover .c-reportCard__img img {
    transform: scale(1.08);
}

.blog .c-reportCard__img,
.category .c-reportCard__img,
.archive .c-reportCard__img {
    margin-bottom: min(0.6944vw, 10px);
}

.blog .singleArticle-meta,
.category .singleArticle-meta,
.archive .singleArticle-meta {
    margin-block-start: 0;
    margin-block-end: min(0.6944vw, 10px);
}

.ly-pagination-wrapper {
    margin-block-start: min(6.944vw, 100px);
}

.pagination > .nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(13.6212px, 0.9506vw + 6.313px, 20px);
    justify-content: center;
}

.pagination > .nav-links > .page-numbers.current {
    color: var(--color-orange);
}

.pagination > .nav-links > .page-numbers {
    display: grid;
    place-items: center;
    color: var(--color-medium-gray);
    font-weight: var(--font-weight-bold);
    font-size: clamp(1.22591rem, 0.8556vw + 0.5677rem, 1.8rem);
    font-family: Helvetica Neue, Arial, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    text-align: center;
}

.prev .p-pagination__icon {
    transform: scaleX(-1);
}

.sidebar {
    display: grid;
    row-gap: clamp(20.4319px, 1.4259vw + 9.471px, 30px);
    grid-area: side;
    block-size: fit-content;
}

.sidebar-sectionTitle {
    color: var(--color-orange);
    font-weight: var(--font-weight-bold);
    font-size: clamp(1.0897rem, 0.7605vw + 0.5047rem, 1.6rem);
    letter-spacing: 0.02em;
    border-block-end: 1px solid var(--color-orange);
    padding-block-end: clamp(10.2159px, 0.713vw + 4.73px, 15px);
}

.sidebar-report {
    padding-block: clamp(10.2159px, 0.713vw + 4.73px, 15px);
    border-block-end: 1px solid var(--color-medium-gray);
}

.sidebar-reportLink {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas: "img title";
    column-gap: clamp(6.81062px, 0.4753vw + 3.158px, 10px);
}

.sidebar-reportImg {
    grid-area: img;
    inline-size: clamp(74.9168px, 5.2285vw + 34.707px, 110px);
    background: var(--color-gray-light);
}

.sidebar-reportImg > img {
    aspect-ratio: 110 / 70;
    inline-size: 100%;
    object-fit: cover;
}

.sidebar-reportTitle {
    display: -webkit-box;
    grid-area: title;
    -webkit-line-clamp: 3;
    overflow: hidden;
    font-weight: var(--font-weight-medium);
    font-size: clamp(0.953487rem, 0.6654vw + 0.4417rem, 1.4rem);
    line-height: 1.5714285714;
    letter-spacing: 0.02em;
    -webkit-box-orient: vertical;
}

.sidebar-archive, .sidebar-author {
    display: grid;
    margin-block-start: clamp(10.2159px, 0.713vw + 4.73px, 15px);
    row-gap: clamp(6.81062px, 0.4753vw + 3.158px, 10px);
}

.sidebar-author > li > a {
    font-size: clamp(0.953487rem, 0.6654vw + 0.4417rem, 1.4rem);
    letter-spacing: 0.02em;
    transition: color 0.3s ease-in-out;
}

.sidebar-archive {
    row-gap: clamp(8.17274px, 0.5704vw + 3.784px, 12px);
}

.sidebar-archive > li > a {
    font-size: clamp(0.953487rem, 0.6654vw + 0.4417rem, 1.4rem);
    letter-spacing: 0.02em;
    transition: color 0.3s ease-in-out;
}

.blog .c-reportCard__title,
.category .c-reportCard__title,
.archive .c-reportCard__title {
    font-size: clamp(1.22591rem, 0.8556vw + 5.677px, var(--font-size-reportCard-title));
}

.blog .c-reportCard__date,
.category .c-reportCard__date,
.archive .c-reportCard__date {
    font-size: clamp(9.53487px, 0.9635vw + 1.932px, var(--font-size-reportCard-date));
}

.blog .c-reportCard__content p,
.category .c-reportCard__content p,
.archive .c-reportCard__content p {
    font-size: clamp(9.53487px, 0.9635vw + 1.932px, var(--font-size-reportCard-content));
}

/*
-------------------------------
singleArticle
-------------------------------
*/
.pageSingle__contents {
    display: grid;
    grid-template-columns: 1fr min(24.65vw, 355px);
    grid-template-areas: "main side";
    column-gap: clamp(27.2px, 1.0134vw + 19.407px, 34px);
    padding-block-end: min(6.944vw, 100px);
}

.pageSingle__main {
    grid-area: main;
}

.singleArticle-header {
    display: grid;
    row-gap: clamp(12.2591px, 0.7711vw + 6.9248px, 18px);
}

.singleArticle-title {
    color: var(--color-orange);
    font-size: clamp(2.04319rem, 1.3533vw + 1.0026rem, 3rem);
    letter-spacing: 0.02em;
}

.singleArticle-date {
    justify-self: end;
}

.singleArticle-date > time {
    font-size: clamp(0.953487rem, 0.6558vw + 0.44925rem, 1.4rem);
    letter-spacing: 0.02em;
}

.singleArticle-main {
    margin-block-start: clamp(20.4319px, 1.4259vw + 9.471px, 30px);
}

.singleArticle-img {
    inline-size: 100%;
    background: var(--color-gray-light);
}

.singleArticle-img > img {
    aspect-ratio: 750 / 450;
    inline-size: 100%;
    object-fit: cover;
}

.singleArticle-meta {
    display: inline-flex;
    flex-wrap: wrap;
    gap: clamp(8.17274px, 0.5704vw + 3.784px, 12px);
    align-self: start;
    margin-block-start: clamp(13.6212px, 0.9506vw + 6.313px, 20px);
}

.singleArticle-meta .category {
    display: inline-grid;
    grid-auto-flow: column;
    gap: clamp(3.4px, 0.2385vw + 1.5663px, 5px);
    align-items: center;
    border: 1px solid var(--color-orange);
    border-radius: 999px;
    background-color: var(--color-white);
    padding-inline: 18px;
    padding-block: 3px;
    color: var(--color-orange);
    font-size: clamp(0.953487rem, 0.6654vw + 0.4417rem, 1.4rem);
    letter-spacing: 0.02em;
}

.singleArticle-body {
    margin-block-start: clamp(47.6743px, 3.3323vw + 22.0461px, 70px);
}

.singleArticle-body p {
    margin-block-start: clamp(6.81062px, 0.4753vw + 3.158px, 10px);
    font-size: clamp(1.22591rem, 0.8556vw + 0.5677rem, 1.8rem);
    line-height: 2.125;
    letter-spacing: 0.02em;
    text-align: start;
}

.singleArticle-footer {
    margin-block-start: clamp(13.6212px, 0.9506vw + 6.313px, 20px);
    text-align: end;
}

.singleArticle-footer > p {
    display: inline-flex;
    column-gap: 1em;
    font-size: clamp(0.953487rem, 0.6654vw + 0.4417rem, 1.4rem);
    letter-spacing: 0.02em;
}

.singleArticle-footer > p > span > a {
    transition: color 0.3s ease-in-out;
}

.singleArticle-buttons {
    display: grid;
    grid-template-columns: repeat(2, max-content);
    justify-content: center;
    margin-block-start: clamp(13.6212px, 0.9506vw + 6.313px, 20px);
}

.singleArticle-buttons > a[rel="prev"],
.singleArticle-buttons > a[rel="next"] {
    display: inline-grid;
    align-items: center;
    column-gap: clamp(13.6212px, 0.9506vw + 6.313px, 20px);
}

.singleArticle-buttons > a[rel="prev"] {
    grid-template-columns: auto 1fr;
}

.singleArticle-buttons > a[rel="prev"]:not(:only-child) {
    padding-inline-end: clamp(40.8637px, 2.8553vw + 18.9028px, 60px);
    border-inline-end: 1px solid var(--color-orange);
}

.singleArticle-buttons > a {
    color: var(--color-orange);
    font-size: clamp(1.22591rem, 0.8556vw + 0.5677rem, 1.8rem);
    letter-spacing: 0.02em;
}

.singleArticle-buttons > a[rel="prev"]:before,
.singleArticle-buttons > a[rel="next"]:after {
    inline-size: clamp(17px, 1.1923vw + 7.8329px, 25px);
    background-image: url(img/icon/arrow_icon-bg_orange.svg);
    background-position: 50%;
    background-size: contain;
    background-repeat: no-repeat;
    aspect-ratio: 1;
    transition: translate 0.3s ease-in-out;
}

.singleArticle-buttons > a[rel="prev"]:hover::before {
    translate: -5px 0;
}

.singleArticle-buttons > a[rel="next"]:hover::after {
    translate: 5px 0;
}

.singleArticle-buttons > a[rel="prev"]:before {
    rotate: 180deg;
}

.singleArticle-buttons > a[rel="next"] {
    grid-template-columns: 1fr auto;
}

.singleArticle-buttons > a[rel="next"]:not(:only-child) {
    padding-inline-start: clamp(40.8637px, 2.8553vw + 18.9028px, 60px);
}

.singleArticle-buttons > a[rel="prev"]:before {
    rotate: 180deg;
    content: "";
}

.singleArticle-buttons > a[rel="next"]:after {
    content: "";
}

/*
-------------------------------
page-categories
-------------------------------
*/
.ly-pageAuthor {
    background: linear-gradient(to top, transparent min(190px, 13vw), var(--color-home-wave-bg) min(190px, 13vw));
}

.pageAuthor__list {
    border-radius: 10px;
    background-color: var(--color-white);
    padding-inline: clamp(27.2425px, 1.8157vw + 13.8827px, 40px);
    padding-block: clamp(40.8637px, 2.8553vw + 18.9028px, 60px);
    box-shadow: 0 0 10px rgba(75, 137, 209, 0.3);
    margin-block-end: min(69.44vw, 1000px);
}

.authorItem {
    border-block-end: 1px dotted var(--color-medium-gray);
}

.authorItem > a {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: clamp(8.17274px, 0.5711vw + 3.7806px, 12px);
    align-items: center;
    padding-block: clamp(13.6212px, 0.9518vw + 6.301px, 20px);
    font-size: clamp(1.49834rem, 1.0478vw + 0.69385rem, 2.2rem);
    letter-spacing: 0.02em;
    transition: color 0.3s ease-in-out;
}

.authorItem > a:before {
    border-radius: 999px;
    background-color: var(--color-orange);
    aspect-ratio: 1 / 1;
    inline-size: 5px;
    content: "";
}

/*
-------------------------------
404
-------------------------------
*/
.page404-wrapper {
    background: linear-gradient(to top, transparent min(190px, 13vw), var(--color-home-wave-bg) min(190px, 13vw));
}

.page404-message {
    text-align: center;
}

.page404-buttonArea {
    display: flex;
    justify-content: center;
    margin-block-start: clamp(32px, 3vw, 48px);
}

/*
-------------------------------
レスポンシブ
-------------------------------
*/
@media screen and (min-width: 1750px) {
    .is-deco-c-fv1-2 {
        z-index: 1;
    }
    .c-breadcrumb {
        transform: none;
    }
    .u-firstView__flexArea {
        gap: 94px;
        justify-content: flex-end;
    }
}

@media screen and (min-width: 1441px) {
    .p-home-about__item:nth-child(1) .p-home-list__heading,
    .p-home-about__item:nth-child(2) .p-home-list__heading {
        padding-left: 0;
        padding-right: 0;
    }
    .p-home-flow__item:not(:last-child)::after,
    .p-home-flow__item:first-child::after {
        top: 139px;
    }
    .u-firstView__content-inner {
        width: auto;
        padding-left: 9.722vw;
    }
}

@media screen and (min-width: 1436px) and (max-width: 1436px) {
    .p-home-worries__summary {
        margin-top: 456px !important;
    }
}

@media (max-width: 1436px) {
    .p-home-worries__list {
        margin-top: 7.025vw;
    }
    .p-home-worries__summary {
        margin-top: 37.46vw;
    }
}

@media screen and (min-width: 1364px) and (max-width: 1364px) {
    .p-home-worries__summary {
        margin-top: 525px !important;
    }
}

@media (max-width: 1364px) {
    .p-home-worries__summary {
        margin-top: 44.8vw;
    }
    .p-home-schedule .u-lg-up {
        display: block;
    }
}

@media (max-width: 1250px) {
    .u-lg-up {
        display: block;
    }
    .p-home-worries__list {
        margin-top: 11.35vw;
    }
    .p-home-worries__summary {
        margin-top: 51.68vw;
    }
    .p-home-visitCta__flexArea {
        margin-bottom: clamp(10rem, 4.16vw + 6.802rem, 12rem);
    }
    .page-id-13 .u-cta__kid.-kid01,
    .page-id-13 .u-cta__kid.-kid02,
    .page-id-15 .u-cta__kid.-kid02 {
        right: 20px;
    }
}

@media (max-width: 1180px) {
    .u-mid-only {
        display: block;
    }
    .p-home-worries__summary {
        margin-top: 55.9vw;
    }
    .u-cta__flexArea,
    .page-id-11 .u-cta01 .u-cta__flexArea,
    .u-cta02 .u-cta__flexArea,
    .u-cta03 .u-cta__flexArea {
        align-items: center;
    }
    .page-id-9 .u-cta01 .u-cta__flexArea,
    .page-id-13 .u-cta01 .u-cta__flexArea {
        flex-direction: column;
    }
    .u-cta__kid.-kid01,
    .u-cta__kid.-kid02,
    .u-cta__kid.-kid03,
    .page-id-13 .u-cta__kid.-kid01 {
        right: 20px;
        top: -8.5%;
    }
}

@media screen and (min-width: 769px) and (max-width: 1175px) {
    .p-home-about__item:nth-child(1) .p-home-list__heading,
    .p-home-about__item:nth-child(2) .p-home-list__heading {
        padding: 0;
    }
    .p-home-about__item .mid-about-only {
        display: block;
    }
    .page-id-17 .is-deco-c-fv5-2 {
        top: min(20.5vw, 280px);
    }
}

@media (max-width: 1175px) {
    html {
        scroll-padding-top: 80px;
    }
    .l-header__inner{
        height: 80px;
        padding: 0 20px;
    }
    .l-header__logoArea {
        gap: 4px;
        padding-top: 11px;
    }
    .l-header__logo img {
        width: auto;
        height: 104px;
    }
    .c-menuButton {
        position: absolute;
        top: 26px;
        right: 20px;
        display: block;
    }
    .c-menuButton__bar {
        display:block;
        width: 42px;
        aspect-ratio: 1 / 1;
        background: url(img/icon/hamburger_icon.svg) no-repeat center / contain;
    }
    .l-header.is-open .c-menuButton__bar {
        background: url(img/icon/hamburger_icon-close.svg) no-repeat center / contain;
    }
    .l-header__navWrapper {
        position: fixed;
        top: 80px;
        left: 0;
        flex-direction: column;
        justify-content: normal;
        gap: 0;
        width: 100%;
        height: calc(100dvh - 80px);
        background: var(--color-light-yellow);
        z-index: 100;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.4s ease, visibility 0.4s ease;
        padding: 34px 30px 30px 30px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch; /* 指に吸い付くスクロール（iOS用） */
    }
    .l-header.is-open .l-header__navWrapper {
        opacity: 1;
        visibility: visible;
    }
    .l-header__navGroup {
        gap: 0;
        padding-top: 0;
    }
    .l-subNav__item + .l-subNav__item::before,
    .l-globalNav__link::before {
        content: none;
    }
    .l-globalNav__item,
    .l-subNav__item {
        position: relative;
        width: 100%;
        margin-bottom: 14px;
    }
    .l-subNav__item + .l-subNav__item {
        margin-left: 0;
        padding-left: 0;
    }
    .l-globalNav__link,
    .l-subNav__link {
        position: relative;
        display: block;
        width: 100%;
        border-bottom: 2px solid var(--color-creamy-light-orange);
        padding-left: 0;
        padding-bottom: 14px;
        padding-right: 14px;
    }
    .nav-top .l-subNav__link {
        padding-bottom: 12px;
    }
    .js-spNoLink:hover {
        opacity: 1;
    }
    .l-nav__toggle.js-accordion {
        position: absolute;
        top: 7px;
        right: 0;
        width: 20px;
        height: 20px;
        background: transparent;
        border: none;
        cursor: pointer;
        z-index: 2;
    }
    .l-nav__toggle.js-accordion::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 14px;
        aspect-ratio: 1 / 1;
        background: url(img/icon/icon_plus-orange.svg) no-repeat center / contain;
        transition: background-image 0.2s;
    }
    .l-nav__toggle.js-accordion.is-open::after {
        background-image: url(img/icon/icon_minus-orange.svg);
    }
    .l-nav__subList {
        display: block;
        padding-left: 21px;
        padding-top: 0;
        padding-bottom: 0;
        line-height: 0;
        opacity: 0;
        visibility: hidden;
        background: var(--color-light-yellow);
        transition: padding-top .3s ease-out, padding-bottom .3s ease-out, line-height .3s ease-out, opacity .1s linear, visibility .1s linear;
    }
    .l-nav__subList.is-open {
        display: block;
        padding: 14px 1px 12px 21px;
        line-height: 2;
        opacity: 1;
        visibility: visible;
        transition: padding-top .3s ease-out, padding-bottom .3s ease-out, line-height .3s ease-out, opacity .1s linear, visibility .1s linear;
    }
    .nav-seminar .l-globalNav__link::after {
        content: "";
        position: absolute;
        top: 7px;
        right: 5px;
        /* カンプの比率を保ちつつ、少し大きく調整 */
        width: 8px;   /* 6px → 8px */
        height: 16px; /* 12px → 16px */
        background: url(img/icon/nav_arrow-orange.svg) no-repeat center / contain;
        transition: transform 0.3s ease;
    }
    /* ホバー時に少し右に動かす（演出） */
    .nav-seminar .l-globalNav__link:hover::after {
        transform: translateX(4px);
    }
    .l-subNav__list {
        padding-right: 0;
    }
    .l-subNav,
    .l-subNav__list,
    .l-globalNav,
    .l-globalNav__list {
        display: contents;
    }
    .nav-top         { order: 1; }
    .nav-word        { order: 2; }
    .nav-development { order: 3; }
    .nav-service     { order: 4; }
    .nav-blog        { order: 5; }
    .nav-order       { order: 6; }
    .nav-seminar     { order: 7; }
    .nav-corporate {
        order: 8;
        margin-bottom: 30px;
    }
    .nav-cta         { order: 9; }
    .nav-blog:hover .l-globalNav__link {
        text-shadow: none;
    }
    .l-globalNav__dropdown {
        display: none;
    }
    /* カテゴリーがない（ボタンがない）nav-blog のリンクに矢印を出す */
    .nav-blog:not(:has(.l-nav__toggle)) .l-globalNav__link::after {
        content: "";
        position: absolute;
        top: 7px;
        right: 5px;
        width: 8px;
        height: 16px;
        background: url(img/icon/nav_arrow-orange.svg) no-repeat center / contain;
        transition: transform 0.3s ease;
    }
    .nav-blog.is-has-categories:hover .l-globalNav__link {
        text-shadow: none;
    }
    .pc-text {
        display: none;
    }
    .sp-text {
        display: inline;
    }
    .p-home-firstView {
        background: linear-gradient(
            to bottom,
            transparent calc(100% - 71px),
            var(--color-home-wave-bg) calc(100% - 71px)
        );
    }
}

@media (max-width: 1100px) {
    .p-home-worries__list {
        margin-top: 11.99vw;
    }
    .p-home-worries__summary {
        margin-top: clamp(615px, 12.558vw + 503.953px, 642px);
    }
    .l-footer__nav-group {
        flex: 0 0 calc((100% - min(4.167vw, 60px)) / 2);
    }
    .page-id-11 .u-cta01 .u-cta__title .l-br {
        display: block;
    }
}

@media screen and (min-width: 769px) and (max-width: 1100px) {
    .p-home-case__item:first-child .p-home-case_heading,
    .p-home-case__item:last-child .p-home-case_heading {
        padding: 0;
    }
}

@media (max-width: 1000px) {
    .p-home-worries__summary {
        margin-top: 680px;
    }
}

@media (max-width: 885px) {
    .p-home-worries__list {
        margin-top: 13.47vw;
    }
    .page-id-9 .inline-block-fv,
    .page-id-13 .inline-block-fv {
        margin-left: 0.5em;
    }
    .u-about .u-pc-only {
        display: none;
    }
}

@media (max-width: 768px) {
    .u-pc-only {
        display: none;
    }
    .u-sp-only {
        display: block;
    }
    .is-deco-fv1-1-sp {
        width: 38.81vw;
        top: 23.84vw;
        left: 0;
    }
    .is-deco-fv2-1-sp {
        width: 23.85vw;
        height: 14.87vw;
        object-fit: contain;
        top: 14.1vw;
        left: 12.05vw;
        mix-blend-mode: multiply;
    }
    .is-deco-maru2-1 {
        width: 5.385vw;
        top: 85.64vw;
        right: 10.26vw;
    }
    .is-deco-maru4-2 {
        width: 6.154vw;
        top: 98.97vw;
        left: 65vw;
    }
    .is-deco-maru3-1-sp {
        width: 23.85vw;
        top: 108.7vw;
        right: 0;
        mix-blend-mode: multiply;
    }
    .is-deco-maru5-2 {
        width: 33.08vw;
        bottom: 38.97vw;
        left: 0;
    }
    .is-deco-fv5-6 {
        width: 31.03vw;
        top: 192.7vw;
        left: 0;
    }
    .is-deco-illust1-sp {
        width: 26.92vw;
        right: 0;
        top: 11.79vw;
        mix-blend-mode: multiply;
    }
    .is-deco-maru5-2 {
        position: absolute;
        z-index: 2;
    }
    .p-home-firstView__wave-area {
        transform: translateY(-26.67vw);
    }
    .p-home-firstView {
        padding-bottom: 127px;
        background: linear-gradient(
            to bottom,
            transparent calc(100% - 80px),
            var(--color-home-wave-bg) calc(100% - 80px)
        );
    }
    .p-home-firstView__content-inner {
        padding: 2.564vw 5.128vw 0 0;
    }
    .p-home-firstView__flexArea {
        flex-direction: column;
        gap: 10.26vw;
    }
    .p-home-firstView__flex-group {
        gap: 0;
        padding-top: 0;
    }
    .p-home-firstView__titleArea {
        order: 2;
    }
    .p-home-firstView__sub {
        display: contents;
    }
    .p-home-firstView__sub img,
    .p-home-firstView__main img {
        border-radius: 10px;
    }
    .p-home-firstView__copy-text {
        padding-top: min(3.59vw, 14px);
        padding-bottom: min(1.538vw, 6px);
    }
    .p-home-firstView__pic-02 {
        order: 1;
        width: 51.622%;
        margin-left: auto;
        margin-bottom: 5.641vw;
    }
    .p-home-firstView__pic-wrap {
        order: 3;
        position: static;
        width: 72.43%;
        margin-left: -10px;
        padding-top: 7.692vw;
    }
    .p-home-firstView__pic-wrap .u-img-fit {
        height: 46.15vw;
        object-fit: contain;
    }
    .p-home-firstView__main {
        width: 77.57%;
        margin-left: auto;
    }
    .p-home-firstView__cta {
        bottom: -12.05vw;
        left: 5.128vw;
    }
    .p-home-worries {
        background: linear-gradient(
            to top,
            transparent 7.692vw,
            var(--color-home-wave-bg) 0
        );
        padding-bottom: max(7.692vw, 30px);
    }
    .p-home-worries__inner {
        transform: translateX(1px);
    }
    .p-home-worries__content {
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        margin-bottom: 50px;
        max-width: 600px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .p-home-worries .section-title {
        order: 1;
    }
    .p-home-worries__list {
        order: 2;
        column-gap: 10px;
        width: 100%;
        margin-top: 0;
    }
    .p-home-worries__item {
        width: 100%;
        border-radius: 10px;
    }
    .p-home-worries__item:nth-child(1) {
        padding: 10px 28px;
    }
    .p-home-worries__item:nth-child(2) {
        padding: 12px;
    }
    .p-home-worries__item:nth-child(3) {
        padding: 12px 28px;
    }
    .p-home-worries__item:nth-child(4),
    .p-home-worries__item:nth-child(5) {
        width: calc(50% - 5px);
    }
    .p-home-worries__item:nth-child(6) {
        padding: 10px 13.5px;
    }
    .p-home-worries__subtext {
        margin-top: 2px;
    }
    .p-home-worries__figure.-type01,
    .p-home-worries__figure.-type02 {
        order: 3;
    }
    .p-home-worries__figure.-type01 {
        margin-right: 2.962vw;
        padding-top: 3.846vw;
    }
    .p-home-worries__figure.-type02 {
        padding-top: 8.205vw;
    }
    .p-home-worries__figure.-type01 .u-img-fit {
        width: 33.19vw;
    }
    .p-home-worries__figure.-type02 .u-img-fit {
        width: 33.08vw;
    }
    .p-home-worries__summary {
        order: 4;
        margin-top: 6.923vw;
        transform: translateX(4px);
    }
    .is-deco-maru2-5 {
        width: 5.128vw;
        top: -4.872vw;
        right: 34.1vw;
    }
    .p-home-case {
        padding: 14.87vw 0 15.38vw 0;
    }
    .is-deco-maru1-3 {
        width: 5.385vw;
        top: 1.282vw;
        right: 13.85vw;
    }
    .p-home-case__list {
        flex-direction: column;
        gap: 5.128vw;
    }
    .p-home-case__item {
        border-radius: 10px;
    }
    .p-home-case__label-img {
        margin: 0 auto min(6.154vw, 24px) auto;
    }
    .p-home-case__item .u-img-fit {
        height: 46px;
        object-fit: cover;
    }
    .p-home-case__summary {
        transform: translateX(2px);
    }
    .p-home-support {
        padding-bottom: 147px;
    }
    .p-home-support__inner {
        flex-direction: column;
        gap: clamp(4rem, 0.381rem + 9.28vw, 8rem);
        padding: 0;
    }
    .p-home-support .u-img-fit {
        border-radius: 0;
    }
    .p-home-support__list {
        padding: 0 20px 0 20px;
    }
    .p-home-support__heading {
        padding-left: clamp(1.8rem, 1.726rem + 0.19vw, 2rem);
    }
    .p-home-support__item:first-child .p-home-support__heading {
        margin-left: 2px;
    }
    .p-home-support__description {
        padding-left: 0;
    }
    .p-home-about {
        background: linear-gradient(
            to bottom,
            transparent 49vw,
            var(--color-home-wave-bg) 49vw
        );
        padding-bottom: 15.38vw;
    }
    .p-home-about__top {
        padding-top: 63px;
    }
    .is-deco-fv5-4 {
        width: 45.38vw;
        left: 40.51vw;
        mix-blend-mode: multiply;
    }
    .p-home-about__wave-area {
        transform: none;
    }
    .is-deco-maru4-4 {
        width: 6.154vw;
        top: -5.385vw;
        left: 5.128vw;
    }
    .is-deco-maru2-3 {
        width: 5.641vw;
        height: 5.495vw;
        top: 8.974vw;
        left: 31.03vw;
    }
    .p-home-about__heading {
        margin-bottom: 5.128vw;
    }
    .p-home-about__list {
        flex-direction: column;
        gap: 6.667vw;
        max-width: 500px;
        width: 100%;
        margin: 0 auto;
    }
    .p-home-about__item {
        border-radius: 10px;
    }
    .p-home-about__item:nth-child(1) {
        padding-bottom: 6.405vw;
    }
    .p-home-about__item:nth-child(2) {
        padding-bottom: 5.172vw;
    }
    .p-home-about__item:nth-child(3) {
        padding-bottom: 4.659vw;
    }
    .p-home-about__img {
        margin-top: -4.615vw;
    }
    .p-home-about__item:nth-child(1) .p-home-list__heading {
        padding-left: clamp(1.979rem, 3.83vw + 0.485rem, 6rem);
        padding-right: clamp(3.421rem, 3.69vw + 1.98rem, 7.3rem);
    }
    .p-home-about__item:nth-child(3) .p-home-list__heading {
        transform: translateX(1.72px);
    }
    .p-home-about__item:nth-child(1) .p-home-list__description {
        margin-bottom: 1.587vw;
    }
    .p-home-visitCta {
        padding-bottom: 15.38vw;
    }
    .p-home-visitCta__inner {
        padding: 0;
    }
    .p-home-visitCta__container {
        border-radius: 20px;
        padding: 46px 0 60px 0;
    }
    .p-home-visitCta__flexArea {
        flex-direction: column;
        align-items: center;
        padding: 0 8.462vw 0 8.974vw;
        gap: 24px;
        margin-bottom: 80px;
    }
    .p-home-visitCta__slider {
        border-radius: 0;
        padding: 30px 0 20px 0;
    }
    .p-home-visitCta .splide__list {
        gap: 0;
    }
    .p-home-visitCta .splide__slide {
        flex: 0 0 300px;
    }
    .p-home-visitCta__kid.-left {
        left: 20px;
        top: -24.69%;
    }
    .p-home-visitCta__kid.-right {
        right: 20px;
        top: -24.69%;
    }
    .splide__pagination {
        justify-content: center;
        position: relative;
        bottom: auto;
        margin-top: 19px;
        padding: 0;
    }
    .splide__pagination__page {
        background: var(--color-gray-light);
        width: 10px;
        height: 10px;
        margin: 0 6px;
    }
    .splide__pagination__page.is-active {
        background-color: var(--color-orange);
        transform: scale(1);
    }
    /* 常に表示 */
    .splide:not(.is-overflow) .splide__pagination {
        display: flex;
    }
    .p-home-lesson {
        padding-bottom: 15.38vw;
    }
    .p-home-lesson .l-inner--wide {
        padding: 0;
    }
    .p-home-lesson .splide__slide {
        flex: 0 0 220px;
    }
    .p-home-lesson .splide__pagination {
        margin-top: 30px;
    }
    .p-home-lessonFlow {
        padding-bottom: 15.38vw;
    }
    .p-home-lessonFlow__inner {
        flex-direction: column;
        gap: 0;
    }
    .p-home-lessonFlow__textArea {
        display: contents;
    }
    .p-home-lessonFlow .section-title {
        order: 1;
        width: fit-content;
    }
    .p-home-lessonFlow__list {
        order: 2;
    }
    .p-home-lessonFlow__item {
        padding-bottom: 21px;
    }
    .p-home-lessonFlow__item:last-child .p-home-lessonFlow__body {
        padding-left: 40px;
    }
    .p-home-lessonFlow__description:first-of-type {
        padding-left: 0;
    }
    .p-home-lessonFlow__cta {
        order: 4;
        margin: 0 auto;
    }
    .p-home-lessonFlow__videoArea {
        order: 3;
        padding-top: 0;
    }
    .p-home-lessonFlow__videoLink {
        margin-bottom: 10.26vw;
    }
    .p-home-flow {
        padding-bottom: 15.38vw;
    }
    .p-home-flow__list {
        width: 100%;
        gap: 4.103vw;
    }
    .p-home-flow__item {
        border-radius: 10px;
    }
    .p-home-flow__item:not(:last-child)::after {
        left: calc(var(--flow-padding-l) + 7.135%); /* アイコンの幅の半分 + padding-leftの半分 を考慮して調整 */
        top: calc(var(--flow-padding-t) + 12.82vw + 1.795vw);
        bottom: clamp(-50.7px, -6vw - 4.6px, -28px);
    }
    .p-home-flow__item:first-child::after {
        bottom: clamp(-50.7px, -5.48vw - 8.6px, -30px);
        top: calc(var(--flow-padding-t) + 12.82vw + 1.795vw);
    }
    .p-home-flow__item:nth-child(3)::after {
        bottom: clamp(-50.7px, -5.74vw - 6.6px, -29px);
    }
    .p-home-flow__label {
        flex: 0 0 15.63%;
    }
    .p-home-flow__item:nth-child(4) .p-home-flow__label {
        padding-top: 0;
    }
    .p-home-flow__item:first-child .p-home-flow__content {
        padding-top: 0;
    }
    .p-home-flow__body {
        display: flex;
        flex-direction: column;
    }
    .p-home-flow__item:nth-child(2) .p-home-flow__description {
        margin-bottom: 12px;
    }
    .p-home-flow__link {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        width: fit-content;
        margin-left: auto;
        margin-bottom: 1px;
    }
    .p-home-flow__link::after {
        content: "";
        width: 23px;
        aspect-ratio: 1 / 1;
        background: url(img/icon/arrow_icon-bg_orange.svg) no-repeat center / contain;
    }
    .p-home-flow__description .c-spNoLink {
        pointer-events: none;
        cursor: default;
    }
    .p-home-schedule {
        padding-bottom: 16.15vw;
    }
    .p-home-schedule__inner {
        flex-direction: column;
        gap: 0;
    }
    .p-home-schedule__left {
        display: contents;
    }
    .p-home-schedule .section-title {
        order: 1;
        width: fit-content;
    }
    .p-home-schedule__list {
        order: 2;
        gap: 10px;
    }
    .p-home-schedule__item:first-child:before {
        width: 4px;
        transform: translateY(calc(-50% + 1px));
    }
    .p-home-schedule__item:last-child:before {
        width: 4px;
        top: calc(1em * 1.6 / 2);
        transform: translateY(calc(-50% + 1px));
    }
    .p-home-schedule__illust {
        order: 4;
        width: 81.05%;
        padding-right: 2.564vw;
    }
    .p-home-schedule__right {
        order: 3;
        width: 100%;
        padding-top: 0;
        margin-bottom: 4.872vw;
    }
    .m-weekday { border: 1px solid var(--color-green); }
    .m-holiday { border: 1px solid var(--color-orange); }
    .p-home-schedule th[scope="row"] {
        width: 22.44%;
        border: 1px solid var(--color-green);
        padding: 6px;
    }
    .m-holiday th[scope="row"] {
        border: 1px solid var(--color-orange);
    }
    .m-weekday td {
        border: 1px solid var(--color-green);
    }
    .m-holiday td {
        border: 1px solid var(--color-orange);
    }
    .is-deco-maru4-5 {
        width: 5.641vw;
        bottom: 6.649vw;
        right: 38vw;
    }
    .p-home-blog {
        background: linear-gradient(to bottom, transparent 7vw, var(--color-home-wave-bg) 7vw);
        padding-bottom: 25.64vw;
    }
    .is-deco-illust3 {
        width: 39.35vw;
        height: 38.11vw;
        object-fit: contain;
        top: -8.205vw;
    }
    .is-deco-maru2-4 {
        width: 5.641vw;
        height: 5.495vw;
        top: 0.2564vw;
        right: 58.09vw;
    }
    .is-deco-fv5-5-sp {
        width: 26.92vw;
        bottom: 35.38vw;
    }
    .is-deco-illust3 img {
        height: 100%;
    }
    .is-deco-fv2-3 {
        width: 21.03vw;
        bottom: 15.13vw;
        left: 20.26vw;
    }
    .p-home-blog__header {
        margin-top: 7.179vw;
    }
    .p-home-blog__sub-title {
        margin-bottom: 2.308vw;
    }
    .p-home-blog__list {
        flex-wrap: nowrap;
        white-space: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        gap: 32px;
        scrollbar-width: none;
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }
    .p-home-blog__list::-webkit-scrollbar {
        display: none; /* Chrome, Safari */
    }
    .p-home-blog__item {
        flex: 0 0 290px;
        white-space: normal;
    }
    .p-home-blog .c-button--primary {
        width: 61.07%;
    }
    .p-home-link {
        padding-bottom: 20.51vw;
    }
    .p-home-link__list {
        gap: clamp(1rem, 0.571vw + 0.777rem, 1.6rem) 2.86%;
    }

    .p-home-link__item {
        flex: 0 0 48.57%;
    }
    .p-home-link .u-img-fit {
        border-radius: 3px;
    }
    .p-home-cta {
        background: linear-gradient(to bottom, var(--color-home-wave-bg) min(206.1px, 10vw), transparent min(206.1px, 10vw));
    }
    .p-home-cta .l-inner--wide {
        padding: 0;
    }
    .p-home-cta__container {
        border-radius: 20px;
    }
    .p-home-cta__flexArea {
        flex-direction: column;
        gap: 20px;
    }
    .p-home-cta__figure .u-img-fit {
        border-radius: 10px;
    }
    .p-home-cta__content {
        align-items: center;
    }
    .p-home-cta__text {
        width: 100.48%;
    }
    .l-footer {
        padding-top: 60px;
        padding-bottom: 20px;
    }
    .l-footer__inner {
        padding: 0 20px;
    }
    .l-footer__container {
        margin-bottom: 23px;
    }
    .l-footer__info {
        gap: 23px;
    }
    .l-footer__logoArea {
        gap: 6px;
        padding-left: 0;
    }
    .l-footer__logo {
        max-width: 283px;
        padding-left: 0;
        margin-top: -50px;
    }
    .l-footer__catchphrase {
        padding-left: 2px;
        margin-bottom: 10px;
    }
    .l-footer__company-name {
        margin-left: -8px;
        margin-bottom: 10px;
    }
    .l-footer__address {
        padding-left: 2px;
    }
    .page-id-9 .inline-block-fv,
    .page-id-13 .inline-block-fv {
        margin-left: 0;
    }
    .is-deco-c-maru1-1 {
        width: 6.154vw;
        top: 2.344vw;
        left: 58.2vw;
    }
    .is-deco-c-maru2-2 {
        width: 5.385vw;
        height: 5.231vw;
        top: 15.36vw;
        left: 77.86vw;
    }
    .u-firstView__content-inner {
        width: 100%;
    }
    .u-firstView__flexArea {
        flex-direction: column;
        gap: 10.26vw;
    }
    .u-firstView__titleArea {
        padding-top: 0;
    }
    .u-firstView__main {
        width: 77.57%;
        margin-left: auto;
    }
    .is-deco-c-fv5-2 {
        width: 31.03vw;
        top: 54vw;
        left: 0;
    }
    .is-deco-c-maru5-1 {
        width: 129.1px;
        top: -156px;
    }
    .c-breadcrumb {
        transform: translateY(2.564vw);
    }
    .c-breadcrumb__inner {
        width: 100%;
        overflow: hidden;
    }
    .breadcrumb_last {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
    }
    .u-about {
        padding-bottom: 15.38vw;
    }
    .u-question {
        padding-bottom: 19.49vw;
    }
    .c-question__comment {
        border-radius: 10px;
    }
    .u-question h2 {
        margin: 0 auto min(6.154vw, 24px) auto;
    }
    .u-question .u-img-fit {
        height: 40px;
        object-fit: cover;
    }
    .u-question__list {
        flex-direction: column;
        gap: 4.103vw;
    }
    .u-question__item {
        padding-left: 1em;
    }
    .u-cta01 {
        padding-bottom: 15.38vw;
    }
    .u-cta__inner {
        padding: 0;
    }
    .u-cta__container {
        border-radius: 20px;
        padding: clamp(5.2rem, 0.381vw + 5.051rem, 5.6rem) clamp(2rem, 11.429vw - 2.457rem, 14rem) clamp(4.2rem, 1.714vw + 3.531rem, 6rem) clamp(2rem, 11.429vw - 2.457rem, 14rem);
    }
    .u-cta__flexArea {
        flex-direction: column;
    }
    .u-cta01 .p-home-visitCta__cta {
        margin-bottom: 0;
    }
    .u-cta__kid.-kid01,
    .u-cta__kid.-kid02,
    .u-cta__kid.-kid03,
    .page-id-13 .u-cta__kid.-kid01,
    .page-id-11 .u-cta__kid.-kid01,
    .page-id-15 .u-cta__kid.-kid02 {
        top: -17.15%;
    }
    .u-voice {
        padding-bottom: 16.15vw;
    }
    .is-deco-c-maru4-4 {
        width: 6.154vw;
    }
    .is-deco-c-maru2-3 {
        width: 5.641vw;
        height: 5.495vw;
    }
    .u-voice__list {
        gap: 6.667vw;
    }
    .u-voice__item {
        flex: auto;
        max-width: 450px;
    }
    .u-plan {
        padding-bottom: 20.51vw;
    }
    .is-deco-c-maru2-4 {
        width: 5.641vw;
        height: 5.495vw;
    }
    .is-deco-c-maru4-5 {
        width: 5.641vw;
    }
    .u-plan__header {
        padding-top: 7.692vw;
    }
    .u-plan .section-title {
        margin-bottom: 5.128vw;
    }
    .u-plan__list {
        gap: 4.103vw;
    }
    .u-plan__item {
        border-radius: 10px;
    }
    .u-plan__label {
        flex: 0 0 100px;
        margin-left: 0;
    }
    .u-plan__item:nth-child(5) .u-plan__body {
        padding-top: 2px;
    }
    .u-plan__content-group {
        flex-direction: column;
        gap: 3.077vw;
    }
    .u-plan__example-area,
    .u-plan__item:nth-child(3) .u-plan__example-area,
    .u-plan__item:nth-child(4) .u-plan__example-area,
    .u-plan__item:nth-child(5) .u-plan__example-area {
        aspect-ratio: auto;
    }
    .u-cta02 {
        padding-bottom: 15.38vw;
    }
    .u-cta02 .u-cta__container {
        padding-bottom: clamp(4.2rem, 1.714vw + 3.531rem, 6rem);
    }
    .u-cta02 .p-home-visitCta__cta,
    .u-cta03 .p-home-visitCta__cta {
        padding-top: 0;
    }
    .page-id-13 .u-cta03 {
        background: linear-gradient(
            to bottom,
            var(--color-home-wave-bg) min(6.5vw, 100px),
            transparent min(6.5vw, 100px)
        );
    }
    .u-case {
        padding-bottom: 16.15vw;
    }
    .u-case-card {
        border-radius: 10px;
    }
    .page-id-9 .u-case-card {
        max-width: 600px;
        margin: 0 auto;
    } 
    .u-case__label-group {
        flex-direction: column;
    }
    .u-case-card__label {
        width: 100%;
        border-radius: 5px 5px 0 0;
    }
    .u-case-card__grid {
        grid-template-columns: 1fr;
    }
    .u-case-card__figure {
        flex-direction: column;
    }
    .u-case-card__flex {
        flex-direction: column-reverse;
        padding-left: 0;
    }
    .u-case-card__img {
        margin-bottom: clamp(1.0rem, 0.952vw + 0.629rem, 2.0rem);
    }
    .u-case-card--orange .u-case-card__flex {
        padding-left: 0;
    }
    .u-case__others-list-wrapper {
        flex-direction: column;
        gap: 0;
    }
    .is-deco-c-maru4-6 {
        width: 6.154vw;
    }
    .is-deco-c-maru2-5 {
        width: 5.641vw;
    }
    .p-word-homework__header {
        padding-top: 7.692vw;
    }
    .p-word-homework .section-title {
        margin-bottom: 5.128vw;
    }
    .p-word-homework__flexArea {
        flex-direction: column;
        gap: clamp(4.0rem, 2.286vw + 3.109rem, 6.4rem);
    }
    .p-word-homework__figure {
        flex: 0 0 auto;
        width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    .p-word-homework__figure .u-img-fit {
        border-radius: 0;
    }
    .is-deco-c-maru4-2 {
        width: 6.154vw;
    }
    .p-word-point {
        padding: 14.87vw 0 15.38vw 0;
    }
    .p-word-point__section {
        border-radius: 10px;
    }
    .p-word-point__header {
        margin-bottom: 3.077vw;
    }
    .p-word-point__point-label {
        flex: 0 0 100px;
    }
    .p-word-point__step-list {
        flex-direction: column;
        gap: 5.128vw;
    }
    .p-word-point__voice-item {
        padding: 8px 14px;
    }
    .page-id-13 .u-question__item,
    .page-id-11 .u-question__item {
        padding-left: 0.5em;
    }
    .page-id-13 .u-question__list,
    .page-id-11 .u-question__list {
        gap: 4.103vw;
    }
    .page-id-13 .u-cta01 {
        padding-bottom: 15.38vw;
    }
    .page-id-13 .u-plan__label {
        flex: 0 0 100px;
        padding-top: 0;
    }
    .page-id-13 .u-plan__item:nth-child(3) .u-plan__label {
        padding-top: 0;
    }
    .page-id-13 .u-case {
        padding-bottom: 16.15vw;
    }
    .u-case__list02 .c-reportCard__img {
        margin-bottom: 10px;
    }
    .u-case__list02 .p-reportCard__title {
        margin-bottom: 10px;
    }
    .u-case__others02 .l-inner {
        padding: 0;
    }
    .u-case__others02-list {
        border-radius: 10px;
    }
    .u-case__others02-item-title::before {
        width: 5px;
    }
    .page-id-13 .p-word-homework {
        padding-bottom: 15.38vw;
    }
    .p-development-feedback__list {
        gap: 5.128vw;
    }
    .page-id-11 .u-cta01 {
        padding-bottom: 16.15vw;
    }
    .p-support {
        padding-bottom: 16.15vw;
    }
    .p-support .u-img-fit {
        border-radius: 0;
    }
    .p-support .is-deco-c-maru4-4 {
        top: -14.62vw;
    }
    .p-support .is-deco-c-maru2-3 {
        top: -5.128vw;
    }
    .p-support__card-list {
        flex-direction: column;
        border-radius: 10px;
    }
    .page-id-11 .u-plan {
        padding-bottom: 15.38vw;
    }
    .p-home-flow__action {
        flex-direction: column;
        gap: 12px;
    }
    .p-home-flow__link02 {
        margin-bottom: 1px;
    }
    .page-id-11 .p-home-flow__item:nth-child(2) .p-home-flow__description {
        margin-bottom: 0;
    }
    .page-id-11 .p-home-flow__item:nth-child(3),
    .page-id-11 .p-home-flow__item:nth-child(4),
    .page-id-11 .p-home-flow__item:nth-child(5) {
        margin-top: 0;
    }
    .page-id-11 .p-home-flow__item:first-child::after {
        bottom: clamp(-5.1rem, -5.556vw - 0.833rem, -3rem);
    }
    .p-info {
        background: linear-gradient(to top, transparent 28vw, var(--color-home-wave-bg) 28vw);
        padding-bottom: 15.38vw;
    }
    .u-faq {
        padding-bottom: 15.38vw;
    }
    .u-faq__item {
        margin-bottom: 16px;
    }
    .p-faq__question-button {
        padding-left: 10px;
    }
    .p-faq__answer {
        padding: 0 40px 0 10px;
    }
    .p-faq__answer-inner {
        padding-top: 14px;
    }
    .page-id-15 .u-cta01 .u-cta__container {
        padding-top: clamp(5.2rem, 0.381vw + 5.051rem, 5.6rem);
        padding-bottom: clamp(4.2rem, 1.714vw + 3.531rem, 6rem);
    }
    .u-cta__media-content {
        justify-content: center;
    }
    .page-id-15 .u-cta01 {
        padding-bottom: 15.38vw;
    }
    .page-id-15 .u-cta01 .p-home-visitCta__cta {
        padding-right: 0;
    }
    .page-id-15 .u-cta__kid.-kid01 {
        top: -18%;
    }
    .p-course {
        padding-bottom: 16.15vw;
    }
    .p-course .section-title {
        margin-bottom: 5.128vw;
    }
    .p-course .u-text-nowrap {
        display: inline;
    }
    .p-course__schedule-group {
        margin-bottom: 4.872vw;
    }
    .p-course__schedule {
        gap: 20px;
    }
    .p-course .m-green,
    .p-course .m-yellow {
        flex: 0 0 350px;
    }
    .p-course .m-green {
        border: 1px solid var(--color-green);
    }
    .p-course .m-yellow {
        border: 1px solid var(--color-accent-yellow);
    }
    .p-course .m-orange {
        flex: 0 0 350px;
        border: 1px solid var(--color-orange);
    }
    .p-course__schedule th[scope="row"] {
        padding: 6px;
    }
    .p-course .m-green th[scope="row"] {
        border: 1px solid var(--color-green);
    }
    .p-course .m-yellow th[scope="row"] {
        border: 1px solid var(--color-accent-yellow);
    }
    .p-course .m-orange th[scope="row"] {
        border: 1px solid var(--color-orange);
    }
    .p-course .m-green td {
        border: 1px solid var(--color-green);
    }
    .p-course .m-yellow td {
        border: 1px solid var(--color-accent-yellow);
    }
    .p-course .m-orange td {
        border: 1px solid var(--color-orange);
    }
    .p-faq-section {
        padding-bottom: 15.38vw;
    }
    .page-id-15 .is-deco-fv5-4 {
        width: 45.38vw;
        left: 40.51vw;
    }
    .is-deco-p-fv5-5 {
        z-index: -1;
        width: 31.03vw;
        top: 10vw;
    }
    .p-faq-section .u-faq {
        padding-top: 63px;
    }
    .page-id-15 .u-cta02 .u-cta__container {
        padding: clamp(5.2rem, 0.381vw + 5.051rem, 5.6rem) clamp(2rem, 11.429vw - 2.457rem, 14rem) clamp(4.2rem, 1.714vw + 3.531rem, 6rem) clamp(2rem, 11.429vw - 2.457rem, 14rem);
    }
    .page-id-17 .is-deco-c-maru1-1,
    .page-id-6 .is-deco-c-maru1-1 {
        top: 2.344vw;
        left: 58.2vw;
    }
    .page-id-17 .is-deco-c-maru2-2,
    .page-id-6 .is-deco-c-maru2-2 {
        top: 15.36vw;
        left: 77.86vw;
    }
    .page-id-17 .is-deco-c-maru5-1,
    .page-id-6 .is-deco-c-maru5-1 {
        width: 129.1px;
        top: -156px;
    }
    .page-id-17 .is-deco-c-fv5-2,
    .page-id-6 .is-deco-c-fv5-2 {
        top: 54vw;
        left: 0;
    }
    .page-id-17 .u-firstView__titleArea {
        gap: 0;
    }
    .page-id-17 .u-about {
        padding-bottom: 15.38vw;
    }
    .page-id-17 .u-case__list02 {
        grid-template-columns: repeat(auto-fit, minmax(min(488px, 100%), 1fr));
        border-radius: 10px;
        max-width: 600px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .page-id-17 .u-case__list02 .c-reportCard__img {
        margin-bottom: 10px;
    }
    .page-id-17 .u-case__item02:nth-child(3) .p-reportCard__title {
        width: 100%;
    }
    .page-id-6 .u-about {
        padding-bottom: 0;
    }
    .p-map__img {
        max-width: 600px;
        width: 100%;
        margin: 0 auto;
    }
    .p-company {
        padding: 14.87vw 0 16.15vw 0;
    }
    .p-company__inner {
        max-width: 600px;
        width: 100%;
    }
    .p-company__inner > .section-title,
    .p-company__inner > .p-company__info-table {
        grid-column: 1 / -1;
    }
    .p-company .c-table01 th {
        width: 100%;
    }
    .p-company th,
    .p-company td {
        display: block;
    }
    .p-company th {
        padding-bottom: 0;
    }
    .p-company tr:first-child td {
        padding-top: clamp(1.4rem, 1.502vw + 0.237rem, 2.4rem);
    }
    .p-group {
        padding-bottom: 15.38vw;
    }
    .p-group__header {
        padding-top: 7.692vw;
    }
    .p-group .section-title {
        margin-bottom: 5.128vw;
    }
    .p-group__selfEvaluation-links {
        width: fit-content;
        flex-direction: column;
        padding-left: clamp(0.8rem, 0.19vw + 0.726rem, 1rem);
    }
    .p-group__selfEvaluation-links .p-group__linkText:nth-child(1)::after {
        width: 82%;
    }
    .p-group__selfEvaluation-grid {
        padding-left: clamp(0.8rem, 0.19vw + 0.726rem, 1rem);
    }
    .p-group__selfEvaluation-row {
        flex-direction: column;
        align-items: flex-start;
    }
    .p-group__selfEvaluation-year {
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .p-group__selfEvaluation-buttonGroup {
        width: 100%;
    }
    .p-group .c-btnEvaluation {
        width: calc((100% - 1.111vw) / 2);
    }
    /*
    -------------------------------
    page-blog
    -------------------------------
    */
    .pageReport__contents {
        grid-template-columns: 1fr;
        grid-template-areas:
            "main"
            "side";
        padding-block-end: 20.51vw;
    }
    .pageReport__main {
        padding-block-end: 80px;
    }
    .pageReport__cards {
        max-inline-size: 400px;
    }
    .blogCards {
        grid-template-columns: 1fr;
        gap: 7.692vw;
    }
    .blog .c-reportCard__img,
    .category .c-reportCard__img,
    .archive .c-reportCard__img {
        margin-bottom: 10px;
    }
    .blog .singleArticle-meta,
    .category .singleArticle-meta,
    .archive .singleArticle-meta {
        margin-block-end: 10px;
    }
    .ly-pagination-wrapper {
        margin-block-start: 20.51vw;
    }
    .pagination > .nav-links {
        gap: 20px;
    }
    .pagination > .nav-links > .page-numbers {
        font-size: 1.8rem;
    }
    .sidebar {
        row-gap: 14.36vw;
        max-width: 600px;
        margin: 0 auto;
    }
    .sidebar-sectionTitle {
        font-size: 1.6rem;
        padding-block-end: 3.077vw;
    }
    .sidebar-report {
        padding-block: 16px;
    }
    .sidebar-reportLink {
        -webkit-column-gap: 3.077vw;
        column-gap: 3.077vw;
    }
    .sidebar-reportImg {
        inline-size: 150px;
    }
    .sidebar-reportImg > img {
        aspect-ratio: 16 / 9;
    }
    .sidebar-reportTitle {
        font-size: 1.4rem;
    }
    .sidebar-archive, .sidebar-author {
        margin-block-start: 24px;
        row-gap: 3.077vw;
    }
    .sidebar-author > li > a {
        font-size: 1.4rem;
    }
    .sidebar-archive {
        row-gap: 2.564vw;
    }
    .sidebar-archive > li > a {
        font-size: 1.4rem;
    }
    .blog .c-reportCard__title,
    .category .c-reportCard__title,
    .archive .c-reportCard__title {
        font-size: 1.6rem;
    }
    .blog .c-reportCard__date,
    .category .c-reportCard__date,
    .archive .c-reportCard__date {
        font-size: 1.2rem;
    }
    .blog .c-reportCard__content p,
    .category .c-reportCard__content p,
    .archive .c-reportCard__content p {
        font-size: 1.2rem;
    }
    .pageSingle__contents {
        grid-template-columns: 1fr;
        grid-template-areas:
            "main"
            "side";
        padding-block-end: 20.51vw;
    }
    .pageSingle__main {
        padding-block-end: 20.51vw;
    }
    .singleArticle-header {
        row-gap: 3.077vw;
    }
    .singleArticle-title {
        font-size: 2.2rem;
    }
    .singleArticle-date > time {
        font-size: 1.2rem;
    }
    .singleArticle-main {
        margin-block-start: 6.154vw;
    }
    .singleArticle {
        max-inline-size: 600px;
        margin-inline: auto;
    }
    .singleArticle-img > img {
        aspect-ratio: 16 / 9;
    }
    .singleArticle-meta {
        gap: 3.077vw;
        margin-block-start: 4.103vw;
    }
    .singleArticle-meta .category {
        gap: 1.282vw;
        padding-inline: 18px;
        padding-block: 3px;
        font-size: 1.4rem;
    }
    .singleArticle-body {
        margin-block-start: 14.36vw;
    }
    .singleArticle-body p {
        margin-block-start: 2.051vw;
        font-size: 1.6rem;
    }
    .singleArticle-footer {
        margin-block-start: 9.231vw;
    }
    .singleArticle-footer > p {
        font-size: 1.2rem;
    }
    .singleArticle-buttons {
        margin-block-start: 8.205vw;
    }
    .singleArticle-buttons > a[rel="prev"],
    .singleArticle-buttons > a[rel="next"] {
        column-gap: 3.077vw;
    }
    .singleArticle-buttons > a[rel="prev"]:not(:only-child) {
        padding-inline-end: 7.179vw;
    }
    .singleArticle-buttons > a {
        font-size: 1.4rem;
    }
    .singleArticle-buttons > a[rel="prev"]:before,
    .singleArticle-buttons > a[rel="next"]:after {
        inline-size: 20px;
    }
    .singleArticle-buttons > a[rel="next"]:not(:only-child) {
        padding-inline-start: 7.179vw;
    }
    .pageAuthor__list {
        padding-inline: 32px;
        padding-block: 48px;
        margin-block-end: 20.51vw;
    }
    .authorItem > a {
        gap: 2.564vw;
        padding-block: 20px;
        font-size: 1.8rem;
    }
}

@media (max-width: 500px) {
    .u-plan__example-area {
        --extra-width: calc(clamp(1.7rem, 1.221vw + 1.242rem, 3rem) + 100px);
        width: calc(100% + var(--extra-width));
        margin-left: calc(var(--extra-width) * -1);
    }
    .u-plan__item:nth-child(3) .u-plan__example-area {
        margin-top: clamp(0rem, 11.818vw - 4.609rem, 1.3rem);
    }
    .p-word-point__lead {
        --extra-width: calc(
            min(2.778vw, 4.0rem) +
            100px -
            clamp(2.0rem, 3.810vw + 0.514rem, 6.0rem)
        );
        width: calc(100% + var(--extra-width));
        margin-left: calc(var(--extra-width) * -1);
    }
    .p-word-point .l-br {
        display: block;
    }
    .page-id-13 .u-plan__summary {
        --extra-width: calc(clamp(1.7rem, 1.221vw + 1.242rem, 3rem) + 100px);
        width: calc(100% + var(--extra-width));
        margin-left: calc(var(--extra-width) * -1);
        margin-top: 65px;
    }
    .page-id-13 .u-plan__title {
        padding-top: 10%;
    }
    .page-id-17 .u-text-nowrap {
        display: inline-block;
    }
    .p-group__selfEvaluation-buttonGroup {
        flex-wrap: wrap;
        gap: 16px;
    }
    .p-group .c-btnEvaluation {
        width: 100%;
    }
}

@media (max-width: 395px) {
    .p-home-visitCta__heading,
    .p-home-cta__title,
    .u-cta__title {
        transform: scale(0.98);
        transform-origin: center center;
    }
    .p-home-visitCta__heading::before,
    .p-home-visitCta__heading::after,
    .p-home-cta__title::before, .p-home-cta__title::after,
    .u-cta__title::before, .u-cta__title::after {
        flex-shrink: 0;
    }
}

@media screen and (max-width: 389.98px) {
    .p-home-about__item:nth-child(1) .p-home-list__heading {
        padding-right: 0;
        text-align: left;
    }
    .p-home-about__item:nth-child(2) .p-home-list__heading {
        padding: 0;
        text-align: left;
    }
    .p-home-visitCta__heading {
        padding: 0;
    }
    .p-home-visitCta__flexArea {
        padding-right: 32px;
    }
    .p-home-cta__text {
        width: 101%;
    }
}