@charset "UTF-8";

/*=================================
    OLES
    251205
=================================*/

/* products
=========================================*/
/* 商品一覧
-----------------------------------------*/
.p-products{
  text-align:justify;
  padding:200px clamp(20px, 5.21vw , 40px) 90px;
}
.p-products__inner{
  max-width:1362px;
  width:100%;
  margin:0 auto;
}
.p-products__inner .p-products__head{
  display: flex;
  justify-content: space-between;
  margin:0 auto 40px;
}
.p-products__inner .p-products__head h1{
  font-size: 40px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
}
.p-products__inner .p-products__head .p-products__head__menu{
  display: flex;
  justify-content: flex-end;  
}
.p-products__inner .p-products__head .p-products__head__menu li a{
  display:block;
  padding:0 16px 7px;
  position:relative;
  font-size: 18px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
}
.p-products__inner .p-products__head .p-products__head__menu li a::before{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:1px;
  background: #C7D0D1;
}
.p-products__inner .p-products__head .p-products__head__menu li a.is-current::before{
  height:2px;
  background: #768587;
}
.p-products .p-products__main__list{
  display: flex;
  gap:60px;
  margin:40px auto 0;
  flex-wrap: wrap;
  animation-name:fadeInAnime;
  animation-duration:1.5s;
  animation-delay:0.5s;
  animation-fill-mode:forwards;
  opacity:0;
}
.p-products .p-products__main__list .p-products__item{
  width:calc(calc(100% - 120px) / 3);
  display: flex;
  flex-direction: column;
}
.p-products .p-products__main__list .p-products__item__link{
  margin:0 0 24px;
}
.p-products .p-products__main__list .p-products__item__category{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-products .p-products__item__category .p-products__item__cat a{
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
  padding: 8px 13px;
  border-radius: 24px;
  border: 1px solid #646464;
  display:inline-block;
  line-height:1;
}
.p-products .p-products__item__category .p-products__item__division{
  font-size: 14px;
  font-style: italic;
  font-weight: 400;
  font-family: "STIX Two Text", serif !important;
  text-align:right;
}
.p-products .p-products__item__name{
  font-size: 18px;
  margin:15px 0;
  flex-grow: 1;
}
.p-products .p-products__item__foot .p-products__item__price{
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
}
.p-products .p-products__item__foot .p-products__item__tax{
  font-size: 11px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
  color:#646464;
}

@media only screen and (max-width: 768px){
  .p-products{
    padding: 120px 0 160px;
  }

  .p-products__inner .p-products__head{
    flex-wrap: wrap;
    gap:32px;
  }
  .p-products__inner .p-products__head__left,
  .p-products__inner .p-products__head__right{
    width:100%;
    padding:0 clamp(20px, 5.21vw, 40px);
    box-sizing:border-box;
  }
  .p-products__inner .p-products__head h1{
    font-size: 28px;
  }
  .p-products__inner .p-products__head .p-products__head__menu{
    width:100%;
    max-width:606px;
/*    gap:20px;*/
    justify-content: space-between;
    border-bottom:1px solid #C7D0D1;
  }
  .p-products .p-products__item__category .p-products__item__division{
    font-size:10px;
  }
  .p-products__inner .p-products__head .p-products__head__menu li a{
    font-size: 14px;
    padding: 0 0 7px;
  }
  .p-products__inner .p-products__head .p-products__head__menu li a::before{
    display:none;
  }
  .p-products__inner .p-products__head .p-products__head__menu li a.is-current::before{
    display:block;
  }

  .p-products .p-products__main__list {
    gap: 60px 6px;
    justify-content: center;
  }
  .p-products .p-products__main__list .p-products__item__link{
    margin: 0 0 12px;
  }
  .p-products .p-products__main__list .p-products__item__category{
    padding:0 12px;
  }
  .p-products .p-products__item__name{
    padding:0 12px;
  }
  .p-products .p-products__item__foot{
    padding:0 12px;
  }
  .p-products .p-products__main__list .p-products__item__content{
    padding:0 12px;
  }
  .p-products .p-products__main__list .p-products__item {
    width: calc(calc(100% - 6px) / 2);
    max-width:300px;
  }
  .p-products .p-products__item__name{
    font-size: 12px;  
  }
  .p-products .p-products__item__foot .p-products__item__price{
    font-size: 16px;  
  }
  .p-products .p-products__item__category .p-products__item__cat a{
    padding: 8px 8px;
    font-size: 10px;
  }

}


/* 商品詳細
-----------------------------------------*/
.p-productsDetail .p-productsDetail__body{
  width:100%;
  margin:0 auto;
  display: flex;
  flex-flow: row wrap;
  gap:80px clamp(20px, 5.21vw , 40px);
  text-align:justify;
}

/* 商品画像 */
.p-productsDetail .p-productsDetail__body .p-productsDetail__aside{
  width:47.91%;
}
.p-productsDetail .p-productsDetail__body .p-productsDetail__aside .img-wrap{
  display: flex;
  cursor:pointer;
}

/* カートまわり */

.p-productsDetail .p-productsDetail__body .p-productsDetail__cart{
  width:calc(100% - clamp(20px, 5.21vw , 40px) - 47.91%);
  box-sizing:border-box;
  padding:150px clamp(20px, 5.21vw , 40px) 0 10px;
  max-width: 900px;
}
.p-productsDetail .p-productsDetail__cart h1{
  font-size: 40px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
  line-height: 1.68;
  margin:0 0 1rem;
  text-align:left;
}
.p-productsDetail .p-productsDetail__cart .p-productsDetail__label{
  font-size: 18px;
  font-weight: 400;
  display:block;
  margin:0 0 12px;
}
.p-productsDetail .p-productsDetail__cart .p-productsDetail__contents,
.p-productsDetail .p-productsDetail__cart .p-productsDetail__tag{
  font-size: 14px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
}
.p-productsDetail .p-productsDetail__cart .p-productsDetail__radio__price{
  font-size: 24px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
}
.p-productsDetail .p-productsDetail__cart .productsDetail__radio__tax{
  font-size: 12px;
  font-weight: 400;
}


.p-productsDetail .p-productsDetail__cart .p-productsDetail__box{
  margin:60px auto;
  background: #F0F2F1;
  padding: 20px 24px;
}
.p-productsDetail .p-productsDetail__cart .p-productsDetail__box ul{
  margin: 0 0 0 1.2em;
}
.p-productsDetail .p-productsDetail__cart .p-productsDetail__box ul li{
  list-style: disc;
}
.p-productsDetail .p-productsDetail__cart .p-productsDetail__box p{
  font-weight: 400;
}
.p-productsDetail .c-button{
  border-radius: 52.3px;
  background: #343434;
  text-align:center;
  font-size: 20px;
  font-weight: 400;
  display:block;
  padding: 18px 24px;
  width:100%;
  color:#fff;
}

/* 併売商品
----------------------------------------------*/
#co-selling-product-view{
  margin:32px 0 0;
}
#co-selling-single,
#co-selling-recurring,
#co-selling-relations{
  display:none !important;
}
#co-selling-single.active,
#co-selling-recurring.active{
  display:block !important;
}

.co-selling-tab{
  justify-content: space-between;
  align-items: flex-start;
}
.co-selling-tab:nth-of-type(1){
  padding:0 0 28px;
}
.co-selling-tab:nth-of-type(2){
  border-top:1px solid #C7D0D1;
  padding:28px 0 0;
}
.co-selling-tab a{
  display:flex;
  width:100%;
  justify-content: space-between;
  align-items: flex-start;
}
.co-selling-tab a input[type=radio] {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #768587;
  position:relative;
  margin: 0.6rem 0 0;
  z-index:-1;
}
.co-selling-tab a input[type="radio"]:checked::before{
  content:"";
  position:absolute;
  width: 10px;
  height: 10px;
  left:3px;
  top:3px;
  background:#646464;
  border-radius: 50%;
}
.co-selling-tab a .co-selling-l{
  display:flex;
  align-items: flex-start;
  gap:1rem;
}
.co-selling-tab a .co-selling-l .name{
  font-size: 20px;
  font-weight: 400;
}
.co-selling-tab a .co-selling-l .attention{
  position:relative;
  font-size: 14px;
  font-weight: 400;
  color:#646464;
  width:10em;
  display:block;
  margin-top:0.5em;
}
.co-selling-tab a .co-selling-l .attention::after{
  content:"";
  width:1em;
  height:1.8em;
  margin-left:0.5em;
  background:url(../img/ico_help.svg) no-repeat center center;
  background-size:contain;
  display: inline-block;
  position: relative;
  vertical-align: bottom;

}
.co-selling-tab .co-selling-l .attention .tips{
  padding: 20px 24px 28px 24px;
  background:#646464;
  color: #fff;
  position:absolute;
  left:9em;
  top:0;
  z-index:5;
  display:none;
  width:310px;
  box-sizing:border-box;
}
.co-selling-tab .co-selling-l .attention .tips .txtR::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:1px;
  background:#fff;
  display:block;
}
.co-selling-tab .co-selling-l .attention:hover .tips{
  display:block;
}
.co-selling-tab .co-selling-r {
  display:flex;
  justify-content: flex-end;
  align-items: center;
  gap:1rem;
}
.co-selling-tab .co-selling-r .off-info{
  color: #BA4444;
  font-size: 14px;
  font-weight: 400;
  order: 1;
}
.co-selling-tab .co-selling-r .co-list_price_include_tax{
  font-size: 24px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif !important;
  order: 2;

}
.co-selling-tab:nth-of-type(1) .co-selling-r .co-list_price_include_tax{
  color: #BA4444;
}
.co-selling-tab .co-selling-r .co-list_price_include_tax span{
  font-size: 12px;
  color:#646464;
  
}

/* Recommended For */

.p-productsDetail .p-productsRecommended__box h3{
  margin:120px auto 20px;
  font-size: 20px;
  font-weight: 400;
  font-family: "STIX Two Text", serif !important;
  line-height:1;
  padding:2rem 0 0.75rem;
  border-top: 1px solid #C7D0D1;
}
.p-productsDetail .p-productsRecommended__box h4{
  font-size: 18px;
  font-weight: 400;
  margin:40px auto 0;
}
.p-productsDetail .p-productsRecommended__box li{
  font-size: 18px;
  font-weight: 400;
  background:url(../img/ico_check.svg) no-repeat top 0.2em left;
  background-size:auto 1.4em;
  padding:0 0 0 2em;
  margin-top:20px;
}
.p-productsDetail .p-productsRecommended__box .check02 li{
  background:url(../img/ico_check02.svg) no-repeat top 0.2em left;
  background-size:auto 1.4em;
}
.p-productsDetail .p-productsRecommended__box .line.flex{
  margin:20px auto 0 0;
  display: flex;
  align-items: center;
  max-width:650px;
}
.p-productsDetail .p-productsRecommended__box .line .tit{
  font-size: 18px;
  font-weight: 400;
  margin-right:1em;
  white-space:nowrap;
}
.p-productsDetail .p-productsRecommended__box .line img{
  width:calc(100% - 72px);
  max-width:516px;
}

.p-productsDetail .p-productsRecommended__box .line .inner.flex{
  display: flex;
  justify-content: flex-end;
  width:calc(100% - 18px * 5);
  align-items: center;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .txt.txtR{
  width:4em;
  font-weight: 400;
  margin-right:1em;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .txt.txtL{
  font-weight: 400;
  width:3em;
  margin-left:1em;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .line-box{
  width:calc(100% - 9rem );
  display: flex;
  align-items: center;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .line1,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .line2{
  position:relative;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .w50{
  width:50%;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .lS::before,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .rS::after,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .lL::before,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .rL::after{
  content:"";
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  display:block;
  background:#768587;
  border-radius:50%;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .lS::before,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .rS::after{
  width:12px;
  height:12px;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .lS::before{
  left:-6px;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .rS::after{
  right:-6px;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .lL::before,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .rL::after{
  width:32px;
  height:32px;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .lL::before{
  left:-6px;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .rL::after{
  right:-6px;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .line1 span,
.p-productsDetail .p-productsRecommended__box .line .inner.flex .line2 span{
  display:block;
  width:100%;
  height:50%;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .solid span{
  border-bottom:2px solid #768587;
}
.p-productsDetail .p-productsRecommended__box .line .inner.flex .dash span{
  border-bottom:1px dashed #768587;
}

/* 商品説明 */
.p-productsDetail .p-productsDetail__main h3{
  font-size: 20px;
  font-weight: 400;
  border-top: 1px solid #C7D0D1;
  padding:1.5rem 0;
}
.p-productsDetail .p-productsDetail__main h3 span{
  font-family: "STIX Two Text", serif !important;
  margin-right:2em;
}

.p-productsDetail .p-productsDetail__main .good-to-know{
  display: flex;
  align-items: center;
  gap:60px;
}
.p-productsDetail .p-productsDetail__main .good-to-know .img{
  width:47.91%;
  aspect-ratio: 46 / 33;
  background:url(../img/product/good_to_know.jpg) no-repeat center center;
  background-size:cover;
}
.p-productsDetail .p-productsDetail__main .good-to-know .txt{
  padding-right:clamp(20px, 5.21vw, 40px);
  max-width: 900px;
  width: calc(100% - 47.91% - 60px);
}

.p-productsDetail .p-productsDetail__main .good-to-know .txt h3{
  border-top: 0;
  padding:0;
}
.p-productsDetail .p-productsDetail__main .good-to-know .txt h4{
  font-size: 24px;
  font-weight: 500;
  margin:3rem 0 2rem;
}
.p-productsDetail .p-productsDetail__main .good-to-know .txt p{
  font-weight: 400;
}
.p-productsDetail .p-productsDetail__main .good-to-know .txt p.att{
  margin-top:1.5rem;
  font-size: 10px;
  font-weight: 400;
  text-align:right;
}
.p-productsDetail .p-productsDetail__main .features{
  padding:0 clamp(20px, 5.21vw, 40px);
  margin:80px auto;
  display: flex;
  flex-wrap: wrap;
  gap:40px 24px;
  max-width:1920px;
  box-sizing: content-box;
}

.p-productsDetail .p-productsDetail__main .features .chara-toggle ul li{
  font-size: 16px;
}
.p-productsDetail .p-productsDetail__main .features h3{
  width:100%;
  padding: 1.5rem 0 0;
}
.p-productsDetail .p-productsDetail__main .features .chara-toggle{
  width:100%;
}
.p-productsDetail .p-productsDetail__main .features .chara-toggle ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  border-radius: 40px;
  border: 1px solid #F0F2F1;
  background: #F0F2F1;
  max-width:380px;
  margin:0 auto;
}
.p-productsDetail .p-productsDetail__main .features .chara-toggle ul li{
  width:50%;
  color:#768587;
  font-size: 16px;
  font-weight: 500;
  font-family: "Instrument Sans", sans-serif !important;
  cursor:pointer;
  padding:18px 0;
  text-align:center;
  line-height:1;
}
.p-productsDetail .p-productsDetail__main .features .chara-toggle ul li.active{
  border-radius: 40px;
  background: #fff;
  color:#343434;
}
.chara-list{
  display:none;
}
.chara-list.active{
  display: flex;
  gap:40px 24px;
}

.p-productsDetail .p-productsDetail__main .features .chara{
  width:calc(calc(100% - 48px) / 3);
}
.p-productsDetail .p-productsDetail__main .features .chara:nth-of-type(2) img{
  animation-delay: 0.3s;
}
.p-productsDetail .p-productsDetail__main .features .chara:nth-of-type(3) img{
  animation-delay: 0.6s;
}
.p-productsDetail .p-productsDetail__main .features .chara h4{
  font-size: 20px;
  font-weight: 500;
  margin:40px 0 24px;
}
.p-productsDetail .p-productsDetail__main .features .chara p{
  font-size: 14px;
  font-weight: 400;
}

.p-productsDetail .p-productsDetail__main .formula{
  background: #F0F2F1;
  padding:60px clamp(20px, 5.21vw, 40px) 120px;
}
.p-productsDetail .p-productsDetail__main .formula .inner{
  max-width:1920px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap:0 clamp(60px, 8.33vw, 120px);
}
.p-productsDetail .p-productsDetail__main .formula.formula-toggle .inner{
  display:none;
}
.p-productsDetail .p-productsDetail__main .formula.formula-toggle .inner.active{
  display: flex;
}
.p-productsDetail .p-productsDetail__main .formula h3{
  width:100%;
}
.p-productsDetail .p-productsDetail__main .formula img{
  width:43.6%;
  max-width:593px;
  margin:0 auto 0 0;
}
.p-productsDetail .p-productsDetail__main .formula .txt{
  width:calc(100% - 43.6% - clamp(60px, 8.33vw, 120px) - clamp(40px, 5.55vw, 80px));
  margin-left:clamp(40px, 5.55vw, 80px);
}
.p-productsDetail .p-productsDetail__main .formula .txt h4{
  font-size: 20px;
  font-weight: 500;
  position:relative;
}
.p-productsDetail .p-productsDetail__main .formula .txt h4::before{
  position:absolute;
  content:"";
  width:16px;
  height:1px;
  background:#C7D0D1;
  left:-33px;
  top:18px;
}
.p-productsDetail .p-productsDetail__main .formula .txt p{
  font-weight: 400;
  margin:24px 0 0;
}
.p-productsDetail .p-productsDetail__main .formula .txt p + h4{
  margin:60px 0 0;
}
.p-productsDetail .p-productsDetail__main .ingredients {
  display: flex;
  padding:0 clamp(20px, 5.21vw, 40px);
  margin:80px auto;
  gap:60px;
  max-width:1920px;
  box-sizing: content-box;
  align-items: flex-start;
}
.p-productsDetail .p-productsDetail__main .common,
.p-productsDetail .p-productsDetail__main .fragrance{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width:calc(calc(100% - 60px) / 2);
  align-items: flex-start;
}
.p-productsDetail .p-productsDetail__main .ingredients h3{
  width:100%;
  font-size: 16px;
  font-weight: 400;
}
.p-productsDetail .p-productsDetail__main .ingredients h4{
  font-size: 18px;
  font-weight: 500;
}
.p-productsDetail .p-productsDetail__main .ingredients p{
  font-size: 14px;
  font-weight: 400;
  margin-top:1em;
}
.p-productsDetail .p-productsDetail__main .ingredients p + h4{
  margin-top:40px;
}
.p-productsDetail .p-productsDetail__main .common img{
  width:min(37.7% , 245px);
  
}
.p-productsDetail .p-productsDetail__main .common .txt{
  width:calc(100% - min(37.7% , 245px) - clamp(20px, 5.21vw, 40px));
}
.p-productsDetail .p-productsDetail__main .fragrance img{
  width:min(54.6% , 356px);
}
.p-productsDetail .p-productsDetail__main .fragrance .txt{
  width:calc(100% - min(54.6% , 356px));
}

.p-productsDetail .p-productsDetail__main .info{
  max-width:886px;
  margin:0 auto 80px;
  box-sizing: content-box;
  padding: 0 clamp(20px, 5.21vw, 40px);
}
.p-productsDetail .p-productsDetail__main .info h4.flag-a{
  cursor:pointer;
  font-weight: 400;
  position: relative;
  border-top: 1px solid #C7D0D1;
  padding:1.5rem 16px;
}
.p-productsDetail .p-productsDetail__main .info h4.flag-a span{
  position: absolute;
  width: 19px;
  height: 19px;
  display: block;
  transition: 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
  will-change: transform;
  right:16px;
  top:30px;
}
.p-productsDetail .p-productsDetail__main .info h4.flag-a span:hover {
  transform: scale(0.92);
}
.p-productsDetail .p-productsDetail__main .info h4.flag-a span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 1px;
  background: #768587;
  display: block;
}
.p-productsDetail .p-productsDetail__main .info h4.flag-a span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 1px;
  height: 100%;
  background: #768587;
  display: block;
  transition: 0.3s cubic-bezier(0.76, 0, 0.24, 1);
  will-change: transform;
}
.p-productsDetail .p-productsDetail__main .info h4.flag-a.active span:after {
  height: 0;
}
.p-productsDetail .p-productsDetail__main .info .acc-box{
  padding:0 16px 40px;
  display:none;
  overflow:hidden;
}
.p-productsDetail .p-productsDetail__main .info .acc-box.active{
  display:block;
}
.p-productsDetail .p-productsDetail__main .info .acc-box dt{
  font-size: 14px;
  font-weight: 600;
  margin-top:12px;
}
.p-productsDetail .p-productsDetail__main .info .acc-box p,
.p-productsDetail .p-productsDetail__main .info .acc-box dd{
  font-size: 14px;
  font-weight: 400;
}
.p-productsDetail .p-productsDetail__main .info .acc-box p + p{
  margin-top:1.8em;
}
.p-productsDetail .p-productsDetail__main .info .acc-box h5{
  font-size: 14px;
  font-weight: 600;
  margin-bottom:0.5em;
}
.p-productsDetail .p-productsDetail__main .info .acc-box p + h5{
  margin-top:1.8em;
}

               
@media only screen and (max-width: 768px){
  .p-productsDetail .p-productsDetail__main h3{
    font-size:14px;
  }
  .p-productsDetail .p-productsDetail__body{
    gap: 40px clamp(20px, 5.21vw, 40px);
  }
  .p-productsDetail .p-productsDetail__body .p-productsDetail__aside{
    width:100%;
  }
  .p-productsDetail .p-productsDetail__body .p-productsDetail__aside #sub-images-view{
    display:none;
  }
  .p-productsDetail .p-productsDetail__body .p-productsDetail__cart{
    width: 100%;
    padding: 0 clamp(20px, 5.21vw, 40px);
  }
  .p-productsDetail .p-productsDetail__cart h1{
    font-size: 24px;
  }
  .p-productsDetail .p-productsDetail__cart .p-productsDetail__label{
    font-size: 12px;
  }
  .p-productsDetail .p-productsDetail__cart .p-productsDetail__contents,
  .p-productsDetail .p-productsDetail__cart .p-productsDetail__tag{
    font-size: 12px;
  }
  .p-productsDetail .p-productsDetail__cart .p-productsDetail__radio__price{
    font-size: 18px;
  }
  .p-productsDetail .p-productsDetail__cart .p-productsDetail__box{
    margin: 30px auto;
    padding: 12px 16px;
  }
  .p-productsDetail .p-productsRecommended__box h3{
    font-size: 14px;
  }
  .p-productsDetail .p-productsRecommended__box h4{
    font-size: 16px;
  }
  .p-productsDetail .p-productsRecommended__box li{
    font-size: 14px;
  }

/*
  .p-productsDetail .p-productsRecommended__box .line.flex{
    flex-wrap: wrap;
    gap:5px;
  }
*/
  .p-productsDetail .p-productsRecommended__box .line .tit{
    font-size: 14px;
  }
  .p-productsDetail .p-productsRecommended__box .line img{
    max-width: 286px;
  }
  .p-productsDetail .p-productsRecommended__box .line .inner.flex{
    width:100%;
  }
  .p-productsDetail .p-productsRecommended__box .line .inner.flex .txt.txtR{
    width: 4em;
  }
  .p-productsDetail .p-productsRecommended__box .line .inner.flex .line-box{
    width: calc(100% - 7em);
  }

  .p-productsDetail .p-productsDetail__main .good-to-know{
    gap: 40px;
    flex-wrap: wrap;
    margin:40px auto 0;
  }
  .p-productsDetail .p-productsDetail__main .good-to-know .txt{
    width:100%;
    order: 1;
    box-sizing: border-box;
    padding: 0 clamp(20px, 5.21vw, 40px);
  }
  .p-productsDetail .p-productsDetail__main .good-to-know .txt h4{
    font-size: 20px;
    margin: 2em 0 1.2em;
  }
  .p-productsDetail .p-productsDetail__main .good-to-know .img{
    width:100%;
    order: 2;
    aspect-ratio: 375 / 400;
  }
  .chara-list.active{
    flex-wrap: wrap;
  }
  .p-productsDetail .p-productsDetail__main .features .chara-list .chara,
  .p-productsDetail .p-productsDetail__main .features .chara{
    width:100%;
  }
  .p-productsDetail .p-productsDetail__main .features .chara:nth-of-type(2) img ,
  .p-productsDetail .p-productsDetail__main .features .chara:nth-of-type(3) img {
    animation-delay: 0;
  }
  .p-productsDetail .p-productsDetail__main .features .chara h4{
    font-size: 18px;
    margin: 24px 0 16px;
  }
  .p-productsDetail .p-productsDetail__main .formula{ 
    padding: 40px clamp(20px, 5.21vw, 40px) 80px;
  }
  .p-productsDetail .p-productsDetail__main .formula .inner{
    gap:60px;
  }
  .p-productsDetail .p-productsDetail__main .formula .txt{
    width:100%;
    margin-left:18px;
  }
  .p-productsDetail .p-productsDetail__main .formula .txt h4{
    font-size: 16px;
  }
  .p-productsDetail .p-productsDetail__main .formula .txt h4::before{
    position:absolute;
    content:"";
    width:10px;
    height:1px;
    background:#C7D0D1;
    left:-18px;
    top:14px;
  }

  .p-productsDetail .p-productsDetail__main .formula img{
    width:100%;
  }
  .p-productsDetail .p-productsDetail__main .ingredients{
    gap:40px;
    flex-wrap: wrap;
  }
  .p-productsDetail .p-productsDetail__main .common,
  .p-productsDetail .p-productsDetail__main .fragrance{
    width:100%;
    gap:40px;
  }
  .p-productsDetail .p-productsDetail__main .common .txt,
  .p-productsDetail .p-productsDetail__main .fragrance .txt,
  .p-productsDetail .p-productsDetail__main .common img,
  .p-productsDetail .p-productsDetail__main .fragrance img{
    width:100%;
  }
  .p-productsDetail .p-productsDetail__main .info{
    padding:0 clamp(20px, 5.21vw , 40px);
    box-sizing:border-box;
  }


  .co-selling-tab a .co-selling-l{
    align-items: center;
  }
  .co-selling-tab a .co-selling-l .name {
    font-size: 14px;
  }
  .co-selling-tab a .co-selling-l .attention {
    font-size: 12px;
  }

  .co-selling-tab a input[type=radio] {
    margin: 0;
  }
  .co-selling-tab .co-selling-r{
    display:block;
    text-align: right;
  }
  .co-selling-tab .co-selling-r .co-list_price_include_tax{
    font-size: 18px;
  }
  .co-selling-tab .co-selling-r .off-info {
    font-size: 11px;
  }
  .co-selling-tab .co-selling-l .attention .tips{
    padding: 10px 14px 20px 14px;
    width: 50vw;
  }
}

/* form
-----------------------------------------*/
.c-textbox + .c-form__item,
.c-form__item + .c-form__item,
.c-form__item + #view-payment-information >.c-form__item{
  margin-top:32px !important;
}
.c-textbox{
  margin-top:40px;
}
label + .c-textbox{
  margin-top:16px;
}
p + .c-textbox,
p + .c-form__item{
  margin-top:60px;
}
input[type=hidden] + .c-textbox,
.c-label + .c-textbox,
.c-label + .c-selectbox,
.c-label + .c-selectbox__wrap{
  margin-top:16px;
}
.c-textbox p{
  margin-bottom:1rem;
}

.c-textbox--col2{
  display: flex;
  flex-wrap: wrap;
  gap:16px 12px;
}
.c-textbox__input {
  display: inline-block;
  width: 100%;
  padding: 17px 16px;
  background: #fff;
  border: 1px solid #768587;
  line-height: 1;
  font-size:14px;
  border-radius: 4px;
}
.c-textbox--col2 .c-textbox__input {
  width: calc( calc(100% - 12px) / 2);
}
.c-textarea {
  display: block;
  width: 100%;
  padding: 17px 16px;
  background: #fff;
  border: 1px solid #768587;
  line-height: 1;
  font-size:14px;
  border-radius: 4px;
  height:240px;
}
.c-selectbox{
  position:relative;
}
.c-selectbox__wrap{
}
.c-selectbox__wrap--col2,
.c-selectbox__wrap--col3{
  display: flex;
  flex-wrap: wrap;
  gap:16px 12px;
}
.c-selectbox__wrap--col2 .c-selectbox{
  width: calc( calc(100% - 12px) / 2);
}
.c-selectbox__wrap--col3 .c-selectbox{
  width: calc( calc(100% - 24px) / 3);
}

.c-selectbox__input,
.c-selectbox select {
  width: 100%;
  padding: 20px 16px;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #768587;
  line-height: 1;
  font-size:14px;
  border-radius: 4px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.c-selectbox::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 7px;
  height: 18px;
  pointer-events: none;
  background: url(../img/ico_updown.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.c-selectbox label + select{
  margin-top:16px;
}
input[type=radio] {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #768587;
  position:relative;
  margin: 0.6rem 0 0;
}
input[type=radio]:checked::before{
  content:"";
  position:absolute;
  width: 10px;
  height: 10px;
  left:3px;
  top:3px;
  background:#646464;
  border-radius: 50%;
}
.c-button{
  justify-content: flex-end;
  text-decoration:none !important;
}
.c-button-box{
  margin-top:60px;
}
.c-button__text{
  font-size: 16px;
  font-weight: 400;
  font-family: "Instrument Sans", sans-serif;
  padding:20px 24px;
  line-height:1;
  color:#646464;
  border:1px solid #646464;
  border-radius:52px;
  width:232px;
  box-sizing:border-box;
  text-align:center;
}

.c-checkbox{
  border: 1px solid #768587;
  border-radius:4px;
  margin-right:1rem;
  display:inline-block;
  vertical-align: text-top;
  width:1.4rem;
  height:1.4rem;
  
}
.c-checkbox:checked {
    background-color: #a9b0a9;
}
.c-checkbox:before {
  display:none;
}
.c-checkbox:checked:before {
  position: absolute;
  top: 1px;
  left: 7px;
  width: 10px;
  height: 15px;
  content: "";
  border:0;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(44deg);
  transform: rotate(44deg);
  display:block;
}
@media only screen and (max-width: 768px){
.c-button{
    justify-content: center;
  }
}


/* review-box
-----------------------------------------*/
.review-box{
  padding:0 clamp(20px, 5.21vw, 40px) 100px;
  display: flex;
  gap:clamp(40px, 7.81vw , 60px);
  text-align:justify;
}
.review-box .review-title{
  width:300px;
}
.review-box .review-cts{
  width:calc(100% - 300px - clamp(40px, 7.81vw , 60px));
}
.review-box .review-cts .inner{
  max-width:1010px;
  width:100%;
  margin:0 auto;
  padding:56px 0 0;
}
.review-box .review-title h2{
  font-size: 18px;
  font-weight: 400;
  margin:0 0 26px;
}
.review-box .review-title h2 span{
  font-size: 40px;
}
.review-box .review-title .total .average{
  font-size: 20px;
  font-weight: 500;
}
.review-box .review-title .num{
  font-size: 14px;
  font-weight: 400;
}

.review-box .review-cts .item + .item{
  margin-top:46px;
}
.review-box .review-cts .item .info{
  position:relative;
}
.review-box .review-cts .item .info::before{
  content:"";
  width:100%;
  height:1px;
  background:#C7D0D1;
  position:absolute;
  top:50%;
  right:0;
  display:block;
  z-index:-1;
}
.review-box .review-cts .item .info span{
  display:inline-block;
  background:#fff;
  padding-right:20px;
}
.review-box .review-cts .item .info span.star{
  letter-spacing:0.05em;
}
.review-box .review-cts .item .info span.name{
  font-size: 12px;
  font-weight: 400;
}
.review-box .review-cts .item h3{
  margin:40px auto 20px;
  font-size: 18px;
  font-weight: 400;  
}
.review-box .review-cts .item p{
  font-size: 14px;
  font-weight: 400;
}
.review-box .review-form{
  margin:40px auto 0;
  padding:20px 16px 40px;
  border-top:1px solid #C7D0D1;
  border-bottom:1px solid #C7D0D1;
}
.review-box .review-form h3{
  font-size: 16px;
  font-weight: 400;
  position: relative;
  cursor:pointer;
}
.review-box .review-form h3.flag-a span{
  top: 8px;
}
.review-box .review-form .c-button__text{
  margin:24px 0 0 auto;
  display: block;
}
.review-box .review-form label{
  margin:32px 0 16px;
  line-height:1;
  font-size: 18px;
}
.review-box .c-selectbox__wrap--col2 > div{
  width:calc(calc(100% - 12px) / 2);
}
.review-box .review-form .acc-box{
  display:none;
}
@media only screen and (max-width: 768px){
  .review-box{
    display: block;
  }
  .review-box .review-title{
    width:100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .review-box .review-cts{
    width:100%;
  }
  .review-box .review-cts .inner{
    width:100%;
    padding:60px 0 0;
  }
  .review-box .review-title h2{
    font-size: 14px;
    margin:0;
  }
  .review-box .review-title h2 span{
    font-size: 32px;
  }
  .review-box .review-title .total .average{
    font-size: 18px;
  }
  .review-box .review-title .num{
    font-size: 12px;
  }

  .review-box .review-cts .item + .item{
    margin-top:32px;
  }

  .review-box .review-cts .item .info span{
    padding-right:16px;
  }
  .review-box .review-cts .item h3{
    margin:24px auto 16px;
  }
  .review-box .review-cts .item p{
    font-size: 13px;
  }
  .review-box .review-form{
    margin:40px auto 0;
    padding:20px 16px 40px;
  }
  .review-box .review-form h3{
    font-size: 16px;
  }
  .review-box .review-form .c-button__text{
    margin:24px auto 0;
  }
  .review-box .review-form label{
    margin:32px 0 16px;
    line-height:1;
    font-size: 14px;
  }
  .review-box .c-selectbox__wrap--col2 > div{
    width:calc(calc(100% - 12px) / 2);
  }

}

/* product-slider
-----------------------------------------*/
.product-slider{
  background:#F0F2F1;
  padding:80px 0;
}
.product-slider h2{
  font-size: 28px;
  font-weight: 400;
  line-height:1;
  margin:0 auto 80px;
}
.product-slider .outer{
  position:relative;
}
.product-slider .inner{
  overflow:hidden;
  overflow-x:scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.product-slider .inner::-webkit-scrollbar {
  display: none;
}
.product-slider .inner ul{
  margin:0 clamp(20px, 5.21vw, 40px);
  width:fit-content;
  display: flex;
  -webkit-overflow-scrolling: touch;
}
.product-slider .inner li{
  margin-right:20px;
  flex-shrink: 0;
  flex-shrink: 0;
}
.product-slider .inner li:last-of-type{
  margin-right:0;
}
.product-slider .inner li a{
  display:block;
  width:412px;
  box-sizing:border-box;
  padding:30px 38px 48px;
  background:#fff;
}
.product-slider .inner li a img{
  max-width:336px;
  width:100%;
  margin:0 auto;
}
.product-slider .inner li a p{
  text-align:left;
}
.product-slider .inner li a .name{
  line-height: 1.6;
  letter-spacing:0.04em;
  margin:24px auto 24px;
}
.product-slider .inner li a .cost{
  line-height: 1;
  letter-spacing:0.08em;
  font-size: 12px;
  font-weight: 400;
  color:#646464;
}
.product-slider .inner li a .cost span{
  font-size: 18px;
  color:#343434;
  padding-right:0.2em;
}
.product-slider .slide-arrow{
  width:44px;
  height:44px;
  background:url(../img/ico_arrow02.svg) no-repeat center center;
  background-size:contain;
  position:absolute;
  top:calc(50% - 22px);
  opacity:0;
  transition: opacity 0.3s ease-in-out;
  z-index:3;
  cursor:pointer;
}
.product-slider .inner:hover .slide-arrow.prev-arrow.on,
.product-slider .inner:hover .slide-arrow.next-arrow{
  opacity:1;
}
.product-slider .inner:hover .slide-arrow.next-arrow.off{
  opacity:0 !important;
}
.product-slider .slide-arrow.next-arrow{
  right:45px;
}
.product-slider .slide-arrow.prev-arrow{
  left:45px;
  transform: scale(-1, 1);
}

.product-slider .link{
  margin:60px auto 0;
}
.product-slider .link a{
  border-radius: 27px;
  border: 1px solid #C7D0D1;
  background:#FFF;
  display:block;
  width:250px;
  padding:19px;
  font-size: 16px;
  margin:0 auto;
  font-weight: 400;
  line-height:1;
  letter-spacing:0.02em;
}

@media only screen and (max-width: 768px){
  .product-slider{
    padding:60px 0 80px;
  }
  .product-slider h2{
    font-size: 28px;
    margin:0 auto 40px;
  }
  .product-slider .inner li{
    margin-right:8px;
  }
  .product-slider .inner li a{
    width:240px;
    padding:40px 24px 32px;
  }
  .product-slider .inner li a .name{
    margin:0 auto 16px;
    height:calc(1em * 1.6 * 3);
  }
  .product-slider .inner li a .cost{
    font-size: 14px;
  }
  .product-slider .inner li a .cost span{
    font-size: 10px;
  }
  .product-slider .link{
    margin:40px auto 0;
  }
  .product-slider .link a{
    width:200px;
  }
  .product-slider .slide-arrow{
    width:36px;
    height:36px;
    top:calc(50% - 18px);
  }
  .product-slider .slide-arrow.next-arrow{
    right:20px;
  }
  .product-slider .slide-arrow.prev-arrow{
    left:20px;
  }
}


