/* ABOUT page - all -
-------------------------- */
.sec-body{
    color: #341a15;
    font-size: 0.938rem;
}

.sec-body a{
    text-decoration: none;
    color: #341a15;
}

.sec-body a:hover{
    color: #795656;
}

.sec-wrapper{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 3%;
}

.sec-sub-wrapper{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 6%;
}

.spbr{
    display: none;
}

.page-about section img{
    max-width: min(707px, 100%);
    aspect-ratio: 770 / 883;
    object-fit: cover;
}

.page-about .creator img{
    object-fit: cover;
    object-position: top center;
    aspect-ratio: 8/7;
}

/* ABOUT page - all menunavi -
-------------------------- */
.sec-fixed{
    width: 100vw;
    justify-content: space-between;
    padding: 50px 50px 0 50px;
}

.sec-fixed h2{
    width: 120px;
    position: fixed;
}

.sec-fixed-nav-sns img{
    width: 20px;
    padding-top: 10px;
    margin-left: 10px;
    text-align: right;
}

.sec-fixed-g-menu{
    position: fixed;
    right : 80px;
    top: 80px;
    font-size: 0.8rem;
}

.sec-fixed-g-menu li{
    text-align: right;
    padding-bottom: 15px;
}

.sec-fixed-d-nav{
    margin-top: 15px;
}

/* ABOUT page - header -
-------------------------- */
.sec-header{
    margin-bottom: 200px;
}

.sec-tnav h2{
    width: 140px;
}

.sec-tnav{
    padding: 50px 5.73% 40px 5.73%;
    justify-content: space-between;
}

.sec-nav-icon a{
    padding-left: 10px;
}

.sec-nav-icon img,
.sec-footer-sns img{
    width: 25px;
}

.sec-g-menu li{
    text-align: right;
    padding-bottom: 25px;
}

.sec-scroll{
    align-items: flex-end;
}

.sec-big-bg{
    /* background-image: url(../img/about-bg.jpg);
    background-position: center center;
    background-size: cover; */
    height: 100vh;
    margin-top: -30px;
    /* background-repeat: no-repeat; */
}

.sec-content{
    justify-content: space-between;
    padding: 80px 5.73%;
    height: 100vh;
}

.sec-title{
    align-items: center;
    justify-content: center;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    color: #fff;
    letter-spacing: 0.4rem;
    padding-left: 6vw;
    font-weight: 300;
}

.sec-e-btitle{
    color: #795656;
    font-family: "Tangerine", serif;
    font-weight: 300;
    font-style: normal;
    text-align: center;
    margin-bottom: -30px;
    letter-spacing: 2rem;
    font-size: 3.2rem;
    width: fit-content;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    display: none;
}

.sec-e-btitle::before{
    content: "";
    width: 140%;
    height: 2.5em;
    display: block;
    background-color: #fff;
    filter: blur(20px);
    border-radius: 50%;
    position: absolute;
    top: -1em;
    left: -1.2em;
    z-index: -1;
}

.sec-product .sec-e-btitle::before{
    width: 145%;
    height: 2.5em;
    filter: blur(18px);
    top: -1em;
    left: -2em;
    z-index: -1;
}

.img-sp {
    display: none;
}

.sec-g-menu a{
    color: #e9d6cb;
}

.sec-g-menu a:hover{
    color: #fff;
}

/* ABOUT page - main -
-------------------------- */
section.sec-contents{
    justify-content: space-between;
    align-items: flex-end;
    /* gap: 8%; */
}

.sec-text{
    letter-spacing: 0.05rem;
    line-height: 2.2;
    color: #59514d;
}

.heading{
    font-size: 1.5rem;
    margin-bottom: 35px;
    letter-spacing: 0.2rem;
}

.sec-content-im{
    /* width: 60%; */
    margin-right: 5%;
}

.sec-contents .sec-text{
    width: 33%;
}

.sec-contents{
    padding-bottom: 200px;
}

.sec-bgbox1{
    /* width: 100vw; */
    background-image: url(../img/sec-bg-line1.png);
    background-position: center center;
    background-size: contain;
}

.sec-bgbox2{
    /* width: 100vw; */
    background-image: url(../img/sec-bg-line2.png);
    background-position: center center;
    background-size: contain;
}

.sec-text-right{
    text-align: right;
}

.about-page .sec-g-menu a{
    color: #fff;
}

.about-page .sec-g-menu a:hover{
    color: #e9d6cb;
}

/* ABOUT page - footer -
-------------------------- */
.sec-footer{
    background-color: #e9d6cb;
    color: #795656;
}

.sec-footer-box{
    padding: 130px 4%;
    justify-content: space-between;
    align-items: center;
}

.sec-footer-link ul{
    margin-left: 4.63%;
}

.sec-footer-link{
    width: 60%;
    gap: 5%;
    justify-content: space-between;
}

.copy{
    text-align: center;
}

.sec-footer-place p{
    line-height: 1.9;
}

.sec-footer-link{
    line-height: 2.5;
    font-size: 1rem;
}

.sec-footer-sns{
    display: block;
    text-align: center;
}

.sec-footer-shopname{
    font-size: 1.1rem;
}

.sec-footer-link a,
.sec-footer-shopname a{
    color: #795656;
}

.sec-footer-link a:hover,
.sec-footer-shopname a:hover{
    color: #b26e6e;
}

/* CANDLE page - main -
------------------------- */
.mv-img{
    display: block;
    object-fit: cover;
}

.sec-candle-maintitle{
    text-align: center;
}

.sec-candle .sec-contents{
    align-items: center;
    justify-content: center;
    padding-bottom: 150px;
}

.sec-candle .heading{
    margin: 0;
    letter-spacing: 0.5rem;
    padding-right: 20px;
}

.sec-candle-maintitle .heading{
    white-space: nowrap;
}

.sec-candle-maintitle p{
    font-size: 0.9em;
    letter-spacing: 0.3rem;
}

.sec-candle .sec-contents-textbox{
    align-items: center;
    justify-content: space-between;
    padding-bottom: 50px;
}

.sec-contents-img{
    max-width: 330px;
    min-width: 330px;
    padding-left: 40px;
}

.sec-candle .sec-contents-img img{
    border-radius: 100px 20px 50px 20px;
    aspect-ratio: 1;
    width: 100%;
    object-fit: cover;
}

.sec-candle .sub-heading {
    font-size: 1.1rem;
    margin-bottom: 15px;
    letter-spacing: 0.1rem;
    font-weight: 300;
}

.sec-candle .sec-maincontent{
    padding-bottom: 190px;
}

.sec-contents-alltxt .sec-text{
    width: fit-content;
    padding-bottom: 90px;
}

.sec-contents-allimg img{
    margin-bottom: 30px;
}

.e-heading{
    color: #795656;
    font-family: "Tangerine", serif;
    font-weight: 300;
    font-style: normal;
    letter-spacing: 0rem;
    font-size: 2.2rem;
    line-height: 1.3;
}

.e-heading span{
    font-size: 3.5rem;
}

.sec-candle .sec-bgbox1{
    padding-bottom: 40px;
}

/* PRODUCT page - main -
------------------------- */
.heading {
    font-size: 1.3rem;
    margin-bottom: 25px;
    letter-spacing: 0.2rem;
    font-weight: 300;
}

.sec-big-bg-product{
    /* background-image: url(../img/product-img/product-fv.jpg);
    background-position: center center;
    background-size: cover; */
    height: 100vh;
    background-repeat: no-repeat;
}

/* PRODUCT page - letter -
--------------------------  */
.sec-big-bg-btm-product{
    background-image: url(../img/letter-img/letter-top.jpg);
    background-position: top 40% center;
    background-size: cover;
    height: 100vh;
    background-repeat: no-repeat;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-shadow: 0 0 2px #000;
}

h4{
    font-size: 1.7rem;
    font-weight: 200;
    letter-spacing: 0.3rem;
    color: #e9d6cb;
    margin-top: -100px;
}

.pr-le-btm-text{
    letter-spacing: 0.1rem;
    padding-top: 10px;
    padding-bottom: 50px;
    color: #e9d6cb;
}

.product-letter-mintext{
    font-size: 1.2rem;
    letter-spacing: 0.1rem;
}

.sec-viewmore{
    width: 200px;
}

.letter-link{
    justify-content: space-between;
    padding-top: 40px;
}

.letter-nextpage-mintext{
    font-size: 0.8em;
}

.letters-nextpage .sec-bgbox1{
    background-size: 120%;
}

/* ACCESS page - main -
-------------------------- */
.sec-access .sec-g-menu a {
    color: #fff;
}

.sec-big-bg-access{
    /* background-image: url(../img/acsses-fv.jpg);
    background-position: center center;
    background-size: cover; */
    height: 100vh;
    background-repeat: no-repeat;
}

.access-text{
    padding-top: 50px;
    text-align: center;
    margin: 83px auto;
    line-height: 3;
    letter-spacing: 0.3rem;
}

.map-iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.7s ease;
}

.ifram{
    margin-bottom: 40px;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;    /*16:9の比率にしたい場合、9/16=56.25%*/
}

.sec-access-mapbox{
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 30px 5% 120px 5%;
}

.sec-access-mapbox .sec-text{
    line-height: 1.9;
    text-align: center;
}

/* GIFT page - main -
-------------------------- */
.shop-btn {
    display: block;
    width: fit-content;
    margin: 25px 0 0 auto;
    font-size: 0.8em;
    letter-spacing: 0.1rem;
}

.shop-btn a{
    color: #878a9a;
}

/* responsive　-PC to TABLET-
-------------------------- */
@media screen and (min-width:768px) and ( max-width:1300px) {
    .sec-nav-icon{
        display: none;
    }

    .sec-fixed{
        display: none;
    }

    .sec-contents .sec-text{
        width: 37%;
    }

    .sec-candle .sec-contents .sec-text {
        width: fit-content;
    }
}

/* responsive　-TABLET-
-------------------------- */
@media screen and (min-width:768px) and ( max-width:1080px) {
    .sec-nav-icon{
        display: none;
    }

    .sec-contents .sec-text{
        width: 50%;
    }

    .sec-footer-box{
        flex-direction: column;
        gap: 50px;
    }

    .sec-footer-link {
        line-height: 1.7;
        letter-spacing: 0;
        width: 70%;
    }

    .sec-footer-box {
        padding: 80px 0;
    }

    .sec-g-menu{
        display: none;
    }

    .sec-footer-link ul {
        margin-left: 3.5%;
    }

    .sec-content{
        flex-direction: column-reverse;
        align-items: center;
        padding: 28vh 0 5vh 0;
    }

    .sec-title{
        letter-spacing: 0.5rem;
        padding-left: 0;
    }

    .sec-contents-alltxt .sec-text{
        padding-bottom: 60px;
    }

    .sec-candle .heading{
        font-size: 1.2rem;
        margin: 0;
        letter-spacing: 0.1rem;
    }

    .sec-candle .sub-heading {
        font-size: 1rem;
        margin-bottom: 10px;
        letter-spacing: 0.2rem;
    }

    .sec-candle .sec-contents-textbox{
        padding-bottom: 40px;
    }

    .sec-candle-maintitle p {
        letter-spacing: 0.1rem;
    }

    .sec-candle .sec-contents{
        justify-content: space-around;
    }

    .sec-contents-allimg img{
        margin-bottom: 50px;
    }

    .sec-candle .sec-contents {
        padding-bottom: 80px;
    }

    .sec-candle .sec-maincontent{
        padding-bottom: 130px;
    }    
}


    /* responsive　-SP-
-------------------------- */
@media(max-width: 768px){
    /* 共通部分 */
    .sec-nav-icon{
        display: none;
    }

    .sec-main{
        font-size: 0.813rem;
    }

    .sec-wrapper{
        max-width: 100%;
        text-align: center;
    }

    .sec-fixed,
    #page-top,
    .sec-footer-link,
    .sec-g-menu{
        display: none;
    }

    .img-pc {
        display: none;
    }

    .img-sp {
        display: block;
    }

    .sec-contents{
        flex-direction: column;
    }
    
    .sec-tnav h2{
        width: 100px;
    }
    
    .sec-tnav{
        padding: 40px 5% 30px 5%;
        justify-content: space-between;
    }

    .sec-e-btitle{
        font-size: 2.2rem;
        margin-bottom: -20px;
        letter-spacing: 0.9rem;
    }

    .sec-e-btitle::before{
        width: 140%;
        height: 2.5em;
        filter: blur(18px);
        top: -1em;
        left: -0.85em;
        z-index: -1;
    }

    .sec-product .sec-e-btitle::before{
        width: 138%;
        height: 2.5em;
        filter: blur(15px);
        top: -1em;
        left: -1.5em;
        z-index: -1;
    }

    .access-sec-header .sec-e-btitle::before{
        width: 145%;
        height: 2.5em;
        filter: blur(15px);
        top: -1em;
        left: -1.2em;
        z-index: -1;
    }

    .sec-about .sec-title,
    .sec-big-bg-letter .sec-title,
    .sec-big-bg-product .sec-title,
    .sec-big-bg-gift .sec-title,
    .sec-big-bg-access .sec-title{
        color: #fff;
        letter-spacing: 0.3rem;
        padding-left: 0;
    }

    .sec-content{
        flex-direction: column-reverse;
        align-items: center;
        padding: 28vh 0 5vh 0;
    }

    /* .sec-big-bg{
        background-image: url(../img/about-bg-sp.jpg);
        background-position: center bottom;
    } */

    .sec-bgbox1{
        /* width: 100vw; */
        background-image: url(../img/sec-bg-line1-sp.png);
        background-position: center center;
        background-size: contain;
    }
    
    .sec-bgbox2{
        /* width: 100vw; */
        background-image: url(../img/sec-bg-line2-sp.png);
        background-position: center center;
        background-size: contain;
    }
    
    .sec-contents .sec-text{
        width: 100%;
        padding-top: 35px;
    }

    .sec-content-im{
        margin-right: 0;
    }

    .sec-header{
        margin-bottom: 100px;
    }

    .sec-sp-mini{
        padding: 0 15%;
    }

    .sec-contents{
        padding-bottom: 120px;
    }

    .spbr{
        display: block;
    }

    .newline-sp{
        padding-bottom: 30px;
    }

    .sec-footer-box{
        padding: 70px 3%;
        justify-content: center;
        align-items: center;
    }

    .sec-big-bg-btm-product{
        text-align: center;
    }

    h4{
        letter-spacing: 0.5rem;
        margin-top: -120px;
    }

    .sec-access-mapbox .heading{
        margin-bottom: 10px;
    }

    .ifram{
        padding-top: 100%;    /*16:9の比率にしたい場合、9/16=56.25%*/    
    }

    .letter-link{
        padding-top: 100px;
    }

    .letters-nextpage .sec-content-im{
        padding-top: 25px;
    }

    .sec-candle .sec-contents-textbox{
        padding-bottom: 70px;
    }

    .sec-candle .sec-maincontent{
        padding-bottom: 70px;
    }

    .e-heading{
        letter-spacing: 0rem;
        font-size: 1.4rem;
        line-height: 1.3;
    }

    .e-heading span{
        font-size: 2.5rem;
    }

    .sec-candle .heading{
        letter-spacing: 0.5rem;
        padding-right: 0;
        line-height: 1.5;
    }

    .sec-contents .sec-text {
        padding-top: 60px;
    }

    .shop-btn{
        display: block;
        width: fit-content;
        margin: 40px auto 0 auto;
        font-size: 0.9em;
    }

    .sec-text-right{
        text-align: center;
    }

    .sec-candle .sec-contents {
        padding-bottom: 80px;
    }
}