@charset "UTF-8";
/* =================================
common
==================================== */
html {
    font-size: 62.5%;
}

body {
    font-family: 
        "Noto Sans JP", 
        "Zen Maru Gothic",
        'Montserrat';
    font-style: normal;
    font-weight: 400;
    color: black;
    background-image: url(../images/backgroundPc-top.jpg);
    background-size: cover;
    background-attachment: fixed;
    background-position: top;
    line-height: 1.5;
}

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

.btn {
    display: block;
    color: #FFF;
    text-align: center;
    font-size: 1.5rem;
    line-height: 1;
    border-radius: 30px;
    background: #FF6982;
    padding: 18px 32px;
    position: relative;
    transition: 0.4s;
    margin: 0 auto;
    cursor: pointer;
    width: 250px;
}

.btn::after {
    display: block;
    content: '';
    width: 13px;
    height: 13px;
    background-image: url(../images/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    right: 10%;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.4s;
}

.btn:hover {
    opacity: 0.5;
}

/* =================================
header
==================================== */
.header,.nav__header {
    padding: 12px 4.5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #FFF;
}

.header__topic a,.nav__topic a {
    display: flex;
    align-items: center;
}

.header__topic img,.nav__topic img {
    width: 41px;
    height: 33px;
    object-fit: contain;
    margin-right: 6px;
}

.header__topic span,.nav__topic span {
    color: #603813;
    font-family: "Zen Maru Gothic";
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 0.8;
}

.header__btn,.nav__btn {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

/* nav　基本設定 */
.nav {
    background: rgba(255, 255, 255, 0.90);
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.4s;
}

.nav__list {
    margin: 70px 0 0 40px;
    align-items: center;
}

.nav__item {
    font-family: "Zen Maru Gothic";
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 45px;
}

.nav__item:first-of-type {
    margin-top: 0;
}

.btn--header {
    display: none;
}

.nav.active {
    transform: translateX(0);
}

/* header pc */
@media screen and (min-width:1300px) {
    .header {
        height: 72px;
        margin: 0 auto;
        padding: 18px 3.5% 10px;
    }

    .header__topic img {
        width: 60px;
        height: 47px;
        object-fit: contain;
    }

    .header__topic span {
        color: #603813;
        font-family: "Zen Maru Gothic";
        font-size: 2rem;
        font-weight: 500;
        line-height: 1.2;
    }

    .nav {
        background: transparent;
        width: auto;
        height: auto;
        padding: 0;
        position: static;
        transform: translate(0);
    }

    .nav__list {
        display: flex;
        gap: 30px;
        margin: 0;
    }

    .nav__item {
        margin-top: 0;
        font-size: 1.6rem;
        line-height: 1;
    }

    .nav__item:nth-of-type(6) {
        display: none;
    }

    .btn--header {
        display: block;
        font-size: 1.4rem;
        font-weight: 500;
        width: 190px;
        margin: 0 0 0 5px;
    }

    .nav__header {
        display: none;
    }

    .header__btn {
        display: none;
    }
}

/* =================================
main header
==================================== */
.section__topic--recruit {
    position: relative;
    color: #FFF7f4;
    text-align: center;
    font-family: Montserrat;
    font-size: 5.6rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 42px;
}

.section__topic--recruit span {
    position: absolute;
    display: inline-block;
    color: #FF8F69;
    font-family: "Zen Maru Gothic";
    font-size: 2rem;
    font-weight: 700;
    line-height: 1; 
    top: 28px;
    left: 50%;
    transform: translateX(-50%);
}

.mainVisual__sp {
    margin-top: 22px;

}

.mainVisual__pc {
    display: none;
}

/* main header pc */
@media screen and (min-width:769px) {
    .section__topic--recruit {
        font-size: 14rem;
        margin-top: 118px;
    }

    .section__topic--recruit span {
        font-size: 5rem;
        top: 69px;
    }

    .mainVisual__sp {
        display: none;
    }

    .mainVisual__pc {
        display: block;
        margin-top: 65px;
    }
}

/* =================================
recruitAbout
==================================== */
.section__recruitAbout {
    padding: 64px 3.2% 72px;
}

.recruitAbout__title {
    font-family: "Zen Maru Gothic";
    font-size: 3.4rem;
    font-weight: 500;
    letter-spacing: 4.8px;
}

.recruitAbout__txt {
    padding: 0 2%;
    font-size: 1.4rem;
    line-height: 2.4; 
    margin-top: 38px;
}

.recruitAbout__imgSp {
    margin-top: 16px;
}

.recruitAbout__img {
    display: none;
}

/* recruitAbout pc */
@media screen and (min-width:1113px) {
    .section__recruitAbout {
        padding: 190px 8% 130px;
        display: flex;
        justify-content: center;
        align-items: start;
        gap: 206px;
    }

    .recruitAbout__title {
        font-size: 4.8rem;
        letter-spacing: 9.6px;
    }

    .recruitAbout__txt {
        padding: 0;
        font-size: 1.6rem;
        line-height: 2.4;
        margin-top: 46px;
    }

    .recruitAbout__imgSp {
        display: none;
    }

    .recruitAbout__img {
        position: relative;
        display: block;
        width: 40%;
        object-fit: contain;
    }

    .recruitAbout__img::after {
        position: absolute;
        content: '';
        background-image: url(../images/recruitVisual-pc.jpg);
        width: 271px;
        height: 251px;
        background-size: contain;
        top: 90%;
        right: 168px;
    }
}

@media screen and (min-width:769px) and (max-width:1112px){
    .recruitAbout__title {
        font-family: "Zen Maru Gothic";
        font-size: 4.4rem;
        font-weight: 500;
        letter-spacing: 6.8px;
    }

    .recruitAbout__txt {
        padding: 0 2%;
        font-size: 1.6rem;
        line-height: 2; 
        margin-top: 38px;
    }

    .recruitAbout__txt .br {
        display: none;
    }
}

/* =================================
staff
==================================== */
.section__staff {
    padding: 56px 2%;
    background-color: #FFF7f4;
}

.section__topic--staff {
    position: relative;
    color: #FFF;
    text-align: center;
    font-family: Montserrat;
    font-size: 5.6rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 22px;
}

.section__topic--staff span {
    position: absolute;
    display: inline-block;
    color: #FF8F69;
    font-family: "Zen Maru Gothic";
    font-size: 2rem;
    font-weight: 700;
    line-height: 1; 
    top: 28px;
    left: 50%;
    transform: translateX(-50%);
}

.staff__content {
    margin-top: 72px;
}

.staff__item {
    position: relative;
    padding: 30px 2% 34px;
    background-color: #FFF;
}

.staff__item--therapist {
    margin-top: 60px;
}

.staff__item::after {
    position: absolute;
    content: 'Nurse';
    color: #FF8F69;
    font-family: Montserrat;
    font-size: 3.6rem;
    font-weight: 500;
    line-height: 1;
    top: -3%;
}

.staff__item--therapist::after {
    content: 'Therapist';
}

.staff__title {
    font-family: "Zen Maru Gothic";
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 35px;
}

.staff__txt {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 20px;
}

.staff__name {
    color: #5F5E5E;
    font-size: 1.4rem;
    margin-top: 10px;
}

/* staff pc */
@media screen and (min-width:769px) {
    .section__staff {
        position: relative;
        padding: 130px 9% 160px;
    }

    .section__topic--staff {
        font-size: 14rem;
    }

    .section__topic--staff span {
        font-size: 5rem;
        top: 69px;
    }

    .staff__content {
        margin-top: 120px;
    }

    .staff__item {
        padding: 55px 46% 55px 7.7%;
    }

    .staff__item:last-of-type {
        padding: 55px 7.7% 55px 46%;
    }

    .staff__item--therapist {
        margin-top: 120px;
    }

    .staff__item img {
        position: absolute;
        top: -40px;
        right: -40px;
        width: 45%;
        height: 334px;
        object-fit: contain;
    }

    .img__therapist {
        top: -40px;
        left: -40px;
    }

    .staff__item::after {
        font-size: 6rem;
        top: -8%;
    }

    .staff__title {
        font-size: 3rem;
    }

    .staff__txt {
        font-size: 1.6rem;
        margin-top: 28px;
    }

    .staff__name {
        font-size: 1.6rem;
        margin-top: 15px;
    }
}

/* =================================
work
==================================== */
.section__work {
    padding: 60px 3.2%;
}

.section__topic--work {
    position: relative;
    color: #fff7f4;
    text-align: center;
    font-family: Montserrat;
    font-size: 5.6rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 22px;
}

.section__topic--work span {
    position: absolute;
    display: inline-block;
    color: #FF8F69;
    font-family: "Zen Maru Gothic";
    font-size: 2rem;
    font-weight: 700;
    line-height: 1; 
    top: 28px;
    left: 50%;
    transform: translateX(-50%);
}

.work {
    margin-top: 75px;
}

.work__item {
    margin: 24px 3%;
}

.work__item img {
    display: block;
    margin: 0 auto;
}

.work__name {
    text-align: center;
    font-family: "Zen Maru Gothic";
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.3;
    margin-top: 30px;
}

.work__txt {
    color: #535353;
    font-size: 1.5rem;
    text-align: center;
    margin-top: 20px;
}

.work__border--pc {
    display: none;
}

/* work pc */
@media screen and (min-width:1255px) {
    .section__work {
        padding: 130px 10.4% 110px;
    } 

    .section__topic--work {
        font-size: 14rem;
    }

    .section__topic--work span {
        font-size: 5rem;
        top: 69px;
    }

    .work {
        display: flex;
        gap: 28px;
        justify-content: center;
        align-items: center;
    }

    .work__item {
        padding: 0;
        margin: 0;
        width: 316px;
    }

    .work__item:first-of-type {
        width: 334px;
    }

    .work__border--pc {
        display: block;
        height: 100%;
    }

    .work__border--pc img {
        height: 500px;
    }

    .work__border--sp {
        display: none;
    }

    .work__txt {
        font-size: 1.6rem;
    }
}

@media screen and (min-width:769px) and (max-width:1256px) {
.section__topic--work {
        font-size: 9.6rem;
    }

    .section__topic--work span {
        font-size: 3rem;
        top: 50px;
    }

    .work__txt {
        font-size: 1.6rem;
    }
}

@media screen and (min-width:947px) and (max-width:1256px) {
    .section__work {
        padding: 130px 10.4% 110px;
    } 

    .work {
        display: flex;
        gap: 60px 28px;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
    }

    .work__item {
        padding: 0;
        margin: 0;
        width: 316px;
    }

    .work__item:first-of-type {
        width: 334px;
    }

    .work__border--pc {
        display: block;
        height: 100%;
    }

    .work__border--pc img {
        height: 500px;
    }

    .work__border--sp {
        display: none;
    }

    .work__item--wrap {
        position: relative;
    }

    .work__item--wrap::after {
        display: block;
        position: absolute;
        content: '';
        background-image: url(../images/pinkLine-vertical.png);
        background-size: cover;
        width: 1.81px;
        height: 500px;
        left: -32px;
        top: -92px;
    }

    .work__txt {
        font-size: 1.6rem;
    }
}

/* =================================
treatment
==================================== */
.section__treatment {
    padding: 60px 0;
    background-color: #FFF7f4;
}

.section__topic--treatment {
    position: relative;
    color: #fff;
    text-align: center;
    font-family: Montserrat;
    font-size: 5.6rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 22px;
}

.section__topic--treatment span {
    position: absolute;
    display: inline-block;
    color: #FF8F69;
    font-family: "Zen Maru Gothic";
    font-size: 2rem;
    font-weight: 700;
    line-height: 1; 
    top: 28px;
    left: 50%;
    transform: translateX(-50%);
}

.treatment {
    padding: 0 5%;
    margin-top: 80px;
}

.treatment-sp {
    display: block;
    margin: 0 auto;
}

.treatment-pc {
    display: none;
}

/* treatment pc */
@media screen and (min-width:894px) {
    .section__treatment {
        padding: 130px 0 160px;
    } 

    .section__topic--treatment {
        font-size: 14rem;
    }

    .section__topic--treatment span {
        font-size: 5rem;
        top: 69px;
    }

    .treatment {
        margin-top: 120px;
    }

    .treatment-pc {
        display: block;
        margin: 0 auto;
    }

    .treatment-sp {
        display: none;
    }
}

@media screen and (max-width:893px) and (min-width:769px) {
    .section__topic--treatment {
        font-size: 9.6rem;
    }

    .section__topic--treatment span {
        font-size: 3rem;
        top: 50px;
    }
}

/* =================================
benefit
==================================== */
.section__benefit {
    padding: 60px 3.2%;
}

.section__topic--benefit {
    position: relative;
    color: #fff7f4;
    text-align: center;
    font-family: Montserrat;
    font-size: 5.6rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 22px;
}

.section__topic--benefit span {
    position: absolute;
    display: inline-block;
    color: #FF8F69;
    font-family: "Zen Maru Gothic";
    font-size: 2rem;
    font-weight: 700;
    line-height: 1; 
    top: 28px;
    left: 50%;
    transform: translateX(-50%);
}

.benefit {
    margin-top: 58px;
}

.benefit__item {
    background-color: #FFF7f4;
    padding: 36px 8.5% 46px;
    margin-top: 20px;
}

.benefit__item img {
    display: block;
    margin: 0 auto;
}

.benefit__title {
    text-align: center;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.2;
    margin-top: 50px;
}

.benefit__txt {
    color: #585858;
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 25px;
}

/* benefit pc */
@media screen and (min-width:769px) {
    .section__benefit {
        padding: 130px 9% 160px;
    }

    .section__topic--benefit {
        font-size: 14rem;
    }

    .section__topic--benefit span {
        font-size: 5rem;
        top: 69px;
    }

    .benefit {
        display: flex;
        justify-content: center;
        gap: 45px 45px;
        flex-wrap: wrap;
        max-width: 1280px;
        margin: 70px auto 0;
    }

    .benefit__item {
        width: 354px;
        padding: 46px 2%;
        margin-top: 0;
    }

    .benefit__txt {
        color: #585858;
        font-size: 1.6rem;
    }
}

/* =================================
contact
==================================== */
.section--contact {
    padding: 54px 4.2% 56px 4.2%;
    background: #E97953;
} 

.section__topic--contact {
    color: #FFF;
    font-family: "Zen Maru Gothic";
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1;
}

.contact__txt {
    color: #FFF;
    font-size: 1.2rem;
    margin-top: 10px;
}

.contact__btn {
    margin-top: 20px;
}

.tel__content a,.mail__content a {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 25px;
    padding: 13px 0 13px 5.2%;
    border: 1px, solid, white;
    border-radius: 100px;
    max-width: 515px;
}

.mail__content a {
    padding: 33px 0 33px 5.2%;
}

.mail__content {
    margin-top: 15px;
}

.tel__content a::after,.mail__content a::after {
    position: absolute;
    content: '';
    background-image: url(../images/arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 13px;
    height: 13px;
    top: 50%;
    transform: translateY(-50%);
    right: 28px;
}

.tel__content img,.mail__content img {
    width: 36px;
    height: 36px;
    object-fit: contain;
}

.telNumber {
    color: #FFF;
    font-family: Montserrat;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.2;
}

.telTime {
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 1.4rem;
}

.mailTxt {
    color: #FFF;
    font-family: "Zen Maru Gothic";
    font-size: 1.8rem;
    font-weight: 700;
}

/* contact pc */
@media screen and (min-width:1171px) {
    .section--contact {
        padding: 122px 14% 122px 8%;
        display: flex;
        justify-content: space-between;
        margin: 35px 0.5%;
        border-radius: 100px;
    }

    .section__topic--contact {
        font-size: 3.4rem;
        font-weight: 700;
        line-height: 1.2; 
    }

    .contact__txt {
        font-size: 1.6rem;
        line-height: 1.8;
        margin-top: 28px;
    }

    .contact__btn {
        width: 58.5%;
        margin: 0;
    }

    .tel__content a,.mail__content a {
        display: flex;
        align-items: center;
        gap: 38px;
        padding: 40px 0 40px 6%;
        max-width: none;
    }

    .tel__content a::after,.mail__content a::after {
        width: 20px;
        height: 20px;
        right: 45px;
    }

    .mail__content a {
        padding: 56px 0 56px 5.2%;
    }

    .mail__content {
        padding: 0;
        margin-top: 40px;
    }

    .tel__content::after,.mail__content::after {
        width: 21px;
        height: 18px;
        right: 10%;
    }

    .tel__content img,.mail__content img {
        width: 73px;
        height: 73px;
    }

    .telNumber {
        font-size: 4rem;
        font-weight: 600;
    }

    .telTime {
        font-size: 1.6rem;
        line-height: 1.8;
    }

    .mailTxt {
        font-size: 3rem;
        line-height: 1.2;
    }
}

@media screen and (min-width:900px) and (max-width:1170px) {
    .tel__content a,.mail__content a {
        gap: 20px;
    }

    .telNumber {
        font-size: 3rem;
        font-weight: 600;
    }

    .telTime {
        font-size: 1.4rem;
        line-height: 1.5;
    }

    .mailTxt {
        font-size: 2.2rem;
        line-height: 1.2;
    }

    .tel__content a::after,.mail__content a::after {
        width: 14px;
        height: 14px;
        right: 34px;
    }
}

/* =================================
footer
==================================== */
.footer__pc {
    display: none;
}

.footer__sp {
    padding: 30px 3.2% 12px;
    background-color: #FFF;
}

.footer__topic a {
    display: flex;
    align-items: center;
}

.footer__topic img {
    width: 60px;
    height: 59px;
    object-fit: contain;
    margin-right: 10px;
}

.footer__topic span {
    color: #603813;
    font-family: "Zen Maru Gothic";
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1;
}

.footerNav__list {
    margin: 52px 0 0 5%;
}

.footerNav__item {
    font-family: "Zen Maru Gothic";
    font-size: 1.6rem;
    font-weight: 500;
    margin-top: 12px;
}

.sns {
    display: flex;
    justify-content: end;
    text-align: center;
    gap: 15px;
    margin-top: 28px;
}

.sns__item {
    width: 30px;
    height: 30px;
} 

.copy {
    font-size: 0.8rem;
    margin-top: 40px;
}

/* footer pc */
@media screen and (min-width:959px) { 
    .footer__sp {
        display: none;
    }

    .footer__pc {
        display: block;
        position: relative;
        padding: 30px 3.4% 36px 3.4%;
        background-color: #FFF;
    }

    .footer__topic img {
        width: 96px;
        margin-right: 1.5%;
    }

    .footer__topic span {
        font-size: 4.5rem;
    }

    .footer__topic a {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .footer__content {
        padding: 53px 5% 0 5%;
    }

    .detail__item {
        display: flex;
        margin-top: 10px;
    }

    .detail__category {
        font-size: 1.6rem;
        width: 64px;
        margin-right: 50px;
    }

    .detail__txt {
        font-size: 1.6rem;
    }

    .detail__txt a {
        text-decoration: underline;
    }

    .sns {
        gap: 20px;
        margin-top: 28px;
    }

    .sns__item {
        width: 36px;
        height: 36px;
    } 

    .footer__border {
        margin-top: 20px;
    }
    
    .footerNav__list {
        display: flex;
        gap: 25px;
        margin: 0;
    }

    .footerNav__item {
        font-size: 1.4rem;
    }

    .footerNav {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 20px;
    }

    .copy {
        font-size: 1.2rem;
        margin-top: 0;
        }

    .topBtn {
        color: #FFF;
        font-size: 2rem;
        font-family: 'Montserrat';
        line-height: 1;
        padding: 28px 20px;
        background-color: #FF6982;
        border-radius: 50%;
        position: absolute;
        top: 2%;
        right: 2%;
        box-shadow: 2px 2px 4px 2px rgba(29, 101, 101, 0.2);
    }
}