@charset "UTF-8";
/* ==========================================================================//
//
// リセット
//
// ========================================================================== */
#container {
  max-width: none;
  padding-top: 177px;
  padding-inline: 0;
}

#contents {
  max-width: none;
}

#header {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.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;
}
.l-productDetail *,
.l-productDetail *::before,
.l-productDetail *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.l-productDetail a {
  text-decoration: none;
}
.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 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（共通スタイル）
//
// ========================================================================== */
.l-productDetail {
  font-weight: 300;
  color: #000;
  font-size: 14px;
}
@media screen and (min-width: 751px) and (max-width: 999px) {
  .l-productDetail {
    font-size: 13px;
  }
}
.l-productDetail * {
  font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.l-productDetail h1,
.l-productDetail h2,
.l-productDetail h3,
.l-productDetail h4,
.l-productDetail h5,
.l-productDetail h6 {
  font-weight: 600;
}
.l-productDetail .underline {
  color: #000;
  text-decoration: underline;
}
.l-productDetail a.underline {
  color: #000;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  cursor: pointer;
}
@media (hover: hover) {
  .l-productDetail a.underline {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .l-productDetail a.underline:hover {
    opacity: 0.7;
  }
}

.bold {
  font-weight: 600;
}

.red {
  color: #B91111;
}

/* インナー
---------------------------------------------------------- */
.l-inner {
  --pc_padding: 50px;
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 var(--pc_padding);
}
@media all and (max-width: 1280px) {
  .l-inner {
    --pc_padding: 20px;
  }
}

/* page__body
---------------------------------------------------------- */
.l-page__body {
  padding: 34px 0 120px;
}

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

/* パンくずリスト
---------------------------------------------------------- */
.c-breadcrumb {
  background-color: #F4F4F4;
  padding: 12px 0;
  border-top: 1px solid #bcbcbc;
}
.c-breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 6px;
}
.c-breadcrumb ul li {
  color: #6C6A6A;
  font-size: 12px;
}
.c-breadcrumb ul li:not(:last-child)::after {
  content: ">";
  margin-inline: 12px;
}
.c-breadcrumb ul li a {
  color: inherit;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .c-breadcrumb ul li a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .c-breadcrumb ul li a:hover {
    opacity: 0.7;
  }
}

/* ボタン
---------------------------------------------------------- */
.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: 600;
  font-size: 16px;
  line-height: 1.31;
  padding: 20px;
  cursor: pointer;
}
@media (hover: hover) {
  .l-productDetail .c-btn__btnarea {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .l-productDetail .c-btn__btnarea:hover {
    background-color: var(--hover_color);
  }
}
.l-productDetail .c-btn--line_black {
  /* 黒線白背景ボタン */
  --bg_color: #fff;
  --hover_color: #efefef;
}
.l-productDetail .c-btn--line_black .c-btn__btnarea {
  border: 1px solid #b4b4b4;
}
.l-productDetail .c-btn--bg_red {
  /* 赤背景ボタン */
  --color: #fff;
  --bg_color: #B91111;
  --hover_color: #ed5151;
}
.l-productDetail .c-btn--reserve {
  /* 予約する */
  --color: #fff;
  --bg_color: #14BF77;
  --hover_color: #6bd899;
}
.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: 6px;
}
.l-productDetail .c-btn--reserve.is-cancelable span, .l-productDetail .c-btn--reserve.is-non-cancelable span {
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  border-radius: 3px;
  padding: 4px 6px;
}
.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;
  --hover_color: #4496d1;
}
.l-productDetail .c-btn--dc { /* 廃番 */
  --color: #fff;
  --bg_color: #e58e28;
  --hover_color: #f2a53b;
}
.l-productDetail .c-btn--wish { /* ほしいものリストボタン */
  --hover_color: #efefef;
  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;
  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: 45px;
}
.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 {
  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 { /* 価格表内 ほしいものリストボタン（単品用） */
  --hover_color: #efefef;
  position: relative;
  aspect-ratio: 1;
  width: 36px;
}
.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;
  gap: 14px;
  border-radius: 50%;
  border: 1px solid #b4b4b4;
  padding: 0;
}
.l-productDetail .c-btn--wishSingle .c-wish__icon {
  width: 50%;
  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などファイル表示系ボタン */
  --hover_color: #efefef;
}
.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;
  --hover_color: #efefef;
  width: 400px;
  margin-inline: auto;
}
.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%);
}

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

.c-question {
  position: relative;
}
.c-question__icon {
  position: relative;
  width: 17px;
  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: -2px;
  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: -16px;
  right: -100px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  background-color: #FFDBDB;
  border-radius: 6px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  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: 13px;
  white-space: nowrap;
  margin: 0;
}
@media screen and (min-width: 751px) and (max-width: 999px) {
  .c-question__tooltip p {
    font-size: 12px;
  }
}
.c-question__link {
  font-size: 12px;
}
.c-question:hover .c-question__icon::before {
  opacity: 1;
  visibility: visible;
}
.c-question:hover .c-question__tooltip {
  opacity: 1;
  visibility: visible;
}

/* ほしいものリストボタン ツールチップ
---------------------------------------------------------- */
.c-wish-tooltip {
  position: absolute;
  top: 50%;
  left: -17px;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
  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/13;
  width: 13px;
  top: 50%;
  right: 1px;
  -webkit-transform: translate(100%, -50%) rotate(90deg);
          transform: translate(100%, -50%) rotate(90deg);
}
.c-wish-tooltip p {
  font-size: 12px;
  white-space: nowrap;
  margin: 0;
}
.c-wish-tooltip a {
  color: #000;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .c-wish-tooltip a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .c-wish-tooltip a:hover {
    opacity: 0.7;
  }
}
.c-wish-tooltip.is-show {
  opacity: 1;
  visibility: visible;
}

.c-btn--wish-onlyIcon .c-wish-tooltip {
  top: calc(100% + 17px);
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
.c-btn--wish-onlyIcon .c-wish-tooltip::before {
  top: 0;
  right: unset;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
}

/* レビュー（星+数字+リンク）
---------------------------------------------------------- */
.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: 1.5px;
  -webkit-text-stroke-color: #F4B400;
  font-size: 14px;
  letter-spacing: 0.2em;
}
.c-review__number {
  font-size: 14px;
  margin-left: 10px;
}
.c-review__link {
  font-size: 14px;
  margin-left: 12px;
}

/* 在庫状況
---------------------------------------------------------- */
.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: 600;
  font-size: 13px;
  white-space: nowrap;
}
.c-stock-status span {
  position: relative;
  padding-left: 20px;
}
.c-stock-status span::before {
  position: absolute;
  content: "";
  aspect-ratio: 1;
  width: 16px;
  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--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: 22px;
  line-height: 1;
}
.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-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
}
.l-productDetail .c-count__btn {
  aspect-ratio: 1;
  width: 40px;
  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: 16px;
  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: 16px;
  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: 60px;
  height: 40px;
  background-color: #fff;
  border: 1px solid #D8D8D8;
  border-radius: 4px;
  text-align: center;
  font-weight: 600;
  font-size: 16px;
}
.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: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
.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: 30px;
  font-weight: 600;
  font-size: 18px;
}
.l-productDetail .c-pagenation__list > li.current {
  color: #000;
}
.l-productDetail .c-pagenation__list > li a {
  color: #a7a7a7;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .l-productDetail .c-pagenation__list > li a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .l-productDetail .c-pagenation__list > li a:hover {
    opacity: 0.7;
  }
}
.l-productDetail .c-pagenation__arrow {
  position: relative;
  background-color: #F4F4F4;
  border-radius: 3px;
  aspect-ratio: 1;
  width: 43px;
  cursor: pointer;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .l-productDetail .c-pagenation__arrow {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .l-productDetail .c-pagenation__arrow:hover {
    opacity: 0.7;
  }
}
.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 {
  display: none;
}

/* ==========================================================================//
//
// 追従メニュー
//
// ========================================================================== */
.pd-navigation {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding: 12px 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));
  z-index: 10;
  visibility: hidden;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.pd-navigation .c-wish-tooltip {
  display: none;
}
.pd-navigation.is-show {
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.pd-navigation.is-show .c-wish-tooltip {
  display: block;
}
.pd-navigation__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media all and (max-width: 1180px) {
  .pd-navigation__container {
    -webkit-column-gap: 5px;
       -moz-column-gap: 5px;
            column-gap: 5px;
  }
}
.pd-navigation__image {
  width: 65px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 20px;
}
@media all and (max-width: 1130px) {
  .pd-navigation__image {
    display: none;
  }
}
.pd-navigation__head {
  max-width: 504px;
}
@media all and (max-width: 1180px) {
  .pd-navigation__head {
    max-width: 420px;
  }
}
@media all and (max-width: 999px) {
  .pd-navigation__head {
    max-width: 400px;
  }
}
.pd-navigation__ttl {
  font-weight: 600;
  font-size: 16px;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media all and (max-width: 1280px) {
  .pd-navigation__ttl {
    font-size: 15px;
  }
}
.pd-navigation__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  margin-top: 10px;
}
.pd-navigation__menu-item a {
  --color: #000;
  --border_color: #6C6A6A;
  --bg_color: #F4F4F4;
  position: relative;
  background-color: var(--bg_color);
  border-radius: 3px;
  color: var(--color);
  font-weight: 600;
  font-size: 13px;
  white-space: nowrap;
  padding: 6px 29px 7px 14px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media all and (max-width: 1280px) {
  .pd-navigation__menu-item a {
    font-size: 12px;
    padding: 5px 20px 5px 8px;
  }
}
.pd-navigation__menu-item a::before {
  position: absolute;
  content: "";
  border-top: 1px solid var(--border_color);
  border-right: 1px solid var(--border_color);
  aspect-ratio: 1;
  width: 7px;
  top: 50%;
  right: 13px;
  -webkit-transform: translate(0, -75%) rotate(135deg);
          transform: translate(0, -75%) rotate(135deg);
}
@media all and (max-width: 1280px) {
  .pd-navigation__menu-item a::before {
    width: 5px;
    right: 10px;
  }
}
@media (hover: hover) {
  .pd-navigation__menu-item a:hover {
    --color: #fff;
    --border_color: #fff;
    --bg_color: #6f6f6f;
  }
}
.pd-navigation__menu-item.current a {
  --color: #fff;
  --border_color: #fff;
  --bg_color: #6f6f6f;
}
.pd-navigation__detail {
  margin-left: 30px;
}
@media all and (max-width: 1180px) {
  .pd-navigation__detail {
    margin-left: 20px;
  }
}
@media all and (max-width: 999px) {
  .pd-navigation__detail {
    margin-left: 10px;
  }
}
.pd-navigation__price .price__selling {
  font-weight: 600;
  font-size: 14px;
}
.pd-navigation__price .price__selling .tax {
  font-weight: 300;
  font-size: 11px;
}
.pd-navigation__price--special {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3px;
}
.pd-navigation__price--special .special_head {
  font-size: 11px;
  margin-right: 9px;
}
.pd-navigation__price--special .line {
  color: #6C6A6A;
  font-size: 12px;
  text-decoration: line-through;
}
.pd-navigation__shipping {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 7px;
}
.pd-navigation__shipping .icon {
  margin-right: 7px;
}
@media all and (max-width: 999px) {
  .pd-navigation__shipping .icon {
    display: none;
  }
}
.pd-navigation__shipping .text {
  font-size: 13px;
}
@media all and (max-width: 999px) {
  .pd-navigation__shipping .text {
    font-size: 12px;
  }
}
.pd-navigation__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-left: auto;
}
@media all and (max-width: 1180px) {
  .pd-navigation__btn .btn__wish {
    width: 40px;
  }
  .pd-navigation__btn .btn__wish .c-wish__icon {
    width: 50%;
  }
}
.pd-navigation__btn .btn__primary {
  width: 200px;
}
.pd-navigation__btn .btn__primary .c-btn__btnarea {
  padding: 12px;
}
@media all and (max-width: 1180px) {
  .pd-navigation__btn .btn__primary {
    width: 170px;
  }
  .pd-navigation__btn .btn__primary.c-btn--reserve {
    width: 180px;
  }
}
@media all and (max-width: 1180px) and (max-width: 999px) {
  .pd-navigation__btn .btn__primary.c-btn--reserve {
    width: 174px;
  }
}
@media all and (max-width: 1180px) and (max-width: 999px) {
  .pd-navigation__btn .btn__primary.c-btn--reserve span {
    font-size: 11px;
  }
}
@media all and (max-width: 1180px) {
  .pd-navigation__btn .btn__primary .c-btn__btnarea {
    font-size: 13px;
  }
}
@media all and (max-width: 1180px) and (max-width: 999px) {
  .pd-navigation__btn .btn__primary .c-btn__btnarea {
    font-size: 12px;
  }
}
.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;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
.pd-topSlide__thumb {
  max-height: 600px;
  /* サムネイル */
}
.pd-topSlide__thumb .splide__slide {
  position: relative;
  border: 1px solid #D8D8D8;
  cursor: pointer;
}
.pd-topSlide__thumb .splide__slide::before {
  position: absolute;
  content: "";
  inset: -1px;
  border: 2px solid #000;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  pointer-events: none;
}
@media (hover: hover) {
  .pd-topSlide__thumb .splide__slide:hover::before {
    opacity: 0.5;
  }
}
.pd-topSlide__thumb .splide__slide.is-active::before {
  opacity: 1;
}
.pd-topSlide__thumb .splide__arrows {
  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: 10px;
  margin-top: 28px;
}
.pd-topSlide__thumb .splide__arrow {
  position: relative;
  width: 37px;
  height: 37px;
  background-color: transparent;
}
.pd-topSlide__thumb .splide__arrow::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  aspect-ratio: 1;
  width: 50%;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
}
.pd-topSlide__thumb .splide__arrow--prev::before {
  -webkit-transform: translate(-50%, -25%) rotate(-45deg);
          transform: translate(-50%, -25%) rotate(-45deg);
}
.pd-topSlide__thumb .splide__arrow--next::before {
  -webkit-transform: translate(-50%, -75%) rotate(135deg);
          transform: translate(-50%, -75%) rotate(135deg);
}
.pd-topSlide__thumb .pagination {
  /* カウント */
  font-weight: 600;
  font-size: 14px;
}
.pd-topSlide__main {
  /* メインスライダー */
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-topSlide__main .splide__track {
  position: relative;
}
.pd-topSlide__main .splide__track::before {
  position: absolute;
  content: "";
  bottom: 10px;
  right: 10px;
  aspect-ratio: 1;
  width: 48px;
  background-color: #bfbfbf;
  border-radius: 3px;
  background-image: url(../images/icon/zoom_white_01.svg);
  background-size: 24px;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 1;
  pointer-events: none;
}
.pd-topSlide__main .splide__slide {
  cursor: pointer;
}

/* トップスライド - モーダル
---------------------------------------------------------- */
.pd-topModal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 15px;
  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-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: min(1160px, 90%);
  max-height: 95vh;
  background-color: #fff;
  border-radius: 6px;
  padding: 30px 70px;
  overflow-y: auto;
}
.pd-topModal__close-btn {
  position: absolute;
  right: 10px;
  top: 10px;
  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__thumb {
  /* サムネイル */
}
.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;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  pointer-events: none;
}
@media (hover: hover) {
  .pd-topModal__thumb .splide__slide:hover::before {
    opacity: 0.5;
  }
}
.pd-topModal__thumb .splide__slide.is-active::before {
  opacity: 1;
}
.pd-topModal__thumb .splide__arrows {
  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: 10px;
  margin-top: 28px;
}
.pd-topModal__thumb .splide__arrow {
  position: relative;
  width: 37px;
  height: 37px;
  background-color: transparent;
}
.pd-topModal__thumb .splide__arrow::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  aspect-ratio: 1;
  width: 50%;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
}
.pd-topModal__thumb .splide__arrow--prev::before {
  -webkit-transform: translate(-50%, -25%) rotate(-45deg);
          transform: translate(-50%, -25%) rotate(-45deg);
}
.pd-topModal__thumb .splide__arrow--next::before {
  -webkit-transform: translate(-50%, -75%) rotate(135deg);
          transform: translate(-50%, -75%) rotate(135deg);
}
.pd-topModal__thumb .pagination {
  /* カウント */
  font-weight: 600;
  font-size: 14px;
}
.pd-topModal__slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 60px;
}
.pd-topModal__main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-topModal__main .splide__arrows {
  position: absolute;
  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;
  -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: 62px;
  height: 62px;
  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 {
  overflow: hidden;
  background-color: #fff;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
  -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-zoom-out;
  cursor: zoom-out;
  -webkit-transform: scale(2.5) translateZ(0);
          transform: scale(2.5) 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-campaignSlide .splide__track {
  overflow: hidden;
}
.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: 50px;
  border: none;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
  cursor: pointer;
}
.pd-campaignSlide .splide__arrows .splide__arrow::after {
  content: "";
  aspect-ratio: 1;
  width: 16px;
  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;
}
@media (hover: hover) {
  .pd-campaignSlide .splide__arrows .splide__arrow {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .pd-campaignSlide .splide__arrows .splide__arrow:hover {
    opacity: 0.7;
  }
}
.pd-campaignSlide .splide__list .splide__slide {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.pd-campaignSlide .splide__list .splide__slide a {
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-campaignSlide .splide__list .splide__slide a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-campaignSlide .splide__list .splide__slide a:hover {
    opacity: 0.7;
  }
}
.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 .splide__track {
  overflow: hidden;
}
.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: 50px;
  border: none;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
  cursor: pointer;
}
.pd-productSlide .splide__arrows .splide__arrow::after {
  content: "";
  aspect-ratio: 1;
  width: 16px;
  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;
}
@media (hover: hover) {
  .pd-productSlide .splide__arrows .splide__arrow {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .pd-productSlide .splide__arrows .splide__arrow:hover {
    opacity: 0.7;
  }
}
.pd-productSlide .splide__list .splide__slide .cont {
  margin-bottom: 12px;
}
.pd-productSlide .splide__list .splide__slide .cont a {
  display: block;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-productSlide .splide__list .splide__slide .cont a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-productSlide .splide__list .splide__slide .cont a:hover {
    opacity: 0.7;
  }
}
.pd-productSlide .splide__list .splide__slide .cont__image {
  margin-bottom: 20px;
}
.pd-productSlide .splide__list .splide__slide .cont__name {
  text-decoration: underline;
  font-size: 14px;
  line-height: 1.69;
  margin-bottom: 10px;
}
.pd-productSlide .splide__list .splide__slide .cont__price {
  font-weight: 600;
  font-size: 16px;
}
.pd-productSlide .splide__list .splide__slide .cont__price span {
  font-weight: 300;
  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;
  margin-bottom: 6px;
}
.pd-productSlide .splide__list .splide__slide .cont__review {
  margin-top: 6px;
}
.pd-productSlide .splide__list .splide__slide .cont__review .c-review__star {
  font-size: 12px;
  -webkit-text-stroke-width: 1px;
}
.pd-productSlide .splide__list .splide__slide .cont__review .c-review__number {
  font-size: 12px;
}
.pd-productSlide .splide__list .splide__slide .c-btn {
  font-size: 15px;
}
.pd-productSlide .splide__list .splide__slide .c-btn__btnarea {
  padding: 10px;
}
.pd-productSlide .splide:has(.splide__slide:first-of-type.is-active) .splide__arrow--prev {
  visibility: hidden;
}

/* ==========================================================================//
//
// 商品詳細トップ（商品画像 + 価格などのエリア）
//
// ========================================================================== */
.pd-productHead {
  margin-bottom: 80px;
}
.pd-productHead__head {
  /* head */
  margin-bottom: 50px;
}
.pd-productHead__head-ttl {
  font-size: 24px;
}
.pd-productHead__head-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 14px;
}
.pd-productHead__head-info .info__review {
  margin-right: 10px;
}
.pd-productHead__head-info .info__text {
  color: #6C6A6A;
}
.pd-productHead__body {
  /* body */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px 60px;
}
.pd-productHead__images {
  /* 画像エリア */
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 645px;
}
.pd-productHead__texts {
  /* 情報エリア */
  width: 474px;
}
@media all and (min-width: 1281px) {
  .pd-productHead__texts {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    width: auto;
    max-width: 600px;
  }
}
.pd-productHead__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: 26px;
}
.pd-productHead__icon .icon__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px 8px;
}
.pd-productHead__icon .icon__item {
  height: 22px;
}
.pd-productHead__icon .icon__item img {
  height: 100%;
  width: auto;
}
.pd-productHead__icon .icon__question {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productHead__price {
  /* 価格+ポイント */
}
.pd-productHead__price-sub {
  margin-bottom: 16px;
}
.pd-productHead__price-sub .sub__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px 20px;
}
.pd-productHead__price .price__default {
  color: #6C6A6A;
  font-size: 14px;
}
.pd-productHead__price .price__default .tax {
  font-size: 0.85em;
}
.pd-productHead__price .price__default--line {
  color: #000;
}
.pd-productHead__price .price__default--line .line {
  text-decoration: line-through;
}
.pd-productHead__price .price__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 10px;
}
.pd-productHead__price .price__wrap .price__selling {
  font-weight: 600;
  font-size: 28px;
  line-height: 1;
}
.pd-productHead__price .price__wrap .price__selling .tax {
  font-weight: 300;
  font-size: 12px;
}
.pd-productHead__price .price__wrap .price__ex {
  color: #6C6A6A;
}
.pd-productHead__price .price__wrap .price__ex .tax {
  font-size: 12px;
}
.pd-productHead__price .price__wrap .price__discount {
  background-color: #B91111;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  border-radius: 5px;
  padding: 3px 8px;
}
.pd-productHead__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-productHead__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: 8px;
}
.pd-productHead__price .point__wrap .point__text img {
  width: 24px;
}
.pd-productHead__price .point__wrap .point__text p {
  font-size: 14px;
}
.pd-productHead__price .point__wrap .point__text p .red {
  color: #B91111;
  font-weight: 600;
  font-size: 17px;
}
.pd-productHead__price .point__wrap .point__text p .red .pt {
  font-size: 0.76em;
}
.pd-productHead__price .point__wrap .point__text p .note {
  font-size: 12px;
}
.pd-productHead__price .point__wrap .point__question {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productHead__price-special {
  /* 特別価格 */
  position: relative;
  background-color: #fcd500;
  border-radius: 6px;
  padding: 10px;
  margin-top: 30px;
}
.pd-productHead__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: 78px;
  top: -15px;
  left: -9px;
}
.pd-productHead__price-special .special__head {
  font-size: 16px;
  background-image: url(../images/icon/timer_01.svg);
  background-size: auto 84px;
  background-repeat: no-repeat;
  background-position: top right;
  padding: 3px 0 12px 70px;
  margin-right: 13px;
}
.pd-productHead__price-special .special__content {
  background-color: #fff;
  border-radius: 6px;
  padding: 20px 13px 16px;
}
.pd-productHead__price-special .special__foot {
  border-top: 1px solid #fcd500;
  padding-top: 10px;
  margin-top: 10px;
}
.pd-productHead__price-special .special__foot .text {
  font-weight: 600;
  font-size: 12px;
}
.pd-productHead__price-special .special__foot .text span {
  font-size: 1.33em;
}
.pd-productHead__price-limited {
  /* 限定特価 */
  background-color: #ffe7b2;
  border-radius: 6px;
  padding: 4px;
}
.pd-productHead__price-limited .limited__head {
  font-size: 16px;
  padding: 5px 10px;
}
.pd-productHead__price-limited .limited__content {
  background-color: #fff;
  border-radius: 6px;
  padding: 20px 13px 16px;
}
.pd-productHead__price-limited .limited__foot {
  border-top: 1px solid #fcd500;
  padding-top: 10px;
  margin-top: 10px;
}
.pd-productHead__price-limited .limited__foot .text {
  font-weight: 600;
  font-size: 12px;
}
.pd-productHead__price-limited .limited__foot .text span {
  font-size: 1.33em;
}
.pd-productHead__price-limited02 .limited__head {
  color: #B91111;
  font-size: 16px;
  line-height: 1;
  background-color: #ffeaea;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 7px 13px;
  margin-bottom: 14px;
}
.pd-productHead__delivery {
  /* 送料、出荷状況など */
  background-color: #F4F4F4;
  border-radius: 6px;
  padding: 20px 22px;
  margin-top: 30px;
}
.pd-productHead__delivery .delivery__head {
  padding-bottom: 14px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-productHead__delivery .shipping-fee {
  /* 送料 */
}
.pd-productHead__delivery .shipping-fee__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 6px 8px;
}
.pd-productHead__delivery .shipping-fee__text {
  font-weight: 600;
  font-size: 14px;
}
.pd-productHead__delivery .shipping-fee__text .red {
  color: #B91111;
}
.pd-productHead__delivery .shipping-fee__question {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productHead__delivery .shipping-fee__foot {
  font-size: 12px;
  margin-top: 9px;
}
.pd-productHead__delivery .shipping-fee__foot a {
  color: #B91111;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-productHead__delivery .shipping-fee__foot a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-productHead__delivery .shipping-fee__foot a:hover {
    opacity: 0.7;
  }
}
.pd-productHead__delivery .delivery__body {
  padding-top: 16px;
}
.pd-productHead__delivery .delivery__body .address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  margin-bottom: 10px;
}
.pd-productHead__delivery .delivery__body .address__postcode {
  /* 郵便番号 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid #E6E6E6;
}
.pd-productHead__delivery .delivery__body .address__postcode .postmark {
  background-color: #D8D8D8;
  font-weight: 600;
  font-size: 14px;
  text-align: center;
  padding: 4px 8px;
}
.pd-productHead__delivery .delivery__body .address__postcode .input_area {
  border: none;
  width: 85px;
  background-color: #fff;
  padding: 4px 8px;
}
.pd-productHead__delivery .delivery__body .address__postcode .input_area::-webkit-input-placeholder {
  color: #D8D8D8;
}
.pd-productHead__delivery .delivery__body .address__postcode .input_area::-moz-placeholder {
  color: #D8D8D8;
}
.pd-productHead__delivery .delivery__body .address__postcode .input_area:-ms-input-placeholder {
  color: #D8D8D8;
}
.pd-productHead__delivery .delivery__body .address__postcode .input_area::-ms-input-placeholder {
  color: #D8D8D8;
}
.pd-productHead__delivery .delivery__body .address__postcode .input_area::placeholder {
  color: #D8D8D8;
}
.pd-productHead__delivery .delivery__body .address__result {
  /* お届け先 */
  font-size: 14px;
}
.pd-productHead__delivery .delivery__body .content {
  background-color: #fff;
  border-radius: 6px;
  padding: 20px;
}
.pd-productHead__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: 10px 15px;
  margin-bottom: 12px;
}
.pd-productHead__delivery .delivery__body .content__speed .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 26px;
}
.pd-productHead__delivery .delivery__body .content__speed .icon img {
  height: 100%;
  width: auto;
}
.pd-productHead__delivery .delivery__body .content__speed .note {
  color: #6C6A6A;
  font-size: 12px;
  margin-left: 3px;
  text-indent: -1em;
  padding-left: 1em;
}
@media all and (min-width: 1281px) {
  .pd-productHead__delivery .delivery__body .content__speed .note br {
    display: none;
  }
}
.pd-productHead__delivery .delivery__body .content__date {
  /* お届け日 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.pd-productHead__delivery .delivery__body .content__date .date__heading {
  white-space: nowrap;
}
.pd-productHead__delivery .delivery__body .content__date .date__cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-productHead__delivery .delivery__body .content__date .bold {
  font-weight: 600;
}
.pd-productHead__delivery .delivery__body .content__date .note {
  color: #6C6A6A;
  font-size: 12px;
  margin-top: 2px;
}
.pd-productHead__delivery .delivery__body .content__date .note .red {
  color: #B91111;
}
.pd-productHead__delivery .delivery__body .content__stock {
  /* 在庫状況 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 14px;
}
.pd-productHead__delivery .delivery__body .content__stock .stock__heading {
  white-space: nowrap;
}
.pd-productHead__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: 10px 5px;
}
.pd-productHead__delivery .delivery__body .content__stock .stock__cont .note {
  color: #6C6A6A;
  font-size: 12px;
  line-height: 1.1;
}
.pd-productHead__delivery .delivery__body .content__stock .stock__cont .text {
  font-size: 12px;
}
.pd-productHead__delivery .delivery__body .content__stock .stock__cont .c-question__wrap {
  width: 100%;
}
.pd-productHead__discontinued {
  /* 廃番 */
}
.pd-productHead__discontinued .dc__heading {
  font-weight: 600;
  font-size: 16px;
}
.pd-productHead__discontinued p:not(:last-child) {
  margin-bottom: 8px;
}
.pd-productHead__select {
  margin-top: 30px;
}
.pd-productHead__select fieldset {
  min-width: unset;
  margin: 0;
  padding: 0;
  border: none;
}
.pd-productHead__select fieldset:not(:last-child) {
  margin-bottom: 30px;
}
.pd-productHead__select legend {
  width: 100%;
  font-size: 16px;
  background-color: #F4F4F4;
  border-radius: 3px;
  padding: 6px 20px;
  margin-bottom: 14px;
}
.pd-productHead__select .color__list {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(64px, 1fr));
  gap: 6px;
}
.pd-productHead__select .color__item input[type=radio] {
  display: none;
}
.pd-productHead__select .color__item label {
  position: relative;
  display: block;
  border-radius: 3px;
  border: 1px solid #D8D8D8;
}
.pd-productHead__select .color__item label::before {
  position: absolute;
  content: "";
  border-radius: 3px;
  border: 3px solid #D8D8D8;
  inset: -1px;
  opacity: 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
@media (hover: hover) {
  .pd-productHead__select .color__item label:hover::before {
    opacity: 1;
  }
}
.pd-productHead__select .color__item img {
  border-radius: 3px;
}
.pd-productHead__select .color__item input[type=radio]:checked + label::before {
  opacity: 1;
  border-color: #000;
}
.pd-productHead__select .size__item {
  border-bottom: 1px solid #D8D8D8;
  padding-bottom: 10px;
}
.pd-productHead__select .size__item:not(:last-child) {
  margin-bottom: 10px;
}
.pd-productHead__select .size__item .item__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.pd-productHead__select .size__item .item__size {
  width: 64px;
  text-align: center;
  font-weight: 600;
  font-size: 18px;
}
.pd-productHead__select .size__item .item__price {
  margin: 0 20px 0 10px;
}
.pd-productHead__select .size__item .item__price .inc {
  font-weight: 600;
  font-size: 14px;
}
.pd-productHead__select .size__item .item__price .ex {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-productHead__select .size__item .item__price span {
  font-weight: 300;
  font-size: 10px;
}
.pd-productHead__select .size__item .item__count {
  margin-left: auto;
}
.pd-productHead__btnArea {
  /* ボタンエリア */
  margin-top: 30px;
}
.pd-productHead__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: 14px;
}
.pd-productHead__btnArea-inner {
  /* カウンターありの場合 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
}
.pd-productHead__btnArea-inner .count__wrap {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-productHead__btnArea-inner .btn__wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-productHead__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-productHead__payment .payment__head {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
}
.pd-productHead__payment .payment__cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-productHead__payment .payment__cont a {
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-productHead__payment .payment__cont a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-productHead__payment .payment__cont a:hover {
    opacity: 0.7;
  }
}
.pd-productHead__attention {
  margin-top: 20px;
}
.pd-productHead__attention .attn__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px;
}
.pd-productHead__attention .attn__item {
  color: #B91111;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  border: 1px solid #efbfbf;
  padding: 4px 6px;
}
.pd-productHead__variation {
  background-color: #F4F4F4;
  border-right: 6px;
  text-align: center;
  padding: 18px 20px 22px;
  margin-top: 40px;
}
.pd-productHead__variation .variation__head {
  margin-bottom: 10px;
}
.pd-productHead__variation .c-btn {
  width: min(360px, 100%);
  margin-inline: auto;
}
.pd-productHead__variation .c-btn__btnarea {
  padding: 10px;
}
.pd-productHead__data {
  /* 商品情報 */
  padding: 26px 0;
  border-top: 1px solid #D8D8D8;
  border-bottom: 1px solid #D8D8D8;
  margin-top: 40px;
}
.pd-productHead__data p {
  line-height: 1.7;
}
.pd-productHead__data .bold {
  font-weight: 600;
}
.pd-productHead__data a {
  color: #000;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-productHead__data a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-productHead__data a:hover {
    opacity: 0.7;
  }
}

/* ==========================================================================//
//
// 価格表
//
// ========================================================================== */
.pd-priceList {
  margin: 60px 0;
}
.pd-priceList__ttl {
  color: #fff;
  text-align: center;
  font-size: 20px;
  background-color: #6C6A6A;
  padding: 14px;
}
.pd-priceList__table {
  width: 100%;
  word-break: break-all;
}
.pd-priceList__table thead {
  background-color: #F4F4F4;
}
.pd-priceList__table thead th {
  text-align: center;
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
  padding: 13px 0;
}
@media all and (max-width: 1200px) {
  .pd-priceList__table thead th {
    font-size: 13px;
  }
}
.pd-priceList__table tbody td {
  padding: 20px 15px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-priceList__table tbody td:first-child {
  padding-left: 0;
}
.pd-priceList__table tbody td:last-child {
  padding-right: 0;
}
@media all and (max-width: 1200px) {
  .pd-priceList__table tbody td {
    padding: 20px 12px;
  }
}
.pd-priceList__table .row__image {
  width: 80px;
  min-width: 60px;
  padding-right: 0;
}
.pd-priceList__table .row__image .image {
  position: relative;
  cursor: pointer;
}
.pd-priceList__table .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__table .row__ttls {
  max-width: 260px;
  padding-left: 20px;
}
.pd-priceList__table .row__ttl {
  color: #000;
  font-size: 14px;
  line-height: 1.57;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-priceList__table .row__ttl {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-priceList__table .row__ttl:hover {
    opacity: 0.7;
  }
}
.pd-priceList__table .row__code {
  color: #6C6A6A;
  font-size: 13px;
  margin-top: 4px;
}
.pd-priceList__table .row__number {
  text-align: center;
}
.pd-priceList__table .row__defaultPrice {
  white-space: nowrap;
  text-align: center;
}
.pd-priceList__table .row__defaultPrice span {
  display: block;
  font-size: 11px;
}
.pd-priceList__table .row__price {
  max-width: 240px;
  white-space: nowrap;
}
.pd-priceList__table .row__price .price__content {
  margin-inline: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px 12px;
}
.pd-priceList__table .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;
}
.pd-priceList__table .row__price .price__main {
  font-weight: 600;
  font-size: 18px;
}
@media all and (max-width: 1200px) {
  .pd-priceList__table .row__price .price__main {
    font-size: 16px;
  }
}
.pd-priceList__table .row__price .price__main span {
  font-weight: 300;
  font-size: 11px;
}
.pd-priceList__table .row__price .price__ex span {
  font-size: 11px;
}
.pd-priceList__table .row__price .price__point {
  position: relative;
  padding-left: 26px;
}
.pd-priceList__table .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: 20px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.pd-priceList__table .row__price .price__point span {
  color: #B91111;
  font-weight: 600;
}
.pd-priceList__table .row__price .price__special {
  height: 22px;
}
.pd-priceList__table .row__price .price__special img {
  height: 100%;
  width: auto;
}
.pd-priceList__table .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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-column-align: center;
      justify-self: center;
  gap: 6px;
}
.pd-priceList__table .row__status .status__note {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-priceList__table .row__btn {
  text-align: center;
  width: 197px;
}
@media all and (max-width: 1200px) {
  .pd-priceList__table .row__btn {
    width: 180px;
  }
}
.pd-priceList__table .row__btn .btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.pd-priceList__table .row__btn .btn__primary {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-priceList__table .row__btn .btn__primary .c-btn__btnarea {
  white-space: nowrap;
  font-size: 14px;
  padding: 11px;
}
@media all and (max-width: 1200px) {
  .pd-priceList__table .row__btn .btn__primary .c-btn__btnarea {
    font-size: 13px;
    padding: 8px;
  }
}
.pd-priceList__table .row__btn .pd-cancel {
  font-weight: 600;
  font-size: 12px;
  margin-top: 8px;
}
.pd-priceList__table .row__btn .pd-cancel--ok {
  color: #6C6A6A;
}
.pd-priceList__table .row__btn .pd-cancel--no {
  color: #B91111;
}

/* ソート・まとめてカート追加ありの価格表
---------------------------------------------------------- */
.pd-priceList-parts {
  margin: 60px 0;
}
.pd-priceList-parts__ttl {
  color: #fff;
  text-align: center;
  font-size: 20px;
  background-color: #6C6A6A;
  padding: 14px;
}
.pd-priceList-parts__controls {
  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;
  padding: 14px 0;
}
.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: 600;
  margin-right: 20px;
}
.pd-priceList-parts__controls .controls__display .display__summary span {
  font-size: 18px;
}
.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: 13px;
  margin-left: 30px;
}
.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: 300;
  font-size: 14px;
  min-width: 78px;
  background-image: url(../images/icon/arrow_01.svg);
  background-repeat: no-repeat;
  background-size: 13px 7px;
  background-position: right 11px top 54%;
  padding: 8px 40px 8px 17px;
}
.pd-priceList-parts__controls .controls__display .display__sort select::-webkit-input-placeholder {
  color: #afafaf;
}
.pd-priceList-parts__controls .controls__display .display__sort select::-moz-placeholder {
  color: #afafaf;
}
.pd-priceList-parts__controls .controls__display .display__sort select:-ms-input-placeholder {
  color: #afafaf;
}
.pd-priceList-parts__controls .controls__display .display__sort select::-ms-input-placeholder {
  color: #afafaf;
}
.pd-priceList-parts__controls .controls__display .display__sort select::placeholder {
  color: #afafaf;
}
.pd-priceList-parts__controls .controls__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 20px;
}
.pd-priceList-parts__controls .controls__btns .cart_btn {
  width: 270px;
}
.pd-priceList-parts__controls .controls__btns .cart_btn .c-btn__btnarea {
  padding: 12px;
}
.pd-priceList-parts__controls--foot {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  padding: 30px 0 0;
}
.pd-priceList-parts__table {
  width: 100%;
  word-break: break-all;
}
.pd-priceList-parts__table thead {
  background-color: #F4F4F4;
}
.pd-priceList-parts__table thead th {
  text-align: center;
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
  padding: 13px 0;
}
@media all and (max-width: 1200px) {
  .pd-priceList-parts__table thead th {
    font-size: 13px;
  }
}
.pd-priceList-parts__table thead th.with_padding {
  padding: 13px;
}
.pd-priceList-parts__table thead th .has_filter {
  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: 4px;
}
.pd-priceList-parts__table tbody td {
  padding: 20px 10px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-priceList-parts__table tbody td:first-child {
  padding-left: 0;
}
.pd-priceList-parts__table tbody td:last-child {
  padding-right: 0;
}
.pd-priceList-parts__table .row__image {
  width: 80px;
  min-width: 60px;
  padding-right: 0;
}
.pd-priceList-parts__table .row__image .image {
  position: relative;
  cursor: pointer;
}
.pd-priceList-parts__table .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__table .row__partsNum {
  text-align: center;
}
.pd-priceList-parts__table .row__ttl {
  color: #000;
  font-size: 14px;
  line-height: 1.57;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-priceList-parts__table .row__ttl {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-priceList-parts__table .row__ttl:hover {
    opacity: 0.7;
  }
}
.pd-priceList-parts__table .row__code {
  color: #6C6A6A;
  font-size: 13px;
  margin-top: 4px;
}
.pd-priceList-parts__table .row__quantity {
  text-align: center;
}
.pd-priceList-parts__table .row__number {
  text-align: center;
}
.pd-priceList-parts__table .row__defaultPrice {
  white-space: nowrap;
  text-align: center;
}
.pd-priceList-parts__table .row__defaultPrice span {
  display: block;
  font-size: 11px;
}
.pd-priceList-parts__table .row__price {
  max-width: 200px;
  white-space: nowrap;
}
.pd-priceList-parts__table .row__price .price__content {
  margin-inline: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px 12px;
}
.pd-priceList-parts__table .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;
}
.pd-priceList-parts__table .row__price .price__main {
  font-weight: 600;
  font-size: 18px;
}
@media all and (max-width: 1200px) {
  .pd-priceList-parts__table .row__price .price__main {
    font-size: 16px;
  }
}
.pd-priceList-parts__table .row__price .price__main span {
  font-weight: 300;
  font-size: 11px;
}
.pd-priceList-parts__table .row__price .price__point {
  position: relative;
  padding-left: 26px;
  margin-top: 5px;
}
.pd-priceList-parts__table .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: 20px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.pd-priceList-parts__table .row__price .price__point span {
  color: #B91111;
  font-weight: 600;
}
.pd-priceList-parts__table .row__price .price__ex span {
  font-size: 11px;
}
.pd-priceList-parts__table .row__price .price__special {
  height: 22px;
}
.pd-priceList-parts__table .row__price .price__special img {
  height: 100%;
  width: auto;
}
.pd-priceList-parts__table .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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-column-align: center;
      justify-self: center;
  gap: 6px;
}
.pd-priceList-parts__table .row__status .status__note {
  color: #6C6A6A;
  font-size: 12px;
}
.pd-priceList-parts__table .row__orderQuantity {
  text-align: center;
  padding: 0 5px;
}
.pd-priceList-parts__table .row__orderQuantity input {
  width: 53px;
  text-align: center;
  border: 1px solid #D8D8D8;
  border-radius: 4px;
  padding: 4px;
}
.pd-priceList-parts__table .row__orderQuantity input[type=number] {
  -moz-appearance: textfield;
}
.pd-priceList-parts__table .row__orderQuantity input[type=number]::-webkit-outer-spin-button, .pd-priceList-parts__table .row__orderQuantity input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.pd-priceList-parts__table .row__btn {
  text-align: center;
  width: 155px;
}
@media all and (max-width: 1200px) {
  .pd-priceList-parts__table .row__btn {
    width: 130px;
  }
}
.pd-priceList-parts__table .row__btn .c-btn__btnarea {
  white-space: nowrap;
  font-size: 14px;
  padding: 11px;
}
@media all and (max-width: 1200px) {
  .pd-priceList-parts__table .row__btn .c-btn__btnarea {
    font-size: 13px;
    padding: 8px;
  }
}
.pd-priceList-parts__table .row__btn .pd-cancel {
  font-weight: 600;
  font-size: 12px;
  margin-top: 8px;
}
.pd-priceList-parts__table .row__btn .pd-cancel--ok {
  color: #6C6A6A;
}
.pd-priceList-parts__table .row__btn .pd-cancel--no {
  color: #B91111;
}

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

/* 価格表商品画像 - モーダル
---------------------------------------------------------- */
.pd-modalPLimg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 15px;
  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: 30px;
  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(854px, 80%);
  max-height: 90vh;
  height: 100%;
}
.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: 15px;
  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, 90%);
  max-height: 95vh;
  overflow-y: auto;
}
.pd-modalPLcart__content-head {
  text-align: center;
  font-weight: 600;
  font-size: 18px;
  background-color: #F4F4F4;
  border-radius: 6px 6px 0 0;
  padding: 22px;
}
.pd-modalPLcart__content-cont {
  background-color: #fff;
  border-radius: 0 0 6px 6px;
  padding: 40px 50px;
}
.pd-modalPLcart__content-cont .cont__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
}
.pd-modalPLcart__content-cont .info__image {
  width: 100px;
}
.pd-modalPLcart__content-cont .info__texts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pd-modalPLcart__content-cont .info__ttl {
  font-weight: 600;
  font-size: 14px;
  margin-bottom: 12px;
}
.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 {
  border: 1px 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: 600;
  font-size: 14px;
  white-space: nowrap;
  padding: 6px 20px;
}
@media all and (max-width: 1200px) {
  .pd-modalPLcart__content-cont .cont__table thead th {
    font-size: 13px;
  }
}
.pd-modalPLcart__content-cont .cont__table tbody {
  max-height: 173px;
  overflow-y: auto;
}
.pd-modalPLcart__content-cont .cont__table tbody td {
  padding: 10px 20px;
  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: 11px;
}
.pd-modalPLcart__content-cont .cont__table th:nth-child(1),
.pd-modalPLcart__content-cont .cont__table td:nth-child(1) {
  width: 263px;
}
.pd-modalPLcart__content-cont .cont__table th:nth-child(2),
.pd-modalPLcart__content-cont .cont__table td:nth-child(2) {
  width: 158px;
}
.pd-modalPLcart__content-cont .cont__table th:nth-child(3),
.pd-modalPLcart__content-cont .cont__table td:nth-child(3) {
  width: 105px;
}
.pd-modalPLcart__content-cont .cont__attn {
  background-color: #fff7f7;
  padding: 20px;
  margin-top: 30px;
}
.pd-modalPLcart__content-cont .cont__attn .attn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
.pd-modalPLcart__content-cont .cont__attn .attn__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-modalPLcart__content-cont .cont__attn .attn__texts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  line-height: 1.7;
}
.pd-modalPLcart__content-cont .cont__attn .attn__texts .bold {
  font-weight: 600;
}
.pd-modalPLcart__content-cont .cont__attn .attn__texts .red {
  color: #B91111;
}
.pd-modalPLcart__content-cont .cont__btn {
  margin-top: 35px;
}
.pd-modalPLcart__content-cont .cont__btn .btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
.pd-modalPLcart__content-cont .cont__btn .btn__wrap .c-btn {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 360px;
}
.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: 15px;
  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(700px, 90%);
  max-height: 95vh;
  overflow-y: auto;
}
.pd-modalInfo__content-head {
  text-align: center;
  font-weight: 600;
  font-size: 18px;
  background-color: #F4F4F4;
  border-radius: 6px 6px 0 0;
  padding: 22px;
}
.pd-modalInfo__content-cont {
  background-color: #fff;
  border-radius: 0 0 6px 6px;
  padding: 40px 50px;
}
.pd-modalInfo__content-cont .cont__text {
  line-height: 1.7;
}
.pd-modalInfo__content-cont .cont__btn {
  margin-top: 35px;
}
.pd-modalInfo__content-cont .cont__btn .btn__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
.pd-modalInfo__content-cont .cont__btn .btn__wrap .c-btn {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 360px;
  min-height: 50px;
}
.pd-modalInfo__content-cont .cont__btn .btn__wrap .c-btn__btnarea {
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  text-align: left;
}
.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: 39px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-modalInfo--alert {
  /* アラート */
}
.pd-modalInfo--alert .pd-modalInfo__content-head {
  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: 16px;
  text-align: left;
  background-color: #FFDBDB;
  border: 3px 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: 39px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pd-modalInfo--alert .pd-modalInfo__content-cont {
  border: 3px solid #B98F8F;
  border-top: 0;
}

/* ==========================================================================//
//
// 商品情報（特徴、仕様など）
//
// ========================================================================== */
/* アコーディオン
---------------------------------------------------------- */
.pd-info {
  background-color: #F4F4F4;
  padding: 60px 0;
}
.pd-info:not(:last-child) {
  margin-bottom: 60px;
}
.pd-info-sec {
  background-color: #fff;
  border-radius: 6px;
  padding: 0 40px;
}
.pd-info-sec:not(:last-child) {
  margin-bottom: 20px;
}
.pd-info-sec__ttl {
  position: relative;
  font-size: 22px;
  border-bottom: 1px solid #D8D8D8;
  padding: 24px 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: 44px;
  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::after {
  position: absolute;
  content: "詳細を見る";
  font-weight: 300;
  font-size: 14px;
  top: 50%;
  right: 57px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.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__ttl.is-open::after {
  content: "閉じる";
}
.pd-info-sec__cont {
  position: relative;
  overflow: hidden;
  height: 90px;
  padding: 36px 0 46px;
}
.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: 18px;
  margin-bottom: 20px;
}
.pd-feature__heading:not(:first-child) {
  margin-top: 36px;
}
.pd-feature__blocks {
  margin-top: 36px;
}
.pd-feature__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 60px;
}
.pd-feature__block:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.pd-feature__block:not(:last-child) {
  margin-bottom: 40px;
}
.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__image img {
  width: revert-layer;
  max-width: 100%;
}
.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: 40px;
}
.pd-feature__image--banner {
  width: min(780px, 80%);
}
.pd-feature__image--large {
  width: min(1000px, 100%);
}
.pd-feature__image--mid {
  width: min(500px, 50%);
}
.pd-feature__image--small {
  width: min(250px, 30%);
}
.pd-feature__contact {
  border: 1px solid #D8D8D8;
  border-radius: 6px;
  text-align: center;
  padding: 26px 30px;
  margin-top: 40px;
}
.pd-feature__contact .contact__heading {
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 10px;
}
.pd-feature__contact .contact__text {
  font-size: 16px;
}
.pd-feature__contact .contact__text .small {
  font-size: 14px;
}
.pd-feature__contact .contact__text .tel {
  font-weight: 600;
  font-size: 20px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-feature__contact .contact__text .tel {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-feature__contact .contact__text .tel:hover {
    opacity: 0.7;
  }
}
.pd-feature__contact .contact__content {
  text-align: left;
  border-top: 1px solid #D8D8D8;
  padding-top: 26px;
  margin-top: 26px;
}
.pd-feature__contact .contact__content .cont__heading {
  font-weight: 600;
  font-size: 16px;
}
.pd-feature__contact .contact__content .cont__heading:not(:last-child) {
  margin-bottom: 26px;
}
.pd-feature__contact .contact__content .cont__text {
  line-height: 1.7;
}
.pd-feature__contact .contact__content .cont__text:not(:last-child) {
  margin-bottom: 10px;
}

/* 仕様
---------------------------------------------------------- */
.pd-spec__block:not(:last-child) {
  margin-bottom: 40px;
}
.pd-spec__heading {
  font-size: 16px;
  margin-bottom: 14px;
}
.pd-spec__table {
  position: relative;
}
.pd-spec__table::before {
  position: absolute;
  content: "";
  border: 2px solid #F4F4F4;
  border-radius: 6px;
  inset: -1px;
}
.pd-spec__table table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  border-radius: 6px;
}
.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: 13px 30px;
  border-bottom: 1px solid #D8D8D8;
}
.pd-spec__table table th {
  font-weight: 600;
  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%;
  table-layout: fixed;
  border-collapse: collapse;
}
.pd-spec__table--size table th,
.pd-spec__table--size table td {
  text-align: center;
  border: 1px solid #D8D8D8;
  padding: 13px 30px;
}
.pd-spec__table--size table th {
  font-weight: 600;
  font-size: 15px;
  background-color: #F4F4F4;
}
.pd-spec__note {
  /* テープル下注釈 */
  color: #6C6A6A;
  font-size: 12px;
  margin-top: 14px;
}

/* 資料
---------------------------------------------------------- */
.pd-document__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 16px;
}
.pd-document__btn {
  width: 250px;
}
.pd-document__image {
  margin-top: 40px;
}

/* 動画
---------------------------------------------------------- */
.pd-movie__movie {
  aspect-ratio: 16/9;
  width: min(920px, 85%);
  margin-inline: auto;
}
.pd-movie__movie:not(:last-child) {
  margin-bottom: 40px;
}
.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: 30px;
}
.pd-review__rating {
  width: min(690px, 100%);
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.pd-review__rating-summary .numbers .num {
  font-weight: 600;
  font-size: 36px;
}
.pd-review__rating-summary .numbers .star {
  font-size: 24px;
  -webkit-text-stroke-width: 2px;
  letter-spacing: 0.35em;
}
.pd-review__rating-summary .text {
  margin-top: 6px;
}
.pd-review__rating-graph .graph__row {
  width: 315px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  line-height: 1;
}
.pd-review__rating-graph .graph__row:not(:last-child) {
  margin-bottom: 12px;
}
.pd-review__rating-graph .graph__rate {
  font-weight: 600;
  font-size: 14px;
}
.pd-review__rating-graph .graph__rate::before {
  content: "★";
  color: #F4B400;
  font-size: 16px;
  margin-right: 3px;
}
.pd-review__rating-graph .graph__bar {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 15px;
  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: 180px;
  display: block;
  border-radius: 3px;
  background-color: #fff;
  border: 1px solid #707070;
  color: #000;
  text-align: center;
  font-weight: 600;
  font-size: 14px;
  padding: 8px;
  margin-top: 24px;
  cursor: pointer;
}
@media (hover: hover) {
  .pd-review__rating .review_btn {
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
  }
  .pd-review__rating .review_btn:hover {
    background-color: #efefef;
  }
}
.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: 36px 60px 40px;
  margin-top: 26px;
}
.pd-review__form .form__ttl {
  text-align: center;
  font-size: 18px;
  margin-bottom: 36px;
}
.pd-review__form .form__list {
  margin-bottom: 40px;
}
.pd-review__form .form__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.pd-review__form .form__item:not(:last-child) {
  margin-bottom: 23px;
}
.pd-review__form .form__item .item__heading {
  width: 230px;
  font-weight: 600;
  font-size: 15px;
  padding-top: 6px;
}
.pd-review__form .form__item .item__heading .required {
  color: #B91111;
  font-weight: 300;
  font-size: 14px;
  margin-left: 20px;
}
.pd-review__form .form__item .item__cont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.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 .stars label:hover,
.pd-review__form .form__item .item__cont .stars label:hover ~ label,
.pd-review__form .form__item .item__cont .stars input[type=radio]:checked ~ label {
  color: #F4B400;
}
.pd-review__form .form__item .item__cont input:not([type=checkbox], [type=radio]),
.pd-review__form .form__item .item__cont textarea {
  border: 1px solid #D8D8D8;
  border-radius: 4px;
  width: 100%;
  font-size: 15px;
  padding: 10px 20px;
}
.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;
}
.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;
}
.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;
}
.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;
}
.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;
}
.pd-review__form .form__item .item__cont textarea {
  field-sizing: content;
  min-height: 130px;
}
.pd-review__form .form__submitBtn {
  width: min(352px, 100%);
  margin-inline: auto;
}
.pd-review__form .form__submitBtn .c-btn__btnarea {
  font-weight: 600;
  padding: 14px;
}
.pd-review__filter {
  background-color: #F4F4F4;
  border-radius: 6px;
  padding: 24px 20px;
  margin-top: 40px;
}
.pd-review__filter .filter__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px;
}
.pd-review__filter .filter__search .search-box {
  width: 350px;
  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;
  border-radius: 4px 0 0 4px;
  border: 1px solid #E6E6E6;
  border-right: none;
  padding: 12px 16px;
}
.pd-review__filter .filter__search .search-box__input::-webkit-input-placeholder {
  color: #afafaf;
}
.pd-review__filter .filter__search .search-box__input::-moz-placeholder {
  color: #afafaf;
}
.pd-review__filter .filter__search .search-box__input:-ms-input-placeholder {
  color: #afafaf;
}
.pd-review__filter .filter__search .search-box__input::-ms-input-placeholder {
  color: #afafaf;
}
.pd-review__filter .filter__search .search-box__input::placeholder {
  color: #afafaf;
}
.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;
}
@media (hover: hover) {
  .pd-review__filter .filter__search .search-box__btn {
    -webkit-transition: background-color 0.3s, background-image 0.3s;
    transition: background-color 0.3s, background-image 0.3s;
  }
  .pd-review__filter .filter__search .search-box__btn:hover {
    background-color: #b2b2b2;
    background-image: url(../images/icon/search_white_01.svg);
  }
}
.pd-review__filter .filter__sort {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.pd-review__filter .filter__sort select {
  width: 190px;
  background: #fff;
  border: 1px solid #E6E6E6;
  border-radius: 4px;
  background-image: url(../images/icon/arrow_01.svg);
  background-repeat: no-repeat;
  background-size: 13px 7px;
  background-position: right 20px top 55%;
  padding: 12px 20px;
}
.pd-review__list {
  margin-top: 10px;
}
.pd-review__list .list__item {
  padding: 30px 0;
  border-bottom: 1px solid #D8D8D8;
}
.pd-review__list .item__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.pd-review__list .item__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  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: 600;
  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 .name_wrap {
  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: 600;
  font-size: 14px;
}
.pd-review__list .item__profile .profile__texts .name_wrap .icon {
  height: 24px;
}
.pd-review__list .item__profile .profile__texts .name_wrap .icon img {
  height: 100%;
  width: auto;
}
.pd-review__list .item__cont {
  margin-top: 23px;
}
.pd-review__list .item__ttl {
  font-weight: 600;
  font-size: 15px;
}
.pd-review__list .item__text {
  line-height: 1.7;
  margin-top: 16px;
}
.pd-review__list .item__note {
  color: #6C6A6A;
  font-size: 12px;
  line-height: 2;
  margin-top: 20px;
}
.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: 16px;
  margin-top: 20px;
}
.pd-review__list .item__foot .helpful__heading {
  color: #6C6A6A;
  font-size: 12px;
}
.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: 9px;
}
.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);
}
@media (hover: hover) {
  .pd-review__list .item__foot .helpful__icons .helpful__icon:hover::before {
    opacity: 0;
  }
  .pd-review__list .item__foot .helpful__icons .helpful__icon:hover::after {
    opacity: 1;
  }
}
.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: 500;
  font-size: 13px;
  line-height: 1;
}
.pd-review__list-btn {
  margin-top: 40px;
}

/* ==========================================================================//
//
// シリーズの商品を見る
//
// ========================================================================== */
.pd-series__image a {
  display: block;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-series__image a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-series__image a:hover {
    opacity: 0.7;
  }
}

/* ==========================================================================//
//
// よく一緒に購入されている商品
//
// ========================================================================== */
.pd-buyWith__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
.pd-buyWith__list {
  --gap: 40px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--gap);
}
.pd-buyWith__item {
  position: relative;
  width: calc((100% - var(--gap) * 3) / 4);
  background-color: #F4F4F4;
  border-radius: 6px;
  padding: 24px 16px;
}
.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: calc(var(--gap) / 2);
  top: 50%;
  right: calc(var(--gap) / 4 * -1);
  -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%);
}
.pd-buyWith__item .item__image {
  margin-bottom: 20px;
}
.pd-buyWith__item .item__name {
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .pd-buyWith__item .item__name {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .pd-buyWith__item .item__name:hover {
    opacity: 0.7;
  }
}
.pd-buyWith__item .item__price {
  font-weight: 600;
  font-size: 16px;
  margin-top: 14px;
}
.pd-buyWith__item .item__price span {
  font-weight: 300;
  font-size: 14px;
}
.pd-buyWith__item .item__ckeck {
  position: absolute;
  top: -10px;
  right: -10px;
  aspect-ratio: 1;
  width: 39px;
  height: auto;
  background: #fff;
  border: 1px solid #E6E6E6;
  border-radius: 4px;
}
.pd-buyWith__item .item__ckeck::before {
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  left: 12px;
  width: 12px;
  height: 19px;
  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: 250px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  text-align: center;
}
.pd-buyWith__total .total__price .bold {
  font-weight: 600;
  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: 8px;
  margin-top: 10px;
}
.pd-buyWith__total .total__point img {
  width: 24px;
}
.pd-buyWith__total .total__point p {
  font-size: 14px;
}
.pd-buyWith__total .total__point p .red {
  color: #B91111;
  font-weight: 600;
  font-size: 17px;
}
.pd-buyWith__total .total__point p .red .pt {
  font-size: 0.76em;
}
.pd-buyWith__total .total__point p .note {
  font-size: 12px;
}
.pd-buyWith__total .total__btn {
  margin-top: 30px;
}