@charset "UTF-8";

/*
 * responsive.css
 * 対象: max-width: 1300px ~ min-width: 769px
 * 基点: 1300px のデザインと同じ比率になるよう vw 換算
 * 計算式: vw = (px / 1300) * 100
 */

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

    /* ===== Body ===== */
    body {
        /* margin-top: 100px → 7.69vw */
        margin-top: 7.69vw;
    }

    /* ===== Header ===== */
    .l-header {
        /* height: 100px → 7.69vw */
        height: 7.69vw;
        /* padding-left: 48px → 3.69vw */
        padding-left: 3.69vw;
    }

    .l-header__logo {
        /* max-width: 245px → 18.85vw */
        max-width: 18.85vw;
    }

    .l-header__nav-list {
        /* gap: 28px → 1.54vw（縮小時に詰める） */
        gap: 1.54vw;
    }

    .l-header__nav-item:last-child {
        /* width: 180px → 13.85vw */
        width: 13.85vw;
    }

    .l-header__nav-item a {
        /* height: 79px → 6.08vw / font-size: 18px → 1.2vw */
        height: 6.08vw;
        font-size: 1.2vw;
        /* テキストが折り返されないよう固定 */
        white-space: nowrap;
    }

    .l-header__nav-text {
        /* テキストが縮んでも折り返さない */
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .l-header__nav-icon {
        /* height: 48px → 3.69vw */
        height: 3.69vw;
    }

    .l-header__submenu {
        top: calc(100% + 0.38vw);
        /* 5px -> 0.38vw */
        padding: 0.77vw 1.38vw;
        /* 10px 18px -> 0.77vw 1.38vw */
    }

    .l-header__submenu::before {
        border-width: 0.62vw;
        /* 8px -> 0.62vw */
    }

    .l-header__submenu li a {
        font-size: 1.08vw !important;
        /* 14px -> 1.08vw */
    }

    /* ===== FV ===== */
    /* .p-fv__icon, .p-fv__slide-wrap はすでにvw単位で記述されているため比率維持済み */

    /* ===== Section Head ===== */
    .c-section-head {
        /* margin-bottom: 100px → 7.69vw */
        margin-bottom: 7.69vw;
    }

    .c-section-head__title {
        /* font-size: 36px → 2.77vw */
        font-size: 2.77vw;
        letter-spacing: calc(2.77vw * (2 / 100));
    }

    .c-section-head__sub {
        /* font-size: 18px → 1.38vw */
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));
    }

    /* ===== Feature Section ===== */
    .p-feature {
        /* padding: 100px 0 100px → 7.69vw 0 */
        padding: 7.69vw 0;
    }

    .p-feature_bg1 {
        /* top: 150px → 11.54vw  /  width: 410px → 31.54vw */
        top: 11.54vw;
        width: 31.54vw;
    }

    .p-feature_bg2 {
        /* top: 970px → 74.62vw  /  width: 460px → 35.38vw */
        top: 74.62vw;
        width: 35.38vw;
    }

    .p-feature_bg3 {
        /* bottom: 290px → 22.31vw / width: 410px → 31.54vw */
        bottom: 22.31vw;
        width: 31.54vw;
    }

    .p-feature__inner {
        /* max-width: 1097px → 84.38vw */
        max-width: 84.38vw;
    }

    .p-feature__item {
        /* gap: 48px → 3.69vw  /  margin-bottom: 80px → 6.15vw */
        gap: 3.69vw;
        margin-bottom: 6.15vw;
    }

    .p-feature__item:nth-child(even) {
        /* margin-bottom: 70px → 5.38vw */
        margin-bottom: 5.38vw;
    }

    .p-feature__item:nth-child(odd) {
        /* margin-bottom: 93px → 7.15vw */
        margin-bottom: 7.15vw;
    }

    .p-feature__item-title {
        /* font-size: 28px → 2.15vw  /  margin-bottom: 36px → 2.77vw  /  padding-bottom: 24px → 1.85vw */
        font-size: 2.15vw;
        letter-spacing: calc(2.15vw * (2 / 100));
        margin-bottom: 2.77vw;
        padding-bottom: 1.85vw;
    }

    .p-feature__item-body {
        /* font-size: 18px → 1.38vw */
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));
    }

    /* ===== Flow Section ===== */
    .p-flow {
        /* padding: 100px 0 144px → 7.69vw 0 11.08vw */
        padding: 7.69vw 0 11.08vw;
    }

    .p-flow__dots--lt,
    .p-flow__dots--lb {
        /* width: 260px → 20vw */
        width: 20vw;
    }

    .p-flow__dots--rt,
    .p-flow__dots--rb {
        /* width: 289px → 22.23vw */
        width: 22.23vw;
    }

    .p-flow__dots--lt {
        /* top: 70px → 5.38vw */
        top: 5.38vw;
    }

    .p-flow__dots--rt {
        /* top: 70px → 5.38vw */
        top: 5.38vw;
    }

    .p-flow__dots--lb {
        /* bottom: 40px → 3.08vw */
        bottom: 3.08vw;
    }

    .p-flow__dots--rb {
        /* bottom: 40px → 3.08vw */
        bottom: 3.08vw;
    }

    .p-flow__inner {
        /* max-width: 1300px → そのまま（この幅以内 =ほぼ全幅） */
        max-width: 95vw;
    }

    .p-flow__card {
        /* gap: 54px → 4.15vw  /  padding: 51px 76px 53px → 3.92vw 5.85vw 4.08vw */
        gap: 4.15vw;
        padding: 3.92vw 5.85vw 4.08vw;
        /* border-radius: 20px → 1.54vw */
        border-radius: 1.54vw;
    }

    .p-flow__col {
        /* padding-top: 65px → 5vw */
        padding-top: 5vw;
    }

    .p-flow__period {
        /* width: 148px → 11.38vw */
        width: 11.38vw;
    }

    .p-flow__item {
        /* gap: 36px → 2.77vw */
        gap: 2.77vw;
    }

    .p-flow__clock {
        /* width: 120px → 9.23vw */
        width: 9.23vw;
    }

    .p-flow__time {
        /* font-size: 32px → 2.46vw  /  padding: 10px 50px → 0.77vw 3.85vw  /  margin-bottom: 18px → 1.38vw */
        font-size: 2.46vw;
        padding: 0.77vw 3.85vw;
        margin-bottom: 1.38vw;
        border-radius: 7.69vw;
    }

    .p-flow__list li {
        /* font-size: 20px → 1.54vw */
        font-size: 1.54vw;
    }

    .p-flow__list li span {
        font-size: 1.54vw;
    }

    .p-flow__arrow {
        /* width: 34px → 2.62vw  /  margin: 30px 0 30px 50px → 2.31vw 0 2.31vw 3.85vw */
        width: 2.62vw;
        margin: 2.31vw 0 2.31vw 3.85vw;
    }

    .p-flow__illust {
        /* width: 308px → 23.69vw  /  margin-top: 80px → 6.15vw */
        width: 23.69vw;
        margin-top: 6.15vw;
    }

    /* ===== Top News Section ===== */
    .p-top-news {
        /* padding: 97px 0 100px → 7.46vw 0 7.69vw */
        padding: 7.46vw 0 7.69vw;
    }

    .p-top-news__inner {
        /* max-width: 780px → 60vw */
        max-width: 60vw;
    }

    .p-top-news__list {
        /* margin: 0px 0 54px → 0 0 4.15vw */
        margin: 0px 0 4.15vw;
    }

    .p-top-news__item {
        /* gap: 14px → 1.08vw  /  padding: 24px 12px → 1.85vw 0.92vw */
        gap: 1.08vw;
        padding: 1.85vw 0.92vw;
    }

    .p-top-news__date {
        /* font-size: 18px → 1.38vw  /  min-width: 80px → 6.15vw */
        font-size: 1.38vw;
        min-width: 6.15vw;
        letter-spacing: calc(1.38vw * (2 / 100));
    }

    .p-top-news__badge {
        /* font-size: 16px → 1.23vw  /  padding: 6px 20px → 0.46vw 1.54vw  /  min-width: 80px → 6.15vw */
        font-size: 1.23vw;
        padding: 0.46vw 1.54vw;
        min-width: 6.15vw;
        letter-spacing: calc(1.23vw * (2 / 100));
        border-radius: 1.54vw;
    }

    .p-top-news__title {
        /* font-size: 18px → 1.38vw  /  margin-left: 24px → 1.85vw */
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));
        margin-left: 1.85vw;
    }

    .p-top-news__btn {
        /* padding: 15px 40px → 1.15vw 3.08vw  /  font-size: 18px → 1.38vw */
        padding: 1.15vw 3.08vw;
        font-size: 1.38vw;
        border-radius: 0.46vw;
    }

    .p-top-news__btn span {
        /* margin-right: 15px → 1.15vw */
        margin-right: 1.15vw;
    }

    /* ===== Access Section ===== */
    .p-access {
        /* padding-top: 100px → 7.69vw */
        padding-top: 7.69vw;
    }

    .p-access .c-section-head {
        /* margin-bottom: 64px → 4.92vw */
        margin-bottom: 4.92vw;
    }

    .p-access__inner {
        /* max-width: 860px → 66.15vw  /  padding: 0 40px → 0 3.08vw */
        max-width: 66.15vw;
        padding: 0 3.08vw;
    }

    .p-access__address {
        /* font-size: 16px → 1.23vw  /  margin: 0px 0 51px → 0 0 3.92vw */
        font-size: 1.23vw;
        letter-spacing: calc(1.23vw * (2 / 100));
        margin: 0px 0 3.92vw;
    }

    .p-access__map iframe {
        /* height: 480px → 36.92vw */
        height: 36.92vw;
    }

    /* ===== Footer ===== */
    .l-footer {
        /* padding-left: 20px → 1.54vw  /  padding-right: 20px → 1.54vw  /  padding-bottom: 129px → 9.92vw */
        padding-left: 1.54vw;
        padding-right: 1.54vw;
        padding-bottom: 9.92vw;
    }

    .l-footer__inner {
        /* gap: 40px → 3.08vw  /  max-width: 1067px → 82.08vw  /  padding: 100px 0px 35px → 7.69vw 0 2.69vw */
        gap: 3.08vw;
        max-width: 82.08vw;
        padding: 7.69vw 0px 2.69vw;
    }

    .l-footer__name {
        /* font-size: 20px → 1.54vw */
        font-size: 1.54vw;
    }

    .l-footer__address {
        /* font-size: 16px → 1.23vw  /  margin-bottom: 8px → 0.62vw */
        font-size: 1.23vw;
        margin-bottom: 0.62vw;
    }

    .l-footer__address2 {
        /* font-size: 16px → 1.23vw  /  margin-bottom: 16px → 1.23vw */
        font-size: 1.23vw;
        margin-bottom: 1.23vw;
    }

    .l-footer__map-btn {
        /* font-size: 16px → 1.23vw  /  padding: 6px 20px → 0.46vw 1.54vw */
        font-size: 1.23vw;
        padding: 0.46vw 1.54vw;
    }

    .l-footer__tel-wrap {
        /* margin-right: 40px → 3.08vw */
        margin-right: 3.08vw;
    }

    .l-footer__tel-img {
        /* width: 214px → 16.46vw */
        width: 16.46vw;
    }

    .l-footer__nav {
        /* gap: 48px → 3.69vw */
        gap: 3.69vw;
    }

    .l-footer__nav-list {
        /* gap: 20px → 1.54vw */
        gap: 1.54vw;
    }

    .l-footer__nav-item a {
        /* font-size: 16px → 1.23vw  /  gap: 6px → 0.46vw */
        font-size: 1.23vw;
        gap: 0.46vw;
    }

    .l-footer__copyright p {
        /* font-size: 13px → 1vw */
        font-size: 1vw;
    }

    /* ============================================================
       about.html / 下層ページ共通
       対象: max-width: 1300px ~ min-width: 769px
       基点: 1300px  計算式: vw = (px / 1300) * 100
       ============================================================ */

    /* ===== c-layer-fv（下層FV共通） ===== */
    .c-layer-fv {
        /* height: 500px → 38.46vw */
        height: 38.46vw;
    }

    .c-layer-fv__text {
        /* flex: 0 0 32% のまま比率維持 */
        flex: 0 0 32%;
        /* padding: 60px 48px → 4.62vw 3.69vw */
        /* padding: 4.62vw 3.69vw; */
    }

    .c-layer-fv__title-wrap {
        /* margin-bottom: 80px → 6.15vw */
        margin-bottom: 6.15vw;
    }

    .c-layer-fv__title {
        width: 26.2vw;
        /* font-size: 36px → 2.77vw */
        font-size: 2.77vw;
        /* padding: 42px 80px → 3.23vw 6.15vw */
        /* padding: 3.23vw 6.15vw; */
        padding: 3.23vw 0;
        /* border-radius: 0 0 62px 0 → 0 0 4.77vw 0 */
        border-radius: 0 0 4.77vw 0;
        -webkit-border-radius: 0 0 4.77vw 0;
        -moz-border-radius: 0 0 4.77vw 0;
    }

    .c-layer-fv__title::before {
        /* width: 154px → 11.85vw */
        width: 11.85vw;
        border-radius: 0 4.77vw 4.77vw 0;
    }

    .c-layer-fv__breadcrumb ol li {
        /* font-size: 14px → 1.08vw */
        font-size: 1.08vw;
    }

    /* ===== p-policy（教育理念） ===== */
    .p-policy {
        /* padding: 100px 0 147px → 7.69vw 0 11.31vw */
        padding: 7.69vw 0 11.31vw;
    }

    .p-policy__inner {
        /* max-width: 1204px → 92.62vw */
        max-width: 92.62vw;
        padding: 0 2vw;
    }

    .p-policy__head {
        /* margin-bottom: 80px → 6.15vw */
        margin-bottom: 6.15vw;
    }

    .p-policy__lead {
        /* font-size: 24px → 1.85vw  /  margin-bottom: 80px → 6.15vw */
        font-size: 1.85vw;
        letter-spacing: calc(1.85vw * (2 / 100));
        margin-bottom: 6.15vw;
    }

    .p-policy__item {
        /* padding: 0 64px → 0 4.92vw */
        padding: 0 4.92vw;
    }

    .p-policy__img-wrap {
        /* margin-bottom: 48px → 3.69vw */
        margin-bottom: 3.69vw;
    }

    .p-policy__item-title {
        /* font-size: 24px → 1.85vw  /  margin-bottom: 24px → 1.85vw */
        font-size: 1.85vw;
        letter-spacing: calc(1.85vw * (2 / 100));
        margin-bottom: 1.85vw;
    }

    .p-policy__item-body {
        /* font-size: 18px → 1.38vw */
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));
    }

    /* ===== p-about（引き出す保育） ===== */
    .p-about {
        /* padding-top: 150px → 11.54vw */
        padding: 11.54vw 0 0;
    }

    .p-about__inner {
        /* max-width: 1200px → 92.31vw  /  padding: 0 40px → 0 3.08vw */
        max-width: 92.31vw;
        padding: 0 3.08vw;
    }

    .p-about__bg {
        /* margin-bottom: 80px → 6.15vw */
        margin-bottom: 6.15vw;
    }

    .p-about__bg picture {
        /* max-width: 839px → 64.54vw */
        max-width: 64.54vw;
    }

    .p-about__content {
        /* padding: 80px 0 → 6.15vw 0 */
        padding: 6.15vw 0;
    }

    .p-about__title {
        /* font-size: 36px → 2.77vw  /  margin-bottom: 54px → 4.15vw */
        font-size: 2.77vw;
        letter-spacing: calc(2.77vw * (2 / 100));
        margin-bottom: 4.15vw;
    }

    .p-about__text p {
        /* font-size: 20px → 1.54vw  /  line-height: 48px → 3.69vw */
        font-size: 1.54vw;
        line-height: 3.69vw;
        letter-spacing: calc(1.54vw * (2 / 100));
    }

    .p-about__illust-left {
        /* width: 173px → 13.31vw */
        width: 13.31vw;
    }

    .p-about__illust-right {
        /* width: 126px → 9.69vw */
        width: 9.69vw;
    }

    /* ============================================================
       facility.html 固有セクション
       対象: max-width: 1300px ~ min-width: 769px
       基点: 1300px  計算式: vw = (px / 1300) * 100
       ============================================================ */

    /* ===== p-facility-map（地図） ===== */
    .p-facility-map {
        /* padding: 100px 0 → 7.69vw 0 */
        padding: 7.69vw 0;
    }

    .p-facility-map__inner {
        /* max-width: 930px → 71.54vw */
        max-width: 71.54vw;
    }

    /* ===== p-facility（施設紹介カード） ===== */
    .p-facility {
        /* padding: 188px 0 129px → 14.46vw 0 9.92vw */
        padding: 14.46vw 0 9.92vw;
    }

    .p-facility__bg {
        /* top: -120px → -9.23vw  /  width: 302px → 23.23vw */
        top: -9.23vw;
        width: 23.23vw;
    }

    .p-facility__bg2 {
        /* bottom: 360px → 27.69vw  /  width: 302px → 23.23vw */
        bottom: 27.69vw;
        width: 23.23vw;
    }

    .p-facility__inner {
        /* max-width: 1135px → 87.31vw */
        max-width: 87.31vw;
    }

    .p-facility__list {
        /* margin-bottom: 140px → 10.77vw  /  gap: 45px → 3.46vw */
        margin: 0 0 10.77vw;
        gap: 3.46vw;
    }

    .p-facility__item {
        /* border-radius: 16px → 1.23vw */
        border-radius: 1.23vw;
    }

    .p-facility__img-wrap img {
        /* border-radius: 16px → 1.23vw */
        border-radius: 1.23vw 1.23vw 0 0;
        -webkit-border-radius: 1.23vw 1.23vw 0 0;
        -moz-border-radius: 1.23vw 1.23vw 0 0;
    }

    .p-facility__num {
        /* top: -10px → -0.77vw  /  left: -13px → -1vw */
        /* width/height: 48px → 3.69vw  /  font-size: 32px → 2.46vw */
        top: -0.77vw;
        left: -1vw;
        width: 3.69vw;
        height: 3.69vw;
        font-size: 2.46vw;
    }

    .p-facility__item-title {
        /* font-size: 20px → 1.54vw */
        /* padding: 32px 18.5px 24px → 2.46vw 1.42vw 1.85vw */
        font-size: 1.54vw;
        letter-spacing: calc(1.54vw * (2 / 100));
        padding: 2.46vw 1.42vw 1.85vw;
    }

    .p-facility__item-body {
        /* font-size: 16px → 1.23vw */
        /* padding: 0 18.5px 27px → 0 1.42vw 2.08vw */
        font-size: 1.23vw;
        letter-spacing: calc(1.23vw * (2 / 100));
        padding: 0 1.42vw 2.08vw;
    }

    /* ===== セキュリティボックス ===== */
    .p-facility__security {
        /* max-width: 940px → 72.31vw  /  border-radius: 26px → 2vw */
        max-width: 72.31vw;
        border-radius: 2vw;
        -webkit-border-radius: 2vw;
        -moz-border-radius: 2vw;
    }

    .p-facility__security-img {
        /* flex: 0 0 260px → 20vw */
        flex: 0 0 20vw;
    }

    .p-facility__security-text {
        /* padding: 48.5px 61px 48.5px 41px → 3.73vw 4.69vw 3.73vw 3.15vw */
        padding: 3.73vw 4.69vw 3.73vw 3.15vw;
        border-radius: 0 2vw 2vw 0;
        -webkit-border-radius: 0 2vw 2vw 0;
        -moz-border-radius: 0 2vw 2vw 0;
    }

    .p-facility__security-title {
        /* font-size: 20px → 1.54vw  /  margin-bottom: 20px → 1.54vw */
        font-size: 1.54vw;
        letter-spacing: calc(1.54vw * (2 / 100));
        margin-bottom: 1.54vw;
    }

    .p-facility__security-note {
        /* font-size: 16px → 1.23vw */
        font-size: 1.23vw;
        letter-spacing: calc(1.23vw * (2 / 100));
    }

    .p-event {
        padding: 7.69vw 0 7.69vw;

    }

    .p-event__inner {
        max-width: 92.31vw;

    }

    .p-event__season {
        margin-bottom: 8.46vw;

    }

    .p-event__season-icon {
        margin-top: 0.77vw;

    }

    .p-event__month {
        margin-bottom: 1.85vw;

    }

    .p-event__month-title {
        font-size: 1.54vw;
        padding: 0.77vw 1.08vw;
        margin-bottom: 1.08vw;
        letter-spacing: calc(1.54vw * (2 / 100));

    }

    .p-event__month-text {
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));
        padding: 0 1.08vw;

    }

    .p-event__note {
        font-size: 1vw;
        margin-top: -0.77vw;

    }

    .p-event__gallery {
        gap: 1.85vw 0;

    }

    .p-event__card-img {
        margin-bottom: 0.92vw;

    }

    .p-event__card-img img {
        border-radius: 0.77vw;

    }

    .p-event__card-text {
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));

    }

    .p-recruit {
        padding: 7.69vw 0 9.23vw;

    }

    .p-recruit__inner {
        max-width: 84.62vw;

    }

    .p-recruit__banner {
        max-width: 41.54vw;
        margin: 0 auto 6.92vw;

    }

    .p-recruit__banner img {
        border-radius: 0.92vw;

    }

    .p-recruit__table {
        margin-bottom: 6.15vw;
        gap: 0.38vw;

    }

    .p-recruit__row {
        border-radius: 0.31vw;
        min-height: 4.62vw;

    }

    .p-recruit__row dt {
        padding: 1.31vw 0.77vw;
        letter-spacing: calc(1.54vw * (2 / 100));
        font-size: 1.54vw;

    }

    .p-recruit__row dd {
        padding: 1.31vw 2.77vw;
        font-size: 1.54vw;
        letter-spacing: calc(1.54vw * (2 / 100));

    }

    .p-recruit__message {
        font-size: 1.85vw;
        letter-spacing: calc(1.85vw * (2 / 100));

    }

    .p-flow1 {
        padding: 7.69vw 0;

    }

    .p-flow1__inner {
        max-width: 84.62vw;

    }

    .p-flow1__content {
        gap: 3.38vw;

    }

    .p-flow1__img {
        max-width: 26.62vw;

    }

    .p-flow1__step-num {
        font-size: 4.62vw;
        letter-spacing: calc(4.62vw * (2 / 100));

    }

    .p-flow1__step-text {
        margin-top: 0.54vw;
        margin-left: 2.31vw;
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));

    }

    .p-flow1__arrow {
        width: 3.85vw;
        margin: 2.77vw 0 2.77vw 0.23vw;

    }

    .p-flow2 {
        /* padding: 0 0 7.69vw; */
        padding: 7.69vw 0 7.69vw;

    }

    .p-flow2__inner {
        max-width: 89.23vw;

    }

    .p-flow2__box {
        border-radius: 1.15vw;
        padding: 2.31vw 1.85vw;
        margin-bottom: 7.69vw;
        gap: 1.85vw;

    }

    .p-flow2__box-icon {
        width: 3vw;

    }

    .p-flow2__box-title {
        font-size: 2.77vw;
        letter-spacing: calc(2.77vw * (2 / 100));

    }

    .p-flow2__heading {
        margin-bottom: 7.69vw;

    }

    .p-flow2__heading h3 {
        font-size: 2.77vw;
        letter-spacing: calc(2.77vw * (2 / 100));
        padding: 0 1.15vw 0.62vw;

    }

    .p-flow2__text-blocks {
        max-width: 80vw;

    }

    .p-flow2__text-block p {
        font-size: 1.54vw;
        letter-spacing: calc(1.54vw * (2 / 100));

    }

    .p-contact-guide {
        padding: 7.69vw 0 8.46vw;

    }

    .p-contact-guide__inner {
        max-width: 69.23vw;
        padding: 0 2.31vw;

    }

    .p-contact-guide__btns {
        gap: 2.31vw;

    }

    .p-contact-guide__btn {
        width: 24.62vw;
        height: 4.62vw;
        border-radius: 2.46vw;
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));

    }

    .p-contact-guide__btn--green {
        gap: 1.23vw;

    }

    .p-contact-guide__btn--white {
        gap: 0.62vw;

    }

    .p-contact-guide__btn-icon {
        width: 1.85vw;
        margin-top: 0.23vw;

    }

    .p-contact-guide__btn-arrow {
        font-size: 1.23vw;

    }

    .p-parents {
        padding: 7.69vw 0 12.31vw;

    }

    .p-parents__inner {
        max-width: 61.54vw;
        padding: 0 2.31vw;

    }

    .p-parents__catch {
        font-size: 2.46vw;
        letter-spacing: calc(2.46vw * (2 / 100));
        margin-bottom: 3.08vw;

    }

    .p-parents__box {
        max-width: 44.62vw;
        margin: 0 auto 3.85vw;
        border-radius: 0.92vw;

    }

    .p-parents__box-left {
        padding: 1.54vw 0.77vw;
        font-size: 2.15vw;
        letter-spacing: calc(2.15vw * (2 / 100));

    }

    .p-parents__box-right {
        padding: 1.54vw;

    }

    .p-parents__box-text1 {
        font-size: 1.85vw;
        gap: 1.85vw;

    }

    .p-parents__box-text1 img {
        width: 4vw;

    }

    .p-parents__box-plus img {
        width: 1.85vw;

    }

    .p-parents__box-text2 {
        font-size: 2.46vw;

    }

    .p-parents__list {
        max-width: 40.23vw;
        margin: 0 auto 4.62vw;
        gap: 1.85vw 0;

    }

    .p-parents__list li {
        font-size: 1.54vw;
        letter-spacing: calc(1.54vw * (2 / 100));

    }

    .p-parents__btn-wrap {
        margin-bottom: 1.54vw;

    }

    .p-parents__btn {
        gap: 1.23vw;
        width: 24.62vw;
        height: 4.92vw;
        font-size: 1.38vw;
        border-radius: 2.46vw;

    }

    .p-parents__btn-arrow {
        font-size: 1.23vw;

    }

    .p-parents__images {
        bottom: -0.08vw;
        max-width: 90vw;

    }

    .p-parents__img1 {
        max-width: 15.69vw;

    }

    .p-parents__img2 {
        max-width: 13.69vw;

    }

    .p-bus {
        padding: 7.69vw 0;

    }

    .p-bus__inner {
        max-width: 95.38vw;

    }

    .p-bus__content {
        border-radius: 1.54vw;
        padding: 2.15vw 1.92vw;

    }

    .p-recruit2 {
        padding: 7.69vw 0 12.92vw;

    }

    .p-recruit2__inner {
        max-width: 79.08vw;

    }

    .p-recruit2__banner {
        margin-bottom: 6.92vw;

    }

    .p-recruit2__banner img {
        max-width: 41.54vw;
        border-radius: 0.62vw;

    }

    .p-recruit2__heading {
        margin-bottom: 6.15vw;

    }

    .p-recruit2__heading h3 {
        font-size: 2.77vw;
        letter-spacing: calc(2.77vw * (2 / 100));
        padding: 0 1.15vw 0.62vw;

    }

    .p-recruit2__table {
        gap: 0.38vw;

    }

    .p-recruit2__th {
        font-size: 1.54vw;
        border-radius: 0.31vw;
        padding: 1.23vw 0.77vw;

    }

    .p-recruit2__th-side {
        font-size: 1.54vw;
        border-radius: 0.31vw;
        padding: 1.23vw 0.77vw;

    }

    .p-recruit2__td {
        border-radius: 0.31vw;
        padding: 1.23vw;
        font-size: 1.54vw;

    }

    .p-faq {
        padding: 7.69vw 0 11vw;

    }

    .p-faq__inner {
        max-width: 72.31vw;

    }

    .p-faq__lead {
        font-size: 1.38vw;
        margin-bottom: 6.15vw;

    }

    .p-faq__q {
        padding: 2.15vw 0.92vw;
        font-size: 1.38vw;

    }

    .p-faq__q-mark {
        font-size: 2.46vw;
        margin-bottom: 0.31vw;
        margin-right: 1.85vw;

    }

    .p-faq__q-text {
        padding-right: 3.08vw;
        font-size: 1.38vw;

    }

    .p-faq__icon {
        right: 1.54vw;
        width: 1.08vw;
        height: 1.08vw;

    }

    .p-faq__icon::before,
    .p-faq__icon::after {
        border-radius: 0.15vw;

    }

    .p-faq__icon::before {
        width: 1.08vw;
        height: 0.15vw;

    }

    .p-faq__icon::after {
        width: 0.15vw;
        height: 1.08vw;

    }

    .p-faq__a-inner {
        padding: 2.46vw 0.92vw;
        font-size: 1.23vw;
        letter-spacing: calc(1.23vw * (2 / 100));

    }

    .p-contact {
        padding: 7.69vw 0 8.62vw;

    }

    .p-contact__inner {
        max-width: 57.69vw;

    }

    .p-contact__lead {
        font-size: 1.38vw;
        margin-bottom: 4.62vw;

    }

    .p-contact__info {
        gap: 5.85vw;
        padding: 1.85vw 0;
        margin-bottom: 4.62vw;

    }

    .p-contact__info-logo img {
        width: 23.85vw;

    }

    .p-contact__info-number {
        font-size: 2.77vw;
        letter-spacing: calc(2.77vw * (2 / 100));

    }

    .p-contact__info-number img {
        width: 3.31vw;
        margin-right: 0.38vw;
        margin-top: 0.62vw;

    }

    .p-contact__info-time {
        font-size: 1.77vw;
        margin-top: 0.46vw;
        letter-spacing: calc(1.77vw * (2 / 100));

    }

    .form__item {
        margin-bottom: 2.31vw;

    }

    .form__label {
        width: 17.69vw;

    }

    .form__label-text {
        font-size: 1.38vw;

    }

    .form__required {
        font-size: 1.08vw;
        padding: 0.31vw;
        margin-left: 1.85vw;

    }

    .form__input input[type="text"],
    .form__input input[type="tel"],
    .form__input input[type="email"],
    .form__input textarea,
    .form__select-wrap select {
        padding: 1.15vw;
        font-size: 1.23vw;
        border-radius: 0.38vw;

    }

    .form__input textarea {
        height: 15.38vw;

    }

    .form__select-wrap::after {
        right: 1.15vw;
        font-size: 0.77vw;

    }

    .form__privacy {
        margin: 3.69vw 0 1.85vw;

    }

    .form__privacy label {
        font-size: 1.23vw;

    }

    .form__privacy input[type="checkbox"] {
        margin-right: 0.77vw;
        width: 0.77vw;
        height: 0.77vw;

    }

    .form__privacy input[type="checkbox"]:checked::after {
        width: 0.31vw;
        height: 0.62vw;

    }

    .form__submit-btn {
        max-width: 23.08vw;
        height: 4.62vw;
        font-size: 1.38vw;
        border-radius: 2.31vw;

    }

    .p-thanks {
        padding: 7.69vw 0;

    }

    .p-thanks__inner {
        max-width: 59.08vw;

    }

    .p-thanks__head {
        margin-bottom: 6.31vw;

    }

    .p-thanks__title {
        font-size: 2.46vw;
        padding: 0 1.85vw 1.85vw;

    }

    .p-thanks__content {
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));

    }

    .p-news {
        padding: 7.69vw 0 9.08vw;

    }

    .p-news__inner {
        max-width: 91.54vw;

    }

    .p-news__container {
        gap: 4.62vw;

    }

    .p-news__sidebar {
        width: 19.23vw;

    }

    .p-news__item a {
        gap: 2.92vw;
        padding: 1.85vw 0.92vw;

    }

    .p-news__meta {
        gap: 1.85vw;

    }

    .p-news__date {
        min-width: 6.15vw;
        font-size: 1.38vw;

    }

    .p-news__cat {
        padding: 0.46vw 1.54vw;
        font-size: 1.23vw;
        border-radius: 3.85vw;

    }

    .p-news__title {
        font-size: 1.38vw;

    }

    .p-news__pagination {
        margin-top: 3.85vw;
        gap: 0.62vw;
        font-size: 1.38vw;

    }

    .p-news__pagination .prev {
        font-size: 0.62vw;

    }

    .p-news__pagination .next {
        font-size: 0.62vw;

    }

    .p-news__widget {
        margin-bottom: 3.85vw;

    }

    .p-news__widget-title {
        font-size: 1.85vw;
        padding-bottom: 1.85vw;
        margin-bottom: 2.77vw;

    }

    .p-news__cat-list li {
        margin-bottom: 1.85vw;

    }

    .p-news__cat-list a {
        padding-left: 2.31vw;
        font-size: 1.38vw;

    }

    .p-news__cat-list a::before {
        width: 1.38vw;
        height: 1.38vw;

    }

    .p-news__archive-list li {
        margin-bottom: 1.85vw;

    }

    .p-news__archive-list a {
        font-size: 1.38vw;

    }

    .p-news__archive-list a::after {
        font-size: 1.38vw;

    }

    .p-news-detail__header {
        margin-bottom: 3.69vw;
        padding-bottom: 1.85vw;

    }

    .p-news-detail__title {
        font-size: 1.54vw;
        margin-top: 1.54vw;

    }

    .p-news-detail__body {
        font-size: 1.38vw;
        padding-bottom: 3.69vw;
        margin-bottom: 3.69vw;

    }

    .p-news-detail__back-btn {
        max-width: 17.85vw;
        height: 3.31vw;
        font-size: 1.38vw;
        letter-spacing: calc(1.38vw * (2 / 100));
        border-radius: 0.46vw;

    }

    .p-news-detail__back-btn::after {
        font-size: 0.92vw;
        margin-left: 1.54vw;

    }


    /* ===== Blog & Blog Detail ===== */
    .p-blog {
        padding: 7.69vw 0 9.08vw;
    }

    .p-blog__inner {
        max-width: 88.46vw;
    }

    .p-blog__container {
        gap: 4.62vw;
    }

    .p-blog__sidebar {
        width: 19.23vw;
    }

    .p-blog__item>a {
        gap: 3.08vw;
        padding: 3.08vw 0;
    }

    .p-blog__img {
        width: 23.08vw;
    }

    .p-blog__date {
        font-size: 1.08vw;
        margin-bottom: 0.62vw;
    }

    .p-blog__title {
        font-size: 1.54vw;
        margin-bottom: 0.92vw;
    }

    .p-blog__text {
        font-size: 1.15vw;
        margin-bottom: 1.85vw;
    }

    .p-blog__btn-link {
        padding: 0.46vw 2.77vw;
        border-radius: 0.31vw;
        font-size: 1.08vw;
    }

    .p-blog__pagination {
        gap: 0.62vw;
        margin-top: 4.62vw;
    }

    .p-blog__pagination .page-numbers {
        width: 2.77vw;
        height: 2.77vw;
        font-size: 1.08vw;
    }

    .p-blog__widget {
        margin-bottom: 3.85vw;
    }

    .p-blog__widget-title {
        font-size: 1.54vw;
        padding-bottom: 1.23vw;
        margin-bottom: 2.31vw;
    }

    .p-blog__archive-list li {
        margin-bottom: 1.54vw;
    }

    .p-blog__archive-list a {
        font-size: 1.23vw;
    }

    .p-blog-detail__header {
        margin-bottom: 2.31vw;
    }

    .p-blog-detail__date {
        font-size: 1.08vw;
        margin-bottom: 0.62vw;
    }

    .p-blog-detail__title {
        font-size: 1.85vw;
    }

    .p-blog-detail__body {
        margin-bottom: 3.85vw;
    }

    .p-blog-detail__body p {
        font-size: 1.23vw;
    }

    .p-blog-detail__gallery {
        gap: 0.77vw;
        margin-bottom: 4.62vw;
    }

    .p-blog-detail__btn-link {
        padding: 0.92vw 4.62vw;
        border-radius: 0.31vw;
        font-size: 1.23vw;
    }

    .p-blog-detail__btn-link .arrow {
        right: 1.54vw;
        font-size: 0.92vw;
    }
}