@media screen and (max-height: 950px) {

    /*----- p_mainvisual ------*/
    .pages #p_mainvisual .inner {
        padding-bottom: 10vh;
    }

    .pages #p_mainvisual .fv_slogan {
        width: 10.526vh;
    }
}

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

    /*----- p_mainvisual ------*/
    .pages #p_mainvisual .inner {
        padding-left: 7.105vw;
        padding-right: 7.105vw;
    }

    /*----- under_banner ------*/
    .pages #under_banner .banner_item a {
        padding: 8.105vw 0 4.737vw;
    }

    .pages #under_banner .banner_item .under_banner_title {
        font-size: 3.158vw;
    }

    .pages #under_banner .banner_item .btn_primary .btn_hover {
        gap: 1.895vw;
    }

    .pages #under_banner .banner_item .btn_primary .txt {
        font-size: 2.105vw;
    }
}

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

    /*----- p_mainvisual ------*/
    .pages #p_mainvisual h2 {
        font-size: 5.333vw;
    }

    /*----- table ------*/
    .pages .tb_catcher dl dt {
        max-width: 250px;
    }

    .pages .wp-pagenavi a.nextpostslink {
        margin-left: 7.333vw;
    }

    .pages .wp-pagenavi a.previouspostslink {
        margin-right: 7.333vw;
    }

    /*----- under_banner ------*/
    .pages #under_banner .banner_item .btn_primary .circle {
        width: 48px;
        height: 48px;
    }
}

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

@media screen and (min-width: 1025px) {
    .pages .wp-pagenavi a:not(.nextpostslink):not(.previouspostslink):hover {
        color: #faa9cb;
        background: var(--white-color);
        border: 2px solid var(--white-color);
    }

    .pages .wp-pagenavi a.previouspostslink:hover,
    .pages .wp-pagenavi a.nextpostslink:hover,
    .pages .media_back li:not(.special-btn) a:hover,
    .pages .contact_form .smf-action .smf-button-control__control:hover,
    .pages #news_container .news_list li a:hover {
        opacity: 0.7;
    }

    .pages .media_back li.prev-btn .btn_primary a:hover .circle {
        transform: rotate(180deg) scale(1.1);
    }

    .pages #under_banner .banner_item a:hover {
        color: var(--white-color);
    }

    .pages #under_banner .banner_item a:hover::before {
        opacity: 0;
    }

    .pages #under_banner .banner_item a:hover .btn_hover .circle {
        transform: scale(1);
        background: transparent;
        border-color: var(--white-color);
    }

    .pages #under_banner .banner_item a:hover .btn_hover .circle .icon {
        animation: arrowright .5s ease-out forwards;
    }

    .pages #under_banner .banner_item a:hover figure {
        opacity: 1;
    }

    .pages #news_container .news_info .side_menu dl dd .list_taxo li a:hover {
        color: #f8a7c9;
    }

    .pages #letter_info .wp-pagenavi a:not(.nextpostslink):not(.previouspostslink):hover {
        color: var(--white-color);
        background: #f8a7c9;
        border-color: #f8a7c9;
    }
}

@media screen and (max-width: 1024px) {
    .pages h3.pages_mainttl {
        font-size: 28px;
    }

    /*----- table ------*/
    .pages table th,
    .pages table td {
        padding: 20px 5px;
    }

    .pages table th {
        font-size: 16px;
    }

    .pages .tb_catcher dl dt {
        max-width: 180px;
        font-size: 16px;
        padding: 0 5px;
    }

    .pages .tb_catcher dl dd {
        padding: 0 5px;
    }

    .pages .wp-pagenavi {
        margin-top: 45px;
    }

    .pages .wp-pagenavi span,
    .pages .wp-pagenavi a {
        font-size: 16px;
        width: 40px;
        height: 40px;
        margin: 0 3px 8px;
    }

    .pages .wp-pagenavi a.previouspostslink::before,
    .pages .wp-pagenavi a.nextpostslink::before {
        width: 40px;
        height: 40px;
    }

    .pages .contents_detail p:not(:last-child) {
        margin-bottom: 25px;
    }
}

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

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

    .pages .image_r,
    .pages .image_l {
        float: none;
        text-align: center;
        margin: 0 0 20px;
    }

    /*----- p_mainvisual ------*/
    .pages #p_mainvisual h2 {
        font-size: 33px;
    }

    .pages #p_mainvisual .fv_slogan {
        max-width: 60px;
    }

    /*topic path*/
    .pages #topic_path {
        margin: 0 0 35px;
    }

    .pages #topic_path ul {
        padding: 25px 0 0;
    }

    /*-----table-----*/
    .pages table {
        margin-bottom: 35px;
    }

    /*-----table scroll------*/
    .pages .tb_scroll {
        overflow: scroll;
        margin-bottom: 10px
    }

    .pages .tb_scroll > table {
        width: 800px;
    }

    .pages #content .txt_note {
        display: block;
        font-size: 12px;
        color: #AFAFAF;
        margin-bottom: 8px;
    }

    /*-----table block-----*/
    .pages #content table.tb_block tr th,
    .pages #content table.tb_block tr td {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box;
    }

    .pages table.tb_block tr th {
        border-bottom: 0;
        padding-bottom: 0;
    }

    .pages table.tb_block tr td {
        padding-top: 5px;
    }

    .pages table.tb_block tr:last-child td:last-child {}

    /*tb_cal*/
    .pages .tb_cal th {
        line-height: 1.3;
    }

    .pages .tb_cal td {
        font-size: 15px;
    }

    .pages .tb_catcher dl {
        flex-direction: column;
        gap: 5px;
        padding: 20px 0;
    }

    .pages .tb_catcher dl dt {
        max-width: 100%;
    }

    /*----- under_banner ------*/
    .pages #under_banner .banner_item {
        height: 380px;
    }

    .pages #under_banner .banner_item a {
        padding: 30px 0 0;
    }

    .pages #under_banner .banner_item .under_banner_title {
        font-size: 28px;
    }

    .pages #under_banner .banner_item .btn_primary .txt {
        font-size: 18px;
    }

    .pages #under_banner .banner_item .btn_primary .circle {
        width: 40px;
        height: 40px;
    }

    .pages #under_banner .banner_item .btn_primary .circle .icon {
        width: 15px;
        height: 10px;
    }
}

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

    /*----- p_mainvisual ------*/
    .pages #p_mainvisual .fv_slogan {
        right: 10%;
    }

    /*----- under_banner ------*/
    .pages #under_banner .banner_item {
        height: 340px;
    }

    .pages #under_banner .banner_item .btn_primary .txt {
        display: none;
    }
}

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

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

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

/* ------------------------------------------------------
p_guide
------------------------------------------------------ */
@media screen and (max-height: 850px) {
    .pages #guide_intro .pages_mainttl {
        top: 20vh;
    }

    .pages #guide_intro .special_panel .special_frame {
        padding-top: 34vh;
    }

    .pages #guide_intro .guide_intro_btn {
        top: 90vh;
    }
}

@media screen and (max-height: 650px) {
    .pages #guide_intro .pages_mainttl {
        top: 24vh;
    }

    .pages #guide_intro .special_panel .special_frame {
        padding-top: 38vh;
    }

    .pages #guide_intro .special_panel .special_component {
        max-width: 100%;
    }
}

@media screen and (max-width: 1900px) {
    .pages #guide_intro .pages_mainttl {
        left: 9.211vw;
    }

    .pages #guide_intro .special_panel .special_frame {
        padding-left: 9.211vw;
    }

    .pages #guide_intro .guide_intro_btn {
        left: 9.211vw;
    }
}

@media screen and (max-width: 1500px) {
    .pages #guide_intro .pages_mainttl {
        left: 3%;
    }

    .pages #guide_intro .special_panel .special_frame {
        padding-left: 3%;
    }

    .pages #guide_intro .special_panel .special_title {
        font-size: 18px;
    }

    .pages #guide_intro .special_panel .special_txt {
        font-size: 14px;
    }

    .pages #guide_intro .guide_intro_btn {
        left: 3%;
    }

    .pages .p_guide .section_bg {
        padding-bottom: 24.667vw;
    }

    .pages #guide_gallery {
        padding: 0 3%;
    }

    .pages #guide_access {
        padding: 0 3%;
        margin-top: -23vw;
    }
}

@media screen and (max-width: 1150px) {
    .pages #guide_intro .pages_mainttl {
        top: 16vh;
    }

    .pages #guide_intro .special_panel .special_frame {
        padding-top: 28vh;
    }
}

@media screen and (max-width: 1024px) {
    .pages #guide_intro .guide_intro_btn {
        max-width: 350px;
    }

    .pages #guide_intro .guide_intro_btn .btn_primary .txt {
        font-size: 18px;
    }

    .pages #guide_overview {
        padding: 50px 0 55px;
    }

    .pages #guide_overview .pages_mainttl {
        margin-bottom: 15px;
    }
}

@media screen and (max-width: 768px) {
    .pages #guide_intro .guide_intro_wrap {
        position: relative;
        top: auto;
        left: auto;
    }

    .pages #guide_intro .guide_intro_component {
        padding: 50px 3%;
    }

    .pages #guide_intro .pages_mainttl {
        margin-bottom: 35px;
        position: relative;
        top: auto;
        left: auto;
    }

    .pages #guide_intro .special_panel {
        height: auto;
        opacity: 1;
        visibility: visible;
        margin-bottom: 35px;
    }

    .pages #guide_intro .special_panel .special_frame {
        height: auto;
        padding: 0 0;
        position: relative;
        top: auto;
        left: auto;
    }

    .pages #guide_intro .guide_intro_btn {
        width: 94%;
        max-width: 100%;
        flex-wrap: wrap;
        justify-content: center;
        gap: 25px;
        margin: 0 auto;
        position: relative;
        top: auto;
        left: auto;
    }

    .pages #guide_intro .guide_intro_btn .btn_primary {
        width: 160px;
        text-align: right;
    }

    .pages #guide_intro .virtual_group,
    .pages #guide_intro .virtual_cover {
        display: none;
    }

    .pages #guide_intro .guide_intro_cover {
        width: 100%;
    }

    .pages #guide_intro .guide_intro_cover::before {
        position: absolute;
        content: '';
        width: 100%;
        height: 100%;
        background: rgba(255, 255, 255, 0.85);
        top: 0;
        left: 0;
    }
}

/* ------------------------------------------------------
p_recruit
------------------------------------------------------ */
@media screen and (max-width: 1900px) {
    .pages #recruit_intro .recruit_intro_frame {
        padding-left: 7.053vw;
    }

    .pages #recruit_intro .recruit_intro_txt {
        margin-bottom: 4.947vw;
    }

    .pages #recruit_intro .recruit_benefits {
        margin-bottom: 6.737vw;
    }
}

@media screen and (max-width: 1500px) {
    .pages #recruit_intro .recruit_intro_title {
        font-size: 2.133vw;
    }

    .pages #recruit_intro .recruit_intro_frame {
        padding: 0 3% 43px;
    }
}

@media screen and (max-width: 1024px) {
    .pages #recruit_intro .headline {
        width: 100%;
        padding: 55px 3% 0;
        margin-bottom: 35px;
    }

    .pages #recruit_intro .recruit_intro_title {
        font-size: 24px;
    }

    .pages #recruit_intro .recruit_intro_wrap {
        flex-direction: column-reverse;
        gap: 35px;
    }

    .pages #recruit_intro .recruit_intro_frame {
        width: 100%;
        padding: 0 3%;
    }

    .pages #recruit_intro .recruit_intro_component {
        max-width: 100%;
    }

    .pages #recruit_intro .recruit_intro_txt {
        text-align: center;
        margin-bottom: 45px;
    }

    .pages #recruit_intro .recruit_benefits {
        margin: 0 auto 45px;
    }

    .pages #recruit_intro .recruit_intro_btn {
        margin: 0 auto;
    }

    .pages #recruit_intro .recruit_intro_cover {
        width: 100%;
    }

    .pages #recruit_intro .cover_image {
        top: 15.527vw;
    }

    .pages #recruit_overview {
        padding: 50px 0 55px;
        position: relative;
    }

    .pages #recruit_overview .pages_mainttl {
        margin-bottom: 15px;
    }
}

@media screen and (max-width: 576px) {
    .pages #recruit_intro .recruit_intro_txt {
        text-align: justify;
    }

    .pages #recruit_intro .recruit_intro_btn {
        flex-direction: column;
    }
}

/* ------------------------------------------------------
p_support
------------------------------------------------------ */
@media screen and (max-width: 1024px) {
    .pages #support_intro {
        padding: 55px 0 50px;
    }

    .pages #support_intro .support_intro_title {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .pages #support_intro .support_intro_des {
        font-size: 16px;
    }

    .pages #support_intro .support_intro_des p:not(:last-child) {
        margin-bottom: 25px;
    }

    .pages #support_overview {
        padding: 15px 0 75px;
    }

    .pages #support_overview .overview_card {
        margin-bottom: 55px;
    }

    .pages #support_overview .card_title {
        font-size: 22px;
        margin-bottom: 25px;
    }

    .pages #support_overview .card_wrap {
        gap: 20px;
    }

    .pages #support_overview .card_subtitle,
    .pages #support_overview .card_des pre {
        font-size: 16px;
    }

    .pages #support_overview .card_subtitle {
        margin-bottom: 15px;
    }

    .pages #support_overview .card_des p:not(:last-child) {
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 768px) {
    .pages #support_overview .card_wrap {
        flex-direction: column;
        gap: 35px;
    }

    .pages #support_overview .card_image {
        width: 84.549vw;
        height: 52.951vw;
        margin: 0 auto;
    }
}

/* ------------------------------------------------------
p_class
------------------------------------------------------ */
@media screen and (max-width: 1900px) {
    .class-details #edu_goal .edu_goal_gallery .image01 {
        top: 14.895vw;
        right: 1.053vw;
    }

    .class-details #edu_goal .edu_goal_gallery .image02 {
        top: 4.579vw;
        left: 2.316vw;
    }

    .class-details #edu_goal .edu_goal_gallery .image03 {
        top: 1.421vw;
    }

    .class-details #edu_goal .edu_goal_gallery .image04 {
        bottom: 4.053vw;
        left: -10.632vw;
    }
}

@media screen and (max-width: 1500px) {
    .pages #class_features .class_card:nth-child(odd) {
        padding-right: 0;
    }

    .pages #class_features .class_card:nth-child(even) {
        padding-left: 0;
    }

    .class-details #p_mainvisual h2 .icon {
        top: 0.933vw;
    }

    .class-details #edu_goal .edu_goal_des {
        margin-bottom: 14.867vw;
    }

    .class-details #daily_program {
        padding: 15.6vw 0 146px;
    }

    .class-details #daily_program .daily_program_slogan {
        top: -4.6vw;
    }

    .class-details .class-57 #daily_program .daily_program_slogan {
        top: -11.867vw;
    }
}

@media screen and (max-width: 1250px) {
    .class-details #edu_goal .edu_goal_gallery .image03 {
        left: 30.4vw;
    }
}

@media screen and (max-width: 1024px) {
    .pages #class_info {
        padding: 65px 0 25px;
    }

    .pages #class_info .class_list li a {
        font-size: 18px;
    }

    .pages #class_features {
        padding: 35px 0 75px;
    }

    .pages #class_features .pages_mainttl {
        margin-bottom: 45px;
    }

    .pages #class_features .class_card {
        margin-bottom: 50px;
    }

    .pages #class_features .class_card .class_headline {
        padding-top: 0;
    }

    .pages #class_features .class_card .class_headline .class_mainttl {
        font-size: 26px;
    }

    .pages #class_features .class_card .class_headline .class_mainttl .icon {
        max-width: 45px;
        height: 45px;
        max-height: 45px;
    }

    .class-details #anchor_link {
        padding: 65px 0 25px;
    }

    .class-details #anchor_link .anchor_list li a {
        font-size: 18px;
    }

    .class-details #edu_goal {
        padding-top: 35px;
    }

    .class-details #edu_goal .edu_goal_subtitle {
        margin-bottom: 35px;
    }

    .class-details #edu_goal .edu_goal_des p:not(:last-child) {
        margin-bottom: 25px;
    }

    .class-details #edu_goal .btn_primary .txt {
        font-size: 18px;
    }

    .class-details #edu_goal .edu_goal_gallery .image03 {
        left: 20vw;
    }

    .class-details #daily_program {
        padding-bottom: 65px;
    }

    .class-details #daily_program h3.pages_mainttl {
        margin-bottom: 35px;
    }

    .class-details #daily_program .daily_program_list dl::after,
    .class-details #daily_program .daily_program_list dl:last-child::before {
        width: 6px;
        left: 70px;
    }

    .class-details #daily_program .daily_program_list dl:last-child::after {
        border-top: 40px solid #faa9cb;
        border-right: 30px solid transparent;
        left: 70px;
    }

    .class-details #daily_program .daily_program_list dl.headline dt,
    .class-details #daily_program .daily_program_list dl.headline dd {
        font-size: 18px;
    }

    .class-details #daily_program .daily_program_list dl {
        gap: 45px;
    }

    .class-details #daily_program .daily_program_list dl dt {
        max-width: 70px;
    }

    .class-details .ume_control {
        padding: 55px 0 0;
    }

    .pages .media_back li:not(.special-btn) .btn_primary .txt {
        font-size: 18px;
    }

    .pages .media_back li.special-btn a {
        font-size: 26px;
    }
}

@media screen and (max-width: 768px) {
    .pages #class_info .class_list {
        gap: 15px;
    }

    .pages #class_info .class_list li {
        width: calc((100% - 15px) / 2);
        margin-bottom: 10px;
    }

    .class-details #p_mainvisual {
        height: 50vh;
    }

    .class-details #p_mainvisual .inner {
        padding-left: 3%;
        padding-right: 3%;
        padding-bottom: 5vh;
    }

    .class-details #p_mainvisual h2 {
        font-size: 28px;
    }

    .class-details #p_mainvisual h2 .icon {
        width: 100%;
        max-width: 35px;
        height: 35px;
        max-height: 35px;
        top: 6px;
    }

    .class-details #anchor_link .anchor_list {
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }

    .class-details #anchor_link .anchor_list li {
        width: 100%;
        max-width: 320px;
    }
}

@media screen and (max-width: 576px) {
    .pages #class_features .class_card {
        flex-direction: column !important;
        gap: 35px;
    }

    .pages #class_features .class_card .class_component {
        width: 100%;
    }

    .pages #class_features .class_card figure {
        height: 48.611vw;
        max-height: 280px;
    }

    .class-details #edu_goal {
        padding-bottom: 85px;
    }

    .class-details #edu_goal .edu_goal_des {
        text-align: justify;
        margin-bottom: 25px;
    }

    .class-details #edu_goal .edu_goal_gallery {
        display: flex;
        flex-wrap: wrap;
        margin-top: 45px;
        position: relative;
        left: auto;
        bottom: auto;
        transform: translateX(0);
    }

    .class-details #edu_goal .edu_goal_gallery .para_image {
        width: 50vw;
        max-width: 100%;
        height: 35vw;
        max-height: inherit;
        top: auto;
        bottom: auto;
        right: auto;
        left: auto;
    }

    .class-details #daily_program {
        padding-top: 75px;
    }

    .class-details #daily_program .daily_program_slogan {
        width: 94%;
        max-width: 250px;
        top: -55px;
        left: 50%;
    }

    .pages .media_back {
        flex-direction: column;
        gap: 25px;
    }

    .pages .media_back li {
        width: 100%;
        text-align: center !important;
    }

    .class-details .class-57 #daily_program .daily_program_slogan {
        top: -78px;
    }
}

@media screen and (max-width: 490px) {
    .pages #class_info .class_list li {
        width: 100%;
    }
}

/* ------------------------------------------------------
p_accepting
------------------------------------------------------ */
@media screen and (max-width: 1024px) {
    .pages #accepting_intro {
        padding: 80px 0 150px;
    }

    .pages #accepting_intro h3.pages_mainttl {
        margin-bottom: 45px;
    }

    .pages #accepting_intro .accepting_intro_des {
        margin-bottom: 45px;
    }

    .pages #accepting_guidelines {
        padding: 50px 0 65px;
    }

    .pages #accepting_guidelines h3.pages_mainttl {
        margin-bottom: 35px;
    }

    .pages #accepting_faq {
        padding: 50px 0 75px;
    }

    .pages #accepting_faq .pages_mainttl {
        margin-bottom: 35px;
    }

    .pages #accepting_faq .faq_list dl {
        padding: 30px 20px;
    }

    .pages #accepting_faq .faq_list dl .tag {
        font-size: 28px;
        left: 5px;
    }

    .pages #accepting_faq .faq_list dl dt {
        font-size: 18px;
        padding: 15px 55px 16px 60px;
    }

    .pages #accepting_faq .faq_list dl dt::after {
        right: 15px;
    }

    .pages #accepting_faq .faq_list dl dt .tag {
        top: 5px;
    }

    .pages #accepting_faq .faq_list dl dd {
        padding: 25px 10px 0 60px;
    }

    .pages #accepting_faq .faq_list dl dd .tag {
        top: 14px;
    }
}

@media screen and (max-width: 768px) {
    .pages #accepting_intro .accepting_intro_btn {
        flex-wrap: wrap;
        justify-content: center;
        gap: 50px;
        row-gap: 25px;
        margin: 0 auto;
    }
}

/* ------------------------------------------------------
p_childcare
------------------------------------------------------ */
@media screen and (max-height: 950px) {
    .pages #childcare_intro .childcare_panel {
        padding-top: 7.158vh;
    }
}

@media screen and (max-height: 768px) {
    .pages #childcare_intro .childcare_panel {
        padding-top: 0;
    }
}

@media screen and (max-width: 1500px) {
    .pages #childcare_intro .headline {
        padding-top: 115px;
    }

    .pages #childcare_intro h3.pages_mainttl {
        font-size: 33px;
    }

    .pages #childcare_intro .childcare_panel .inner {
        gap: 3.933vw;
    }

    /*
    .pages #childcare_intro .childcare_panel .childcare_headline .tag {
        font-size: 6.667vw;
    }
*/

    .pages #childcare_intro .childcare_panel .childcare_component .panel_title {
        font-size: 28px;
    }

    .pages #childcare_intro .childcare_panel .childcare_component .panel_des {
        font-size: 14px;
    }
}

@media screen and (max-width: 1150px) {
    .pages #childcare_intro .headline {
        padding-top: 60px;
    }
}

@media screen and (max-width: 1024px) {
    .pages #childcare_intro {
        padding-bottom: 75px;
    }

    .pages #childcare_intro .headline {
        padding: 65px 0 120px;
    }

    .pages #childcare_intro .panel_container {
        height: auto;
    }

    .pages #childcare_intro .childcare_panel {
        height: auto;
        margin-bottom: 185px;
        position: relative;
        top: auto;
        left: auto;
        opacity: 1;
    }

    .pages #childcare_intro .childcare_panel:last-child {
        margin-bottom: 0;
    }

    .pages #childcare_intro .childcare_panel .inner {
        flex-direction: column;
        align-items: center;
        gap: 45px;
    }

    .pages #childcare_intro .childcare_panel .childcare_headline {
        width: 100%;
        max-width: 100%;
        height: auto;
        max-height: inherit;
        flex-direction: column;
        margin-bottom: -75px;
        position: relative;
        top: auto;
        left: auto;
        -webkit-clip-path: inherit;
        clip-path: inherit;
        opacity: 1;
    }

    .pages #childcare_intro .childcare_panel .childcare_headline figure {
        width: 84.833vw;
        max-width: 509px;
        top: -120px;
        left: 45%;
        transform: translateX(-50%);
        right: auto;
    }

    /*
    .pages #childcare_intro .childcare_panel .childcare_headline .tag {
        font-size: 78px;
        top: auto;
        left: auto;
    }
*/

    .pages #childcare_intro .childcare_panel .childcare_photo,
    .pages #childcare_intro .childcare_panel .childcare_component {
        filter: blur(0);
    }

    .pages #childcare_intro .childcare_panel .childcare_photo {
        width: 79.861vw;
        height: 52.083vw;
        margin-top: 0;
    }

    .pages #childcare_intro .childcare_panel .childcare_component {
        max-width: 100%;
        text-align: center;
        -ms-writing-mode: lr-tb;
        -webkit-writing-mode: horizontal-tb;
        -moz-writing-mode: horizontal-tb;
        -ms-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }

    .pages #childcare_intro .childcare_panel .childcare_component .panel_title {
        font-size: 24px;
        margin: 0 0 25px;
    }

    .pages #childcare_intro .childcare_panel .childcare_component .panel_des p:not(:last-child) {
        margin-bottom: 20px;
        margin-left: 0;
    }

    .pages #annual_events {
        padding: 55px 0 75px;
    }

    .pages #annual_events .pages_mainttl {
        margin-bottom: 35px;
    }

    .pages #annual_events .tb_events {
        margin-bottom: 45px;
    }

    .pages #annual_events .tb_events th {
        font-size: 20px;
    }

    .pages #annual_events .tb_events td:nth-child(2) {
        padding-left: 10px;
    }

    .pages #annual_events .block_title {
        font-size: 20px;
        margin-bottom: 25px;
    }

    .pages #annual_events .block_des p:not(:last-child) {
        margin-bottom: 25px;
    }

    .pages #food_news .food_news_subttl {
        font-size: 26px;
    }

    .pages #food_news .food_news_contents {
        padding: 55px 3%;
    }

    .pages #food_news .news_panel {
        margin-bottom: 45px;
    }

    .pages #food_news .news_panel .panel_title {
        font-size: 16px;
    }
}

@media screen and (max-width: 576px) {
    .pages #childcare_intro .childcare_panel {
        margin-bottom: 32.118vw;
    }

    .pages #childcare_intro .childcare_panel .childcare_headline figure {
        top: -20.833vw;
    }

    .pages #annual_events .tb_events th:first-child {
        width: 20%;
    }

    .pages #food_news {
        flex-direction: column;
    }

    .pages #food_news .food_news_cover {
        width: 100%;
    }

    .pages #food_news .food_news_contents {
        width: 100%;
    }

    .pages #food_news .news_panel figure {
        height: 55.687vw;
    }
}

/* ------------------------------------------------------
p_gallery
------------------------------------------------------ */
@media screen and (max-height: 950px) {
    .pages #our_gallery {
        padding-bottom: 4.211vh;
    }

    .pages #our_gallery .gallery_wrap {
        bottom: 12.947vh;
    }

    .pages #our_gallery .our_gallery_title {
        font-size: 8.421vh;
        top: 1.368vh;
    }
}

@media screen and (max-height: 768px) {
    .pages#gallery .vbox-child {
        max-width: 117.188vh !important;
        max-height: 78.125vh;
    }
}

@media screen and (max-width: 1500px) {
    .pages #our_gallery .gallery_wrap {
        bottom: 3vh;
    }

    .pages #our_gallery .gallery_wrap .inner {
        align-items: center;
    }

    .pages #our_gallery .our_gallery_title {
        top: 0;
    }
}

@media screen and (max-width: 1024px) {
    .pages #our_gallery {
        padding-bottom: 0;
    }

    .pages #our_gallery .gallery_wrap {
        bottom: 5vh;
    }

    .pages #our_gallery .our_gallery_title {
        font-size: 28px;
    }

    .pages #our_gallery .cate_list {
        gap: 25px;
    }

    .pages #our_gallery .cate_list li a,
    .pages#gallery .vbox-title {
        font-size: 16px;
    }

    .pages#gallery .vbox-left-corner {
        top: 14px;
    }
}

@media screen and (max-width: 576px) {
    .pages #our_gallery .gallery_wrap .inner {
        flex-direction: column-reverse;
        gap: 10px;
    }
}

/* ------------------------------------------------------
p_privacypolicy
------------------------------------------------------ */
@media screen and (max-width: 1150px) {
    .pages #privacypolicy_mv {
        min-height: 49.391vw;
    }
}

@media screen and (max-width: 1024px) {
    .pages #privacypolicy_mv {
        min-height: 380px;
        padding: 100px 0 50px;
    }

    .pages #privacypolicy_mv h2 {
        font-size: 28px;
        margin-bottom: 35px;
    }

    .pages #privacypolicy_info {
        padding: 55px 0;
    }

    .pages #privacypolicy_info .para_block {
        margin-bottom: 35px;
    }

    .pages #privacypolicy_info .para_title {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .pages #privacypolicy_info .para_title span {
        margin-right: 10px;
    }

    .pages #privacypolicy_info .para_des .sub_title {
        font-size: 16px;
    }

    .pages #privacypolicy_info .para_list li::before {
        width: 8px;
        height: 8px;
        top: 10px;
    }
}

/* ------------------------------------------------------
p_contact
------------------------------------------------------ */
@media screen and (max-width: 1150px) {
    .pages .p_contact #contact_mv {
        min-height: 63.13vw;
    }
}

@media screen and (max-width: 1024px) {
    .pages .p_contact #contact_mv {
        min-height: 420px;
        padding: 100px 0 55px;
    }

    .pages .p_contact #contact_mv h2 {
        font-size: 28px;
    }

    .pages .p_contact #contact_mv .contact_mv_frame {
        padding: 25px 3%;
    }

    .pages .p_contact #contact_mv .contact_mv_title {
        font-size: 22px;
    }

    .pages .p_contact #contact_mv .contact_mv_title i {
        width: 23px;
        height: 27px;
        margin-right: 5px;
    }

    .pages .p_contact #contact_mv .contact_phone {
        font-size: 20px;
    }

    .pages #contact_info {
        padding: 50px 0 75px;
    }

    .pages .contact_form .smf-item__col--label {
        max-width: 190px;
        padding-top: 16px;
    }

    .pages .contact_form .smf-item__col--label .smf-item__description {
        position: relative;
        top: -2px;
    }

    .pages .contact_form .field_radio .smf-radio-buttons-control__control {
        flex-wrap: wrap;
    }

    .pages .contact_form .field_radio .smf-label {
        width: 100%;
        max-width: 150px;
        height: 50px;
    }

    .pages .contact_form .input_custom {
        height: 52px;
    }

    .pages .contact_form .txt_custom {
        height: 182px;
    }

    .pages .contact_form .field_accept .accept_txt {
        font-size: 13px;
        top: 1px;
        left: 30px;
    }

    .pages .contact_form .smf-action .smf-button-control__control,
    .pages .contact_form .smf-complete-content {
        font-size: 18px;
    }
}

@media screen and (max-width: 768px) {
    .pages .p_contact #contact_mv .contact_mv_frame {
        flex-direction: column;
        gap: 25px;
        padding: 40px 3%;
    }

    .pages .p_contact #contact_mv .contact_mv_title {
        width: 100%;
    }

    .pages .p_contact #contact_mv .contact_mv_component {
        width: 100%;
    }

    .pages .p_contact #contact_mv .contact_mv_component::before {
        display: none;
    }

    .pages .p_contact #contact_mv .contact_notes {
        font-size: 12px;
    }

    .pages .contact_form .smf-item {
        flex-direction: column;
    }

    .pages .contact_form .smf-item__col--label {
        max-width: 100%;
        padding-top: 0;
    }

    .pages .contact_form .smf-action .smf-button-control__control::after {
        display: none;
    }
}

/* ------------------------------------------------------
p_news
------------------------------------------------------ */
@media screen and (max-width: 1150px) {
    .pages .p_news #news_mv {
        min-height: 63.13vw;
    }

    .pages #news_container .news_info .inner {
        gap: 6.957vw;
    }

    .pages #news_container .news_info .side_menu::after {
        right: -3.478vw;
    }

    .pages #news_container .news_list li a {
        gap: 20px;
    }
}

@media screen and (max-width: 1024px) {
    .pages .p_news #news_mv {
        min-height: 420px;
        padding: 100px 0 150px;
    }

    .pages .p_news #news_mv h2 {
        font-size: 28px;
        margin-bottom: 35px;
    }

    .pages #news_container {
        padding: 2px 0 65px;
    }

    .pages #news_container .news_info {
        padding: 50px 0;
        margin-top: -100px;
    }

    .pages #news_container .news_info .side_menu {
        max-width: 180px;
    }

    .pages #news_container .news_info .side_menu dl dt {
        font-size: 24px;
    }

    .pages #news_container .news_info .side_menu dl dt i {
        width: 23px;
        height: 27px;
        margin-right: 10px;
    }

    .pages #news_container .news_info .side_menu dl dd .list_taxo li a {
        font-size: 18px;
    }

    .pages #news_container .news_list li a {
        gap: 15px;
        padding: 0 60px 0 20px;
    }

    .pages #news_container .news_list li a::after {
        width: 40px;
        height: 40px;
        right: 10px;
    }

    .pages #news_container .news_list .news_meta .date {
        font-size: 14px;
    }

    .pages #news_container .news_list .news_meta .news_cate li {
        font-size: 13px;
    }

    .pages #news_container .news_list .news_title {
        font-size: 14px;
        line-height: 2;
    }

    .news-details #news_container #topic_path {
        margin-top: -180px;
    }

    .news-details #news_container .news_info,
    .news-details #news_container .news_cate,
    .news-details #news_container .media_headline {
        margin-bottom: 45px;
    }

    .news-details #news_container .media_headline .date {
        font-size: 20px;
    }

    .news-details #news_container .media_headline .headline_title {
        font-size: 24px;
    }

    .news-details #news_container .contents_detail {
        margin-bottom: 35px;
    }

    .news-details #news_container .media_back li {
        height: 120px;
    }

    .news-details #news_container .media_back li a {
        gap: 15px;
        padding: 25px 20px;
    }

    .news-details #news_container .media_back li .icon_btn {
        font-size: 18px;
    }

    .news-details #news_container .media_back li .icon_btn i {
        width: 40px;
        height: 40px;
    }

    .news-details #news_container .btn_primary .txt {
        font-size: 20px;
    }

    .news-details #news_container .btn_primary .circle {
        width: 40px;
        height: 40px;
    }
}

@media screen and (max-width: 768px) {
    .pages #news_container .news_info .inner {
        flex-direction: column-reverse;
        gap: 45px;
    }

    .pages #news_container .news_info .side_menu {
        max-width: 100%;
    }

    .pages #news_container .news_info .side_menu::after {
        display: none;
    }
}

@media screen and (max-width: 576px) {
    .pages #news_container .news_list li a {
        flex-direction: column;
        align-items: flex-start;
        padding: 25px 60px 20px 15px;
    }

    .pages #news_container .news_list .news_meta {
        width: 100%;
        display: flex;
        padding-bottom: 0;
    }

    .pages #news_container .news_list .news_meta .date {
        margin: 5px 8px 0 0;
    }

    .pages #news_container .news_list .news_component {
        padding: 0 0;
    }

    .news-details #news_container .media_back li {
        width: 100%;
    }
}

/* ------------------------------------------------------
p_letter
------------------------------------------------------ */
@media screen and (max-width: 1150px) {
    .pages #letter_mv {
        min-height: 48.174vw;
    }
}

@media screen and (max-width: 1024px) {
    .pages #letter_mv {
        min-height: 420px;
        padding: 100px 0 75px;
    }

    .pages #letter_mv h2 {
        font-size: 28px;
        margin-bottom: 35px;
    }

    .pages #letter_info {
        padding: 55px 0 75px;
    }

    .pages #letter_info .letter_list {
        gap: 15px;
    }

    .pages #letter_info .letter_list .letter_card {
        width: calc((100% - 30px) / 3);
        padding: 15px 15px;
    }
}

@media screen and (max-width: 991px) {
    .pages #letter_info .letter_list .letter_card {
        width: calc((100% - 15px) / 2);
    }
}

@media screen and (max-width: 576px) {
    .pages #letter_info .letter_list .letter_card {
        width: 100%;
    }

    .pages #letter_info .letter_card .pdf_file {
        height: 86.806vw;
    }
}
