@charset "UTF-8";
/*
|---------------------------------------------------------------
| fs-list.css
|---------------------------------------------------------------
*/
:root {
  --mbs-pl-container-maxwidth: 1400px;
  --mbs-pl-font-size-base: 14px;
}
@media (min-width: 1000.02px) {
  :root {
    --mbs-pl-font-size-base: 16px;
    --mbs-pl-layout-nav-width: clamp(200px, 20vw, 300px);
  }
}

.fs-c-subgroup {
  display: none;
}

.fs-c-productList {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}
.fs-c-productList .fs-c-noResultMessage {
  max-width: var(--mbs-container-maxwidth);
  margin-left: auto;
  margin-right: auto;
}

/*
 * Page
------------------------------------------------*/
.mbs-plMain {
  --mbs-container-maxwidth: 1400px;
}

.mbs-pl {
  --mbs-container-padding: 25px;
  font-size: var(--mbs-pl-font-size-base, 15px);
}
.mbs-pl__header {
  display: block;
  width: 100%;
  margin: 0;
}
.mbs-pl__body {
  display: block;
  width: 100%;
  margin: 0;
  padding: clamp(25px, 3.33vw, 40px) 0;
}

/*
 * パンくずリスト
------------------------------------------------*/
.mbs-pl-breadcrumbs {
  --mbs-container-padding: 15px;
  --mbs-separator-size: 0.5em;
  display: block;
  width: 100%;
  margin: 0;
  font-size: clamp(10px, 1.33vw, 12px);
}
.mbs-pl-breadcrumbs .fs-c-breadcrumb {
  color: #777777;
  font-size: 1em;
  padding: 15px var(--mbs-container-padding);
  overflow-x: auto;
  width: auto;
}
.mbs-pl-breadcrumbs .fs-c-breadcrumb__list {
  width: auto;
  max-width: var(--mbs-container-maxwidth, 100%);
  display: flex;
  flex-wrap: nowrap;
  padding: 0;
}
.mbs-pl-breadcrumbs .fs-c-breadcrumb__listItem {
  display: flex;
  align-items: center;
  width: auto;
  flex: 0 0 auto;
  white-space: nowrap;
}
.mbs-pl-breadcrumbs .fs-c-breadcrumb__listItem:last-child {
  padding-right: var(--mbs-container-padding);
}
.mbs-pl-breadcrumbs .fs-c-breadcrumb__listItem + .fs-c-breadcrumb__listItem::before {
  content: "";
  display: block;
  width: var(--mbs-separator-size);
  height: var(--mbs-separator-size);
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: var(--mbs-pd-component-border-color);
  transform: rotate(45deg);
  flex-shrink: 0;
  margin: 0 0.5em;
}

/*
 * メインレイアウト
------------------------------------------------*/
.mbs-pl-layout {
  width: 100%;
  display: grid;
  grid-template-columns: var(--mbs-pl-layout-nav-width, 300px) minmax(0, 1fr);
  gap: clamp(30px, 4vw, 60px);
}
.mbs-pl-layout__nav {
  container-type: inline-size;
  display: block;
  width: 100%;
}
.mbs-pl-layout__main {
  container-type: inline-size;
  display: block;
  width: 100%;
}
@media (max-width: 1000px) {
  .mbs-pl-layout {
    display: block;
    width: 100%;
  }
  .mbs-pl-layout__nav {
    display: none;
  }
  .mbs-pl-layout__main {
    display: block;
    width: 100%;
  }
}

/*--------------- Main ---------------*/
.mbs-pl-main {
  display: block;
  width: 100%;
  margin: 0 0 50px;
}
@media (min-width: 1000.02px) {
  .mbs-pl-main {
    margin-bottom: 130px;
  }
}

/*--------------- 左ナビ ---------------*/
.mbs-pl-nav {
  --mbs-border-color: #efefef;
  --mbs-padding-y: 25px;
  --mbs-padding-x: 0;
  display: block;
  width: 100%;
}

.mbs-pl-nav-group {
  display: block;
  width: 100%;
}
.mbs-pl-nav-group__head {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0 0 1em;
  font-size: 1.25em;
  border-bottom: 1px solid var(--mbs-border-color);
}
.mbs-pl-nav-group__body {
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
}
.mbs-pl-nav-group .mbs-search__keywords {
  border-bottom: 1px solid var(--mbs-border-color);
}
.mbs-pl-nav-group .mbs-d-search__header {
  display: none;
}
.mbs-pl-nav-group .mbs-d-search__group.is-primary {
  border-top: 1px solid var(--mbs-border-color);
  margin-top: -1px;
}
.mbs-pl-nav-group .mbs-d-search__group .mbs-d-search-group {
  flex-direction: column;
  gap: 1em;
}
.mbs-pl-nav-group .mbs-d-search__group .mbs-d-search-group__head {
  width: 100%;
  max-width: 100%;
  flex: 0 0 auto;
  font-size: 1.13em;
}
.mbs-pl-nav-group .mbs-d-search__group .mbs-d-search-group__head small {
  font-size: max(12px, 0.78em);
}
.mbs-pl-nav-group .mbs-d-search__group .mbs-d-search-group__body {
  width: 100%;
  max-width: 100%;
  flex: 0 0 auto;
}
.mbs-pl-nav-group .mbs-d-search__action {
  gap: 30px;
  padding-top: 30px;
}
.mbs-pl-nav-group .mbs-search-keyword {
  border-color: #cccccc;
}
.mbs-pl-nav-group .mbs-searchPrice-price__prefix {
  font-size: 1em;
}
.mbs-pl-nav-group .mbs-searchTag {
  width: 100%;
}
.mbs-pl-nav-group .mbs-d-search-btn[type=submit] {
  width: 100%;
}

/*
 * 商品グループ バナー
------------------------------------------------*/
.mbs-pl-mainBanner {
  width: 100%;
  height: auto;
  min-height: 110px;
  display: flex;
  margin: 0;
  padding: 20px 0;
  color: #ffffff;
  background: #000000;
  position: relative;
}
@media (min-width: 750.02px) {
  .mbs-pl-mainBanner {
    min-height: 220px;
    align-items: center;
    margin-bottom: 40px;
  }
}
.mbs-pl-mainBanner > * {
  position: relative;
  z-index: 2;
}
.mbs-pl-mainBanner::before {
  content: "";
  pointer-events: none;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  margin: auto;
  background: rgba(0, 0, 0, 0.2);
}
.mbs-pl-mainBanner__image {
  pointer-events: none;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  margin: auto;
}
.mbs-pl-mainBanner__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/*--------------- デバイス別 ---------------*/
@media (min-width: 750.02px) {
  .mbs-pl-mainBanner:not([data-image-l-src=""]) .mbs-pl-mainBanner__image__img--s {
    display: none !important;
  }
}
@media (max-width: 750px) {
  .mbs-pl-mainBanner:not([data-image-s-src=""]) .mbs-pl-mainBanner__image__img--l {
    display: none !important;
  }
}
.mbs-pl-mainBanner[data-image-l-src=""] .mbs-pl-mainBanner__image__img--l {
  display: none !important;
}
.mbs-pl-mainBanner[data-image-s-src=""] .mbs-pl-mainBanner__image__img--s {
  display: none !important;
}
.mbs-pl-mainBanner[data-image-l-src=""][data-image-s-src=""] {
  display: none !important;
}

/*--------------- Title ---------------*/
.mbs-pl-mainBanner-title {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
  font-family: var(--mbs-font-family-en, inherit);
  font-size: clamp(24px, 3.2vw, 48px);
  font-weight: 700;
}
@media (min-width: 750.02px) {
  .mbs-pl-mainBanner-title {
    padding: 0 1em;
  }
}

/*
 * 商品一覧見出し
------------------------------------------------*/
.mbs-pl-heading {
  display: block;
  width: 100%;
  padding: 0 0 30px;
  border-bottom: 1px solid #000000;
  font-size: 16px;
}
@media (max-width: 1000px) {
  .mbs-pl-heading {
    width: auto;
    margin-left: calc(-1 * var(--mbs-container-padding));
    margin-right: calc(-1 * var(--mbs-container-padding));
    padding: 0 var(--mbs-container-padding) 15px;
    font-size: 14px;
  }
}
.mbs-pl-heading__layout {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--mbs-pl-layout-nav-width, 300px);
  gap: 15px;
}
.mbs-pl-heading__layout__main {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
.mbs-pl-heading__layout__aside {
  width: 100%;
  align-self: flex-end;
}
@media (max-width: 1000px) {
  .mbs-pl-heading__layout {
    display: flex;
    flex-direction: column;
    /* gap: 30px; */
    gap: 0;
  }
  .mbs-pl-heading__layout__aside {
    order: -1;
  }
  .mbs-pl-heading__layout__aside .mbs-pl-subgroups {
    margin-bottom: 30px;
  }
}

/*--------------- タイトル ---------------*/
.mbs-pl-heading-title {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 1.36em;
  font-weight: 600;
  line-height: 1.5;
}
@media (min-width: 1000.02px) {
  .mbs-pl-heading-title {
    font-size: 1.5em;
  }
}

/*--------------- xx件中 xx-xx件表示 ---------------*/
.mbs-pl-heading-status {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  color: #777777;
  font-size: 1em;
  font-weight: 400;
}
.mbs-pl-heading-status:not(.js--active) {
  min-height: 1.5em;
  visibility: hidden;
}

/*
 * カテゴリ・シリーズから選ぶ
------------------------------------------------*/
.mbs-pl-subgroups {
  display: block;
}
.mbs-pl-subgroups:not(.js--active) {
  display: none;
}

.mbs-pl-subgroup {
  display: block;
  width: 100%;
  height: auto;
  padding: 0.375em 0.5em;
  font-size: 16px;
  font-weight: 500;
  text-align: left;
  color: var(--mbs-color-foreground);
  background-color: var(--mbs-color-background);
  border: 1px solid var(--mbs-form-border-color);
  border-radius: 0.25em;
  transition: 0.25s color, 0.25s background-color, 0.25s border-color;
}
.mbs-pl-subgroup:not([disabled]) {
  padding-right: 1.5em;
  background-image: url("/item/assets/images/icon/angle-down-black.svg");
  background-repeat: no-repeat;
  background-size: 1.25em 1.25em;
  background-position: center right 0.5em;
  cursor: pointer;
}
.mbs-pl-subgroup[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

/*
 * 並び替え・ページャー
------------------------------------------------*/
.mbs-pl .fs-c-productList__controller {
  margin: 0;
}

/*--------------- 並び替え ---------------*/
.mbs-pl-sort {
  --mbs-item-margin-x: 0.75em;
  width: 100%;
  font-size: 14px;
  padding: 1em 0;
}
@media (min-width: 750.02px) {
  .mbs-pl-sort {
    --mbs-item-margin-x: 1em;
    font-size: 16px;
  }
}
.mbs-pl-sort .fs-c-productList__controller {
  display: flex;
  justify-content: flex-start;
}
@media (min-width: 750.02px) {
  .mbs-pl-sort .fs-c-productList__controller {
    justify-content: flex-end;
  }
}
.mbs-pl-sort .fs-c-productList__controller > *:not(.fs-c-sortItems) {
  display: none;
}
.mbs-pl-sort .fs-c-sortItems {
  margin: 0;
  border: 0;
  display: flex;
  font-size: 1em;
}
.mbs-pl-sort .fs-c-sortItems::before {
  content: "";
  align-self: center;
  display: block;
  width: 1.5em;
  height: 1.25em;
  flex-shrink: 0;
  margin-right: var(--mbs-item-margin-x, 1em);
  background-image: url("/item/assets/images/icon/sort-down-black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.mbs-pl-sort .fs-c-sortItems__label {
  display: none;
}
.mbs-pl-sort .fs-c-sortItems__list {
  list-style: none;
  border: 0;
}
.mbs-pl-sort .fs-c-sortItems__list__item {
  --mbs-font-weight: 400;
  display: flex;
  color: inherit;
  background: none;
}
.mbs-pl-sort .fs-c-sortItems__list__item__label {
  font-weight: var(--mbs-font-weight);
  padding: 0;
}
.mbs-pl-sort .fs-c-sortItems__list__item.is-active {
  --mbs-font-weight: 600;
}
.mbs-pl-sort .fs-c-sortItems__list__item:not(:last-child)::after {
  content: "";
  display: block;
  width: 1px;
  height: 1.5em;
  margin: 0 var(--mbs-item-margin-x, 1em);
  background: #d1c7c6;
}

/*--------------- ページャー ---------------*/
.mbs-pl-pagination {
  --mbs-pager-size: 1.67em;
  --mbs-pager-gap: 0.83em;
  --mbs-pager-arrow-size: 0.83em;
}
.mbs-pl-pagination .fs-c-productList__controller > *:not(.fs-c-listControl) {
  display: none;
}
.mbs-pl-pagination {
  display: block;
  width: 100%;
  margin: 50px 0;
  /* font-size: 18px; */
  font-size: 17px;
  font-weight: 500;
}
@media (min-width: 750.02px) {
  .mbs-pl-pagination {
    margin: 100px 0;
    font-size: 20px;
  }
}
.mbs-pl-pagination .fs-c-listControl {
  display: block;
  width: 100%;
  margin: 0;
}
.mbs-pl-pagination .fs-c-listControl__status {
  display: none;
}
.mbs-pl-pagination .fs-c-pagination {
  font-size: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--mbs-pager-gap);
}
.mbs-pl-pagination .fs-c-pagination__item {
  display: block;
  flex: 0 0 auto;
  min-width: var(--mbs-pager-size);
  text-align: center;
}
.mbs-pl-pagination .fs-c-pagination__item.is-active {
  color: #ffffff;
  background: #000000;
}
.mbs-pl-pagination .fs-c-pagination__item--prev::before,
.mbs-pl-pagination .fs-c-pagination__item--next::before {
  display: none;
}
.mbs-pl-pagination .fs-c-pagination__item--prev::after,
.mbs-pl-pagination .fs-c-pagination__item--next::after {
  content: "";
  display: block;
  width: var(--mbs-pager-arrow-size);
  height: var(--mbs-pager-arrow-size);
  border-style: solid;
  border-color: currentColor;
}
.mbs-pl-pagination .fs-c-pagination__item--prev::after {
  border-width: 2px 0 0 2px;
  transform: rotate(-45deg);
}
.mbs-pl-pagination .fs-c-pagination__item--next::after {
  border-width: 2px 2px 0 0;
  transform: rotate(45deg);
}

/*
 * 商品
------------------------------------------------*/
/*--------------- 商品一覧 ---------------*/
.mbs-pl-main .fs-c-productList__list {
  width: 100%;
  margin: 20px 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px 25px;
}
.mbs-pl-main .fs-c-productList__list__item {
  padding: 0;
  border: 0;
  font-size: 13px;
}
@container (min-width: 520.02px) {
  .mbs-pl-main .fs-c-productList__list {
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 40px 20px;
  }
  .mbs-pl-main .fs-c-productList__list__item {
    font-size: 14px;
  }
}

/*--------------- 商品 ---------------*/
.mbs-pl-main .fs-c-productListItem {
  --mbs-product-gap: 0.5em;
}
.mbs-pl-main .fs-c-productListItem > form {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.mbs-pl-main .fs-c-productListItem__productName {
  line-height: 1.5;
}
.mbs-pl-main .fs-c-productListItem__prices {
  font-size: 1.38em;
  margin-bottom: auto;
}
.mbs-pl-main .fs-c-productListItem__prices .fs-c-productPrice__addon {
  font-size: 0.56em;
}
.mbs-pl-main .fs-c-productListItem {
  --mbs-stock-height: 22px;
  position: relative;
  padding-bottom: calc(var(--mbs-stock-height) + var(--mbs-product-gap));
}
.mbs-pl-main .fs-c-productListItem__outOfStock {
  height: var(--mbs-stock-height);
  line-height: calc(var(--mbs-stock-height) - 2px);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
  position: absolute;
  top: auto;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  margin: auto;
}
.mbs-pl-main .fs-c-preorderMessage,
.mbs-pl-main .fs-c-productListItem__viewMoreImageButton,
.mbs-pl-main .fs-c-productListItem__control {
  display: none;
}

.mbs-pl-product-contents {
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25em;
}
.mbs-pl-product-contents > * {
  margin: 0;
}
.mbs-pl-product-contents > *:first-child {
  margin-top: var(--mbs-product-gap);
}
.mbs-pl-product-contents + .fs-c-productMarks {
  margin-top: var(--mbs-product-gap);
}
.mbs-pl-product-contents .fs-c-productShippingDateNote {
  display: none;
}

/*
 * レコメンド
------------------------------------------------*/
.mbs-pl-rcms {
  display: block;
  width: 100%;
  margin: 0;
  padding: clamp(30px, 4vw, 60px) 0;
  color: var(--mbs-colore-foreground);
  background: #f6f6f6;
}
@media (min-width: 1000.02px) {
  .mbs-pl-rcms {
    margin-top: 80px;
  }
}

.mbs-pl-rcm {
  width: 100%;
  font-size: var(--mbs-pd-font-size-base, 15px);
  line-height: 1.75;
  margin: 0 0 1.5em;
}

.mbs-pl-rcm-section {
  display: block;
  width: 100%;
  margin: 0;
  padding: clamp(30px, 4vw, 60px) 0;
}
.mbs-pl-rcm-section__header {
  display: block;
  width: 100%;
  margin: 0 0 clamp(35px, 4.67vw, 50px);
}
.mbs-pl-rcm-section__body {
  display: block;
  width: 100%;
}

.mbs-pl-rcm-section-title {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 29px;
  text-align: center;
}
.mbs-pl-rcm-section-title__main {
  display: block;
  width: 100%;
  font-family: var(--mbs-font-family-en, inherit);
  font-size: 1em;
  font-weight: 700;
}
.mbs-pl-rcm-section-title__sub {
  display: block;
  width: 100%;
  font-family: var(--mbs-font-family-ja, var(--mbs-font-family-base, inherit));
  font-size: 0.45em;
  font-weight: 400;
}
.mbs-pl-rcm-section-title__main + .mbs-pl-rcm-section-title__sub {
  margin-top: 0.35em;
}
@media (min-width: 750.02px) {
  .mbs-pl-rcm-section-title {
    font-size: 36px;
  }
  .mbs-pl-rcm-section-title__main {
    font-size: 1em;
  }
  .mbs-pl-rcm-section-title__sub {
    font-size: 0.39em;
  }
}

@media (max-width: 1000px) {
  .mbs-pl-rcms .mbr-lineup {
    --mbs-enabled-slider: true;
  }
  .mbs-pl-rcms .mbr-lineup:not(.swiper-initialized) .mbr-lineup__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--mbs-recommend-gap, 20px) 1px;
  }
}
@media (min-width: 1000.02px) {
  .mbs-pl-rcms .mbr-lineup {
    --mbs-enabled-slider: false;
  }
  .mbs-pl-rcms .mbr-lineup:not(.swiper-initialized) .mbr-lineup__list {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: var(--mbs-recommend-gap, 20px);
  }
  .mbs-pl-rcms .mbr-lineup:not(.swiper-initialized) .mbr-lineup__list__item:nth-child(n+7) {
    display: none;
  }
}

/*--------------- recommend ---------------*/
.mbjs-pl-recommend .mbr-product {
  font-size: clamp(12px, 11.11cqw, 14px);
}
@media (max-width: 1000px) {
  .mbjs-pl-recommend {
    width: auto;
    margin-left: calc(-1 * var(--mbs-container-padding));
    margin-right: calc(-1 * var(--mbs-container-padding));
  }
  .mbjs-pl-recommend .mbr-lineup {
    padding-left: var(--mbs-container-padding);
    padding-right: var(--mbs-container-padding);
  }
}

.mbjs-pl-recommend-wrapper:not(.js--active) {
  display: none;
}

/*
 * 固定ナビ
------------------------------------------------*/
.mbs-pl-searchNav {
  width: 100%;
  padding: 20px 0;
  color: var(--mbs-color-foreground);
  background: #edecec;
  transition: opacity 0.25s;
  opacity: 1;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: calc(var(--mbs-header-zindex, 105) - 5);
  margin: auto;
}
@media (min-width: 1000.02px) {
  .mbs-pl-searchNav {
    display: none;
  }
}
.mbs-pl-searchNav:not(.js--active) {
  pointer-events: none;
  opacity: 0;
}
.mbs-pl-searchNav__content {
  width: 100%;
  display: flex;
  gap: 15px;
}

.mbs-pl-searchNav-btn {
  --mbs-before-size: round(1.25em, 1px);
  --mbs-after-size: round(1em, 1px);
  --mbs-after-position-x: 1em;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  outline: none !important;
  text-decoration: none !important;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.75em calc(var(--mbs-after-size) + var(--mbs-after-position-x));
  position: relative;
  font-size: 17px;
  font-weight: 400;
  text-align: center;
  border-radius: 4px;
  overflow: hidden;
  color: var(--mbs-color-maincolor__font);
  background: var(--mbs-color-maincolor);
  box-shadow: 0.25em 0.25em 0.25em 0 rgba(0, 0, 0, 0.3);
}
@media (min-width: 750.02px) {
  .mbs-pl-searchNav-btn {
    font-size: 16px;
    font-weight: 400;
  }
}
.mbs-pl-searchNav-btn::before {
  content: "";
  display: block;
  width: var(--mbs-before-size);
  height: var(--mbs-before-size);
  background-image: url("/item/assets/images/icon/sliders-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-right: 0.75em;
}
.mbs-pl-searchNav-btn::after {
  content: "";
  width: var(--mbs-after-size);
  height: var(--mbs-after-size);
  background-image: linear-gradient(currentColor), linear-gradient(currentColor);
  background-repeat: no-repeat;
  background-size: 100% 1px, 1px 100%;
  background-position: center;
  position: absolute;
  top: 0;
  right: var(--mbs-after-position-x);
  bottom: 0;
  z-index: 25;
  margin: auto;
}
.mbs-pl-searchNav-btn.js--detailOpened::after {
  background-size: 100% 1px, 0px 100%;
}
