@charset "UTF-8";

/* ===========================
main
============================*/
/* sectionFloweres */
.topic {
    width: 62.8%;
    text-transform: uppercase;
    text-align: center;
    font-family: Marcellus;
    font-size: 2.2rem;
    letter-spacing: 4.4px;
    margin: 35px auto 0;
}

.spImg__main {
    width: 82.6%;
    margin-top: 19px;
    border-radius: 0px 1px 1px 0px;
}

/* 画像ZoomInアニメ */
.mainVisual__outer {
    overflow: hidden;
}

.mainVisual__outer img {
    /* img要素に以下のアニメーションプロパティが適用されます: */
    animation: zoom-in 4s linear 0s 1 normal both;
}

.section--floweres h3 {
    text-align: right;
    font-family: "Noto Serif JP";
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.8; /* 36px */
    letter-spacing: 4px;
    margin-top: 40px;
    margin-right: 9.3%;
}

.section--floweres p {
    text-align: right;
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    letter-spacing: 1.02px;
    margin-top: 30px;
    width: 68.5%;
    margin: 30px 9.3% 0 auto;
}

/* sectionFloweres pc*/
@media screen and (min-width:1025px) {
    .topic {
        width: 63.4%;
        font-size: 3rem;
        letter-spacing: 21px;
        margin: 110px auto 0;
    }

    .mainVisual__outer {
        width: 59.4%;
    }
    
    .pcImg__main {
        width: 100%;
        margin-top: 160px;
        border-radius: 0px 1px 1px 0px;
    }

    .main__outer {
        display: flex;
        flex-direction: row;
    }

    .main__caption {
        display: flex;
        flex-direction: column;
        width: 39.6%;
        justify-content: flex-end;
    }
    
    .section--floweres h3 {
        margin-top: 0;
        margin-right: 9.1%;
    }
    
    .section--floweres p {
        margin: 70px 9.3% 0 auto;
        padding-bottom: 18%;
        width: 240px;
    }
}
/* pc 1025px */

/* sectionFloweres tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .topic {
            margin: 65px auto 0;
        }

        .mainVisual__outer {
            width: 68%;
        }

        .main__outer {
            display: flex;
            flex-direction: row;
        }
        
        .spImg__main {
            display: block;
            width: 100%;
            margin-top: 100px;
        }

        .main__caption {
            display: flex;
            flex-direction: column;
            width: 41.6%;
            justify-content: flex-end;
        }
        
        .section--floweres h3 {
            margin-top: 236px;
            margin-right: 13.7%;
        }
        
        .section--floweres p {
            width: 72%;
            margin: 22px 13.7% 0 auto;
        }
}
/* tb 768px-1024px */

/* sectionEssencedesk */
.section--essencedesk {
    width: 91.4%;
    margin: 120px auto 0;
 }

.contents__title {
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.8; /* 30.6px */
    letter-spacing: 3.4px;
}

.contents__txt {
    font-size: 1.6rem;
    letter-spacing: 0.96px;
}

.contents__txt--essencedesk {
    margin-top: 30px;
}

.main small {
    color: var(--primary-blackLow);
    font-size: 1.5rem;
    letter-spacing: 0.9px;
}

.essenceTxt {
    margin-top: 16px;
    display: inline-block;
}

/* sectionEssencedesk pc*/
@media screen and (min-width:1025px) {
    .section--essencedesk {
        margin: 190px auto 0;
        width: 75%;
        max-width: 1800px;
    }
    
    .contents__title {
        font-size: 2rem;
        font-weight: 600;
        line-height: 1.5; /* 30.6px */
        letter-spacing: 2px;
        text-align: center;
    }
    
    .contents__txt--essencedesk {
        margin-top: 50px;
    }
}
/* pc 1025px */

/* sectionEssencedesk tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .section--essencedesk {
            margin: 150px auto 0;
            width: 89.2%;
        }
        
        .contents__txt--essencedesk {
            margin-top: 50px;
        }
}
/* tb 768px-1024px */

/* sectionPowerOfFlower */
.section--powerOfFlower h3 {
    margin-top: 100px;
    text-align: center;
}

.spImg--flower {
    width: 77%;
    max-width: 380px;
    margin: 70px auto 0;
    display: block;
}

/* sectionPowerOfFlower pc*/
@media screen and (min-width:1025px) {
    .spImg--flower {
        display: none;
    }

    .section--powerOfFlower h3 {
        margin-top: 150px;
    }

    .section--powerOfFlower div {
        margin-top: 80px;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 4.4%;
    }

    .pcImg--tb {
        width: 13.1%;
        max-width: 230px;
    }
}
/* pc 1025px */

/* sectionPowerOfFlower tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .spImg--flower {
            display: none;
        }

        .section--powerOfFlower h3 {
            margin-top: 150px;
        }

        .section--powerOfFlower div {
            margin-top: 80px;
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 2.8%;
        }

        .pcImg--tb {
            display: block;
            width: 15.6%;
            max-width: 230px;
        }
}
/* tb 768px-1024px */

/* sectionFloweresdesk */
.section--floweresdesk h3 {
    width: 91.4%;
    margin: 100px auto 0;
}

.contents__txt--floweresdesk {
    width: 91.4%;
    margin: 30px auto 0;
}

.section--floweresdesk a {
    color: var(--primary-blackLow);
}

.section--floweresdesk a:hover {
    color: var(--primary-pink);
    border-bottom: 0.1px solid var(--primary-pink);
}

.main small {
    color: var(--primary-blackLow);
    font-size: 1.5rem;
    letter-spacing: 0.9px;
}

.section--floweresdesk img {
    width: 100%;
    margin-top: 40px;
}

/* sectionFloweresdesk pc*/
@media screen and (min-width:1025px) {
    .contents__title {
        font-size: 2rem;
        font-weight: 600;
        line-height: 1.5; /* 30.6px */
        letter-spacing: 2px;
    }

    .section--floweresdesk h3 {
        width: auto;
        margin: 250px auto 0;
    }
    
    .contents__txt--floweresdesk {
        margin: 50px auto 0;
        width: 75%;
        max-width: 1800px;
    }

    .section--floweresdesk img {
        margin-top: 50px;
    }
}
/* pc 1025px */

/* sectionFloweresdesk tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .section--floweresdesk {
            margin: 130px auto 0;
            width: auto;
        }
        
        .contents__txt--floweresdesk {
            margin-top: 50px;
            width: 89.2%;
        }

        .section--floweresdesk h3 {
            width: 89.2%;
            margin: auto;
        }

        .section--floweresdesk a {
            font-size: 14px;
            letter-spacing: 0.84px;
        }
}
/* tb 768px-1024px */

/* sectionStrong */
.section--strong h3 {
    display: flex;
    justify-content: center;
    margin-top: 100px;
}

.strong {
    display: flex;
    width: 92%;
    max-width: 400px;
    padding: 14px 4px;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    border: 1px solid rgba(47, 47, 47, 0.10);
    background: var(--primary-beige);
    box-shadow: 0px 2px 2px 0px #C1B7A4;
    margin: 30px auto 0;
}

.section--strong p {
    color: var(--primary-black);
    text-align: right;
    font-family: "Noto Serif JP";
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.6px;
    text-align: start;
}

/* sectionStrong pc*/
@media screen and (min-width:1025px) {
    .section--strong h3 {
        margin-top: 90px;
    }

    .strong {
        width: 430px;
        max-width: none;
        height: 84px;
        padding: 30px;
    }

    .strong--01 {
        margin-top: 50px !important;
        position: relative;
        z-index: 2;
    }

    .strong--02,
    .strong--03,
    .strong--04 {
        margin-top: -6px !important;
    }

    .strong__outer {
        display: flex;
        max-width: 1330px;
        margin: 0 auto 0;
    }

    .section--strong p {
        font-size: 1.6rem;
        letter-spacing: 1.28px;
    }
}

/* sectionStrong tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .section--strong h3 {
            margin-top: 140px;
        }

        .strong {
            width: 370px;
            max-width: none;
            height: 72px;
            padding: 0;
        }

        .strong--01 {
            margin-top: 60px !important;
            position: relative;
            z-index: 2;
        }

        .strong--02,
        .strong--03 {
            margin-top: -4px !important;
            width: 300px !important;
        }

        .strong--04 {
            margin-top: -4px !important;
        }

        .strong__outer {
            display: flex;
            margin: 0 auto 0;
            max-width: 900px;
        }
}
/* tb 768px-1024px */

/* sectionOtherTherapy */
.section--otherTherapy {
    margin: 180px auto 0 4.2%;
}

.section--otherTherapy h4 {
    font-family: "Noto Serif JP";
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 1.5px;
}

.section--otherTherapy ul {
    width: 186px;
}

.section--otherTherapy li {
    display: flex;
    padding: 4px 10px;
    align-items: flex-start;
    border-radius: 1px;
    border-bottom: 0.6px solid var(--primary-black);
    margin-top: 50px;
    text-align: right;
    font-family: "Noto Serif JP";
    font-size: 1.5rem;
    letter-spacing: 0.9px;
    display: inline-block;
}

.section--otherTherapy li:nth-of-type(2) {
    margin-top: 20px;
}

.section--otherTherapy li:hover {
    color: var(--primary-pink);
    border-bottom: 0.6px solid var(--primary-pink);
}

/* sectionOtherTherapy pc*/
@media screen and (min-width:1025px) {
    .section--otherTherapy {
        margin: 300px auto 256px;
    }
    
    .section--otherTherapy h4 {
        font-size: 1.8rem;
        letter-spacing: 1.8px;
        text-align: center;
    }

    .section--otherTherapy ul {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 40px;
        width: auto;
    }
    
    .section--otherTherapy li {
        padding: 10px;
        align-items: center;
        margin-top: 60px;
        text-align: center;
        font-size: 1.7rem;
        letter-spacing: 1.02px;
        display: flex;
    }
    
    .section--otherTherapy li:nth-of-type(2),
    .reservationBtn {
        margin-top: auto;
    }
}
/* pc 1025px */

/* sectionOtherTherapy tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .section--otherTherapy {
            margin: 297px auto 168px;
        }
        
        .section--otherTherapy h4 {
            font-size: 1.6rem;
            letter-spacing: 1.6px;
            text-align: center;
        }

        .section--otherTherapy ul {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 20px;
            width: auto;
        }
    
        .section--otherTherapy li {
            padding: 10px;
            align-items: center;
            margin-top: 60px;
            text-align: center;
            font-size: 1.6rem;
            letter-spacing: 0.96px;
            display: flex;
        }
        
        .section--otherTherapy li:nth-of-type(2),
        .reservationBtn {
            margin-top: auto;
        }
}
/* tb 768px-1024px */

/* sectionStrong カスタムブレイクポイント */
@media (max-width: 363px) {
    .strong--01 {
        padding: 2.5px 4px;
    }

    .strong--01 p {
        width: 188px;
        text-align: center;
    }
}
    
/* else カスタムブレイクポイント */
@media (max-width: 350px) {
    .topic {
        font-size: 2rem;
        width: 75.8%;
    }

    .contents__title {
        font-size: 1.6rem;
        letter-spacing: 1px;
    }

    .contents__txt {
        font-size: 1.5rem;
    }

    .section--floweres p {
    width: 76.5%;
    }
}
