@charset "UTF-8";
/* =====================
  fsのデフォルトを変更系
 ======================= */
/** -------------------- プレビュー -------------------- **/
.fs-preview-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100000;
  opacity: 0.7;
}

/** -------------------- 入力項目 -------------------- **/
input,
textarea,
select {
  font-family: var(--font_ja);
  font-size: 100%;
  color: var(--c_text);
}

[type=hidden],
[type=text],
[type=search],
[type=tel],
[type=url],
[type=email],
[type=password],
[type=datetime],
[type=date],
[type=month],
[type=week],
[type=time],
[type=datetime-local],
[type=number],
select,
textarea {
  border: 1px solid var(--c_border);
  border-radius: 0;
}
[type=hidden]::-webkit-input-placeholder,
[type=text]::-webkit-input-placeholder,
[type=search]::-webkit-input-placeholder,
[type=tel]::-webkit-input-placeholder,
[type=url]::-webkit-input-placeholder,
[type=email]::-webkit-input-placeholder,
[type=password]::-webkit-input-placeholder,
[type=datetime]::-webkit-input-placeholder,
[type=date]::-webkit-input-placeholder,
[type=month]::-webkit-input-placeholder,
[type=week]::-webkit-input-placeholder,
[type=time]::-webkit-input-placeholder,
[type=datetime-local]::-webkit-input-placeholder,
[type=number]::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  opacity: 1;
}
[type=hidden]:focus,
[type=text]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=url]:focus,
[type=email]:focus,
[type=password]:focus,
[type=datetime]:focus,
[type=date]:focus,
[type=month]:focus,
[type=week]:focus,
[type=time]:focus,
[type=datetime-local]:focus,
[type=number]:focus,
select:focus,
textarea:focus {
  border-color: var(--c_blue);
}

.fs-c-dropdown__menu {
  color: var(--c_text);
  padding: 12px 40px 12px 16px;
  border: 1px solid var(--c_border);
  border-radius: 0;
}

.fs-c-quantity {
  min-width: 64px;
}
.fs-c-quantity__select {
  text-align: center;
  height: 40px;
  font-size: 1.5rem;
}
.fs-c-quantity__number {
  text-align: center;
  height: 40px;
  font-size: 1.5rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  width: 64px;
}

.fs-c-requiredMark {
  color: var(--c_red01);
}
.fs-c-requiredMark:before {
  line-height: 1;
}

.fs-c-button--particular.fs-c-button--addToWishList--detail,
.fs-c-button--particular.fs-c-button--removeFromWishList--detail {
  padding: 0;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0;
  border-radius: 0;
}
.fs-c-button--particular.fs-c-button--addToWishList--detail::after,
.fs-c-button--particular.fs-c-button--removeFromWishList--detail::after {
  content: "";
  width: 22px;
  height: 22px;
  background: url(../images/common/icon_fav.png) no-repeat center/contain;
  -webkit-filter: var(--filter_text_g);
          filter: var(--filter_text_g);
  margin: 0;
}

.fs-c-button--particular.fs-c-button--removeFromWishList--detail::after {
  background: url(../images/common/icon_fav_fill.png) no-repeat center/contain;
}

/** -------------------- 基本レイアウト -------------------- **/
.fs-l-main {
  margin: 0 auto 120px;
  padding: 0;
  max-width: none;
  gap: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.fs-l-pageMain {
  max-width: 1020px;
  padding: 0 20px;
}

.fs-l-sideArea {
  width: 240px;
  max-width: none;
  margin: 0 20px;
  display: none !important;
}

.fs-l-sideArea + .fs-l-pageMain,
.fs-l-pageMain + .fs-l-sideArea {
  width: calc(100% - 24px - 240px - 40px);
  max-width: 1020px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

/** -------------------- パンくずリストパーツ -------------------- **/
.fs-c-breadcrumb__list {
  padding: 20px 0;
  line-height: normal;
  letter-spacing: 0;
}

/* .fs-l-main > .fs-c-breadcrumb {
  width: 100%;
  max-width: 1352px;
  padding: 0 20px;
  margin: 0 auto;
} */

.fs-l-main > .fs-c-breadcrumb {
  width: 100%;
  padding: 0 20px;
  margin: 0 auto;
}

/** -------------------- 見出し -------------------- **/
/* ページ見出し */
.fs-c-heading--page {
  font-size: 2rem;
  color: var(--c_blue);
  border: none;
  font-family: var(--font_ja);
  font-weight: normal;
  text-align: left;
  line-height: 1.4;
  letter-spacing: 0.1em;
  padding: 0 0 40px;
}

/* H2 */
.fs-c-documentArticle__heading {
  font-size: 2.1rem;
  font-weight: bold;
  color: var(--c_blue);
  background: 0;
  text-align: left;
  padding: 0;
}

/* H3 */
.fs-c-documentColumn__heading {
  font-size: 1.8rem;
  font-weight: bold;
  color: var(--c_blue);
  padding: 0 0 10px;
  border-width: 0 0 1px 0;
}

.fs-c-documentColumn__content p {
  font-size: 1.5rem;
  line-height: 1.6;
}

.fs-c-documentColumn__content p a {
  color: var(--c_sub);
}

.fs-c-documentArticle {
  padding: 8px 0;
}

/** -------------------- 余白 -------------------- **/
.fs-c-documentArticle + .fs-c-documentArticle {
  margin-top: 80px;
}

* + .fs-c-documentColumn {
  margin-top: 60px;
}

/** -------------------- リスト -------------------- **/
.fs-c-list {
  margin: 2rem 0;
}

.fs-c-list li::before {
  margin: auto 0.9rem auto -0.9rem;
  border: none;
  background: var(--c_blue);
  width: 0.65rem;
  height: 0.65rem;
}

/** -------------------- ボタン -------------------- **/
.fs-c-button--plain:hover {
  color: var(--c_blue);
}

/* カートに入れるボタン */
.fs-c-button--addToCart--detail {
  width: 100%;
  font-weight: 500;
  line-height: 1;
  background: var(--c_blue);
  color: var(--c_wht);
  padding: 18px;
}

/* カルーセル矢印 */
/** -------------------- マイページ -------------------- **/
.fs-c-accountService__page.fs-c-accountService__page--accountDelete {
  height: auto;
  margin-bottom: 0;
}

.fs-c-accountService__logout {
  width: 100%;
}

/** -------------------- 商品情報　共通 -------------------- **/
/** 商品マークパーツ（システムパーツ） **/
.fs-c-productMark {
  gap: 2px;
}
.fs-c-productMark__mark {
  font-family: var(--font_mix);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  padding: 4px 10px;
  border-radius: 0;
  margin: 0;
}
.fs-c-productMark__mark--sale {
  display: none;
}

/** 商品価格パーツ（システムパーツ） **/
.fs-c-price {
  font-family: var(--font_num);
}
.fs-c-productPrice--selling.is-sale {
  font-weight: 700;
  color: var(--c_red01);
}
.fs-c-productPrice--selling.is-sale .fs-c-productPrice__main__price {
  color: var(--c_red01);
}
.fs-c-productPrice--selling.is-sale .fs-c-productPrice__addon {
  margin-right: 4px;
}
.fs-c-productPrice--selling.is-sale:after {
  content: "SALE";
  display: block;
  background: var(--c_red01);
  color: var(--c_wht);
  font-family: var(--font_num);
  font-size: 1rem;
  line-height: 1;
  padding: 4px 8px;
  margin-top: 4px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

/** -------------------- 商品グループエリア（システムパーツグループ） -------------------- **/
.fs-c-productList {
  margin: 0;
}

/** 並び替え・ページャーパーツ（システムパーツ） **/
.fs-c-productList__controller {
  padding: 0;
  margin: 30px 0;
}
.fs-c-productList__controller:first-child {
  margin-top: 0;
}
.fs-c-productList__controller:last-child {
  margin-bottom: 0;
}

.fs-c-sortItems {
  border: 0;
  line-height: 1;
  -webkit-column-gap: 12px;
     -moz-column-gap: 12px;
          column-gap: 12px;
  margin: 0;
}
.fs-c-sortItems__label {
  padding: 6px 0;
  font-weight: 700;
  line-height: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-item-align: start;
      align-self: flex-start;
  border: 0;
}
.fs-c-sortItems__list {
  border: 0;
  gap: 0 12px;
}
.fs-c-sortItems__list__item__label {
  padding: 6px 0;
  letter-spacing: 0.02em;
}
.fs-c-sortItems__list__item.is-active {
  background: none;
  color: var(--c_text);
  border-bottom: 1px solid var(--c_text);
}

.fs-c-listControl {
  margin: 24px 0 0;
}
.fs-c-listControl__status {
  font-family: var(--font_mix);
  font-size: 1.3rem;
  line-height: 1.4;
}

.fs-c-pagination {
  margin: 8px 0 0;
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.fs-c-pagination__item {
  width: auto;
  padding: 6px;
  text-align: center;
  font-family: var(--font_num);
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0;
}
.fs-c-pagination__item.is-active {
  background: none;
  border-bottom: 1px solid var(--c_text);
  color: var(--c_text);
}
.fs-c-pagination__item--prev {
  background: url(../images/common/arrow03.png) no-repeat center/10px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.fs-c-pagination__item--prev:before {
  content: "";
}
.fs-c-pagination__item--next {
  background: url(../images/common/arrow03.png) no-repeat center/10px;
}
.fs-c-pagination__item--next:before {
  content: "";
}

/** 商品一覧（システムパーツグループ） **/
.fs-c-productList__list {
  grid-template-columns: 1fr 1fr;
  gap: 40px 20px;
}
.fs-c-productList__list__item {
  border: 0;
  padding: 0;
  /* 商品画像・拡大パーツ（システムパーツ） */
  /* 商品名パーツ（システムパーツ） */
  /* 商品価格パーツ（システムパーツ） */
  /* お気に入りボタンのみ・カートボタンなしパーツ（システムパーツ） */
  /* 在庫なし表示テキスト（システムパーツ */
}
.fs-c-productList__list__item .fs-c-productListItem__viewMoreImageButton {
  display: none;
}
.fs-c-productList__list__item .fs-c-productListItem__productName {
  margin: 8px 0;
  line-height: normal;
}
.fs-c-productList__list__item .fs-c-productListItem__prices {
  margin: 8px 0 0;
}
.fs-c-productList__list__item .fs-c-productListItem__prices .fs-c-productPrice--listed {
  display: none;
}
.fs-c-productList__list__item .fs-c-productListItem__prices .fs-c-productPrice--selling .fs-c-productPrice__main {
  font-size: 1.6rem;
  line-height: 1.5;
}
.fs-c-productList__list__item .fs-c-productListItem__prices .fs-c-productPrice--selling .fs-c-productPrice__addon {
  font-size: 1.2rem;
  line-height: 1.5;
}
.fs-c-productList__list__item .fs-c-productListItem__control {
  display: none;
}
.fs-c-productList__list__item .fs-c-productListItem__outOfStock {
  margin: 8px 0 0;
}

/** 商品グループ表示（システムパーツ） **/
.fs-c-subgroup {
  margin: 0 0 80px;
}
.fs-c-subgroup .fs-c-listControl .fs-c-listControl__status {
  padding-bottom: 8px;
}
.fs-c-subgroup .fs-c-listControl .fs-c-listControl__status:only-child {
  display: none;
}

.fs-c-subgroupList {
  margin: 0;
  row-gap: 20px;
}

.fs-c-subgroupList__item {
  margin: 0;
}

.fs-c-subgroupList__link {
  background: none;
  border: 0;
  border-bottom: 1px solid #e8e8e8;
  padding: 0 2px 4px 0;
  grid-template-columns: 28px 1fr 8px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--c_blue);
  min-height: 32px;
}
.fs-c-subgroupList__link::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.fs-c-subgroupList__link:visited, .fs-c-subgroupList__link:hover, .fs-c-subgroupList__link:active {
  color: var(--c_blue);
}
.fs-c-subgroupList__link:hover {
  background: none;
}

.fs-c-subgroupList__image {
  margin: 0;
  -ms-flex-item-align: center;
      align-self: center;
}

.fs-c-subgroupList__label {
  padding: 0 16px;
}
.fs-c-subgroupList__label:first-child {
  grid-column: 1/3;
  padding-left: 0;
}

/** -------------------- future AI Recommend -------------------- **/
.flywheel-recommend__frame {
  margin: 40px 0;
  /** カルーセル表示 **/
  /** 固定表示 **/
}
.flywheel-recommend__frame:first-child {
  margin-top: 0;
}
.flywheel-recommend__frame:last-child {
  margin-bottom: 0;
}
.flywheel-recommend__frame .fs-p-heading--lv2 {
  display: none !important;
}
.flywheel-recommend__frame .fr3-productListCarousel {
  display: block;
}
.flywheel-recommend__frame .fr3-productListCarousel__ButtonContainer {
  display: none;
}
.flywheel-recommend__frame .fr3-productListCarousel__slides {
  padding: 5px 0 12px;
  gap: 12px;
}
.flywheel-recommend__frame .fr3-productListCarousel__slides::-webkit-scrollbar {
  height: 2px;
}
.flywheel-recommend__frame .fr3-productListCarousel__slides::-webkit-scrollbar-thumb {
  background: var(--c_border);
}
.flywheel-recommend__frame .fr3-productListCarousel__slide {
  -webkit-box-flex: 0 !important;
      -ms-flex: 0 0 calc((100% - 12px) / 2) !important;
          flex: 0 0 calc((100% - 12px) / 2) !important;
}
.flywheel-recommend__frame .fr3-productListCarousel .fr3-item {
  position: relative;
}
.flywheel-recommend__frame .fr3-productListCarousel .fr3-item__rankContainer {
  position: absolute;
  top: -5px;
  left: -5px;
  z-index: 5;
}
.flywheel-recommend__frame .fr3-productListCarousel .fr3-item__rank {
  background: var(--c_tag);
  color: var(--c_text);
  width: 24px;
  height: 24px;
  font-family: var(--font_eng);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  border-radius: 0;
}
.flywheel-recommend__frame .fr3-productListCarousel .fr3-item__productName {
  font-size: 1.4rem;
  line-height: normal;
}
.flywheel-recommend__frame .fr3-productListCarousel .fr3-item__productPrice {
  color: var(--c_text_g);
  line-height: 1.5;
  margin-top: 8px;
}
.flywheel-recommend__frame .fr3-productListCarousel .fr3-item__productPrice__price {
  font-family: var(--font_num);
  font-size: 1.4rem;
}
.flywheel-recommend__frame .fr3-productListCarousel__responsive_2 .fr3-productListCarousel__slides {
  gap: 0;
}
.flywheel-recommend__frame .fr3-productListCarousel__responsive_2 .fr3-productListCarousel__slide {
  margin-right: 12px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc((100% + 12px) / 2.4 - 12px);
          flex: 0 0 calc((100% + 12px) / 2.4 - 12px);
  padding: 0;
}
.flywheel-recommend__frame .fr3-productListCarousel__responsive_2 .fr3-productListCarousel__slide:last-child {
  margin-right: 0;
}
.flywheel-recommend__frame .fr3-productListStatic {
  padding: 5px 20px 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 12px;
  margin: 0 -20px 0 0;
  overflow-x: auto;
  overflow-y: hidden;
}
.flywheel-recommend__frame .fr3-productListStatic::after {
  content: "";
  width: 8px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 132px;
          flex: 0 0 132px;
  position: relative;
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item__rankContainer {
  position: absolute;
  top: -5px;
  left: -5px;
  z-index: 2;
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item__rank {
  width: 24px;
  height: 24px;
  background: var(--c_tag);
  font-family: var(--font_eng);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  border-radius: 0;
  color: var(--c_text);
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item__productName {
  margin: 8px 0;
  font-size: 1.4rem;
  line-height: normal;
  letter-spacing: 0.05em;
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item__productPrice {
  color: var(--c_text_g);
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item__productPrice__price {
  font-family: var(--font_num);
  font-size: 1.4rem;
}
.flywheel-recommend__frame .fr3-productListStatic .fr3-item__productPrice__addon {
  font-size: 1.2rem;
}

/** -------------------- 商品詳細エリア（システムパーツグループ） -------------------- **/
.fs-l-productLayout {
  display: block;
  /** 商品画像パーツ・フリック（システムパーツ）・商品画像パーツ（システムパーツ） **/
  /** 商品マークパーツ（システムパーツ） **/
  /** 商品名パーツ（システムパーツ） **/
  /** 商品番号パーツ（システムパーツ） **/
  /** 商品価格パーツ（システムパーツ） **/
  /** ポイントパーツ（システムパーツ） **/
  /** 項目選択肢パーツ（システムパーツ） **/
  /** カート・バリエーションごとにボタンパーツ（システムパーツ） **/
  /** お問い合わせパーツ（システムパーツ） **/
  /** 返品特約表示（システムパーツ） **/
}
.fs-l-productLayout .fs-c-productMainImage {
  margin: 0 -20px 16px;
  position: relative;
}
.fs-l-productLayout .fs-c-productMainImage .slick-arrow {
  width: 30px;
  height: 30px;
  border: 1px solid var(--c_wht);
  border-radius: 50%;
  background: none;
  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;
  top: calc(100vw + 30px + 20px);
  bottom: 0;
  margin: auto;
  -webkit-transform: none;
          transform: none;
}
@media (orientation: landscape) {
  .fs-l-productLayout .fs-c-productMainImage .slick-arrow {
    top: 0;
  }
}
.fs-l-productLayout .fs-c-productMainImage .slick-arrow::before {
  display: none;
}
.fs-l-productLayout .fs-c-productMainImage .slick-arrow::after {
  content: "";
  width: 8px;
  height: 6px;
  background: url(../images/common/arrow01.png) no-repeat center/contain;
  -webkit-filter: var(--filter_wht);
          filter: var(--filter_wht);
}
.fs-l-productLayout .fs-c-productMainImage .slick-arrow.slick-prev {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  left: 10px;
}
.fs-l-productLayout .fs-c-productMainImage .slick-arrow.slick-next {
  right: 10px;
}
.fs-l-productLayout .fs-c-productMainImage .slick-dots {
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  padding: 0;
  width: calc(100% - 60px - 20px - 20px);
  margin: 0 auto;
  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;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
}
.fs-l-productLayout .fs-c-productMainImage .slick-dots > li {
  display: block;
  margin: 0;
}
.fs-l-productLayout .fs-c-productMainImage .slick-dots > li button {
  padding: 0;
  opacity: 0.5;
  background: var(--c_border);
  border-radius: 50%;
}
.fs-l-productLayout .fs-c-productMainImage .slick-dots > li button::before {
  display: none;
}
.fs-l-productLayout .fs-c-productMainImage .slick-dots > li.slick-active button {
  opacity: 1;
  background: var(--c_blue);
}
.fs-l-productLayout .fs-c-productCarouselMainImage {
  margin: 0 -20px 30px;
  position: relative;
}
.fs-l-productLayout .fs-c-productCarouselMainImage .slick-arrow {
  display: none !important;
}
.fs-l-productLayout .fs-c-productCarouselMainImage__image,
.fs-l-productLayout .fs-c-productMainImage__image {
  display: block !important;
}
.fs-l-productLayout .fs-c-productCarouselMainImage__expandButton {
  display: none;
}
.fs-l-productLayout .fs-c-productMainImage__expandButton {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}
.fs-l-productLayout .fs-c-productMainImage__expandButton .fs-c-button--viewExtendedImage {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}
.fs-l-productLayout .fs-c-productMainImage__expandButton .fs-c-button--viewExtendedImage::before {
  display: none;
}
.fs-l-productLayout .fs-c-productCarouselMainImage__thumbnailList {
  margin: 16px 0 0;
  padding: 0 20px;
  gap: 0 8px;
}
.fs-l-productLayout .fs-c-productCarouselMainImage__thumbnailList > li {
  -ms-flex-preferred-size: 72px;
      flex-basis: 72px;
  margin: 0;
}
.fs-l-productLayout .fs-c-productCarouselMainImage__thumbnail__img {
  border-width: 1px;
}
.fs-l-productLayout .slick-active .fs-c-productCarouselMainImage__thumbnail__img {
  border-color: var(--c_border);
}
.fs-l-productLayout .fs-c-productThumbnail {
  margin: 16px 0;
  padding: 0 0 12px;
  overflow-y: hidden;
  overflow-x: auto;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 0 8px;
}
.fs-l-productLayout .fs-c-productThumbnail::-webkit-scrollbar {
  height: 2px;
}
.fs-l-productLayout .fs-c-productThumbnail::-webkit-scrollbar-thumb {
  background: var(--c_border);
}
.fs-l-productLayout .fs-c-productThumbnail__image {
  position: relative;
  margin: 0;
  min-width: auto;
  cursor: pointer;
  border: 1px solid transparent;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 72px;
          flex: 0 0 72px;
}
.fs-l-productLayout .fs-c-productThumbnail__image.is-active {
  border-color: var(--c_border);
}
.fs-l-productLayout .fs-c-productThumbnail__image.is-active > img {
  border: 0;
}
.fs-l-productLayout .fs-c-productImageModal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.fs-l-productLayout .fs-c-productImageModal__close {
  width: 32px;
  height: 32px;
  top: 10px;
  right: 10px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.fs-l-productLayout .fs-c-productImageModal__close::before, .fs-l-productLayout .fs-c-productImageModal__close::after {
  content: "";
  width: 100%;
  height: 1px;
  background: var(--c_wht);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.fs-l-productLayout .fs-c-productImageModal__close::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.fs-l-productLayout .fs-c-productMarks {
  margin: 0 0 24px;
}
.fs-l-productLayout .fs-c-productMark {
  gap: 8px;
}
.fs-l-productLayout .fs-c-productMark__mark {
  border: 1px solid var(--c_border);
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
}
.fs-l-productLayout .fs-c-productMark__mark.mark_brand-box {
  border-color: #000;
}
.fs-l-productLayout .fs-c-productNameHeading {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 8px 0 24px;
}
.fs-l-productLayout .fs-c-productNumber {
  margin: 24px 0 10px;
  display: block;
  border: 0;
  padding: 0;
  font-family: var(--font_mix);
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--c_text_g);
}
.fs-l-productLayout .fs-c-productNumber__label::after {
  content: "：";
}
.fs-l-productLayout .fs-c-productNumber__number {
  font-weight: 400;
}
.fs-l-productLayout .fs-c-productPrices--productDetail {
  margin: 10px 0;
}
.fs-l-productLayout .fs-c-productPrice__addon--listed {
  font-size: 100%;
}
.fs-l-productLayout .fs-c-productPrice--listed + .fs-c-productPrice--selling {
  color: var(--c_red01);
  font-weight: 700;
}
.fs-l-productLayout .fs-c-productPrice--listed + .fs-c-productPrice--selling .fs-c-productPrice__main__price {
  color: var(--c_red01);
  font-size: 2.4rem;
}
.fs-l-productLayout .fs-c-productPointDisplay {
  display: block;
  background: none;
  color: var(--c_text_g);
  line-height: 1;
  padding: 0;
  margin: 10px 0 24px;
}
.fs-l-productLayout .fs-c-productPointDisplay__quantity {
  font-weight: 400;
}
.fs-l-productLayout .fs-c-productSelection {
  margin: 24px 0 16px;
}
.fs-l-productLayout .fs-c-productSelection__name {
  background: #fcf2f2;
  padding: 10px 20px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.fs-l-productLayout .fs-c-productSelection__selection {
  padding: 0;
  margin: 4px 0 12px;
}
.fs-l-productLayout .fs-c-productSelection__selection:last-child {
  margin-bottom: 0;
}
.fs-l-productLayout .fs-c-productStock {
  background: var(--c_tag);
  padding: 4px 16px;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 8px 0 0;
}
.fs-l-productLayout .fs-c-productQuantityAndWishlist__wishlist {
  padding: 0;
}
.fs-l-productLayout .fs-c-productQuantityAndWishlist__quantity {
  position: relative;
}
.fs-l-productLayout .fs-c-productQuantityAndWishlist__quantity .fs-c-quantity__message {
  position: absolute;
  top: 100%;
  left: 0;
}
.fs-l-productLayout .fs-c-productActionButton {
  padding: 0;
  margin: 16px 0 0;
}
.fs-l-productLayout .fs-c-inquiryAboutProduct {
  margin: 16px 0 0;
  padding: 0;
}
.fs-l-productLayout .fs-c-button--inquiryAboutProduct {
  font-weight: 500;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: 0;
  color: var(--c_blue);
  text-decoration: none;
}
.fs-l-productLayout .fs-c-button--inquiryAboutProduct::before {
  content: "";
  width: 18px;
  height: 18px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../images/common/icon_contact.png) no-repeat center/contain;
  -webkit-filter: var(--filter_text_g);
          filter: var(--filter_text_g);
  margin-right: 8px;
}
.fs-l-productLayout .fs-c-button--inquiryAboutProduct::after {
  content: "";
  width: 14px;
  height: 14px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../images/common/icon_blank.png) no-repeat center/contain;
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
  margin-left: 5px;
}
.fs-l-productLayout .fs-c-returnedSpecialContract {
  margin: 16px 0 0;
  padding: 0;
}
.fs-l-productLayout .fs-c-returnedSpecialContract__link a {
  font-weight: 500;
  line-height: 1;
  color: var(--c_blue);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.fs-l-productLayout .fs-c-returnedSpecialContract__link a::before {
  content: "";
  width: 18px;
  height: 18px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../images/common/icon_return.png) no-repeat center/contain;
  -webkit-filter: var(--filter_text_g);
          filter: var(--filter_text_g);
  margin-right: 8px;
}
.fs-l-productLayout .fs-c-returnedSpecialContract__link a::after {
  content: "";
  width: 14px;
  height: 14px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../images/common/icon_link.png) no-repeat center/contain;
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
  margin-left: 5px;
}

/** 商品画像拡大モーダル **/
.fs-c-photoswipe .pswp__bg {
  background: rgba(0, 0, 0, 0.7);
}

.fs-c-photoswipe .pswp__ui--fit .pswp__top-bar,
.fs-c-photoswipe .pswp__ui--fit .pswp__caption {
  background: none;
}

.fs-c-photoswipe .pswp__button--arrow--left,
.fs-c-photoswipe .pswp__button--arrow--right {
  width: 30px;
  height: 30px;
  border: 1px solid var(--c_wht);
  border-radius: 50%;
  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;
  top: calc(100vw + 30px + 20px);
  bottom: 0;
  margin: auto;
}
@media (orientation: landscape) {
  .fs-c-photoswipe .pswp__button--arrow--left,
  .fs-c-photoswipe .pswp__button--arrow--right {
    top: 0;
  }
}
.fs-c-photoswipe .pswp__button--arrow--left::before,
.fs-c-photoswipe .pswp__button--arrow--right::before {
  display: none;
}
.fs-c-photoswipe .pswp__button--arrow--left::after,
.fs-c-photoswipe .pswp__button--arrow--right::after {
  content: "";
  width: 8px;
  height: 6px;
  background: url(../images/common/arrow01.png) no-repeat center/contain;
  -webkit-filter: var(--filter_wht);
          filter: var(--filter_wht);
}

.fs-c-photoswipe .pswp__button--arrow--left {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  left: 10px;
}

.fs-c-photoswipe .pswp__button--arrow--right {
  right: 10px;
}

/* スマホのみ
  ------------------------ */
/* タブレット・PC
  ------------------------ */
@media (min-width: 768px) {
  /** -------------------- 入力項目 -------------------- **/
  /** -------------------- 基本レイアウト -------------------- **/
  .fs-l-main {
    gap: 30px 24px;
  }
  /** -------------------- パンくずリストパーツ -------------------- **/
  .fs-c-breadcrumb__list {
    padding: 0 0 40px;
  }
  .fs-l-main > .fs-c-breadcrumb .fs-c-breadcrumb__list {
    padding: 0;
  }
  /** -------------------- 見出し -------------------- **/
  /* ページ見出し */
  .fs-c-heading--page {
    font-size: 3.2rem;
    padding: 0 0 56px;
  }
  /* H2 */
  .fs-c-documentArticle__heading {
    font-size: 2.4rem;
  }
  /* H3 */
  .fs-c-documentColumn__heading {
    font-size: 2.1rem;
  }
  /** -------------------- ボタン -------------------- **/
  /* カートに入れるボタン */
  .fs-c-button--addToCart--detail {
    font-size: 1.5rem;
  }
  /** -------------------- 商品情報　共通 -------------------- **/
  /** 商品マークパーツ（システムパーツ） **/
  /** 商品価格パーツ（システムパーツ） **/
  .fs-c-productPrice--selling.is-sale:after {
    display: inline-block;
    margin-top: 0;
  }
  /** -------------------- 商品グループエリア（システムパーツグループ） -------------------- **/
  /** 並び替え・ページャーパーツ（システムパーツ） **/
  .fs-c-productList__controller {
    margin: 80px 0;
  }
  .fs-c-sortItems {
    -webkit-column-gap: 16px;
       -moz-column-gap: 16px;
            column-gap: 16px;
    font-size: 1.4rem;
  }
  .fs-c-sortItems__label {
    padding: 6px 8px;
  }
  .fs-c-sortItems__list {
    gap: 0 16px;
  }
  .fs-c-sortItems__list__item__label {
    letter-spacing: 0.05em;
  }
  .fs-c-listControl {
    margin: 0;
    gap: 0 24px;
  }
  .fs-c-listControl__status {
    font-size: 1.5rem;
  }
  .fs-c-pagination {
    margin: 0;
  }
  /** 商品一覧（システムパーツグループ） **/
  .fs-c-productList__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
  .fs-c-productList__list__item {
    /* 商品名パーツ（システムパーツ） */
    /* 商品価格パーツ（システムパーツ） */
  }
  .fs-c-productList__list__item .fs-c-productListItem__productName {
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .fs-c-productList__list__item .fs-c-productListItem__prices {
    margin: 10px 0 0;
  }
  .fs-c-productList__list__item .fs-c-productListItem__prices .fs-c-productPrice--selling .fs-c-productPrice__main {
    font-size: 2rem;
  }
  /** 商品グループ表示（システムパーツ） **/
  .fs-c-subgroupList {
    gap: 20px 64px;
  }
  .fs-c-subgroupList__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 calc((100% - 128px) / 3);
            flex: 0 1 calc((100% - 128px) / 3);
  }
  .fs-c-subgroupList__link {
    grid-template-columns: 36px 1fr 8px;
    min-height: 36px;
  }
  .fs-c-subgroupList__label {
    padding: 0 0 0 16px;
  }
  /** -------------------- future AI Recommend -------------------- **/
  .flywheel-recommend__frame {
    margin: 40px 0 20px;
    /** カルーセル表示 **/
    /** 固定表示 **/
  }
  .flywheel-recommend__frame .fr3-productListCarousel {
    position: relative;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__ButtonContainer {
    display: block;
    position: absolute;
    bottom: calc(100% + 20px);
    right: 0;
    width: auto;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__Button {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 44px;
    height: 24px;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__Button img {
    display: none;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__Button:after {
    content: "";
    width: 100%;
    height: 100%;
    background: url(../images/common/arrow03.png) no-repeat right 7px center/10px;
    -webkit-filter: var(--filter_text);
            filter: var(--filter_text);
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: var(--anim);
    transition: var(--anim);
  }
  .flywheel-recommend__frame .fr3-productListCarousel__Button:disabled {
    opacity: 1;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__Button:disabled:after {
    -webkit-filter: var(--filter_border);
            filter: var(--filter_border);
  }
  .flywheel-recommend__frame .fr3-productListCarousel__prevButton {
    right: 44px;
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .flywheel-recommend__frame .fr3-productListCarousel__nextButton:before {
    content: "";
    width: 1px;
    height: 15px;
    background: var(--c_border);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__slides {
    padding: 10px 0 12px;
    gap: 10px;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__slides::-webkit-scrollbar {
    height: 4px;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__slides::-webkit-scrollbar-thumb {
    background: var(--c_border);
  }
  .flywheel-recommend__frame .fr3-productListCarousel__slide {
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 calc((100% - 30px) / 4) !important;
            flex: 0 0 calc((100% - 30px) / 4) !important;
  }
  .flywheel-recommend__frame .fr3-productListCarousel .fr3-item__rankContainer {
    top: -10px;
    left: -10px;
  }
  .flywheel-recommend__frame .fr3-productListCarousel .fr3-item__rank {
    width: 40px;
    height: 40px;
    font-size: 2.4rem;
  }
  .flywheel-recommend__frame .fr3-productListCarousel .fr3-item__productName {
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .flywheel-recommend__frame .fr3-productListCarousel .fr3-item__productPrice {
    margin-top: 10px;
  }
  .flywheel-recommend__frame .fr3-productListCarousel .fr3-item__productPrice__price {
    font-size: 1.5rem;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__responsive_2 {
    margin: 0;
  }
  .flywheel-recommend__frame .fr3-productListCarousel__responsive_2 .fr3-productListCarousel__slide {
    margin-right: 30px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% + 30px) / 4 - 30px);
            flex: 0 0 calc((100% + 30px) / 4 - 30px);
  }
  .flywheel-recommend__frame .fr3-productListStatic {
    gap: 0 30px;
    padding: 10px 0 12px;
  }
  .flywheel-recommend__frame .fr3-productListStatic::after {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 1px;
    margin-left: -11px;
  }
  /** -------------------- 商品詳細エリア（システムパーツグループ） -------------------- **/
  /** 商品画像拡大モーダル **/
}
@media (min-width: 768px) and (min-width: 1261px) {
  .flywheel-recommend__frame .fr3-productListStatic::after {
    width: calc((var(--vw) * 100 - 1200px) / 2 - 30px);
    margin-left: 0;
  }
}
@media (min-width: 768px) {
  .flywheel-recommend__frame .fr3-productListStatic .fr3-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 262px;
            flex: 0 0 262px;
  }
  .flywheel-recommend__frame .fr3-productListStatic .fr3-item__rankContainer {
    top: -10px;
    left: -10px;
  }
  .flywheel-recommend__frame .fr3-productListStatic .fr3-item__rank {
    width: 40px;
    height: 40px;
    font-size: 2.4rem;
  }
  .flywheel-recommend__frame .fr3-productListStatic .fr3-item__productName {
    margin: 8px 0 10px;
    font-size: 1.5rem;
  }
  .flywheel-recommend__frame .fr3-productListStatic .fr3-item__productPrice__price {
    font-size: 1.5rem;
  }
  .fs-l-product {
    position: relative;
  }
  .fs-l-product .fs-l-sideArea.sidenav {
    display: none !important;
  }
  .fs-l-productLayout {
    /** 商品画像パーツ・フリック（システムパーツ）・商品画像パーツ（システムパーツ） **/
    /** 商品名パーツ（システムパーツ） **/
    /** 項目選択肢パーツ（システムパーツ） **/
  }
  .fs-l-productLayout .fs-c-productCarouselMainImage,
  .fs-l-productLayout .fs-c-productMainImage {
    margin: 0;
  }
  .fs-l-productLayout .fs-c-productMainImage .slick-arrow {
    width: 50px;
    height: 50px;
    top: 0;
  }
  .fs-l-productLayout .fs-c-productMainImage .slick-arrow::after {
    width: 14px;
    height: 9px;
  }
  .fs-l-productLayout .fs-c-productMainImage .slick-arrow.slick-prev {
    left: 50px;
  }
  .fs-l-productLayout .fs-c-productMainImage .slick-arrow.slick-next {
    right: 50px;
  }
  .fs-l-productLayout .fs-c-productMainImage .slick-dots {
    -webkit-transform: none;
            transform: none;
    width: 100%;
    margin-top: 20px;
  }
  .fs-l-productLayout .fs-c-productCarouselMainImage__thumbnailList,
  .fs-l-productLayout .fs-c-productThumbnail {
    margin: 8px 0 0;
    padding: 0;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(5, 1fr);
    overflow: hidden;
  }
  .fs-l-productLayout .fs-c-productImageModal__close {
    width: 40px;
    height: 40px;
    top: 48px;
    right: 50px;
  }
  .fs-l-productLayout .fs-c-productNameHeading {
    font-size: 2rem;
    margin: 16px 0 24px;
  }
  .fs-l-productLayout .fs-c-productSelection {
    margin: 48px 0 32px;
  }
  .fs-c-photoswipe .pswp__button--arrow--left,
  .fs-c-photoswipe .pswp__button--arrow--right {
    width: 50px;
    height: 50px;
    top: 0;
  }
  .fs-c-photoswipe .pswp__button--arrow--left {
    left: 50px;
  }
  .fs-c-photoswipe .pswp__button--arrow--right {
    right: 50px;
  }
}
/* PCのみ
  ------------------------ */
@media (min-width: 1001px) {
  .fs-l-sideArea {
    display: block !important;
    padding-bottom: 60px;
  }
}