@charset "UTF-8";

:root{
    --width: 1440;

    --txt_color: #3D4434;
    --corporate_color: #335208;
    --shirayuri_color: #A7D38D;
    --hibari_color: #855E44;
    --gray: #B8B8B8;
    --accent: #FFA00F;
    --blue: #BCF0E4;
    --bg_1: #D4E8B8;
    --bg_2: #F1F3CA;
    --bg_3: #FFF8E4;
    --bg_white: #fff;

    --width-nomal: calc(1100 / var(--width) * 100vw);
    --padding-100: calc(100 / var(--width) * 100vw);
    --padding-80: calc(80 / var(--width) * 100vw);
    --padding-50: calc(50 / var(--width) * 100vw);
    --padding-30: calc(30 / var(--width) * 100vw);
    --padding-20: calc(20 / var(--width) * 100vw);
    --padding-10: calc(10 / var(--width) * 100vw);

    --font-size-mid: calc(18 / var(--width) * 100vw);
    --font-size-big: calc(20 / var(--width) * 100vw);
}

/*=============

しらゆり・ひばりページ

==============*/

/* ===== FV ===== */
/* ===== しらゆり・ひばり共通 ===== */
.facility-fv-w{
    width: 100%;
    justify-content: space-between;
    align-items: center;
}
.facility-fv-w .facility-fv-image-w{
    width: 60%;
    position: relative;
}
.facility-fv-w .facility-fv-image-w img{
    border-top-left-radius: calc(50 / var(--width) * 100vw);
}
.facility-fv-w .nav-w{
    width: 40%;
}
.facility-fv-w .nav-w .facility-name img{
    height: calc(57 / var(--width) * 100vw);
    width: fit-content;
}
.facility-fv-w .nav-w .facility-name{
    align-items: center;
    gap: var(--padding-30);
    width: fit-content;
    margin: 0 auto;
    padding-bottom: 1rem;
}
.facility-fv-w .nav-w .facility-name-InContent{
    gap: var(--padding-10);
}
.facility-fv-w .nav-w h1 .main-name{
    font-size: calc(50 / var(--width) * 100vw);
    line-height: 100%;
}
.facility-fv-w .nav-w h1 .sub-name{
    font-size: var(--font-size-mid);
}
.facility-fv-w .nav-w .side-nav{
    width: 45%;
    margin: var(--padding-30) auto 0;
}
.facility-fv-w .nav-w .side-nav a{
    padding: 5% 0;
    border-bottom: solid 1px var(--gray);
    position: relative;
    transition: .3s ease;
}
.facility-fv-w .nav-w .side-nav a:hover:after{
    transform: scale(1.2);
}

/* ===== FVしらゆり ===== */
#shirayuri-fv .facility-fv-w .nav-w .facility-name{
    border-bottom: dotted var(--shirayuri_color) 7px;
}
#shirayuri-fv .facility-fv-w .nav-w .side-nav a:not(:last-child):after{
    content: "";
    display: block;
    background-image: url(../images/shirayuri/s-link-icon-01.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 1.5rem;
    height: 1.5rem;
    position: absolute;
    right: 0;
    top: calc(50% - .7rem);
}
#shirayuri-fv .facility-fv-w .nav-w .side-nav a:last-child:after{
    content: "";
    display: block;
    background-image: url(../images/shirayuri/s-link-icon-02.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 1.5rem;
    height: 1.5rem;
    position: absolute;
    right: 0;
    top: calc(50% - .7rem);
}
#shirayuri-fv .facility-fv-w .facility-fv-image-w::after{
    content: "";
    background: url(../images/shirayuri/shirayuri-before.svg);
    display: block;
    width: calc(235 / var(--width) * 100vw);
    height: calc(235 / var(--width) * 100vw);
    position: absolute;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    bottom: -11%;
    right: 5%;
}

/* ===== FVひばり ===== */
#hibari-fv .facility-fv-w .nav-w .facility-name{
    border-bottom: dotted var(--hibari_color) 7px;
}
#hibari-fv .facility-fv-w .nav-w .side-nav a:after{
    content: "";
    display: block;
    background-image: url(../images/hibari/h-link-icon-01.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 1.5rem;
    height: 1.5rem;
    position: absolute;
    right: 0;
    top: calc(50% - .7rem);
}
#hibari-fv .facility-fv-w .facility-fv-image-w::after{
    content: "";
    background: url(../images/hibari/hibari-before.svg);
    display: block;
    width: calc(235 / var(--width) * 100vw);
    height: calc(235 / var(--width) * 100vw);
    position: absolute;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    bottom: -11%;
    right: 8%;
}

/* ===== お知らせ ===== */
/* ===== しらゆり・ひばり共通 ===== */
.info-w{
    padding: var(--padding-50);
    border-radius: calc(30 / var(--width) * 100vw);
}
.info-w summary{
    gap: calc(40 / var(--width) * 100vw);
    padding: calc(30 / var(--width) * 100vw) var(--padding-20);
    border-bottom: solid 1px var(--gray);
    color: var(--corporate_color);
    position: relative;
    cursor: pointer;
}
.info-w details[open] summary::after{
    transform: rotate(90deg);
}
.info-w summary::after{
    content: "";
    width: calc(20 / var(--width) * 100vw);
    height: calc(20 / var(--width) * 100vw);
    display: block;
    background: var(--corporate_color);
    position: absolute;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    right: var(--padding-10);
    top: calc(50% - (10 / var(--width) * 100vw));
    transition: .3s;
}
.info-w summary .cat-all{
    color: var(--gray);
    font-size: var(--font-size-mid);
}
.info-w summary .cat-shirayuri{
    color: var(--shirayuri_color);
    font-size: var(--font-size-mid);
}
.info-w summary .cat-hibari{
    color: var(--hibari_color);
    font-size: var(--font-size-mid);
}
.info-w summary .date{
    font-family: "Roboto", sans-serif;
    font-size: var(--font-size-mid);
}
.info-w summary .ttl{
    font-size: var(--font-size-mid);
    width: 70%;
}
.info-w .content{
    padding: var(--padding-30);
    border-bottom: 1px solid var(--gray);
}
.info-w .content a{
    text-decoration: underline;
}
.info-w summary .ttl,
.info-w summary .date{
    color: var(--corporate_color);
}

/* ===== サービス ===== */
/* ===== しらゆり・ひばり共通 ===== */
.service-w{
    gap: calc(30 / var(--width) * 100vw);
}
.service-w .service-table{
    width: 100%;
    border-collapse: collapse;
}
.service-w tr th{
    color: var(--corporate_color);
    text-align: left;
    font-size: var(--font-size-big);
    width: 20%;
}
.service-w tr td a{
    text-decoration: underline;
}
.service-w th,
.service-w td{
    padding: var(--padding-30) var(--padding-10);
}
.service-w tr:not(:last-child) th,
.service-w tr:not(:last-child) td{
    border-bottom: 1px solid var(--gray);
}

/* ===== 画像パララックス部分 ===== */
/* ===== しらゆり・ひばり共通 ===== */
.parallax-container{
    position: relative;
    overflow: hidden;
    height: calc(400 / var(--width) * 100vw);
    margin: var(--padding-50) 0;
}
.parallax-image{
    position: absolute;
    top: -50%;
    left: 0;
    width: 100%;
    height: auto;
    will-change: transform;
}

/* ===== よくあるご質問 ===== */
/* ===== しらゆり・ひばり共通 ===== */
.faq-w{
    padding-top: calc(150 / var(--width) * 100vw);
}
.faq-w h2:after{
    content: "";
    display: block;
    background: url(../images/common/faq-img.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: calc(170 / var(--width) * 100vw);
    height: calc(140 / var(--width) * 100vw);
    top: -100%;
    left: 40%;
    position: absolute;
}
.faq-w .faq-cont-w{
    padding: var(--padding-50);
    border-radius: calc(30 / var(--width) * 100vw);
    border: 5px solid #fff;
}
.faq-w .faq-cont-w .question,
.faq-w .faq-cont-w .answer{
    padding: var(--padding-30) var(--padding-50);
    justify-content: space-between;
}
.faq-w .faq-cont:not(:last-child) .question,
.faq-w .faq-cont .answer{
    border-bottom: 1px solid var(--gray);
}
.faq-w .faq-cont-w .answer{
    background: #fff;
}
.faq-w .faq-cont-w .question,
.faq-w .faq-cont-w .question .txt-w,
.faq-w .faq-cont-w .answer .txt-w{
    align-items: center;
}
.faq-w .faq-cont-w .question .txt-w,
.faq-w .faq-cont-w .answer .txt-w{
    gap: var(--padding-100);
}
.faq-w .faq-cont-w .question .txt-w p{
    /* font-size: var(--font-size-big); */
    font-size: calc(23 / var(--width) * 100vw);
}
.faq-w .faq-cont-w .question .sankaku{
    width: calc(20 / var(--width) * 100vw);
    height: calc(20 / var(--width) * 100vw);
    background: var(--corporate_color);
    display: inline-block;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    transition: .3s;
}
.faq-w .faq-cont-w summary .Q-icon{
    color: var(--shirayuri_color);
    font-size: calc(70 / var(--width) * 100vw);
    font-family: "Roboto", sans-serif;
    line-height: 100%;
}
.faq-w .faq-cont-w .A-icon{
    color: var(--accent);
    font-size: calc(70 / var(--width) * 100vw);
    font-family: "Roboto", sans-serif;
    line-height: 100%;
}
.faq-w details[open] summary .sankaku{
    transform: rotate(90deg);
}

/* ===== 利用者限定ページバナー ===== */
.user-banner-w{
    justify-content: center;
    border-radius: calc(30 / var(--width) * 100vw);
    margin-top: calc(150 / var(--width) * 100vw);
    align-items: center;
    gap: var(--padding-50);
}
.user-banner-w .user-left-cont{
    gap: var(--padding-50);
}
.user-banner-w .user-right-cont{
    width: calc(330 / var(--width) * 100vw);
}
.user-banner-w .user-left-cont h2{
    color: var(--corporate_color);
    padding-bottom: 1.5rem;
    border-bottom: 7px dotted var(--accent);
}
.user-banner-w .user-left-cont p{
    text-align: center;
}
.user-banner-w .user-left-cont a{
    background: var(--corporate_color);
    color: #fff;
    padding: 1rem 1.5rem;
    width: 60%;
    justify-content: space-between;
    border-radius: 100vh;
    margin: 0 auto;
}
.user-banner-w .user-left-cont a img:nth-of-type(1){
    width: calc(30 / var(--width) * 100vw);
}
.user-banner-w .user-left-cont a img:nth-of-type(2){
    width: calc(25 / var(--width) * 100vw);
}

/* ===== 基本理念・目的 ===== */
.philosophy-purpose-w h2{
    width: fit-content;
    margin: 0 auto var(--padding-10) auto;
}
.philosophy-purpose-w .philosophy,
.philosophy-purpose-w .purpose{
    justify-content: center;
    align-items: center;
    /* gap: var(--padding-50); */
}
.philosophy-purpose-w .philosophy .left-cont,
.philosophy-purpose-w .purpose .right-cont{
    background: url(../images/shirayuri/bg-image.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 70%;
    padding: 6rem 6rem;
}
.philosophy-purpose-w .philosophy .right-cont,
.philosophy-purpose-w .purpose .left-cont{
    width: calc(200 / var(--width) * 100vw);
}
.philosophy-purpose-w .philosophy .left-cont .cont-txt,
.philosophy-purpose-w .purpose .right-cont .cont-txt{
    width: 70%;
    margin: 0 auto;
    text-align: center;
}
.philosophy-purpose-w .buttom-illust{
    width: 80%;
    margin: 0 auto;
}

/* ===== 1日の流れ ===== */
/* ===== しらゆり・ひばり共通 ===== */
.s-flow-flex,
.h-flow-flex{
    justify-content: space-between;
}
.s-flow-flex .s-flow_am,
.s-flow-flex .s-flow_pm,
.h-flow-flex .h-flow_am{
    gap: var(--padding-30);
    width: 35%;
}
.s-flow-flex .s-flow_am .day-w .main-txt .time,
.s-flow-flex .s-flow_pm .day-w .main-txt .time,
.h-flow-flex .h-flow_am .day-w .main-txt .time,
.h-flow-flex .h-flow_pm .day-w .main-txt .time{
    color: #fff;
    position: relative;
    z-index: 2;
    text-align: center;
    line-height: 100%;
    border-radius: 100vh;
    padding: 1.9rem 1.2rem;
}
.s-flow-flex .s-flow_am .day-w:nth-child(2n) .main-txt .time,
.s-flow-flex .s-flow_pm .day-w:nth-child(2n) .main-txt .time,
.h-flow-flex .h-flow_am .day-w:nth-child(2n) .main-txt .time,
.h-flow-flex .h-flow_pm .day-w:nth-child(2n) .main-txt .time{
    background: var(--accent);
}
.s-flow-flex .s-flow_am .day-w:nth-child(2n+1) .main-txt .time,
.s-flow-flex .s-flow_pm .day-w:nth-child(2n+1) .main-txt .time,
.h-flow-flex .h-flow_am .day-w:nth-child(2n+1) .main-txt .time,
.h-flow-flex .h-flow_pm .day-w:nth-child(2n+1) .main-txt .time{
    background: var(--blue);
}
.s-flow-flex .day-w .activity,
.h-flow-flex .day-w .activity{
    background: #fff;
    line-height: 130%;
    padding: calc(25 / var(--width) * 100vw) calc(10 / var(--width) * 100vw) calc(25 / var(--width) * 100vw) calc(50 / var(--width) * 100vw);
    text-align: left;
    border-radius: calc(20 / var(--width) * 100vw);
    transform: translateX(-1.5rem);
    width: 100%;
}
.s-flow-flex .day-w .main-txt,
.h-flow-flex .day-w .main-txt{
    align-items: center;
}
.s-flow-flex .day-w p,
.h-flow-flex .day-w p{
    margin-left: 3rem;
    font-size: 15px;
    line-height: 150%;
}
.s-flow-flex .day-w,
.h-flow-flex .day-w{
    gap: var(--padding-10);
    position: relative;
}

/* ===== しらゆり ===== */
.s-flow-flex .s-flow_am .day-w::before,
.s-flow-flex .s-flow_pm .day-w:not(:last-child)::before{
    content: "";
    display: block;
    /* width: calc(40 / var(--width) * 100vw); */
    width: 1px;
    height: 120%;
    border-right: 5px dotted #fff;
    position: absolute;
    top: 2rem;
    left: 2rem;
}

/* ===== ひばり ===== */
.h-flow-flex .h-flow_am .am-ttl,
.h-flow-flex .pm-w .pm-ttl{
    background: url(../images/hibari/flow-fukidashi.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: fit-content;
    margin: 0 auto;
    padding: var(--padding-50);
    font-size: calc(30 / var(--width) * 100vw);
    position: relative;
}
.h-flow-flex .h-flow_am .am-ttl::after{
    content: "";
    background: url(../images/hibari/flow-am-icon.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    display: block;
    width: calc(65 / var(--width) * 100vw);
    height: calc(65 / var(--width) * 100vw);
    position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: -15%;
}
.h-flow-flex .pm-w .pm-ttl::after{
    content: "";
    background: url(../images/hibari/flow-pm-icon.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    display: block;
    width: calc(65 / var(--width) * 100vw);
    height: calc(65 / var(--width) * 100vw);
    position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: -15%;
}
.h-flow-flex .h-flow_pm .pm-sub-ttl{
    background: var(--corporate_color);
    color: #fff;
    width: fit-content;
    padding: var(--padding-20);
    border-radius: 100vh;
    margin: 0 auto;
    position: relative;
}
.h-flow-flex .h-flow_pm .pm-sub-ttl::after{
    content: "";
    display: block;
    position: absolute;
    background: var(--corporate_color);
    width: calc(18 / var(--width) * 100vw);
    height: calc(18 / var(--width) * 100vw);
    bottom: calc(-15 / var(--width) * 100vw);
    left: 0;
    right: 0;
    margin: 0 auto;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.h-flow-flex .pm-w{
    width: 35%;
    display: flex;
    flex-direction: column;
    gap: var(--padding-30);
}
.h-flow-flex .pm-w .h-flow_pm{
    gap: var(--padding-30);
}
.h-flow-flex .h-flow_am .day-w:not(:last-child):before,
.h-flow-flex .h-flow_pm .day-w:not(:last-child):before{
    content: "";
    display: block;
    width: 1px;
    height: 110%;
    border-right: 5px dotted #fff;
    position: absolute;
    top: 2rem;
    left: 2rem;
}

/* ===== 年間行事 ===== */
#event .bg_3{
    position: relative;
    margin-top: calc(90 / var(--width) * 100vw);
}
#event .bg_3::before{
    content: "";
    display: block;
    background: url(../images/shirayuri/event_moko.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 100%;
    height: calc(97 / var(--width) * 100vw);
    position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: calc(-90 / var(--width) * 100vw);
}
.event-cont-w{
    padding: var(--padding-30);
    gap: var(--padding-10);
    border-radius: calc(30 / var(--width) * 100vw);
    position: relative;
}
.event-cont-w::before{
    content: "";
    display: block;
    background: url(../images/shirayuri/event01.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: calc(250 / var(--width) * 100vw);
    height: calc(250 / var(--width) * 100vw);
    position: absolute;
    right: 15%;
    top: -60%
}
.event-cont-w::after{
    content: "";
    display: block;
    background: url(../images/shirayuri/event02.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: calc(190 / var(--width) * 100vw);
    height: calc(190 / var(--width) * 100vw);
    position: absolute;
    right: 0;
    top: -45%;
}
.event-cont-w .right-cont,
.event-cont-w .left-cont{
    width: 50%;
}
.event-cont-w .right-cont h3,
.event-cont-w .right-cont p,
.event-cont-w .left-cont h3,
.event-cont-w .left-cont p{
    padding: var(--padding-20);
}
.event-cont-w .right-cont h3,
.event-cont-w .left-cont h3{
    border-bottom: 1px solid var(--accent);
    width: 20%;
    text-align: center;
    font-size: var(--font-size-big);
    color: var(--corporate_color);
}
.event-cont-w .right-cont p,
.event-cont-w .left-cont p{
    border-bottom: 1px solid var(--gray);
    width: 80%;
}

/* ===== 施設評価票の公表 ===== */
.evaluation-w .evaluation-cont-w{
    gap: var(--padding-20);
}
.evaluation-w .evaluation-table-w{
    padding: var(--padding-50);
    border-radius: calc(30 / var(--width) * 100vw);
    display: flex;
    flex-direction: column;
    gap: var(--padding-10);
}
.evaluation-w .evaluation-table-w .pdf-w{
    align-items: center;
}
.evaluation-w .evaluation-table-w .pdf-w img{
    width: 2rem;
}
.evaluation-w .evaluation-table-w summary{
    background: #F5F5F5;
    border-radius: calc(30 / var(--width) * 100vw);
    padding: calc(40 / var(--width) * 100vw) var(--padding-30);
    color: var(--corporate_color);
    font-size: var(--font-size-big);
    justify-content: space-between;
    align-items: center;
}
.evaluation-w .evaluation-table-w summary .sankaku{
    width: calc(20 / var(--width) * 100vw);
    height: calc(20 / var(--width) * 100vw);
    background: var(--corporate_color);
    display: inline-block;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    transition: .3s;
}
.evaluation-w .evaluation-table-w details[open] summary .sankaku{
    transform: rotate(90deg);
}
.evaluation-w .evaluation-table-w .pdf-list{
    padding: var(--padding-10) var(--padding-30);
}
.evaluation-w .evaluation-table-w .pdf-w{
    padding: var(--padding-10);
    gap: var(--padding-50);
    border-bottom: 1px solid var(--gray);
}
.evaluation-w .evaluation-table-w .pdf-w a{
    text-decoration: underline;
}

/*=============

採用ページ

==============*/
.recruit-h2{
    font-size: calc(50 / var(--width) * 100vw);
    position: relative;
    padding-left: 2rem;
    line-height: 100%;
}
.recruit-h2::before{
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    background: var(--accent);
    border-radius: 100vh;
    position: absolute;
    top: calc(50% - .5rem);
    left: .25rem;
}
/* ===== fv ===== */
.recruit-fv-w{
    position: relative;
}
.recruit-fv-w .main-img{
    width: 80%;
    margin: 0 auto;
    position: relative;
}
.recruit-fv-w .main-img::after{
    content: "";
    display: block;
    background: url(../images/recruit/fv_illust.svg);
    width: calc(238 / var(--width) * 100vw);
    height: calc(249 / var(--width) * 100vw);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    bottom: 5%;
    left: 10%;
}
.recruit-fv-w .main-img img{
    animation: img-scale 5.5s ease-in-out infinite;
}
@keyframes img-scale{
    0%{
        transform: scale(1);
    }
    50%{
        transform: scale(1.02);
    }
    100%{
        transform: scale(1);
    }
}
.recruit-fv-w .tate{
    position: absolute;
    top: 5%;
    left: 82%;
    gap: 1.5rem;
}
.recruit-fv-w .tate .sp{
    display: none;
}
#recruit-fv .follow-illust .left-illust,
#recruit-fv .follow-illust .right-illust{
    width: 8%;
}
#recruit-fv .follow-illust .left-illust{
    bottom: 3%;
}
/* ===== 求める人物像 ===== */
.person-w{
    position: relative;
    padding: calc(100 / var(--width) * 100vw) calc(200 / var(--width) * 100vw);
    z-index: 1;
    gap: var(--padding-30);
}
.person-cont{
    position: relative;
}
.person-cont::before{
    content: "";
    display: block;
    background: url(../images/recruit/illust_user01.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    width: calc(140 / var(--width) * 100vw);
    height: calc(234 / var(--width) * 100vw);
    top: 20%;
    left: 10%;
    z-index: 2;
}
.person-cont::after{
    content: "";
    display: block;
    background: url(../images/recruit/illust_user02.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    width: calc(190 / var(--width) * 100vw);
    height: calc(232 / var(--width) * 100vw);
    bottom: 0;
    right: 9%;
    z-index: 2;
}
.person-w h2{
    margin: 0 auto;
}
.person-w::before{
    content: "";
    background: url(../images/recruit/user_bg.svg);
    width: 100%;
    /* height: calc(465 / var(--width) * 100vw); */
    height: 100%;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: -1;
}
.person-w p{
    text-align: center;
    width: 80%;
    margin: 0 auto;
}

/* ===== 福利厚生 ===== */
.benefits-w{
    gap: var(--padding-50);
}
.benefits-w .benefits-cont-w{
    gap: var(--padding-50);
}
.benefits-w .benefits-cont-w .in-content:nth-of-type(2n) .img-cont{
    order: 2;
}
.benefits-w .benefits-cont-w .in-content{
    border-radius: calc(30 / var(--width) * 100vw);
    padding: var(--padding-50);
    align-items: center;
    justify-content: space-between;
    counter-increment: content;
}
.benefits-w .benefits-cont-w .in-content img{
    border: var(--corporate_color) solid 5px;
    border-radius: calc(30 / var(--width) * 100vw);
}
.benefits-w .benefits-cont-w .in-content .img-cont{
    width: 55%;
    position: relative;
}
.benefits-w .benefits-cont-w .in-content .img-cont::after{
    content: counter(content);
    background: url(../images/recruit/number_bg.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: calc(50 / var(--width) * 100vw);
    color: #fff;
    font-size: calc(70 / var(--width) * 100vw);
    font-family: "Roboto", sans-serif;
    top: -10%;
    position: absolute;
}
.benefits-w .benefits-cont-w .in-content:nth-of-type(2n) .img-cont::after{
    right: -5%;
}
.benefits-w .benefits-cont-w .in-content:nth-of-type(2n+1) .img-cont::after{
    left: -5%;
}
.benefits-w .benefits-cont-w .in-content .txt-cont{
    width: 40%;
    gap: var(--padding-30);
}
.benefits-w .benefits-cont-w .in-content .txt-cont h3{
    font-size: calc(30 / var(--width) * 100vw);
    color: var(--corporate_color);
    padding-bottom: 1rem;
    border-bottom: 7px dotted var(--accent);
    text-align: center;
}
.benefits-w ul li{
    list-style: disc;
    margin-left: 1.5rem;
}

/* ===== 募集要項 ===== */
.requirements-w{
    gap: var(--padding-50);
}
.requirements-table-w{
    padding: var(--padding-50);
    gap: var(--padding-10);
    border-radius: calc(30 / var(--width) * 100vw);
}
.requirements-w summary{
    align-items: center;
    justify-content: space-between;
    padding: var(--padding-30) var(--padding-50);
    background: #F5F5F5;
    border-radius: calc(30 / var(--width) * 100vw);
}
.requirements-w summary .sankaku{
    display: block;
    background: var(--corporate_color);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    width: calc(20 / var(--width) * 100vw);
    height: calc(20 / var(--width) * 100vw);
    transition: .3s;
}
.requirements-w details[open] summary .sankaku{
    transform: rotate(90deg);
}
.requirements-w summary .txt-w{
    align-items: center;
    gap: var(--padding-50);
    color: var(--corporate_color);
    font-size: var(--font-size-mid);
}
.requirements-w summary .txt-w .category-hibari{
    color: var(--hibari_color);
}
.requirements-w summary .txt-w .category-shirayuri{
    color: var(--shirayuri_color);
}
.requirements-w table{
    border-collapse: collapse;
    width: 95%;
    margin: 0 auto;
}
.requirements-w table th{
    color: var(--corporate_color);
    font-size: var(--font-size-mid);
    width: 20%;
}
.requirements-w table th,
.requirements-w table td{
    text-align: left;
    border-bottom: 1px solid var(--gray);
    padding: var(--padding-30) var(--padding-10);
}
.requirements-w table td a{
    text-decoration: underline;
    color: var(--corporate_color);
}

/*=============

利用者専用ページ

==============*/
/* ===== fv ===== */
/* ===== 下層も共通 ===== */
.user-fv-w{
    width: 100%;
    justify-content: space-between;
    align-items: center;
}
.user-fv-w .user-fv-image-w{
    width: 60%;
    height: 40vw;
}
.user-fv-w .user-fv-image-w img{
    border-top-left-radius: calc(50 / var(--width) * 100vw);
    height: 100%;
    object-fit: cover;
}
.user-fv-w .page-ttl{
    font-size: calc(50 / var(--width) * 100vw);
    background: #fff;
    line-height: 100%;
    padding: var(--padding-20) var(--padding-30);
    margin-right: -100%;
    margin-left: 10%;
    position: relative;
    max-width: 90%;
}

/* ===== 一覧 ===== */
.post_content-w{
    gap: var(--padding-80);
}
.content-all-w{
    gap: 1rem;
    align-items: stretch;
}
.post_content-w .blog-cont{
    gap: var(--padding-30);
    padding: var(--padding-50) var(--padding-30);
    border-radius: calc(30 / var(--width) * 100vw);
}
.post_content-w .blog-cont .blog-link{
    background: #6FB908;
}
.post_content-w .blog-cont .gallery-link{
    background: #DDA70D;
}
.post_content-w .blog-cont .blog-link,
.post_content-w .blog-cont .gallery-link{
    align-items: center;
    width: fit-content;
    padding: var(--padding-10) var(--padding-20);
    gap: var(--padding-30);
    border-radius: 100vh;
    margin: 0 auto;
}
.post_content-w .blog-cont .blog-link img,
.post_content-w .blog-cont .gallery-link img{
    width: calc(40 / var(--width) * 100vw);
    height: calc(40 / var(--width) * 100vw);
}
.post_content-w .blog-cont .blog-link span,
.post_content-w .blog-cont .gallery-link span{
    color: #fff;
}
.post_content-w .blog-cont .blog-link .sankaku,
.post_content-w .blog-cont .gallery-link .sankaku{
    width: calc(15 / var(--width) * 100vw);
    height: calc(15 / var(--width) * 100vw);
    background: #fff;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.content-all-w .content{
    border-radius: calc(30 / var(--width) * 100vw);
    width: calc((100% - 2rem) / 3);
    overflow: hidden;
    background: #fff;
}
.content-all-w .content .txt-cont{
    padding: var(--padding-20);
}
.content-all-w .content .txt-cont .ttl{
    font-size: var(--font-size-mid);
}
.content-all-w .content .txt-cont .tag-name p{
    text-align: right;
    color: var(--gray);
}
.content-all-w .content .img-cont{
    height: calc(220 / var(--width) * 100vw);
    overflow: hidden;
}
.content-all-w .content .img-cont img{
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transition: .2s;
}
.content-all-w .content:hover img{
    transform: scale(1.07);
}
/*=============

ブログ・ギャラリー 一覧ページ

==============*/
.no-content{
    /* 記事がないときのテキスト */
    text-align: center;
    width: 100%;
}
.lower-blog{
    gap: var(--padding-80);
    width: 80%;
    margin: 0 auto;
}
.lower-blog .content-all-w .box-flex{
    flex-wrap: wrap;
    row-gap: var(--padding-30);
    gap: 1rem;
}
.lower-blog .blog-cont{
    padding: var(--padding-80) var(--padding-30);
    border-radius: calc(30 / var(--width) * 100vw);
}
.lower-blog .top-txt{
    text-align: center;
}
.lower-blog .pan{
    text-align: right;
}
.lower-blog .pan a{
    text-decoration: underline;
}
.lower-blog .content-all-w {
    gap: var(--padding-50);
}
.content-all-w .pagination{
    gap: 2rem;
    margin: 0 auto;
    align-items: center;
}
.content-all-w .pagination a{
    font-size: var(--font-size-big);
}
.content-all-w .pagination .current{
    background: var(--corporate_color);
    color: #fff;
    width: 2rem;
    height: 2rem;
    text-align: center;
    border-radius: 100vh;
    font-size: var(--font-size-big);
}

/*=============

ブログ・ギャラリー 詳細ページ

==============*/
.article-w{
    gap: var(--padding-80);
}
.article-w .pan{
    text-align: right;
}
.article-w .pan a{
    text-decoration: underline;
}
.article-w article{
    padding: var(--padding-80) var(--padding-50);
    border-radius: calc(30 / var(--width) * 100vw);
    gap: var(--padding-50);
}
.article-w article .txt-w .date{
    gap: var(--padding-30);
}
.article-w article .txt-w h2{
    padding-bottom: .5rem;
    border-bottom: dotted 7px var(--shirayuri_color);
    width: fit-content;
}
.article-w article .img-cont-w{
    gap: 1rem;
    flex-wrap: wrap;
}
.article-w article .img-cont-w .image-w{
    width: calc((100% - 2rem) / 3);
    position: relative;
}
.article-w article .img-cont-w .image-w .image{
    height: calc(230 / var(--width) * 100vw);
    cursor: pointer;
    position: relative;
}
.article-w article .img-cont-w .image-w .image::after{
    content: "";
    background: url(../images/user/zoom-icon.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: calc(40 / var(--width) * 100vw);
    height: calc(40 / var(--width) * 100vw);
    display: block;
    position: absolute;
    top: 4%;
    right: 4%;
    transition: .3s;
}
.article-w article .img-cont-w .image-w .image:hover::after{
    transform: scale(1.2);
}
.article-w article .img-cont-w .image-w .image img{
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
/* ===== 画像ポップアップ ===== */
.popover {
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.5);
    display: none;
    z-index: 1000;
    width: 100vw;
    height: 100vh;
    overflow-y: hidden;
}
.pop-img{
    margin: 0 auto;
    width: 90%;
    height: 80%;
    position: absolute;
    left: 0;
    right: 0;
    top: 10%;
}
.pop-img img{
    height: 100%;
    object-fit: contain;
}
.popover.show {
    display: block;
}
button.openPopover{
    background: none;
    border: none;
    position: absolute;
    top: 3%;
    right: 3%;
    width: calc(50 / var(--width) * 100vw);
    height: calc(50 / var(--width) * 100vw);
}
button.closePopover{
    width: calc(50 / var(--width) * 100vw);
    height: calc(50 / var(--width) * 100vw);
    background: none;
    border: none;
    position: absolute;
    top: 10%;
    right: 10%;
}
button.openPopover:hover,
button.closePopover:hover{
    cursor: pointer;
}
/* ポップアップ開いた時のみbodyにクラス付与してスクロール禁止にする */
body.no-scroll {
    overflow: hidden;
}

/* ===== content設定 ===== */
.article-w article .content-text strong{
    font-weight: 900;
}
.article-w article .content-text a{
    text-decoration: underline;
    color: var(--corporate_color);
}
.article-w article .content-text h1{
    font-size: 3rem;
    line-height: 180%;
}
.article-w article .content-text h2{
    font-size: 2rem;
    line-height: 180%;
}
.article-w article .content-text h3,
.article-w article .content-text h4,
.article-w article .content-text h5,
.article-w article .content-text h6{
    font-size: 1.5rem;
    line-height: 180%;
}
/*=============

サイトマップ

==============*/
.map-w{
    gap: var(--padding-50);
    border-radius: calc(30 / var(--width) * 100vw);
    padding: var(--padding-50);
    margin: var(--padding-100) auto;
}
.map-w .green-txt{
    color: var(--shirayuri_color);
}
.map-w .blown-txt{
    color: var(--hibari_color);
}
.map-w .sub,
.map-w .top ol{
    padding-left: 2rem;
}
.map-w .sub ol li,
.map-w .top li ol li{
    padding-left: 2rem;
    display: flex;
    align-items: center;
    gap: .5rem;
}
.map-w .sub ol li::before,
.map-w .top li ol li::before{
    content: "-";
    color: var(--gray);
}
/*=============

個人情報保護方針

==============*/
.privacy-w{
    gap: var(--padding-80);
}
.privacy-w .cont h2{
    margin-bottom: calc(30 / var(--width) * 100vw);
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: calc(40 / var(--width) * 100vw);
}
.privacy-w .cont h2::before{
    content: "";
    display: block;
    background: #fff;
    width: calc(20 / var(--width) * 100vw);
    height: calc(20 / var(--width) * 100vw);
    border-radius: 100vh;
}
.privacy-w .cont ol{
    padding-left: 1rem;
}
.privacy-w .cont ol li{
    counter-increment: number;
    display: flex;
    gap: .5rem;
}
.privacy-w .cont ol li::before{
    content: counter(number)".";
    color: var(--corporate_color);
    font-size: 1.5rem;
}

/*=============

404

==============*/
.page-404 h1{
    font-size: 2rem;
    color: var(--corporate_color);
}

/* ==========================

レスポンシブ

===========================-*/
/* ==========================

max-width: 1024px

===========================-*/
@media screen and (max-width: 1024px) and (min-width: 769px){
    :root{
        --width: 1024;

        --width-nomal: calc(800 / var(--width) * 100vw);
        --padding-100: calc(70 / var(--width) * 100vw);
        --padding-80: calc(50 / var(--width) * 100vw);
        --padding-50: calc(30 / var(--width) * 100vw);
        --padding-30: calc(20 / var(--width) * 100vw);
        --padding-20: calc(10 / var(--width) * 100vw);
        --padding-10: calc(5 / var(--width) * 100vw);

        --font-size-mid: clamp(15px, 2vw, 20px);
        --font-size-big: calc(25 / var(--width) * 100vw);
    }
    h2{
        font-size: calc(40 / var(--width) * 100vw);
    }
    /* ==========================
    footer
    ===========================-*/
    footer::before{
        top: calc(-75 / var(--width) * 100vw);
    }
    /* ==========================
    しらゆり・ひばり
    ===========================-*/
    /* ====== FV ===== */
    .facility-fv-w .nav-w h2 .main-name{
        line-height: 100%;
        font-size: calc(40 / var(--width) * 100vw);
    }
    /* ====== お知らせ ===== */
    .info-w summary .ttl,
    .info-w summary .date,
    .info-w summary .cat-shirayuri,
    .info-w summary .cat-all,
    .info-w summary .cat-hibari{
        font-size: clamp(15px, 2vw, 20px);
    }
    .info-w summary{
        gap: calc(20 / var(--width) * 100vw);;
    }
    .info-w summary .ttl{
        width: 65%;
    }
    /* ====== 利用者専用バナー ===== */
    .user-banner-w .user-left-cont a{
        width: 70%;
    }
    /* ====== 基本理念・目的 ===== */
    .philosophy-purpose-w .philosophy .left-cont,
    .philosophy-purpose-w .purpose .right-cont{
        width: 90%;
        padding: 4rem 6rem;
    }
    /* ====== 年間行事 ===== */
    #event .bg_3::before{
        top: calc(-80 / var(--width) * 100vw);
    }
    .event-cont-w::before{
        width: calc((250 / var(--width) * 100vw) / 1.5);
        height: calc((250 / var(--width) * 100vw) / 1.5);
    }
}
/* ==========================

max-width: 768px

===========================-*/
@media screen and (max-width: 768px){
    :root{
        --width: 768;

        --width-nomal: calc(600 / var(--width) * 100vw);
        --padding-100: calc(50 / var(--width) * 100vw);
        --padding-80: calc(40 / var(--width) * 100vw);
        --padding-50: calc(30 / var(--width) * 100vw);
        --padding-30: calc(20 / var(--width) * 100vw);
        --padding-20: calc(10 / var(--width) * 100vw);
        --padding-10: calc(5 / var(--width) * 100vw);

        --font-size-mid: calc(20 / var(--width) * 100vw);
        --font-size-big: calc(25 / var(--width) * 100vw);
    }
    .pc{
        display: none !important;
    }
    .sp{
        display: block;
    }
    /*===================
    FV(しらゆり・ひばり)
    ====================*/
    .facility-fv-w{
        flex-direction: column;
        gap: var(--padding-50);
    }
    .facility-fv-w .nav-w{
        order: 2;
        width: 100%;
    }
    .facility-fv-w .nav-w .side-nav{
        width: 75%;
        flex-wrap: wrap;
        flex-direction: row;
        /* justify-content: space-between; */
        gap: 1rem;
    }
    .facility-fv-w .facility-fv-image-w{
        width: 90%;
        margin: 0 0 0 auto;
    }
    .facility-fv-w .nav-w h2 .main-name{
        line-height: 100%;
        font-size: calc(40 / var(--width) * 100vw);
    }
    .facility-fv-w .nav-w .side-nav a{
        width: calc((100% / 3) - .7rem);
    }
    .facility-fv-w .nav-w .facility-name-InContent{
        flex-direction: row;
        align-items: center;
    }
    /*===================
    利用者ページバナー
    ====================*/
    .user-banner-w{
        margin-top: calc(50 / var(--width) * 100vw);
        flex-direction: column;
        padding: var(--padding-100) 0;
    }
    .user-banner-w .user-right-cont{
        display: none;
    }
    .user-banner-w .user-left-cont h2{
        text-align: center;
    }
    /*===================
    お知らせ
    ====================*/
    .info-w summary{
        flex-wrap: wrap;
        gap: var(--padding-10);
    }
    .info-w summary .ttl{
        width: 90%;
    }
    /*===================
    基本理念・目的
    ====================*/
    .philosophy-purpose-w .philosophy,
    .philosophy-purpose-w .purpose{
        flex-direction: column;
    }
    .philosophy-purpose-w .philosophy .left-cont,
    .philosophy-purpose-w .purpose .right-cont{
        width: 100%;
    }
    .philosophy-purpose-w .philosophy .right-cont{
        width: calc(150 / var(--width) * 100vw);
        margin: -20% 0 0 auto;
    }
    .philosophy-purpose-w .purpose .left-cont{
        width: calc(150 / var(--width) * 100vw);
        order: 2;
        margin: -20% auto 0 0;
    }
    .philosophy-purpose-w .purpose .right-cont{
        padding: 4rem 4rem;
    }
    /*===================
    サービス
    ====================*/
    .service-w tr th{
        font-size: var(--font-size-mid);
    }
    /*===================
    1日の流れ
    ====================*/
    .s-flow-flex .s-flow_am,
    .s-flow-flex .s-flow_pm,
    .h-flow-flex .h-flow_am,
    .h-flow-flex .pm-w{
        width: 45%;
        gap: var(--padding-50);
    }
    /*===================
    画像パララックス
    ====================*/
    .parallax-container{
        height: calc(250 / var(--width) * 100vw);
    }
    /*===================
    年間行事
    ====================*/
    .event-cont-w::before{
        width: calc(150 / var(--width) * 100vw);
        height: calc(150 / var(--width) * 100vw);
        top: -27%;
    }
    .event-cont-w::after{
        width: calc(100 / var(--width) * 100vw);
        height: calc(100 / var(--width) * 100vw);
        top: -18%;
        right: 3%;
    }
    #event .bg_3::before{
        top: calc(-73 / var(--width) * 100vw);
    }
    .event-cont-w{
        flex-direction: column;
        gap: 0;
    }
    .event-cont-w .right-cont,
    .event-cont-w .left-cont{
        width: 100%;
    }
    .event-cont-w .right-cont .in-cont,
    .event-cont-w .left-cont .in-cont{
        padding: .5rem 0;
    }
    /*===================
    よくある質問
    ====================*/
    .faq-w h2:after{
        width: calc(140 / var(--width) * 100vw);
        height: calc(110 / var(--width) * 100vw);
        top: -45%;
        left: 70%;
    }


    /*===================

    採用ページ

    ====================*/
    .recruit-fv-w .tate{
        gap: 1rem;
        top: unset;
        bottom: 0;
        left: 70%;
    }
    .recruit-fv-w .tate .sp{
        display: block;
    }
    .recruit-fv-w .tate span{
        font-size: calc(25 / var(--width) * 100vw);
    }
    .recruit-fv-w .main-img::after{
        width: calc((238 / var(--width) * 100vw) / 1.6);
        height: calc((249 / var(--width) * 100vw) / 1.6);
    }
    /* 追従イラスト */
    #recruit-fv .follow-illust .left-illust,
    #recruit-fv .follow-illust .right-illust{
        display: none;
    }
    /*===================
    求める人物像
    ====================*/
    .person-w{
        padding: calc(100 / var(--width) * 100vw) calc(50 / var(--width) * 100vw);
    }
    .person-w::before{
        background: url(../images/recruit/sp_user_bg.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% 100%;
    }
    .person-cont::before{
        width: calc((140 / var(--width) * 100vw) / 1.6);
        height: calc((234 / var(--width) * 100vw) / 1.6);
        top: 13%;
        left: 5%;
    }
    .person-cont::after{
        width: calc((190 / var(--width) * 100vw) / 1.6);
        height: calc((232 / var(--width) * 100vw) / 1.6);
        bottom: -4%;
        right: 5%;
    }
    /*===================
    福利厚生
    ====================*/
    .benefits-w .benefits-cont-w .in-content{
        flex-direction: column;
        gap: var(--padding-50);
    }
    .benefits-w .benefits-cont-w .in-content .img-cont,
    .benefits-w .benefits-cont-w .in-content .txt-cont{
        width: 100%;
    }
    .benefits-w .benefits-cont-w .in-content:nth-of-type(2n) .txt-cont{
        order: 1;
    }
    .benefits-w .benefits-cont-w .in-content:nth-of-type(2n) .txt-cont{
        order: 2;
    }
    .benefits-w .benefits-cont-w .in-content .img-cont::after{
        font-size: calc(40 / var(--width) * 100vw);
    }

    /*===================

    利用者専用ページ

    ====================*/
    .user-fv-w .page-ttl{
        font-size: calc(35 / var(--width) * 100vw);
    }
    .content-all-w{
        flex-direction: column;
        gap: var(--padding-80);
    }
    .content-all-w .content{
        width: 90%;
        margin: 0 auto;
    }
    .content-all-w .content .img-cont{
        height: calc(300 / var(--width) * 100vw);
    }
    .content-all-w .content .txt-cont{
        padding: var(--padding-30);
    }
    .post_content-w .blog-cont{
        gap: var(--padding-80)
    }
    .post_content-w .blog-cont{
        padding: var(--padding-100) var(--padding-30);
    }
    .user-fv-w .user-fv-image-w{
        height: 50vw;
    }
    /*===================
    記事一覧
    ====================*/
    .blog-page-w .content-all-w .content{
        width: calc((100% - 2rem) / 2);
    }
    .blog-page-w .content-all-w .content .img-cont{
        height: calc(200 / var(--width) * 100vw);
    }
    .blog-page-w .content-all-w .content .txt-cont{
        padding: var(--padding-20);
    }
    /*===================
    記事詳細
    ====================*/
    .article-w article .img-cont-w .image-w{
        width: 100%;
    }
    .article-w article .img-cont-w .image-w .image{
        height: calc(300 / var(--width) * 100vw);
    }

    /*===================

    個人情報保護方針

    ====================*/
    .privacy-w .cont h2{
        font-size: calc(35 / var(--width) * 100vw);
    }
}
/* ==========================

max-width: 480px

===========================-*/
@media screen and (max-width: 480px){
    :root{
        --width: 480;

        --width-nomal: calc(450 / var(--width) * 100vw);
        --padding-100: calc(50 / var(--width) * 100vw);
        --padding-80: calc(40 / var(--width) * 100vw);
        --padding-50: calc(30 / var(--width) * 100vw);
        --padding-30: calc(20 / var(--width) * 100vw);
        --padding-20: calc(10 / var(--width) * 100vw);
        --padding-10: calc(5 / var(--width) * 100vw);

        --font-size-mid: calc(20 / var(--width) * 100vw);
        --font-size-big: calc(25 / var(--width) * 100vw);
    }
    /*===================

    しらゆり・ひばり

    ====================*/
    /*===================
    FV
    ====================*/
    #shirayuri-fv .facility-fv-w .facility-fv-image-w::after,
    #hibari-fv .facility-fv-w .facility-fv-image-w::after{
        width: calc((235 / var(--width) * 100vw) / 1.7);
        height: calc((235 / var(--width) * 100vw) / 1.7);
    }
    .facility-fv-w .nav-w .side-nav{
        gap: 0;
    }
    .facility-fv-w .nav-w .side-nav a{
        width: 100%;
    }
    /*===================
    利用者ページバナー
    ====================*/
    .user-banner-w .user-left-cont a{
        width: 80%;
    }
    /*===================
    お知らせ
    ====================*/
    .info-w summary::after{
        width: calc(15 / var(--width) * 100vw);
    }
    /*===================
    基本理念・目的
    ====================*/
    .philosophy-purpose-w .philosophy .left-cont,
    .philosophy-purpose-w .purpose .right-cont{
        background: url(../images/shirayuri/sp_bg-image.svg);
        background-repeat: no-repeat;
        background-size: 100% 100%;
        padding: 13% 3%;
    }
    .philosophy-purpose-w .buttom-illust{
        width: 100%;
    }
    .philosophy-purpose-w h2{
        margin: 0 auto var(--padding-30) auto;
    }
    /*===================
    サービス
    ====================*/
    .service-w tr:not(:last-child) th{
        border-bottom: none;
    }
    .service-w tr th,
    .service-w tr td{
        display: block;
        width: 100%;
    }
    .service-w .service-table tr th br{
        display: none;
    }
    /*===================
    1日の流れ
    ====================*/
    .s-flow-flex, .h-flow-flex{
        flex-direction: column;
        gap: calc(80 / var(--width) * 100vw);
    }
    .s-flow-flex .s-flow_am,
    .s-flow-flex .s-flow_pm,
    .h-flow-flex .h-flow_am,
    .h-flow-flex .pm-w{
        width: 85%;
        margin: 0 auto;
    }
    .h-flow-flex .pm-w .weekday-w{
        margin-bottom: 5%;
    }
    .s-flow-flex .s-flow_am .day-w .main-txt .time::after,
    .s-flow-flex .s-flow_pm .day-w .main-txt .time::after,
    .h-flow-flex .h-flow_am .day-w .main-txt .time::after,
    .h-flow-flex .h-flow_pm .day-w .main-txt .time::after{
        top: calc((-20 / var(--width) * 100vw) + -0.1rem);
        left: calc((-20 / var(--width) * 100vw) + 0.1rem);
    }
    /* .s-flow-flex .s-flow_am .day-w::before,
    .s-flow-flex .s-flow_pm .day-w:not(:last-child)::before,
    .h-flow-flex .h-flow_am .day-w::before,
    .h-flow-flex .h-flow_pm .day-w:not(:last-child)::before{
        left: -1.2rem !important;
    } */
    .h-flow-flex .h-flow_am .am-ttl::after,
    .h-flow-flex .pm-w .pm-ttl::after{
        top: -25%;
    }
    /*===================
    年間行事
    ====================*/
    #event .bg_3::before{
        top: calc(-60 / var(--width) * 100vw);
    }
    .event-cont-w::before{
        width: calc((150 / var(--width) * 100vw) / 1.3);
        height: calc((150 / var(--width) * 100vw) / 1.3);
        top: -20%;
    }
    .event-cont-w::after{
        width: calc((100 / var(--width) * 100vw) / 1.3);
        height: calc((100 / var(--width) * 100vw) / 1.3);
        top: -13%;
        right: 5%;
    }
    /*===================
    よくあるご質問
    ====================*/
    .faq-w{
        padding-top: var(--padding-100);
    }
    .faq-w .faq-cont-w summary .Q-icon,
    .faq-w .faq-cont-w .A-icon{
        font-size: calc((70 / var(--width) * 100vw) / 1.5);
    }
    .faq-w .faq-cont-w .question .txt-w,
    .faq-w .faq-cont-w .answer .txt-w{
        gap: var(--padding-30);
    }
    .faq-w .faq-cont-w .question .txt-w{
        width: 90%;
    }
    .faq-w .faq-cont-w .answer .txt-w{
        width: 100%;
    }
    .faq-w .faq-cont-w .question .txt-w p{
        font-size: calc(18 / var(--width) * 100vw);
    }
    .faq-w .faq-cont-w .question,
    .faq-w .faq-cont-w .answer{
        padding: var(--padding-30) 5px;
    }
    .faq-w h2:after{
        width: calc((140 / var(--width) * 100vw) / 1.3);
        height: calc((110 / var(--width) * 100vw) / 1.3);
    }
    .faq-w .faq-cont-w p{
        font-size: 14px;
    }
    .faq-w .faq-cont-w .question .sankaku{
        width: calc(15 / var(--width) * 100vw);
    }
    /*===================
    施設評価表の公表
    ====================*/
    .evaluation-w .evaluation-table-w summary{
        font-size: var(--font-size-mid);
        padding: calc(25 / var(--width) * 100vw) var(--padding-30);
    }
    .evaluation-w .evaluation-table-w .pdf-w a{
        font-size: 14px;
    }
    .evaluation-w .evaluation-table-w summary .sankaku{
        width: calc(15 / var(--width) * 100vw);
    }
    .evaluation-w .evaluation-table-w .pdf-w{
        padding: var(--padding-30) var(--padding-10);
    }
    /*===================

    利用者限定ページ

    ====================*/
    .post_content-w .blog-cont .blog-link,
    .post_content-w .blog-cont .gallery-link{
        padding: var(--padding-20) var(--padding-30);
    }
    /*===================
    FV
    ====================*/
    .user-fv-w{
        align-items: end;
    }
    .user-fv-w .user-fv-image-w{
        width: 90%;
        height: 60vw;
    }
    .user-fv-w .page-ttl{
        margin: 0 -100% 5% 0;
        font-size: calc(30 / var(--width) * 100vw);
    }
    /*===================

    利用者限定一覧

    ====================*/
    .blog-page-w .content-all-w .content{
        width: 90%;
    }
    /*===================

    利用者限定詳細

    ====================*/
    .article-w h2{
        font-size: calc(30 / var(--width) * 100vw);
    }
    .article-w .pan{
        overflow-x: scroll;
        word-break: keep-all;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .article-w .pan a,
    .article-w .pan span,
    .article-w article .content-text blockquote p{
        font-size: 13px;
    }
    /*===================

    採用情報

    ====================*/
    /*===================
    MV
    ====================*/
    .recruit-fv-w .main-img{
        margin: 5% auto 0;
        width: 95%;
    }
    .recruit-fv-w .tate{
        left: unset;
        bottom: -6%;
        right: 5%;
    }
    .recruit-fv-w .main-img::after{
        width: calc((238 / var(--width) * 100vw) / 1.8);
        height: calc((249 / var(--width) * 100vw) / 1.8);
        bottom: 0;
        left: 5%;
    }
    .recruit-h2{
        font-size: calc(35 / var(--width) * 100vw);
    }
    .recruit-h2::before{
        width: .7rem;
        height: .7rem;
        top: calc(50% - .3rem);
        left: .8rem;
    }
    /*===================
    求める人物像
    ====================*/
    #person .cont_nomal{
        max-width: none;
    }
    .person-w::before{
        background-size: 130%;
    }
    .person-cont::before{
        top: 7%;
        left: 2%;
    }
    /*===================
    福利厚生
    ====================*/
    .benefits-w .benefits-cont-w .in-content .img-cont::after{
        font-size: calc(30 / var(--width) * 100vw);
    }
    .benefits-w .benefits-cont-w .in-content .img-cont::after{
        padding: calc(40 / var(--width) * 100vw);
    }
    /*===================
    募集要項
    ====================*/
    .requirements-w table th,
    .requirements-w table td{
        display: block;
        width: 100%;
    }
    .requirements-w table th{
        border: none;
    }
    .requirements-w summary .txt-w{
        flex-direction: column;
        gap: 0;
    }
    .requirements-w summary .txt-w .category-hibari,
    .requirements-w summary .txt-w .category-shirayuri{
        margin: 0 auto 0 0;
    }
    .requirements-w summary .sankaku{
        width: calc(15 / var(--width) * 100vw);
    }
    /*===================

    個人情報保護方針

    ====================*/
    .privacy-w .cont h2{
        font-size: calc(25 / var(--width) * 100vw);
        gap: .5rem;
    }
    .privacy-w .cont h2::before{
        width: calc(15 / var(--width) * 100vw);
        height: calc(15 / var(--width) * 100vw);
    }
    .privacy-w p{
        font-size: 14px;
    }
    .privacy-w .cont ol li::before{
        font-size: 1.2rem;
    }
}