@charset "UTF-8";
/* ==========================================================================//
//
// リセット
//
// ========================================================================== */
.l-productDetail {
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  line-height: normal;
  letter-spacing: normal;
}
.l-productDetail * {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-style: normal;
  letter-spacing: initial;
}
.l-productDetail *,
.l-productDetail *::before,
.l-productDetail *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.l-productDetail a {
  text-decoration: none;
  color: #000;
}
.l-productDetail p a {
  color: #000;
}
.l-productDetail a img {
  border: none;
}
.l-productDetail img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.l-productDetail figure {
  margin: 0;
}
.l-productDetail ul,
.l-productDetail li,
.l-productDetail ol,
.l-productDetail dl,
.l-productDetail dt,
.l-productDetail dd {
  list-style: none;
}
.l-productDetail input,
.l-productDetail label,
.l-productDetail select,
.l-productDetail textarea {
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  font: inherit;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
}
.l-productDetail input:focus {
  background-color: inherit;
}
.l-productDetail button {
  border: none;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.l-productDetail input[type=submit],
.l-productDetail input[type=checkbox],
.l-productDetail input[type=radio],
.l-productDetail button,
.l-productDetail select,
.l-productDetail label {
  cursor: pointer;
}

/* ==========================================================================//
//
// common（共通スタイル）
//
// ========================================================================== */
/* font-weight jsでiOSのみ切り替え */
.l-productDetail {
  color: #000;
  font-weight: 400;
  font-size: 13px;
}
.l-productDetail * {
  font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Noto Sans JP", "Noto Sans CJK", "Noto Sans CJK JP", "Roboto", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.l-productDetail .underline {
  color: #000;
  text-decoration: underline;
}
.l-productDetail a.underline {
  color: #000;
  text-decoration: underline;
  cursor: pointer;
}

.bold {
  font-weight: 700;
}

.red {
  color: #B91111;
}

/* インナー
---------------------------------------------------------- */
:root {
  --sp_padding: 18px;
}

.l-inner {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  padding: 0 var(--sp_padding);
}

/* page__body
---------------------------------------------------------- */
.l-page__body {
  padding: 24px 0 70px;
}

/* セクション
---------------------------------------------------------- */
.pd-sec:not(:last-child) {
  margin-bottom: 50px;
}
.pd-sec__ttl {
  /* セクションタイトル */
  font-size: 16px;
  margin-bottom: 20px;
}
.pd-sec__ttl--border {
  border-bottom: 1px solid #D8D8D8;
  padding-bottom: 14px;
}

/* scroll hint
---------------------------------------------------------- */
.scroll-hint-icon {
  padding: 20px 10px 10px 10px;
  height: 84px;
}

.scroll-hint-text {
  margin-top: 5px;
  font-size: 10px;
}

/* パンくずリスト
---------------------------------------------------------- */
.c-breadcrumb {
  background-color: #F4F4F4;
}
.c-breadcrumb .l-inner {
  padding-left: 0;
}
.c-breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: auto;
  word-break: keep-all;
  white-space: nowrap;
  padding: 8px 0 8px var(--sp_padding);
}
.c-breadcrumb ul li {
  color: #6C6A6A;
  font-size: 11px;
}
.c-breadcrumb ul li:not(:last-child)::after {
  content: ">";
  margin-inline: 6px;
}
.c-breadcrumb ul li a {
  color: inherit;
  text-decoration: underline;
}

/* ボタン
---------------------------------------------------------- */
.l-productDetail .c-btn__btnarea {
  display: block;
  width: 100%;
  border-radius: 3px;
  background-color: var(--bg_color);
  color: var(--color);
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.28;
  padding: 16px;
  cursor: pointer;
}
.l-productDetail .c-btn--line_black {
  /* 黒線白背景ボタン */
  --bg_color: #fff;
}
.l-productDetail .c-btn--line_black .c-btn__btnarea {
  border: 1px solid #b4b4b4;
}
.l-productDetail .c-btn--bg_red {
  /* 赤背景ボタン */
  --color: #fff;
  --bg_color: #B91111;
}
.l-productDetail .c-btn--reserve {
  /* 予約する */
  --color: #fff;
  --bg_color: #14BF77;
}
.l-productDetail .c-btn--reserve.is-cancelable, .l-productDetail .c-btn--reserve.is-non-cancelable {
  /* 予約する（キャンセル可・不可） */
}
.l-productDetail .c-btn--reserve.is-cancelable .c-btn__btnarea, .l-productDetail .c-btn--reserve.is-non-cancelable .c-btn__btnarea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 5px;
}
.l-productDetail .c-btn--reserve.is-cancelable span, .l-productDetail .c-btn--reserve.is-non-cancelable span {
  font-weight: bold;
  font-size: 10px;
  line-height: 1;
  border-radius: 3px;
  padding: 3px 4px;
}
.l-productDetail .c-btn--reserve.is-cancelable span {
  color: #306244;
  background-color: #ddfde4;
}
.l-productDetail .c-btn--reserve.is-non-cancelable span {
  color: #a8730e;
  background-color: #f4f7da;
}
.l-productDetail .c-btn--contact {
  /* お問合わせ */
  --color: #fff;
  --bg_color: #0073C8;
}
.l-productDetail .c-btn--dc { /* 廃番 */
  --color: #fff;
  --bg_color: #e58e28;
}
.l-productDetail .c-btn--wish { /* ほしいものリストボタン */
  position: relative;
}
.l-productDetail .c-btn--wish .c-wish__btnarea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 14px;
  background-color: #fff;
  border: 1px solid #b4b4b4;
  padding: 10px;
}
.l-productDetail .c-btn--wish .c-wish__text {
  text-align: left;
  width: 192px;
}
.l-productDetail .c-btn--wish.is-active .c-wish__icon {
  fill: #B91111;
  -webkit-animation: pop 0.6s ease forwards;
          animation: pop 0.6s ease forwards;
}
.l-productDetail .c-btn--wish-onlyIcon { /* ほしいものリスト - アイコンのみボタン */
  aspect-ratio: 1;
  width: 35px;
}
.l-productDetail .c-btn--wish-onlyIcon .c-wish__btnarea {
  border-radius: 50%;
  height: 100%;
  padding: 0;
}
.l-productDetail .c-btn--wish-onlyIcon .c-wish__icon {
  width: 50%;
  margin-bottom: -2px;
}
@-webkit-keyframes pop {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  30% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  70% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
  85% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes pop {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  30% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  70% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
  85% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.l-productDetail .c-btn--wishSingle { /* 価格表内 ほしいものリストボタン（単品用） */
  position: relative;
  aspect-ratio: 1;
  width: 30px;
}
.l-productDetail .c-btn--wishSingle .c-wish__btnarea {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #b4b4b4;
  padding: 0;
}
.l-productDetail .c-btn--wishSingle .c-wish__icon {
  width: 55%;
  margin-bottom: -1px;
}
.l-productDetail .c-btn--wishSingle.is-active .c-wish__icon {
  fill: #B91111;
  -webkit-animation: pop 0.6s ease forwards;
          animation: pop 0.6s ease forwards;
}
.l-productDetail .c-btn--file { /* PDFなどファイル表示系ボタン */ }
.l-productDetail .c-btn--file .c-btn__btnarea {
  border: 1px solid #b4b4b4;
  padding: 10px;
}
.l-productDetail .c-btn--file .c-btn__btnarea span {
  position: relative;
  padding-left: 23px;
}
.l-productDetail .c-btn--file .c-btn__btnarea span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon/file_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 16/19;
  width: 16px;
}
.l-productDetail .c-btn--more { /* もっと見る */
  --bg_color: #fff;
  width: 100%;
}
.l-productDetail .c-btn--more .c-btn__btnarea {
  border: 1px solid #b4b4b4;
  padding: 12px;
}
.l-productDetail .c-btn--more .c-btn__btnarea span {
  position: relative;
  padding-right: 26px;
}
.l-productDetail .c-btn--more .c-btn__btnarea span::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/arrow_01.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 13px;
  height: 7px;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* Page Top
---------------------------------------------------------- */
.c-pagetop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 43px;
  height: 43px;
  border-radius: 50%;
  background-color: rgba(108, 106, 106, 0.6);
  position: fixed;
  right: 10px;
  bottom: 10px; /* .pd-navigation--footの高さの加算→js */
  z-index: 50;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.c-pagetop::before {
  position: absolute;
  content: "";
  display: block;
  top: 5px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  aspect-ratio: 1;
  width: 10px;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-pagetop.show {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(0);
          transform: translate(0);
  pointer-events: auto;
}

/* はてなマーク ツールチップ
---------------------------------------------------------- */
.c-question__wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}

.c-question__icon {
  position: relative;
  width: 15px;
  line-height: 1;
  cursor: pointer;
}
.c-question__icon::before {
  position: absolute;
  content: "";
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  background-color: #FFDBDB;
  aspect-ratio: 11/14;
  width: 11px;
  top: -3px;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}
.c-question__tooltip {
  position: absolute;
  top: -14px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  background-color: #FFDBDB;
  border-radius: 6px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 90vw;
  padding: 12px 20px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}
.c-question__tooltip p {
  font-size: 12px;
  white-space: nowrap;
  margin: 0;
}
.c-question__link {
  font-size: 10px;
}
.c-question.is-show .c-question__icon::before {
  opacity: 1;
  visibility: visible;
}
.c-question.is-show .c-question__tooltip {
  opacity: 1;
  visibility: visible;
}

/* ほしいものリストボタン ツールチップ
---------------------------------------------------------- */
.c-wish-tooltip {
  position: absolute;
  bottom: -13px;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  background-color: #F4F4F4;
  border-radius: 6px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 16px 18px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}
.c-wish-tooltip::before {
  position: absolute;
  content: "";
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  background-color: #F4F4F4;
  aspect-ratio: 15/11;
  width: 15px;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
}
.c-wish-tooltip p {
  font-size: 12px;
  white-space: nowrap;
  margin: 0;
}
.c-wish-tooltip a {
  color: #000;
  text-decoration: underline;
}
.c-wish-tooltip.is-show {
  opacity: 1;
  visibility: visible;
}

.c-btn--wish-onlyIcon .c-wish-tooltip {
  bottom: unset;
  top: -17px;
  left: unset;
  right: 0;
  -webkit-transform: translate(0, -100%);
          transform: translate(0, -100%);
}
.c-btn--wish-onlyIcon .c-wish-tooltip::before {
  top: 100%;
  right: 10px;
  left: unset;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

/* レビュー（星+数字+リンク）
---------------------------------------------------------- */
.c-review {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-review__star {
  --star-color: #fff;
  --star-fill: #F4B400;
  --percent: calc(var(--rating) / 5 * 100%);
  /* --ratingはhtml側で指定 */
  background: -webkit-gradient(linear, left top, right top, from(var(--star-fill)), to(var(--star-color)));
  background: linear-gradient(90deg, var(--star-fill) var(--percent), var(--star-color) var(--percent));
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #F4B400;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #F4B400;
  font-size: 11px;
  letter-spacing: 0.2em;
}
.c-review__number {
  font-size: 11px;
  margin-left: 6px;
}
.c-review__link {
  font-size: 11px;
  margin-left: 6px;
}

/* 在庫状況
---------------------------------------------------------- */
.c-stock-status {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  color: var(--color);
  font-weight: bold;
  font-size: 12px;
  white-space: nowrap;
}
.c-stock-status span {
  position: relative;
  padding-left: 17px;
}
.c-stock-status span::before {
  position: absolute;
  content: "";
  aspect-ratio: 1;
  width: 14px;
  height: auto;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
}
.c-stock-status--in_stock {
  /* 在庫あり */
  --color: #07A30D;
}
.c-stock-status--in_stock span::before {
  background-image: url(../images/icon/circle_01.svg);
}
.c-stock-status--limited {
  /* 在庫わずか */
  --color: #B91111;
}
.c-stock-status--limited span::before {
  background-image: url(../images/icon/triangle_01.svg);
}
.c-stock-status--no_stock {
  /* 在庫なし */
  --color: #6C6A6A;
}
.c-stock-status--no_stock span::before {
  background-image: url(../images/icon/cross_01.svg);
}
.c-stock-status--reserve {
  /* 予約商品 */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2px;
  font-size: 10px;
}
.c-stock-status--reserve::before {
  content: "予約商品";
  color: #fff;
  font-weight: bold;
  font-size: 11px;
  background-color: #14BF77;
  border-radius: 3px;
  padding: 2px 24px 1px;
}
.c-stock-status--reserve.is-cancelable {
  --color: #6C6A6A;
}
.c-stock-status--reserve.is-non-cancelable {
  --color: #B91111;
}
.c-stock-status--contact {
  /* お問い合わせください */
  --color: #000;
  text-align: center;
}
.c-stock-status--bg {
  /* 背景あり */
  --bg_color: #F0FAEF;
  background-color: var(--bg_color);
  padding: 3px 5px;
}
.c-stock-status--bg.c-stock-status--limited {
  /* 背景あり+在庫わずか */
  --bg_color: #FAEFEF;
}
.c-stock-status--bg.c-stock-status--no_stock {
  /* 背景あり+在庫なし */
  --bg_color: #F4F4F4;
}

/* 配送ステータスアイコン
---------------------------------------------------------- */
.c-status-icon {
  height: 21px;
}
.c-status-icon img {
  height: 100%;
  width: auto;
}

/* レビュー（星+数字+リンク）
---------------------------------------------------------- */
.l-productDetail .c-count {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
.l-productDetail .c-count__btn {
  aspect-ratio: 1;
  width: 38px;
  background-color: #e3e3e3;
  border-radius: 4px;
}
.l-productDetail .c-count__btn--down {
  position: relative;
}
.l-productDetail .c-count__btn--down::before {
  position: absolute;
  content: "";
  background-color: #000;
  width: 15px;
  height: 2px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-productDetail .c-count__btn--up {
  position: relative;
}
.l-productDetail .c-count__btn--up::before, .l-productDetail .c-count__btn--up::after {
  position: absolute;
  content: "";
  background-color: #000;
  width: 15px;
  height: 2px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-productDetail .c-count__btn--up::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.l-productDetail .c-count__btn.is-disable {
  opacity: 0.3;
  cursor: initial;
}
.l-productDetail .c-count__input {
  width: 84px;
  height: 38px;
  background-color: #fff;
  border: 1px solid #D8D8D8;
  border-radius: 4px;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
}
.l-productDetail .c-count__input::-webkit-outer-spin-button, .l-productDetail .c-count__input::-webkit-inner-spin-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: textfield;
  margin: 0;
}

/* ページャー
---------------------------------------------------------- */
.l-productDetail .c-pagenation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 26px;
}
.l-productDetail .c-pagenation__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 22px;
  font-weight: bold;
  font-size: 14px;
}
.l-productDetail .c-pagenation__list > li.current {
  color: #000;
}
.l-productDetail .c-pagenation__list > li a {
  color: #a7a7a7;
}
.l-productDetail .c-pagenation__arrow {
  position: relative;
  background-color: #D8D8D8;
  border-radius: 3px;
  aspect-ratio: 1;
  width: 35px;
  cursor: pointer;
}
.l-productDetail .c-pagenation__arrow::before {
  position: absolute;
  content: "";
  border-top: 2px solid #6C6A6A;
  border-right: 2px solid #6C6A6A;
  aspect-ratio: 1;
  width: 30%;
  top: 50%;
  left: 55%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-productDetail .c-pagenation__arrow--prev::before {
  -webkit-transform: translate(-50%, -50%) rotate(225deg);
          transform: translate(-50%, -50%) rotate(225deg);
}
.l-productDetail .c-pagenation__arrow--next::before {
  left: 45%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.l-productDetail .c-pagenation__arrow--disactive {
  opacity: 0;
  visibility: hidden;
}

/* ==========================================================================//
//
// 追従メニュー
//
// ========================================================================== */
.pd-navigation {
  position: fixed;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding: 0 9px;
  z-index: 60;
  visibility: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.pd-navigation--head {
  top: 0;
  -webkit-filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.16));
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.pd-navigation--foot {
  bottom: 0;
  -webkit-filter: drop-shadow(0 -3px 6px rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 -3px 6px rgba(0, 0, 0, 0.16));
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  padding: 8px 0;
}
.pd-navigation.is-show {
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.pd-navigation__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pd-navigation__menu-item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-navigation__menu-item a {
  position: relative;
  display: -ms-grid;
  display: grid;
  place-items: center;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  padding: 12px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.pd-navigation__menu-item a::before {
  position: absolute;
  content: "";
  background-color: #000;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.pd-navigation__menu-item.current a::before {
  opacity: 1;
}
.pd-navigation__text {
  text-align: center;
  font-size: 12px;
  margin-bottom: 4px;
}
.pd-navigation__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px;
}
.pd-navigation__btn .btn__primary {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-navigation__btn .btn__primary .c-btn__btnarea {
  font-size: 14px;
  padding: 11px;
}
.pd-navigation__btn .text_center {
  text-align: center;
  font-size: 13px;
  line-height: 1.84;
}

/* ==========================================================================//
//
// スライド
//
// ========================================================================== */
body.modal_open {
  overflow: hidden;
}

/* トップスライド
---------------------------------------------------------- */
.pd-topSlide {
  position: sticky;
  top: 0;
}
.pd-topSlide__main {
  /* メインスライダー */
}
.pd-topSlide__main .splide__track {
  position: relative;
}
.pd-topSlide__main .splide__track::before {
  position: absolute;
  content: "";
  bottom: 6px;
  right: 6px;
  aspect-ratio: 1;
  width: 37px;
  background-color: #bfbfbf;
  border-radius: 3px;
  background-image: url(../images/icon/zoom_white_01.svg);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 1;
  pointer-events: none;
}
.pd-topSlide__main .splide__slide {
  cursor: pointer;
}
.pd-topSlide__main .splide__arrows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 26px;
  margin-top: 16px;
}
.pd-topSlide__main .splide__arrow {
  position: relative;
  width: 25px;
  height: 25px;
  background-color: transparent;
}
.pd-topSlide__main .splide__arrow::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  aspect-ratio: 1;
  width: 40%;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
.pd-topSlide__main .splide__arrow--prev::before {
  -webkit-transform: translate(-25%, -50%) rotate(-135deg);
          transform: translate(-25%, -50%) rotate(-135deg);
}
.pd-topSlide__main .splide__arrow--next::before {
  -webkit-transform: translate(-75%, -50%) rotate(45deg);
          transform: translate(-75%, -50%) rotate(45deg);
}
.pd-topSlide__main .slide_counter {
  /* カウント */
  font-weight: bold;
  font-size: 12px;
}

/* トップスライド - モーダル
---------------------------------------------------------- */
.pd-topModal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  pointer-events: none;
  opacity: 0;
  z-index: 100;
  background-color: rgba(120, 123, 131, 0.8);
}
.pd-topModal.is-active {
  opacity: 1;
  pointer-events: auto;
}
.pd-topModal__overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.pd-topModal__content {
  position: relative;
  width: 100%;
  max-height: 98vh;
  background-color: #fff;
  padding: 50px 20px 30px;
  overflow-y: auto;
}
.pd-topModal__close-btn {
  position: absolute;
  right: 6px;
  top: 6px;
  width: 40px;
  height: 40px;
  background-color: transparent;
  cursor: pointer;
  z-index: 10;
}
.pd-topModal__close-btn::before, .pd-topModal__close-btn::after {
  position: absolute;
  content: "";
  background-color: #000;
  width: 68%;
  height: 2px;
  top: 50%;
  left: 50%;
}
.pd-topModal__close-btn::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.pd-topModal__close-btn::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.pd-topModal__slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
.pd-topModal__main {
  position: relative;
}
.pd-topModal__main .zoom-tip {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  background-color: rgba(0, 0, 0, 0.5);
  width: min(220px, 100%);
  color: #fff;
  font-weight: 500;
  font-size: 16px;
  padding: 0.8em;
  z-index: 1;
  display: none;
}
.pd-topModal__main .splide__arrows {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: min(854px, 90%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10;
  pointer-events: none;
}
.pd-topModal__main .splide__arrow {
  position: relative;
  width: 41px;
  height: 41px;
  background-color: #464646;
  pointer-events: visible;
}
.pd-topModal__main .splide__arrow svg {
  display: none;
}
.pd-topModal__main .splide__arrow::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  aspect-ratio: 1;
  width: 30%;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.pd-topModal__main .splide__arrow--prev {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.pd-topModal__main .splide__arrow--prev::before {
  -webkit-transform: translate(-25%, -50%) rotate(-135deg);
          transform: translate(-25%, -50%) rotate(-135deg);
}
.pd-topModal__main .splide__arrow--next {
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}
.pd-topModal__main .splide__arrow--next::before {
  -webkit-transform: translate(-75%, -50%) rotate(45deg);
          transform: translate(-75%, -50%) rotate(45deg);
}
.pd-topModal__main .slide__image {
  background-color: #fff;
  -webkit-transform: scale(1) translateZ(0);
          transform: scale(1) translateZ(0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.pd-topModal__main .slide__image img {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.pd-topModal__main .slide__image.is-active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-transform: scale(3) translateZ(0);
          transform: scale(3) translateZ(0);
}
.pd-topModal__main .slide__image.is-active img {
  position: relative;
}
.pd-topModal__main .slide_caption {
  margin-top: 15px;
  background-color: #F4F4F4;
  padding: 15px;
}
.pd-topModal__thumb {
  /* サムネイル */
}
.pd-topModal__thumb .splide__track {
  margin-right: calc(var(--sp_padding) * -1);
}
.pd-topModal__thumb .splide__slide {
  position: relative;
  border: 1px solid #D8D8D8;
  cursor: pointer;
}
.pd-topModal__thumb .splide__slide::before {
  position: absolute;
  content: "";
  inset: -1px;
  border: 2px solid #000;
  opacity: 0;
}
.pd-topModal__thumb .splide__slide.is-active::before {
  opacity: 1;
}
.pd-topModal__thumb .splide__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 3px;
  margin-top: 14px;
}
.pd-topModal__thumb .splide__pagination > li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 0;
}
.pd-topModal__thumb .splide__pagination__page {
  width: 100%;
  height: 3px;
  background-color: #D8D8D8;
  font-size: 0;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.pd-topModal__thumb .splide__pagination__page.is-active {
  background-color: #000;
}
.pd-topModal__thumb .slide_counter {
  /* カウント */
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  margin-top: 12px;
}

/* スライド - キャンペーン
---------------------------------------------------------- */
.pd-campaignSlide {
  overflow: hidden;
  margin-inline: calc(var(--sp_padding) * -1);
}
.pd-campaignSlide .splide__track {
  overflow: visible;
}
.pd-campaignSlide .splide__arrows {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  pointer-events: none;
}
.pd-campaignSlide .splide__arrows .splide__arrow {
  display: -ms-grid;
  display: grid;
  place-content: center;
  aspect-ratio: 28/55;
  width: 28px;
  border: none;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
}
.pd-campaignSlide .splide__arrows .splide__arrow::after {
  content: "";
  aspect-ratio: 1;
  width: 12px;
  border-style: solid;
  border-color: #fff;
  border-width: 1px 1px 0 0;
}
.pd-campaignSlide .splide__arrows .splide__arrow > svg {
  display: none;
}
.pd-campaignSlide .splide__arrows .splide__arrow--prev {
  border-radius: 0 6px 6px 0;
}
.pd-campaignSlide .splide__arrows .splide__arrow--prev::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  margin-left: 3px;
}
.pd-campaignSlide .splide__arrows .splide__arrow--next {
  border-radius: 6px 0 0 6px;
}
.pd-campaignSlide .splide__arrows .splide__arrow--next::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-right: 3px;
}
.pd-campaignSlide .splide__list .splide__slide {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.pd-campaignSlide .splide__list .splide__slide a img {
  width: auto;
  height: 100%;
}
.pd-campaignSlide .splide:has(.splide__slide:first-of-type.is-active) .splide__arrow--prev {
  visibility: hidden;
}

/* スライド - 商品リスト
---------------------------------------------------------- */
.pd-productSlide {
  overflow: hidden;
  margin-inline: calc(var(--sp_padding) * -1);
}
.pd-productSlide .splide__track {
  overflow: visible;
}
.pd-productSlide .splide__arrows {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  pointer-events: none;
}
.pd-productSlide .splide__arrows .splide__arrow {
  display: -ms-grid;
  display: grid;
  place-content: center;
  aspect-ratio: 28/55;
  width: 28px;
  border: none;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
}
.pd-productSlide .splide__arrows .splide__arrow::after {
  content: "";
  aspect-ratio: 1;
  width: 12px;
  border-style: solid;
  border-color: #fff;
  border-width: 1px 1px 0 0;
}
.pd-productSlide .splide__arrows .splide__arrow > svg {
  display: none;
}
.pd-productSlide .splide__arrows .splide__arrow--prev {
  border-radius: 0 6px 6px 0;
}
.pd-productSlide .splide__arrows .splide__arrow--prev::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  margin-left: 3px;
}
.pd-productSlide .splide__arrows .splide__arrow--next {
  border-radius: 6px 0 0 6px;
}
.pd-productSlide .splide__arrows .splide__arrow--next::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-right: 3px;
}
.pd-productSlide .splide__list .splide__slide .cont {
  margin-bottom: 12px;
}
.pd-productSlide .splide__list .splide__slide .cont a {
  display: block;
}
.pd-productSlide .splide__list .splide__slide .cont__image {
  margin-bottom: 3px;
}
.pd-productSlide .splide__list .splide__slide .cont__name {
  text-decoration: underline;
  line-height: 1.69;
  font-size: 13px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-bottom: 8px;
}
.pd-productSlide .splide__list .splide__slide .cont__price {
  font-weight: bold;
  font-size: 13px;
}
.pd-productSlide .splide__list .splide__slide .cont__price span {
  font-weight: 400;
  font-size: 0.84em;
  margin-left: 0.5em;
}
.pd-productSlide .splide__list .splide__slide .cont__status {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  line-height: 18px;
  margin-bottom: 6px;
}
.pd-productSlide .splide__list .splide__slide .cont__status .c-status-icon {
  height: 18px;
}
.pd-productSlide .splide__list .splide__slide .cont__review {
  margin-top: 6px;
}
.pd-productSlide .splide__list .splide__slide .cont__review .c-review__star {
  font-size: 8px;
  -webkit-text-stroke-width: 1px;
}
.pd-productSlide .splide__list .splide__slide .cont__review .c-review__number {
  font-size: 9px;
}
.pd-productSlide .splide__list .splide__slide .c-btn__btnarea {
  font-size: 12px;
  padding: 10px;
}
.pd-productSlide .splide:has(.splide__slide:first-of-type.is-active) .splide__arrow--prev {
  visibility: hidden;
}

/* ==========================================================================//
//
// 商品詳細トップ（商品画像 + 価格などのエリア）
//
// ========================================================================== */
.pd-productTop {
  margin-bottom: 50px;
}
.pd-productTop__head {
  /* head */
  margin-bottom: 35px;
}
.pd-productTop__head-ttl {
  font-size: 16px;
  line-height: 1.43;
}
.pd-productTop__head-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px 20px;
  margin-top: 14px;
}
.pd-productTop__head-info .info__text {
  color: #6C6A6A;
  font-size: 11px;
}
.pd-productTop__head-info:has(> :nth-child(3)) {
  /* 子要素が3つ以上あるときはレビューを幅maxに */
}
.pd-productTop__head-info:has(> :nth-child(3)) .info__review {
  width: 100%;
}
.pd-productTop__body {
  /* body */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px 60px;
}
.pd-productTop__icon {
  /* アイコン */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 20px;
  margin-bottom: 23px;
}
.pd-productTop__icon .icon__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px 7px;
}
.pd-productTop__icon .icon__item {
  height: 20px;
}
.pd-productTop__icon .icon__item img {
  height: 100%;
  width: auto;
}
.pd-productTop__icon .icon__question {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productTop__price {
  /* 価格+ポイント */
}
.pd-productTop__price-sub {
  margin-bottom: 14px;
}
.pd-productTop__price-sub .sub__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px 20px;
}
.pd-productTop__price .price__default {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-productTop__price .price__default .tax {
  font-size: 0.85em;
}
.pd-productTop__price .price__default--line {
  color: #000;
}
.pd-productTop__price .price__default--line .line {
  text-decoration: line-through;
}
.pd-productTop__price .price__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px 6px;
}
.pd-productTop__price .price__wrap .price__selling {
  font-weight: bold;
  font-size: 20px;
  line-height: 1;
}
.pd-productTop__price .price__wrap .price__selling .tax {
  font-weight: 400;
  font-size: 11px;
}
.pd-productTop__price .price__wrap .price__ex {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-productTop__price .price__wrap .price__ex .tax {
  font-size: 10px;
}
.pd-productTop__price .price__wrap .price__discount {
  background-color: #B91111;
  color: #fff;
  font-weight: bold;
  font-size: 12px;
  line-height: 1;
  border-radius: 3px;
  padding: 4px 5px;
}
.pd-productTop__price .point__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 6px 8px;
  margin-top: 14px;
}
.pd-productTop__price .point__wrap .point__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7px;
}
.pd-productTop__price .point__wrap .point__text img {
  width: 19px;
}
.pd-productTop__price .point__wrap .point__text p {
  font-size: 13px;
}
.pd-productTop__price .point__wrap .point__text p .red {
  color: #B91111;
  font-weight: bold;
}
.pd-productTop__price .point__wrap .point__text p .red .pt {
  font-size: 12px;
}
.pd-productTop__price .point__wrap .point__text p .note {
  font-size: 11px;
}
.pd-productTop__price .point__wrap .point__question {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productTop__price-special {
  /* 特別価格 */
  position: relative;
  background-color: #fcd500;
  border-radius: 6px;
  padding: 10px;
  margin-top: 26px;
}
.pd-productTop__price-special::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/special_price_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 60px;
  top: -15px;
  left: -9px;
}
.pd-productTop__price-special .special__head {
  font-size: 14px;
  background-image: url(../images/icon/timer_01.svg);
  background-size: auto 50px;
  background-repeat: no-repeat;
  background-position: 100% 300%;
  padding: 3px 0 12px 50px;
  margin-right: 13px;
}
.pd-productTop__price-special .special__content {
  background-color: #fff;
  border-radius: 6px;
  padding: 16px 12px;
}
.pd-productTop__price-special .special__foot {
  border-top: 1px solid #fcd500;
  padding-top: 10px;
  margin-top: 10px;
}
.pd-productTop__price-special .special__foot .text {
  font-weight: bold;
  font-size: 12px;
}
.pd-productTop__price-special .special__foot .text span {
  font-size: 1.33em;
}
.pd-productTop__price-limited {
  /* 限定特価 */
  background-color: #ffe7b2;
  border-radius: 6px;
  padding: 4px;
}
.pd-productTop__price-limited .limited__head {
  font-size: 14px;
  padding: 5px 10px;
}
.pd-productTop__price-limited .limited__content {
  background-color: #fff;
  border-radius: 6px;
  padding: 16px 12px;
}
.pd-productTop__price-limited .limited__foot {
  border-top: 1px solid #fcd500;
  padding-top: 10px;
  margin-top: 10px;
}
.pd-productTop__price-limited .limited__foot .text {
  font-weight: bold;
  font-size: 12px;
}
.pd-productTop__price-limited .limited__foot .text span {
  font-size: 1.33em;
}
.pd-productTop__price-limited02 .limited__head {
  color: #B91111;
  font-size: 14px;
  line-height: 1;
  background-color: #ffeaea;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 13px;
  margin-bottom: 14px;
}
.pd-productTop__delivery {
  /* 送料、出荷状況など */
  background-color: #F4F4F4;
  margin-inline: calc(var(--sp_padding) * -1);
  padding: 20px var(--sp_padding);
  margin-top: 30px;
}
.pd-productTop__delivery .delivery__head {
  padding-bottom: 14px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-productTop__delivery .shipping-fee {
  /* 送料 */
}
.pd-productTop__delivery .shipping-fee__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 6px 8px;
}
.pd-productTop__delivery .shipping-fee__text {
  font-weight: bold;
  font-size: 14px;
}
.pd-productTop__delivery .shipping-fee__question {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productTop__delivery .shipping-fee__foot {
  font-size: 12px;
  margin-top: 9px;
}
.pd-productTop__delivery .shipping-fee__foot a {
  color: #B91111;
  text-decoration: underline;
}
.pd-productTop__delivery .delivery__body {
  padding-top: 16px;
}
.pd-productTop__delivery .delivery__body .address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 13px;
  margin-bottom: 10px;
}
.pd-productTop__delivery .delivery__body .address__postcode {
  /* 郵便番号 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid #E6E6E6;
}
.pd-productTop__delivery .delivery__body .address__postcode .postmark {
  background-color: #D8D8D8;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
  padding: 4px 8px;
}
.pd-productTop__delivery .delivery__body .address__postcode .input_area {
  border: none;
  width: 75px;
  font-size: 12px;
  background-color: #fff;
  padding: 4px 8px;
}
.pd-productTop__delivery .delivery__body .address__postcode .input_area::-webkit-input-placeholder {
  color: #D8D8D8;
  font-size: inherit;
}
.pd-productTop__delivery .delivery__body .address__postcode .input_area::-moz-placeholder {
  color: #D8D8D8;
  font-size: inherit;
}
.pd-productTop__delivery .delivery__body .address__postcode .input_area:-ms-input-placeholder {
  color: #D8D8D8;
  font-size: inherit;
}
.pd-productTop__delivery .delivery__body .address__postcode .input_area::-ms-input-placeholder {
  color: #D8D8D8;
  font-size: inherit;
}
.pd-productTop__delivery .delivery__body .address__postcode .input_area::placeholder {
  color: #D8D8D8;
  font-size: inherit;
}
.pd-productTop__delivery .delivery__body .address__result {
  /* お届け先 */
  font-size: 13px;
}
.pd-productTop__delivery .delivery__body .content {
  background-color: #fff;
  border-radius: 6px;
  padding: 16px;
}
.pd-productTop__delivery .delivery__body .content__speed {
  /* 出荷スピード */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 10px;
}
.pd-productTop__delivery .delivery__body .content__speed .icon {
  height: 23px;
}
.pd-productTop__delivery .delivery__body .content__speed .icon img {
  height: 100%;
  width: auto;
}
.pd-productTop__delivery .delivery__body .content__speed .note {
  color: #6C6A6A;
  font-size: 11px;
  margin-inline: -0.5em;
}
.pd-productTop__delivery .delivery__body .content__date {
  /* お届け日 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.pd-productTop__delivery .delivery__body .content__date .date__heading {
  white-space: nowrap;
}
.pd-productTop__delivery .delivery__body .content__date .date__cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-productTop__delivery .delivery__body .content__date .bold {
  font-size: 14px;
}
.pd-productTop__delivery .delivery__body .content__date .note {
  color: #6C6A6A;
  font-size: 11px;
  margin-top: 2px;
}
.pd-productTop__delivery .delivery__body .content__stock {
  /* 在庫状況 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 14px;
}
.pd-productTop__delivery .delivery__body .content__stock .stock__heading {
  white-space: nowrap;
}
.pd-productTop__delivery .delivery__body .content__stock .stock__cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px 5px;
}
.pd-productTop__delivery .delivery__body .content__stock .stock__cont .note {
  color: #6C6A6A;
  font-size: 12px;
  line-height: 1.6;
}
.pd-productTop__delivery .delivery__body .content__stock .stock__cont .text {
  font-size: 12px;
}
.pd-productTop__delivery .delivery__body .content__stock .stock__cont .c-question__wrap {
  width: 100%;
}
.pd-productTop__discontinued {
  /* 廃番 */
}
.pd-productTop__discontinued .dc__heading {
  font-weight: bold;
  font-size: 16px;
}
.pd-productTop__discontinued p:not(:last-child) {
  margin-bottom: 8px;
}
.pd-productTop__select {
  margin-top: 30px;
}
.pd-productTop__select fieldset {
  min-width: unset;
  margin: 0;
  padding: 0;
  border: none;
}
.pd-productTop__select fieldset:not(:last-child) {
  margin-bottom: 25px;
}
.pd-productTop__select legend {
  width: 100%;
  font-size: 14px;
  background-color: #F4F4F4;
  border-radius: 3px;
  padding: 8px 14px;
  margin-bottom: 16px;
}
.pd-productTop__select .color__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
  gap: 6px;
}
.pd-productTop__select .color__item input[type=radio] {
  display: none;
}
.pd-productTop__select .color__item label {
  position: relative;
  display: block;
  border-radius: 3px;
  border: 1px solid #D8D8D8;
}
.pd-productTop__select .color__item label::before {
  position: absolute;
  content: "";
  border-radius: 3px;
  border: 3px solid #000;
  inset: -1px;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.pd-productTop__select .color__item img {
  border-radius: 3px;
}
.pd-productTop__select .color__item input[type=radio]:checked + label::before {
  opacity: 1;
}
.pd-productTop__select .size__item {
  border-bottom: 1px solid #D8D8D8;
  padding-bottom: 14px;
}
.pd-productTop__select .size__item:not(:last-child) {
  margin-bottom: 14px;
}
.pd-productTop__select .size__item .item__wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 8px auto;
      grid-template-areas: "top01 top02 right" "bottom01 bottom01 right";
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-grid-columns: auto auto 1fr;
  grid-template-columns: auto auto 1fr;
  row-gap: 8px;
}
.pd-productTop__select .size__item .item__size {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: top01;
  width: 50px;
  font-weight: bold;
  font-size: 16px;
}
.pd-productTop__select .size__item .item__price {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: bottom01;
  -ms-grid-row: 2;
  grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/span 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.pd-productTop__select .size__item .item__price .inc {
  font-weight: bold;
  font-size: 14px;
}
.pd-productTop__select .size__item .item__price .ex {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-productTop__select .size__item .item__price span {
  font-weight: 400;
  font-size: 10px;
}
.pd-productTop__select .size__item .item__satus {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: top02;
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 2;
  grid-column: 2;
}
.pd-productTop__select .size__item .item__count {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
  grid-area: right;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.pd-productTop__select .size__item .item__count .c-count__input {
  width: 56px;
}
.pd-productTop__btnArea {
  /* ボタンエリア */
  margin-top: 30px;
}
.pd-productTop__btnArea .count__wrap {
  margin-bottom: 20px;
}
.pd-productTop__btnArea .btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.pd-productTop__payment {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 7px;
     -moz-column-gap: 7px;
          column-gap: 7px;
  font-size: 12px;
  margin-top: 25px;
}
.pd-productTop__payment .payment__head {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
}
.pd-productTop__payment .payment__cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-productTop__payment .payment__cont a {
  text-decoration: underline;
}
.pd-productTop__attention {
  margin-top: 20px;
}
.pd-productTop__attention .attn__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px;
}
.pd-productTop__attention .attn__item {
  color: #B91111;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  border: 1px solid #efbfbf;
  padding: 4px 6px;
}
.pd-productTop__variation {
  background-color: #F4F4F4;
  border-right: 6px;
  text-align: center;
  padding: 16px;
  margin-top: 40px;
}
.pd-productTop__variation .variation__head {
  margin-bottom: 6px;
}
.pd-productTop__variation .c-btn {
  width: 100%;
  margin-inline: auto;
}
.pd-productTop__variation .c-btn__btnarea {
  padding: 10px;
}
.pd-productTop__data {
  /* 商品情報 */
  padding: 22px 0;
  border-top: 1px solid #D8D8D8;
  border-bottom: 1px solid #D8D8D8;
  margin-top: 40px;
}
.pd-productTop__data p {
  line-height: 1.7;
}
.pd-productTop__data a {
  color: #000;
  text-decoration: underline;
}

/* ==========================================================================//
//
// 価格表
//
// ========================================================================== */
.pd-priceList {
  margin: 50px 0;
}
.pd-priceList__ttl {
  color: #fff;
  text-align: center;
  font-size: 15px;
  background-color: #6C6A6A;
  padding: 12px 15px;
}
.pd-priceList__table {
  word-break: break-all;
  background-color: #F4F4F4;
  padding: 20px 15px;
}
.pd-priceList__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  background-color: #fff;
  padding: 20px 10px;
}
.pd-priceList__item:not(:last-child) {
  margin-bottom: 8px;
}
.pd-priceList__item .row__image {
  width: 70px;
}
.pd-priceList__item .row__image .image {
  position: relative;
  cursor: pointer;
}
.pd-priceList__item .row__image .image::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/zoom_mini_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 23px;
  bottom: 0;
  right: 0;
}
.pd-priceList__item .row__price {
  width: calc(100% - 15px - 70px);
}
.pd-priceList__item .row__price .price__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
.pd-priceList__item .row__price .price__heading {
  line-height: 1;
  margin-bottom: 8px;
}
.pd-priceList__item .row__price .price__wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4px;
  line-height: 1;
}
.pd-priceList__item .row__price .price__main {
  font-weight: bold;
  font-size: 18px;
}
.pd-priceList__item .row__price .price__main span {
  font-weight: 400;
  font-size: 10px;
}
.pd-priceList__item .row__price .price__ex span {
  font-size: 10px;
}
.pd-priceList__item .row__price .price__point {
  position: relative;
  line-height: 1;
  padding-left: 20px;
  margin-top: 12px;
}
.pd-priceList__item .row__price .price__point::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/point_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 16px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.pd-priceList__item .row__price .price__point span {
  color: #B91111;
  font-weight: bold;
}
.pd-priceList__item .row__price .price__special {
  height: 20px;
}
.pd-priceList__item .row__price .price__special img {
  height: 100%;
  width: auto;
}
.pd-priceList__item .row__price .price__default {
  color: #6C6A6A;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  margin-top: 10px;
}
.pd-priceList__item .row__price .price__default span {
  font-size: 9px;
}
.pd-priceList__item .row__ttl {
  width: 100%;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #D8D8D8;
  margin-bottom: 6px;
}
.pd-priceList__item .row__ttl a {
  color: #000;
  font-size: 14px;
  line-height: 1.57;
  text-decoration: underline;
}
.pd-priceList__item .row__number {
  font-size: 13px;
  margin-right: 10px;
}
.pd-priceList__item .row__code {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-priceList__item .foot_wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 14px;
}
.pd-priceList__item .row__status .status__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
}
.pd-priceList__item .row__status .status__texts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4px;
}
.pd-priceList__item .row__status .status__note {
  color: #6C6A6A;
  font-size: 10px;
}
.pd-priceList__item .row__btn .btn__primary {
  width: 155px;
  text-align: center;
}
.pd-priceList__item .row__btn .btn__primary .c-btn__btnarea {
  white-space: nowrap;
  font-size: 13px;
  padding: 12px;
}
.pd-priceList__item .row__btn .btn__primary:not(.c-btn) {
  width: auto;
}
.pd-priceList__item .btn__wish {
  position: absolute;
  top: 12px;
  right: 12px;
}
.pd-priceList__item .btn__wish .c-wish-tooltip {
  bottom: unset;
  top: 50%;
  left: -14px;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
}
.pd-priceList__item .btn__wish .c-wish-tooltip::before {
  left: unset;
  top: 50%;
  right: 0;
  -webkit-transform: translate(85%, -50%) rotate(90deg);
          transform: translate(85%, -50%) rotate(90deg);
}

/* ソート・まとめてカート追加ありの価格表
---------------------------------------------------------- */
.pd-priceList-parts {
  background-color: #F4F4F4;
  padding-bottom: 20px;
  margin: 60px 0;
}
.pd-priceList-parts__ttl {
  color: #fff;
  text-align: center;
  font-size: 20px;
  background-color: #6C6A6A;
  padding: 14px;
}
.pd-priceList-parts__controls {
  padding: 0 15px;
}
.pd-priceList-parts__controls .controls__display {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  white-space: nowrap;
}
.pd-priceList-parts__controls .controls__display .display__summary {
  font-weight: bold;
  margin-right: 13px;
}
.pd-priceList-parts__controls .controls__display .display__summary span {
  font-size: 17px;
}
.pd-priceList-parts__controls .controls__display .display__sort {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-left: auto;
}
.pd-priceList-parts__controls .controls__display .display__sort select {
  width: 100%;
  max-width: 100%;
  background: #fff;
  border: 1px solid #E6E6E6;
  border-radius: 4px;
  color: #000;
  font-weight: 400;
  font-size: 13px;
  min-width: 65px;
  background-image: url(../images/icon/arrow_01.svg);
  background-repeat: no-repeat;
  background-size: 13px 7px;
  background-position: right 10px top 52%;
  padding: 6px 26px 7px 10px;
}
.pd-priceList-parts__controls .controls__display .display__sort select::-webkit-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-priceList-parts__controls .controls__display .display__sort select::-moz-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-priceList-parts__controls .controls__display .display__sort select:-ms-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-priceList-parts__controls .controls__display .display__sort select::-ms-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-priceList-parts__controls .controls__display .display__sort select::placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-priceList-parts__controls--head {
  margin-top: 20px;
}
.pd-priceList-parts__controls--foot .controls__pagenation {
  margin-top: 16px;
}
.pd-priceList-parts__table {
  word-break: break-all;
  background-color: #F4F4F4;
  padding: 20px 15px;
}
.pd-priceList-parts__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
  background-color: #fff;
  padding: 20px 10px;
}
.pd-priceList-parts__item:not(:last-child) {
  margin-bottom: 8px;
}
.pd-priceList-parts__item .row__image {
  width: 70px;
}
.pd-priceList-parts__item .row__image .image {
  position: relative;
  cursor: pointer;
}
.pd-priceList-parts__item .row__image .image::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/zoom_mini_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 23px;
  bottom: 0;
  right: 0;
}
.pd-priceList-parts__item .row__price {
  width: calc(100% - 15px - 70px);
}
.pd-priceList-parts__item .row__price .price__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4px;
}
.pd-priceList-parts__item .row__price .price__main {
  font-weight: bold;
  font-size: 18px;
}
.pd-priceList-parts__item .row__price .price__main span {
  font-weight: 400;
  font-size: 10px;
}
.pd-priceList-parts__item .row__price .price__ex span {
  font-size: 10px;
}
.pd-priceList-parts__item .row__price .price__point {
  position: relative;
  padding-left: 20px;
  margin-top: 4px;
}
.pd-priceList-parts__item .row__price .price__point::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/point_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 16px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.pd-priceList-parts__item .row__price .price__point span {
  color: #B91111;
  font-weight: bold;
}
.pd-priceList-parts__item .row__price .price__default {
  color: #6C6A6A;
  font-size: 12px;
  white-space: nowrap;
  margin-top: 4px;
}
.pd-priceList-parts__item .row__price .price__default span {
  font-size: 9px;
}
.pd-priceList-parts__item .row__ttl {
  width: 100%;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #D8D8D8;
  margin-bottom: 6px;
}
.pd-priceList-parts__item .row__ttl a {
  color: #000;
  font-size: 14px;
  line-height: 1.57;
  text-decoration: underline;
}
.pd-priceList-parts__item .row__partsNum {
  margin-right: 10px;
}
.pd-priceList-parts__item .row__number {
  margin-right: 10px;
}
.pd-priceList-parts__item .row__quantity {
  margin-right: 10px;
}
.pd-priceList-parts__item .row__code {
  color: #6C6A6A;
  font-size: 13px;
}
.pd-priceList-parts__item .foot_wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 14px;
}
.pd-priceList-parts__item .foot_wrap p {
  text-align: center;
}
.pd-priceList-parts__item .row__status .status__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
}
.pd-priceList-parts__item .row__status .status__texts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4px;
}
.pd-priceList-parts__item .row__status .status__note {
  color: #6C6A6A;
  font-size: 10px;
}
.pd-priceList-parts__item .row__orderQuantity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.pd-priceList-parts__item .row__orderQuantity .c-count__btn {
  width: 31px;
}
.pd-priceList-parts__item .row__orderQuantity .c-count__input {
  width: 46px;
  height: 31px;
  font-size: inherit;
  text-align: center;
  border: 1px solid #D8D8D8;
  border-radius: 4px;
  padding: 4px;
}
.pd-priceList-parts__item .btn__primary {
  width: 155px;
  text-align: center;
}
.pd-priceList-parts__item .btn__primary .c-btn__btnarea {
  white-space: nowrap;
  font-size: 13px;
  padding: 12px;
}
.pd-priceList-parts__item .btn__wish {
  position: absolute;
  top: 12px;
  right: 12px;
}
.pd-priceList-parts__item .btn__wish .c-wish-tooltip {
  bottom: unset;
  top: 50%;
  left: -14px;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
}
.pd-priceList-parts__item .btn__wish .c-wish-tooltip::before {
  left: unset;
  top: 50%;
  right: 0;
  -webkit-transform: translate(85%, -50%) rotate(90deg);
          transform: translate(85%, -50%) rotate(90deg);
}

/* ==========================================================================//
//
// モーダル
//
// ========================================================================== */
body:has(.modal.is-active) {
  overflow: hidden;
}

/* 価格表商品画像 - モーダル
---------------------------------------------------------- */
.pd-modalPLimg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 32px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  pointer-events: none;
  opacity: 0;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.16);
}
.pd-modalPLimg.is-active {
  opacity: 1;
  pointer-events: auto;
}
.pd-modalPLimg__overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.pd-modalPLimg__close-btn {
  position: fixed;
  right: 20px;
  top: 30px;
  width: 40px;
  height: 40px;
  background-color: transparent;
  cursor: pointer;
  z-index: 10;
}
.pd-modalPLimg__close-btn::before, .pd-modalPLimg__close-btn::after {
  position: absolute;
  content: "";
  background-color: #fff;
  width: 68%;
  height: 2px;
  top: 50%;
  left: 50%;
}
.pd-modalPLimg__close-btn::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.pd-modalPLimg__close-btn::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.pd-modalPLimg__content {
  position: relative;
  width: min(600px, 100%);
  max-height: 90vh;
  height: auto;
}
.pd-modalPLimg__image {
  height: 100%;
}
.pd-modalPLimg__image img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 100%;
}

/* カートに追加 モーダル
---------------------------------------------------------- */
.pd-modalPLcart {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 32px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  pointer-events: none;
  opacity: 0;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.16);
}
.pd-modalPLcart.is-active {
  opacity: 1;
  pointer-events: auto;
}
.pd-modalPLcart__overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.pd-modalPLcart__content {
  position: relative;
  width: min(600px, 100%);
  max-height: 95vh;
  overflow-y: auto;
}
.pd-modalPLcart__content-head {
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  background-color: #F4F4F4;
  border-radius: 6px 6px 0 0;
  padding: 14px;
}
.pd-modalPLcart__content-cont {
  background-color: #fff;
  border-radius: 0 0 6px 6px;
  padding: 30px 20px;
}
.pd-modalPLcart__content-cont .cont__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.pd-modalPLcart__content-cont .info__image {
  width: 120px;
}
.pd-modalPLcart__content-cont .info__texts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-modalPLcart__content-cont .info__ttl {
  font-weight: bold;
  font-size: 13px;
  margin-bottom: 10px;
}
.pd-modalPLcart__content-cont .info__text:not(:last-child) {
  margin-bottom: 2px;
}
.pd-modalPLcart__content-cont .info__text .tax {
  font-size: 11px;
}
.pd-modalPLcart__content-cont .cont__table {
  width: 100%;
  border: 2px solid #F4F4F4;
}
.pd-modalPLcart__content-cont .cont__table:not(:first-child) {
  margin-top: 20px;
}
.pd-modalPLcart__content-cont .cont__table thead,
.pd-modalPLcart__content-cont .cont__table tbody {
  display: block;
}
.pd-modalPLcart__content-cont .cont__table thead {
  background-color: #F4F4F4;
}
.pd-modalPLcart__content-cont .cont__table thead th {
  font-weight: bold;
  font-size: 13px;
  white-space: nowrap;
  padding: 6px 10px;
}
.pd-modalPLcart__content-cont .cont__table tbody {
  max-height: 187px;
  overflow-y: auto;
}
.pd-modalPLcart__content-cont .cont__table tbody td {
  padding: 7px 10px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-modalPLcart__content-cont .cont__table tbody tr:last-child td {
  border-bottom: none;
}
.pd-modalPLcart__content-cont .cont__table tbody .tax {
  font-size: 10px;
}
.pd-modalPLcart__content-cont .cont__table th:nth-child(1),
.pd-modalPLcart__content-cont .cont__table td:nth-child(1) {
  width: 45%;
}
.pd-modalPLcart__content-cont .cont__table th:nth-child(2),
.pd-modalPLcart__content-cont .cont__table td:nth-child(2) {
  width: 35%;
}
.pd-modalPLcart__content-cont .cont__table th:nth-child(3),
.pd-modalPLcart__content-cont .cont__table td:nth-child(3) {
  width: 12%;
}
.pd-modalPLcart__content-cont .cont__attn {
  background-color: #fff7f7;
  padding: 15px 14px;
  margin-top: 20px;
}
.pd-modalPLcart__content-cont .cont__attn .attn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.pd-modalPLcart__content-cont .cont__attn .attn__texts {
  line-height: 1.7;
}
.pd-modalPLcart__content-cont .cont__btn {
  margin-top: 30px;
}
.pd-modalPLcart__content-cont .cont__btn .btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.pd-modalPLcart__content-cont .cont__btn .btn__wrap .c-btn {
  empty-cells: 100%;
}
.pd-modalPLcart__content-cont .cont__btn .btn__wrap .c-btn__btnarea {
  padding: 14px;
}

/* 汎用モーダル
---------------------------------------------------------- */
.pd-modalInfo {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 32px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  pointer-events: none;
  opacity: 0;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.16);
}
.pd-modalInfo.is-active {
  opacity: 1;
  pointer-events: auto;
}
.pd-modalInfo__overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.pd-modalInfo__content {
  position: relative;
  width: min(600px, 100%);
  max-height: 95vh;
  overflow-y: auto;
}
.pd-modalInfo__content-head {
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  background-color: #F4F4F4;
  border-radius: 6px 6px 0 0;
  padding: 14px;
}
.pd-modalInfo__content-cont {
  background-color: #fff;
  border-radius: 0 0 6px 6px;
  padding: 30px 20px;
}
.pd-modalInfo__content-cont .cont__text {
  line-height: 1.7;
}
.pd-modalInfo__content-cont .cont__btn {
  margin-top: 30px;
}
.pd-modalInfo__content-cont .cont__btn .btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
}
.pd-modalInfo__content-cont .cont__btn .btn__wrap .c-btn__btnarea {
  min-height: 45px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
}
.pd-modalInfo--attn {
  /* 注意 */
}
.pd-modalInfo--attn .pd-modalInfo__content-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}
.pd-modalInfo--attn .pd-modalInfo__content-head::before {
  content: "";
  display: block;
  background-image: url(../images/icon/attention_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 39/34;
  width: 28px;
}
.pd-modalInfo--alert {
  /* アラート */
}
.pd-modalInfo--alert .pd-modalInfo__content-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  background-color: #FFDBDB;
  border: 2px solid #B98F8F;
  border-bottom: 0;
}
.pd-modalInfo--alert .pd-modalInfo__content-head::before {
  content: "";
  display: block;
  background-image: url(../images/icon/attention_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 39/34;
  width: 28px;
}
.pd-modalInfo--alert .pd-modalInfo__content-cont {
  border: 2px solid #B98F8F;
  border-top: 0;
}

/* ==========================================================================//
//
// 商品情報（特徴、仕様など）
//
// ========================================================================== */
/* アコーディオン
---------------------------------------------------------- */
.pd-info {
  background-color: #F4F4F4;
  padding: 50px 0;
}
.pd-info:not(:last-child) {
  margin-bottom: 50px;
}
.pd-info-sec {
  background-color: #fff;
  border-radius: 6px;
  padding: 0 16px;
}
.pd-info-sec:not(:last-child) {
  margin-bottom: 14px;
}
.pd-info-sec__ttl {
  position: relative;
  font-size: 16px;
  border-bottom: 1px solid #D8D8D8;
  padding: 18px 0;
  cursor: pointer;
}
.pd-info-sec__ttl::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/plus_gray_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 34px;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
.pd-info-sec__ttl.is-open::before {
  background-image: url(../images/icon/minus_gray_01.svg);
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.pd-info-sec__cont {
  position: relative;
  overflow: hidden;
  height: 50px;
  padding: 25px 0 30px;
}
.pd-info-sec__cont::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#fff));
  background: linear-gradient(transparent 0%, #fff 100%);
  z-index: 1;
}
.pd-info-sec__cont.is-open {
  overflow: visible;
  height: auto;
}
.pd-info-sec__cont.is-open::before {
  content: inherit;
}

/* 特徴
---------------------------------------------------------- */
.pd-feature__heading {
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 8px;
}
.pd-feature__heading:not(:first-child) {
  margin-top: 20px;
}
.pd-feature__blocks {
  margin-top: 30px;
}
.pd-feature__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.pd-feature__block:not(:last-child) {
  margin-bottom: 30px;
}
.pd-feature__block .pd-feature__image {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-inline: unset;
}
.pd-feature__block .pd-feature__texts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-feature__image {
  margin-inline: auto;
}
.pd-feature__image:not(:first-child) {
  margin-top: 30px;
}
.pd-feature__image--small {
  width: min(204px, 75%);
}
.pd-feature__contact {
  border: 1px solid #D8D8D8;
  border-radius: 6px;
  text-align: center;
  padding: 16px 20px;
  margin-top: 30px;
}
.pd-feature__contact .contact__heading {
  font-size: 14px;
  margin-bottom: 10px;
}
.pd-feature__contact .contact__text {
  font-size: 13px;
}
.pd-feature__contact .contact__text .small {
  font-size: 11px;
}
.pd-feature__contact .contact__text .tel {
  display: block;
  font-weight: bold;
  font-size: 16px;
  margin-top: 5px;
}
.pd-feature__contact .contact__content {
  text-align: left;
  border-top: 1px solid #D8D8D8;
  padding-top: 26px;
  margin-top: 20px;
}
.pd-feature__contact .contact__content .cont__heading {
  font-weight: bold;
  font-size: 14px;
}
.pd-feature__contact .contact__content .cont__heading:not(:last-child) {
  margin-bottom: 14px;
}
.pd-feature__contact .contact__content .cont__text {
  line-height: 1.7;
}
.pd-feature__contact .contact__content .cont__text:not(:last-child) {
  margin-bottom: 6px;
}

/* 仕様
---------------------------------------------------------- */
.pd-spec__block:not(:last-child) {
  margin-bottom: 30px;
}
.pd-spec__heading {
  font-size: 13px;
  margin-bottom: 13px;
}
.pd-spec__table_wrap {
  overflow-x: scroll;
}
.pd-spec__table_wrap table {
  white-space: nowrap;
}
.pd-spec__table {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 100%;
  border: 2px solid #F4F4F4;
  border-radius: 6px;
}
.pd-spec__table table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border-radius: 6px;
  text-align: left;
  font-size: 11px;
}
.pd-spec__table table tr:last-child th,
.pd-spec__table table tr:last-child td {
  border-bottom: none;
}
.pd-spec__table table th,
.pd-spec__table table td {
  padding: 11px 10px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-spec__table table th {
  font-weight: bold;
  background-color: #F4F4F4;
}
.pd-spec__table table th[rowspan] {
  border-right: 1px solid #D8D8D8;
}
.pd-spec__table--size {
  /* 服飾系サイズ用 */
}
.pd-spec__table--size table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border-radius: 6px;
  font-size: 13px;
}
.pd-spec__table--size table th,
.pd-spec__table--size table td {
  text-align: center;
  border: 1px solid #D8D8D8;
  padding: 12px 14px;
}
.pd-spec__table--size table th {
  font-weight: bold;
  font-size: 13px;
  background-color: #F4F4F4;
}
.pd-spec__note {
  /* テープル下注釈 */
  color: #6C6A6A;
  font-size: 11px;
  margin-top: 12px;
}

/* 資料
---------------------------------------------------------- */
.pd-document__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.pd-document__btn {
  width: 100%;
}
.pd-document__image {
  margin-top: 20px;
}

/* 動画
---------------------------------------------------------- */
.pd-movie__movie {
  aspect-ratio: 16/9;
  width: 100%;
}
.pd-movie__movie:not(:last-child) {
  margin-bottom: 20px;
}
.pd-movie__movie iframe {
  width: 100%;
  height: 100%;
}

/* レビュー
---------------------------------------------------------- */
.pd-review__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
}
.pd-review__ttl .c-review__star {
  font-size: 10px;
}
.pd-review__ttl .c-review__number {
  font-size: 13px;
}
.pd-review__rating {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.pd-review__rating-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.pd-review__rating-summary .numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.pd-review__rating-summary .numbers .num {
  font-weight: bold;
  font-size: 25px;
  line-height: 1;
}
.pd-review__rating-summary .numbers .star {
  font-size: 10px;
  -webkit-text-stroke-width: 1px;
  letter-spacing: 0.35em;
}
.pd-review__rating-summary .text {
  margin-top: 6px;
}
.pd-review__rating-graph .graph__row {
  width: 152px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  line-height: 1;
}
.pd-review__rating-graph .graph__row:not(:last-child) {
  margin-bottom: 6px;
}
.pd-review__rating-graph .graph__rate {
  font-weight: bold;
  font-size: 12px;
}
.pd-review__rating-graph .graph__rate::before {
  content: "★";
  color: #F4B400;
  font-size: 13px;
  margin-right: 2px;
}
.pd-review__rating-graph .graph__bar {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 10px;
  background-color: #F4F4F4;
  border-radius: 3px;
}
.pd-review__rating-graph .graph__bar::before {
  position: absolute;
  content: "";
  background-color: #6C6A6A;
  border-radius: 3px;
  top: 0;
  left: 0;
  height: 100%;
  width: calc(var(--number) / var(--total) * 100%);
}
.pd-review__rating-graph .graph__text {
  font-size: 14px;
  white-space: nowrap;
}
.pd-review__rating .review_btn {
  width: 100%;
  display: block;
  border-radius: 3px;
  background-color: #fff;
  border: 1px solid #707070;
  color: #000;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  padding: 8px;
  margin-top: 20px;
  cursor: pointer;
}
.pd-review__rating .review_btn span {
  position: relative;
  padding-left: 26px;
}
.pd-review__rating .review_btn span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/icon/pencil_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 19px;
}
.pd-review__form {
  display: none;
  background-color: #F4F4F4;
  border-radius: 6px;
  padding: 20px 16px;
  margin-top: 30px;
}
.pd-review__form .form__ttl {
  text-align: center;
  font-size: 14px;
  margin-bottom: 36px;
}
.pd-review__form .form__list {
  margin-bottom: 30px;
}
.pd-review__form .form__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.pd-review__form .form__item:not(:last-child) {
  margin-bottom: 16px;
}
.pd-review__form .form__item .item__heading {
  font-weight: bold;
  font-size: 13px;
}
.pd-review__form .form__item .item__heading .required {
  color: #B91111;
  font-weight: 400;
  font-size: 12px;
  margin-left: 12px;
}
.pd-review__form .form__item .item__cont .stars {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.pd-review__form .form__item .item__cont .stars input[type=radio] {
  display: none;
}
.pd-review__form .form__item .item__cont .stars label {
  color: transparent;
  font-size: 20px;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #F4B400;
  cursor: pointer;
  padding: 3px;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio]),
.pd-review__form .form__item .item__cont textarea {
  background-color: #fff;
  border: 1px solid #D8D8D8;
  border-radius: 4px;
  width: 100%;
  font-size: 13px;
  padding: 10px 13px;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio])::-webkit-input-placeholder, .pd-review__form .form__item .item__cont textarea::-webkit-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio])::-moz-placeholder, .pd-review__form .form__item .item__cont textarea::-moz-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio]):-ms-input-placeholder, .pd-review__form .form__item .item__cont textarea:-ms-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio])::-ms-input-placeholder, .pd-review__form .form__item .item__cont textarea::-ms-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio])::placeholder,
.pd-review__form .form__item .item__cont textarea::placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__form .form__item .item__cont textarea {
  field-sizing: content;
  min-height: 130px;
}
.pd-review__form .form__submitBtn {
  width: 100%;
}
.pd-review__form .form__submitBtn .c-btn__btnarea {
  font-weight: bold;
  padding: 13px;
}
.pd-review__filter {
  background-color: #F4F4F4;
  border-radius: 6px;
  padding: 16px 12px;
  margin-top: 30px;
}
.pd-review__filter .filter__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
.pd-review__filter .filter__search .search-box {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.pd-review__filter .filter__search .search-box__input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #fff;
  border-radius: 4px 0 0 4px;
  border: 1px solid #E6E6E6;
  border-right: none;
  padding: 10px 13px;
}
.pd-review__filter .filter__search .search-box__input::-webkit-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__filter .filter__search .search-box__input::-moz-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__filter .filter__search .search-box__input:-ms-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__filter .filter__search .search-box__input::-ms-input-placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__filter .filter__search .search-box__input::placeholder {
  color: #afafaf;
  font-size: inherit;
}
.pd-review__filter .filter__search .search-box__btn {
  width: 40px;
  font-size: 0;
  border-radius: 0 4px 4px 0;
  background-color: #D8D8D8;
  background-image: url(../images/icon/search_01.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 17px 18px;
}
.pd-review__filter .filter__sort {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px;
}
.pd-review__filter .filter__sort select {
  width: 100%;
  background: #fff;
  border: 1px solid #E6E6E6;
  border-radius: 4px;
  background-image: url(../images/icon/arrow_01.svg);
  background-repeat: no-repeat;
  background-size: 12px 7px;
  background-position: right 13px top 55%;
  padding: 10px 13px;
}
.pd-review__list {
  margin-top: 16px;
}
.pd-review__list .list__item {
  padding: 20px 0;
  border-bottom: 1px solid #D8D8D8;
}
.pd-review__list .item__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 18px;
}
.pd-review__list .item__profile .profile__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  aspect-ratio: 1;
  width: 48px;
  height: auto;
  display: -ms-grid;
  display: grid;
  place-items: center;
  background-color: #707070;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
}
.pd-review__list .item__profile .profile__icon .check_icon {
  position: absolute;
  width: 17px;
  bottom: -1px;
  right: -3px;
}
.pd-review__list .item__profile .profile__texts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -ms-grid;
  display: grid;
  row-gap: 6px;
}
.pd-review__list .item__profile .profile__texts .name_wrap {
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/span 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
}
.pd-review__list .item__profile .profile__texts .name_wrap .name {
  font-weight: bold;
  font-size: 13px;
}
.pd-review__list .item__profile .profile__texts .name_wrap .icon {
  height: 21px;
}
.pd-review__list .item__profile .profile__texts .name_wrap .icon img {
  height: 100%;
  width: auto;
}
.pd-review__list .item__profile .profile__texts .c-review {
  -ms-grid-row: 2;
  grid-row: 2;
}
.pd-review__list .item__profile .profile__texts .item__date {
  -ms-grid-row: 2;
  grid-row: 2;
  justify-self: flex-end;
  font-size: 11px;
}
.pd-review__list .item__cont {
  margin-top: 20px;
}
.pd-review__list .item__ttl {
  font-weight: bold;
  font-size: 14px;
}
.pd-review__list .item__text {
  line-height: 1.7;
  margin-top: 10px;
}
.pd-review__list .item__note {
  color: #6C6A6A;
  font-size: 11px;
  line-height: 1.9;
  margin-top: 14px;
}
.pd-review__list .item__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  margin-top: 16px;
}
.pd-review__list .item__foot .helpful__heading {
  color: #6C6A6A;
  font-size: 10px;
}
.pd-review__list .item__foot .helpful__icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
.pd-review__list .item__foot .helpful__icons .helpful__icon {
  position: relative;
  aspect-ratio: 1;
  width: 18px;
  height: auto;
  cursor: pointer;
}
.pd-review__list .item__foot .helpful__icons .helpful__icon::before, .pd-review__list .item__foot .helpful__icons .helpful__icon::after {
  position: absolute;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 100%;
  height: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.pd-review__list .item__foot .helpful__icons .helpful__icon::after {
  opacity: 0;
}
.pd-review__list .item__foot .helpful__icons .helpful__icon--good::before {
  background-image: url(../images/icon/good.svg);
}
.pd-review__list .item__foot .helpful__icons .helpful__icon--good::after {
  background-image: url(../images/icon/good_active.svg);
}
.pd-review__list .item__foot .helpful__icons .helpful__icon--bad::before {
  background-image: url(../images/icon/bad.svg);
}
.pd-review__list .item__foot .helpful__icons .helpful__icon--bad::after {
  background-image: url(../images/icon/bad_active.svg);
}
.pd-review__list .item__foot .helpful__icons .helpful__icon.is-active::before {
  opacity: 0;
}
.pd-review__list .item__foot .helpful__icons .helpful__icon.is-active::after {
  opacity: 1;
}
.pd-review__list .item__foot .helpful__icons .helpful__num {
  font-weight: 400;
  font-size: 12px;
  line-height: 1;
}
.pd-review__list-btn {
  margin-top: 40px;
}

/* ==========================================================================//
//
// シリーズの商品を見る
//
// ========================================================================== */
.pd-series__image a {
  display: block;
}

/* ==========================================================================//
//
// よく一緒に購入されている商品
//
// ========================================================================== */
.pd-buyWith__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  background-color: #F4F4F4;
  border-radius: 6px;
  padding: 20px 10px;
}
.pd-buyWith__list {
  --gap: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--gap);
}
.pd-buyWith__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 18px;
     -moz-column-gap: 18px;
          column-gap: 18px;
  background-color: #fff;
  border-radius: 6px;
  padding: 20px;
}
.pd-buyWith__item:not(:last-child)::before {
  position: absolute;
  content: "";
  background-image: url(../images/icon/plus_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 18px;
  bottom: calc(var(--gap) / 2 * -1);
  left: 50%;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
}
.pd-buyWith__item .item__image {
  width: 80px;
  margin-bottom: 20px;
}
.pd-buyWith__item .item__texts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-buyWith__item .item__name {
  text-decoration: underline;
  font-size: 12px;
}
.pd-buyWith__item .item__price {
  font-weight: 700;
  font-size: 14px;
  margin-top: 14px;
}
.pd-buyWith__item .item__price span {
  font-weight: 400;
  font-size: 11px;
  margin-left: 6px;
}
.pd-buyWith__item .item__ckeck {
  position: absolute;
  top: 3px;
  left: 3px;
  aspect-ratio: 1;
  width: 30px;
  height: auto;
  background: #fff;
  border: 1px solid #E6E6E6;
  border-radius: 4px;
}
.pd-buyWith__item .item__ckeck::before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 9px;
  width: 9px;
  height: 15px;
  border: solid #B91111;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.pd-buyWith__item .item__ckeck:checked::before {
  opacity: 1;
}
.pd-buyWith__total {
  width: 100%;
  text-align: center;
}
.pd-buyWith__total .total__price .bold {
  font-size: 23px;
}
.pd-buyWith__total .total__price .tax {
  font-size: 12px;
}
.pd-buyWith__total .total__point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 5px;
  margin-top: 8px;
}
.pd-buyWith__total .total__point img {
  width: 19px;
}
.pd-buyWith__total .total__point p {
  font-size: 13px;
}
.pd-buyWith__total .total__point p .red {
  color: #B91111;
  font-weight: 700;
  font-size: 13px;
}
.pd-buyWith__total .total__point p .red .pt {
  font-size: 12px;
}
.pd-buyWith__total .total__point p .note {
  font-size: 11px;
}
.pd-buyWith__total .total__btn {
  width: 100%;
  margin-top: 14px;
}