@charset "Shift_JIS";
#info_contents { margin-bottom:0!important; }
.body_sph .contents_main { margin: 0; }


.caloriepon2508,
.caloriepon2508 p,
.caloriepon2508 a{
    margin: 0;
    padding: 0;
 line-height: 1.5;

}

/*クロールに読み込ませるが非表示にするもの*/
.caloriepon2508 .visually-hidden{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}
/*===============================
wrapper
===============================*/
.wrapper-big,
.wrapper-middle,
.wrapper-small{
   margin: 0 auto;
}

.wrapper-big{
    width: 660px;
}
.wrapper-middle{
    width: 640px;
}
.wrapper-small{
    width: 560px;
}

/*左右上下中央ぞろえ*/
.center-center{
    display: grid;
    place-content: center; /*要素の中央揃え*/
    place-items: center; /*要素同士の中央揃え*/
}



/*===============================
teiki
===============================*/
#teiki{
    background-color: #ffead9;
    padding: 0 0 8% 0;
}
#teiki .teiki-title-margin{
    margin-bottom: 6%;
}

#teiki .wrapper-big > *{
    display: inline-block;
    margin-bottom: 10%;
}
#teiki .wrapper-big > *:first-child{
    margin-bottom: 6%;
}
#teiki .wrapper-big > *:last-child{
    margin-bottom: 0%;
}


/*===============================
インクルード
===============================*/


.spec{
    background-image: url("image/spec_back.png");
    background-size: 100%;
    background-repeat: repeat;
    padding: 10% 0 10%;
}

.spec-item:not(:last-child){
    margin-bottom: 12%;
}

.spec.spec-fv{
    padding: 0% 0 5%;
}

.spec-title{
    text-align: center;
    margin-bottom: 5%;
}
.spec-fv .spec-title{
    margin-bottom: 3%;
}

.spec-campaign{
    position: relative;
    margin-bottom: 5%;
}

.spec-single img{
    height: 4vh;
}
.spec-btn{
    position: absolute;
    width: 82%;
    left: 50%;
    top: 73.5%;
    transform: translateX(-50%);
}

#teiki .spec-btn{
    top: 78.5%;
}

.teiki_annotation{
    text-align: center;
        margin-top: -3.5%;
}

.teiki_annotation img{
    height: 1.8vh;

}


/*全体の余白調整*/
.include{
  background-color: #ffffff;
    padding: 4% 0;
    margin-top: 5%;
    margin-bottom: 8%;
    border-radius: 10px;
}
.include.include-big{
    padding: 5% 0;
}
.include.include-fv{
    margin-bottom: 12%;
}
.include .goods_set{
    display: flex;
    gap: 3%;
    margin: 0 0 2% 0;
}
.include.include-big .goods_set{
    gap: 4%;
    margin: 0 0 3% 0;
}

/*左----------------------*/
.include .img_box{
    flex: 0.8; /*画像の大きさ*/
}
.include.include-big .img_box{
    flex: 1.2; /*画像の大きさ*/
}

/*右----------------------*/
/*長さ*/
.include .txt_box{
    flex: 2; /*長さ*/
}
/*割引後価格*/
.include .price2{
    font-size: 2.5em;
    color: #ff6f00;
}
.include .price2 .tax{
    font-size: 0.5em;
    margin-left: -0.3em;
}
/*割引率*/
.include .cp_box{
    display: block;
}
.include.include-big .cp_box{
    display: flex;
    align-items: end;
}
.include .cp_discount{
    font-size: 2.3em;
    background-color: #ff6f00;
}
.include.include-big .cp_discount{
    font-size: 5em;
    padding: 0.1em 0.3em 0.08em 0.3em;
    margin: 0.1em 0 0 0;
}
.include.include-big .cp_discount strong{
    font-size: 1.4em;
}

/*日付*/
.include.include-big .cp_discount + .cp_limit {
    font-size: 1.5em;
}

/*商品名*/
.include .name{
    font-size: 1.2em;
}


/*ボタン*/
.cta-btn a{
    position: relative;
    display: block;
    width: 100%;
    background: linear-gradient(0deg, #ff6f00 40%, #ff5500 100%);
    color: #fff;
    text-decoration: none;
    text-align: center;
    padding: 2% 0;
    border-radius: 10em;
box-shadow: 0 3px 0 0 #e26200;
}
.include.include-big .cta-btn a{
        padding: 3% 0;
    box-shadow: 0 5px 0 0 #e26200;
}

.cta-btn:hover{
    opacity: 0.8;
        transition: 0.3s;
}
.cta-btn a::after{
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      right: 1.5em;
      width: 0.5em;
      height: 0.5em;
      margin: auto;
      border-top: 0.1em solid #fff;
      border-right: 0.1em solid #fff;
      transform: rotate(45deg);
      box-sizing: border-box;
    }

.include .cta-btn a{
    font-size: 1.8em;
    font-weight: bold;
}
.include .cta-btn a::after{
        border-top: 0.15em solid #fff;
    border-right: 0.15em solid #fff;
}

.single{
    font-size: 2em;
    text-align: center;
    margin: -4% 0 10% 0;
        color: #fff;

}

.single a{
    font-feature-settings: "palt";
    text-underline-offset: 0.18em;
}
.single a:visited{
    color: #fff;
}
.single a:hover{
    opacity: 0.6;
    cursor: pointer;

}
.single a span{
    font-size: 0.7em;
}

.single a:link{
    color: #fff;
}

.spec-text{
    text-align: center;


}
.spec-text p{
    display: inline-block;
    font-size: 2.2em;
    font-weight: bold;
    color: #00579e;
    background: linear-gradient(transparent 75%, #fff99f 75%);
    margin-bottom: 0.8em;
}


/*通常定期ボタン隠し*/
.goods_set .btn img {
    display: none;
}



/*===============================
レスポンシブ
===============================*/

@media screen and (max-width: 768px) {
    /*wrapper*/
    .wrapper-big{
        width: 91.5vw;
    }
    .wrapper-middle{
    width: 90vw;
}
    .wrapper-small{
        width: 76vw;
    }
    
.single {
    font-size: 1.2em;
}
    
    
    
 /*＝コンテンツ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
 .spec-single img {
    height: 3vh;
}       
/*各セクション調整===================================*/    
    .fv .pkg {
    top: 36%;
    left: 19vw;
    width: 41%;
}
    .annotation{
        font-size: 0.7em;
    }
    
    
/*アコーディオン*/
.accordion {
	border: 1px solid #08308E;
    font-size: 1em;
}
/*横の十字*/
/*.accordion_title::before,
.accordion_title::after{
    height: 1px;
}         */    
.body_sph .accordion_box p{
/*line-height: 1.8;*/
}
.accordion .accordion_title {
    font-size:1.1em;
}
    
/*インクルード====================================*/
    .spec-text p{
    font-size: 1.3em;
}

    
    .include{
        padding: 6% 0;
    }
    .include .goods_set{
        gap: 4%;
    }

     /*左----------------------*/
    /*画像の大きさ*/
    .include .img_box{
        flex: 0.55;
    }   
    /*右----------------------*/
    .include .txt_box{
        font-size: 0.85em;
            flex: 1;
    }
    .include .price2{
    font-size: 1.6em;
    }
    .include .cp_discount{
    font-size: 2em;
    }
/*商品名*/
.include .name{
    font-size: 1em;
/*    margin-bottom: 0.9em;*/
}
.include .cta-btn a {
    font-size: 1.2em;
}
.include.include-big {
    padding: 5% 0 7%;
}
    
.include.include-big .cp_box {
    display: block;

}
    .include.include-big .cp_discount {
    font-size: 3.5em;
        margin: 0.1em 0 0.2em 0;
        
}
    .include.include-big .txt_box {
        font-size: 0.8em;
        flex: 1.6;
    }
    
.include .goods_set {
    margin: 0 0 4% 0;
}
/*.include.include-big .goods_set {
    margin: 0 0 4.5% 0;
}*/
    
/*日付*/
.include.include-big .cp_discount + .cp_limit {
    font-size: 1.2em;
}


}

