/* Common */
:root{
  --color-bg-voice: #FEFBF1;
}
html{
  scroll-padding-top: unset;
}
#productdetail{
  margin-top: 6rem;
}
.c-breadcrumb__text{
  white-space: nowrap;
}
.global-contents__inner{
  padding-bottom: 0
}

.placeholder{
  display: grid;
  place-content: center;
  width: 100%;
  height: 20rem;
  background-color: var(--color-bg-voice);
  font-size: 2rem;
  text-align: center;
  padding-inline: 2rem;
}

  /* Slider */
.productdetail__imagearea .swiper-slide{
  border-radius: 4px;
  overflow: hidden;
}
.productdetail__imagearea .thumbnail-slider .swiper-slide{
  opacity: 0.3;
  transition: opacity var(--transition-default);
}
.productdetail__imagearea .thumbnail-slider .swiper-slide.swiper-slide-thumb-active{
  opacity: 1;
  border: unset;
}
.productdetail__imagearea .product__icon--9{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 5.6rem;
}
.productdetail__imagearea .swiper-button{
  width: 4rem;
  height: 4rem;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 50%;
  border: 1px solid #dddddd;
  display: grid;
  place-content: center;
}
.productdetail__imagearea .swiper-button-prev::after,
.productdetail__imagearea .swiper-button-next::after{
  content: '';
  width: 4rem;
  height: 4rem;background-repeat: no-repeat;
  background-size: contain;
}
.productdetail__imagearea .swiper-button-prev::after{
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2239%22%20height%3D%2239%22%20viewBox%3D%220%200%2039%2039%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_32217%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2032217%22%20transform%3D%22translate(1170%203750)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_618%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%20618%22%20cx%3D%2219.5%22%20cy%3D%2219.5%22%20r%3D%2219.5%22%20transform%3D%22translate(-1170%20-3750)%22%20fill%3D%22none%22%20opacity%3D%220.8%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_70881%22%20data-name%3D%22%E3%83%91%E3%82%B9%2070881%22%20d%3D%22M21.662%2C25.369%2C15.26%2C19.5l6.4-5.869.676.737L16.74%2C19.5l5.6%2C5.131Z%22%20transform%3D%22translate(-1170.5%20-3750.5)%22%20fill%3D%22%23686868%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E')
}
.productdetail__imagearea .swiper-button-next::after{
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2239%22%20height%3D%2239%22%20viewBox%3D%220%200%2039%2039%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_32218%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2032218%22%20transform%3D%22translate(-1131%20-3711)%20rotate(180)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_618%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%20618%22%20cx%3D%2219.5%22%20cy%3D%2219.5%22%20r%3D%2219.5%22%20transform%3D%22translate(-1170%20-3750)%22%20fill%3D%22none%22%20opacity%3D%220.8%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_70881%22%20data-name%3D%22%E3%83%91%E3%82%B9%2070881%22%20d%3D%22M21.662%2C25.369%2C15.26%2C19.5l6.4-5.869.676.737L16.74%2C19.5l5.6%2C5.131Z%22%20transform%3D%22translate(-1170.5%20-3750.5)%22%20fill%3D%22%23686868%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E')
}
.productdetail__imagearea .swiper-button-prev{
  left: -2rem;
}
.productdetail__imagearea .swiper-button-next{
  right: -2rem;
}
.productdetail__imagearea .swiper-horizontal > .swiper-pagination-bullets,
.productdetail__imagearea .swiper-pagination-bullets.swiper-pagination-horizontal,
.productdetail__imagearea .swiper-pagination-custom,
.productdetail__imagearea .swiper-pagination-fraction{
  bottom: 2rem;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.7rem;
}
.productdetail__imagearea .swiper-horizontal >.swiper-pagination-bullets .swiper-pagination-bullet,
.productdetail__imagearea .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
  margin: 0;
}
.productdetail__imagearea .swiper-pagination-bullet{
  background-color: var(--color-primary);
  opacity: 0.29;
}
.productdetail__imagearea .swiper-pagination-bullet.swiper-pagination-bullet-active{
  opacity: 1;
}

/* Description */
.productdetail .product__favorite--add{
  position: static;
}
.productdetail .product__favorite--icon.added path{
  fill: #333333;
}
.productdetail__descarea .product__desc--icon{
  gap: .5rem;
  margin-block: 0 2rem;
}
.productdetail__descarea .product__desc--name{
  font-weight: var(--fw-regular);
  font-size: 2rem;
  line-height: 1.4;
  font-family: var(--font-ja);
}
.product__item-amount{
  margin-top: 2rem;
  display: flex;
  gap: 1ch;
}
.product__item-amount dt,
.product__item-amount dd{
  font-size: 1.2rem;
  line-height: 1.4;
}
.product__item-category,
.product__item-classification{
  font-size: 1.2rem;
  line-height: 1.4;
  color: #BBBBBB;
  margin-top: .8rem;
}
.product__item-classification{
  margin-top: .8rem;
}

.product__share-area{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  margin-top: 1.5rem;
}
.product__share-area .c-review-anchor-text{
  font-size: 1.1rem;
  display:none;
}
.product__share-area .revico-read-more-review{
  font-size: 1.1rem;
}
.product__share-area .revico-widget a.revico-read-more-review{
  font-size: 1.1rem;
  margin-top: 0;
  margin-left: 2rem;
  /* display:none!important */
}
.product__share-area .revico-star-block--title{
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: .05em;
  color: var(--color-pager-gray);
  font-family: var(--font-en);
  font-weight: var(--fw-regular);
  margin-top: 0.4rem;;
}
.product__share-area .revico-star-block--total{
  display: none;
}
.product__share-area .review{
  display: flex;
  align-items: center;
  gap: 2rem;
}
/* .product__share-area .review .c-review-anchor-text{
  font-size: 1.1rem;
  display:none;
} */
/* .review:has(.revico-star) .c-review-anchor-text, */
/* #productdetail:not(:has(.revico-review-comment-row-no-review)) .c-review-anchor-text{
  display: block;
} */
#productdetail:has(.revico-multicomment-top):not(:has(.revico-review-comment-row-no-review)) .c-review-anchor-text {
  display: block;
}
#productdetail:has(.revico-multicomment-top):not(:has(.revico-review-comment-row-wrapper)) .c-review-anchor-text {
  display: none;
}
.productdetail .product__favorite--icon{
  width: unset;
}
.productdetail .product__favorite--add{
  border: unset;
  border-radius: unset;
  width: 2.2rem;
  height: auto;
  padding: 0;
}
.product__favorite--icon.added #favorite-2{
  fill: #333333;
}
.p-product-sns{
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  /* transition: opacity 0.2s ease, visibility 0.2s ease; */
  position: absolute;
  right: 0;
  background-color: var(--color-gray-100);
  box-shadow: 0 4px 8px rgba(0,0,0,.25);
  padding: 2rem;
  z-index: 2;
}
.p-product-sns.is-open {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}
.p-product-sns.is-below {
  top: calc(100% + 0.8rem);
  bottom: auto;
}
.p-product-sns.is-above {
  bottom: calc(100% + 0.8rem);
  top: auto;
}
.p-product-sns p{
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  margin-bottom: 1.6rem;
}
.productdetail .product__share--list{
  gap: .5rem;
  
}
.share-icons{
  display: flex;
  align-items: baseline;
  gap: .8rem;
  position: relative;
}

.product__desc--price-area{
  display: flex;
  gap: 1rem;
  flex-direction: column;
}
.product__price--label{
  font-size: 1.3rem;
  line-height: 1;
}
.product__price--item{
  gap: 1ch;
}
.product__price__main{
  display: flex;
  align-items: baseline;
}
.productdetail__descarea .product__desc--price .product__price--numeric,
.product__price--numeric{
  font-size: 2.4rem;
  letter-spacing: .05em;
  font-weight: var(--fw-regular);
  font-family: var(--font-mixed);
}
.productdetail__descarea .product__desc--price .product__price--tax{
  font-size: 1.3rem;
}
.product__price--proper{
  color: #686868;
  gap: .5ch;
}
.product__price--proper .product__price--label{
  font-size: 1rem;
}
.productdetail__descarea .product__desc--price .product__price--proper .product__price--numeric{
  font-size: 1.4rem;
}
.productdetail__descarea .product__desc--price .product__price--proper .product__price--tax{
  font-size: 1.1rem;
}
.product__price--proper{
  position: static;
  margin-bottom: .5rem;
}
.product__price--proper .product__price__main{
  position: relative;
}
.product__price--proper::after {
    display: none;
}
.product__price--proper .product__price__main::after{
  width: 100%;
  height: 1px;
  background-color: #686868;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: 2;
}
.product__price--friend{
  color: #A56B55;
}
.product__price--friend .product__price--label{
  font-size: 1rem;
}
.product__price--friend .product__price--numeric{
  font-size: 2.2rem;
}
.product__price--friend .product__price--tax{
  font-size: 1rem;
}
.product__price:nth-of-type(n+2) {
  margin-top: 0;
}
.productdetail__buyarea .product__count{
  margin-block: 2rem 0;
}
.product__count--form .c-form__input--select{
  width: 7rem;
  height: 5rem;
  padding: 1rem 2rem;
  font-size: 1.4rem;
  line-height: 1;
  border: 1px solid #dddddd;
  border-radius: 4px;
}
.product__count--form.c-form__input--select {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%228%22%20viewBox%3D%220%200%2013%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.3452%200.361694L6.63093%206.36169L0.345214%200.361694%22%20stroke%3D%22%23333333%22%2F%3E%3C%2Fsvg%3E');
  background-size: 1.2rem 0.6rem;
  background-position: top 50% right 0.5rem;
}
.product__addcart,
.product__arrivalmail-area,
.c-button__soldout{
  margin-top: 1.6rem;
}
.c-button__product{
  font-weight: var(--fw-regular);
}
.c-button__once-product{
  background-color: var(--color-primary);
  color: #fff;
}
.c-button__soldout{
  background-color: #C1C1C1;
  border: 1px solid #C1C1C1;
  color: #fff;
  font-weight: var(--fw-regular);
}
.productdetail__descarea .product__desc--outline{
  margin-block: 2rem 0;
}
.product__desc--outline *{
  font-size: 1.3rem;
  line-height: 1.57;
}
.product__item-notice-summary{
  margin-top: 2rem;
  display: grid;
  gap: .8rem;
}
.product__item-notice-summary + .product__item-notice-summary{
  margin-top: 1.2rem;
}
.product__item-notice-summary dt{
  font-size: 1rem;
  font-weight: var(--fw-medium);
  line-height: 1;
  width: fit-content;
  background-color: var(--color-gray-100);
  border-radius: 2px;
  padding: .8rem 1rem .7rem .2rem;
}
.product__item-notice-summary dd{
  font-size: 1rem;
  line-height: 1.6;
}
.note-various{
  margin-top: 2.2rem;
}
.note-various a{
  font-size: 1rem;
  line-height: 1.6;
}
.p-product-feature-banner-list{
  margin-top: 4rem;
  display: grid;
  gap: 1.6rem;
}

/* tab */
.productdetail .product__tabarea{
  margin-block: 0 4rem;
}
.product-info-area{
  margin-top: 3rem;
}
.tablist-product{
  display: flex;
  align-items: center;
}
.tab-heading-product__wrapper {
  flex: 1;
  text-align: center;
}
.tab-heading-product{
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.2;
  color: #BBBBBB;
  text-align: center;
  height: calc(4rem + 2ch);
  display: grid;
  place-content: center;
  font-family: var(--font-ja);
  border-bottom: 2px solid transparent;
}
.tab-heading-product.active{
  color: var(--color-primary);
  border-color: var(--color-primary);
  font-weight: var(--fw-medium);
}
.tab-content-product{
  margin-block: -1px 0;
  padding-inline: 0;
  padding-top: 3rem;
  border-top: 1px solid #DDDDDD;
}


/* .accordion */
.accordion-product.accordion__details{
  border-top: 1px solid #bbb;
}

.accordion-product .accordion__summary{
  padding: 3rem 0 0;
  font-size: 1.4rem;
  color: var(--color-primary);
  font-weight: var(--fw-medium);
  font-family: var(--font-mixed);
}

.accordion-product .accordion__summary{
  padding-right: 1rem;
  display: grid;
  grid-template-columns: 1fr 1.5rem;
  align-items: center;
}

.accordion-product .accordion__summary--icon{
  aspect-ratio: 1;
  position: relative;
}

.accordion-product .accordion__summary--icon::before,
.accordion-product .accordion__summary--icon::after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 1px;
  background-color: #333;
}

.accordion-product .accordion__summary--icon::after{
  rotate: -90deg;
  transition: rotate var(--transition-default);
}

.accordion-product[open] .accordion__summary--icon::after{
  rotate: 0deg;
}

.accordion-product .accordion__content{
  padding: 3rem 0 2rem;
}

/* .accordion-product .accordion-product-content--list{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem 0;
} */

/* Content */
.grid-list{
  display: grid;
  gap: 3rem 4rem;
}
[data-content="material"] .grid-list__item{
  display: grid;
  grid-template-columns: 9rem auto;
  gap: 1rem;
}
.product-information__heading{
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: var(--fw-medium);
}
.product-information__body{
  margin-top: 3rem;
}
.product-information__notice{
  margin-top: 3rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5ch;
}
.product-information__notice > *{
  font-size: 1rem;
  line-height: 1.6;
}
.material__caption--heading{
  font-size: 1.4rem;
  line-height: 1.8;
  border-bottom: 1px solid #DDDDDD;
  padding-bottom: .5rem;
  margin-bottom: 1rem;
}
.material__caption--description{
  font-size: 1.3rem;
  line-height: 1.7;
}
.sup-list{
  margin-top: 2rem;
  font-size: 1rem;
  line-height: 1.6;
}

.content-scent{
  margin-top: 3rem;
}
.content-scent__heading{
  font-size: 1.4rem;
  font-weight: var(--fw-medium);
  line-height: 1.8;
}
.content-scent__description{
  margin-top: 1rem;
  font-size: 1.3rem;
  line-height: 1.7;
}
.content-scent__list{
  margin-top: 2.6rem;
  display: flex;
  justify-content: center;
  gap: 1rem;
}
.content-scent__item{
  width: 20%;
}
.content-scent__item--figure{
  display: grid;
  gap: .7rem;
  align-content: center;
}
.content-scent__item--caption{
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}
.product-content-list{
  display: grid;
  gap: 3rem;
}

.content-common__item--figure{
  display: grid;
  gap: 3rem 4rem;
}
.content-common__item--caption{
  font-size: 1.3rem;
  line-height: 1.7;
}

.product-how-to-eat{
  display: grid;
  gap: 4rem;
}
.product-how-to-eat-content{
  display: grid;
  gap: 1rem;
}
.product-how-to-eat-content-title,
.product-use-case-content-title{
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: var(--fw-medium);
}
.product-how-to-eat-list{
  display: grid;
  gap: 1.7rem;
}
.product-how-to-eat-item + .product-how-to-eat-item{
  border-top: 1px solid #DDDDDD;
  padding-top: 2rem;
}
.product-how-to-eat-item__figure{
  display: grid;
  grid-template-columns: 9rem auto;
  align-items: center;
  gap: 1rem;
}
.product-how-to-eat-item__caption-title{
  font-size: 1.4rem;
  line-height: 1.8;
  font-weight: var(--fw-medium);
}
.product-how-to-eat-item__caption-description{
  font-size: 1.3rem;
  line-height: 1.7;
  margin-top: .8rem;
}

.product-how-to-eat-caution-list li{
  font-size: 1.3rem;
  line-height: 1.7;
}


/* Case */
.product-use-case{
  display: grid;
  gap: 4rem;
}
.product-use-case-content-title[data-use-case-content="step"]{
  font-weight: var(--fw-regular);
}
.product-use-case-list{
  display: grid;
  grid-template-columns: repeat(3,minmax(0 , 1fr));
  gap: 2rem;
}
.product-use-case-item{
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  gap: 0;
}
.product-use-case-item + .product-use-case-item{
  position: relative;
}
.product-use-case-item + .product-use-case-item::before{
  content: '';
  position: absolute;
  top: 2rem;
  bottom: 0;
  z-index: 1;
  margin-block: auto;
  left: -1rem;
  width: .707rem;
  height: 1.271rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227.069%22%20height%3D%2212.708%22%20viewBox%3D%220%200%207.069%2012.708%22%3E%20%3Cpath%20id%3D%22Vector_12%22%20data-name%3D%22Vector%2012%22%20d%3D%22M.723%2C12.707%2C0%2C12.017%2C5.654%2C6.093.016.724.706%2C0%2C7.069%2C6.06Z%22%20transform%3D%22translate(0)%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E')
}
.product-use-case-item__numeric{
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: .05em;
  text-align: center;
  color: #fff;
  background-color: var(--color-primary);
  padding-block: .6rem .4rem;
  display: grid;
  place-content: center;
  border-radius: 2px;
}
.product-use-case-item__name{
  font-size: 1.2rem;
  line-height: 1.3;
  text-align: center;
  margin-top: 1.3rem;
  display: grid;
  align-content: center;
}
.product-use-case-item__image{
  height: 13rem;
}
.product-use-case-item__image img{
  height: 100%;
  object-fit: contain;
}
.product-use-case-item__description{
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  display: grid;
  gap: .5rem;
  justify-content: center;
  background-color: var(--color-gray-100);
  border-radius: 2px;
  padding: 1.1rem .5rem;
}
.product-use-case-item__description span{
  font-size: 1rem;
  letter-spacing: .05em;
}
.product-use-case-link{
  margin-top: 1.5rem;
  font-size: 1.3rem;
  line-height: 1.7;
  display:block;
}


.promise-list{
  display: grid;
  gap: 2.5rem;
}
.promise-list-item{
  display: grid;
  gap: 1rem;
}
.promise-list-item dt{
  font-size: 1.4rem;
  line-height: 1.8;
}
.promise-list-item dd{
  font-size: 1.3rem;
  line-height: 1.7;
}
.promise-icon-list{
  display: grid;
  gap: 4rem;
  margin-block:4rem 1rem;
}
.promise-icon-item{

}
.promise-icon-item__title{
  font-size: 1.3rem;
  line-height: 1.7;
}
.promise-icon-item__icon-list{
  margin-top: 2rem;
  display: flex;
  /* gap: .6rem; */
  justify-content: center;
  flex-wrap: wrap;
}
.promise-icon-item__common{
  display: block;
  margin-top: 2rem;
  margin-inline: auto;
}
.promise-icon-item__cosme{
  width: 31rem;
}
.promise-icon-item__food{
  width: 24rem;
}
/* .promise-icon-item__icon-list li{
  width: 7.3rem;
} */

.promise-case{
  margin-top: 3.2rem;
  padding: 3.2rem 2rem;
  background-color: var(--color-gray-100);
  border-radius: .4rem;
}
.promise-case__description{
  font-size: 1.3rem;
  line-height: 1.69;
}
.promise-case__list{
  margin-top: 3.2rem;
  display: grid;
  gap: 2.4rem;
}
.promise-case__list-item{
  display: grid;
  gap: 1.6rem 0;
}
.promise-case__list-item-title{
  width: fit-content;
  border: 1px solid #686868;
  padding: .33rem .6rem .37rem;
  font-size: 1.1rem;
  line-height: 1;
  color: #686868;
}
/* Table */
.product-table .table-wrapper.js-scroll-container{
  position: relative;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-inline: 2.4rem;
}
.product-table .table-wrapper.js-scroll-container table{
  min-width: 55rem;
}
.product-table table {
  border-collapse: collapse;
  width: 100%;
}
.product-table th,
.product-table td {
  border: 1px solid #DDDDDD;
  padding: 1rem 1.2rem;
  vertical-align: top;
  text-align: left;
}
.product-table thead th {
  background-color: var(--color-gray-100);
  font-size: 1.2rem;
  line-height: 1.4;
  white-space: nowrap;
  font-weight: var(--fw-regular);
}
.product-table tbody td {
  font-size: 1rem;
  line-height: 1.2;
  padding-block: 1.2rem;
}
.vertical--middle{
  vertical-align: middle;
}

/* Scroll Hint */
.scroll-hint {
  width: 16rem;
  height: 16rem;
  position: absolute;
  top: 7rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: grid;
  place-content: center;
  gap: 0.6rem;
  background-color: rgba(187, 187, 187, 0.5);
  border-radius: 4rem;
  padding: 1rem 1.8rem;
  pointer-events: none;
  transition: opacity 0.4s ease;
  white-space: nowrap;
  border-radius: 50%;
}
.scroll-hint.is-hidden {
  opacity: 0;
  pointer-events: none;
}
.scroll-hint svg{
  animation: slideImage 2s ease infinite;
  animation-delay: -0.5s;
}
@keyframes slideImage {
  0% {
    transform: translateX(-1rem); /* ① 左端からスタート */
  }
  50% {
    transform: translateX(1rem);  /* ② 右端までノンストップで移動 */
  }
  100% {
    transform: translateX(-1rem); /* ③ また左端までノンストップで戻る */
  }
}

@media screen and (min-width: 768px) {
  /* Accordion: PCでのパターン3（SP:開/PC:閉）チラつき防止 */
  .productdetail details[data-open-pc="false"]:not(.js-accordion-ready) > :not(summary) {
    display: none;
  }
  /* Common */  
  .productdetail__imagearea .swiper-horizontal > .swiper-pagination-bullets,
  .productdetail__imagearea .swiper-pagination-bullets.swiper-pagination-horizontal{
    display: none;
  }
  #productdetail{
    margin-top: 8rem;
  }
  .global-contents__inner {
    width: 100%;
  }
  .productdetail .grid-container {
    grid-template-columns: 41rem 1fr;
    column-gap: 4rem;
  }
  /* Slider */
  .productdetail__imagearea-inner{
    position: sticky;
    top: var(--height-header-primary);
    z-index: 1;
  }
  .productdetail__imagearea .thumbnail-slider .swiper-wrapper {
    grid-template-columns: repeat(6, 1fr);
    gap: 1rem;
  }
  .productdetail__imagearea .thumbnail-slider {
    margin-top: 1.6rem;
  }
  .detail-section__inner{
    width: min(90%, 86.3rem);
    margin-inline: auto;
  }
  .productdetail__imagearea.product__icon--9{
    width: 5rem;
  }

  /* Description */
  .productdetail__descarea .product__desc--name{
    font-size: 2.4rem;
  }
  .product__desc--price-area{
    gap: 1.8rem;
    flex-direction: row;
    align-items: flex-end;
  }
  .productdetail__descarea .product__desc--price .product__price--numeric,
  .product__price--numeric{
    font-size: 2.6rem;
  }
  .product__price--friend .product__price--numeric{
    font-size: 2rem;
  }
  .product__price--friend .product__price--unit{
    font-size: 1.8rem;
  }
  /* .product__item-category,
  .product__item-classification{
    margin-top: 1rem;
  } */
  .product__desc--outline *{
    font-size: 1.4rem;
  }
  .product__item-notice-summary{
    margin-top: 3rem;
    gap: 1rem;
  }
  .product__item-notice-summary + .product__item-notice-summary{
    margin-top: 1.8rem;
  }
  .product__item-notice-summary dt{
    font-size: 1.2rem;
  }
  .product__item-notice-summary dd{
    font-size: 1.2rem;
  }
  .note-various {
    margin-top: 2.3rem;
  }
  .note-various a{
    font-size: 1.2rem;
  }

  /* tab */
  .tab-heading-product{
    font-size: 1.8rem;
    height: calc(4.6rem + 2ch);
  }
  .tab-content-product{
    padding-top: 5rem;
  }
  .product-info-area{
    margin-top: 5.7rem;
  }

  /* .accordion */
  .accordion-product .accordion__summary{
    font-size: 1.5rem;
  }
  .accordion-product .accordion__content{
    padding: 3rem 0;
  }

  /* Content */
  .grid-list{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  [data-content="material"] .grid-list__item{
    gap: 2rem;
  }
  .product-information__heading{
    font-size: 1.8rem;
  }
  .product-information__body{
    margin-top: 4rem;
  }
  .product-information__notice > *{
    font-size: 1.2rem;
  }
  .material__caption--heading{
    font-size: 1.5rem;
    padding-bottom: .8rem;
    margin-bottom: 1.6rem;
  }
  .material__caption--description{
    font-size: 1.4rem;
  }
  .sup-list{
    margin-top: 3rem;
    font-size: 1.2rem;
  }


  .content-scent{
    margin-top: 4rem;
  }
  .content-scent__heading{
    font-size: 1.6rem;
  }
  .content-scent__description{
    margin-top: 1.5rem;
    font-size: 1.4rem;
  }
  .content-scent__list{
    margin-top: 3rem;
    gap: 3em;
  }
  .content-scent__item{
    max-width: 9.6rem;
  }
  .content-scent__item--figure{
    gap: 1rem;
  }
  .content-scent__item--caption{
    font-size: 1.2rem;
  }
  /* .product-content-list{
    gap: 3rem;
  } */

  .content-common__item--figure{
    grid-template-columns: 33rem auto;
  }
  .content-common__item--caption{
    font-size: 1.4rem;
    line-height: 1.7;
  }


  .product-how-to-eat-content{
    gap: 1.5rem;
  }
  .product-how-to-eat-content-title,
  .product-use-case-content-title{
    font-size: 1.5rem;
  }
  .product-how-to-eat-list{
    gap: 0;
  }
  .product-how-to-eat-item + .product-how-to-eat-item{
    margin-top: 4rem;
    padding-top: 4rem;
  }
  .product-how-to-eat-item:nth-child(2){
    margin-top: 1.5rem;
    padding-top: 2.8rem;
  }
  .product-how-to-eat-item:nth-child(3){
    margin-top: 2.5rem;
    padding-top: 1.6rem;
  }
  .product-how-to-eat-item__figure{
    padding-left: 2rem;
    grid-template-columns: 10rem auto;
    gap: 4rem;
  }

  .product-how-to-eat-item__caption-description{
    font-size: 1.4rem;
    margin-top: 1rem;
  }

  .product-how-to-eat-caution-list li{
    font-size: 1.4rem;
  }

  .product-use-case-list{
    gap: 4rem;
  }
  .product-use-case-item{
    grid-row: span 3;
    position: relative;
  }

  .product-use-case-item + .product-use-case-item::before{
    top: 0;
    left: -2rem;
  }
  .product-use-case-item__numeric{
    font-size: 1.3rem;
    padding-block: 1rem .9rem;
  }
  .product-use-case-item__name{
    font-size: 1.4rem;
    text-align: left;
    margin-block: 1.5rem 1.4rem;
    display: block;
    padding-inline: 1.6rem 1rem;
  }
  .product-use-case-item__image{
    height: auto;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  [data-use-case-item="step1"] .product-use-case-item__image{
    width: 7.3rem;
    width: 7rem;

  }
  [data-use-case-item="step2"] .product-use-case-item__image{
    width: 10rem;
    right: .9rem;
    bottom: 1rem;
  }
  [data-use-case-item="step3"] .product-use-case-item__image{
    width: 5rem;
    right: 1.9rem;
  }
  .product-use-case-item__description{
    font-size: 1.8rem;
    gap: .5rem;
    justify-content: flex-start;
    padding: .8rem 1rem .8rem 1.6rem;
  }
  .product-use-case-item__description span{
    font-size: 1.2rem;
    text-align: left;
  }
  .product-use-case-link{
    margin-top: 2.5rem;
  }

  .promise-list{
    gap: 2rem;
  }
  .promise-list-item{
    gap: 1rem;
  }
  .promise-list-item dt{
    font-size: 1.5rem;
  }
  .promise-list-item dd{
    font-size: 1.4rem;
  }
  .promise-icon-list{
    grid-template-columns: repeat(2,minmax(0,1fr));
    margin-block:3.5rem 2rem;
  }
  .promise-icon-item{
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
  }
  .promise-icon-item__title{
    font-size: 1.5rem;
    text-align: center;
  }
  /* .promise-icon-item__icon-list{
    gap: 1rem;
    align-items: center;
  }
  .promise-icon-item__icon-list li{
    width: 8.6rem;
  } */
   .promise-icon-item__common{
    margin-inline: auto;
    margin-block: auto;
    padding-top: 2rem;
  }
  .promise-icon-item__cosme{
    width: 37.4rem;
  }
  .promise-icon-item__food{
    width: 27.8rem;
  }


  .promise-case{
    margin-top: 2rem;
    padding: 3rem;
  }
  .promise-case__description{
    font-size: 1.4rem;
    line-height: 1.71;
  }
  .promise-case__list{
    grid-template-columns: auto auto;
  }
  .promise-case__list-item{
    grid-template-columns: auto 30rem;
    align-items: flex-start;
  }
  .promise-case__list-item-title{
    padding: .35rem .8rem;
    font-size: 1.2rem;
  }

  /* Table */
  .product-table .table-wrapper {
    padding-inline: 0;
  }
  .product-table table {
    min-width: 0;
  }
  .product-table thead th {
    font-size: 1.3rem;
  }
  .product-table tbody td {
    font-size: 1.2rem;
  }
  .scroll-hint {
    display: none;
  }

}

@media screen and (max-width: 767px) {
  /* Common */
  .detail-base-container{
    padding-inline: 2.4rem;
  }
  /* Slider */
  #js-thumbnail-slider {
    display: none;
  }
  .productdetail__imagearea {
    padding-inline: 2.4rem;
    overflow: hidden;
  }
  .productdetail__imagearea .main-slider {
    width: 100%;
  }
  .productdetail__imagearea #js-main-slider {
    overflow: visible;
  }
  .productdetail__descarea{
    margin-top: 1.6rem;
  }
  .productdetail__descarea{
    width: 100%;
  }
}

@media (hover: hover) {
  .productdetail .product__favorite--add:hover,
  .productdetail__imagearea .thumbnail-slider .swiper-slide:hover,
  .c-button__soldout:hover {
    opacity: 1;
  }
  .productdetail .product__favorite--add:hover .product__favorite--icon path{
    fill: #333333;
    opacity: 1;
  }
}



/* Feature */
.feature-content__inner{
  padding-block: 6rem;
  border-top: 1px solid #DDDDDD;
}
.feature-page__list{
  display: grid;
  gap: 1.6rem;
}

[data-section="journal"] .feature-page__item--thumbnail{
  border-radius: 0.4rem;
  overflow: hidden;
}

[data-section="journal"] .feature-page__item--thumbnail :where(img){
  aspect-ratio: 1;
  object-fit: cover;
  transition: scale var(--transition-default);
}

[data-section="journal"] .feature-page__item{
  display: grid;
  grid-template-columns: 9rem 1fr;
  gap: 1rem;
}

[data-section="journal"] a{
  text-decoration: none;
}
[data-section="journal"] .feature-page__item--title{
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
  line-height: 1.5714;
  word-break: break-all;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  text-overflow: ellipsis;
  overflow: hidden;
  text-decoration: none;
}

[data-section="journal"] .feature-page__item--category-name{
  margin-top: 1rem;
  font-size: 1.2rem;
  font-weight: var(--fw-regular);
  line-height: 1;
  text-decoration: underline;
  text-underline-offset: .7rem;
  text-decoration-color: #DDDDDD;
}

[data-section="journal"] .feature-page__item--date{
  margin-top: 1rem;
  font-size: 1.2rem;
  font-weight: var(--fw-regular);
  letter-spacing: 0.06rem;
  line-height: 1;
  color: #686868;
  display: block;
}
[data-section="journal"] .feature-page__item--category:has(.feature-page__item--category-name) + .feature-page__item--date{
  margin-top: 1rem;
}

[data-section="journal"] .feature-page__item:nth-of-type(n+3){
  display: none;
}

@media (min-width: 768px) {
  .feature-content__inner{
    padding-block: 8rem;
  }
  [data-section="journal"] .feature-page__list{
    display: grid;
    gap: 2.7rem;
  }

  [data-section="journal"] .feature-page__item{
    grid-template-columns: 12rem 1fr;
    gap: 2rem;
  }

  [data-section="journal"] .feature-page__item--title{
    font-size: 1.8rem;
    letter-spacing: 0.09rem;
  }
  [data-section="journal"]  .c-button__secondary{
    font-size: 1.5rem;
  }
  [data-section="journal"] .feature-page__item--category:has(.feature-page__item--category-name) + .feature-page__item--date{
    margin-top: 1.5rem;
  }
}

@media (hover: hover) {
  [data-section="journal"] .feature-page__item:hover :where(img){
    scale: 1.1;
  }
}


.other-content__actions{
  margin-top: 5rem;
}

.product-other-content-area .c-button__secondary{
  width: 23rem;
  min-width: unset;
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
  letter-spacing: 0;
  padding-inline: 1rem;
  margin-inline: auto;
  padding-block: 1.15rem;
}

@media (min-width: 768px) {
  .product-other-content-area .c-button__secondary{
    padding-block: 1.075rem;
  }
}



/*----------------------------------------
 URLコピー
-----------------------------------------*/
.clipboard {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5rem;
  border-radius: 10px;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 99;
  transform: translate(-50%, -50%);
  background-color: #EDEDED;
  color: #000;
  opacity: 0;
  transition: opacity 500ms ease;
  pointer-events: none;
}

.clipboard.copied {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .clipboard{
    width: 80%;
  }

}

/* Favorite */
.productdetail .product__favorite--popup{
  position: absolute;
  right: 0;
  z-index: 2;
  white-space: nowrap;
  background-color: var(--color-gray-100);
  box-shadow: 0 4px 8px rgba(0, 0, 0, .25);
  padding: 2rem;
  width: calc(100vw - 4.8rem);
  transform: unset;
  top: auto;
  bottom: auto;
}
.productdetail .product__favorite--popup.is-below {
  top: calc(100% + 0.8rem) !important;
  bottom: auto !important;
  left: auto !important;
}
.productdetail .product__favorite--popup.is-above {
  bottom: calc(100% + 0.8rem) !important;
  top: auto !important;
  left: auto !important;
}
.product__favorite--popup-text{
  display: grid;
  grid-template-columns: 2.2rem auto;
  gap: .8rem;
  align-items: center;
}
.product__favorite--popup-text::before{
  content: '';
  width: 2.2rem;
  height: 2.2rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2222%22%20viewBox%3D%220%200%2022%2022%22%3E%20%3Cdefs%3E%20%3CclipPath%20id%3D%22clip-path%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_24869%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2024869%22%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2FclipPath%3E%20%3C%2Fdefs%3E%20%3Cg%20id%3D%22favorite_ok%22%20clip-path%3D%22url(%23clip-path)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_70885%22%20data-name%3D%22%E3%83%91%E3%82%B9%2070885%22%20d%3D%22M11%2C1.026A9.977%2C9.977%2C0%2C1%2C1%2C1.026%2C11%2C9.988%2C9.988%2C0%2C0%2C1%2C11%2C1.026ZM11%2C0a11%2C11%2C0%2C1%2C0%2C11%2C11A11%2C11%2C0%2C0%2C0%2C11%2C0Z%22%20fill%3D%22%23b2806a%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_70886%22%20data-name%3D%22%E3%83%91%E3%82%B9%2070886%22%20d%3D%22M9.258%2C15.2%2C4.482%2C10.429%2C5.207%2C9.7l4.051%2C4.051%2C7.384-7.384.725.725Z%22%20fill%3D%22%23b2806a%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E')
}
#addFavoriteTip .c-button{
  display: none;
}

@media (min-width: 768px) {
  .productdetail .product__favorite--popup{
    width: fit-content;
  }
}

/* service */
.productdetail .common-section[data-section="service"]{
  padding: 9rem 0 15.3rem;
}
@media (min-width: 768px) {
  .productdetail .common-section[data-section="service"]{
    padding: 8rem 0 12.6rem;
  }
}



/* revico */
.revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row-no-review {
  padding-block: 4rem;
}
.revico-review-comment-row-wrapper:has(.revico-review-comment-row-no-review){
  grid-column: 1 / -1;
}
@media (max-width: 767px) {
  .accordion-product-content--list .p-review-revico .revico-multicomment-top .revico-comment-footer .revico-comment-footer--writebutton-wrapper{
    margin-left: 0;
  }
}

.product__item .revico-widget a.revico-read-more-review{
  display: none;
}

.product-ranking-area{
  overflow: hidden;
}
.product__item--icon{
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .product-ranking-area .product-slider {
    padding-inline: 0;
    overflow: visible;
  }
  .product-ranking-area .product__price--prefix,
  .product-ranking-area .product__price--numeric,
  .product-ranking-area .product__price--tax {
    font-size: 1.2rem;
  }
}
