@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Unica+One');
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');


/* ==================================
 プレビューモードの表示非表示
================================== */
/* .fs-preview-header {
  display: none;
} */

/* ==================================
 全体基本設定
================================== */
html {
  font-size: 10px;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  color: #000;
  font-family: 'Outfit', 'Noto Sans JP', sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  background: #F6F6F4;
}

h1,
h2,
h3,
h4 {
  font-weight: 600;
}

dl,
dt,
dd,
ol,
ul,
li {
  list-style: none;
}

p {
  line-height: 1.8;
  letter-spacing: 0.05em;
}

img {
  width: 100%;
}

button {
  border: none;
  background: none;
  color: #000;
}

a:hover {
  opacity: .8;
  text-decoration: none;
}

hr.line {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  background-color: #d9d9d9;
}

.sp {display: none;}
@media screen and (max-width:768px){
  .pc {display: none;}
  .sp {display: block;}
}

/* 共通矢印 */
.icon_arrowSimple::after {
  content: '';
  position: absolute;
  background: url(https://heilis.itembox.design/item//img/common/arrow_simple.svg) no-repeat;
  width: 1rem;
  height: 1rem;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) translateX(-50%);
  fill: currentColor; /* 親要素の文字色を継承 */
}

/* 下層ページ共通スタイル
-------------------------------------*/
.fs-l-main {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  display: block;
}

.fs-l-main .fs-l-pageMain {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
}

.fs-l-sideArea + .fs-l-pageMain, .fs-l-pageMain + .fs-l-sideArea {
  width: 1200px;
  max-width: 100%;
}

.fs-c-breadcrumb {
  width: 1200px;
  max-width: 100%;
  margin: 30px auto;
}

.fs-c-heading--page {
  color: #000;
  border: none;
  margin: 30px 0;
  padding: 0;
}

@media screen and (max-width:768px){
  .fs-c-breadcrumb {
    margin: 0;
    padding: 5px;
  }

  .fs-c-breadcrumb__list {
    white-space: nowrap;
    overflow-x: scroll;
  }
}


/* ==============================================================================

 キャンペーン追従バナー ここから↓↓

============================================================================== */
.campaignFixContents .campaignFixBnr {
  position: fixed;
  bottom: 20px;
  left: 20px;
  width: 280px;
  padding: 15px;
  background: #fff;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  transition: opacity 0.5s, transform 0.3s;
  opacity: 1;
  z-index: 9999;
}

.campaignFixContents .campaignFixBnr .closeBtn {
  position: absolute;
  right: -18px;
  top: -18px;
  width: 40px;
  height: 40px;
  font-size: 4rem;
  font-weight: 100;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.campaignFixContents a {
  color: #000;
}

.campaignFixContents a img {
  display: block;
  margin-bottom: 10px;
}

.campaignFixContents a p {
  text-align: center;
  font-size: 1.1rem;
  margin: 0;
}

.campaignFixContents .campaignFixBnr.hidden {
  display: none;
}

.campaignFixContents .campaignFixBnr.fade-out {
  opacity: 0;
  transition: opacity 0.5s ease;
}

/* ✕ボタンで閉じるときのアニメーション */
.campaignFixContents .campaignFixBnr.slide-fade-out {
  opacity: 0;
  transform: translateX(-100px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

/* スクロール時のフェードアウト */
.campaignFixContents .campaignFixBnr.fade-out {
  opacity: 0.3;
  transition: opacity 0.5s ease;
}


.campaignFixContents .reopenBanner {
  position: fixed;
  bottom: 100px;
  left: 0px;
  background: #F6F6F4;
  color: #000;
  padding: 10px 15px;
  transform: rotate(90deg) translate(23%, 80%);
  letter-spacing: 0.2em;
  font-size: 1.3rem;
  z-index: 9998;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.20);
}

.campaignFixContents .reopenBanner.hidden {
  display: none;
}

/* スマホ対応 */
@media (max-width: 600px) {
  .campaignFixContents .campaignFixBnr {
    width: 40%;
    left: 10px;
    bottom: 10px;
    padding: 8px;
  }

  .campaignFixContents .reopenBanner {
    bottom: 80px;
    font-size: 1.2rem;
  }
}

/* ==============================================================================

 キャンペーン追従バナー ここまで↑↑

============================================================================== */



/* ==============================================================================

 共通 商品一覧 ここから ↓↓

============================================================================== */

.fs-c-productList {
  margin: 0;
}

/* ==================================
 一覧の並び替えボタン
================================== */
.fs-c-productList__controller,
.fs-c-staffList__controller,
.fs-c-coordinationList__controller {
  padding: 15px;
  margin: 0;
}

.fs-c-sortItems {
  border: none;
}

.fs-c-sortItems__list {
   border: none;
}

.fs-c-sortItems__list > li {
  color: #9b9b9b;
}

.fs-c-sortItems__label {
  display: none;
}

.fs-c-sortItems__list__item.is-active {
  background: none;
  color: #000;
}

@media screen and (max-width:768px){
  .fs-c-productList__controller,
  .fs-c-staffList__controller,
  .fs-c-coordinationList__controller {
    background: #ebebeb;
    padding: 10px;
    margin: 0;
  }
}

/* ==================================
 一覧のページネーション
================================== */
.fs-c-pagination__item {
  color: #9b9b9b;
}

.fs-c-pagination__item.is-active {
  border-radius: 50%;
  background: none;
  border: 1px solid #000;
  color: #000;
  width: 25px;
  height: 25px;
  padding: 6px;
  text-align: center;
}

.fs-c-listControl__status {
  font-size: 1.1rem;
}

/* ==================================
 FSシステムの商品一覧
================================== */
.fs-c-productList__list a {
  color: #000;
}

.fs-c-productList__list .fs-c-productList__list__item {
  border: none;
}

.fs-c-productList__list .fs-c-button--plain {
  display: none;
}

.fs-c-productList__list .fs-c-productName__copy {
  display: none;
}

.fs-c-productList__list .fs-c-productName__name {
  font-size: 1.1rem;
  font-weight: 400;
}

.fs-c-productList__list .fs-c-productListItem__prices.fs-c-productPrices {
  display: flex;
}

.fs-c-productList__list .fs-c-productPrice {
  font-size: 1.2rem;
}

.fs-c-productList__list .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  color: #000;
}

.fs-c-productList__list .fs-c-productPrice__addon__label {
  font-size: 0.8rem;
  color: #000;
}

.fs-c-productList__list .fs-c-productListItem__lowInStock,
.fs-c-productList__list .fs-c-productListItem__outOfStock,
.fs-c-productList__list .fs-c-productListItem__numberOfStock {
  background: #e7e7e7;
  border: none;
  padding: 5px 0;
  width: 90%;
  margin: 10px auto;
  font-size: 1rem;
}

.fs-c-productListItem__control {
  padding: 0 15px 10px;
}

.fs-c-button--particular.fs-c-button--addToWishList--icon::before {
  font-size: 1.5rem;
}

@media screen and (max-width:768px){
  .fs-c-productList__list .fs-c-productList__list__item {
    border: none;
    padding: 0;
  }

  .fs-c-productList__list .fs-c-productListItem__productName,
  .fs-c-productList__list .fs-c-productMarks,
  .fs-c-productList__list .fs-c-productListItem__prices.fs-c-productPrices {
    padding: 0 10px;
    margin: 10px 0;
  }
}

/* ==================================
 レコメンド商品の一覧
================================== */
.flywheel-recommend__frame .fr3-item__productName {
  color: #000;
  font-size: 1.2rem;
}

.flywheel-recommend__frame .fr3-item__productPrice {
  margin-top: 10px;
}

.flywheel-recommend__frame .fr3-item__productPrice__price {
  font-size: 1.2rem;
}

.flywheel-recommend__frame .fr3-item__productPrice__addon {
  font-size: 0.8rem;
}

.top_itemContainer .fr3-productListStatic {
  gap: 10px;
  padding: 0;
}
.top_itemContainer .fr3-item {
  position: relative;
}
.top_itemContainer .fr3-item:last-child {
  border-right: none;
}

@media screen and (max-width:768px){
  .top_itemContainer .fr3-productListStatic {
    gap: 5px;
  }
  .flywheel-recommend__frame .fr3-item__productName {
    font-size: 1rem;
    padding: 10px;
  }
  .flywheel-recommend__frame .fr3-item__productPrice {
    padding: 10px;
    margin-top: 0;
  }
}

/* ==============================================================================

 共通 商品一覧 ここまで↑↑

============================================================================== */


/* ==============================================================================

 商品詳細ページ ここから↓↓

============================================================================== */

/* ==================================
 商品詳細 ページ全体
================================== */
.fs-l-product2 .fs-l-productLayout>*>* {
  margin: 0;
}

/* PCのgridレイアウト */
.fs-l-product2 .fs-l-productLayout {
  display: grid;
  grid-template-columns: calc(50% - 60px / 2) calc(50% - 60px / 2);
  grid-gap: 60px;
  align-items: start;
}

.fs-l-product2 .fs-l-productLayout .fs-l-productLayout__item--recommend {
  grid-column: 1 / -1;
}

/* ブロックごとのmargin
-------------------------------------*/
h1.fs-c-productNameHeading.fs-c-heading,
/* 商品名 */
.fs-c-productPrices.fs-c-productPrices--productDetail,
/* 価格 */
.fs-c-productActionButton.fs-c-buttonContainer,
/* カートに入れるボタン */
.product_details.product_details__item,
/* 商品詳細説明エリア */
.fs-c-productReview,
/* レビューパーツ */
.fs-c-productChooseVariation,
/* カートバリエーションボタン */
.product_details_movie__contents

/* 動画 */
  {
  margin: 30px 0 0 !important;
}

@media screen and (max-width:768px) {
  h1.fs-c-productNameHeading.fs-c-heading,
  /* 商品名 */
  .fs-c-productPrices.fs-c-productPrices--productDetail,
  /* 価格 */
  .fs-c-productActionButton.fs-c-buttonContainer,
  /* カートに入れるボタン */
  .product_details.product_details__item,
  /* 商品詳細説明エリア */
  .fs-c-productReview,
  /* レビューパーツ */
  .fs-c-productChooseVariation,
  /* カートバリエーションボタン */
  .product_details_movie__contents

  /* 動画 */
    {
    margin: 20px 0 0 !important;
  }
}

/* 全体の横幅
-------------------------------------*/
@media screen and (max-width:768px) {
  .fs-l-main {
    padding: 0;
    position: relative;
  }

  .fs-c-productCarouselMainImage__thumbnailList,
  .fs-l-productLayout__item.fs-l-productLayout__item--2_sp {
    padding: 0 20px;
  }
}


/* ==================================
 商品詳細 商品画像エリア
================================== */

/* 画像エリア全体
-------------------------------------*/
@media screen and (max-width:768px) {
  .fs-c-productCarouselMainImage {
    margin-bottom: 30px;
  }
}

/* メイン画像
-------------------------------------*/
.fs-c-slick .slick-slide img {
  max-width: 600px;
}

@media screen and (max-width:768px) {
  .fs-c-slick .slick-slide img {
    max-width: 100vw;
    margin-bottom: 5px;
  }
}

/* サムネイル
-------------------------------------*/
figcaption.fs-c-productCarouselMainImage__thumbnail__caption {
  font-size: 1rem;
}

.fs-c-productCarouselMainImage__thumbnailList>li {
  flex-basis: 60px;
}

/* PCのサムネイル並び */
.fs-l-productLayout__item.fs-l-productLayout__item--1 .fs-c-productCarouselMainImage__thumbnailList {
  flex-wrap: wrap;
  overflow: hidden;
}

.fs-l-productLayout__item.fs-l-productLayout__item--1 .fs-c-productCarouselMainImage__thumbnailList>li {
  margin-bottom: 10px;
}

/* 矢印（左右）
-------------------------------------*/
.fs-c-slick .slick-prev,
.fs-c-slick .slick-next {
  display: inline-block;
  width: 30px;
  height: 60px;
  background: #fff;
  border-radius: 3px;
}

.fs-c-slick .slick-next {
  right: -10px;
}

.fs-c-slick .slick-prev {
  left: -10px;
}

/* 矢印（左） */
.fs-c-slick .slick-prev:before,
.fs-c-slick .slick-prev:after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: 5px;
  width: 20px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000000;
  transform-origin: 0.5px 50%;
}

.fs-c-slick .slick-prev:before {
  transform: rotate(55deg);
}

.fs-c-slick .slick-prev:after {
  transform: rotate(-55deg);
}

.fs-c-slick .slick-prev.slick-disabled,
.fs-c-slick .slick-prev.slick-disabled:before,
.fs-c-slick .slick-prev.slick-disabled:after {
  opacity: 0;
  cursor: default;
}

/* 矢印（右） */
.fs-c-slick .slick-next:before,
.fs-c-slick .slick-next:after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: 5px;
  width: 20px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000000;
  transform-origin: calc(100% - 0.5px) 50%;
}

.fs-c-slick .slick-next:before {
  transform: rotate(55deg);
}

.fs-c-slick .slick-next:after {
  transform: rotate(-55deg);
}

.fs-c-slick .slick-next.slick-disabled,
.fs-c-slick .slick-next.slick-disabled:before,
.fs-c-slick .slick-next.slick-disabled:after {
  opacity: 0;
  cursor: default;
}

@media screen and (max-width:768px) {

  .fs-c-slick .slick-prev,
  .fs-c-slick .slick-next {
    width: 20px;
    background: #ffffff82;
  }

  .fs-c-slick .slick-next {
    right: 0;
  }

  .fs-c-slick .slick-prev {
    left: 0;
  }

  /* 矢印（左） */
  .fs-c-slick .slick-prev:before,
  .fs-c-slick .slick-prev:after {
    width: 10px;
  }

  /* 矢印（右） */
  .fs-c-slick .slick-next:before,
  .fs-c-slick .slick-next:after {
    width: 10px;
  }
}

/* メイン画像下テキスト
-------------------------------------*/
.fs-c-productCarouselMainImage__image__caption {
  position: inherit;
  line-height: 1.6;
  background: none;
  color: #000;
  margin-top: 10px;
  line-height: 1;
}

.fs-c-productCarouselMainImage__image__caption::before {
  content: "color：";
}

.fs-c-productCarouselMainImage__image .itemCarouselText {
  margin: 10px 0 0;
  text-align: center;
  line-height: 1;
}

.fs-c-productCarouselMainImage__expandButton.fs-c-buttonContainer {
  display: none;
}

@media screen and (max-width:768px) {
  .fs-c-productCarouselMainImage__image .itemCarouselText {
    font-size: 1rem;
    margin: 0;
  }

  .fs-c-productCarouselMainImage__image__caption {
    font-size: 1rem;
    margin: 0;
  }
}

/* ==================================
 商品詳細 商品基本情報エリア
================================== */

/* 商品マークパーツ
-------------------------------------*/
.fs-c-productMarks {
  display: flex;
  flex-wrap: wrap;
}

.fs-c-productMark__mark {
  border-radius: 0px;
  padding: 3px 5px;
  margin-right: 5px;
  margin-bottom: 5px;
  color: #000;
  background: none;
  border: 1px solid #d9d9d9;
  font-size: 1rem;
}

/* セール */
.fs-c-productMark__mark.mark_sale {
  color: #a51313;
  border: 1px solid #a51313;
}

/* 一覧用カラーチップ非表示 */
.fs-l-productLayout .mark_color {
  display: none;
}

/* 予約商品（FSデフォ機能で表示される）※FSの予約機能使わないため不要 */
/* .fs-c-mark--preorder {
  border-radius: 0px;
  padding: 7px 10px;
  margin-right: 5px;
  margin-bottom: 5px;
  color: #000;
  background: none;
  border: 1px solid #d9d9d9;
} */


/* 商品名
-------------------------------------*/
h1.fs-c-productNameHeading {
  letter-spacing: 0.1em;
  margin: 0;
}

span.fs-c-productNameHeading__name {
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 600;
  margin-top: 10px;
  display: block;
}

span.fs-c-productNameHeading__copy {
  display: block;
  font-weight: 400;
  color: #000;
  font-size: 1.2rem;
  margin-top: 5px;
}

/* 商品番号
-------------------------------------*/
.fs-c-productNumber {
  border: none;
  color: #777;
  padding: 10px 0 0;
}

.fs-c-productNumber .fs-c-productNumber__label {
  display: none;
}

.fs-c-productNumber__number {
  font-weight: normal;
}

.fs-c-productNumber__number::before {
  content: "itemID：";
}

/* 価格
-------------------------------------*/
.fs-c-productPrices.fs-c-productPrices--productDetail {
  display: flex;
  align-items: center;
}

.fs-c-productPrices--productDetail .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  font-size: 2rem;
  color: #000;
  margin-right: 5px;
}

/* 税表示 */
.fs-c-productPrice__addon:where(:not([class*="--listed"])),
.fs-c-productPrice__main__addon:where(:not([class*="--listed"])) {
  font-size: 1rem;
}

.fs-c-productPrice__addon:where(:not([class*="--listed"]))::before,
.fs-c-productPrice__main__addon:where(:not([class*="--listed"]))::before,
.fs-c-productPrice__addon:where(:not([class*="--listed"]))::after,
.fs-c-productPrice__main__addon:where(:not([class*="--listed"]))::after {
  content: "";
}

/* セール時の通常価格表記 */
.fs-c-productPrice--listed {
  text-decoration: line-through;
  margin-right: 8px;
}

/* ポイント
-------------------------------------*/
.fs-c-productPointDisplay {
  background: no-repeat;
  color: #0e7b87;
  padding: 10px 0 0;
}

/* ペイディウィジェット微調整
-------------------------------------*/
._paidy-promotional-messaging>div>div {
  padding: 0 !important;
  margin-top: 10px;
}

@media screen and (max-width:768px) {
  ._paidy-promotional-messaging {
    max-width: 100%;
  }
}

/* キャンペーンバナー
-------------------------------------*/
.product_cartCampaignBnr {
  width: 50%;
}

@media screen and (max-width:768px) {
  .product_cartCampaignBnr {
    width: 100%;
  }
}

/* ==================================
 商品詳細 カートまわり
================================== */

/* ボタンのデザイン
-------------------------------------*/
.fs-c-variationPanelList__list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.fs-c-variationPanelList__list>li {
  min-width: 8em;
  max-width: 12em;
}

.fs-c-variationPanelList__panel {
  border: none;
}

.fs-c-variationPanelList__panel__content {
  padding: 0;
}

span.fs-c-variationPanelList__panel__image {
  width: 100%;
  height: 100px;
  max-width: 100%;
  max-height: 100%;
  align-items: flex-start;
  padding: 0;
}

.fs-c-variationPanelList__panel__label {
  font-weight: 400;
  font-size: 1.2rem;
}

span.fs-c-variationLabel__value {
  display: none;
}

.fs-c-variationLabel {
  margin-bottom: 5px;
}

/* カラーのボタン */
.fs-c-variationPanelList__panel__content {
  background: none;
}

span.fs-c-variationPanelList__panel__image img {
  width: 100%;
  height: 100px;
  object-fit: cover;
  border-radius: 5px;
  transition: transform 0.1s ease-in-out;
}

/* カラーのボタンがアクティブの時 */
.fs-c-variationPanelList__radio:checked+.fs-c-variationPanelList__panel .fs-c-variationPanelList__panel__content {
  background: none;
  color: #000;
}

.fs-c-variationPanelList__radio:checked+.fs-c-variationPanelList__panel .fs-c-variationPanelList__panel__content span.fs-c-variationPanelList__panel__image img {
  border: 3px solid #000;
  transform: scale(0.98);
}

/* バリエーションのボタン */
.fs-c-productChooseVariation__variation + .fs-c-productChooseVariation__variation {
  margin-top: 30px;
}

.fs-c-productChooseVariation__variation + .fs-c-productChooseVariation__variation .fs-c-variationPanelList__panel__content {
 padding: 10px; 
 border-radius: 5px;
 background: #fff;
}

.fs-c-productChooseVariation__variation + .fs-c-productChooseVariation__variation .fs-c-variationPanelList__panel__content .fs-c-variationPanelList__panel__label {
  padding: 10px;
  text-align: center;
}

.fs-c-productChooseVariation__variation + .fs-c-productChooseVariation__variation .fs-c-variationPanelList__list {
  grid-template-columns: repeat(auto-fill, 7em);
}

/* バリエーションのボタンがアクティブの時 */
.fs-c-productChooseVariation__variation + .fs-c-productChooseVariation__variation .fs-c-variationPanelList__radio:checked+.fs-c-variationPanelList__panel .fs-c-variationPanelList__panel__content {
  background: #fff;
  color: #000;
  border: 3px solid #000;
}

/* 在庫切れ・残りわずか */
.fs-c-variationPanelList__panel__caption,
.fs-c-variationPanelList__panel__stock {
  text-align: center;
  font-size: 1rem;
}

@media screen and (max-width:768px) {
  .fs-c-variationPanelList__list {
    flex-wrap: nowrap;
  }

  .fs-c-variationPanelList__list>li {
    width: auto;
    min-width: 6em;
    max-width: 9em;
  }

  span.fs-c-variationPanelList__panel__image {
    height: 80px;
  }

  span.fs-c-variationPanelList__panel__image img {
    height: 80px;
  }
}

/* 数量プルダウン
-------------------------------------*/
.fs-c-productQuantityAndWishlist__quantity {
  position: relative;
  min-width: 140px;
  margin-top: 20px;
}

#fs_ProductDetails .fs-c-productQuantityAndWishlist .fs-c-productQuantityAndWishlist__quantit {
  max-width: inherit;
}

#fs_ProductDetails .fs-c-productQuantityAndWishlist .fs-c-productQuantityAndWishlist__quantity .fs-c-quantity__select {
  height: 50px;
  padding: 0 20px;
}

#fs_ProductDetails .fs-c-productQuantityAndWishlist .fs-c-productQuantityAndWishlist__quantity::after {
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  width: 20px;
  background: none;
  border: none;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  content: "\e90f";
  font-family: 'fs-icon' !important;
  padding: 0;
  font-size: 2.4rem;
  pointer-events: none;
}

/* お気に入りボタン
-------------------------------------*/
.fs-c-productQuantityAndWishlist {
  display: block;
}

.fs-c-productQuantityAndWishlist__wishlist {
  justify-self: flex-start;
  margin-top: 20px;
  padding: 0;
}

.fs-c-button--particular.is-disabled {
  background: none;
  border: none;
  box-shadow: none;
  color: #666;
}

.fs-c-button--particular {
  background: none;
  border: none;
  box-shadow: none;
  color: #000;
}

.fs-c-button--particular.fs-c-button--addToWishList--detail,
.fs-c-button--particular.fs-c-button--removeFromWishList--detail {
  padding: 0;
}


/* カートに入れるボタン
-------------------------------------*/
.fs-c-button--primary {
  background: #000;
  font-size: 1.4rem;
  padding: 20px;
  box-shadow: 0px 5px 15px 0px rgba(137, 137, 137, 0.35);
}

@media screen and (max-width:768px) {
  .fs-c-button--primary {
    width: 100%;
  }
}

/* 再入荷お知らせメール
-------------------------------------*/
.fs-c-button--secondary {
  background: #fff;
  border: 1px solid #000;
  font-size: 1.4rem;
  padding: 20px;
  color: #000;
}

@media screen and (max-width:768px) {
  .fs-c-button--secondary {
    width: 100%;
  }
}

/* 販売期間表示
-------------------------------------*/
.fs-c-productSalesPeriod {
  border: 1px solid #d9d9d9;
  border-width: 1px 0;
  line-height: 1.4;
  padding: 15px 0;
  text-align: center;
  margin-bottom: 30px !important;
}

/* 在庫切れテキスト
-------------------------------------*/
.fs-c-productNotice--outOfStock, .fs-c-productNotice--subscriptionOutOfStock {
  background: rgba(126, 126, 126, 0.08);
  padding: 15px;
  margin-top: 30px !important;
}


/* ==================================
 商品詳細 カートへ戻るボタン（スマホで下までスクロールした際に表示）
================================== */
.product_cartBackBtn__contents {
  position: fixed;
  bottom: 120px;
  right: 17px;
  opacity: 0;
  /* 初期状態は透明 */
  visibility: hidden;
  /* 非表示 */
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}

.product_cartBackBtn__contents.show {
  opacity: 1;
  /* フェードイン */
  visibility: visible;
}

.product_cartBackBtn__contents a {

}

/* 商品詳細 カートへ戻るボタン 矢印アイコン */
.product_cartBackBtn__contents a span.arrow {
  position: relative;
  width: 1px;
  height: 20px;
  margin: 0 auto;
  display: block;
  border-radius: 9999px;
  background-color: #000000;
}

.product_cartBackBtn__contents a span.arrow::before,
.product_cartBackBtn__contents a span.arrow::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 0px);
  width: 1px;
  height: 10px;
  border-radius: 9999px;
  background-color: #000000;
  transform-origin: 50% 0px;
}

.product_cartBackBtn__contents a span.arrow::before {
  transform: rotate(42.5deg);
}

.product_cartBackBtn__contents a span.arrow::after {
  transform: rotate(-42.5deg);
}

/* 商品詳細 カートへ戻るボタン カートアイコン */
.product_cartBackBtn__contents a img.icon {
  width: 3rem;
  height: 3rem;
  display: block;
  margin-top: 10px;
}

/* 商品詳細 カートへ戻るボタン リンク先の位置調整 */
.fs-l-productLayout #priceSp {
  padding-top: 50px;
  margin-top: -50px;
}

/* ==================================
 商品詳細 商品説明エリア
================================== */

/* 商品説明のタブ切り替え
-------------------------------------*/
ul.product_details_tab__head.clearfix {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding: 0;
}

.product_details_tab__head__item {
  width: 50%;
  text-align: center;
  line-height: 1;
  color: #000;
}

.product_details_tab__head__anchor {
  display: block;
  margin-top: 5px;
  padding: 12px 0;
  border-bottom: 1px solid #d9d9d9;
  font-size: 1.2rem;
  line-height: 1;
  color: #000;
  transition: 0.1s;
}

.active .product_details_tab__head__anchor {
  margin-top: 0;
  padding: 12px 0 17px;
  border-top: 1px solid #d9d9d9;
  border-right: 1px solid #d9d9d9;
  border-left: 1px solid #d9d9d9;
  border-bottom: none;
  color: #000;
}

.product_details_tab__head__anchor:hover {
  color: #000;
  text-decoration: none;
}

.product_details_tab__contents {
  display: none;
  padding: 20px;
}

.product_details_tab__contents.active {
  display: block;
}

/* 商品説明文のタブ中身
-------------------------------------*/
.product_details_tab__contents__item.product_details_itemText {
  font-size: 1.2rem;
}

.product_details_tab__contents .itemTextChapter {
  font-size: 1.3rem;
  font-weight: 600;
  margin-top: 25px;
  border-bottom: 1px solid #d9d9d9;
  padding-bottom: 10px;
}

.product_details_tab__contents .itemTextChapter:first-of-type {
  margin-top: 0;
}

.product_details_tab__contents .featureLinkBtn {
    color: #dc2c2c;
    text-decoration: underline;
    font-weight: bold;
}

/* サイズ/素材のタブ中身
-------------------------------------*/
.product_details__item #product_details_tab2 .product_details_tab__contents__item {
  border-bottom: 1px solid #ddd;
  padding: 10px 0;
}

.product_details__item #product_details_tab2 .product_details_tab__contents__item:first-child {
  border-bottom: none;
}

/* サイズ表
-------------------------------------*/
.product_details_sizeTable+.product_details_sizeTable {
  margin-top: 20px;
}

.product_details_sizeTable table {
  width: 100%;
  border-spacing: 0;
  border-left: solid #d9d9d9 1px;
  border-top: solid #d9d9d9 1px;
  display: block;
  width: 100%;
  overflow-x: auto;
  white-space: nowrap; /* 折り返し防止 */
}

.product_details_sizeTable th,
.product_details_sizeTable td {
  padding: 8px;
  border-right: solid #d9d9d9 1px;
  border-bottom: solid #d9d9d9 1px;
  text-align: center;
}

.product_details_sizeTable th {
  background: #ededed;
  text-align: center;
  font-weight: 400;
}

/* 横スクロール時一番左の列（サイズ）を固定 */
.product_details_sizeTable table tr th:first-child,
.product_details_sizeTable table tr td:first-child {
  position: sticky;
  left: 0;
  background: #ededed;
  z-index: 10;
}

/* スクロールバーの全体 */
.product_details_sizeTable table::-webkit-scrollbar {
  width: 6px;  /* 横スクロールバーの太さ */
  height: 6px; /* 縦スクロールバーの太さ */
}

/* スクロールバーのつまみ（バー部分） */
.product_details_sizeTable table::-webkit-scrollbar-thumb {
  background-color: #888;  /* 色 */
  border-radius: 4px;       /* 丸みをつける */
}

/* スクロールバーのつまみをホバーした時 */
.product_details_sizeTable table::-webkit-scrollbar-thumb:hover {
  background-color: #555;  /* ホバー時の色 */
}

/* スクロールバーの背景部分 */
.product_details_sizeTable table::-webkit-scrollbar-track {
  background: #f1f1f1;  /* 背景色 */
  border-radius: 4px;    /* 丸みをつける */
}

/* 素材・原産国
 -------------------------------------*/
.product_details_tab__contents__item.product_details_spec {
  padding-bottom: 20px;
}

.product_details_tab__contents__item.product_details_spec dl {
  display: flex;
  padding: 7px 0;
}

.product_details_tab__contents__item.product_details_spec dt {
  min-width: 110px;
}

.product_details_tab__contents__item.product_details_spec dd {
  margin: 0;
}

/* 生地のスペック
-------------------------------------*/
.product_details_tab__contents__item.product_details_fabric ul {
  padding: 0;
}

.product_details_tab__contents__item.product_details_fabric li {
  padding: 8px 0;
  width: 65%;
}

@media screen and (max-width:768px) {
  .product_details_tab__contents__item.product_details_fabric li {
    width: 100%;
  }
}

/* 洗濯表示
-------------------------------------*/
.product_details_tab__contents__item.product_details_wash ul {
  display: flex;
  padding: 0;
  flex-wrap: nowrap;
  justify-content: flex-start;
}

.product_details_tab__contents__item.product_details_wash li {
  width: 40px;
  margin-left: 10px;
}

/* ==================================
 商品詳細 返品特約テキストリンク
================================== */
.fs-c-returnedSpecialContract__link a {
  position: relative;
  color: #3572b0;
}

.fs-c-returnedSpecialContract__link a::before {
  content: ">";
  margin-right: 5px;
}

/* ==================================
 商品詳細 レビューパーツ
================================== */


/* ==================================
 商品詳細 動画エリア
================================== */
/* 横長動画 */
.product_details_movie__contents iframe.youtube-yoko {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

/* 縦長動画 */
.product_details_movie__contents iframe.youtube-tate {
  width: 100%;
  height: auto;
  aspect-ratio: 9 / 16;
}


/* ==================================
 商品詳細 レコメンド
================================== */
.fs-l-productLayout__item--recommend .circulationTitle {
  font-size: 1.4rem;
  font-weight: 600;
  margin-top: 80px;
}

.fs-l-productLayout__item--recommend .flywheel-recommend__frame .fr3-productListStatic {
  margin: 40px 0;
}

.fs-p-heading--lv2 {
  display: none;
}

[data-frame-id='history'] .fs-p-heading--lv2 {
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  margin-top: 80px;
  border: none;
  color: #000;
}

@media screen and (max-width:768px){
  .fs-l-productLayout__item--recommend {
    padding: 0 20px;
  }

  .fs-l-productLayout__item--recommend .fr3-productListStatic {
    padding: 0;
  }
}

/* ==============================================================================

 商品詳細ページ ここまで↑↑

============================================================================== */



/* ==============================================================================

 ヘッダー ここから↓↓

============================================================================== */

/* ==================================
 ヘッダー 全体
================================== */
.fs-l-header {
  padding: 0;
}

.header {
  position: fixed;
  top: 0;
  width: 100%;
  padding: 0;
  border-bottom: 1px solid #d9d9d9;
  z-index: 100;
  transition: background-color 0.3s ease;
  background: #F6F6F4;
}

.header .headerInner {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 10% 1fr 20% 2% 2% 2%;
  column-gap: 2%;
  padding: 0;
  align-items: center;
  height: 60px;
}

@media screen and (max-width:768px){
  .header .headerInner {
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 20% 1fr 8% 8%;
    column-gap: 5%;
    padding: 0 15px;
    align-items: center;
    height: 44px;
  }
}

/* ヘッダー ロゴ
 ----------------------------------------------------*/
.header .logo {
  max-width: 100px;
  width: 70px;
  display: block;
  margin: 0;
  padding: 0;
  line-height: 0;
}

.header .logo a {
  width: 100%;
  display: inline-block;
}

.header .logo object {
  margin: 0;
  padding: 0;
  vertical-align: middle;
  pointer-events: none;
}

.header .logo object,
.header .logo sgv {
  width: 100% !important;
  height: auto;
  margin: 0;
  display: block;
  object-fit: contain;
}

@media screen and (max-width:768px){
  .header .logo {
    width: 100%;
    margin: 0 auto;
  }

  .header .logo a {
    width: 75%;
    margin: 0 auto;
    display: block;
  }
}

/* ヘッダー 検索ボタン
-------------------------------------*/
.header .searchIcon {
  max-width: 18px;
}

/* ヘッダー カートボタン
-------------------------------------*/
.header .cartIcon {
  max-width: 18px;
  position: relative;
}

.header .cartIcon span.fs-client-cart-count {
  position: absolute;
  background: #000;
  color: #fff;
  text-align: center;
  font-size: 1.1rem;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  top: -7px;
  right: -10px;
}

/* ヘッダー マイページボタン（PC）
-------------------------------------*/
.header .mypageIcon {
  max-width: 18px;
}

/* ヘッダー 検索窓（PC）
 -------------------------------------*/
 .header .fs-p-searchForm {
  width: 100%;
}

.header .fs-p-inputGroup {
  border: none;
  background: #fff;
  padding: 2px 10px;
  border-radius: 50px;
}

.header .fs-p-inputGroup input {
  background: none;
  padding: 0;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  color: #aaa;
}

.header .fs-p-inputGroup__button {
  background: none;
}

.header .fs-p-searchForm__button::before {
  content: "";
  background: url(https://heilis.itembox.design/item//img/common/icon_search.svg)no-repeat;
  width: 17px;
  height: 17px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

/* ヘッダー hoverメニュー（PC）
-------------------------------------*/
.header .itemMenu {
  height: 100%;
}

.header .itemMenu a {
  color: #000;
  display: block;
  width: 100%;
}


.header .itemMenu ul.itemMenuMain {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-around;
  padding: 0;
  margin: 0;
  height: 100%;
}

.header .itemMenu ul.itemMenuMain li {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.header .itemMenu ul.itemMenuMain li ul.itemMenuSub {
  position: absolute;
  left: -35%;
  z-index: 10;
  width: 200px;
  height: auto;
  display: none;
  background-color: rgba(242, 242, 242, .94);
  top: 38px;
}

.header .itemMenu ul.itemMenuMain li:hover ul.itemMenuSub {
  display: block;
  padding: 25px;
}

.header .itemMenu ul.itemMenuMain li ul.itemMenuSub li {
  padding-top: 20px;
  text-align: center;
}

.header .itemMenu ul.itemMenuMain li ul.itemMenuSub li:first-child {
  color: #666;
  font-size: 1.2rem;
  border-bottom: 1px solid #d9d9d9;
  padding-bottom: 10px;
}

/* ドロワーボタン（スマホ）
 ----------------------------------------------------*/
.header .spOpen {
  text-align: left;
}

.header .spOpen .menuBtn {
  position: relative;
  height: 26px;
}

.header .spOpen .menuBtn span {
  display: block;
  position: absolute;
  right: 0;
  left: 0;
  height: 1px;
  background-color: #000;
  transition: transform 0.3s, opacity 0.3s, top 0.3s;
}

.header .spOpen .menuBtn span:nth-child(1) {
  top: 8px;
  width: 25px;
}

.header .spOpen .menuBtn span:nth-child(2) {
  top: 15px;
  width: 15px;
}

/* メニューが開いたときのスタイル */
#spIcon.open .menuBtn span:nth-child(1) {
  transform: translateY(10px) rotate(45deg);
  top: 0px;
  width: 15px;

}

#spIcon.open .menuBtn span:nth-child(2) {
  transform: translateY(-10px) rotate(-45deg);
  top: 20px;
  width: 15px;
}

/*　ドロワーメニューの中身（スマホ）
 ----------------------------------------------------*/
/* 左から右にオープンするver */
/* #spMenuWrapper {
  position: fixed;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  display: flex;
  transition: left 0.3s ease;
  z-index: 1000;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
  padding: 0;
 } 
 #spMenuWrapper.open {
  left: 0;
 }
 #spMenuWrapper .closeBtn {
  margin: 10px auto;
  font-size: 24px;
  cursor: pointer;
  background: none;
  border: none;
  color: white;
 }*/

#spMenuWrapper {
  position: fixed;
  top: 40px;
  left: 0;
  width: 100%;
  height: 100%;
  /* 必要に応じて高さを調整 */
  background: white;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transform: translateY(-100%);
  transition: transform 0.3s ease-in-out;
  padding: 0;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 90;
}

#spMenuWrapper.open {
  transform: translateY(0);
}

#spMenuWrapper .menu {
  width: 100%;
  height: 100%;
  padding: 30px 30px 70px;
  background: #F6F6F4;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}

#spMenuWrapper .menuBackground {
  width: 12%;
  height: 100%;
  background-color: rgba(16, 24, 32, 0.7);
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

/* ドロワー内検索窓（スマホ）
 -------------------------------------*/
#spMenuWrapper .fs-p-searchForm {
  width: 100%;
  margin: 0 auto 30px;
}

#spMenuWrapper .fs-p-inputGroup {
  border: none;
  padding-bottom: 10px;
  border-bottom: 1px solid #d9d9d9;
  background: none;
}

#spMenuWrapper .fs-p-inputGroup input {
  background: none;
  padding: 0;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  color: #aaa;
}

#spMenuWrapper .fs-p-inputGroup__button {
  background: none;
}

#spMenuWrapper .fs-p-searchForm__button::before {
  content: "";
  background: url(https://heilis.itembox.design/item//img/common/icon_search.svg)no-repeat;
  width: 20px;
  height: 20px;
}

/* スマホドロワー内ログインログアウト
 -------------------------------------*/
#spMenuWrapper .fs-clientInfo {
  width: 100%;
  margin: 0 auto 10px;
}

#spMenuWrapper .fs-clientInfo .fs-p-welcomeMsg {
  font-size: 1.1rem;
}

#spMenuWrapper .fs-clientInfo .fs-p-memberInfo {
  font-size: 1.1rem;
}

#spMenuWrapper .fs-clientInfo .fs-p-memberInfo span {
  font-size: 1.1rem;
}

#spMenuWrapper .fs-p-drawer__loginLogout__logout,
#spMenuWrapper .fs-p-drawer__loginLogout__login {
  border: 1px solid #d9d9d9;
  border-radius: 0;
  padding: 0;
  font-size: 1.1rem;
  color: #000;
  height: 35px;
  background: none;
}

#spMenuWrapper .fs-p-drawer__loginLogout__logout::before,
#spMenuWrapper .fs-p-drawer__loginLogout__login::before {
  content: "";
  background: url(https://heilis.itembox.design/item//img/common/icon_member.svg) no-repeat;
  width: 14px;
  height: 14px;
  margin-right: 10px;
}

#spMenuWrapper .fs-p-drawer__loginLogout__logout:hover,
#spMenuWrapper .fs-p-drawer__loginLogout__login:hover {
  background: none;
}

/* ドロワー内 お気に入りボタン（スマホ）
 -------------------------------------*/
#spMenuWrapper .wishlist {
  margin: 0 auto 30px;
}

#spMenuWrapper .wishlist a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 35px;
  text-decoration: none;
  border: 1px solid #d9d9d9;
  border-radius: 0;
  padding: 0;
  font-size: 1.1rem;
  color: #000;
}

#spMenuWrapper .wishlist a::before {
  content: "";
  background: url(https://heilis.itembox.design/item//img/common/icon_wish.svg) no-repeat;
  width: 14px;
  height: 14px;
  margin-right: 10px;
}

/* ドロワー内 カテゴリーから探す（スマホ）
 -------------------------------------*/
#spMenuWrapper .searchItem {
  margin-bottom: 30px;
}

#spMenuWrapper .searchItem p.menuTitle {
  font-size: 1.1rem;
  color: #aaa;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}

#spMenuWrapper .searchItem .acdBlock .acd-button,
#spMenuWrapper .searchItem .direct-content a {
  display: block;
  padding: 10px;
  position: relative;
  padding: 10px 15px;
  border-bottom: 1px solid #d9d9d9;
  font-size: 1.1rem;
  width: 100%;
  text-align: left;
}

#spMenuWrapper .searchItem .direct-content a p {
  margin: 0;
  color: #000;
}

#spMenuWrapper .searchItem .direct-content a::after {
  right: 6px;
}

#spMenuWrapper .searchItem .acdBlock .acd-button:before {
  content: "";
  position: absolute;
  width: 10px;
  height: 0.5px;
  top: 50%;
  right: 15px;
  background: #000;
  transform: translateY(-50%);
}

#spMenuWrapper .searchItem .acdBlock .acd-button:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  height: 0.5px;
  background: #333;
  transition: .2s;
  transform: translateY(-50%) rotate(90deg);
}

#spMenuWrapper .searchItem .acdBlock>input:checked+label::after {
  transform: translateY(-50%) rotate(180deg);
}

#spMenuWrapper .searchItem .acdBlock .acd-check:checked+.acd-button+.acd-content {
  max-height: 500px;
  /* 予測される最大高さ */
  opacity: 1;
}

#spMenuWrapper .searchItem .acdBlock .acd-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, opacity 0.3s ease;
}

#spMenuWrapper .searchItem .acdBlock .acd-content ul {
  margin: 0;
  padding: 10px 10%;
}

#spMenuWrapper .searchItem .acdBlock .acd-content li a {
  display: flex;
  align-items: center;
  font-size: 1.1rem;
  position: relative;
  color: #000;
}

#spMenuWrapper .searchItem .acdBlock .acd-content li a::after {
  width: 13px;
  height: 13px;
  margin: auto;
  padding: 0;
  display: block;
  position: absolute;
  top: 0;
  right: 30px;
  z-index: 1;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  background: url() no-repeat;
  background-size: contain;
}

#spMenuWrapper .searchItem .acdBlock .acd-content li a img {
  width: 10%;
  max-width: 30px;
  margin-right: 15px;
}

/* ドロワー内インフォメーション（スマホ）
 -------------------------------------*/
#spMenuWrapper .infomation {
  margin: 0 auto 30px;
}

#spMenuWrapper .infomation ul {
  display: block;
  padding: 0;
}

#spMenuWrapper .infomation li {
  text-align: center;
  margin-bottom: 10px;
}

#spMenuWrapper .infomation li a {
  color: #000;
  font-size: 1.1rem;
}

/* ドロワー内SNSリンク（スマホ）
 -------------------------------------*/
#spMenuWrapper .sns {
  margin: 20px auto;
}

#spMenuWrapper .sns ul {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  margin: 0 auto;
  padding: 0;
  gap: 20px;
}

#spMenuWrapper .sns li {
  width: 20px;
}

/* ドロワー内 キャンペーンバナー（スマホ）
 -------------------------------------*/
#spMenuWrapper .campaign {
  margin: 0 auto 30px;
}

#spMenuWrapper .campaign a {
  display: block;
  margin-bottom: 10px;
}

#spMenuWrapper .campaign a:last-child {
  margin-bottom: 0;
}

/* ==================================
 共通設置アナウンス（配送遅延・注意喚起）
================================== */
.common_announce__wrapper {
  border-bottom: 1px solid #d9d9d9;
  width: 100%;
}

.common_announce__contents {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  padding: 5px 0;
}

.common_announce__contents a {
  color: #000;
  position: relative;
  width: 100%;
  display: block;
}

.common_announce__contents a::after {
  right: auto;
  margin-left: 10px;
}

@media screen and (max-width:768px){
  .common_announce__contents {
    padding: 10px;
  }

  .common_announce__contents a::after {
    right: 0;
  }
}

/* ==================================
 ヘッダー（注文ページなどで表示するシンプルver）
================================== */
header.fs-l-header--min {
  padding: 0;
  border-bottom: 1px solid #ccc;
}

header .header_simpleLogo .logo {
  width: 80px;
  margin: 0 auto;
  padding: 20px 0;
}



/* ==============================================================================

 ヘッダー ここまで↑↑

============================================================================== */


/* ==============================================================================

 フッターここから↓↓

============================================================================== */

.footer {
  background: #e7e7e7;
  padding: 40px;
}

/* ==================================
 フッター SNSリンク
================================== */
.footer .sns {
  margin: 10px auto;
}

.footer .sns ul {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0;
  gap: 20px;
}

.footer .sns li {
  width: 20px;
}

/* ==================================
 フッター メニュー
================================== */
.footer .footerMenu__contents {
  margin-bottom: 50px;
}

.footer .footerMenu__contents ul {
  display: flex;
  justify-content: center;
  gap: 50px;
  margin: 30px 0;
  padding: 0;
  flex-wrap: wrap;
  font-size: 1.2rem;
}

.footer .footerMenu__contents li a {
  color: #000;
}

@media screen and (max-width:768px){
  .footer .footerMenu__contents ul {
    display: block;
    margin: 0;
  }

  .footer .footerMenu__contents li {
    margin-bottom: 20px;
  }
}

/* ==================================
 フッター コピーライト
================================== */
.fs-p-footerCopyright {
  padding: 4px;
  background: none;
  color: #000;
  text-align: center;
}

.fs-p-footerCopyright__text {
  font-size: 1.3rem;
}

/* ==================================
 フッター 右下固定ボタン ページトップへ戻る
================================== */
 #scrollToTop {
  position: fixed;
  bottom: 80px;
  right: 10px;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: none;  /* 初めは非表示 */
  width: 45px;
  height: 45px;
  transform: rotate(-90deg);
}

#scrollToTop span {
  position: relative;
}

#scrollToTop span.icon_arrowSimple::after {
  width: 2rem;
  height: 2rem;
  right: auto;
}

/* ==================================
 フッター 右下固定ボタン チャット
================================== */
.fixChat {
  position: fixed;
  bottom: 66px;
  right: 17px;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  width: 30px;
  height: 30px;
}

/* ==============================================================================

 フッターここまで↑↑

============================================================================== */


/* ==============================================================================

 トップページ ここから↓↓

============================================================================== */
.fs-body-top .fs-l-main {
  padding: 0;
  margin: 0;
}

.fs-body-top .fs-l-main .fs-l-pageMain {
  width: 100%;
}

/* ==================================
 splide の矢印とページネーションのスタイル
================================== */
#top_feature__wrapper .splide__pagination,
#top_pickup__wrapper .splide__pagination {
  position: static;
  margin-top: 40px;
}

#top_feature__wrapper .splide__pagination__page,
#top_pickup__wrapper .splide__pagination__page {
  width: 5px;
  height: 5px;
}

#top_feature__wrapper .splide__pagination__page.is-active,
#top_pickup__wrapper .splide__pagination__page.is-active {
  border: 1px solid #aaa;
}

#top_feature__wrapper .splide__arrow,
#top_pickup__wrapper .splide__arrow {
  background: none; /* デフォルトの矢印の背景を消す */
  width: 30px;
  height: 30px;
}

#top_feature__wrapper .splide__arrow svg,
#top_pickup__wrapper .splide__arrow svg {
  display: none; /* デフォルトの矢印を消す */
}

#top_feature__wrapper .splide__arrow--prev,
#top_pickup__wrapper .splide__arrow--prev {
  background-image: url("https://heilis.itembox.design/item//img/common/arrow_simple.svg"); /* 左矢印 */
  transform: rotate(180deg);
  background-size: contain;
  background-repeat: no-repeat;
  left: -45px;
}

#top_feature__wrapper .splide__arrow--next,
#top_pickup__wrapper .splide__arrow--next {
  background-image: url("https://heilis.itembox.design/item//img/common/arrow_simple.svg"); /* 右矢印 */
  background-size: contain;
  background-repeat: no-repeat;
  right: -45px;
}

@media screen and (max-width:768px){
  #top_feature__wrapper .splide__pagination,
  #top_pickup__wrapper .splide__pagination {
    margin-top: 20px;
  }
  #top_feature__wrapper .splide__arrow,
  #top_pickup__wrapper .splide__arrow {
    width: 20px;
    height: 20px;
}
  #top_feature__wrapper .splide__arrow--prev,
  #top_pickup__wrapper .splide__arrow--prev {
    left: 5px;
  }

  #top_feature__wrapper .splide__arrow--next,
  #top_pickup__wrapper .splide__arrow--next {
  right: 5px;
}
}

/* ==================================
	トップページ カルーセル
================================== */
#top_carousel__wrapper .splide__slide img {
  height: auto;
  width: 100%;
	transition: transform 0.5s ease-in-out;
}

#top_carousel__wrapper .splide__slide img:hover {
	transform: scale(1.01);
}

#top_carousel__wrapper .splide__slide a:hover {
  opacity: 1;
}

#top_carousel__wrapper .splide__arrow {
	display: none;
}

#top_carousel__wrapper .splide__pagination {
	justify-content: flex-end;
	bottom: 2em;
	right: 2em;
	padding: 0;
}

#top_carousel__wrapper .splide__pagination__page {
	background-color: #fff;
	opacity: 1;
	transition: width 0.4s ease, border-radius 0.4s ease;
	width: 8px;
	height: 8px;
	margin: 0 10px;
}

#top_carousel__wrapper .splide__pagination__page.is-active {
	width: 30px;
	border-radius: 50px;
	transform: none;
}

@media screen and (max-width:768px){
	#top_carousel__wrapper .splide__pagination {
		bottom: 1.2em;
		right: 1.2em;
	}
	#top_carousel__wrapper .splide__pagination__page {
		width: 6px;
		height: 6px;
		margin: 0 5px;
	}
	#top_carousel__wrapper .splide__pagination__page.is-active {
		width: 20px;
	}
}

/* ==================================
 トップページ セクション共通スタイル
================================== */
.fs-l-main.top_main {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
}

.fs-l-pageMain {
  max-width: 100%;
}

.top_itemContainer {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
}

.top_sectionTitle {
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 60px;
  letter-spacing: 0.13em;
}

.top_sectionTitle span {
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
}

.top_itemWrapper {
  border-bottom: 1px solid #d9d9d9;
  padding: 60px 0;
}

.top_itemWrapper:last-child {
  border: none;
}

.top_itemWrapper .viewMore {
  text-align: center;
  position: relative;
  z-index: 2;
  margin-top: 40px;
}
.top_itemWrapper .viewMore a {
  position: relative;
  width: 480px;
  margin: 0 auto 0;
  padding: 15px;
  border-radius: 50px;
  color: #000;
  display: block;
  font-size: 1.3rem;
  background: #e9e9e9;
}

@media screen and (max-width:768px){
  .top_sectionTitle {
    font-size: 1.5rem;
    margin-bottom: 40px;
  }
  .top_itemWrapper {
    padding: 40px 0;
  }
  .top_itemWrapper .viewMore a {
    width: 60%;
    padding: 13px;
    font-size: 1.1rem;
  }
}

/* ==================================
 トップページ カルーセル下お知らせ枠
================================== */
#top_announce__contents {
  padding: 20px 0;
}
.top_announce__contents {
  position: relative;
}
.top_announce__contents span{
  display: inline-block;
  margin-right: 15px;
}
@media screen and (max-width:768px){
  #top_announce__contents {
    padding: 0 20px 20px 20px;
  }
  .top_announce__contents p {
    margin-top: 2.5rem;
  }
}

/* ==================================
 トップページ 新規会員登録バナー
================================== */
#newMemberBnr__contents {
  margin: 60px auto;
  text-align: center;
}

#newMemberBnr__contents a {
  color: #000;
}

#newMemberBnr__contents a p {
  font-size: 1.1rem;
}

@media screen and (max-width:768px){
  #newMemberBnr__contents {
    width: 90%;
    margin: 30px auto 0;
  }
}

/* ==================================
 トップページ カルーセル下 複数バナー用
================================== */
.eventBnr__contents {
    margin: 60px auto;
    display: flex;
    gap: 10px;
    max-width: 1200px;
}

.eventBnr__contents #newMemberBnr__contents {
  margin: auto;
}

#eventBnr__contents {
  text-align: center;
}

#eventBnr__contents p {
  font-size: 1.1rem;
}

#eventBnr__contents a {
  color: #000;
}

#eventBnr__contents a p {
  font-size: 1.1rem;
}

@media screen and (max-width:768px){
  #newMemberBnr__contents a p {
    display: none;
  }
  .eventBnr__contents {
    margin: 30px auto 0;
    display: block;
  }
  #newMemberBnr__contents {
    width: 90%;
    margin: 30px auto 0;
  }
  #eventBnr__contents {
    width: 90%;
    margin: 0 auto;
  }
}

/* ==================================
 トップページ ランキング
================================== */

/* ランキング タブのスタイル
-------------------------------------*/
#top_ranking__wrapper .rankTab-container {
  display: flex;
  flex-direction: column;
  width: 100%;
}

#top_ranking__wrapper .rankTabs {
  display: flex;
  overflow-x: auto;
  white-space: nowrap;
  align-items: end;
  margin: 0 auto 30px;
  font-size: 1.2rem;
}

#top_ranking__wrapper .rankTab-content-wrapper {
  position: relative;
  width: 100%;
}
#top_ranking__wrapper .rankTab-content-pair {
  opacity: 0;
  height: 0;
  overflow: hidden;
  position: absolute;
  width: 100%;
  transform: translateY(10px);
  transition: opacity 0.3s ease, transform 0.3s ease, height 0s linear 0.3s;
}

#top_ranking__wrapper .rankTab-content-pair.active {
  opacity: 1;
  height: auto;
  position: relative;
  transform: translateY(0);
  transition: opacity 0.3s ease, transform 0.3s ease, height 0s linear;
}

#top_ranking__wrapper .rankTab {
  cursor: pointer;
  text-align: center;
  color: #aaa;
  padding-bottom: 20px;
  margin-right: 70px;
}

#top_ranking__wrapper .rankTab.active {
  color: #000;
  border-bottom: 2px solid;
}

#top_ranking__wrapper .rankTab-content-wrapper {
  width: 100%;
}

@media screen and (max-width:768px){
  #top_ranking__wrapper .rankTabs {
    overflow-x: auto;
    scroll-behavior: smooth; /* オプション：スムーズに動く */
    -webkit-overflow-scrolling: touch; /* iOSでの慣性スクロール */
    scrollbar-width: auto; /* Firefox用 */
    gap: 15px;
    width: 95%;
    margin: 0 0 0 auto;
  }

  #top_ranking__wrapper .rankTabs::-webkit-scrollbar {
    display: none;
  }

  #top_ranking__wrapper .rankTab {
    flex: 0 0 25%;
    min-width: 25%;
    box-sizing: border-box;
    padding: 0 0 10px;
    margin: 0;
    font-weight: 200;
  }
}

/* ランキング 看板
-------------------------------------*/
#top_ranking__wrapper .rankTab-content-wrapper .titleImage {
  position: relative;
  margin-bottom: 10px;
}

#top_ranking__wrapper .rankTab-content-wrapper .titleImage p {
  position: absolute;
  top: 50%;
  left: 30%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 24px;
  font-weight: 100;
}

#top_ranking__wrapper .rankTab-content-wrapper .titleImage img {
  width: 100%;
  height: 350px;
  object-fit: cover;
  display: block;
}

@media screen and (max-width:768px){
  #top_ranking__wrapper .rankTab-content-wrapper .titleImage {
    margin-bottom: 5px;
  }

  #top_ranking__wrapper .rankTab-content-wrapper .titleImage img {
    height: auto;
    display: block;
  }

  #top_ranking__wrapper .rankTab-content-wrapper .titleImage p {
    font-size: 1.6rem;
    left: 20%;
  }
}

/* ランキングの番号
-------------------------------------*/
#top_ranking__wrapper .fr3-productListStatic .fr3-item .fr3-item__productName {
  position: relative;
  padding: 25px 0 0 25px;
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item .fr3-item__productName::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.6rem;
  font-weight: 200;
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item .fr3-item__productName::after {
  position: absolute;
  content: "";
  left: 13px;
  top: 5px;
  width: 1px;
  height: 30px;
  background: #d9d9d9;
  transform: rotate(45deg);
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:first-of-type .fr3-item__productName::before {
  content: "1";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(2) .fr3-item__productName::before {
  content: "2";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(3) .fr3-item__productName::before {
  content: "3";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(4) .fr3-item__productName::before {
  content: "4";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(5) .fr3-item__productName::before {
  content: "5";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(6) .fr3-item__productName::before {
  content: "6";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(7) .fr3-item__productName::before {
  content: "7";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(8) .fr3-item__productName::before {
  content: "8";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(9) .fr3-item__productName::before {
  content: "9";
}

#top_ranking__wrapper .fr3-productListStatic .fr3-item:nth-of-type(10) .fr3-item__productName::before {
  content: "10";
}

@media screen and (max-width:768px){
  #top_ranking__wrapper .fr3-productListStatic .fr3-item .fr3-item__productName {
    padding: 20px 0 0 20px;
  }
  #top_ranking__wrapper .fr3-productListStatic .fr3-item .fr3-item__productName::before {
    font-size: 1.4rem;
    left: 10px;
  }
  #top_ranking__wrapper .fr3-productListStatic .fr3-item .fr3-item__productName::after {
    left: 18px;
    top: 8px;
    height: 21px;
  }
}


/* ランキング 商品
-------------------------------------*/
#top_ranking__wrapper  .flywheel-recommend__frame .fr3-item__productPrice {
  margin: 15px 0 0 auto;
}

@media screen and (max-width:768px){
  #top_ranking__wrapper .fr3-productListStatic {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth; /* オプション：スムーズに動く */
    -webkit-overflow-scrolling: touch; /* iOSでの慣性スクロール */
    scrollbar-width: auto; /* Firefox用 */
    padding-bottom: 8px; /* スクロールバーが商品にかぶらないように */
  }

  #top_ranking__wrapper .fr3-productListStatic::-webkit-scrollbar {
    height: 6px; /* スクロールバーの高さ */
  }

  #top_ranking__wrapper .fr3-item {
    flex: 0 0 40%; /* 見切れ感を出す：70%だと1.5個ちょい見える */
    min-width: 40%;
    box-sizing: border-box;
    padding: 0;
  }
}

/* ==================================
 トップページ カテゴリー
================================== */
.top_categoryList__contents {

}

.top_categoryList__contents ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  font-size: 1.3rem;
  padding: 80px 0;
}

.top_categoryList__contents li {
  width : calc(100% / 3) ;
  margin-bottom: 40px;
  padding-right: 40px;
}

.top_categoryList__contents li:nth-child(3n) {
  padding-right: 0;
}

.top_categoryList__contents li a {
  position: relative;
  display: block;
  color: #000;
  padding-bottom: 20px;
  border-bottom: 1px solid #9b9b9a;
  width: 100%;
  font-weight: 300;
}

@media screen and (max-width:768px){
  .top_categoryList__contents ul {
    padding: 10px 30px;
    gap: 16px;
  }

  .top_categoryList__contents li {
    width: calc(50% - 8px);
    padding: 0;
    margin-bottom: 20px;
  }

  .top_categoryList__contents li a {
    font-size: 1.1rem;
  }

  .top_categoryList__contents li a::after {
    padding-bottom: 20px;
    right: 0;
  }
}

/* ==================================
 トップページ セレクター（ひでか）
================================== */
#top_selector__wrapper .selectorImage {
  position: relative;
}

#top_selector__wrapper .selectorTextArea {
  position: absolute;
  content: '';
  position: absolute;
  top: 50%;
  left: 100px;
  transform: translateY(-50%);
  color: #fff;
}

#top_selector__wrapper .selectorTextArea p {
  font-size: 3rem;
  font-weight: 200;
  letter-spacing: 0.12em; 
}

#top_selector__wrapper .selectorTextArea .viewMore a {
  color: #fff;
  border: 1px solid #fff;
  background: none;
  width: 300px;
  max-width: 100%;
}

#top_selector__wrapper .selectorTextArea .viewMore a.icon_arrowSimple::after {
  filter: invert(99%) sepia(0%) saturate(7500%) hue-rotate(320deg) brightness(107%) 
}

@media screen and (max-width:768px){
  #top_selector__wrapper.top_itemWrapper {
    border-bottom: none;
    padding-bottom: 0;
  }

  #top_selector__wrapper .selectorTextArea {
    left: 30px;
  }

  #top_selector__wrapper .selectorTextArea p {
    font-size: 2rem;
  }

  #top_selector__wrapper .selectorTextArea .viewMore {
    margin-top: 20px;
  }

  #top_selector__wrapper .selectorTextArea .viewMore a {
    width: 100%;
  }
}

/* ==================================
 トップページ 特集
================================== */
#top_feature__wrapper .splide__slide img {
  height: auto;
  width: 100%;
	transition: transform 0.5s ease-in-out;
}

#top_feature__wrapper .splide__slide img:hover {
	transform: scale(1.01);
}

#top_feature__wrapper .splide__slide a:hover {
  opacity: 1;
}

/* #top_feature__wrapper .splide__arrow {
	display: none;
} */

#top_feature__wrapper .splide__pagination {
}

#top_feature__wrapper .splide__pagination__page {
}

#top_feature__wrapper .splide__pagination__page.is-active {
}


@media screen and (max-width:768px){
	#top_feature__wrapper .splide__pagination {
	}
	#top_feature__wrapper .splide__pagination__page {
	}
	#top_feature__wrapper .splide__pagination__page.is-active {
	}
}


/* ==================================
 トップページ ピックアップ商品
================================== */
#top_pickup__wrapper .splide__slide {
  display: flex;
  align-items: center;
}

#top_pickup__wrapper .splide__slide a {
  display: flex;
  width: 100%;
  color: #000;
}

/* トップページ ピックアップ商品 メイン画像
-------------------------------------*/
#top_pickup__wrapper .splide__slide .pickupItemImage {
  order: 1;
  width: 50%;
  height: auto;
}

/* トップページ ピックアップ商品 テキストエリア
-------------------------------------*/
#top_pickup__wrapper .pickupItemText {
  order: 2;
  width: 50%;
  padding: 50px;
  text-align: left;
  font-size: 16px;
  position: relative;
}

#top_pickup__wrapper .pickupItemText .itemName {
  font-size: 1.4rem;
}

#top_pickup__wrapper .pickupItemText .itemComment {
  font-size: 1.2rem;
  line-height: 2;
  margin: 20px 0;
}

#top_pickup__wrapper .pickupItemText .itemPrice {
  font-size: 1.2rem;
}

#top_pickup__wrapper .pickupItemText ul.itemImageSub {
  display: flex;
  flex-wrap: nowrap;
  padding: 0;
  margin: 0;
  gap: 0px;
  position: absolute;
  bottom: 0;
  width: 83%;
}

#top_pickup__wrapper .pickupItemText .viewMore {
  position: relative;
  width: 50%;
  margin: 20px auto;
  padding: 15px;
  border-radius: 50px;
  color: #000;
  display: block;
  font-size: 1.3rem;
  background: #e9e9e9;
}

/* もっとみるボタン
-------------------------------------*/
#top_pickup__wrapper .pickupItemText .viewMore::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) translateX(-50%);
  background: url(https://heilis.itembox.design/item//img/common/arrow_simple.svg) no-repeat;
  width: 1rem;
  height: 1rem;
}

@media screen and (max-width:768px){
  #top_pickup__wrapper .splide__slide {
    position: relative;
  }

  #top_pickup__wrapper .splide__slide .pickupItemImage {
      width: 100%;
      height: auto;
  }

  #top_pickup__wrapper .splide__slide::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 50%;
      background: linear-gradient(to top, rgb(71 71 71), rgb(0 0 0 / 0%));
  }

  #top_pickup__wrapper .pickupItemText {
      opacity: 0;
      transform: translateY(20px); /* 初期位置を下に設定 */
      transition: opacity 0.1s ease-in-out, transform 0.5s ease-in-out; /* フェードインとスライドアップを組み合わせ */
      position: absolute;
      bottom: 0; 
      color: white;
      font-size: 1.2rem;
      z-index: 1;
      padding: 25px;
      width: 100%;
  }

  #top_pickup__wrapper .pickupItemText ul.itemImageSub.pc,
  #top_pickup__wrapper .pickupItemText .viewMore.pc {
    display: none;
  }

  /* スライダーがアクティブになると、下から上に登場 */
  #top_pickup__wrapper .splide__slide.is-active .pickupItemText {
    opacity: 1;
    transform: translateY(0); /* 元の位置に戻る */
  }

  #top_pickup__wrapper .pickupItemText .itemComment {
    font-size: 1.1rem;
    margin: 10px 0;
  }

  #top_pickup__wrapper .pickupItemText .itemComment br {
    display: none;
  }
}

/* ==================================
 トップページ ブランドコンセプト
================================== */
#top_concept__wrapper {
  position: relative;
  width: 100%;
  min-height: 50vh;
  color: white;
  text-align: center;
  padding: 20px;
}
#top_concept__wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('/item/img/top/brand_concept.jpg?8945') no-repeat center;
  filter: brightness(50%);
  z-index: -1;
}
#top_concept__wrapper .top_sectionTitle {
  padding-top: 40px;
}
#top_concept__wrapper .concept__contents {
  max-width: 800px;
  font-size: 1.3rem;
  margin: 80px auto;
}

#top_concept__wrapper .concept__contents p {
  line-height: 2.6;
  margin-bottom: 20px;
  word-break: keep-all;
}

@media (min-width: 768px) {
  #top_concept__wrapper::before {
      background-size: cover; /* PC: 上下をカットしつつ横幅を維持 */
  }
}

@media (max-width: 767px) {
  #top_concept__wrapper::before {
      background-size: cover; /* スマホ: 縦横比を保ちつつ左右と上下を適度にカット */
      background-position: center center;
  }
  #top_concept__wrapper .concept__contents {
    max-width: 100%;
    margin: 40px auto;
    font-size: 1.2rem;
  }
}

/* ==================================
 トップページ 施策エリア
================================== */
#top_measures__wrapper {
    background-color: #e9e9e3;
    background-image: linear-gradient(#e9e9e3cf, #e9e9e3cf), url(https://heilis.itembox.design/item/img/feature/noise.png);
    background-repeat: repeat;
    background-size: 100px;
    text-align: center;
}
.top_measures_itemText {
    text-align: center;
    margin-top: 0;
    margin-bottom: 20px;
}
.top_sectionSaleTitle {
  /* border-bottom: 1px solid #a82929; */
  display: inline-block;
}
.top_sectionSaleTitleSub {
  color: #fff;
  background: #a82929;
  padding: 2px 8px;
  margin: 0 auto 20px;
  max-width: 145px;
  font-size: 1.2rem;
  font-weight: 400;
}
#top_measures__wrapper .fr3-item__productPrice .pricedown {
  color: #a82929;
}
#top_measures__wrapper .top_4gridContainer {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
@media (max-width: 1200px) {
  #top_measures__wrapper .top_4gridContainer {
    padding: 30px;
  }
}
@media (max-width: 768px) {
  #top_measures__wrapper .top_4gridContainer {
    grid-template-columns: repeat(2, 1fr);
  }
  #top_measures__wrapper .top_4gridContainer .fr3-item__productName {
    text-align: left;
  }
}

/* ==============================================================================

 トップページ ここまで↑↑

============================================================================== */


/* ==============================================================================

 商品検索ページここから↓↓

============================================================================== */

/* ==================================
 商品検索ページ 全体
================================== */
.fs-p-productSearch {
  width: 100%;
  border: none;
  padding: 15px;
}

.fs-p-productSearch :checked ~ .fs-p-productSearch__search {
  max-height: 100%;
}

.fs-p-productSearch__field {
  display: block;
}

.fs-p-productSearch :checked ~ .fs-p-productSearch__search .fs-p-productSearch__form {
  padding: 40px 90px;
  margin-top: 20px;
}

.fs-p-productSearch .searchInner {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(4, auto);
  gap: 20px 80px;
}

@media screen and (max-width:768px){
  .fs-p-productSearch .searchInner {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
  .fs-p-productSearch :checked ~ .fs-p-productSearch__search .fs-p-productSearch__form {
    padding: 20px;
  }
  .fs-p-productSearch .fs-c-radioGroup, .fs-c-checkboxGroup {
    flex-direction: unset;
  }
}


/* 入力欄
-------------------------------------*/
.fs-p-productSearch input[type=text] {
  min-height: 40px;
  border: none;
  border-radius: 2px;
}

/* プルダウン
-------------------------------------*/
.fs-p-productSearch select {
  border: none;
  min-height: 40px;
  padding: 10px 20px;
}

.fs-p-productSearch .category .fs-c-inputTable__dataCell {
  position: relative;
}

.fs-p-productSearch .category .fs-c-inputTable__dataCell::after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-bottom: solid 2px #b4b3b3;
  border-right: solid 2px #b4b3b3;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -4px;
}

/* ==================================
 商品検索ページ カラー
================================== */
.fs-p-productSearch .color .fs-c-checkboxGroup {
  gap: 29px;
}

/* カラーを設定
-------------------------------------*/
.fs-p-productSearch .color label {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* 商品検索フォームのカラーアイコン ＆ 一覧商品のカラーチップ をここでまとめて設定 */
.fs-c-productMark .mark_color {
  border-radius: 50px;
  width: 8px;
  height: 8px;
  padding: 0;
  margin: 0 5px 0 0;
  border: none;
}

.fs-c-productMark .colorMark__wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 5px 0;
  flex-basis: 100%; /* 1行分のスペースを確保 */
}

.fs-p-productSearch .color label.color_white,
.fs-c-productMark .mark_white {
  background: #fff;
  border: 1px solid #aaa;
}
.fs-p-productSearch .color label.color_black,
.fs-c-productMark .mark_black {
  background:#000 ;
}
.fs-p-productSearch .color label.color_gray,
.fs-c-productMark .mark_gray {
  background:#aaa ;
}
.fs-p-productSearch .color label.color_brown,
.fs-c-productMark .mark_brown {
  background:#7b4414 ;
}
.fs-p-productSearch .color label.bcolor_beige,
.fs-c-productMark .mark_beige {
  background:#d9bb9c ;
}
.fs-p-productSearch .color label.color_green,
.fs-c-productMark .mark_green {
  background:#3d9f24 ;
}
.fs-p-productSearch .color label.color_blue,
.fs-c-productMark .mark_blue {
  background:#3469cb ;
}
.fs-p-productSearch .color label.color_yellow,
.fs-c-productMark .mark_yellow {
  background:#ebd953 ;
}
.fs-p-productSearch .color label.color_pink,
.fs-c-productMark .mark_pink {
  background:#eb87a3 ;
}
.fs-p-productSearch .color label.color_red,
.fs-c-productMark .mark_red {
  background:#d1484a ;
}
.fs-p-productSearch .color label.color_orange,
.fs-c-productMark .mark_orange {
  background:#ef8030 ;
}
.fs-p-productSearch .color label.color_silver,
.fs-c-productMark .mark_silver {
  background:linear-gradient(45deg, rgb(184, 184, 184) 0%, rgb(184, 184, 184) 50%,
  rgb(172, 155, 100) 50%, rgb(172, 155, 100) 100%);
}
.fs-p-productSearch .color label.color_other,
.fs-c-productMark .mark_other {
  background-image: url(https://heilis.itembox.design/item/img/common/color_multi.png) ;
  background-repeat: no-repeat;
  background-size: contain;
}

/* チェックボックスの調整
-------------------------------------*/
.fs-p-productSearch .color input[type=checkbox] {
  position: relative;
  width: 16px;
  height: 16px;
  background: none;
  vertical-align: -5px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}

.fs-p-productSearch .color input[type=checkbox]:checked::before {
  position: absolute;
  top: 1px;
  left: 4px;
  transform: rotate(50deg);
  width: 6px;
  height: 10px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  content: '';
}

.fs-p-productSearch .color label.color_white input[type=checkbox]:checked::before,
.fs-p-productSearch .color label.color_yellow input[type=checkbox]:checked::before {
  border-right: 3px solid #000;
  border-bottom: 3px solid #000;
}

@media screen and (max-width:768px){
  .fs-p-productSearch .color .fs-c-checkboxGroup {
    gap: 25px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .fs-p-productSearch .color label {
    flex-basis: auto;
  }
}

/* ==================================
 商品検索 販売タイプ・商品タイプ
================================== */
.fs-p-productSearch .sellType input[type=checkbox],
.fs-p-productSearch .itemType input[type=checkbox] {
  display: none;
}

.fs-p-productSearch .sellType label,
.fs-p-productSearch .itemType label {
  background: #d5d5d5;
  padding: 15px 25px;
  border-radius: 2px;
  text-align: center;
  transition: all 300ms ease-out 0ms;
}

.fs-p-productSearch .sellType label:has(input:checked),
.fs-p-productSearch .itemType label:has(input:checked) {
  background: #000;
  color: #Fff;
}

@media screen and (max-width:768px){
  .fs-p-productSearch .sellType label,
  .fs-p-productSearch .itemType label {
    padding: 15px 5px;
  }
}

/* ==================================
 商品検索ページ 予約商品
================================== */
.fs-p-productSearch .reservation input[type=checkbox] {
  position: relative;
  width: 26px;
  height: 26px;
  background: #fff;
  border-radius: 50%;
  vertical-align: -8px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  margin-right: 10px;
  transition: all 300ms ease-out 0ms;
}

.fs-p-productSearch .reservation input[type=checkbox]:checked {
  background: #000;
}

.fs-p-productSearch .reservation input[type=checkbox]:checked::before {
  position: absolute;
  top: 4px;
  left: 9px;
  transform: rotate(50deg);
  width: 6px;
  height: 10px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  content: '';
}

/* ==================================
 商品検検索ページ 在庫なし商品
================================== */
.fs-p-productSearch .stock input[type=radio] {
  position: relative;
  width: 26px;
  height: 26px;
  background: #fff;
  border-radius: 50%;
  vertical-align: -8px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  margin-right: 10px;
  transition: all 300ms ease-out 0ms;
}

.fs-p-productSearch .stock input[type=radio]:checked {
  background: #000;
}

.fs-p-productSearch .stock input[type=radio]:checked::before {
  position: absolute;
  top: 4px;
  left: 9px;
  transform: rotate(50deg);
  width: 6px;
  height: 10px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  content: '';
}

/* ==================================
 商品検索ページ 検索ボタン
================================== */
.fs-p-productSearch .fs-c-button--secondary {
  background: #000;
  color: #fff;
  width: 40%;
  margin: 40px 0;
}

.fs-p-productSearch .fs-p-productSearch__searchButton::before {
  left: 38%;
}

@media screen and (max-width:768px){
  .fs-p-productSearch .fs-c-button--secondary {
    width: 100%;
  }
}

/* ==================================
 商品検索ページ 詳細検索を開く＆閉じるボタン
================================== */
.fs-p-productSearch .fs-p-productSearch__formSwitch {
  background: #000;
  color: #fff;
  padding: 7px 15px;
  border-radius: 5px;
  min-width: 200px;
  text-align: center;
}

.fs-p-productSearch .fs-p-productSearch__formOpen {
  position: relative;
}

.fs-p-productSearch .fs-p-productSearch__formOpen::before {
  content: "";
  position: absolute;
  background: url(https://heilis.itembox.design/item//img/common/icon_search.svg) no-repeat;
  width: 1.2rem;
  height: 1.2rem;
  top: 50%;
  left: -15px;
  transform: translateY(-50%) translateX(-50%);
  filter: invert(99%) sepia(0%) saturate(7500%) hue-rotate(320deg) brightness(107%) contrast(100%);
}

.fs-p-productSearch :checked + .fs-p-productSearch__formSwitch .fs-p-productSearch__formClose {
  position: relative;
  display: inline-block;
}

.fs-p-productSearch :checked + .fs-p-productSearch__formSwitch .fs-p-productSearch__formClose::before {
  content: "×";
  position: absolute;
  top: 50%;
  left: -15px;
  font-size: 2rem;
  font-weight: 100;
  transform: translateY(-50%) translateX(-50%);
  color: #fff;
}

@media screen and (max-width:768px){
  .fs-p-productSearch {
    display: block;
  }
  .fs-p-productSearch .fs-p-productSearch__formSwitch {
    text-align: center;
    display: block;
    min-width: 100%;
  }
}

/* ==============================================================================

 商品検索ページここまで↑↑

============================================================================== */


/* ==============================================================================

 カテゴリページここから↓↓

============================================================================== */

/* カテゴリページ 全体
-------------------------------------*/
#fs_ProductCategory .fs-l-main {
}

#fs_ProductCategory .fs-l-main .fs-l-pageMain {
}

/* カテゴリページ 子カテボタン
-------------------------------------*/
.fs-c-subgroupList__link {
  border: none;
  background: none;
  border-bottom: 1px solid;
  padding-bottom: 5px;
  width: 90%;
  margin: 10px 0;
}

.fs-c-subgroup .fs-c-listControl {
  display: none;
}

@media screen and (max-width:768px){
  .fs-c-subgroupList__item {
    flex-basis: 50%;
  }
  .fs-c-subgroupList {
    margin: 8px;
  }
}

@media screen and (min-width: 960px) {
  .fs-c-subgroupList__item {
      flex-basis: calc(33.3% + 1px);
  }
}

/* カテゴリページ ランキング
-------------------------------------*/
.category_ranking__contents {
  margin: 70px 0;
}

.category_ranking__contents .category_title {
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 20px;
}

.category_ranking__contents article {
  position: relative;
}

.category_ranking__contents article::before {
  content: "";
  top: 0;
  left: 0;
  border-bottom: 3em solid transparent;
  border-left: 3em solid #000;
  position: absolute;
  z-index: 2;
}

.category_ranking__contents article::after {
  top: 2px;
  left: 8px;
  color: #fff;
  position: absolute;
  z-index: 3;
  text-align: center;
  margin: 0 auto;
  display: block;
}

.category_ranking__contents article:first-of-type::after {
  content: "1";
}
.category_ranking__contents article:nth-of-type(2)::after {
  content: "2";
}
.category_ranking__contents article:nth-of-type(3)::after {
  content: "3";
}
.category_ranking__contents article:nth-of-type(4)::after {
  content: "4";
}
.category_ranking__contents article:nth-of-type(5)::after {
  content: "5";
}
.category_ranking__contents article:nth-of-type(6)::after {
  content: "6";
}
.category_ranking__contents article:nth-of-type(7)::after {
  content: "7";
}
.category_ranking__contents article:nth-of-type(8)::after {
  content: "8";
}
.category_ranking__contents article:nth-of-type(9)::after {
  content: "9";
}
.category_ranking__contents article:nth-of-type(10)::after {
  content: "10";
}

@media screen and (max-width:768px){
  .category_ranking__contents .fr3-productListStatic {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: auto;
    gap: 10px;
    padding: 0;
  }

  .category_ranking__contents .fr3-item {
    flex: 0 0 40%;
    min-width: 40%;
    box-sizing: border-box;
    padding: 0;
  }
}

/* ==================================
 カテゴリページ 看板（SALE、NEWなど）
================================== */
.fs-body-category .cat_main__contents {
  position: relative;
  background: #ebebea;
}

.fs-body-category .cat_main__contents .cat_main__inner {
  width: 80%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}

.fs-body-category .cat_main__contents .textArea {
  width: 60%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fs-body-category .cat_main__contents .textArea .title {
  text-align: center;
}

.fs-body-category .cat_main__contents .textArea h1 {
  font-size: clamp(1.2rem, 8vw, 3rem);
  font-weight: 500;
  letter-spacing: 0.3em;
  margin: 0 0 10px;
}

.fs-body-category .cat_main__contents .textArea p.comment {
  font-size: 1.2rem;
  font-style: italic;
  letter-spacing: 0.12em;
  font-weight: 500;
}

.fs-body-category .cat_main__contents .textArea p.date {
    font-size: 1.2rem;
    letter-spacing: 0.12em;
}

.fs-body-category .cat_main__contents .imgArea {
  width: 40%;
  padding-top: 40px;
}

.fs-body-category .cat_main__contents .imgArea img {
  width: 600px;
  height: 380px;
  object-fit: cover; 
}

.fs-body-category .cat_main__contents p.copy_1,
.fs-body-category .cat_main__contents p.copy_2 {
  position: absolute;
  font-style: italic;
  top: 60%;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
  font-weight: 600;
}

.fs-body-category .cat_main__contents p.copy_1 {
  transform: rotate(-90deg);
  left: 7px;
  transform-origin: top left;
}

.fs-body-category .cat_main__contents p.copy_2 {
  transform: rotate(90deg);
  right: 7px;
  transform-origin: top right;
}

/* カテゴリページ看板　施策時
-------------------------------------*/
.fs-body-category-2509_naocampaign .category_ranking__contents {
  display: none;
}
.fs-body-category .cat_campaign__contents {
  position: relative;
}
.fs-body-category .cat_campaign__contents .textArea h1 {
  white-space: nowrap;
  position: absolute;
  top: 1.5%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 6em;
  letter-spacing: 0.09em;
}
.cat_campaignDetails__contents {
  padding: 0 20px;
}
.cat_campaignDetails__contents .productLists {
    margin: 0;
    padding: 0;
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 8px;
}
.cat_campaignDetails__contents .productLists li {
  max-width: 260px;
}
.cat_campaignDetails__contents .productLists .addonLabel {
    font-size: 0.7em;
    padding-left: 4px;
}
.cat_campaignDetails__contents .textArea {
  text-align: center;
  margin-top: 20px;
}

.cat_campaignDetails__contents .targetItems {
  margin-top: 40px;
}

.cat_campaignDetails__contents .targetItems__heading {
  padding: 10px;
  text-align: center;
  margin: 0 -20px;
  font-size: 1.6rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
.cat_campaignDetails__contents .productName,
.cat_campaignDetails__contents .price {
  font-size: 1.1rem;
}

/* デフォルトのh1を非表示 */
.fs-body-category-sale h1.fs-c-heading,
.fs-body-category-new h1.fs-c-heading,
.fs-body-category-hideka h1.fs-c-heading,
.fs-body-category-10OFF h1.fs-c-heading,
.fs-body-category-mustbuy h1.fs-c-heading,
.fs-body-category-25autumun_v1 h1.fs-c-heading,
.fs-body-category-2509_naocampaign h1.fs-c-heading {
  display: none;
}

@media screen and (max-width:768px){
  .fs-body-category .cat_main__contents .cat_main__inner {
    flex-wrap: wrap;
    width: 100%;
    padding: 5% 10% 5%;
  }

  .fs-body-category .cat_main__contents .textArea h1 {
    position: absolute;
    color: #fff;
    top: 33%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
  }

  .fs-body-category .cat_main__contents .textArea {
    order: 2;
  }

  .fs-body-category .cat_main__contents .textArea p.comment {
    margin: 50px 0 10px;
    font-size: 1.1rem;
  }

  .fs-body-category .cat_main__contents .textArea p.date {
    font-size: 1.1rem;
    letter-spacing: 0.12em;
    margin: 50px 0 10px;
  }

  .fs-body-category .cat_main__contents .textArea p.date + p.comment {
    margin: 10px 0 10px;
  }

  .fs-body-category .cat_main__contents .imgArea {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative;
    order: 1;
  }

  .fs-body-category .cat_main__contents .imgArea::after {
    content: "";
    position: absolute;
    bottom: -35px;
    left: 50%;
    width: 1px;
    height: 70px;
    background-color: #000;
    transform: translateX(-50%);
  }

  .fs-body-category .cat_main__contents .imgArea img {
    height: 400px;
  }

  .fs-body-category .cat_main__contents p.copy_1,
  .fs-body-category .cat_main__contents p.copy_2 {
    top: 40%;
    font-size: 1.1rem;
  }

  /* カテゴリページ看板　施策時
-------------------------------------*/
  .fs-body-category .cat_campaign__contents .textArea h1 {
    top: 3.5%;
    font-size: 1.9em;
  }
  .cat_campaignDetails__contents .productLists li {
    max-width: 140px;
  }
}

/* ==================================
  共通 前のページに戻るボタン
================================== */
.fs-body-category .backBtn ,.fs-body-custom .backBtn {
  text-align: center;
  position: relative;
  z-index: 2;
  margin: 40px 0;
}

.fs-body-category .backBtn a ,.fs-body-custom  .backBtn a {
    position: relative;
    width: 480px;
    margin: 0 auto 0;
    padding: 15px;
    border-radius: 50px;
    color: #000;
    display: block;
    font-size: 1.3rem;
    background: #e9e9e9;
}

@media screen and (max-width: 768px) {
  .fs-body-category .backBtn a ,.fs-body-custom  .backBtn a {
      width: 60%;
      padding: 13px;
      font-size: 1.1rem;
  }
}

/* ==============================================================================

 カテゴリーページここまで ↑↑

============================================================================== */


/* ==============================================================================

 会員登録ページ ここから↓↓ ※後で移動

============================================================================== */
.register_merit__contents {
  width: 960px;
  margin: 0 auto;
  max-width: 100%;
  padding: 60px;
  background: #e7e7e7;
}

.register_merit__contents .pointGet {
  font-size: 2rem;
  line-height: 2;
  text-align: center;
  margin: 0 0 50px;
  border-top: 2px solid #aaa;
  border-bottom: 2px solid #aaa;
  padding: 20px 0;
}

.register_merit__contents .meritList h2 {
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 20px;
}

.register_merit__contents .meritList ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  padding: 0;
}

.register_merit__contents .meritList li {
  width: calc(50% - 10px);
  padding: 40px;
  background: #F6F6F4;
  border-radius: 10px;
}

.register_merit__contents .meritList li.col_1 {
  width: 100%;
}

.register_merit__contents .meritList li h3 {
  font-size: 1.6rem;
  margin-bottom: 10px;
}

.register_merit__contents .meritList li p {
  font-size: 1.2rem;
}

.register_merit__contents .meritList li img {
  display: block;
}

.register_attention p {
  text-align: center;
  color: #dc2c2c;
}

@media screen and (max-width:768px){
  .register_merit__contents {
    padding: 20px;
  }

  .register_merit__contents .meritList ul {
    gap: 10px;
  }

  .register_merit__contents .meritList li {
    width: calc(50% - 5px);
    padding: 20px;
  }

  .register_merit__contents .meritList li h3 {
    font-size: 1.4rem;
  }
}



/* ==============================================================================

 会員登録ページ ここまで↑↑ ※後で移動

============================================================================== */