@charset "UTF-8";


html {
    /*
    font-size:unset;
    font-size: 62.5%;
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt";
    */
}
body{
    /*
    font-size:1.4rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight:300;
    line-height:155%;
    */
}

*,
*::before,
*::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.minTxt{
    font-family: 'Noto Serif JP', serif;
}

#lpbody{
    /*font-size:1.4em;*/
    line-height:155%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;

    font-family: 'Noto Sans JP', sans-serif;
    font-weight:300;
}



#lpbody.pc a{
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

#lpbody.pc a:hover{
    opacity:0.5;
}


#lpbody img{
    width:initial;
    display:initial;
}

.innerFrame{
    display:block;
    overflow:hidden;
    width:760px;
    margin:0 auto;
    position:relative;
}


p.cautionTxt{
    font-size:12px!important;
    line-height:155%;
}

.noPC{
    display:none;
}

.noSP{
    display:initial;
}

sup{
    font-size:0.8em;
}



@media (max-width: 768px) {

    #lpbody img{
        width:100%;
        height:auto;
    }

    .innerFrame{
        width:auto;
    }

    p.cautionTxt{
        font-size:1.0rem!important;
    }


    .noPC{
        display:initial!important;
    }

    .noSP{
        display:none;
    }

}



/* --------------------------------

 ショッピング情報

-------------------------------- */
#shopInfo{
    display:block;
    overflow:hidden;
}

#shopInfo > section{
    display:block;
    overflow:hidden;
    width:800px;
    width:var(--container-mid);
    margin:0 auto;
    font-size:14px;
    line-height:175%;
}

#shopInfo > section + section{
    margin-top:1em;
}


#shopInfo input{
    display:none;
}

#shopInfo label{
    display:block;
    overflow:hidden;
    padding:0.5em 0.5em;
    background-color:#cccccc;
    font-size:16px;
    line-height:125%;
    position:relative;
    cursor:pointer;
}


#shopInfo label > *{
    vertical-align:middle;
}


span.icnOc{
    display:inline-block;
    width:1.6em;
    height:1.6em;
    background-color:#3c3c3c;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    position:absolute;
    top:50%;
    right:0.5em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

span.icnOc::before{
    display:block;
    overflow:hidden;
    content:"";
    width:1em;
    height:2px;
    border-top:2px solid #ffffff;
    position:absolute;
    top:calc(50% - 1px);
    left:0.3em;

    transform:rotateZ(180deg);
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

span.icnOc::after{
    display:block;
    overflow:hidden;
    content:"";
    width:1em;
    height:2px;
    border-top:2px solid #ffffff;
    position:absolute;
    top:calc(50% - 1px);
    left:0.3em;

    transform:rotateZ(90deg);
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}


#shopInfo .accBody{
    display:block;
    overflow:hidden;
    height:0;
    padding:0 1em;
    border:1px solid #cccccc;
    border-top:none;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

#shopInfo input:checked + label > span.icnOc::before,
#shopInfo input:checked + label > span.icnOc::after{
    transform:rotateZ(0);
}
#shopInfo input:checked + label + .accBody{
    height:auto;
    padding:1em 1em;
}


#shopInfo .accBody h5{
    font-weight:bold;
    font-size:16px;
    margin-bottom:0.25em;
}

#shopInfo .accBody h5:nth-child(n + 2) {
    margin-top:1em;
}

#shopInfo .accBody h5 > br{
    display:none;
}

#shopInfo .accBody ul + h5{
    margin-top:1em;
}

#shopInfo .accBody a{
    display:initial;
    text-decoration:underline;
}


#shopInfo .accBody > p{
    margin-top:1em;
}

#shopInfo .accBody h5 + ul,
#shopInfo .accBody h5 + p{
    margin-top:0;
    margin-left:1em;
}
#shopInfo .accBody > p.cautionTxt{
    text-indent:-1em;
    padding-left: 1em;
}
#shopInfo .accBody > p.cautionTxt + p.cautionTxt{
    margin-top:0.25em;
}

#shopInfo ul{
    display:block;
    overflow:hidden;
    list-style-type:disc;
    padding-left:1.5em;
}


@media (max-width: 768px) {

    #shopInfo{
        margin-top:3vw;
        padding:0 3vw;
    }

    #shopInfo > section{
        width:100%;
        font-size:1.4rem;
    }

    #shopInfo label{
        font-size:1.6rem;
    }

    #shopInfo .accBody h5{
        font-size:1.6rem;
    }

    #shopInfo .accBody h5 + ul{
        margin-left:0;
    }

    #shopInfo ul > li{
        word-break: break-all;
    }

}


/* --------------------------------

 フッタ

-------------------------------- */
footer{
    display:block;
    overflow:hidden;
    clear:both;
    margin-top:50px;
    position:relative;
    background-color:#181918;
    color:#ffffff;
    text-align:center;
}

/*Topに戻るボタン*/
footer > a[href='#pgtop']{
    display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    height: 64px;
    background-color:#202120;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

footer > a[href='#top']:hover{
    background-color:#ffffff;
    opacity: 1.0;
}

footer > a[href='#pgtop']::before {
    content: "";
    position: absolute;
    top: 14px;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    border-top: 1px solid #ffffff;
    border-left: 1px solid #ffffff;
    width: 20px;
    height: 20px;
    transition: border-color 0.4s;

    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

footer > a[href='#pgtop'] > span{
    display:none;
}

footer > a[href='#pgtop']:hover{
    background-color:#f5f5f5;
    opacity: 1.0;
}

footer > a[href='#pgtop']:hover::before{
    border-color:#202120;
}


/*フッタナビ*/
nav{
    display:block;
    overflow:hidden;
    margin:55px 0 40px;
}

ul#ftNav{
    display:inline-block;
    overflow:hidden;
}

ul#ftNav > li{
    display:inline-block;
    overflow:hidden;
}

ul#ftNav > li > a{
    display:block;
    overflow:hidden;
    padding: 0 25px;
    font-size: 14px;
    line-height:125%;
    color:#ffffff;
    white-space:nowrap;
}

/*コピーライト*/
footer > p{
    display:block;
    overflow:hidden;
}

footer > p > img{
    width:155px;
    height:auto;
    display:initial;
}

footer > p > small{
    display:block;
    overflow:hidden;
    margin:32px auto;
    font-size:12px;
    line-height:125%;
    color:#aaaaaa;
}


@media (max-width: 768px) {

    footer{
        margin-top:6vw;
    }

    /*Topに戻るボタン*/
    footer > a[href='#pgtop']{
        height:48px;
        border-bottom:1px solid #9e9e9e;
    }


    /*フッタナビ*/
    nav{
        margin:6vw 0 3vw;
        padding:0 3vw;
    }

    ul#ftNav{
        display:block;
        width:100%;
    }

    ul#ftNav > li{

    }

    ul#ftNav > li > a{
        padding: 0 0.5em;
        font-size: 1.2rem;
    }

    /*コピーライト*/
    footer > p > img{
        width:100px;
    }

    footer > p > small{
        margin:3vw auto 6vw;
        font-size:1.0rem;
    }

}

