@charset "UTF-8";
/* =========================================================
item detail
========================================================= */
/*------------------------------------------
head
------------------------------------------*/
@media (max-width: 768px) {
  .item-detail-head {
    padding-top: 24px;
    padding-bottom: 64px;
  }
}

@media (min-width: 769px) {
  .item-detail-head {
    padding-top: 40px;
    padding-top: 64px;
  }
}

@media (min-width: 1025px) {
  .item-detail-head .c-main-section__in {
    display: grid;
    grid-template-columns: clamp(10px, 31.4787701318vw, 430px) 1fr;
    grid-template-rows: repeat(3, max-content) 1fr;
    grid-template-areas: "image top" "image review" "image center" "image information" "image bottom";
    grid-gap: 10px clamp(10px, 6.6176470588vw, 90px);
  }
}

@media (min-width: 1025px) {
  .item-detail-head__block01 {
    grid-area: top;
  }
}

.item-detail-head__block02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #000030;
}

@media (max-width: 768px) {
  .item-detail-head__block02 {
    margin: 2px auto 0;
    position: relative;
    z-index: 2;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-head__block02 {
    margin: 26px auto 0;
  }
}

@media (min-width: 1025px) {
  .item-detail-head__block02 {
    grid-area: review;
  }
}

.item-detail-head__block02 .wrap {
  position: relative;
  display: flex;
  gap: 32px;
}

@media (max-width: 768px) {
  .item-detail-head__block02 .wrap {
    gap: 21px;
  }
}

@media (max-width: 768px) {
  .item-detail-head__block03 {
    margin: 22px auto 0;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-head__block03 {
    margin: 22px auto 0;
  }
}

@media (min-width: 1025px) {
  .item-detail-head__block03 {
    grid-area: center;
    padding-bottom: 14px;
    padding-top: 10px;
  }
}

.item-detail-head__block04 {
  padding-top: 24px;
}

@media (min-width: 1025px) {
  .item-detail-head__block04 {
    grid-area: bottom;
  }
}

.item-detail-head__sticky {
  width: 100vw;
  padding: 14px 4.2666666667vw;
  background: #fff;
  box-shadow: 0px 0px 6px rgba(9, 16, 32, 0.1);
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 11;
}

.item-detail-head__sticky--inner {
  display: grid;
  grid-template-columns: 1fr 57.6vw;
  grid-template-rows: max-content 1fr;
  gap: 0 14px;
  grid-template-areas: "select buy" "price buy";
  place-items: center start;
}

.item-detail-head__sticky--inner .item-detail-buy01.btn2 {
  display: flex;
  gap: 8px;
}

@media (min-width: 769px) {
  .item-detail-head__sticky--inner .item-detail-buy01.btn2 {
    gap: 20px;
    max-width: 530px;
  }
}

.item-detail-head__sticky--inner .item-detail-buy01.btn2 .item-detail-buy01__button {
  width: 50%;
}

@media (min-width: 769px) {
  .item-detail-head__sticky--inner .item-detail-buy01.btn2 .item-detail-buy01__button {
    max-width: 250px;
  }
}

.item-detail-head__sticky--inner .item-detail-buy01.btn2 .item-detail-buy01__button a {
  font-size: 12px;
}

@media (min-width: 769px) {
  .item-detail-head__sticky--inner .item-detail-buy01.btn2 .item-detail-buy01__button a {
    font-size: 14px;
  }
}

.item-detail-head__sticky--inner .c-button02--type01.disabled a {
  pointer-events: none;
  background: #ccc;
  font-size: 16px;
}

@media (min-width: 769px) {
  .item-detail-head__sticky {
    display: block;
  }

  .item-detail-head__sticky.with-selector .item-detail-head__sticky--inner {
    gap: 40px;
  }

  .item-detail-head__sticky.with-selector .item-detail-price01 {
    margin-left: 0;
    display: flex;
    gap: 50px;
    vertical-align: middle;
    justify-content: space-between;
    flex: 1;
  }

  .item-detail-head__sticky .item-detail-head__sticky--inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1050px;
    margin: 0 auto;
    gap: 76px;
  }

  .item-detail-head__sticky .item-detail-price01 {
    margin-left: auto;
    font-size: 26px;
  }

  .item-detail-head__sticky .price-box {
    display: flex;
    align-items: center;
  }

  .item-detail-head__sticky .item-detail-buy01 {
    max-width: 340px;
  }
}

.item-detail-head__sticky .item-detail-selector-wrapper {
  width: 30.2vw;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-wrapper {
    position: relative;
    width: 340px;
  }
}

.item-detail-head__sticky .item-detail-selector-s {
  margin-bottom: 6px;
  height: 28px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #000030;
  position: relative;
  cursor: pointer;
  padding: 0 5px;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-s {
    height: 46px;
  }
}

.item-detail-head__sticky .item-detail-selector-s::before {
  content: "";
  width: 5px;
  height: 5px;
  border-left: 1px solid #000030;
  border-bottom: 1px solid #000030;
  transform: rotate(-45deg);
  position: absolute;
  top: -2px;
  bottom: 0;
  right: 5px;
  margin: auto;
  z-index: 1;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-s::before {
    right: 17px;
  }
}

.item-detail-head__sticky .item-detail-selector-s::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #fff;
  width: 13px;
  height: 100%;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-s::after {
    width: 32px;
  }
}

.item-detail-head__sticky .item-detail-selector-s .item-detail-selector {
  font-size: 10px;
  display: flex;
  align-items: center;
  gap: 5px;
  height: 100%;
  width: max-content;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-s .item-detail-selector {
    font-size: 14px;
    padding: 5px 11px;
  }
}

.item-detail-head__sticky .item-detail-selector-s .item-detail-selector .icon {
  width: 16px;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-s .item-detail-selector .icon {
    width: 21px;
  }
}

.item-detail-head__sticky .item-detail-selector-detail {
  position: absolute;
  left: 0;
  bottom: 82px;
  width: 100%;
  background: #fff;
  border-top: 1px solid #CCCCCC;
  display: none;
}

@media (min-width: 769px) {
  .item-detail-head__sticky .item-detail-selector-detail {
    bottom: 51px;
    left: auto;
    max-width: 340px;
  }
}

.item-detail-head__sticky .item-detail-selector-detail .selector-list li {
  border-bottom: 1px solid #CCCCCC;
  border-left: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
  padding: 8px 15px;
  font-size: 12px;
  color: #141414;
  display: flex;
  align-items: center;
  gap: 16px;
  cursor: pointer;
}

.item-detail-head__sticky .item-detail-selector-detail .selector-list li .icon {
  width: 32px;
}

.item-detail-head__sticky .item-detail-selector-detail .selector-list li .txt {
  flex: 1;
}

.item-detail-head__sticky .item-detail-selector-detail .selector-list li .item-name {
  display: block;
  font-weight: 500;
}

.item-detail-brand {
  font-family: "TTCommons-Regular", sans-serif;
  color: #949494;
  line-height: 1.2;
  letter-spacing: 0.07em;
}

@media (max-width: 768px) {
  .item-detail-brand {
    font-size: 10px;
  }
}

@media (min-width: 769px) {
  .item-detail-brand {
    font-size: 11px;
  }
}

.item-detail-name {
  margin: 8px auto;
  color: #000030;
}

.item-detail-name__ja {
  font-size: 22px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .item-detail-name__ja {
    font-size: 18px;
    line-height: 1.8333333333;
  }
}

.item-detail-name__en {
  margin: 12px auto 0;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: 0.07em;
}

.detail-review-star {
  display: flex;
  align-items: center;
  gap: 10px;
}

.detail-reviewText-outer .detail-reviewText {
  /* font-family: "TTCommons-Regular", sans-serif; */
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.07em;
  /* align-items: center; */
  /* padding: 5px 0px; */
}

.starRating {
  display: flex;
  align-items: center;
  gap: 3px;
}

.starRating__stars {
  display: flex;
  align-items: center;
  gap: 3px;
}
/*
.ukmcustomfont-ukm-full-star,
.ukmcustomfont-ukm-half-star,
.ukmcustomfont-ukm-blank-star {
  display: block;
  mask: url(../../images/icon/ico_star.svg) no-repeat center/contain;
  width: 16px;
  height: 16px;
}

.ukmcustomfont-ukm-full-star {
  background: #949494;
}

.ukmcustomfont-ukm-half-star {
  background: linear-gradient(to right, #949494 0%, #949494 50%, #eee 50%, #eee 100%);
}

.ukmcustomfont-ukm-blank-star {
  background: #eee;
}
*/

.review-summary-container {
  /* padding: 0 0 5px; */
  position: relative;
}

.review-summary-container .review-link {
  text-decoration: underline;
}

@media (min-width: 769px) {
  .review-summary-container .review-link:hover {
    text-decoration: none;
  }
}

.review-summary-container .reviewNumber {
  font-size: 13px;
  line-height: 1;
}

.review-summary-container .reviewNumber::before {
  content: "（";
  display: inline;
}

.review-summary-container .reviewNumber::after {
  content: "）";
  display: inline;
}

.review-summary-container .reviewNumber .arrow {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-left: 1px solid #000030;
  border-bottom: 1px solid #000030;
  transform: rotate(-45deg);
  position: absolute;
  top: -7px;
  bottom: 0;
  right: -10px;
  margin: auto;
}

.ukomi_stars_rating_tooltip {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
}

.item-detail-share {
  position: relative;
}

@media (min-width: 769px) {
  .item-detail-share {
    position: relative;
  }
}

.item-detail-share__button button {
  display: block;
  width: 17px;
  height: 21px;
  background: url(../../images/icon/ico_share.svg) no-repeat center/contain;
}

.item-detail-share__list {
  padding: 6px 0;
  background: #fff;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.16);
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.16));
  position: absolute;
  top: calc(100% + 13px);
  z-index: 1;
}

@media (max-width: 768px) {
  .item-detail-share__list {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .item-detail-share__list {
    display: none;
    left: 50%;
    transform: translateX(-50%);
  }
}

.item-detail-share__list::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 10px 5px;
  border-color: transparent transparent #fff transparent;
  position: absolute;
  bottom: 100%;
}

@media (max-width: 768px) {
  .item-detail-share__list::before {
    right: 10px;
  }
}

@media (min-width: 769px) {
  .item-detail-share__list::before {
    left: 50%;
    transform: translate(-50%);
  }
}

.item-detail-share__list.is-hidden {
  display: none !important;
}

[class*=item-detail-share__item] {
  border-bottom: 1px solid #eee;
}

[class*=item-detail-share__item]:last-child {
  border-bottom: none;
}

[class*=item-detail-share__item] a {
  width: max-content;
  height: 34px;
  padding: 0 16px;
  font-size: 14px;
  line-height: 1;
  display: flex;
  align-items: center;
  gap: 11px;
}

[class*=item-detail-share__item] a::before {
  content: "";
  width: 18px;
  height: 18px;
}

.item-detail-share__item--mail a::before {
  width: 13px;
  background: url(../../images/icon/ico_mail.svg) no-repeat center/contain;
}

.item-detail-share__item--line a::before {
  background: url(../../images/icon/ico_line.png) no-repeat center/contain;
}

.item-detail-share__item--facebook a::before {
  background: url(../../images/icon/ico_fb.png) no-repeat center/contain;
}

.item-detail-share__item--x a::before {
  background: url(../../images/icon/ico_x.png) no-repeat center/contain;
}

.item-detail-share__item--pinterest a::before {
  background: url(../../images/icon/ico_pint.png) no-repeat center/contain;
}

.item-detail-share__item--link a::before {
  width: 13px;
  background: url(../../images/icon/ico_link.svg) no-repeat center/contain;
}

.item_detail-favorite__heart a {
  margin: 0 auto;
  display: block;
  width: 25px;
  height: 22px;
  background: url(../../images/icon/ico_favorite.svg) no-repeat center/contain;
}

.item_detail-favorite__heart a:not(.is-added-favorites){
  background: url(../../images/icon/ico_favorite.svg) no-repeat center/contain;
}

.item_detail-favorite__heart a.is-added-favorites{
  background: url(../../images/icon/ico_favorite_bt.svg) no-repeat center/contain;
}

@media (max-width: 768px) {
  .item_detail-favorite__heart a {
    width: 19px;
    height: 17px;
  }
}

.item_detail-favorite__count {
  margin: 5px auto 0;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.07em;
  text-align: center;
}

@media (max-width: 768px) {
  .item-detail-image {
    margin: 18px auto 0;
  }
}

/* @media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-image {
    margin: 32px auto 0;
  }
} */
@media (min-width: 769px) {

  /* 1025px → 769px */
  /* .item-detail-image {
    width: clamp(10px, 31.4787701318vw, 430px);
    grid-area: image;
  } */
}

.item-detail-image__main {
  position: relative;
}

.item-detail-image__main.new::before {
  content: "NEW";
  background: #000030;
  font-family: "TTCommons-Regular", sans-serif;
  color: #fff;
  letter-spacing: 0.07em;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}

@media (max-width: 768px) {
  .item-detail-image__main.new::before {
    padding: 8px 12px 4px;
    font-size: 13px;
  }
}

@media (min-width: 769px) {
  .item-detail-image__main.new::before {
    padding: 9px 15px 5px;
    font-size: 14px;
  }
}

.item-detail-image__thumb {
  margin: 16px auto 0;
  padding-bottom: 14px !important;
}

.item-detail-image__thumb .swiper-slide {
  border: 1px solid #eee;
}

.item-detail-image__thumb .swiper-slide-thumb-active {
  border-color: #949494;
}

.item-detail-image.no-initialized .item-detail-image__thumb .swiper-slide {
  width: 25%;
}



.item-detail-image__thumb .swiper-scrollbar {
  height: 1px !important;
  background: #eee;
  border-radius: 0;
  position: relative;
  left: 0 !important;
  width: 100% !important;
}

.item-detail-image__thumb .swiper-scrollbar-drag {
  background: #949494;
  border-radius: 0;
}

@media (max-width: 768px) {
  .item-detail-image__thumb .swiper-scrollbar {
    display: none;
  }
}

.item-detail-price01 {
  grid-area: price;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 18px;
  line-height: 1;
}

.item-detail-price01__small {
  font-size: 10px;
}

.item-detail-buy01 {
  grid-area: buy;
  width: 100%;
}

.item-detail-buy01__button a {
  height: 54px;
  font-size: 13px;
}

.item-detail-information {
  margin-top: 15px;
}

@media (max-width: 768px) {
  .item-detail-information {
    margin: 24px auto 0;
  }
}

@media (min-width: 1025px) {
  .item-detail-information {
    grid-area: information;
    height: min-content;
  }
}

.item-detail-information__item {
  padding: 0 0 0 20px;
  font-size: 12px;
  line-height: 1.5;
  position: relative;
}

.item-detail-information__item::before {
  content: "";
  width: 11px;
  height: 8px;
  mask: url(../../images/icon/ico_check.svg) no-repeat center/contain;
  background: #666682;
  position: absolute;
  top: 0.5em;
  left: 0;
}

.item-detail-information__item+.item-detail-information__item {
  margin: 8px auto 0;
}

.item-detail-information__item a {
  text-decoration: underline;
}

@media (hover: hover) {
  .item-detail-information__item a:hover {
    text-decoration: none;
  }
}

.item-detail-price02 {
  grid-area: price;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 22px;
  line-height: 1;
}

.item-detail-price02__small {
  font-size: 12px;
}

.item-detail-icons {
  display: flex;
  gap: 8px;
  margin: 10px 0;
}

@media (max-width: 768px) {
  .item-detail-icons {
  margin-top: 26px;
  }
}

.item-detail-icons .item-detail-status-icon {
  background: #949494;
  font-size: 10px;
  color: #fff;
  width: fit-content;
  padding: 4px 14px 4px;
  display: inline-block;
  vertical-align: text-top;
  font-size: 10px;
}

.item-detail-buy02 {
  margin: 32px auto 0;
}

.item-detail-buy02 .c-button02--type01 a {
  /* height: 60px; */
}

.item-detail-buy02 .c-button02--type01.disabled a {
  pointer-events: none;
  background: #ccc;
  font-size: 16px;
}

.item-detail-buy01 .item-buy-check,
.item-detail-buy02 .item-buy-check {
  /* border-bottom: 1px solid #EEEEEE;
  padding-bottom: 40px;
  margin-bottom: 40px; */
  width: 100%;
}

.item-detail-buy02 .item-buy-check .subscription-note {
  margin-top: 16px;
}

.item-detail-buy02 .item-buy-check .subscription-note .icon-nw {
  margin-left: 5px;
  margin-right: 3px;
  vertical-align: middle;
  padding-bottom: 3px;
  width: 14px;
}

.item-detail-buy02 .item-buy-check .subscription-note a {
  text-decoration: underline;
  color: #404040;
}

@media (min-width: 769px) {
  .item-detail-buy02 .item-buy-check .subscription-note a:hover {
    text-decoration: none;
  }
}

.item-detail-buy02 .item-buy-check .item-buy-acr {
  margin-top: 16px;
  display: none;
}

.item-detail-buy02.btn2 {
  align-items: flex-end;
  display: flex;
  gap: 8px;
}

.item-detail-buy02.btn2 .item-detail-buy01__button {
  width: 50%;
}

@media (min-width: 769px) {
  .item-detail-buy02.btn2 .item-detail-buy01__button a {
    font-size: 16px;
    height: 60px;
  }
}

.item-detail-reserve-box {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 24px;
  margin-bottom: 26px;
}

.item-detail-reserve-box img {
  width: 64px;
}

.item-detail-reserve-box .txt-box {
  flex: 1;
}

.item-detail-reserve-box .txt-box .mds-en {
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 22px;
}

.item-detail-reserve-box .txt-box .mds-jp {
  font-size: 12px;
  margin-top: -5px;
}

.item-detail-reserve-term {
  font-size: 16px;
}

.item-detail-stock {
  margin: 16px auto 0;
  text-align: center;
}

.item-detail-stock a {
  font-size: 14px;
  line-height: 1;
}

.item-detail-stock a::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 8px;
  background: url(../../images/icon/ico_store.svg) no-repeat center/contain;
}

.item-detail-series {
  margin: 0 auto;
  font-size: 14px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .item-detail-series__link {
    margin: 16px auto 0;
  }
}

@media (min-width: 769px) {
  .item-detail-series__link {
    margin: 8px auto 0;
  }
}

.item-detail-series__link a {
  color: #404040;
}

.item-detail-series__link a::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 1em;
  margin-right: 8px;
  mask: url(../../images/icon/ico_arrow01.svg) no-repeat center/contain;
  background: #000;
}

@media (min-width: 769px) {
  .item-detail-variation {
    margin-top: 10px;
  }
}

.item-detail-variation .item-detail-variation__ttl {
  margin-bottom: 8px;
}

@media (min-width: 769px) {
  .item-detail-variation .item-detail-variation__ttl {
    font-size: 16px;
  }
}

.item-detail-variation .item-detail-variation__btn__scr {
  margin-bottom: 14px;
  max-width: 645px;
  overflow: auto;
  padding-bottom: 10px;
}
@media (max-width: 768px) {
  .item-detail-variation .item-detail-variation__btn__scr {
    width: 90vw;
  }
}


.item-detail-variation .item-detail-variation__btn__scr.swiper {
  margin-top: 5px;
}

.item-detail-variation .item-detail-variation__btn {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  width: max-content;
}

.item-detail-variation .item-detail-variation__btn li {
  height: 30px;
  padding: 0 15px;
  padding-top: 3px;
  color: #000030;
  border: 1px solid #CCCCCC;
  text-align: center;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

@media (min-width: 769px) {
  .item-detail-variation .item-detail-variation__btn li {
    font-size: 14px;
  }
}

.item-detail-variation .item-detail-variation__btn li img {
  width: 24px;
}

.item-detail-variation .item-detail-variation__btn li.swiper-slide {
  width: 150px !important;
  height: 47px;
  font-size: 12px;
  padding-top: 5px;
  padding-left: 0;
  padding-right: 0;
}

.item-detail-variation .item-detail-variation__btn li.swiper-slide.swiper-slide-active {
  border-color: #000030;
}

.item-detail-variation .item-detail-variation__btn li.swiper-slide img {
  margin-right: 8px;
  margin-top: -5px;
}

.item-detail-variation .item-detail-variation__btn .current,
.item-detail-variation .item-detail-variation__btn .current.disabled {
  border-color: #000030;
}

.item-detail-variation .item-detail-variation__btn .disabled {
  color: #ccc;
  border-color: #ccc;
  cursor: default;
}

.item-detail-variation__btn2 li {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

@media (min-width: 769px) {
  .item-detail-variation__btn2 li {
    gap: 16px;
    margin-bottom: 12px;
  }
}

.item-detail-variation__btn2 li .val-mds {
  min-width: 60px;
  height: 30px;
  padding: 0 5px;
  padding-top: 4px;
  color: #000030;
  border: 1px solid #CCCCCC;
  text-align: center;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

@media (min-width: 769px) {
  .item-detail-variation__btn2 li .val-mds {
    font-size: 14px;
    min-width: 74px;
    height: 34px;
  }
}

.item-detail-variation__btn2 li .val-price {
  padding-top: 4px;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 22px;
  line-height: 1;
}

.item-detail-variation__btn2 li .val-price .item-detail-price02__small {
  font-size: 12px;
}

.item-detail-variation__btn2 li.current .val-mds {
  border-color: #000030;
}

.item-detail-variation__btn2 li:last-child {
  margin-bottom: 0;
}

.item-detail-price02 {
  color: #000030;
}

.item-detail-price02 .item-detail-price02__icon {
  background: #949494;
  font-size: 10px;
  color: #fff;
  width: fit-content;
  padding: 8px 14px 3px;
  display: inline-block;
  margin-right: 8px;
  vertical-align: text-top;
}

@media (min-width: 769px) {
  .item-detail-price02 .item-detail-price02__icon {
    font-size: 12px;
  }
}

.item-detail-schedule {
  margin-top: 37px;
}

.item-detail-schedule .item-detail-schedule__mds {
  margin-bottom: 10px;
}

@media (min-width: 769px) {
  .item-detail-schedule .item-detail-schedule__mds {
    font-size: 16px;
  }
}

.item-detail-schedule .item-detail-schedule__list {
  border-top: 1px solid #D9D9D9;
}

.item-detail-schedule .item-detail-schedule__list .inner {
  padding: 14px 0;
  border-bottom: 1px solid #D9D9D9;
}

.item-detail-schedule .item-detail-schedule__list .inner dt {
  font-weight: normal;
  font-size: 12px;
}

.item-detail-schedule .item-detail-schedule__list .inner dd {
  font-size: 12px;
}

.item-detail-schedule .item-detail-schedule__note {
  margin-top: 10px;
  color: #949494;
  font-size: 12px;
}

/*------------------------------------------
body
------------------------------------------*/
@media (max-width: 768px) {
  .item-detail-body {
    padding-top: 64px;
    padding-bottom: 66px;
    border-top: 4px solid #F6F6F6;
  }
  .item-detail-body .c-main-section__in {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .item-detail-tab {
    height: 26px;
  }
}

@media (min-width: 769px) {
  .item-detail-tab {
    height: 34px;
  }
}

.item-detail-tab__list {
  border-bottom: 1px solid #eee;
  display: flex;
  justify-content: center;
  /* position: sticky; */
  top: 100px;
}

@media (min-width: 769px) {
  .item-detail-tab__list {
    gap: 42px;
  }
}

.item-detail-tab__list.is-sticky {
  width: 100%;
  background: #fff;
  position: fixed;
  left: 0;
  z-index: 10;
  animation: tabslide 0.2s forwards;
}

@media (max-width: 768px) {
  .item-detail-tab__list.is-sticky {
    top: 55px;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-tab__list.is-sticky {
    top: 70px;
  }
}

@media (min-width: 1025px) {
  .item-detail-tab__list.is-sticky {
    top: 167px;
  }
}

.item-detail-tab__button {
  transform: translateY(1px);
}

@media (max-width: 768px) {
  .item-detail-tab__button {
    flex: 1;
  }
}

.item-detail-tab__button button {
  display: block;
  width: 100%;
  color: #949494;
  line-height: 1;
  text-align: center;
}

@media (max-width: 768px) {
  .item-detail-tab__button button {
    padding: 0 0 12px;
    font-size: 14px;
    font-weight: 500;
  }
}

@media (min-width: 769px) {
  .item-detail-tab__button button {
    padding: 0 10px 16px;
    font-size: 16px;
  }
}

.item-detail-tab__button button.is-active {
  color: #000030;
  border-bottom: 1px solid #000030;
}

@media (max-width: 768px) {
  .item-detail-tab__area {
    margin: 32px auto 0;
  }
}

@media (min-width: 769px) {
  .item-detail-tab__area {
    margin: 40px auto 0;
  }
}

.item-detail-tab__block {
  display: none;
}

.item-detail-tab__block:first-child {
  display: block;
}

.item-detail-tab__block > * {
  border-bottom: 1px solid #eee;
}

@media (max-width: 768px) {
  .item-detail-tab__block > * {
    padding: 0 0 24px;
  }
}

@media (min-width: 769px) {
  .item-detail-tab__block > * {
    padding: 0 0 40px;
  }
}

@media (max-width: 768px) {
  .item-detail-tab__block > *+* {
    margin: 24px auto 0;
  }
}

@media (min-width: 769px) {
  .item-detail-tab__block > *+* {
    margin: 40px auto 0;
  }
}

@keyframes tabslide {
  0% {
    transform: translateY(-100%);
  }

  100% {
    transform: translateY(0);
  }
}

.item-detail-accordion {
  position: relative;
}

.item-detail-accordion.item-detail-accordion-review::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 100px;
  background: linear-gradient(180deg, hsla(0, 0%, 100%, 0), #fff 70%);
}

@media (max-width: 768px) {
  .item-detail-accordion.item-detail-accordion-review::after {
    height: 75px;
  }
}

.item-detail-accordion.item-detail-accordion-review .item-detail-accordion__button {
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .item-detail-accordion.item-detail-accordion-review .item-detail-accordion__button {
    padding-bottom: 24px;
  }
}

@media (min-width: 769px) {
  .item-detail-accordion.item-detail-accordion-review .item-detail-accordion__button {
    padding-bottom: 40px;
  }
}

.item-detail-accordion.item-detail-accordion-review .icon {
  position: absolute;
  right: 0;
}

@media (max-width: 768px) {
  .item-detail-accordion.item-detail-accordion-review .icon {
    top: 30px;
  }
}

@media (min-width: 769px) {
  .item-detail-accordion.item-detail-accordion-review .icon {
    top: 40px;
  }
}

.item-detail-accordion.item-detail-accordion-review.open::after {
  height: 0;
}

.item-detail-accordion__button button {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media (max-width: 768px) {
  .item-detail-accordion__button button {
    padding: 0 8px;
    font-size: 16px;
    line-height: 1.625;
  }
}

@media (min-width: 769px) {
  .item-detail-accordion__button button {
    font-size: 20px;
    line-height: 1.4;
  }
}

.item-detail-accordion__button .icon {
  display: block;
  height: 1px;
  background: #404040;
  position: relative;
}

@media (max-width: 768px) {
  .item-detail-accordion__button .icon {
    width: 13px;
  }
}

@media (min-width: 769px) {
  .item-detail-accordion__button .icon {
    width: 15px;
  }
}

.item-detail-accordion__button .icon::before {
  content: "";
  width: 1px;
  background: inherit;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media (max-width: 768px) {
  .item-detail-accordion__button .icon::before {
    height: 13px;
  }
}

@media (min-width: 769px) {
  .item-detail-accordion__button .icon::before {
    height: 15px;
  }
}

.item-detail-accordion__button button.is-active .icon::before {
  content: none;
}

.item-detail-accordion__area {
  display: none;
}

@media (max-width: 768px) {
  .item-detail-accordion__area {
    padding: 40px 0 0;
  }
}

@media (min-width: 769px) {
  .item-detail-accordion__area {
    padding: 40px 0 0;
  }
}

#review-box {
  display: block;
}

/*------------------------------------------
review
------------------------------------------*/
@media (max-width: 768px) {
  .item-detail-review {
    padding-top: 24px;
    padding-bottom: 64px;
  }
}

@media (min-width: 769px) {
  .item-detail-review {
    padding-top: 40px;
    padding-bottom: 120px;
    border-bottom: 1px solid #F6F6F6;
  }
}

.reviewWidget_inner {
  display: grid;
  grid-template-columns: max-content 1fr;
  grid-template-rows: repeat(3, max-content) 1fr;
  grid-template-areas: "rating rating" "button button" "input input" "review review";
  padding: 0px !important;
}

.reviewWidget_title_container {
  grid-area: title;
  line-height: 1;
}

@media (max-width: 768px) {
  .reviewWidget_title_container {
    margin-right: 14px;
    font-size: 16px;
  }
}

@media (min-width: 769px) {
  .reviewWidget_title_container {
    margin-right: 8px;
    font-size: 20px;
  }
}

.reviewWidget_title_container .reviewWidget_title {
  display: none;
}

.reviewWidget_title_container .uKomiTitleSeparator {
  display: none;
}

.ratingOverview {
  grid-area: rating;
}

@media (max-width: 768px) {
  .ratingOverview {
    padding: 0;
  }
}

@media (min-width: 769px) {
  .ratingOverview {
    padding: 0;
  }
}

.ratingOverview .starRating {
  display: flex;
}

.ratingOverview .starRating .reviewNumber {
  font-weight: 600;
  font-size: 1.8rem;
}

.ratingOverview .reviewNumber strong {
  font-family: "TTCommons-Regular", sans-serif;
  letter-spacing: 0.07em;
}

@media (max-width: 768px) {
  .ratingOverview .reviewNumber strong {
    margin-right: 15px;
    font-size: 18px;
  }
}

@media (min-width: 769px) {
  .ratingOverview .reviewNumber strong {
    margin-right: 7px;
    font-size: 22px;
  }
}

.ratingOverview .reviewNumber:last-child {
  font-size: 13px;
  line-height: 1;
}

.ratingOverview .reviewNumber:last-child::before {
  content: "（";
  display: inline;
}

.ratingOverview .reviewNumber:last-child::after {
  content: "のレビュー）";
  display: inline;
}

.uKomiWidgetSection {
  grid-area: button;
  padding: 0;
}

.uKomiWidgetSection .uKomiWidget-btn {
  height: 40px;
  background: #F6F6F6;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
}

.uKomiWidgetSection .uKomiWidget-btn::before {
  /* content: ""; */
  /* width: 14px; */
  /* height: 14px; */
  /* background: url(../../images/icon/ico_review.svg) no-repeat center/contain; */
}

.uKomiWidgetSection .ukmcustomfont-ukm-edit {
  font-size: 14px;
  line-height: 1;
}

.uKomiWidgetFormWrapper {
  grid-area: input;
  padding: 24px 0 0;
}

.uKomiWidgetFormWrapper .ukmcustomfont-ukm-full-star,
.uKomiWidgetFormWrapper .ukmcustomfont-ukm-half-star,
.uKomiWidgetFormWrapper .ukmcustomfont-ukm-blank-star {
  width: 24px;
  height: 24px;
}
/*
.uKomiWidgetFormWrapper .uKomiWidgetFormFields > *+*,
.uKomiWidgetFormWrapper .uKomiWidgetUserFields > *+* {
  margin: 24px auto 0;
}
*/
.uKomiWidgetFormWrapper .uKomiWidgetUserFields {
  margin: 24px auto 0;
}

.uKomiWidgetFormWrapper .uKomiWidgetFormFieldLabel {
  font-size: 14px;
  /*font-weight: 500;*/
  /*display: flex;*/
  gap: 8px;
}

.uKomiWidgetFormWrapper .uKomiWidgetFormFieldLabel + * {
  margin: 8px auto 0;
}
/*
.uKomiWidgetFormWrapper .ukomi-error-icon {
  display: block;
  width: 36px;
  height: 16px;
  border-radius: 3px;
  background: #949494;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
*/
.uKomiWidgetFormWrapper .uKomiWidgetFormFieldError {
  display: none;
}

.uKomiWidgetFormWrapper .uKomiWidgetFormFieldNote {
  margin-bottom: 20px;
}

@media (max-width: 768px) {
  .uKomiWidgetFormWrapper .uKomiWidgetFormFieldNote {
    font-size: 12px;
  }
}

.uKomiWidgetFormWrapper .uKomiWidgetFormFieldTextArea textarea {
  width: 100%;
  height: 180px;
  border: 1px solid #ccc;
  border-radius: 3px;
  resize: none;
}

.uKomiWidgetFormWrapper .uKomiWidgetUserFieldInput input {
  width: 100%;
  /*height: 50px;*/
  border: 1px solid #ccc;
  border-radius: 3px;
}

.uKomiWidgetFormWrapper .uKomiWidgetSubmitNoteWrapper {
  margin: 16px auto 0;
  color: #949494;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .uKomiWidgetFormWrapper .uKomiWidgetSubmitBtnWrapper {
    margin: 16px 0 0;
  }
}

@media (min-width: 769px) {
  .uKomiWidgetFormWrapper .uKomiWidgetSubmitBtnWrapper {
    margin: 24px 0 0;
  }
}

.uKomiWidgetFormWrapper .uKomiWidgetSubmitBtnWrapper button {
  height: 40px;
  background: #000030;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  .uKomiWidgetFormWrapper .uKomiWidgetSubmitBtnWrapper button {
    width: 94px;
  }
}

@media (min-width: 769px) {
  .uKomiWidgetFormWrapper .uKomiWidgetSubmitBtnWrapper button {
    width: 180px;
  }
}

.u-komi-section {
  grid-area: review;
  padding: 40px 0 0;
}

.u-komi-section .reviewFilterBtn-btn {
  font-size: 12px;
  text-decoration: underline;
  display: flex;
  align-items: center;
}

.u-komi-section .reviewFilterBtn-btn::before {
  /* content: ""; */
  width: 15px;
  height: 16px;
  margin-right: 8px;
  background: url(../../images/icon/ico_filter.svg) no-repeat center/contain;
}

.u-komi-section .reviewSortingDiv {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}

@media (max-width: 768px) {
  .u-komi-section .reviewSortingDiv {
    margin: 16px auto 10px 0;
  }
}
/*
@media (min-width: 769px) {
  .u-komi-section .reviewSortingDiv {
    margin: 24px auto 0;
  }
}
*/
.u-komi-section .u-komi-sorting-btn-form-data {
  /* height: 25px; */
  /* padding: 0 5px 5px; */
  /* margin-bottom: 24px; */
  font-size: 10px;
  /* line-height: 1; */
  /* display: flex; */
  /* align-items: center; */
  /* justify-content: center; */
  /* border-bottom: 1px solid #CCCCCC; */
  /* width: 18.333333%;*/
  /* color: #949494; */
}

@media (min-width: 769px) {
  .u-komi-section .u-komi-sorting-btn-form-data {
    padding: 0 23px 5px;
    /* width: fit-content;*/
    margin-bottom: 40px;
  }
}

.u-komi-section .u-komi-sorting-btn-form-data.u-komi-sorting-btn-active {
  color: #000030;
  border-bottom: 1px solid #000030;
}

.u-komi-section .customQuestionSortingWrap {
  /* border-top: 1px solid #EEEEEE; */
}

@media (max-width: 768px) {
  .u-komi-section .customQuestionSortingWrap {
    /* margin: 16px auto 0; */
    /* padding-top: 16px; */
  }
}

@media (min-width: 769px) {
  .u-komi-section .customQuestionSortingWrap {
    margin: 0px auto 0;
    padding-top: 0px;
  }
}

.u-komi-section .customQuestionSortingWrap .customQuestionSorting {
  display: flex;
}

@media (max-width: 768px) {
  .u-komi-section .customQuestionSortingWrap .customQuestionSorting {
    gap: 9px;
  }
}

@media (min-width: 769px) {
  .u-komi-section .customQuestionSortingWrap .customQuestionSorting {
    gap: 25px;
  }
}

.u-komi-section .customQuestionSortingWrap .custQueDropdown {
  flex: 1;
  /* max-width: 160px; */
  /* position: relative; */
}

.u-komi-section .customQuestionSortingWrap .custQueDropdown::before {
  /* content: ""; */
  width: 4px;
  height: 7px;
  mask: url(../../images/icon/ico_arrow01.svg) no-repeat center/contain;
  background: #000030;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(90deg);
  pointer-events: none;
}

.u-komi-section .customQuestionSortingWrap .custQueDropdown select {
  /* width: 100%; */
  /* padding: 0 15px; */
  /* border: 1px solid #CCCCCC; */
  /* border-radius: 3px; */
  /* font-size: 13px; */
}

@media (max-width: 768px) {
  .u-komi-section .customQuestionSortingWrap .custQueDropdown select {
    /* height: 44px; */
  }
}

@media (min-width: 769px) {
  .u-komi-section .customQuestionSortingWrap .custQueDropdown select {
    height: 40px;
  }
}

.u-komi-section .loadedReviews {
  /* margin: 40px auto 0; */
}

.u-komi-section .singleReview {
  padding: 0px 12px;
  border-bottom: 1px solid #eee;
  position: relative;
}

.u-komi-section .singleReview + .singleReview {
  margin: 24px auto 0;
}

.u-komi-section .singleReview .singleReview_name {
  display: flex;
  /*margin: 17px auto 0;*/
  font-size: 14px;
  line-height: 1.5;
  /* font-weight: 700; */
  margin-top: 3px;
  width:200px;
}

.u-komi-section .singleReview .singleReview_tooltip_text {
  display: none;
}

.u-komi-section .singleReview .singleReview_verified_buyer_tag {
  margin-left: 10px;
  padding: 0 0 0 10px;
  border-left: 1px solid #ccc;
  font-weight: 400;
}

@media (min-width: 769px) {
  .u-komi-section .singleReview .singleReview_header_date {
    margin-top: 5px;
    /*
    font-family: "TTCommons-Regular", sans-serif;
    color: #949494;
    font-size: 14px;
    line-height: 1;
    position: absolute;
    top: 0;
    right: 0;
    */
  }
}

@media only screen and (max-width: 768px) {
  .singleReview_name span:first-child{
    flex-basis:40% !important;
  }
}



.u-komi-section .singleReview .singleReview_body {
  margin: 24px auto 0;
}

.u-komi-section .singleReview .singleReview_body_left .singleReview_title {
  display: none;
}

.u-komi-section .singleReview .singleReview_body_left p {
  font-size: 14px;
  line-height: 1.5;
}

.u-komi-section .singleReview .reviewProductName {
  display: flex;
  margin: 8px auto 0;
}

.u-komi-section .singleReview .reviewProductName a {
  color: #949494;
  font-size: 13px;
}

.u-komi-section .singleReview .reviewProductName a::before {
  content: "製品：";
  display: inline;
}

.u-komi-section .singleReview .singleReview_footer {
  margin: 24px 0 0;
}

.u-komi-section .singleReview .singleReview_footer button {
  width: 125px;
  height: 25px;
  padding: 6px 0;
  /*border: 1px solid #ccc;*/
  /*background: #F6F6F6;*/
  /*color: #404040;*/
  display: flex;
  align-items: center;
  /*justify-content: center;*/
}

.u-komi-section .singleReview .singleReview_footer button::before {
  content: "";
  width: 11px;
  /* height: 13px; */
  /*margin-right: 10px;*/
  /* background: url(../../images/icon/ico_thumbsu.svg) no-repeat center/contain; */
}

.u-komi-section .singleReview .singleReview_footer .like-label {
  /*display: block;*/
  margin-right: 7px;
  /*padding: 0 10px 0 0;*/
  /*border-right: 1px solid #ccc;*/
  /*font-size: 11px;*/
  /*line-height: 1;*/
}

.u-komi-section .singleReview .singleReview_footer .like-count {
  /*font-family: "TTCommons-Regular", sans-serif;*/
  font-size: 14px;
  /*transform: translateY(2px);*/
}

.u-komi-section .ReviewWidget_pagination {
  display: flex;
  justify-content: center;
  /* 20260323 ITFOR: ページネーション調整
  gap: 16px; */
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .u-komi-section .ReviewWidget_pagination {
    margin: 32px auto 0;
  }
}

@media (min-width: 769px) {
  .u-komi-section .ReviewWidget_pagination {
    margin: 40px auto 0;
  }
}

.u-komi-section .ReviewWidget_pagination > * {
  /* 20260323 ITFOR: ページネーション調整
  width: 24px;
  height: 24px;
  padding: 1px 0 0;*/
  width: 36px;
  height: 36px;
  padding: 0 0 0;
  font-family: "TTCommons-Regular", sans-serif;
  font-size: 18px;
  text-align: center;
}

.u-komi-section .ReviewWidget_pagination .first,
.u-komi-section .ReviewWidget_pagination .last {
  display: none;
}

.u-komi-section .ReviewWidget_pagination .active {
  background: rgba(0, 0, 48, 0.6);
  border-radius: 4px;
  color: #fff;
}

.u-komi-section .ReviewWidget_pagination .more_pages {
  padding: 0;
}

/* 20260323 ITFOR: ページネーション調整 
.u-komi-section .ReviewWidget_pagination .more_pages::before {
  content: "…";
  display: inline;
}*/

.u-komi-section .ReviewWidget_pagination .prev,
.u-komi-section .ReviewWidget_pagination .next {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 20260323 ITFOR: ページネーション調整
.u-komi-section .ReviewWidget_pagination .prev::before,
.u-komi-section .ReviewWidget_pagination .next::before {
  content: "";
  width: 4px;
  height: 7px;
  background: url(../../images/icon/ico_arrow01.svg) no-repeat center/contain;
}*/

.u-komi-section .ReviewWidget_pagination .prev::before {
  transform: scale(-1, -1);
}

.u-komi-section .reviewWebsiteRedirect {
  width: 87px;
  margin: 40px 0 0 auto;
  position: relative;
  z-index: 1;
}
/* 20260323 ITFOR: ページネーション調整 START */
.u-komi-section .ReviewWidget_pagination span, 
.u-komi-section .ReviewWidget_question_pagination span, 
.u-komi-section .productWidget_pagination span {
    display: flex;
    align-items: center;
    font-size: 14px;
    cursor: pointer !important;
    color: #000;
    padding: 0px 0px 0px 0;
    text-decoration: none;
    border: 1px solid #ddd;
    vertical-align: middle;
    height: 100%;
    line-height: 1;
    box-sizing: border-box;
    width: 36px;
    height: 36px;
    justify-content: center;
}
/* 20260323 ITFOR: ページネーション調整 END */

/*------------------------------------------
bottom
------------------------------------------*/
.item-detail-bottom {
  background: #F6F6F6;
}

@media (max-width: 768px) {
  .item-detail-bottom {
    padding-top: 64px!important;
    padding-bottom: 64px!important;
  }
}
@media (min-width: 769px) {
  .item-detail-bottom {
    padding-top: 70px!important;
    padding-bottom: 70px!important;
  }
}

@media (max-width: 768px) {
  .item-detail-bottom__block + .item-detail-bottom__block {
    margin: 50px auto 0;
  }
}

@media (min-width: 769px) {
  .item-detail-bottom__block + .item-detail-bottom__block {
    margin: 80px auto 0;
  }
}

.item-detail-bottom__title {
  margin: 0 auto 24px;
  color: #000030;
}

@media (max-width: 768px) {
  .item-detail-bottom__title {
    font-size: 16px;
    line-height: 1.75;
  }
}

@media (min-width: 769px) {
  .item-detail-bottom__title {
    font-size: 20px;
    line-height: 1.4;
  }
}

.item-detail-bottom__list .swiper.no-initialized .swiper-wrapper {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 20px;
}

@media (min-width: 769px) {
  .item-detail-bottom__control {
    margin: 16px auto 0;
    display: flex;
    align-items: center;
    gap: 16px;
  }
}

.item-detail-bottom__control .swiper-pagination {
  width: 100% !important;
  height: 1px !important;
  background: #ccc;
  position: relative !important;
}

.item-detail-bottom__control .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #404040;
}

.item-detail-bottom__control [class*=swiper-button-]::after {
  content: none;
}

.item-detail-bottom__control [class*=swiper-button-] button {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.item-detail-bottom__control [class*=swiper-button-] button::before {
  content: "";
  width: 18px;
  height: 38px;
  background: url(../../images/icon/ico_arrow_slider02.svg) no-repeat center/contain;
  transform: rotate(180deg);
}

.item-detail-bottom__control .swiper-button-prev button {
  transform: scale(-1, -1);
}

@media (min-width: 769px) {
  .item-detail-bottom__list {
    position: relative;
  }

  .item-detail-bottom__control [class*=swiper-button-] {
    width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    opacity: 1 !important;
    position: absolute !important;
    top: 35%;
    transform: translateY(-50%);
    z-index: 10;
  }

  .item-detail-bottom__control .swiper-button-prev {
    left: -40px !important;
    right: auto !important;
  }

  .item-detail-bottom__control .swiper-button-next {
    right: -40px !important;
    left: auto !important;
  }
}

@media (max-width: 768px) {
  .item-detail-bottom__control [class*=swiper-button-] {
    display: none;
  }
}

@media (max-width: 768px) {

  .item-detail-recommend__list,
  .item-detail-checked__list {
    width: 100%;
    overflow: scroll !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-recommend__list,
  .item-detail-checked__list {
    width: 100%;
    overflow: scroll !important;
  }
}

@media (max-width: 768px) {
  .item-detail-recommend .swiper-wrapper,
  .item-detail-checked .swiper-wrapper {
    width: max-content;
    display: flex;
    gap: 16px;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-recommend .swiper-wrapper,
  .item-detail-checked .swiper-wrapper {
    width: max-content;
    display: flex;
    gap: 20px;
  }
}

.item-detail-recommend .c-card01,
.item-detail-checked .c-card01 {
  height: auto;
}

@media (max-width: 768px) {
  .item-detail-recommend .c-card01,
  .item-detail-checked .c-card01 {
    width: 152px;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-recommend .c-card01,
  .item-detail-checked .c-card01 {
    width: 160px;
  }
}

@media (max-width: 768px) {
  .item-detail-recommend__control,
  .item-detail-checked__control {
    visibility: hidden;
    overflow: hidden;
    height: 0;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .item-detail-recommend__control,
  .item-detail-checked__control {
    visibility: hidden;
    overflow: hidden;
    height: 0;
  }
}

@media (max-width: 768px) {
  .item-detail-contents__list {
    width: 100%;
    overflow: scroll !important;
  }
}

@media (max-width: 768px) {
  .item-detail-contents .swiper-wrapper {
    width: max-content;
    display: flex;
    gap: 16px;
  }
}

.item-detail-contents .c-card03 {
  height: auto;
}

@media (max-width: 768px) {
  .item-detail-contents .c-card03 {
    width: 152px;
  }
}

@media (max-width: 768px) {
  .item-detail-contents__control {
    visibility: hidden;
    overflow: hidden;
    height: 0;
  }
}

/*============================
#zaiko-modal
============================*/
#zaiko-modal {
  position: fixed;
  top: 0;
  width: 100vw;
  height: 100vh;
  justify-content: center;
  align-items: center;
  z-index: 101;
}

#zaiko-modal .zaiko-modal-block__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

#zaiko-modal .zaiko-modal-block__wrapper {
  width: 100%;
  height: 90%;
  padding: 0 10px;
  padding-top: 30px;
  position: relative;
  z-index: 1;
  position: fixed;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  line-height: 1.5;
  overflow: auto;
  padding-bottom: 50px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__close {
  color: #fff;
  position: absolute;
  right: 10px;
  top: -8px;
  font-size: 20px;
  cursor: pointer;
}

@media (min-width: 769px) {
  #zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__close {
    right: auto;
    left: 50%;
    transform: translateX(-50%) translateX(247px);
  }
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__close img {
  width: 12px;
}

@media (min-width: 769px) {
  #zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__close img {
    width: 24px;
  }
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__inner {
  background: #fff;
  padding: 24px;
  max-width: 520px;
  margin: 0 auto 16px;
  font-size: 14px;
}

@media (min-width: 769px) {
  #zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__inner {
    padding: 32px;
  }
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__inner .zaiko-modal-topmds {
  color: #000030;
  font-weight: 500;
  margin-bottom: 12px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-block__inner .zaiko-modal-toptxt {
  margin-bottom: 24px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-itemselector .c-input-select {
  border-color: #000030;
  height: 44px;
  font-size: 14px;
  color: #000030;
  border-radius: 0;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-itemselector .c-input-select::before {
  content: none;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-itemselector .c-input-select::after {
  content: "";
  width: 8px;
  height: 8px;
  border-left: 1px solid #404040;
  border-bottom: 1px solid #404040;
  transform: rotate(-45deg);
  position: absolute;
  top: -7px;
  bottom: 0;
  right: 19px;
  margin: auto;
  z-index: 1;
  transition: 0.3s;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-itemselector .c-input-select select {
  font-size: 14px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-mds {
  font-size: 16px;
  margin-bottom: 8px;
  margin-top: 24px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-mds img {
  margin-right: 8px;
  vertical-align: top;
  margin-top: 5px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-modal-mds .shops {
  width: 16px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper {
  background: #f6f6f6;
  border: 1px solid #ccc;
  padding: 16px;
  margin-bottom: 8px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acr-mds {
  cursor: pointer;
  position: relative;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acr-mds::before {
  content: "";
  width: 8px;
  height: 8px;
  border-left: 1px solid #404040;
  border-bottom: 1px solid #404040;
  transform: rotate(-45deg);
  position: absolute;
  top: -7px;
  bottom: 0;
  right: 4px;
  margin: auto;
  z-index: 1;
  transition: 0.3s;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acr-mds.open::before {
  transform: rotate(-225deg);
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox {
  border-top: 1px solid #CCCCCC;
  margin-top: 12px;
  padding-top: 16px;
  display: none;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-acr-note {
  font-size: 12px;
  margin-bottom: 16px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl {
  width: 100%;
  font-size: 12px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl tbody tr th {
  border-bottom: 1px solid #CCCCCC;
  padding-bottom: 8px;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl tbody tr th:first-child {
  text-align: left;
  width: 80%;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl tbody tr td {
  border-bottom: 1px solid #CCCCCC;
  text-align: center;
  padding: 15px 0;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl tbody tr td:first-child {
  text-align: left;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl tbody tr td a {
  text-decoration: underline;
  color: #404040;
}

@media (min-width: 769px) {
  #zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl tbody tr td a:hover {
    text-decoration: none;
  }
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-tbl.place-tbl tbody tr th:first-child {
  width: 60%;
}

#zaiko-modal .zaiko-modal-block__wrapper .zaiko-acrwrapper .zaiko-acrbox .zaiko-status {
  font-size: 12px;
  text-align: right;
  margin-top: 8px;
}

#zaiko-modal .zaiko-modal-block__wrapper .c-input-checkbox {
  margin-bottom: 10px;
}

#zaiko-modal .zaiko-modal-block__wrapper .c-input-checkbox label .c-input-checkbox__text {
  font-size: 14px;
}

#zaiko-modal .zaiko-modal-block__wrapper .c-button02--type02 {
  width: 164px;
  margin: 30px auto 0;
}

.item-detail-tab__block .c-acc__item {
  padding: 0;
  border: none;
}

.item-detail-accordion-review {
  position: relative;
}

.review-widget-summary-container {
  /* UKOMIの値を修正しているようだが表示不具合の為とりあえず非表示 */
  display: none;
  
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 10em;
}

/* layout
------------------------------------------*/
.wrapper {
  overflow: unset;
}

.item-detail-image .swiper-slide {
  cursor: pointer;
}

.parent {
  display: grid;
  gap: 2%;
  grid-template-areas: "left right";
  grid-template-columns: 45% 53%;
  padding: 32px 16px 100px;
  margin: 0 auto;
  max-width: 1100px;
}

.left-column {
  align-self: start;
  grid-area: left;
  position: sticky;
  top: 80px;
}

.right-column {
  grid-area: right;
}

.item-detail-tab__list {
  margin-top: 50px;
}

.item-detail-editor .taC.tab2,
.item-detail-editor .taC.tab3{
  text-align: left !important;
  padding: 0 8px;
}


.right-column .item-detail-head__block01 .egift-icon {
    background-color: #fff;
    color: #7E8C91;
    border: solid 1px #7E8C91;
    padding: 6px !important;
    display: inline;
    font-size: 10px;
}

.right-column .item-detail-head__block01 .egift-icon img {
  width: 3.2% !important;
  margin-right: 1%!important;
}

.right-column .item-detail-head__block03 .skincare-effect-icon {
  background-color: #eae5db;
  color: #393c41;
  display: inline-block;
  font-size: 10px;
  margin-bottom: 8px;
  margin-right: 12px;
  padding: 4px 14px;
}

.right-column .item-detail-head__block03 .wrap {
  display: flex;
  align-items: flex-end;
}
.right-column .item-detail-head__block03 .wrap .item-detail-price02 {
 margin: 7px;
}

.right-column .js-stickyBanner {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
.right-column .js-stickyBanner.is-visible {
  opacity: 1;
  pointer-events: auto;
}


@media screen and (max-width: 768px) {
  .parent {
    gap: 0;
    grid-template-areas:
      "head01"
      "head02"
      "left"
      "head03"
      "head-info"
      "head04"
      "head-sticky"
      "js-tab";
    grid-template-columns: minmax(0, 1fr);
    padding-top: 24px;
    padding-bottom: 64px;
  }

  .left-column {
    grid-area: left;
    position: unset;
    padding-bottom: 0px;
  }

  .left-column .item-detail-image {
    width: clamp(10px, 90vw, 768px);
  }

  .right-column,
  .right-column section.detail-head,
  .right-column section.js-tab,
  .right-column section.detail-head>div {
    display: contents;
  }

  .right-column .item-detail-head__block01 {
    grid-area: head01;
    width: 100%;
  }

  .right-column .item-detail-head__block01 .egift-icon img {
    width: 7%!important;
    margin-right: 2%!important;
  }

  .right-column .item-detail-head__block02 {
    grid-area: head02;
    width: 100%;
  }

  .right-column .item-detail-head__block03 {
    grid-area: head03;
    width: 100%;
  }

  .right-column .item-detail-information {
    grid-area: head-info;
    width: 100%;
  }

  .right-column .item-detail-head__block04 {
    grid-area: head04;
    width: 100%;
  }

  .right-column .item-detail-head__sticky {
    grid-area: head-sticky;
    width: 100%;
  }

  .right-column .js-tab {
    grid-area: js-tab;
    width: 100%;
  }
}

/* learn-more
------------------------------------------*/
.learn-more {
  margin-top: 60px;
}

.learn-more__title {
  font-size: 16px;
  color: #000030;
  line-height: 1.5;
  margin-bottom: 24px;
}

.learn-more__slider {
  overflow: visible;
}

.learn-more__slider .swiper-slide {
  width: 38%;
}

@media (max-width: 768px) {
  .learn-more__slider .swiper-slide {
    width: 70%;
  }
}

.learn-more__card {
  display: block;
}

.learn-more__card-image {
  aspect-ratio: 3 / 2;
  overflow: hidden;
}

.learn-more__card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.learn-more__card-heading {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

.learn-more__card-text {
  margin-top: 10px;
  font-size: 14px;
}

/* card image adjust
------------------------------------------*/
.c-card01__image.horizontal .c-card01__image--img {
  max-width: 140px;
}

/* ------------------------------------ */
/* スタッフコメント */
/* ------------------------------------ */

.staff-comment__title {
  font-size: 1.6rem;
  margin-bottom: 15px;
}

.staff-comment__item {
  display: flex;
  justify-content: left;
  align-items: center;
  margin-bottom: 30px; /* 元の値: 3% / 30px / 2.4rem / （なし）等諸々あったので、一旦30pxに統一 */
}

.staff-comment__img-wrap {
  margin: 0;
  padding: 0;
  position: relative;
}

.staff-comment__img {
  width: 75px;
  height: 75px;
  max-width: none;
}

.staff-comment__text {
  margin: 0 0 0 20px;
  padding: 0;
}

.starRating{
 padding: 0;
}

.review-summary-container-outer{
 display:ruby;
}



.item-detail-price02 .capacity{
  margin-top: 9px;
  margin-left: 10px;
  font-weight: bold;
}

.item-detail-head__block03 .price{
  display: flex;
}

/* .box_button_cartModal a,
.box_button_cartModal input{
  background: #000030;
  border-radius: 3px;
  color: #fff;
  width:40%;
  margin-left:20px;
} */

.item-detail-head__sticky .item-detail-selector-detail .selector-list li.disabled {
  color: #ccc;
}

.c-acc__tab .review-summary-container-outer{
 position: relative;
 width:200px
}


.c-acc__tab .detail-reviewText-outer{
 position: absolute;
 top:-8px
}


.c-acc__tab .review-summary-container{
 position: absolute;
 top: -14px;
 left: 40px;
}

.singleReview.singleReview--featured .ukomiFeaturedReview {
  margin-top: -12px !important;
}

.custProductFilterDropdown:after,.custQueDropdown:after{
  top:56% !important;
}

.u-komi-sorting-btn-form-data {
  text-align: center;
}

@media (max-width: 768px) {
  .u-komi-sorting-btn-form-data {
    width: 105px;
    font-size: 10px;
  }
}
@media (min-width: 768px) {
	.reviewSortingDiv:has(> span:nth-last-child(5):first-child) > .u-komi-sorting-btn-form-data {
	  width: 105px;
	  font-size: 10px;
	}
	
	.reviewSortingDiv:has(> span:nth-last-child(6):first-child) > .u-komi-sorting-btn-form-data {
	  width: 89px;
	  font-size: 9px;
	}
}

.reviewFilterBtn{
  /* margin-bottom: 11px; */
}

.reviewFilterBtn-btn{
  line-height: 15px;
  font-size: 10px !important;
}

.thumbsup.mini_thumbs button.down *,.thumbsup.mini_thumbs button.up * {
  font-family: "Noto Sans JP", sans-serif !important;
}

.reviewSortingSection {
  border-bottom: 0px !important;
  border-bottom: 0px !important;
}

.customQuestionSorting{
  /* border-bottom: 1px solid #eee; */
}



/* 「詳細フィルター」ボタンを一番下にする */
.reviewFilterBtn {
order: 1; 
}

/* （省略可）「並び替え」エリアを上にする */
.reviewSortingDiv {
order: 0; 
}


.loadedReviews > .singleReview:first-child {
  border-top: 3px solid #eee;
  padding-top: 20px;
}
.customQuestionSorting {
  padding: 0px!important;
}

.reviewSortingDiv{
 border-bottom: 1px solid #eee;
 margin-bottom: 10px;
}

.questionSortingSection, .reviewSortingSection {
    align-items: flex-start!important;
    flex-direction: column !important;
}


/* カートインモーダルcss */
@media screen and (max-width: 768px) {
#cboxLoadedContent {
  border: none !important;
}

.cartin__modal__check {
  display: inline-block;
  position: relative;
  width: 2rem;
  height: 2rem;
  background-color: #000030;
  border-radius: 50%;
}

.cartin__modal__check::before {
  content: "";
  position: absolute;
  width: 0.6rem;
  height: 0.35rem;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

  #cboxClose {
    background: none !important;
    top: 5px !important;
    right: 5px !important;
    width: 2rem !important;
    height: 2rem !important;
  }

  .cartin__modal--ttl {
    text-align: center;
    color: #000030;
  } 

  #cboxClose::before,
  #cboxClose::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #393C41;
  }

  #cboxClose::before {
    transform: translateY(-50%) rotate(45deg);
  }

  #cboxClose::after {
    transform: translateY(-50%) rotate(-45deg);
  }

  #cartDispProductName {
    font-size: 1.2rem;
    color: #000030;
  }

  .box_button_cartModal {
    display: flex;
    justify-content: center;
    margin: 2rem auto 0;
    gap: 4%;
  }

  .box_button_cartModal .box_button_cartModal__next,
  .box_button_cartModal .button_prev {
    display: block;
    border-radius: 3px;
    width:45%;
    font-size: 1rem;
    padding: 14px 0px;
    text-align: center;
  }

  .box_button_cartModal .box_button_cartModal__next {
    color: #fff;
    background-color: #000030;
  }

  .box_button_cartModal .box_button_cartModal__next::before {
      content: "";
      display: inline-block;
      mask: url(../../images/icon/ico_bag.svg) no-repeat center / contain;
      width: 1.2rem;
      height: 1.2rem;
      background: #fff;
    }

  .box_button_cartModal .button_prev {
    color: #000030;
    background-color: #fff;
    border: solid 1px #000030;
  }

}

/* =====================
  カートインモーダルcss
===================== */
.cartin-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9000;
  visibility: hidden;
  pointer-events: none;
}

.cartin-modal.is-open {
  visibility: visible;
  pointer-events: auto;
}

.cartin-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.cartin-modal.is-open .cartin-modal__overlay {
  opacity: 1;
}

.cartin-modal__dialog {
  position: absolute;
  background-color: #fff;
  box-sizing: border-box;
}

/* SP: 画面下部に固定・全幅 */
@media screen and (max-width: 768px) {
  .cartin-modal__dialog {
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 15px 10px 8px;
    transform: translateY(100%);
    transition: transform 0.35s ease;
  }

  .cartin-modal.is-open .cartin-modal__dialog {
    transform: translateY(0);
  }
}

/* PC: 画面中央に表示 */
@media screen and (min-width: 769px) {
  .cartin-modal__dialog {
    top: 50%;
    left: 50%;
    width: 400px; /* 横幅調整 */
    border-radius: 4px;
    padding: 32px 24px 24px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    transform: translate(-50%, calc(-50% + 30px));
    opacity: 0;
    transition: transform 0.35s ease, opacity 0.35s ease;
  }

  .cartin-modal.is-open .cartin-modal__dialog {
    transform: translate(-50%, -50%);
    opacity: 1;
  }
}

.cartin-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 1.2rem;
  height: 1.2rem;
  font-size: 0;
  color: transparent;
}

.cartin-modal__close::before,
.cartin-modal__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #393C41;
}

.cartin-modal__close::before {
  transform: translateY(-50%) rotate(45deg);
}

.cartin-modal__close::after {
  transform: translateY(-50%) rotate(-45deg);
}

.cartin__modal__header {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
}

.cartin__modal__check {
  display: inline-block;
  position: absolute;
  left: 0;
  width: 2.4rem;
  height: 2.4rem;
  background-color: #000030;
  border-radius: 50%;
}

.cartin__modal__check::before {
  content: "";
  position: absolute;
  width: 0.8rem;
  height: 0.42rem;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

.cartin__modal--ttl {
  font-size: 1.4rem;
  color: #000030;
  font-weight: bold;
  text-align: center;
}

.cartin__product-summary {
  text-align: center;
  margin-top: 24px;
}

.cartin__cart-image {
  display: flex;
  justify-content: center;
}

.cartin__cart-image img {
  max-height: 170px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}

.cartin__product-name {
  font-size: 1.2rem;
  color: #000030;
  margin-top: 12px;
}

.box_button_cartModal {
  display: flex;
  justify-content: center;
  gap: 4%;
  margin-top: 2rem;
}

.box_button_cartModal .box_button_cartModal__next,
.box_button_cartModal .box_button_cartModal__back {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  width: 48%;
  font-size: 1.2rem;
  padding: 14px 0;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  cursor: pointer;
}

.box_button_cartModal .box_button_cartModal__next {
  color: #fff;
  background-color: #000030;
  gap: 6px;
}

.box_button_cartModal .box_button_cartModal__next::before {
  content: "";
  display: inline-block;
  mask: url(../../images/icon/ico_bag.svg) no-repeat center / contain;
  -webkit-mask: url(../../images/icon/ico_bag.svg) no-repeat center / contain;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #fff;
  flex-shrink: 0;
}

.box_button_cartModal .box_button_cartModal__back {
  color: #000030;
  background-color: #fff;
  border: 1px solid #000030;
}

#doShopStockSearch.disabled {
  display:none;
}


.item-detail-buy02.btn2 {
	align-items: flex-end;
	display: flex;
	gap: 8px;
}