@charset "utf-8";
body{
    font-family: 'Noto Sans', sans-serif;
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #ffeb7e;
}
.pc,.pc-img{
    display: none;
}
.cart{
    display: inline-block;
    vertical-align: middle;
    width: 22px;
    margin-left: 8px;
}
.cart img{
    box-sizing: border-box;
    padding-bottom: 4px;
}
h2{
    font-size: 2rem;
    text-align: center;
    margin-bottom:20px;
    line-height: 30px;
    color: #632b15;
}
h2 span{
    color: #ca2d2d;
}
p,li,dt,dd,small,a{
    font-size: 1.2rem;
    color: #632b15;
    line-height: 16px;
}
a{
    transition: .4s;
    color: #fff;
}
a:hover{
	opacity: 0.8;
}
.sp ul.glonav li a{
    font-size: 2.8rem;
    /* letter-spacing: 0.15em; */
}
.flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 2;
}
.btn:hover{
	box-shadow: 0 0 10px rgba(0,0,0,0);
}
.yellow-bg{
    padding: 70px 12px;
    background:linear-gradient(180deg, #ffeb7e, #ebcfcf);
    position: relative;
    z-index: 1;
}
.yellow-bg::before,.pink-bg::before{
    content: "";
    position: absolute;
    inset: 0;
    background-image:url(../img/layer2.png);
    background-size: contain;
    z-index: -1;
}
.pink-bg{
    padding: 70px 12px;
    background:linear-gradient(180deg, #ebcfcf,#ffeb7e);
    position: relative;
    z-index: 1;
}
.center{
    text-align: center;    
    margin-bottom: 12px;
}
#sec2 img,#sec3 img,#sec4 img,#sec5 img{
    border-radius: 20px;
}
.pre-btn{
  width: 120px;
  height: 120px;
  position: fixed;
  bottom: 6%;
  right: 7%;
  opacity: 0;
  transition: .5s ease-in-out;
}
.pre-btn.fixed {
    opacity: 1;
    z-index: 1;
}
/* sec1 */
.wrapper2{
    /* overflow: hidden; */
    margin:70px auto 0px;
}
.wrapper{
    overflow: hidden;
    margin:140px 0 0;
}
.top-text{
    position: relative;
    max-width: 420px;
    margin: 0 auto;
    min-height: 250px;
    overflow: hidden;
}
.top-text p{
    text-align: center;
    line-height: 4;
    margin-bottom: 0;
}
.top-text div{
    position: absolute;
    top: 100px;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 100%;
}
.kasumi1{
    position: absolute;
    bottom: 77%;
    right: 63%;
    max-width: 155px;
}
.kasumi2{
    position: absolute;
    top: 100%;
    left: 60%;
    max-width: 155px;
}
#sec1 .price-box{
    position:relative;
    min-height: 130px;
    text-align: center;
}
#sec1 .item-name{
    position: absolute;
    top:15px;
    left: 50%;
    transform: translate(-50% , -50%);
    font-size: 1.6rem;
    font-weight: bold;
    color: #632b15;
    width: 100%;
}
#sec1 .price{
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 100%;
    font-size: 1.6rem;
    font-weight: bold;
    color: #ca2d2d;
}
#sec1 .btn{
    position: absolute;
    top: 76%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 100%;
}
#sec1 .btn a{
    display: block;
    margin: 0 auto;
    max-width: 300px;
    height: 60px;
    line-height: 60px;
    color: #ffeb7e;
    background-color: #ca2d2d;
    box-shadow: 3px 3px 0px rgba(0, 0, 0, 0.1);
    font-size: 1.6rem;
    font-weight: bold;
    transition: .4s;
    border-radius: 100vh;
}
/* #sec2 */
.item-img{
    margin-bottom: 50px;
    border-radius: 20px;
}
.point-box{
    display: flex;
    align-items: center;
    margin: 0px auto 20px;
}
.point-box img{
    width: 50%;
}
.point-box p{
    box-sizing: border-box;
    padding-left: 10px;
}
#sec3,#sec5 {
    margin: 140px auto 0px;
}

/* #sec6 */
#sec6 .price-box{
    position: relative;
    /* min-height: 200px; */
    min-height: 220px;
    text-align: center;
}

#sec6 .item-name{
    position: absolute;
    top:15px;
    left: 50%;
    transform: translate(-50% , -50%);
    font-size: 1.6rem;
    font-weight: bold;
    color: #632b15;
    width: 100%;
}
#sec6 .price{
    position: absolute;
    /* top:45%; */
    top:20%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 100%;
    font-size: 1.6rem;
    font-weight: bold;
    color: #ca2d2d;
}
#sec6 .btn{
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 100%;
}
#sec6 .btn a{
    display: block;
    margin: 0 auto;
    max-width: 300px;
    height: 60px;
    line-height: 60px;
    color: #ffeb7e;
    background-color: #ca2d2d;
    box-shadow: 3px 3px 0px rgba(0, 0, 0, 0.1);
    font-size: 1.6rem;
    font-weight: bold;
    transition: .4s;
    border-radius: 100vh;
}
.kasumi4{
    position: absolute;
    /* bottom: -50%; */
    bottom: 0%;
    /* right: 70%; */
    right: 65%;
    max-width: 155px;
}
footer{
    padding:50px 0px;
    background-color: #ca2d2d;
}
footer li{
    text-align: center;
    margin-bottom: 10px;
}
footer li {
    color: rgb(255, 255, 255);
}
.logo-ear{
    max-width: 70px;
    margin: 20px auto;
}
footer .flex a{
    background-image: url(../img/sns/sns-bg.png);
    margin: 20px 10px;
    padding: 10px;
    width: 55px;
    height: 55px;
}
footer .flex img{
    max-width: 35px;

}
footer .flex img.tw,header .glonav li.flex img.tw{
    margin-top: 3.5px;
}
small{
    display: block;
    margin-top: 20px;
    text-align: center;
    color:#fff;
}
.qr a{
    display: none;
}

@media screen and (min-width:561px){
    header{
        display: block;
    }
    #sec1 h2 img{
        width: 65%;
    }
    .wrapper{
        max-width: 500px;
        margin:70px auto 0px;
    }
    .wrapper2{
        max-width: 500px;
        margin:50px auto 0px;
    }
    #sec2,#sec4,#sec6{
        max-width: 500px;
        margin: 0 auto;
    }
    #sec3,#sec5{
        max-width: 500px;
    }
    .rk-img{
        left: 10%;
    }
    .yellow-bg::before,.pink-bg::before{
        background-image:url(../img/layer.png);
    }
}
@media screen and (min-width:1024px){
/*PC用として画面幅を1024pxまでに設定*/
.pc-img{
    display: block;
}
.pc{
    display: block;
    position: fixed;
    top:250px;
    left: 25px;
    z-index: 2;
    opacity: 0;
    transition: .5s;
}
.pc li{
    border-bottom: solid 1px #632b15;
    margin-bottom: 20px;
}
.pc li a{
    color: #632b15;
    font-size: 2rem;
    letter-spacing: 0.15em;
    line-height: 50px;
}
.pc li.qr a{
    display: block;
    font-size: 1.2rem;
    line-height: 2;
    color: #632b15;
}
.pc li.qr{
    max-width: 250px;
    border-bottom: none;
}
.qr img{
    max-width: 90px;
    margin: 50px 0px 15px;
}
.sp,.sp-img{
    display: none;
}
}