/** Shopify CDN: Minification failed

Line 174:0 All "@import" rules must come first

**/
/* ============================================================
  mindwind-custom.css
  2026-07 整理版（保守的クリーンアップ）
  - 記述順・カスケードは維持
  - 空ルールと同一宣言の重複のみ削除
  - インデント、空行、コメント表記を統一
============================================================ */

div.staffstart-shopify-app-container.home {
  margin-top: 15px;
}

div#gi-pointify-input-point-container>div>div>div.gi-pointify-label {
  text-align: left;
  font-weight: bold;
  flex-grow: 0;
  margin-right: 0;
}

div#gi-pointify-input-point-container>div>div>div.gi-pointify-value {
  flex-grow: 0;
}

input#gi-pointify-input-use-point {
  border-width: 3px;
  border-color: black;
}

button#gi-pointify-button-set-use-point {
  height: 100%;
  width: 100%;
}

/* 241209 マイページ修正 weblab */

:root {
  ---color_video_bg: #f2f2f2;
  ---color-bg: #ffffff;
  ---color-bg-accent: #f7f7f7;
  ---color-text-dark: #656565;
  ---color-text: #747474;
  ---color-text-light: #848484;
  ---color-primary: #656565;
  ---color-primary-hover: #483535;
  ---color-primary-fade: rgba(101, 101, 101, 0.05);
  ---color-primary-fade-hover: rgba(101, 101, 101, 0.1);
  ---color-primary-opposite: #ffffff;
  ---color-secondary: #585e71;
  ---color-secondary-hover: #2d354f;
  ---color-secondary-fade: rgba(88, 94, 113, 0.05);
  ---color-secondary-fade-hover: rgba(88, 94, 113, 0.1);
  ---color-secondary-opposite: #ffffff;
  ---color-a5: rgba(101, 101, 101, 0.05);
  ---color-a10: rgba(101, 101, 101, 0.1);
  ---color-a20: rgba(101, 101, 101, 0.2);
  ---color-a35: rgba(101, 101, 101, 0.35);
  ---color-a50: rgba(101, 101, 101, 0.5);
  ---color-a80: rgba(101, 101, 101, 0.8);
  ---color-a90: rgba(101, 101, 101, 0.9);
  ---color-a95: rgba(101, 101, 101, 0.95);
  ---inverse-bg: #2e3438;
  ---inverse-bg-accent: #222324;
  ---inverse-text-dark: #eeefef;
  ---inverse-text: #e2e3e3;
  ---inverse-text-light: #ffffff;
  ---inverse-primary: #fcd8c8;
  ---inverse-primary-hover: #ffa278;
  ---inverse-primary-fade: rgba(252, 216, 200, 0.05);
  ---inverse-primary-fade-hover: rgba(252, 216, 200, 0.1);
  ---inverse-primary-opposite: #000000;
  ---inverse-secondary: #c6dae5;
  ---inverse-secondary-hover: #86bcd9;
  ---inverse-secondary-fade: rgba(198, 218, 229, 0.05);
  ---inverse-secondary-fade-hover: rgba(198, 218, 229, 0.1);
  ---inverse-secondary-opposite: #000000;
  ---inverse-a5: rgba(255, 255, 255, 0.05);
  ---inverse-a10: rgba(255, 255, 255, 0.1);
  ---inverse-a20: rgba(255, 255, 255, 0.2);
  ---inverse-a35: rgba(255, 255, 255, 0.3);
  ---inverse-a80: rgba(255, 255, 255, 0.8);
  ---inverse-a90: rgba(255, 255, 255, 0.9);
  ---inverse-a95: rgba(255, 255, 255, 0.95);
  ---color-announcement-bg: #4d4e52;
  ---color-announcement-text: #f7f7f7;
  ---color-nav: #f7f7f7;
  ---color-nav-text: #656565;
  --bg: var(---color-bg);
  --bg-accent: var(---color-bg-accent);
  --text-dark: var(---color-text);
  --text: var(---color-a90);
  --text-light: var(---color-a80);
  --muted: var(---color-a35);
  --border: var(---color-a20);
  --hairline: var(---color-a5);
  --contrast: #000;
  --primary: var(---color-primary);
  --primary-fade: var(---color-primary-fade);
  --secondary: var(---color-secondary);
  --secondary-fade: var(---color-secondary-fade);
}

body {
  font-size: 1.6rem;
}

/* マイページ */

#bcTarget div:empty {
  display: block;
}

.grid:has(#gi-pointify-account-info-container) .grid__item {
  width: 100%;
  max-width: none;
  float: none;
}

#gi-pointify-account-info-container {
  display: none;
  font-size: 13px;
}

.gi-font-size125 {
  font-size: 20px;
}

/* 会員情報 編集ページ */

@media screen and (max-width: 767.9px) {
  .full__page__form__wrapper .grid {
    display: block;
  }

  .full__page__form__wrapper .grid__item {
    float: none;
    width: 100%;
    max-width: calc(100% - 32px);
    margin-left: auto;
    margin-right: auto;
  }
}

/* ご注文履歴 */

.grid:has([data-label="注文番号"]),
.grid:has([data-label="ご注文"]) {
  display: block;
}

.grid:has([data-label="注文番号"]) .grid__item,
.grid:has([data-label="ご注文"]) .grid__item {
  width: 100%;
  max-width: calc(100% - 32px);
}

/* アンケートフォーム 追加 */

.globo-form-app {
  z-index: 1;
}

.form-container-overlayboxs .form-overlay-box {
  top: calc(50vh - 280px);
  top: max(100px, calc(50vh - 280px));
}

/* 260609 サイト改修 weblab */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

/*
  ============================================================
  Search Panel / Mobile Facets
  検索メニュー・スマホ絞り込み共通
  ============================================================
*/

:root {
  --filter-panel-overlay: rgba(0, 0, 0, 0.42);
  --filter-panel-bg: #fff;
  --filter-panel-sub-bg: #eee;
  --filter-panel-line: #e5e5e5;
  --filter-panel-text: #111;
  --filter-panel-margin-sp: 12px;
  --filter-panel-header-height: 58px;
  --filter-panel-side-padding: 16px;
  --filter-panel-item-padding: 14px 20px;
  --filter-panel-title-size: 13px;
  --filter-panel-text-size: 12px;
  --filter-panel-button-height: 44px;
  --filter-panel-reset-width: 100px;
  --filter-panel-button-gap: 12px;
}

/*
  ==============================
  共通
  ==============================
*/

body.custom-search-is-open {
  overflow: hidden;
}

.custom-search-panel__header,
.mobile-facets__header {
  position: relative;
  flex: 0 0 auto;
  min-height: var(--filter-panel-header-height);
  padding: 0 24px !important;
  border: 0;
  background: var(--filter-panel-sub-bg);
  text-align: left;
}

.custom-search-panel__title,
.mobile-facets__heading {
  margin: 0;
  color: var(--filter-panel-text);
  font-size: var(--filter-panel-title-size);
  font-weight: 700;
  line-height: var(--filter-panel-header-height);
  letter-spacing: 0;
}

.custom-search-panel__close,
.mobile-facets__close {
  position: absolute;
  top: 40px !important;
  right: 24px !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0;
  padding: 0 !important;
  border: 0;
  background: transparent;
  transform: translateY(-50%);
  cursor: pointer;
}
.custom-search-panel__close {
  top: 50% !important;
}
.custom-search-panel__close span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 24px;
  height: 1px;
  background: var(--filter-panel-text);
}

.custom-search-panel__close span:first-child {
  transform: translate(-50%, -50%) rotate(45deg);
}

.custom-search-panel__close span:last-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.mobile-facets__close .svg-wrapper,
.mobile-facets__close svg {
  width: 20px !important;
  height: 20px !important;
}

.custom-search-filter,
#FacetsWrapperMobile > .mobile-facets__details {
  border-bottom: 1px solid var(--filter-panel-line);
}

.custom-search-filter__summary,
.mobile-facets__summary {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 48px;
  padding: var(--filter-panel-item-padding) !important;
  list-style: none;
  cursor: pointer;
}

.custom-search-filter__summary::-webkit-details-marker,
.mobile-facets__summary::-webkit-details-marker {
  display: none;
}

.custom-search-filter__title,
.mobile-facets__summary span:first-child {
  color: var(--filter-panel-text);
  font-size: var(--filter-panel-title-size);
  font-weight: 700;
  line-height: 1.5;
}

.mobile-facets__summary > div {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 18px;
}

.custom-search-filter__icon,
.mobile-facets__arrow {
  position: relative;
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  margin-left: auto;
}

.mobile-facets__arrow svg {
  display: none;
}

.custom-search-filter__icon::before,
.custom-search-filter__icon::after,
.mobile-facets__arrow::before,
.mobile-facets__arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #333;
  transform: translate(-50%, -50%);
}

.custom-search-filter__icon::before,
.mobile-facets__arrow::before {
  width: 10px;
  height: 1px;
}

.custom-search-filter__icon::after,
.mobile-facets__arrow::after {
  width: 1px;
  height: 10px;
  opacity: 1;
  transition: opacity 0.2s ease,
    transform 0.3s ease;
}

.custom-search-filter[open] .custom-search-filter__icon::after,
.mobile-facets__details[open] .mobile-facets__arrow::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(90deg);
}

.custom-search-panel .mobile-facets__list,
.mobile-facets__submenu .mobile-facets__list {
  padding: 0 0 8px !important;
}

.custom-search-panel .mobile-facets__item,
.mobile-facets__submenu .mobile-facets__item {
  min-height: 40px !important;
  margin: 0 !important;
}

.custom-search-panel .mobile-facets__label,
.mobile-facets__submenu .mobile-facets__label {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 10px 12px 10px 26px !important;
  color: var(--filter-panel-text) !important;
  font-size: var(--filter-panel-text-size) !important;
  line-height: 1.5 !important;
  cursor: pointer;
}

/* 実際のinputはクリック判定だけ残して非表示 */
.custom-search-panel input.mobile-facets__checkbox,
.mobile-facets__submenu input.mobile-facets__checkbox {
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  z-index: 2;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  opacity: 0 !important;
  transform: translateY(-50%) !important;
  cursor: pointer;
}

/* チェックボックスの枠 */
.custom-search-panel .mobile-facets__label > svg:not(.icon-checkmark),
.mobile-facets__submenu .mobile-facets__label > svg:not(.icon-checkmark) {
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  display: block !important;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  pointer-events: none;
}
.custom-search-panel .mobile-facets__label > .icon-checkmark,
.mobile-facets__submenu .mobile-facets__label > .icon-checkmark {
  position: absolute !important;
  top: 50% !important;
  left: 2px !important;
  display: block !important;
  width: 10px !important;
  height: 8px !important;
  margin: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-50%) !important;
  pointer-events: none;
}
/* 選択されたときだけチェックマークを表示 */
.custom-search-panel
  input.mobile-facets__checkbox:checked
  ~ .icon-checkmark,
.mobile-facets__submenu
  input.mobile-facets__checkbox:checked
  ~ .icon-checkmark {
  opacity: 1 !important;
  visibility: visible !important;
}

.custom-search-panel .mobile-facets__highlight,
.mobile-facets__submenu .mobile-facets__highlight {
  display: none !important;
}

.custom-search-panel .facet-checkbox__text,
.mobile-facets__submenu .facet-checkbox__text {
  display: block !important;
  font-size: var(--filter-panel-text-size) !important;
  line-height: 1.5 !important;
}

.custom-search-panel .mobile-facets__label.active,
.custom-search-panel .mobile-facets__label:has(input:checked),
.mobile-facets__submenu .mobile-facets__label.active,
.mobile-facets__submenu .mobile-facets__label:has(input:checked) {
  background: #f7f7f7 !important;
}

.custom-search-panel .mobile-facets__info,
.mobile-facets__submenu .mobile-facets__info {
  display: none !important;
}

.custom-search-panel price-range.facets__price,
.mobile-facets__submenu price-range.facets__price {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr)
    auto minmax(0, 1fr) !important;
  align-items: end !important;
  column-gap: 8px !important;
  width: 100% !important;
  padding: 8px 0 18px !important;
}

.custom-search-panel .facets__price > .field-currency,
.mobile-facets__submenu .facets__price > .field-currency {
  align-self: end !important;
  margin: 0 0 9px !important;
  color: #333 !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

.custom-search-panel .facets__price > .field,
.mobile-facets__submenu .facets__price > .field {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}

.custom-search-panel .facets__price > .field::before,
.custom-search-panel .facets__price > .field::after,
.mobile-facets__submenu .facets__price > .field::before,
.mobile-facets__submenu .facets__price > .field::after {
  display: none !important;
}

.custom-search-panel .facets__price .field__input,
.mobile-facets__submenu .facets__price .field__input {
  width: 100% !important;
  min-width: 0 !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 17px 4px 4px !important;
  border: 0 !important;
  border-bottom: 1px solid #d5d5d5 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--filter-panel-text) !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  text-align: left !important;
}

.custom-search-panel .facets__price .field__label,
.mobile-facets__submenu .facets__price .field__label {
  position: absolute !important;
  top: 20px !important;
  right: 0 !important;
  left: auto !important;
  margin: 0 !important;
  color: #333 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  transform: none !important;
  pointer-events: none !important;
}

.custom-search-panel .facets__price .field__input:focus,
.mobile-facets__submenu .facets__price .field__input:focus {
  outline: 0 !important;
  border-bottom-color: var(--filter-panel-text) !important;
  box-shadow: none !important;
}

.custom-search-panel__footer,
#FacetsWrapperMobile > .mobile-facets__footer {
  position: static !important;
  display: grid !important;
  grid-template-columns: var(--filter-panel-reset-width)
    minmax(0, 1fr) !important;
  gap: var(--filter-panel-button-gap) !important;
  box-sizing: border-box;
  width: auto !important;
  padding: 14px 16px !important;
  border: 0 !important;
  background: var(--filter-panel-sub-bg) !important;
}

.custom-search-panel__footer {
  margin: 28px 0 0;
}

#FacetsWrapperMobile > .mobile-facets__footer {
  margin: 0 -16px !important;
}

.custom-search-panel__reset,
.custom-search-panel__submit,
#FacetsWrapperMobile > .mobile-facets__footer .mobile-facets__clear,
#FacetsWrapperMobile > .mobile-facets__footer .button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  height: var(--filter-panel-button-height) !important;
  min-height: var(--filter-panel-button-height) !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  cursor: pointer;
}

#FacetsWrapperMobile > .mobile-facets__footer .mobile-facets__clear-wrapper {
  display: block !important;
  width: 100% !important;
}

.custom-search-panel__reset,
#FacetsWrapperMobile > .mobile-facets__footer .mobile-facets__clear {
  border: 1px solid #d5d5d5 !important;
  background: #fff !important;
  color: var(--filter-panel-text) !important;
}

.custom-search-panel__submit,
#FacetsWrapperMobile > .mobile-facets__footer .button {
  border: 1px solid var(--filter-panel-text) !important;
  background: var(--filter-panel-text) !important;
  color: #fff !important;
}

.custom-search-panel__submit::before,
.custom-search-panel__submit::after,
#FacetsWrapperMobile > .mobile-facets__footer .button::before,
#FacetsWrapperMobile > .mobile-facets__footer .button::after {
  display: none !important;
}

/*
  ==============================
  common Header 
  ==============================
*/

.header.header--common {
  grid-template-areas: "drawer heading icons" !important;
  grid-template-columns: auto auto 1fr !important;
  column-gap: 24px;
}

.header.header--common header-drawer {
  grid-area: drawer;
  justify-self: start;
}

.header.header--common .header__heading,
.header.header--common .header__heading-link {
  grid-area: heading;
  justify-self: start;
  margin: 0;
}

.header.header--common .header__icons {
  grid-area: icons;
  justify-self: end;
  margin-left: auto;
}

/*
  ==============================
  Header Search Panel
  ==============================
*/

.custom-search-open {
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}

.custom-search-panel {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;
  display: block !important;
  width: 100vw !important;
  height: 100dvh !important;
  padding: 0 !important;
  background: transparent !important;
  isolation: isolate;
  visibility: hidden;
  pointer-events: none;
}

.custom-search-panel:not(.is-open) {
  visibility: hidden !important;
  pointer-events: none !important;
}

.custom-search-panel.is-open {
  visibility: visible !important;
  pointer-events: auto !important;
}

.custom-search-panel__overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100dvh !important;
  background: var(--filter-panel-overlay) !important;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease,
    visibility 0.3s ease;
}

.custom-search-panel.is-open .custom-search-panel__overlay {
  opacity: 1 !important;
  visibility: visible !important;
}

.custom-search-panel__inner {
  position: absolute !important;
  top: 0;
  right: 0;
  z-index: 1 !important;
  display: block !important;
  width: 420px;
  max-width: 100%;
  height: 100dvh;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  background: var(--filter-panel-bg) !important;
  opacity: 1 !important;
  transform: translateX(105%);
  transition: transform 0.35s ease;
}

.custom-search-panel.is-open .custom-search-panel__inner {
  transform: translateX(0);
}

.custom-search-panel__form,
.custom-search-panel__body,
.custom-search-panel__filters,
.custom-search-filter,
.custom-search-filter__content,
.custom-search-filter__fields {
  background: var(--filter-panel-bg);
}

.custom-search-panel__form,
.custom-search-panel__body {
  display: block;
  min-height: 0;
  margin-bottom: 0;
}

.custom-search-panel__body {
  overflow: visible;
}

.custom-search-panel__keyword {
  position: relative;
  padding: 17px 16px 15px;
}

.custom-search-panel__input {
  display: block;
  width: 100%;
  height: 40px;
  margin: 0 !important;
  padding: 0 38px 0 0;
  border: 0 !important;
  border-bottom: 1px solid var(--filter-panel-text) !important;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--filter-panel-text);
  font-size: 13px;
  line-height: 1.5;
  appearance: none;
}

.custom-search-panel__input::placeholder {
  color: #aaa;
  opacity: 1;
}

.custom-search-panel__input:focus {
  outline: 0;
  box-shadow: none;
}

.custom-search-panel__input::-webkit-search-cancel-button {
  display: none;
}

.custom-search-panel__keyword-submit {
  position: absolute;
  top: 50%;
  right: 19px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  transform: translateY(-50%);
  cursor: pointer;
}

.custom-search-panel__keyword-submit svg {
  width: 18px;
  height: 18px;
}

.custom-search-panel__filter-heading {
  margin: 0;
  padding: 9px 16px;
  background: var(--filter-panel-sub-bg) !important;
  color: var(--filter-panel-text);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

.custom-search-panel__loading,
.custom-search-panel__error {
  margin: 0;
  padding: 20px 16px;
  color: #666;
  font-size: 12px;
}

.custom-search-panel__filters {
  padding: 0 16px;
}

.custom-search-filter:last-child {
  border-bottom: 0;
}

.custom-search-filter__content {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  opacity: 0;
  transition: grid-template-rows 0.35s ease,
    opacity 0.25s ease;
}

.custom-search-filter[open] .custom-search-filter__content {
  grid-template-rows: 1fr;
  opacity: 1;
}

.custom-search-filter__fields {
  position: static !important;
  display: block !important;
  width: 100% !important;
  min-height: 0;
  max-height: none !important;
  padding: 0 20px 12px;
  overflow: hidden;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

/*
  ==============================
  Mobile Collection Facets
  ==============================
*/

@media screen and (max-width: 768px) {
  .mobile-facets {
    z-index: 1000;
    background: var(--filter-panel-overlay);
    margin-bottom: 0 !important;
  }

  .mobile-facets__inner {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    height: auto !important;
    max-height: calc(100dvh - 24px) !important;
    margin: var(--filter-panel-margin-sp) !important;
    border: 0 !important;
    background: var(--filter-panel-bg) !important;
    filter: none !important;
    overflow: hidden !important;
  }

  .mobile-facets__header-inner {
    display: flex;
    align-items: center;
    min-height: var(--filter-panel-header-height);
  }

  .mobile-facets__count {
    display: none;
  }

  .mobile-facets__main {
    display: block !important;
    flex-grow: 0 !important;
    padding: 10px var(--filter-panel-side-padding) 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  .js .mobile-facets .submenu-open {
    visibility: visible !important;
  }

  #FacetsWrapperMobile > .mobile-facets__details:last-of-type {
    border-bottom: 0;
  }

  .js .mobile-facets__submenu,
  .js details[open] > .mobile-facets__submenu,
  .js details[open].menu-opening > .mobile-facets__submenu {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: 0;
    padding: 0 24px !important;
    overflow: hidden !important;
    visibility: hidden !important;
    opacity: 0;
    transform: translateY(-6px) !important;
    pointer-events: none;
    z-index: auto !important;
    background: transparent !important;
    transition: max-height 0.35s ease,
      opacity 0.25s ease,
      transform 0.35s ease,
      padding 0.35s ease;
  }

  .js details[open] > .mobile-facets__submenu,
  .js details[open].menu-opening > .mobile-facets__submenu {
    max-height: 2000px;
    padding-top: 0 !important;
    padding-bottom: 12px !important;
    visibility: visible !important;
    opacity: 1;
    transform: translateY(0) !important;
    pointer-events: auto;
  }

  .mobile-facets__close-button {
    display: none !important;
  }

  .mobile-facets__submenu > .mobile-facets__footer {
    display: none !important;
  }

  .mobile-facets__details[id^="Details-Mobile-SortBy-"] {
    display: none !important;
  }

  .custom-search-panel__inner {
    top: 12px !important;
    right: 12px !important;
    bottom: auto !important;
    left: 12px !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: calc(100dvh - 24px) !important;
    margin: 0 !important;
  }
}

@media screen and (min-width: 769px) {
  .custom-search-panel__inner {
    width: 420px;
  }
}

/* トップページヘッダーのメニュー非表示 */

#mattrz-cx-campaign-element-campaign-123460,
#mattrz-cx-campaign-element-campaign-94645 {
  display: none !important;
}

/* 新フッター */

.custom-footer {
  background: #fff;
  margin-top: 80px;
  border-top: 1px solid #EBEBEB;
}

.custom-footer__inner {
  width: 1080px;
  margin: 0 auto;
  padding: 64px 0;
}

.custom-footer__main {
  display: flex;
  justify-content: space-between;
  gap: 120px;
}

.custom-footer__brand {
  flex: 1;
  max-width: 444px;
}

.custom-footer__logo {
  margin-bottom: 20px;
}

.custom-footer__logo img {
  display: block;
  max-width: 194px;
  width: 100%;
  height: auto;
}

.custom-footer__lead {
  margin: 0;
  font-size: 12px;
  line-height: 1.8;
  color: #333;
}

.custom-footer__app {
  margin-top: 30px;
  background: #F6F6F6 url("//mindwind.tokyo/cdn/shop/t/113/assets/bg_footapp.png?v=113230756638859392681787143208") no-repeat 95% bottom;
  padding: 24px;
}

.custom-footer__app-title {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 16px;
  color: #333;
}

.custom-footer__app-banners {
  display: flex;
  gap: 12px;
}

.custom-footer__app-link img {
  display: block;
  height: auto;
}

.custom-footer__guide {
  width: 470px;
}

.custom-footer__guide_inner {
  width: 284px;
  margin: 0 0 0 auto;
}

.custom-footer__heading {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
}

.custom-footer__guide-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0px 30px;
}

.custom-footer__guide-list a {
  color: #222;
  text-decoration: none;
  font-size: 12px;
  line-height: 1.8;
  position: relative;
}

.custom-footer__guide-list a::after {
  content: "";
  position: absolute;
  right: -12px;
  top: calc(50% - 3px);
  mask-image: url("//mindwind.tokyo/cdn/shop/t/113/assets/ico_arw.svg?v=79645605205074833431787143208");
  mask-repeat: no-repeat;
  mask-size: contain;
  background-color: #333;
  width: 6px;
  height: 10px;
}

.custom-footer__guide-list a:hover {
  opacity: .7;
}

.custom-footer__other {
  display: flex;
  gap: 60px;
  margin: 20px 0 0 0;
}

.custom-footer__other h2 a {
  position: relative;
}

.custom-footer__other h2 a::after {
  content: "";
  position: absolute;
  right: -15px;
  top: calc(50% - 4px);
  mask-image: url("//mindwind.tokyo/cdn/shop/t/113/assets/ico_arw.svg?v=79645605205074833431787143208");
  mask-repeat: no-repeat;
  mask-size: contain;
  background-color: #333;
  width: 8px;
  height: 12px;
}

.custom-footer__other h2 a:hover {
  opacity: .7;
}

.custom-footer__card {
  display: flex;
  gap: 0;
  margin: 20px 0 0 0;
}

.custom-footer__card ul {
  margin: 0;
}

.custom-footer__links {
  padding: 15px 0;
  background: #F6F6F6;
}

.custom-footer__links .inner {
  width: 1080px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}

.custom-footer__links a {
  color: #222;
  text-decoration: none;
  font-size: 12px;
}

.custom-footer__copyright {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 14px 20px;
  font-size: 12px;
  letter-spacing: .05em;
}

/* SP */

@media (max-width: 767px) {
  .custom-footer {
    margin-top: 20px;
  }
  .custom-footer__inner {
    width: 90%;
    padding: 50px 0;
    margin: 0 auto;
  }

  .custom-footer__main {
    flex-direction: column;
    gap: 50px;
  }

  .custom-footer__guide {
    width: 100%;
  }

  .custom-footer__guide_inner {
    width: 100%;
  }

  .custom-footer__card {
    width: 100%;
  }

  .custom-footer__card img {
    width: 100%;
    height: auto;
  }

  .custom-footer__app-banners {
    flex-direction: column;
  }

  .custom-footer__links {
    gap: 12px 20px;
  }

  .custom-footer__links .inner {
    width: 90%;
    margin: 0 auto;
    gap: 10px 20px;
  }
  .custom-footer__brand {
    text-align: center;
  }
  .custom-footer__app {
    padding: 24px 10%;
    background: #F6F6F6 url("//mindwind.tokyo/cdn/shop/t/113/assets/bg_footapp.png?v=113230756638859392681787143208") no-repeat right 14% bottom 20px;
  }
  .custom-footer__logo img {
    max-width: 220px;
    margin: 0 auto;
  }
}

/* ブランドトップ */

.simple-slider-container {
  margin: 40px 0 0 0;
}

/* Brand top v2 */

.brand-top-v2 {
  font-family: var(--font-body-family);
}
.brand-top-v2 section:last-of-type {
  margin: 60px auto 210px;
} 
.brand-top-v2__label {
  margin: 0 0 16px;
  font-size: 13px;
  letter-spacing: 0.18em;
}

.brand-top-v2__title {
  margin: 0;
  font-size: clamp(42px, 7vw, 96px);
  line-height: 1;
  font-weight: 500;
}

.brand-top-v2__lead {
  margin: 24px 0 0;
  font-size: 15px;
  line-height: 2;
}

/* Brand KV */

.brand-top-v2__kv {
  display: none;
  padding: 48px 0 0;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .brand-top-v2__kv {
    padding: 0;
  }
}

@media screen and (min-width: 769px) {
  .brand-top-v2 {
    min-width: 1120px;
  }
}

.brand-kv-swiper {
  width: 100%;
  overflow: visible;
}

.brand-kv-swiper .swiper-wrapper {
  align-items: center;
}

.brand-kv-swiper .swiper-slide {
  width: 770px !important;
  flex-shrink: 0;
}

.brand-kv-swiper__link {
  display: block;
}

.brand-kv-swiper img {
  display: block;
  width: 770px;
  height: 500px;
  object-fit: cover;
}

.brand-kv-swiper__arrow {
  position: absolute;
  top: calc(50% - 6px);
  z-index: 10;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  transform: translateY(-50%);
  cursor: pointer;
}

.brand-kv-swiper__arrow--prev {
  left: calc(50% - 385px + -22px);
}

.brand-kv-swiper__arrow--next {
  right: calc(50% - 385px + -22px);
}

.brand-kv-swiper__arrow::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #909090;
  border-right: 2px solid #909090;
  position: absolute;
  top: calc(50% - 6px);
  left: calc(50% - 6px);
}

.brand-kv-swiper__arrow--prev::before {
  transform: rotate(-135deg);
}

.brand-kv-swiper__arrow--next::before {
  transform: rotate(45deg);
}

.brand-kv-swiper__arrow {
  background: #EBEBEB;
  opacity: .8;
  border-radius: 50%;
}

.brand-kv-swiper__pagination {
  position: static !important;
  margin-top: 0;
  text-align: center;
}

.brand-kv-swiper__pagination .swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  margin: 0 6px !important;
  background: #ccc;
  opacity: 1;
}

.brand-kv-swiper__pagination .swiper-pagination-bullet-active {
  background: #000;
}

.brand-section-heading {
  margin-bottom: 32px;
  text-align: center;
}

.brand-section-heading h2 {
  margin: 0;
  font-size: 24px;
  letter-spacing: 0.14em;
  font-weight: 500;
}

.brand-section-heading p {
  margin: 8px 0 0;
  font-size: 12px;
}

@media screen and (max-width: 768px) {
  .brand-kv-swiper .swiper-slide {
    width: 100% !important;
  }

  .brand-kv-swiper img {
    width: 100% !important;
    height: auto !important;
  }

  .brand-kv-swiper__arrow--prev {
    left: 8px;
  }

  .brand-kv-swiper__arrow--next {
    right: 8px;
  }

  .brand-kv-swiper__arrow {
    width: 32px;
    height: 32px;
  }

  .brand-kv-swiper__arrow::before {
    width: 8px;
    height: 8px;
    top: calc(50% - 4px);
    left: calc(50% - 4px);
  }

  .brand-kv-swiper__pagination {
    margin-top: 12px;
  }

  .brand-kv-swiper__pagination .swiper-pagination-bullet {
    width: 5px;
    height: 5px;
    margin: 0 4px !important;
  }
}

/* Brand product section */

.brand-product-section {
  padding: 76px 20px 0;
}

.brand-product-section__inner {
  max-width: 1080px;
  margin: 0 auto;
}

.brand-product-swiper-wrap {
  position: relative;
  width: 1080px;
  margin: 0 auto;
}

.brand-product-swiper {
  width: 1000px;
  margin: 0 auto;
  overflow: hidden;
}

.brand-product-swiper .swiper-slide {
  width: 184px;
}

.brand-product-card {
  display: block;
  color: inherit;
  text-decoration: none;
}

.brand-product-card__image {
  aspect-ratio: 3 / 4;
  background: #f7f7f7;
  overflow: hidden;
}

.brand-product-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity .25s ease;
}

.brand-product-card:hover .brand-product-card__image img {
  opacity: .6;
}

.brand-product-card__thumbs {
  display: flex;
  gap: 4px;
  margin-top: 10px;
}

.brand-product-card__thumb {
  width: 30px;
  height: 38px;
  padding: 0;
  border: 1px solid #e5e5e5;
  background: #fff;
  cursor: pointer;
  overflow: hidden;
}

.brand-product-card__thumb.is-active {
  border-color: #222;
}

.brand-product-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.brand-product-card__rank {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 28px;
  height: 28px;
  padding: 0;
  background: #000;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 28px;
  text-align: center;
}

.brand-product-card__rank::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -8px;
  width: 0;
  height: 0;
  border-top: 8px solid currentColor;
  border-right: 28px solid transparent;
}

.brand-product-card__rank {
  background: #000;
}

.brand-product-card__rank--1 {
  background: #C09B3F;
  color: #C09B3F;
}

.brand-product-card__rank--2 {
  background: #7E8B97;
  color: #7E8B97;
}

.brand-product-card__rank--3 {
  background: #A85A5A;
  color: #A85A5A;
}

.brand-product-card__rank span {
  position: relative;
  z-index: 1;
  color: #fff;
}

.brand-product-card__title {
  margin: 12px 0 0;
  font-size: 12px;
  line-height: 1.6;
}

.brand-product-card__price {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 6px;
}

.brand-product-card__price > span {
  color: #222;
  font-size: 14px;
}

.brand-product-card__price-sale {
  color: #e94b52;
  font-weight: 500;
  font-size: 14px;
}

.brand-product-card__price-compare {
  color: #999;
  text-decoration: line-through;
  font-size: 12px;
}

.brand-product-swiper__arrow {
  position: absolute;
  top: 38%;
  z-index: 2;
  width: 36px;
  height: 36px;
  border: 0;
  background: #ebebeb;
  opacity: .8;
  border-radius: 50%;
  cursor: pointer;
}

.brand-product-swiper__arrow::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  margin: auto;
  border-top: 2px solid #909090;
  border-right: 2px solid #909090;
  position: absolute;
  top: calc(50% - 5px);
  left: calc(50% - 5px);
}

.brand-product-swiper__arrow--prev {
  left: 0;
}

.brand-product-swiper__arrow--next {
  right: 0;
}

.brand-product-swiper__arrow--prev::before {
  transform: rotate(-135deg);
}

.brand-product-swiper__arrow--next::before {
  transform: rotate(45deg);
}

.brand-product-card__badges {
  margin: 8px 0 0;
}

.brand-product-card__badges .primeBadges {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.brand-product-card__badges .primebDesktop {
  display: inline-flex !important;
  width: auto !important;
  flex: 0 0 auto;
}

.brand-product-card__badges .primebDesktop > div {
  width: auto !important;
}

.brand-product-card__badges .badgetitle {
  font-size: 11px !important;
  line-height: 1.4;
}

.brand-product-section__more,
.brand-feature__more,
.brand-more {
  margin-top: 40px;
  text-align: center;
}

.brand-product-section__more-btn,
.brand-feature__more-btn,
#brand_staff_more,
.brand-more a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  height: 48px;
  padding: 0 20px;
  border-radius: 30px;
  border: 1px solid #222;
  color: #222;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: 0.08em;
  transition: all .3s ease;
}

.brand-product-section__more-btn:hover,
.brand-feature__more-btn:hover,
#brand_staff_more:hover,
.brand-more a:hover {
  background: #222;
  color: #fff;
}

.brand-ranking__tabs {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin: 32px 0 40px;
  flex-wrap: wrap;
}

.brand-ranking__tab {
  height: 40px;
  padding: 0 20px;
  border: 1px solid #EBEBEB;
  border-radius: 30px;
  background: #fff;
  color: #222;
  font-size: 13px;
  cursor: pointer;
  transition: .3s;
}

.brand-ranking__tab.is-active {
  background: #EBEBEB;
  color: #222;
  border-color: #EBEBEB;
}

.brand-ranking__panel {
  display: none;
}

.brand-ranking__panel.is-active {
  display: block;
}

@media screen and (max-width: 768px) {
  /* .brand-product-swiper-wrap {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden;
  }

  .brand-product-swiper-wrap .swiper {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible;
  }

  .brand-product-swiper-wrap .swiper-wrapper {
    justify-content: flex-start !important;
  }

  .brand-product-swiper-wrap .swiper-slide {
    width: 156px !important;
    flex: 0 0 156px;
  }

  .brand-product-swiper__arrow {
    display: none !important;
  } */
  .brand-product-swiper-wrap {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden;
  }

  .brand-product-swiper-wrap .swiper {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible;
  }

  .brand-product-swiper-wrap .swiper-wrapper {
    justify-content: flex-start !important;
  }

  .brand-product-swiper-wrap .swiper-slide {
    width: 156px !important;
    flex: 0 0 156px;
  }

  .brand-product-swiper__arrow {
    display: none !important;
  }
}

/* Brand feature */

.brand-feature {
  padding: 90px 20px 0;
}

.brand-feature__inner {
  max-width: 1080px;
  margin: 0 auto;
}

.brand-feature__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.brand-feature__card {
  color: inherit;
  text-decoration: none;
}

.brand-feature__image {
  aspect-ratio: 255 / 255;
  background: #eee;
  overflow: hidden;
}

.brand-feature__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity .3s ease;
}

.brand-feature__card:hover .brand-feature__image img {
  opacity: .6;
}

.brand-feature__image span {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  letter-spacing: .08em;
}

.brand-feature__title {
  margin: 12px 0 0;
  font-size: 13px;
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .brand-feature__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 12px;
  }
}

/* Brand common sections */

.brand-category,
.brand-staff {
  padding: 86px 20px 0;
}
.brand-news {
  padding: 86px 20px;
}
.brand-live {
  padding: 86px 20px 0;
}

.brand-category__inner,
.brand-staff__inner,
.brand-news__inner,
.brand-live__inner,
.brand-sns__inner {
  max-width: 1080px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .brand-top-v2 {
    width: 100%;
    overflow: hidden;
  }

  .brand-top-v2 .swiper,
  .brand-top-v2 .swiper-wrapper {
    max-width: 100%;
  }

  .brand-top-v2 .swiper-slide {
    box-sizing: border-box;
  }
}

/* Category */

/* Brand category */

.brand-category {
  padding: 90px 20px 0;
}

.brand-category__inner {
  max-width: 1080px;
  margin: 0 auto;
}

.brand-category__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px 20px;
}

.brand-category__link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: inherit;
  text-decoration: none;
  font-size: 12px;
  letter-spacing: .04em;
}

.brand-category__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #f6f6f6;
  border-radius: 50%;
  padding: 8px;
  box-sizing: border-box;
}

.brand-category__icon img {
  display: block;
  width: 100%;
  height: auto;
}

.brand-category__text {
  line-height: 1.4;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .brand-category__list {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px 8px;
  }

  .brand-category__link {
    width: auto !important;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .brand-category__icon {
    flex-shrink: 0;
  }

  .brand-category__icon img {
    width: auto;
    height: auto;
    max-width: none;
  }

  .brand-category__text {
    font-size: 10px;
    line-height: 1.4;
  }
}

/* Staff */

.brand-staff-styling {
  max-width: 1080px;
  margin: 60px auto 0;
  padding: 0 20px;
}

.brand-staff-tabs {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
  position: relative;
}

.brand-staff-tabs::after {
  content: "";
  width: 100%;
  height: 2px;
  background: #f6f6f6;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.brand-staff-tabs li {
  margin: 0;
}

.brand-staff-tab {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 8px 4px;
  font-size: 15px;
  cursor: pointer;
}

.brand-staff-tab.is-active {
  border-bottom-color: #000;
}

.brand-staff-panel {
  display: none;
}

.brand-staff-panel.is-show {
  display: block;
}

.brand-staff-list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}

.brand-staff-item a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.brand-staff-thumb {
  position: relative;
}

.brand-staff-thumb img {
  width: 100%;
  display: block;
}

.brand-staff-info {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 14px;
}

.brand-staff-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.brand-staff-meta {
  min-width: 0;
}

.brand-staff-name {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 700;
}

.brand-staff-height {
  margin: 0 0 3px;
  font-size: 13px;
  line-height: 1.3;
}

.brand-staff-shop {
  margin: 0;
  font-size: 12px;
  line-height: 1.3;
  color: #777;
}

.brand-staff-play {
  display: none;
  /*
    position: absolute;
    top: 6px;
    right: 6px;
    width: 28px;
    height: 28px;
    background: rgba(255,255,255,.85);
    border-radius: 50%;
  */
}

@media screen and (max-width: 768px) {
  .brand-staff-list {
    display: flex;
    overflow-x: auto;
    gap: 10px;
    padding-bottom: 10px;
  }

  .brand-staff-item {
    width: 135px;
    flex: 0 0 auto;
  }

  .brand-staff-tabs {
    gap: 20px;
  }
}

/* Staff Ranking */

.brand-staff-ranking {
  max-width: 1080px;
  margin: 60px auto 0;
  padding: 0 20px;
}

.brand-staff-ranking-item a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.brand-staff-ranking-image {
  position: relative;
}

.brand-staff-ranking-image img {
  width: 111px;
  height: 111px;
  display: block;
  border-radius: 50%;
  object-fit: cover;
}

.brand-staff-ranking-meta {
  margin-top: 8px;
  text-align: left;
}

.brand-top-v2 .js-brand-staff-ranking-swiper .swiper-slide {
  width: 111px !important;
}

.brand-top-v2 .brand-staff-ranking-image img {
  width: 111px;
  height: 111px;
}

@media screen and (max-width: 768px) {
  .brand-staff-styling .brand-product-swiper-wrap {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden;
  }

  .brand-staff-styling .brand-product-swiper {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible;
  }

  .brand-staff-styling .swiper-wrapper {
    justify-content: flex-start !important;
  }

  .brand-staff-styling .swiper-slide {
    width: 108px !important;
    flex: 0 0 108px;
  }

  .brand-staff-styling .brand-product-swiper__arrow {
    display: none !important;
  }

  .brand-staff-styling .swiper-slide,
  .brand-staff-styling .brand-staff-item,
  .brand-staff-styling .brand-staff-item a {
    width: 108px !important;
    max-width: 108px !important;
  }

  .brand-staff-styling .brand-staff-thumb,
  .brand-staff-styling .brand-staff-thumb img {
    width: 108px !important;
    max-width: 108px !important;
  }

  .brand-staff-styling .brand-staff-thumb img {
    height: auto;
    display: block;
  }

  .brand-staff-styling .brand-staff-info {
    width: 108px !important;
    max-width: 108px !important;
  }

  .brand-staff-name,
  .brand-staff-shop {
    word-break: break-word;
    overflow-wrap: anywhere;
  }
}

/* News */

.brand-news {
  max-width: 1080px;
  margin: 60px auto;
  padding: 0;
}

.brand-news__tabs {
  display: flex;
  justify-content: center;
  gap: 32px;
  margin: 0 0 24px;
  position: relative;
}

.brand-news__tabs::after {
  content: "";
  width: 100%;
  height: 2px;
  background: #f6f6f6;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.brand-news__tab {
  border: none;
  border-bottom: 2px solid transparent;
  background: none;
  padding: 8px 4px;
  font-size: 15px;
  cursor: pointer;
}

.brand-news__tab.is-active {
  border-bottom-color: #000;
}

.brand-news__panel {
  display: none;
}

.brand-news__panel.is-active {
  display: block;
}

.brand-news-swiper .swiper-slide {
  width: 235px;
}

.brand-news-card {
  display: block;
  width: 235px;
  color: inherit;
  text-decoration: none;
}

.brand-news-card__content {
  margin-top: 5px;
}

.brand-news-card__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 50px;
  min-height: 17px;
  padding: 3px 10px;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .05em;
  background: #EBEBEB;
}

.brand-news-card__title {
  margin: 5px 0 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: .04em;
}

.brand-news-card__image {
  width: 235px;
  height: 235px;
  display: block;
  object-fit: cover;
}

.brand-news-card__image--noimage {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eee;
  overflow: hidden;
}

.brand-news-card__image--noimage span {
  padding: 12px;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.brand-news-slider-wrap {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}

.brand-news-swiper {
  overflow: hidden;
}

.brand-news-swiper .swiper-wrapper {
  align-items: stretch;
}

.brand-news-swiper .swiper-slide {
  height: auto;
}

.brand-news-card {
  display: block;
}

.brand-news-card__image {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}

.brand-news-swiper-arrow {
  position: absolute;
  top: 50%;
  width: 36px;
  height: 36px;
  border: 0;
  background: #ebebeb;
  opacity: .8;
  border-radius: 50%;
  cursor: pointer;
  z-index: 2;
  transform: translateY(-50%);
}

.brand-news-swiper__prev::before,
.brand-news-swiper__next::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  margin: auto;
  border-top: 2px solid #909090;
  border-right: 2px solid #909090;
  position: absolute;
  top: calc(50% - 5px);
  left: calc(50% - 5px);
}

.brand-news-swiper__prev::after,
.brand-news-swiper__next::after {
  content: none;
}

.brand-news-swiper__prev {
  left: -40px;
}

.brand-news-swiper__next {
  right: -40px;
}

.brand-news-swiper__prev::before {
  transform: rotate(-135deg);
}

.brand-news-swiper__next::before {
  transform: rotate(45deg);
}

@media screen and (max-width: 768px) {
  .brand-news {
    padding: 0 5%;
  }

  .brand-news-card__content {
    margin-top: 10px;
  }

  .brand-news-card__label {
    min-width: 42px;
    min-height: 17px;
    padding: 2px 10px;
    font-size: 11px;
  }

  .brand-news-card__title {
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.6;
  }

  .brand-news-slider-wrap {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    overflow: hidden;
  }

  .brand-news-swiper {
    overflow: visible;
  }

  .brand-news-swiper .swiper-wrapper {
    justify-content: flex-start !important;
  }

  .brand-news-swiper-arrow {
    display: none !important;
  }

  .brand-news-card {
    width: 100% !important;
  }

  .brand-news-card__image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
  }
}

/* Live */

.brand-live-slider-wrap {
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
}

.brand-live-card {
  display: block;
}

.brand-live-card__image {
  display: block;
  width: 344px;
  height: 344px;
  object-fit: cover;
}

@media screen and (min-width: 769px) {
  .brand-live__list .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 344px);
    gap: 24px;
    justify-content: center;
    transform: none !important;
  }

  .brand-live__list .swiper-slide {
    width: 344px !important;
    margin-right: 0 !important;
  }

  .brand-live__arrow {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .brand-live {
    padding: 86px 0;
  }

  .brand-live-slider-wrap {
    padding: 0 44px;
  }

  .brand-live__list {
    overflow: hidden;
  }

  .brand-live-card,
  .brand-live-card__image {
    width: 100% !important;
  }

  .brand-live-card__image {
    height: auto !important;
    aspect-ratio: 344 / 195;
  }

  .brand-live__arrow {
    display: block !important;
    width: 32px;
    height: 32px;
    border: none;
    background: #ebebeb;
    border-radius: 50%;
    opacity: .8;
    position: absolute;
    top: 50%;
    z-index: 10;
    transform: translateY(-50%);
    cursor: pointer;
  }

  .brand-live__arrow--prev {
    left: 8px;
  }

  .brand-live__arrow--next {
    right: 8px;
  }

  .brand-live__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-top: 2px solid #909090;
    border-right: 2px solid #909090;
  }

  .brand-live__arrow--prev::before {
    transform: translate(-35%, -50%) rotate(-135deg);
  }

  .brand-live__arrow--next::before {
    transform: translate(-65%, -50%) rotate(45deg);
  }
}

/* SNS */

.brand-footer-sns-area {
  position: relative;
  margin-top: 80px;
  padding: 0;
  background: transparent;
}

.brand-footer-sns-area::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -40px;
  right: 0;
  bottom: 140px;
  left: 0;
  background: #f5f5f5;
}

.brand-footer-sns-area__inner {
  position: relative;
  z-index: 1;
  width: 90%;
  max-width: 1080px;
  margin: 0 auto;
  transform: none;
}

.brand-footer-sns-area + .footer-custom-common {
  padding-top: 20px;
}

@media screen and (max-width: 768px) {
  .brand-footer-sns-area {
    margin-top: 40px;
    padding: 150px 0 0;
  }

  .brand-footer-sns-area::before {
    bottom: 200px;
  }

  .brand-footer-sns-area + .footer-custom-common {
    padding-top: 16px;
  }
}

.brand-sns {
  position: relative;
  margin-top: -164px;
  z-index: 2;
  background: #fff;
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}

.brand-sns__inner {
  max-width: 1140px;
  margin: 0 auto;
  background: #fff;
  padding: 48px 40px 40px;
}

.brand-sns__account {
  text-align: center;
}

.brand-sns__logo img {
  max-width: 150px;
  height: auto;
}

.brand-sns__title {
  margin-top: 0;
  font-weight: 700;
}

.brand-sns__links {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 20px;
}

.brand-sns__brand-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-top: 0;
  padding-top: 36px;
}

.brand-sns__brand-heading {
  font-size: 24px;
  letter-spacing: 0.12em;
}

.brand-sns__brand-links {
  display: flex;
  align-items: center;
  gap: 40px;
  border-left: 1px solid #D9D9D9;
  padding: 0 0 0 40px;
}

/* Brand footer */

.brand-footer {
  margin-top: 100px;
  padding: 56px 20px;
  background: #f4f1ec;
  text-align: center;
}

.brand-footer__logo {
  margin: 0;
  font-size: 28px;
  letter-spacing: 0.08em;
}

.brand-footer__copy {
  margin: 18px 0 0;
  font-size: 12px;
}

@media screen and (max-width: 768px) {
  .brand-staff__list {
    grid-template-columns: repeat(2, 1fr);
  }

  .brand-news__item {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .brand-sns__inner {
    padding: 40px 5% 0;
  }
  .brand-sns__brand-heading {
    position: relative;
  }
  .brand-sns__brand-heading::after {
    content: "";
    width: 40px;
    height: 1px;
    background: #D9D9D9;
    position: absolute;
    bottom: -10px;
    left: calc(50% - 20px);
  }

  .brand-sns__list {
    flex-direction: column;
  }

  .brand-sns__brand-list {
    flex-direction: column;
  }

  .brand-sns__brand-links {
    flex-wrap: wrap;
    border: none;
    padding: 0;
    justify-content: center;
    gap: 0 40px;
  }
}

@media screen and (max-width: 768px) {
  .brand-staff-ranking .brand-product-swiper-wrap {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden;
  }

  .brand-staff-ranking .brand-product-swiper {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible;
  }

  .brand-staff-ranking .swiper-wrapper {
    justify-content: flex-start !important;
  }

  .brand-staff-ranking .swiper-slide,
  .brand-staff-ranking .brand-staff-ranking-item,
  .brand-staff-ranking .brand-staff-ranking-item a,
  .brand-staff-ranking .brand-staff-ranking-image,
  .brand-staff-ranking .brand-staff-ranking-image img,
  .brand-staff-ranking .brand-staff-ranking-meta {
    width: 80px !important;
    max-width: 80px !important;
  }

  .brand-staff-ranking .swiper-slide {
    flex: 0 0 80px;
  }

  .brand-staff-ranking .brand-staff-ranking-image img {
    height: 80px !important;
    object-fit: cover;
  }

  .brand-staff-ranking .brand-product-swiper__arrow {
    display: none !important;
  }
}

/*
  ==============================
  Recently Viewed / Checked Item
  ==============================
*/

@media screen and (max-width: 768px) {
  .recently-viewed__wrapper,
  .recently-viewed__container {
    width: 100%;
    overflow: hidden;
  }

  .recently-viewed__slider,
  .recently-viewed__grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 91.6% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 0 12px 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    transform: none !important;
    scroll-padding-left: 5%;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .recently-viewed__slider::-webkit-scrollbar,
  .recently-viewed__grid::-webkit-scrollbar {
    display: none;
  }

  .recently-viewed__card {
    flex: 0 0 104px !important;
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
    scroll-snap-align: start;
  }

  .recently-viewed__card img {
    display: block;
    width: 104px !important;
    height: 125px !important;
    object-fit: cover;
  }

  .recently-viewed__card:not(:last-child) {
    margin-right: 0 !important;
  }
}

/* 新着商品一覧 */

.collection {
  margin: 0 auto 120px !important;
}

.collection-product-card__thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 8px 0;
  position: relative;
  z-index: 3;
}

.collection-product-card__thumb {
  width: 32px;
  height: 38px;
  object-fit: cover;
  border: 1px solid #EBEBEB;
  flex-shrink: 0;
  position: relative;
  z-index: 4;
  cursor: pointer;
}

.collection-product-card__thumb.is-active {
  border-color: #222;
}

[data-new-arrival-card]:hover .media.media--hover-effect > img:first-child:not(:only-child),
[data-new-arrival-card] .media.media--hover-effect:hover > img:first-child:not(:only-child) {
  opacity: 1 !important;
  transform: none !important;
}

[data-new-arrival-card]:hover .media.media--hover-effect > img + img,
[data-new-arrival-card] .media.media--hover-effect:hover > img + img {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: none !important;
}

@media screen and (min-width: 769px) {
  .new-arrival-grid {
    width: 1080px;
    max-width: 1080px;
    margin: 0 auto;
    --grid-desktop-horizontal-spacing: 20px;
    --grid-desktop-vertical-spacing: 20px;
  }

  .new-arrival-grid > .grid__item {
    padding-left: 0;
    width: 200px !important;
    max-width: 200px !important;
    flex: 0 0 200px !important;
  }
}

/* 新着商品一覧：カード内余白調整 */

.new-arrival-grid .card__information {
  padding-top: 0;
}

.new-arrival-grid .collection-product-card__thumbs {
  margin-bottom: 10px;
}

.new-arrival-grid .card__heading {
  margin: 0 0 6px;
  font-size: 13px;
  line-height: 1.5;
}

.new-arrival-grid .price {
  margin-top: 0;
  font-size: 14px;
}

.new-arrival-grid .primeBadges {
  margin-top: 8px;
}

.new-arrival-grid .collection-product-card__review {
  margin-top: 8px;
}

/* judgeme変更 */

.collection-product-card__review .jdgm-star {
  color: #EEC715 !important;
}

.collection-product-card__review .jdgm-prev-badge__text {
  font-size: 10px;
}

.collection-product-card__review .jdgm-prev-badge__stars {
  font-size: 10px !important;
}

.collection-product-card__review .jdgm-prev-badge__text {
  margin-left: 4px;
}

/* 新着商品一覧：PCフィルター */

@media screen and (min-width: 769px) {
  .facets__form {
    gap: 20px !important;
  }

  .facets__summary {
    font-size: 14px;
  }

  .facets__display {
    border: 1px solid #e5e5e5;
  }

  .facets__list {
    padding: 16px;
  }

  .facets__heading {
    font-size: 1.2rem !important;
  }

  .facets__disclosure {
    margin-right: 20px !important;
  }
}

.collection-hero__text-wrapper {
  border-bottom: 1px solid #ebebeb;
}

/*
  ==============================
  ブランド別ヘッダー
  ==============================
*/

#mattrz-cx-campaign-element-campaign-87290,
#mattrz-cx-campaign-element-campaign-87591 {
  display: none !important;
}

/* 共通ヘッダー側：ブランドページではMIND WINDロゴ帯だけにする */

.header--brand {
  background: #f6f6f6;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.header--brand header-drawer,
.header--brand .header__icons {
  display: none;
}

/* ブランドヘッダー本体 */

.brand-site-header {
  position: relative;
  z-index: 10000;
  background: #fff;
  margin-top: 0;
  padding: 10px 0 10px;
  border-bottom: 1px solid #E5E5E5;
}

.brand-site-header__inner {
  max-width: none !important;
  padding: 0 3.2rem !important;
}
@media screen and (max-width: 768px) {
  .brand-site-header__inner {
    padding: 0 !important;
  }
}
.brand-site-header__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* max-width: 1080px; */
  margin: 0 auto;
}

.brand-site-header__left {
  display: flex;
  align-items: center;
  gap: 28px;
}

.brand-site-header__left header-drawer {
  display: block;
  margin-left: 0;
}

.brand-site-header__logo {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

.brand-site-header__logo-image {
  display: block;
  width: auto;
  max-height: 50px;
}

.brand-site-header__text {
  margin: 0;
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: 0.03em;
  color: #111;
  white-space: nowrap;
}

/* アイコン */

.brand-site-header__icons {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.brand-site-header__icons .header__icon {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  min-width: 48px;
  height: auto;
  padding: 0;
  gap: 0;
  color: #111;
  text-decoration: none;
}

.brand-site-header__icons .header__icon > .svg-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  width: 24px !important;
  height: 24px !important;
}

.brand-site-header__icons .header__icon > .svg-wrapper svg,
.brand-site-header__icons .header__icon > .svg-wrapper > span,
.brand-site-header__icons .header__icon > .svg-wrapper > span svg {
  display: block;
  width: 24px !important;
  height: 24px !important;
}

.brand-site-header__icon-label {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.2;
  color: #111;
  white-space: nowrap;
}

/* Swymお気に入りアイコン調整 */

.brand-site-header__wishlist {
  bottom: auto !important;
  position: static !important;
}

.brand-site-header__wishlist .swym-header-launcher-icon,
.brand-site-header__wishlist-icon {
  top: auto !important;
  position: static !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ブランドナビ */

.brand-site-header__nav {
  margin-top: 15px;
}

.brand-site-header__nav-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 46px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.brand-site-header__nav-item a,
.brand-site-header__nav-button {
  display: inline-block;
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #111;
  text-decoration: none;
  cursor: pointer;
}

.brand-site-header__nav-item a:hover,
.brand-site-header__nav-button:hover {
  opacity: 0.7;
}

.brand-site-header__nav-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  color: #111;
  cursor: pointer;
}

.brand-site-header__nav-button::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transform-origin: center;
  transition: transform .25s ease;
}

/* Staff Start系ページではブランドヘッダーのMINDWINDロゴを中央に戻す */
.header--staffstart-default.header--brand {
  display: grid;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center;
}

.header--staffstart-default.header--brand .header__heading,
.header--staffstart-default.header--brand .header__heading-link {
  grid-column: 2 !important;
  justify-self: center !important;
  margin: 0 !important;
}

.header--staffstart-default.header--brand .header__heading-logo-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}

/*
  .brand-site-header__nav-item--mega.is-open
  .brand-site-header__nav-button::after {
  transform: rotate(-135deg) translateY(2px);
  }
*/

/* メガメニュー */

.brand-site-header__nav-item--mega {
  position: static;
}

.brand-site-header__mega {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 9999;
  background: rgba(255, 255, 255, 0.94);
  border-top: 0;
  padding: 0 0 20px;
  box-shadow: 0 24px 40px rgba(0, 0, 0, 0.08);
  backdrop-filter: blur(2px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-8px);
  transition: opacity 0.25s ease,
    transform 0.25s ease,
    visibility 0.25s ease;
}

.brand-site-header__nav-item--mega.is-open .brand-site-header__mega {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.brand-site-header__mega-inner {
  padding-top: 28px;
  padding-bottom: 34px;
}

.brand-site-header__category-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 30px;
  column-gap: 50px;
  max-width: 1080px;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity 0.25s ease 0.05s,
    transform 0.25s ease 0.05s;
}

.brand-site-header__nav-item--mega.is-open .brand-site-header__category-list {
  opacity: 1;
  transform: translateY(0);
}

.brand-site-header__category-list a {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #111;
  text-decoration: none;
  font-size: 14px;
}

.brand-site-header__category-list span {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #f5f5f5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.brand-site-header__category-icon img {
  display: block;
  max-width: 46px;
  max-height: 46px;
  width: auto;
  height: auto;
}

/* 重なり順対策 */

.section-header,
.header-wrapper {
  z-index: 10000;
}

.section-header {
  position: sticky;
}

/* カラバリサムネがヘッダーより上に出る対策 */

body:has(.brand-site-header__nav-item--mega.is-open) .collection-product-card__thumbs,
body:has(.custom-search-panel.is-open) .collection-product-card__thumbs,
body:has(header-drawer details[open]) .collection-product-card__thumbs {
  z-index: 0;
}

body:has(.brand-site-header__nav-item--mega.is-open) .collection-product-card__thumb,
body:has(.custom-search-panel.is-open) .collection-product-card__thumb,
body:has(header-drawer details[open]) .collection-product-card__thumb {
  z-index: 1;
}

/* 固定ヘッダー中はサムネを落としすぎない */

body:has(.shopify-section-header-sticky) .collection-product-card__thumbs {
  z-index: 1 !important;
}

body:has(.shopify-section-header-sticky) .collection-product-card__thumb {
  z-index: 2 !important;
}

.collection-product-card__thumbs,
.collection-product-card__thumb {
  pointer-events: auto;
}

.collection-product-card__thumbs {
  position: relative;
  z-index: 20;
  pointer-events: auto;
}

.collection-product-card__thumb {
  position: relative;
  z-index: 21;
  pointer-events: auto;
}

/* カード全体リンクが上に被る場合の対策 */

.card-wrapper .full-unstyled-link,
.card__heading a,
.card > a {
  position: relative;
  z-index: 1;
}

.card .card__inner .card__media {
  z-index: 1 !important;
}

/* スクロール後はブランドページのMINDWINDロゴ帯を閉じる */

.section-header .header--brand {
  max-height: 100px;
  opacity: 1;
  overflow: hidden;
  transition: max-height 0.25s ease,
    opacity 0.2s ease,
    padding 0.25s ease;
}

.section-header.scrolled-past-header .header--brand {
  max-height: 0;
  min-height: 0;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 0;
  pointer-events: none;
}


/* MINDWINDロゴ帯が消えた後の余白も詰める */

.section-header.scrolled-past-header .brand-site-header {
  margin-top: 0;
}

/*
  ==============================
  ブランド別ヘッダー SP
  ==============================
*/

@media screen and (max-width: 768px) {
  .header--brand {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  .header__icon .svg-wrapper {
    width: 44px;
    height: 32px !important;
  }

  .brand-site-header {
    margin-top: 0;
    padding: 3px 0 5px;
  }

  .brand-site-header__inner {
    padding: 10px 12px;
  }

  .brand-site-header__main {
    display: grid;
    align-items: center;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    gap: 8px;
    max-width: none;
  }

  .brand-site-header__left {
    display: contents;
  }

  .brand-site-header__left header-drawer {
    display: block;
    grid-column: 1;
    margin: 0;
  }

  .brand-site-header__logo {
    grid-column: 2;
    justify-self: start;
  }

  .brand-site-header__logo-image {
    max-height: 30px;
  }

  .brand-site-header__text {
    display: none;
  }

  .brand-site-header__icons {
    gap: 0;
    margin: 0 15px 0 0;
  }

  .brand-site-header__icons .header__icon {
    width: 40px;
    min-width: 40px;
  }

  .brand-site-header__icons .svg-wrapper {
    width: 22px;
    height: 22px;
  }

  .brand-site-header__icon-label {
    font-size: 9px;
    transform: scale(0.9);
    transform-origin: center top;
    white-space: nowrap;
  }

  .brand-site-header__logo {
    min-width: 0;
  }

  .brand-site-header__logo-image {
    max-width: 105px;
  }

  .brand-site-header__icon-label {
    display: none !important;
  }

  .brand-site-header__nav {
    display: none;
  }

  .collection.page-width,
  .collection-hero.page-width,
  .collection-hero__inner.page-width {
    padding-left: 5%;
    padding-right: 5%;
  }

  .facets-container {
    padding: 0 5% 10px !important;
  }
  .facets-container {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    align-items: center !important;
    gap: 12px 16px !important;
    width: 100% !important;
  }

  .mobile-facets__wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: auto !important;
    margin: 0 !important;
  }

  .mobile-facets__open-wrapper {
    display: block !important;
  }

  .mobile-facets__open {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 118px !important;
    min-width: 118px !important;
    height: 30px !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 1px solid #111 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #111 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }

  .mobile-facets__open .svg-wrapper {
    width: 13px !important;
    height: 13px !important;
    margin-right: 5px !important;
  }

  .mobile-facets__open .svg-wrapper svg {
    width: 13px !important;
    height: 13px !important;
  }

  .mobile-facets__open-label {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  .brand-mobile-sort {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    width: auto !important;
    min-width: 0 !important;
  }

  .brand-mobile-sort__form {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    width: auto !important;
    margin-bottom: 0;
  }

  .brand-mobile-sort__label {
    flex: 0 0 auto !important;
    margin: 0 !important;
    color: #333 !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .brand-mobile-sort__select {
    position: relative !important;
    width: 104px !important;
    min-width: 104px !important;
    height: 30px !important;
  }

  .brand-mobile-sort__select::before,
  .brand-mobile-sort__select::after {
    display: none !important;
  }

  .brand-mobile-sort__select .select__select {
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 0 28px 0 10px !important;
    border: 1px solid #d5d5d5 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    color: #333 !important;
    font-size: 11px !important;
    line-height: 30px !important;
  }

  .brand-mobile-sort__select .svg-wrapper {
    position: absolute !important;
    top: 50% !important;
    right: 8px !important;
    width: 10px !important;
    height: 6px !important;
    transform: translateY(-50%) !important;
    pointer-events: none !important;
  }

  .brand-mobile-sort__select .svg-wrapper svg {
    width: 10px !important;
    height: 6px !important;
  }

  .facets-container > .product-count {
    grid-column: 1 / -1 !important;
    /* grid-row: 2 !important; */
    justify-self: end !important;
    width: auto !important;
    margin: 0 !important;
  }

  .facets-container > .product-count .product-count__text {
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  .active-facets-mobile {
    grid-column: 1 / -1 !important;
  }

  .active-facets {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    justify-content: flex-start !important;
    gap: 10px 12px !important;
    width: 100%;
    margin: 0 !important;
  }

  /* タグ1個ずつ */
  .active-facets .active-facets__button {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .active-facets .active-facets__button-inner {
    display: inline-flex;
    align-items: center;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 7px 14px !important;
    line-height: 1.2;
    white-space: nowrap;
  }

  /* 「すべてを削除する」だけ次の行へ */
  .active-facets .active-facets__button-wrapper {
    flex: 0 0 100%;
    width: 100%;
    margin: 2px 0 0 !important;
  }

  .active-facets .active-facets__button-remove {
    display: inline-block;
    margin: 0 !important;
  }

  /* 商品件数をタグと重ならない位置へ */
  .product-count {
    position: static !important;
    width: 100%;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    text-align: right;
  }

  .product-count__text {
    margin: 0 !important;
    line-height: 1.4;
    white-space: nowrap;
  }
}

/*
  ==============================
  Brand Drawer
  ==============================
*/

.menu-drawer__navigation {
  padding: 0 0 3rem 0 !important;
}

.brand-drawer {
  padding: 20px 20px 40px;
  background: #fff;
  color: #111;
}

.brand-drawer a {
  color: inherit;
  text-decoration: none;
}

.brand-drawer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Member */

.brand-drawer-member {
  margin-bottom: 26px;
}

.brand-drawer-member__register {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  border: 1px solid #111;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
}

.brand-drawer-member__links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 14px;
}
.brand-drawer-member__links--login {
  grid-template-columns: repeat(3, 1fr);
}

.brand-drawer-member__links a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 8px;
  border-right: 1px solid #ddd;
  font-size: 12px;
  line-height: 1.4;
}

.brand-drawer-member__links a:last-child {
  border-right: 0;
}

.brand-drawer-member__links .svg-wrapper,
.brand-drawer-member__links svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.brand-drawer-member__status {
  margin-bottom: 16px;
  display: flex;
  justify-content: space-between;
}

.brand-drawer-member__name {
  margin: 0 0 6px;
  font-size: 13px;
  font-weight: 700;
}

.brand-drawer-member__point {
  margin: 0;
  font-size: 12px;
}

.brand-drawer-member__point span {
  font-size: 11px;
  font-weight: 500;
}

/* Search */

.brand-drawer__search {
  position: relative;
  margin: 0;
  padding-bottom: 24px;
}

.brand-drawer__search-input {
  width: 100%;
  height: 40px;
  margin: 0 !important;
  padding: 0 36px 0 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #111 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 13px;
}

.brand-drawer__search-input:focus {
  outline: none;
  box-shadow: none !important;
}

.brand-drawer__search-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 32px;
  height: 40px;
  padding: 0;
  border: 0;
  background: transparent;
}

.brand-drawer__search-button svg {
  width: 18px;
  height: 18px;
}

/* Category / Details */

.brand-drawer-category,
.brand-drawer__guide,
.brand-drawer__nav {
  border-top: 0;
}

.brand-drawer-category__details,
.brand-drawer__details {
  border-bottom: 0;
}

.brand-drawer-category__summary,
.brand-drawer__summary,
.brand-drawer-category__child > summary {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 0 28px 0 0;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.brand-drawer-category__summary::-webkit-details-marker,
.brand-drawer__summary::-webkit-details-marker,
.brand-drawer-category__child > summary::-webkit-details-marker {
  display: none;
}

.brand-drawer-category__summary::after,
.brand-drawer__summary::after,
.brand-drawer-category__child > summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 2px;
  border: 0;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-50%);
}

.brand-drawer-category__details[open] > .brand-drawer-category__summary::after,
.brand-drawer__details[open] > .brand-drawer__summary::after,
.brand-drawer-category__child[open] > summary::after {
  content: "−";
}

.brand-drawer-category__list a,
.brand-drawer-category__child summary,
.brand-drawer__nav a,
.brand-drawer__details a {
  display: block;
  padding: 13px 22px 13px 0;
  font-size: 13px;
  line-height: 1.5;
}

.brand-drawer-category__child ul {
  padding: 0 0 8px 14px;
}

.brand-drawer-category__child ul a,
.brand-drawer__details a {
  position: relative;
  color: #555;
  font-size: 12px;
}

.brand-drawer-category__child ul a::after,
.brand-drawer-category__link::after,
.brand-drawer__nav a::after,
.brand-drawer__details a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 4px;
  width: 7px;
  height: 7px;
  border-right: 1px solid #111;
  border-bottom: 1px solid #111;
  transform: translateY(-50%) rotate(-45deg);
}
.brand-drawer-category__child ul .blank a::after,
.brand-drawer-category__link::after,
.brand-drawer__nav .blank a::after,
.brand-drawer__details .blank a::after {
  content: "";
  position: absolute;
  right: 4px;
  top: calc(50% - 6px);
  mask-image: url("//mindwind.tokyo/cdn/shop/t/113/assets/ico_blank.svg?v=5220418308017030931787143208");
  mask-repeat: no-repeat;
  mask-size: contain;
  background-color: #333;
  width: 12px;
  height: 12px;
  transform: translateY(0) rotate(0deg);
}

.brand-drawer-category__link,
.brand-drawer__nav a {
  position: relative;
  font-weight: 700;
}

/* 大項目「カテゴリ」自体には下線なし */

.brand-drawer-category__summary {
  border-bottom: 0;
}

/* 第2階層：全ての商品を見る / アウター / トップス などには下線あり */

.brand-drawer-category__list > li {
  border-bottom: 1px solid #e5e5e5;
}

/* 第3階層：小カテゴリには下線なし */

.brand-drawer-category__child ul li {
  border-bottom: 0;
}

.brand-drawer-category__child ul a {
  border-bottom: 0;
}

/* 念のため、子リストの最後側で余計な線が出る場合の保険 */

.brand-drawer-category__child ul {
  border-top: 0;
  border-bottom: 0;
}

.brand-drawer__nav {
  margin: 18px 0 22px;
}

/*
  ==============================
  Brand Drawer Sections
  ==============================
*/

.brand-drawer__section {
  padding: 18px 0;
}

.brand-drawer__section {
  position: relative;
}

.brand-drawer__section::before {
  content: "";
  position: absolute;
  top: 0;
  left: -20px;
  right: -20px;
  height: 3px;
  background: #eee;
}

.brand-drawer__section--main::before {
  content: none;
}

.brand-drawer__section--main {
  border-top: 0;
  padding-top: 0;
}

.brand-drawer__section-title {
  margin: 0 0 15px;
  padding: 0;
  font-size: 12px;
  font-weight: 700;
  color: #222;
}

.brand-drawer__section--app {
  padding: 24px 0 30px;
}

/* App banner */

.brand-drawer-app {
  padding: 0 38px;
}

.brand-drawer-app__link {
  display: block;
}

.brand-drawer-app__link img {
  display: block;
  width: 100%;
  height: auto;
}

/* brand sub menu */

.brand-drawer__subnav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.brand-drawer__subnav a {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 0 20px 0 32px;
  border-top: 1px solid #eee;
  font-size: 12px;
  color: #222;
  text-decoration: none;
}

/* Open drawer header icons */

@media screen and (max-width: 768px) {
  body:has(#Details-menu-drawer-container[open]) .brand-site-header__icons {
    display: none;
  }

  body:has(#Details-menu-drawer-container[open]) .brand-site-header__main {
    grid-template-columns: 34px 1fr;
  }
}

/*
  ==============================
  Brand Breadcrumb
  ==============================
*/

.brand-breadcrumb {
  max-width: 1080px;
  margin: 10px auto 32px;
  padding: 0;
  font-size: 12px;
  line-height: 1.6;
  color: #666;
}

.brand-breadcrumb__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.brand-breadcrumb__item {
  display: flex;
  align-items: center;
}

.brand-breadcrumb__item:not(:last-child)::after {
  content: ">";
  display: inline-block;
  margin: 0 8px;
  color: #999;
}

.brand-breadcrumb__item a {
  color: inherit;
  text-decoration: none;
}

.brand-breadcrumb__item[aria-current="page"] {
  color: #222;
}

.brand-breadcrumb__home-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.brand-breadcrumb__home-icon svg {
  width: 10px;
  height: 10px;
  display: block;
}

@media screen and (max-width: 768px) {
  .brand-breadcrumb {
    margin: 10px 5%;
    font-size: 11px;
  }
}

/*
  =========================================
  Brand Category Navigation
  =========================================
*/

.brand-category-nav {
  margin-top: 18px;
  padding-bottom: 18px;
}

.brand-category-nav__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 12px 28px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}

.brand-category-nav__list li {
  margin: 0;
  padding: 0;
}

.brand-category-nav__list a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #333;
  font-size: 14px;
  line-height: 1.8;
  text-decoration: none;
  transition: opacity .2s ease;
}

.brand-category-nav__list a::after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  transform: rotate(45deg);
  flex-shrink: 0;
  margin-top: 1px;
}

.brand-category-nav__list a:hover {
  opacity: .7;
}

@media screen and (max-width: 768px) {
  .brand-category-nav {
    width: 100%;
    margin-top: 16px;
    margin-bottom: 28px;
    padding-left: 0;
    padding-right: 0;
    overflow: hidden;
  }

  .brand-category-nav__list {
    justify-content: flex-start;
    gap: 0 20px;
    overflow-x: auto;
    padding: 0 0 8px;
    margin: 0;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .brand-category-nav__list::-webkit-scrollbar {
    display: none;
  }

  .brand-category-nav__list a {
    padding-bottom: 8px;
    font-size: 13px;
  }
}

/* お気に入りモーダル仮スタイル */

.card__quick-heart {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
}

.card__quick-heart-button {
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .9);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

/* 商品一覧：Quick Addボタン本体は非表示、モーダルだけ利用 */

.card-wrapper .quick-add {
  display: none;
}

/* 商品詳細：画像エリア調整 */

.product-brand-detail .product {
  display: grid;
  grid-template-columns: 480px 536px;
  gap: 64px !important;
  justify-content: center;
  align-items: start;
}

.product-brand-detail .product__media-wrapper,
.product-brand-detail .product__info-wrapper {
  width: auto !important;
  max-width: none !important;
  padding-left: 0 !important;
}

.product-brand-detail .product__media-list,
.product-brand-detail .product__media-item,
.product-brand-detail .product__modal-opener,
.product-brand-detail .product-media-container,
.product-brand-detail .product__media,
.product-brand-detail .product__media img {
  width: 100% !important;
  max-width: 100% !important;
}

.product-brand-detail .product__media-list {
  display: block;
  padding: 0;
  margin: 0 0 8px;
}

.product-brand-detail .product__media-item {
  padding: 0 !important;
}

.product-brand-detail .thumbnail-slider {
  display: block;
  margin-top: 8px;
}

.product-brand-detail .thumbnail-slider .slider-button {
  display: none !important;
}

.product-brand-detail .thumbnail-list,
.product-brand-detail .thumbnail-slider .thumbnail-list.slider,
.product-brand-detail .thumbnail-slider .thumbnail-list.slider--tablet-up {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible;
  scroll-padding-left: 0 !important;
  grid-template-columns: none !important;
}

.product-brand-detail .thumbnail-list__item,
.product-brand-detail .thumbnail-list__item.slider__slide,
.product-brand-detail .thumbnail-list.slider--tablet-up .thumbnail-list__item.slider__slide,
.product-brand-detail .product--small .thumbnail-list.slider--tablet-up .thumbnail-list__item.slider__slide {
  flex: 0 0 114px !important;
  width: 114px !important;
  max-width: 114px !important;
}

.product-brand-detail .thumbnail {
  width: 114px !important;
  height: 137px !important;
  min-height: 137px !important;
  padding: 0 !important;
  border: none;
  box-shadow: none;
}

.product-brand-detail .thumbnail[aria-current] {
  border: 1px solid #222;
  box-shadow: none;
}

.product-brand-detail .thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.product-brand-detail .thumbnail-list__item::before {
  content: none !important;
  display: none !important;
  padding-bottom: 0 !important;
}

.product-brand-detail .thumbnail-list__item,
.product-brand-detail .thumbnail-list__item.slider__slide {
  position: relative;
  height: 137px !important;
  flex: 0 0 114px !important;
  width: 114px !important;
  max-width: 114px !important;
}

.product-brand-detail .thumbnail {
  position: static !important;
  display: block;
  width: 114px !important;
  height: 137px !important;
  min-height: 137px !important;
}

/*
  ==============================
  sabstreet 商品詳細：商品情報 上部
  ==============================
*/

.product-brand-detail .product__info-container {
  max-width: 536px;
}

.product-brand-detail .brand-product-vendor {
  margin: 0 0 6px;
  font-size: 12px;
  line-height: 1.5;
  color: #555;
}

.product-brand-detail .brand-product-vendor__link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.product-brand-detail .product__title {
  margin: 0 0 8px;
}

.product-brand-detail .product__title h1 {
  margin: 0;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: .03em;
}

.product-brand-detail .product__title > a {
  display: none;
}

.product-brand-detail .jdgm-widget.jdgm-preview-badge {
  margin: 0 0 10px;
  font-size: 12px;
}

.product-brand-detail .price {
  margin: 0 0 18px;
}

.product-brand-detail .price__container {
  margin: 0;
}

.product-brand-detail .price .price-item {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .02em;
}

.product-brand-detail .price__badge-sale,
.product-brand-detail .price__badge-sold-out {
  display: none;
}

/* バリエーション見出し */

.product-brand-detail .product-form__input {
  margin: 0 0 16px;
}

.product-brand-detail .product-form__input .form__label {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.4;
  color: #555;
  text-transform: none;
}

/* カラー・サイズボタン */

.product-brand-detail .product-form__input input[type="radio"] + label {
  min-width: 56px;
  min-height: 28px;
  padding: 5px 14px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.3;
}

.product-brand-detail .product-form__input input[type="radio"]:checked + label {
  background: #000;
  color: #fff;
  border-color: #000;
}

/* 数量 */

.product-brand-detail .quantity {
  min-height: 36px;
  width: 112px;
}

.product-brand-detail .quantity__button {
  width: 34px;
}

.product-brand-detail .quantity__input {
  font-size: 13px;
}

/* カート・お気に入りボタン */

.product-brand-detail .product-form__buttons {
  max-width: 100%;
}

.product-brand-detail .product-form__submit {
  min-height: 42px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
}

/*
  ==============================
  sabstreet 商品詳細：カラー・サイズ選択
  ==============================
*/

.product-brand-detail .product-form__input {
  margin: 0 0 18px;
}

.product-brand-detail .product-form__input .form__label {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  color: #333;
}

.product-brand-detail .product-form__input--pill {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border: 0;
  padding: 0;
}

.product-brand-detail .product-form__input--pill .form__label {
  width: 100%;
}

/*
  ==============================
  sabstreet 商品詳細：バリエーション一覧
  ==============================
*/

.product-brand-detail .brand-variant-list {
  margin: 20px 0 28px;
  font-size: 12px;
}

.product-brand-detail .brand-color-group {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 20px;
  padding: 18px 0;
  border-bottom: 1px solid #e5e5e5;
}

.product-brand-detail .brand-color-group:first-child {
  border-top: 1px solid #e5e5e5;
}

.product-brand-detail .brand-color-group__color {
  padding: 0;
}

.product-brand-detail .brand-color-group__color img {
  display: block;
  width: 70px;
  height: 84px;
  object-fit: cover;
  margin: 0 0 6px;
}

.product-brand-detail .brand-color-group__color span {
  display: block;
  font-size: 12px;
  line-height: 1.4;
  color: #333;
}

.product-brand-detail .brand-color-group__sizes {
  border: 0;
}

.product-brand-detail .brand-size-row {
  display: grid;
  grid-template-columns: 70px 70px 90px 154px 28px;
  column-gap: 8px;
  align-items: center;
  min-height: 46px;
  padding: 8px 0;
}

.product-brand-detail .brand-size-row + .brand-size-row {
  border-top: 1px solid #e5e5e5;
}

.product-brand-detail .brand-size-row__size {
  font-size: 14px;
  font-weight: 400;
  color: #333;
  white-space: nowrap;
}

.product-brand-detail .brand-size-row__stock {
  font-size: 14px;
  color: #555;
  white-space: nowrap;
}

.product-brand-detail .brand-size-row__stock .is-low-stock {
  color: #d93636;
  font-weight: 700;
}

.product-brand-detail .brand-size-row__stock .is-soldout {
  color: #999;
}

.product-brand-detail .brand-size-row__price {
  color: #333;
  white-space: nowrap;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .02em;
}

.product-brand-detail .brand-size-row__cart-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 154px;
  height: 39px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: #111;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .03em;
  cursor: pointer;
  transition: opacity .2s;
}

.product-brand-detail .brand-size-row__cart-button:hover {
  opacity: .85;
}

.product-brand-detail .brand-size-row__cart-button.is-disabled {
  background: #ebebeb;
  color: #000;
  cursor: pointer;
}

.product-brand-detail .brand-size-row__cart-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.product-brand-detail .brand-size-row__cart-icon img {
  display: block;
  width: 16px;
  height: 16px;
}

.product-brand-detail .brand-size-row__favorite-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #111;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

.product-brand-detail .brand-size-row__favorite-button.is-added {
  color: #d93636;
}

/*
  ==============================
  sabstreet 商品詳細：アコーディオン
  ==============================
*/

/* 商品説明内のStation Tabs残骸を非表示・無効化 */
.station-tabs .station-tabs-tabset,
.product-brand-detail .brand-product-accordion__content .station-tabs-tabtitle,
.product-brand-detail .brand-product-accordion__content .station-tabs-nav {
  display: none !important;
}

.product-brand-detail .brand-product-accordion__content .station-tabs,
.product-brand-detail .brand-product-accordion__content .station-tabs-tabpanel,
.product-brand-detail .brand-product-accordion__content .station-tabs-tabcontent {
  border: 0 !important;
  margin: 0 !important;
}

.product-brand-detail .brand-product-accordion {
  margin: 28px 0 0;
  border-top: 1px solid #e5e5e5;
}

.product-brand-detail .brand-product-accordion__item {
  border-bottom: 1px solid #e5e5e5;
}

.product-brand-detail .brand-product-accordion__summary {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 54px;
  padding: 0 34px 0 0;
  cursor: pointer;
  list-style: none;
  font-size: 15px;
  font-weight: 500;
  color: #222;
}

.product-brand-detail .brand-product-accordion__summary::-webkit-details-marker {
  display: none;
}

.product-brand-detail .brand-product-accordion__summary::before,
.product-brand-detail .brand-product-accordion__summary::after {
  content: "";
  position: absolute;
  right: 6px;
  top: 50%;
  width: 14px;
  height: 2px;
  background: #222;
  border-radius: 2px;
  transition: .25s;
}

.product-brand-detail .brand-product-accordion__summary::before {
  transform: translateY(-50%);
}

.product-brand-detail .brand-product-accordion__summary::after {
  transform: translateY(-50%) rotate(90deg);
}

.product-brand-detail .brand-product-accordion__item[open] .brand-product-accordion__summary::after {
  transform: translateY(-50%) rotate(0deg) scaleX(0);
}

.product-brand-detail .brand-product-accordion__content {
  padding: 0 0 20px;
  font-size: 13px;
  line-height: 1.8;
  color: #333;
}

.product-brand-detail .brand-product-accordion__content p {
  margin: 0 0 1em;
}

.product-brand-detail .brand-product-accordion__content {
  overflow: hidden;
  transition: max-height .3s ease;
}

/*
  ==============================
  会員登録訴求
  ==============================
*/

.product-brand-detail .brand-membership-box {
  position: relative;
  margin: 20px 0;
  padding: 18px 24px;
  background: #f5f5f5;
  border: 0;
  overflow: hidden;
}

.product-brand-detail .brand-membership-box::before {
  content: "";
  position: absolute;
  right: 18px;
  top: 12px;
  width: 120px;
  height: 72px;
  background: url("//mindwind.tokyo/cdn/shop/t/113/assets/logomark_mindwind.png?v=69807914629991155651787143208") no-repeat 0 0;
  border-radius: 8px;
  pointer-events: none;
}

.product-brand-detail .brand-membership-box::after {
  content: none;
}

.product-brand-detail .brand-membership-box__title {
  position: relative;
  margin: 0 0 8px;
  padding: 0 0 15px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  color: #222;
  background: url("//mindwind.tokyo/cdn/shop/t/113/assets/fukidasi.png?v=31537956359860517521787143208") no-repeat 0 bottom;
}

.product-brand-detail .brand-membership-box__point,
.product-brand-detail .brand-membership-box__line {
  position: relative;
  margin: 0;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #333;
}

.product-brand-detail .brand-membership-box__point strong,
.product-brand-detail .brand-membership-box__line strong {
  font-size: 1.8rem;
  font-weight: 700;
}

.product-brand-detail .brand-membership-box__point span,
.product-brand-detail .brand-membership-box__line span {
  font-size: 2.6rem;
  font-weight: 700;
}

.product-brand-detail .brand-membership-box__button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 12px auto;
  width: 128px;
  height: 36px;
  padding: 5px 18px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #fff;
  color: #111;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
}

.product-brand-detail .brand-membership-box__line i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-right: 10px;
  border-radius: 50%;
  background: #EDE58C;
  color: #111;
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .05em;
  vertical-align: middle;
  flex-shrink: 0;
}

/*
  ==============================
  商品詳細：モデル着用アイテム
  ==============================
*/

.product-brand-detail .brand-model-items {
  margin: 32px 0 0;
}

.product-brand-detail .brand-model-items__heading {
  margin: 0 0 16px;
}

.product-brand-detail .brand-model-items__heading h2 {
  margin: 0;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
}

.product-brand-detail .brand-model-items__heading p {
  margin: 0;
  font-size: 12px;
  color: #555;
}

.product-brand-detail .brand-model-items__grid {
  display: grid;
  grid-template-columns: repeat(3, 32%);
  gap: 2%;
}

.product-brand-detail .product__media-wrapper {
  align-self: start;
  overflow: visible !important;
}

.product-brand-detail .product__media-wrapper .slider-mobile-gutter {
  position: relative;
  margin: 0 !important;
  z-index: 1;
}

.product-brand-detail .brand-product-media-stack {
  position: sticky;
  top: 24px;
  z-index: 1;
}

.product-brand-detail .brand-model-items {
  position: relative;
  z-index: 2;
  clear: both;
  margin-top: 32px;
  background: #fff;
}

.product-brand-detail .product__media-gallery,
.product-brand-detail media-gallery {
  position: static !important;
}

/* モデル着用アイテム */

.product-brand-detail .brand-model-items .card__information {
  padding-top: 12px;
}

.product-brand-detail .brand-model-items .card__quick-heart,
.product-brand-detail .brand-model-items .caption-with-letter-spacing,
.product-brand-detail .brand-model-items .primeBadges {
  display: none !important;
}

/* 商品名 */

.product-brand-detail .brand-model-items .card__heading {
  font-size: 13px;
  line-height: 1.6;
  font-weight: 400;
}

/* 価格 */

.product-brand-detail .brand-model-items .price {
  font-size: 14px;
  font-weight: 700;
}

.product-brand-detail .brand-model-items .price-item {
  font-size: 14px !important;
}

.product-brand-detail .brand-product-point-box {
  margin: 10px 0 18px;
}

/* 商品詳細：STAFF START */

.product-brand-detail .brand-staff-coordinate .staffstart-shopify-app-container.product {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  grid-template-columns: none !important;
}

.brand-staff-coordinate {
  width: 1080px;
  margin: 72px auto 0;
}

.brand-staff-coordinate .staffstart-shopify-app-container,
.brand-staff-coordinate .staffstart-shopify-app-container > div,
.brand-staff-coordinate .staffstart-shopify-app-container > div > div,
.brand-staff-coordinate .staffstart-shopify-app-container section {
  width: 100% !important;
  max-width: none !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container section {
  display: flex !important;
  flex-direction: column;
}

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child {
  display: contents !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container h2 {
  order: 1;
  margin: 0 0 18px !important;
  font-size: 1.8rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  color: #000 !important;
  font-family: var(--font-body-family) !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container h2::before {
  content: none !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container section > div:nth-child(2) {
  order: 2;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container article {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container article a {
  display: block !important;
  width: 100% !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container article img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

.brand-staff-coordinate .staffstart-shopify-app-container article p {
  font-size: 12px !important;
  line-height: 1.35 !important;
  margin: 3px 0 0 !important;
  color: #333 !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container article p:first-of-type {
  margin-top: 8px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #000 !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child a {
  order: 3;
  display: inline-flex !important;
  align-self: center;
  justify-content: center;
  align-items: center;
  min-width: 112px;
  height: 30px;
  margin-top: 24px !important;
  border: 1px solid #ddd;
  border-radius: 999px;
  text-decoration: none !important;
  color: #000 !important;
}

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child a p {
  font-size: 12px !important;
  margin: 0 !important;
}

/* 6個目以降は非表示 */

.brand-staff-coordinate .staffstart-shopify-app-container article:nth-child(n + 6) {
  display: none !important;
}

/* もっと見るボタン調整 */

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child a {
  position: relative;
  padding: 0 34px 0 22px;
}

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child a p {
  line-height: 1 !important;
}

/* 公式側の矢印がズレる場合の調整 */

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  width: 7px;
  height: 7px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transform: translateY(-50%) rotate(45deg);
}

.brand-staff-coordinate .staffstart-shopify-app-container section > div:first-child a svg {
  display: none !important;
}

/* 商品詳細：カテゴリランキング */

.brand-category-ranking {
  max-width: 1080px;
  margin: 56px auto 80px;
  padding: 0;
}

.brand-category-ranking .brand-section-heading {
  margin: 0 0 24px;
  text-align: left;
}

.brand-category-ranking .brand-section-heading h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
}

.brand-category-ranking .brand-section-heading p {
  margin: 4px 0 0;
  font-size: 13px;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  .brand-category-ranking {
    max-width: none;
    margin: 48px 0 64px;
    padding: 0 16px;
  }

  .brand-category-ranking__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 12px;
  }
}

/* 商品詳細下部：カラバリサムネと商品画像の余白 */

.related-products .collection-product-card__thumbs,
.brand-category-ranking .collection-product-card__thumbs {
  margin-top: 8px !important;
}

/* 商品画像とサムネの間が空きすぎる場合 */

.related-products .card__inner,
.brand-category-ranking .card__inner {
  margin-bottom: 0 !important;
}

.related-products .card__quick-heart {
  display: none;
}

/* 商品詳細：ランキングラベル */

.brand-category-ranking__grid {
  display: grid;
  grid-template-columns: repeat(5, 200px);
  justify-content: center;
  gap: 20px;
  counter-reset: brand-ranking;
}

.brand-category-ranking__item {
  position: relative;
}

.brand-category-ranking__item::before {
  counter-increment: brand-ranking;
  content: counter(brand-ranking);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 28px;
  height: 28px;
  background: #000;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 28px;
  text-align: center;
}

.brand-category-ranking__item::after {
  content: "";
  position: absolute;
  left: 0;
  top: 28px;
  z-index: 2;
  width: 0;
  height: 0;
  border-top: 8px solid #000;
  border-right: 28px solid transparent;
}

/* 1位 */

.brand-category-ranking__item:nth-child(1)::before {
  background: #C09B3F;
}

.brand-category-ranking__item:nth-child(1)::after {
  border-top-color: #C09B3F;
}

/* 2位 */

.brand-category-ranking__item:nth-child(2)::before {
  background: #7E8B97;
}

.brand-category-ranking__item:nth-child(2)::after {
  border-top-color: #7E8B97;
}

/* 3位 */

.brand-category-ranking__item:nth-child(3)::before {
  background: #A85A5A;
}

.brand-category-ranking__item:nth-child(3)::after {
  border-top-color: #A85A5A;
}

.brand-category-ranking__item .card__information {
  padding: 0 !important;
}

/* 商品詳細：おすすめ */

.related-products {
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.related-products .product-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 200px) !important;
  gap: 20px !important;
  justify-content: center !important;
  margin: 0;
}

.related-products .product-grid .grid__item {
  width: 200px !important;
  max-width: 200px !important;
  flex: 0 0 200px !important;
  padding: 0 !important;
}

.related-products .product-grid .card__information {
  padding: 0 !important;
}

/* Back in Stock 既存フローティングボタン非表示 */

.bis-reset .bis-button.BIS_trigger {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .product-brand-detail .product {
    display: block;
    grid-template-columns: none;
    gap: 0 !important;
  }
  .product-brand-detail .product__media-wrapper,
  .product-brand-detail .product__info-wrapper {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin: 0 16px !important;
    padding: 0 !important;
  }
  .product-brand-detail .product__info-wrapper.grid__item {
    width: calc(100% - 32px);
    max-width: calc(100% - 32px);
    margin: 0 16px !important;
    padding: 0 !important;
  }
  /* サムネ */
  .product-brand-detail .thumbnail-slider {
    display: block !important;
    width: 100%;
    margin-top: 8px;
    overflow: hidden;
  }

  .product-brand-detail .thumbnail-list,
  .product-brand-detail .thumbnail-slider .thumbnail-list.slider,
  .product-brand-detail .thumbnail-slider .thumbnail-list.slider--tablet-up {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity;
    scroll-padding-left: 0 !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .product-brand-detail .thumbnail-list::-webkit-scrollbar {
    display: none;
  }

  .product-brand-detail .thumbnail-list__item,
  .product-brand-detail .thumbnail-list__item.slider__slide,
  .product-brand-detail
    .thumbnail-list.slider--tablet-up
    .thumbnail-list__item.slider__slide,
  .product-brand-detail
    .product--small
    .thumbnail-list.slider--tablet-up
    .thumbnail-list__item.slider__slide {
    flex: 0 0 70px !important;
    width: 70px !important;
    max-width: 70px !important;
    height: 84px !important;
    scroll-snap-align: start;
  }

  .product-brand-detail .thumbnail {
    width: 70px !important;
    height: 84px !important;
    min-height: 84px !important;
  }

  /* モデル着用アイテム：3列 */

  .brand-model-items .grid,
  .brand-model-items__list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .brand-model-items .grid__item {
    width: auto !important;
    max-width: none !important;
  }

  /* スタッフコーデ：3枚見えて4枚目チラ見え */

  .brand-staff-coordinate {
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 auto !important;
    overflow: hidden;
  }

  .brand-staff-coordinate .staffstart-shopify-app-container section > div:nth-child(2) {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    overflow-x: auto !important;
    padding-right: 16px !important;
  }

  .brand-staff-coordinate .staffstart-shopify-app-container article {
    flex: 0 0 29% !important;
    width: 29% !important;
    max-width: 29% !important;
    min-width: 100px !important;
  }

  .jdgm-widget.jdgm-widget {
    width: 90%;
    margin: 0 auto;
  }

  /* おすすめ・ランキング：2枚見えて3枚目チラ見え */

  .related-products,
  .brand-category-ranking {
    width: 100% !important;
    max-width: none !important;
    padding-left: 16px !important;
    padding-right: 0 !important;
    overflow: hidden !important;
  }

  .related-products .product-grid,
  .brand-category-ranking__grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    padding-right: 16px !important;
  }

  .related-products .product-grid .grid__item,
  .brand-category-ranking__item {
    flex: 0 0 46% !important;
    width: 46% !important;
    max-width: 46% !important;
  }

  /* 横スクロールバー非表示 */

  .brand-staff-coordinate .staffstart-shopify-app-container section > div:nth-child(2),
  .related-products .product-grid,
  .brand-category-ranking__grid {
    scrollbar-width: none;
  }

  .brand-staff-coordinate .staffstart-shopify-app-container section > div:nth-child(2)::-webkit-scrollbar,
  .related-products .product-grid::-webkit-scrollbar,
  .brand-category-ranking__grid::-webkit-scrollbar {
    display: none;
  }

  .product-brand-detail .brand-size-row {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
  }

  .product-brand-detail .brand-size-row__size {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .product-brand-detail .brand-size-row__stock {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .product-brand-detail .brand-size-row__price {
    flex: 1 1 auto;
    min-width: 0;
    text-align: right;
    white-space: nowrap;
  }

  .product-brand-detail .brand-size-row__favorite-button {
    flex: 0 0 42px;
  }

  .product-brand-detail .brand-size-row__cart-button {
    flex: 1 1 calc(100% - 52px);
    min-width: 0;
  }

  .related-products .product-grid,
  .brand-category-ranking__grid {
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    scroll-padding-left: 0;
  }

  .related-products .product-grid .grid__item:first-child,
  .brand-category-ranking__item:first-child {
    margin-left: 0 !important;
  }

  .product-brand-detail .product__media-wrapper,
  .product-brand-detail media-gallery,
  .product-brand-detail .product__media-list,
  .product-brand-detail .product__media-item,
  .product-brand-detail .product__media,
  .product-brand-detail .product__media img {
    width: 100% !important;
    max-width: 100% !important;
  }

  .slider.slider--mobile .grid__item {
    padding: 0 !important;
  }

  .product-brand-detail .product__media-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 0 40px !important;
    box-sizing: border-box;
    overflow: hidden;
  }

  .product-brand-detail .product__media-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
  }

  .product-brand-detail .product__media-item {
    margin-left: 0 !important;
  }
  .product-brand-detail .product__media-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  .product-brand-detail .product__media-item {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    scroll-snap-align: start;
  }
  .product-brand-detail .product__media img {
    height: auto !important;
    object-fit: contain;
  }

  .product-brand-detail .brand-model-items {
    width: auto !important;
    margin: 32px 0 0;
    padding: 0 5%;
    overflow: hidden;
  }

  .product-brand-detail .brand-model-items__grid {
    display: flex !important;
    flex-wrap: nowrap;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .product-brand-detail .brand-model-items__grid::-webkit-scrollbar {
    display: none;
  }

  .product-brand-detail .brand-model-items__item {
    flex: 0 0 29%;
    width: 29%;
    max-width: 29%;
  }

  .product-brand-detail .brand-model-items__item .card-wrapper,
  .product-brand-detail .brand-model-items__item .card {
    width: 100%;
    max-width: 100%;
  }
}

/*
  ==============================
  Brand Feature Blog List
  ==============================
*/

.main-blog--brand-feature {
  max-width: 1080px;
  margin: 0 auto;
}

.main-blog--brand-feature .title--primary {
  margin: 0 0 54px;
  padding-bottom: 28px;
  border-bottom: 1px solid #e5e5e5;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .08em;
}

.main-blog--brand-feature .blog-articles {
  display: grid !important;
  grid-template-columns: repeat(3, 334px) !important;
  justify-content: space-between;
  gap: 60px 39px !important;
}

.main-blog--brand-feature .blog-articles__article,
.main-blog--brand-feature .article-card-wrapper,
.main-blog--brand-feature .article-card,
.main-blog--brand-feature .article-card .card,
.main-blog--brand-feature .article-card .card__inner {
  width: 334px !important;
  max-width: 334px !important;
}

.main-blog--brand-feature .blog-articles__article {
  margin: 0 !important;
}

.main-blog--brand-feature .article-card,
.main-blog--brand-feature .article-card .card {
  display: block !important;
  position: static !important;
}

.main-blog--brand-feature .article-card .card__inner {
  position: relative !important;
  display: block !important;
  height: 334px !important;
  min-height: 334px !important;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.main-blog--brand-feature .article-card .card__inner > .card__content {
  display: none !important;
}

.main-blog--brand-feature .article-card .card__media,
.main-blog--brand-feature .article-card .media,
.main-blog--brand-feature .article-card__image,
.main-blog--brand-feature .article-card__image img {
  width: 100% !important;
  height: 100% !important;
}

.main-blog--brand-feature .article-card__image img {
  object-fit: cover;
}

.main-blog--brand-feature .article-card > .card__content {
  display: block !important;
  position: static !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.main-blog--brand-feature .article-card > .card__content .card__information {
  position: static !important;
  transform: none !important;
  padding: 14px 0 0 !important;
}

.main-blog--brand-feature .article-card > .card__content .card__heading {
  position: relative;
  margin: 0;
  padding-right: 18px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.7;
}

.main-blog--brand-feature .article-card > .card__content .card__heading::after {
  content: "";
  position: absolute;
  right: 2px;
  top: .7em;
  width: 6px;
  height: 6px;
  border-top: 1px solid #111;
  border-right: 1px solid #111;
  transform: rotate(45deg);
}

.main-blog--brand-feature .article-card__info {
  margin-top: 8px;
  font-size: 12px;
  letter-spacing: 0;
  color: #111;
}

.main-blog--brand-feature .article-card__excerpt,
.main-blog--brand-feature .card__badge {
  display: none !important;
}

.article-template {
  padding: 0 16px 150px;
}
div[data-pf-type="Layout"] {
  padding: 0 0 180px;
}
ul.kaiyuu {
  font-size: 10px;
}

@media screen and (max-width: 768px) {
  .main-blog--brand-feature {
    width: 90%;
    padding-left: 0;
    padding-right: 0;
  }

  .main-blog--brand-feature .title--primary {
    margin-bottom: 28px;
    padding-bottom: 18px;
    font-size: 16px;
    letter-spacing: .04em;
  }

  .main-blog--brand-feature .blog-articles {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .main-blog--brand-feature .blog-articles__article,
  .main-blog--brand-feature .article-card-wrapper,
  .main-blog--brand-feature .article-card,
  .main-blog--brand-feature .article-card .card,
  .main-blog--brand-feature .article-card .card__inner {
    width: 100% !important;
    max-width: 100% !important;
  }

  .main-blog--brand-feature .article-card .card__inner {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1;
  }

  .main-blog--brand-feature .article-card > .card__content .card__information {
    padding-top: 10px !important;
  }

  .main-blog--brand-feature .article-card > .card__content .card__heading {
    font-size: 12px;
    line-height: 1.7;
  }

  .main-blog--brand-feature .article-card__info {
    font-size: 11px;
  }
}

/*
  ==============================
  Brand Product Indicator
  ==============================
*/

.brand-product-indicator {
  margin: 40px 0 0 !important;
  display: grid;
  gap: 5px;
  background: #fff;
}

.brand-product-indicator__row {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  padding: 14px 28px 14px 16px;
  background: #f7f7f7;
  border: 0;
}

.brand-product-indicator__title {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  color: #000;
}

.brand-product-indicator__body {
  width: 100%;
}

.brand-product-indicator__labels {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin-bottom: 8px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  color: #000;
}

.brand-product-indicator__labels span:nth-child(1) {
  grid-column: 1;
  text-align: center;
}

.brand-product-indicator__labels span:nth-child(2) {
  grid-column: 3;
  text-align: center;
}

.brand-product-indicator__labels span:nth-child(3) {
  grid-column: 5;
  text-align: center;
}

.brand-product-indicator__scale {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  align-items: center;
  width: 100%;
}

.brand-product-indicator__scale::before {
  content: "";
  position: absolute;
  left: 10%;
  right: 10%;
  top: 50%;
  height: 2px;
  background: #d7d7d7;
  transform: translateY(-50%);
}

.brand-product-indicator__dot {
  position: relative;
  z-index: 1;
  justify-self: center;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d7d7d7;
}

.brand-product-indicator__dot.is-active {
  width: 13px;
  height: 13px;
  border: 3px solid #000;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .brand-product-indicator {
    margin-top: 28px;
    gap: 5px;
  }

  .brand-product-indicator__row {
    grid-template-columns: 82px 1fr;
    padding: 13px 16px 13px 12px;
  }

  .brand-product-indicator__title {
    font-size: 12px;
  }

  .brand-product-indicator__labels {
    font-size: 9px;
  }
}

/*
  ==============================
  STAFF START - Coordinate List
  アプリスタイル上書き
  ==============================
*/

/*
  ------------------------------
  App container
  ------------------------------
*/

#staffstart-shopify-app-container {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 0 100px;
  color: #222;
}

#staffstart-shopify-app-container,
#staffstart-shopify-app-container * {
  box-sizing: border-box;
}
#staffstart-shopify-app-container #cxwrapper > div {
  border: 1px solid #111;
  border-radius: 30px;
  color: #111;
}
/* STAFF START直下の外枠 */

#staffstart-shopify-app-container > div {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* パンくず */

#staffstart-shopify-app-container > div > div:first-child {
  padding: 16px 0 30px !important;
}

/* メインコンテンツ */

#staffstart-shopify-app-container > div > div:nth-child(2) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

/* 左サイドバーとメインコンテンツを持つレイアウト */

#staffstart-shopify-app-container
div:has(> div > aside):has(> main) {
  display: grid !important;
  grid-template-columns: 180px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 55px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

/* asideを囲っている要素 */

#staffstart-shopify-app-container
div:has(> aside) {
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 左側絞り込み */

#staffstart-shopify-app-container aside {
  display: block !important;
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 右側メイン */

#staffstart-shopify-app-container
div:has(> div > aside):has(> main) > main {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/*
  ------------------------------
  Sidebar
  ------------------------------
*/

#staffstart-shopify-app-container aside > div {
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
}

#staffstart-shopify-app-container aside h3 {
  margin: 0 0 14px !important;
  padding: 0 0 10px !important;
  border-bottom: 1px solid #d9d9d9 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

#staffstart-shopify-app-container aside h3 p {
  margin: 0 !important;
  padding: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

#staffstart-shopify-app-container aside ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#staffstart-shopify-app-container aside li {
  display: block !important;
  margin: 0 0 0 !important;
  padding: 0 !important;
}

#staffstart-shopify-app-container aside li a {
  display: block !important;
  padding: 5px !important;
  color: #333 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  text-decoration: none !important;
}

#staffstart-shopify-app-container aside li a:hover {
  text-decoration: none !important;
}

#staffstart-shopify-app-container
aside div:has(> select) {
  width: 100% !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#staffstart-shopify-app-container aside select {
  display: block !important;
  width: 100% !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 34px 0 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background-color: #fff !important;
  color: #333 !important;
  font-size: 12px !important;
}

/*
  ------------------------------
  Main sections
  ------------------------------
*/

#staffstart-shopify-app-container
div:has(> div > aside):has(> main) > main > section {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

/* おすすめハッシュタグ */

#staffstart-shopify-app-container h2 {
  margin: 0 0 0 !important;
  padding: 0 !important;
  color: #222 !important;
  font-size: 1.8rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

/* タグ */

#staffstart-shopify-app-container
a[href*="tag="],
#staffstart-shopify-app-container
a[href*="label="],
#staffstart-shopify-app-container
a[href*="sort="] {
  color: inherit !important;
  text-decoration: none !important;
}

#staffstart-shopify-app-container
a[href*="tag="] > a,
#staffstart-shopify-app-container
a[href*="label="] > a,
#staffstart-shopify-app-container
a[href*="sort="] > a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  margin: 0 5px 7px 0 !important;
  padding: 4px 12px 4px 12px !important;
  border: 1px solid #d8d8d8 !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #444 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  cursor: pointer;
}
a:not([href]) {
    cursor: pointer !important;
}

/* キーワード検索 */

#staffstart-shopify-app-container
.react-autosuggest__container {
  width: 100% !important;
  max-width: none !important;
}

#staffstart-shopify-app-container .react-autosuggest__container {
  background: url("https://staffstart-script-pr.firebaseapp.com//static/media/search.59778ea2086f22f53f6eac4fda424520.svg") 120px center / 16px 16px no-repeat;
}

#staffstart-shopify-app-container
.react-autosuggest__input {
  width: 100% !important;
  height: 42px !important;
  padding: 0 !important;
  border: none !important;
  border-bottom: 1px solid #222 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #222 !important;
  font-size: 1.4rem !important;
}

#staffstart-shopify-app-container .react-autosuggest__input:focus {
  outline: none !important;
  border-bottom-color: #222 !important;
  box-shadow: none !important;
}

/*
  ------------------------------
  Result header
  ------------------------------
*/

#staffstart-shopify-app-container
div:has(> span + span):has(a[href*="sort="]) {
  width: 100% !important;
}

/*
  ------------------------------
  Card grid
  ------------------------------
*/

#staffstart-shopify-app-container
div:has(> article > a[href^="/apps/staffstart/coordinates/"]) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: start !important;
  column-gap: 18px !important;
  row-gap: 38px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* カード全体 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"]) {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/*
  ------------------------------
  Coordinate image
  ------------------------------
*/

/* メイン画像リンク */

#staffstart-shopify-app-container
article > a[href^="/apps/staffstart/coordinates/"] {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #f5f5f5 !important;
  color: inherit !important;
  text-decoration: none !important;
}

/* 画像を囲う要素 */

#staffstart-shopify-app-container
article > a[href^="/apps/staffstart/coordinates/"]
div:has(> img[src*="/coordinates/"]) {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 3 / 4 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #f5f5f5 !important;
}

/* コーディネート画像 */

#staffstart-shopify-app-container
article img[src*="/coordinates/"] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
}

/*
  ------------------------------
  Staff information
  コーディネートカード内のみ
  ------------------------------
*/

/* スタッフ情報リンク */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"] {
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: start !important;
  column-gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #222 !important;
  text-decoration: none !important;
}

/* スタッフアイコンを囲う要素 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
div:has(> img[src*="/staff/icon/"]) {
  display: block !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 50% !important;
  background: #f5f5f5 !important;
}

/* スタッフアイコン */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
img[src*="/staff/icon/"] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

/* テキスト全体 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
> div:last-child {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
> div:last-child
> div {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 全テキスト共通 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
p {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #777 !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

/* スタッフ名 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
> div:last-child
> div:first-child
p {
  margin-bottom: 2px !important;
  color: #222 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

/* ブランド名・店舗名 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
> div:last-child
> div:nth-child(2) {
  margin: 0 !important;
}

/* 身長 */

#staffstart-shopify-app-container
article:has(> a[href^="/apps/staffstart/coordinates/"])
> a[href^="/apps/staffstart/staffs/"]
> div:last-child
> div:nth-child(3) {
  margin-top: 1px !important;
}

/*
  ==============================
  STAFF START - Staff Ranking
  ==============================
*/

/*
  ランキングセクションのみ
  ・スタッフ詳細カードを持つ
  ・コーディネート詳細リンクは持たない
*/

#staffstart-shopify-app-container
section:has(> div > h2):has(> div > article > a[href^="/apps/staffstart/staffs/"]):not(:has(a[href^="/apps/staffstart/coordinates/"]))
> div:nth-child(2)
> article {
  position: relative !important;
  z-index: 0 !important;
  isolation: isolate;
}

/*
  ------------------------------
  Ranking label
  ------------------------------
*/

/* 順位ラベルを含むブロック */

#staffstart-shopify-app-container
section:has(> div > h2):has(> div > article > a[href^="/apps/staffstart/staffs/"]):not(:has(a[href^="/apps/staffstart/coordinates/"]))
> div:nth-child(2)
> article
> a[href^="/apps/staffstart/staffs/"]
> div:first-child
> div:first-child {
  position: relative !important;
  z-index: 1 !important;
  top: 30px;
  left: 0;
}

.mw-fav-page #staffstart-shopify-app-container
section:has(> div > h2):has(> div > article > a[href^="/apps/staffstart/staffs/"]):not(:has(a[href^="/apps/staffstart/coordinates/"]))
> div:nth-child(2)
> article
> a[href^="/apps/staffstart/staffs/"]
> div:first-child
> div:first-child {
  top: 0px;
}

/* 順位の数字が入っているラベル本体 */

#staffstart-shopify-app-container
section:has(> div > h2):has(> div > article > a[href^="/apps/staffstart/staffs/"]):not(:has(a[href^="/apps/staffstart/coordinates/"]))
> div:nth-child(2)
> article
> a[href^="/apps/staffstart/staffs/"]
> div:first-child
> div:first-child
> div
> div {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  width: 30px !important;
  height: 40px !important;
  padding: 8px 0 0 !important;
  border: none !important;
  border-radius: 0 !important;
  /* カンプの下辺が斜めのラベル */
  clip-path: polygon(
    0 0,
    100% 0,
    100% 62%,
    0 100%
  );
  color: #fff !important;
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

/*
  ------------------------------
  Follow button
  ------------------------------
*/

#staffstart-shopify-app-container
section:has(> div > h2):has(> div > article > a[href^="/apps/staffstart/staffs/"]):not(:has(a[href^="/apps/staffstart/coordinates/"]))
> div:nth-child(2)
> article
> div:last-child
> button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 15px !important;
  border: 1px solid #ccc !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: #222 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

/* hover */

#staffstart-shopify-app-container
section:has(> div > h2):has(> div > article > a[href^="/apps/staffstart/staffs/"]):not(:has(a[href^="/apps/staffstart/coordinates/"]))
> div:nth-child(2)
> article
> div:last-child
> button:hover {
  border-color: #222 !important;
  background: #222 !important;
  color: #fff !important;
}

@media screen and (max-width: 768px) {
  #staffstart-shopify-app-container div:has(> div > aside):has(> main) {
    grid-template-columns: none !important;
  }

  /* コーディネート一覧全体の左右余白 */

  #staffstart-shopify-app-container {
    padding-right: 5% !important;
    padding-left: 5% !important;
    box-sizing: border-box;
  }

  /* スナップ一覧を2列に */

  #staffstart-shopify-app-container div:has(> article > a[href^="/apps/staffstart/coordinates/"]) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 4% !important;
    row-gap: 24px !important;
    width: 100% !important;
  }

  /* カード幅を解除 */

  #staffstart-shopify-app-container div:has(> article) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }
}

/*
  ==============================
  Brand Product Description Fields
  ==============================
*/

.brand-product-material-details {
  margin-bottom: 24px;
}

.brand-product-accordion__content--size {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.brand-product-accordion__content--size table {
  width: 100%;
  border-collapse: collapse;
}

/*
  ==============================
  Brand Product Size Table
  ==============================
*/

.brand-product-accordion__content--size {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.brand-product-accordion__content--size table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #e5e5e5;
  font-size: 14px;
  line-height: 1.6;
}

.brand-product-accordion__content--size th,
.brand-product-accordion__content--size td {
  padding: 12px 16px;
  border: 1px solid #e5e5e5;
  text-align: left;
  vertical-align: middle;
}

.brand-product-accordion__content--size th {
  background: #f7f7f7;
  width: 30%;
  font-weight: 700;
  color: #222;
}

.brand-product-accordion__content--size td:first-child,
.brand-product-accordion__content--size th:first-child {
  text-align: left;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .brand-product-accordion__content--size table {
    min-width: 520px;
  }

  .brand-product-accordion__content--size th,
  .brand-product-accordion__content--size td {
    padding: 10px 12px;
    font-size: 13px;
  }
}

/*
  ==============================
  Common Drawer Menu
  ブランドに属さないページ
  ==============================
*/

.common-drawer {
  width: 100%;
  color: #111;
  background: #fff;
  font-size: 14px;
  line-height: 1.6;
}

/* 各エリア */

.common-drawer__section {
  padding: 25px 16px 28px;
  border-top: 4px solid #f2f2f2;
}

.common-drawer__section-title {
  margin: 0 0 14px;
  color: #111;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

/* リンクリスト */

.common-drawer__nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.common-drawer__nav li {
  margin: 0;
  padding: 0;
}

.common-drawer__nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  padding: 8px 4px 8px 0;
  color: #111;
  text-decoration: none;
}

.common-drawer__nav a:hover {
  color: #111;
  text-decoration: none;
}

.common-drawer__nav a > span:first-child {
  flex: 1;
  min-width: 0;
}

/* 矢印 */

.common-drawer__arrow {
  flex: 0 0 auto;
  margin-left: 16px;
  font-size: 25px;
  font-weight: 300;
  line-height: 1;
  transform: translateY(-1px);
}

.common-drawer__external {
  flex: 0 0 auto;
  margin-left: 16px;
  color: #888;
  font-size: 15px;
  line-height: 1;
}

/* ブランドエリア */

.common-drawer__section--brand {
  padding-top: 25px;
  padding-bottom: 25px;
}

/* ヘルプ・ガイド */

.common-drawer__section--guide {
  padding-top: 24px;
  padding-bottom: 27px;
}

/* アプリバナー */

.common-drawer__section--app {
  padding: 26px 16px 32px;
  text-align: center;
}

.common-drawer__app-link {
  display: block;
  width: 100%;
  max-width: 273px;
  margin: 0 auto;
}

.common-drawer__app-link img {
  display: block;
  width: 100%;
  height: auto;
}

/* 共通メニュー内の会員エリア */

.common-drawer .brand-drawer-member {
  padding: 18px 16px 24px;
}

/* ログイン前：新規会員登録 */

.common-drawer .brand-drawer-member__register {
  width: 100%;
  margin: 0 0 14px;
}

.common-drawer .brand-drawer-member__register a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 20px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  background: #fff;
  font-weight: 700;
  text-decoration: none;
}

/* ログイン・お気に入り等の横並び */

.common-drawer .brand-drawer-member__links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 0;
}
.common-drawer .brand-drawer-member__links--login {
  grid-template-columns: repeat(3, 1fr);
}
.common-drawer .brand-drawer-member__links > * {
  min-width: 0;
}

.common-drawer .brand-drawer-member__links > * + * {
  border-left: 1px solid #ddd;
}

/* ドロワー全体の余白をリセット */

.menu-drawer__navigation:has(.common-drawer) {
  padding: 0;
}

.menu-drawer__navigation:has(.common-drawer)
  .menu-drawer__navigation-container {
  height: auto;
}

/* PC */

@media screen and (min-width: 769px) {
  .menu-drawer:has(.common-drawer) {
    width: 400px;
    max-width: 400px;
  }

  .common-drawer__section {
    padding-right: 28px;
    padding-left: 28px;
  }

  .common-drawer .brand-drawer-member {
    padding-right: 28px;
    padding-left: 28px;
  }

  .common-drawer__section--app {
    padding-right: 28px;
    padding-left: 28px;
  }
}

/* SP */

@media screen and (max-width: 768px) {
  .menu-drawer:has(.common-drawer) {
    width: 100%;
    max-width: 100%;
  }

  .common-drawer__section {
    padding-right: 16px;
    padding-left: 16px;
  }

  .common-drawer__nav a {
    min-height: 44px;
    font-size: 14px;
  }
}

/*
  ==============================
  Common Header Iconsズレ修正
  ==============================
*/

/* アイコンエリア全体 */

.header:not(.header--brand) .header__icons {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-right: 8px;
}

/* 検索・アカウント・カート */

.header:not(.header--brand) .header__icons > .header__icon {
  position: relative;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
}

/* アプリブロック（お気に入り）の外枠 */

.header:not(.header--brand) .header__icons > .shopify-app-block {
  position: relative;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  overflow: visible;
}

/* Swymのお気に入りリンク */

.header:not(.header--brand)
  .header__icons
  > .shopify-app-block
  .swym-header-launcher {
  position: relative !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 各SVGの表示枠 */

.header:not(.header--brand) .header__icons .svg-wrapper,
.header:not(.header--brand)
  .header__icons
  .swym-header-launcher-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
}

/* カート件数 */

.cart-count-bubble {
  top: 15px !important;
  right: 4px !important;
  bottom: auto !important;
  left: auto !important;
  width: 17px;
  height: 17px;
  line-height: 1;
}

/* Swym件数 */

.header:not(.header--brand)
  .header__icons
  .swym-header-launcher
  [class*="count"] {
  top: 15px !important;
  right: 4px !important;
  bottom: auto !important;
  left: auto !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  min-height: 17px !important;
  margin: 0 !important;
  line-height: 17px !important;
  text-align: center;
  border-radius: 50%;
}

/* カートの件数バッジをお気に入りと揃える */

.header:not(.header--brand)
  .header__icon--cart
  .cart-count-bubble {
  transform: translateY(-4px) !important;
}

/* Swym標準の自動挿入ヘッダーアイコンを非表示 */

#swym-rise-header-inject,
a.swym-header-launcher[id="swym-rise-header-inject"] {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .header:not(.header--brand) {
    grid-template-columns: 1fr 5fr 1fr;
    column-gap: 0;
  }

  .header:not(.header--brand) .header__icons {
    padding-right: 0;
    gap: 5px;
  }
}

/*
  ==============================
  Staff Start Coordinate Detail
  PC
  ==============================
*/

/* ページ全体 */

#staffstart-shopify-app-container {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  color: #111;
}

/* コーディネート詳細のメインコンテンツ */

#staffstart-shopify-app-container
  main:has(> section .mySwiper) {
  width: 1080px;
  margin: 0 auto;
}

/* パンくず */

#staffstart-shopify-app-container
  > div
  > div:first-child {
  width: 1080px;
  margin: 0 auto;
}

/* 上部：画像と説明の2カラム */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:first-of-type
  > div {
  display: grid !important;
  grid-template-columns: 440px minmax(0, 1fr) !important;
  align-items: start;
  gap: 54px !important;
  width: 100%;
}

/* 左カラム */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:first-of-type
  > div
  > div:first-child {
  width: 440px !important;
  min-width: 0;
}

/* 右カラム */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:first-of-type
  > div
  > div:nth-child(2) {
  width: auto !important;
  min-width: 0;
}

/* メイン画像 */

#staffstart-shopify-app-container .mySwiper {
  width: 440px !important;
  max-width: 100%;
  margin: 0;
  overflow: hidden;
}

#staffstart-shopify-app-container
  .mySwiper
  .swiper-slide {
  width: 440px !important;
}

#staffstart-shopify-app-container
  .mySwiper
  .swiper-slide
  img,
#staffstart-shopify-app-container
  .mySwiper
  .swiper-slide
  video {
  display: block;
  width: 100% !important;
  height: 586px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

/* スライダー矢印 */

#staffstart-shopify-app-container
  .mySwiper
  .swiper-button-prev,
#staffstart-shopify-app-container
  .mySwiper
  .swiper-button-next {
  width: 28px;
  height: 28px;
  margin-top: -14px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .75);
}

#staffstart-shopify-app-container
  .mySwiper
  .swiper-button-prev::after,
#staffstart-shopify-app-container
  .mySwiper
  .swiper-button-next::after {
  font-size: 12px;
  font-weight: 700;
  position: absolute;
  top: 32%;
  right: 35%;
}

/* サムネイル */

#staffstart-shopify-app-container .mySwiperThumbs {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 9px !important;
  width: 100%;
  margin-top: 14px !important;
}

#staffstart-shopify-app-container
  .mySwiperThumbs
  .thumb-wrap {
  width: auto;
  border: 1px solid transparent;
  opacity: 1 !important;
}

#staffstart-shopify-app-container
  .mySwiperThumbs
  .thumb-wrap.active {
  border-color: #111;
}

#staffstart-shopify-app-container
  .mySwiperThumbs
  img.thumbnail {
  display: block !important;
  width: 100% !important;
  height: 104px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

/* メイン画像下のお気に入りボタン */

#staffstart-shopify-app-container
  .mySwiperThumbs
  + style
  + button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 38px;
  margin-top: 20px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

/* スタッフ情報 */

/* フォローボタン */

#staffstart-shopify-app-container
  a[href*="/apps/staffstart/staffs/"]
  ~ div
  button {
  min-width: 104px;
  height: 34px;
  padding: 0 18px;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 12px !important;
}

/* 投稿日 */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:first-of-type
  > div
  > div:nth-child(2)
  > div:nth-child(2) {
  margin-top: 46px;
}

/* コーディネート本文 */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:first-of-type
  > div
  > div:nth-child(2)
  > div:nth-child(3)
  p {
  white-space: pre-line;
  font-size: 13px !important;
  line-height: 2 !important;
}

/* タグ一覧 */

#staffstart-shopify-app-container
  a[href*="/apps/staffstart/coordinates?tag="] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 27px;
  margin: 0 !important;
  border-radius: 999px;
  color: #333 !important;
  background: #fff;
  font-size: 11px !important;
  line-height: 1.3;
  text-decoration: none;
}

/* 不正な入れ子aタグの内側 */

#staffstart-shopify-app-container
  a[href*="/apps/staffstart/coordinates?tag="]
  > a {
  color: inherit !important;
  font-size: inherit !important;
  text-decoration: none;
}

/* 着用アイテム見出し */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  h2 {
  color: #111;
}

/* 着用アイテムのエリア */

#staffstart-shopify-app-container
  h2
  + div:has(> a[href*="/products/"]) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 30px 18px !important;
  width: 100%;
}

/* 着用アイテムカード */

#staffstart-shopify-app-container
  h2
  + div
  > a[href*="/products/"] {
  display: block !important;
  min-width: 0;
  color: #111;
  text-decoration: none;
}

#staffstart-shopify-app-container
  a[href*="/products/"]
  img {
  display: block;
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
}

#staffstart-shopify-app-container
  a[href*="/products/"]
  p {
  margin: 7px 0 0 !important;
  font-size: 11px !important;
  line-height: 1.6 !important;
}

#staffstart-shopify-app-container
  a[href*="/products/"]
  p:first-child {
  font-size: 12px !important;
}

/* その他のコーディネート */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:nth-of-type(2) {
  margin-top: 130px !important;
}

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:nth-of-type(2)
  h2 {
  margin: 0 0 28px;
  font-size: 18px !important;
  font-weight: 700 !important;
}

/* 5列表示 */

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:nth-of-type(2)
  > div:last-child {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 38px 18px !important;
}

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:nth-of-type(2)
  article {
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
}

#staffstart-shopify-app-container
  main:has(> section .mySwiper)
  > section:nth-of-type(2)
  article
  img {
  display: block;
  width: 100% !important;
  height: 292px !important;
  object-fit: cover !important;
}

/* フォローボタン */

#staffstart-shopify-app-container
h2 + button {
  background: #fff !important;
  color: #111;
  border: 1px solid #111 !important;
  border-radius: 999px;
  width: 120px;
  height: 40px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: .2s;
}

#staffstart-shopify-app-container
h2 + button:hover {
  background: #333 !important;
  color: #fff !important;
}

/*
  ==============================
  Coordinate Detail SP
  ==============================
*/

@media screen and (max-width: 768px) {
  /* コーディネート詳細全体 */

  #staffstart-shopify-app-container
  main:has(.mySwiper) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
  }

  #staffstart-shopify-app-container main:has(> section .mySwiper) > section:first-of-type > div > div:first-child {
    width: 100% !important;
  }

  /* 画像とスタッフ情報を囲う横並びラッパー */

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  > div {
    width: 100% !important;
    max-width: none !important;
  }

  #staffstart-shopify-app-container main:has(> section .mySwiper) > section:first-of-type > div {
    grid-template-rows: repeat(4, auto);
    grid-template-columns: none !important;
    gap: 32px !important;
  }

  /* 左カラム・右カラム */

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  > div
  > div {
    display: block !important;
    flex: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  /* メイン画像スライダー */

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiper {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiper
  .swiper-wrapper {
    width: 100% !important;
  }

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiper
  .swiper-slide {
    width: 100% !important;
    max-width: 100% !important;
  }

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiper
  .swiper-slide
  img,
  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiper
  .swiper-slide
  video {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
    object-fit: contain !important;
  }

  /* サムネイル */

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiperThumbs {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    margin-top: 8px !important;
  }

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiperThumbs
  .thumb-wrap {
    width: 100% !important;
    min-width: 0 !important;
  }

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  .mySwiperThumbs
  img.thumbnail {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
    object-fit: cover !important;
  }

  /* 右側情報の文字が縦1列になるのを防止 */

  #staffstart-shopify-app-container
  section:has(.mySwiper)
  > div
  > div:nth-child(2),
  #staffstart-shopify-app-container
  section:has(.mySwiper)
  > div
  > div:nth-child(2) * {
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: anywhere;
  }

  /* その他のコーディネート */

  #staffstart-shopify-app-container main:has(> section .mySwiper) > section:nth-of-type(2) > div:last-child {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    column-gap: 4% !important;
    row-gap: 24px !important;
    width: 100% !important;
  }

  /* カード */

  #staffstart-shopify-app-container
  main:has(.mySwiper)
  > section:nth-of-type(2)
  article {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }

  /* 画像 */

  #staffstart-shopify-app-container
  main:has(.mySwiper)
  > section:nth-of-type(2)
  article img {
    display: block;
    width: 100% !important;
    height: auto !important;
    object-fit: cover;
  }
}

/*
  ==============================
  Staff Start Staff Detail
  PC
  ==============================
*/

/* ページ全体 */

#staffstart-shopify-app-container {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  color: #111;
}

/* スタッフ詳細ページ本体 */

#staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"]) {
  width: 1080px;
  margin: 0 auto;
}

/* パンくず */

#staffstart-shopify-app-container
  > div
  > div:first-child {
  width: 1080px;
  margin: 0 auto;
}

#staffstart-shopify-app-container .eJUOBV {
  max-width: 1080px !important;
}

/* フォロー・Instagramボタン共通 */

#staffstart-shopify-app-container button,
#staffstart-shopify-app-container a[target="_blank"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  line-height: 1;
  text-decoration: none;
  transition: .25s;
}

/* フォローするボタン */

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:first-of-type
button {
  border: 1px solid #111 !important;
  background: #fff !important;
  color: #111;
  border-radius: 999px;
  height: 38px;
  min-width: 300px;
  margin: 0 0 10px 0;
  padding: 0 20px;
  transition: .25s;
}

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:first-of-type
button:hover {
  background: #111 !important;
  color: #fff;
}

/* Instagram */

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:first-of-type
a[target="_blank"] {
  border-radius: 999px;
  height: 38px;
  padding: 0 10px;
  text-decoration: none;
  min-width: 300px;
  margin: 0;
}

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:first-of-type
div:has(> a[target="_blank"]) {
  width: 300px;
}

/* コーディネート一覧 */

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:nth-of-type(2)
div:has(> article) {
  display: grid !important;
  grid-template-columns: repeat(5, 200px) !important;
  justify-content: space-between;
  gap: 40px 20px !important;
}

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:nth-of-type(2)
article {
  width: 200px !important;
  max-width: 200px !important;
  min-width: 200px !important;
  margin: 0 !important;
}

#staffstart-shopify-app-container
main:has(img[alt="スタッフ名"])
section:nth-of-type(2)
article img {
  width: 200px !important;
  height: 266px !important;
  object-fit: cover;
}

.brand-staff-coordinate .staffstart-shopify-app-container article a > img,
#staffstart-shopify-app-container main:has(> section .mySwiper) > section:nth-of-type(2) article a > img,
#staffstart-shopify-app-container main:has(img[alt="スタッフ名"]) section:nth-of-type(2) article a > img {
  width: 50px !important;
  height: 50px !important;
}

/*
  ==============================
  Staff Detail SP
  ==============================
*/

@media screen and (max-width: 768px) {
  /* スタッフ詳細ページ全体 */

  #staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"]) {
    width: 90% !important;
    max-width: none !important;
    margin: 0 auto !important;
  }

  #staffstart-shopify-app-container > div > div:first-child {
    width: 100% !important;
    margin: 0 auto;
  }
  
  /* コーディネート一覧 */

  #staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"])
  section:nth-of-type(2)
  div:has(> article) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 4% !important;
    row-gap: 24px !important;
    width: 100% !important;
  }

  #staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"])
  section:first-of-type
  div:has(> a[target="_blank"]) {
    width: 100%;
    border-bottom: 1px solid #d5d5d5;
    margin: 0 0 20px;
    padding: 20px 0 !important;
  }

  #staffstart-shopify-app-container main:has(img[alt="スタッフ名"]) section:first-of-type a[target="_blank"] {
    min-width: 100%;
  }

  /* カード */

  #staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"])
  section:nth-of-type(2)
  article {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }

  /* リンク・画像 */

  #staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"])
  section:nth-of-type(2)
  article > a {
    display: block;
    width: 100% !important;
  }

  #staffstart-shopify-app-container
  main:has(img[alt="スタッフ名"])
  section:nth-of-type(2)
  article img {
    display: block;
    width: 100% !important;
    height: auto !important;
    object-fit: cover;
  }
}

/*
  ==============================
  Instagram Live Blog List
  ==============================
*/

.main-blog--brand-feature.main-blog--iglive .article-card .card__inner {
  aspect-ratio: 16 / 9;
  height: auto !important;
}

.main-blog--brand-feature.main-blog--iglive .article-card .card__media,
.main-blog--brand-feature.main-blog--iglive .article-card .media,
.main-blog--brand-feature.main-blog--iglive .article-card__image {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 344px !important;
  padding-bottom: 0 !important;
  overflow: hidden;
}

.main-blog--brand-feature.main-blog--iglive .article-card .card__inner {
  min-height: 344px !important;
}

.main-blog--brand-feature.main-blog--iglive .article-card__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

/*
  ==============================
  Brand Quick Add Modal
  ==============================
*/

.quick-add-modal--brand .quick-add-modal__content {
  width: min(1120px, 92vw);
  max-width: 1120px;
  max-height: 90vh;
  padding: 0;
  overflow: hidden;
  background: #fff;
}

.quick-add-modal--brand .quick-add-modal__content-info {
  max-height: 90vh;
  overflow-y: auto;
}

.quick-add-modal--brand .quick-add-modal__toggle {
  top: 20px;
  right: 20px;
  z-index: 10;
}

.brand-quick-add {
  padding: 56px 48px 48px;
}

.brand-quick-add__layout {
  display: grid;
  grid-template-columns: 352px minmax(0, 1fr);
  gap: 64px;
  align-items: start;
}

.brand-quick-add__media {
  position: sticky;
  top: 0;
}

.brand-quick-add__main-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.brand-quick-add__details {
  min-width: 0;
}

.brand-quick-add__header {
  padding-right: 48px;
  margin-bottom: 28px;
}

.brand-quick-add__title {
  margin: 0 0 12px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .04em;
}

.brand-quick-add__price .price {
  font-size: 24px;
}
.brand-quick-add__price .price__sale .price-item price-item--regular {
  font-size: 18px !important;
}
.price-item.price-item--sale {
  color: #cc0000;
}
.brand-quick-add__variants {
  border-top: 1px solid #d9d9d9;
}

.brand-quick-add__color-group {
  padding: 24px 0;
  border-bottom: 1px solid #d9d9d9;
}

.brand-quick-add__color-media {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}

.brand-quick-add__color-image-button {
  width: 70px;
  padding: 0;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
}

.brand-quick-add__color-image-button.is-active {
  border-color: #111;
}

.brand-quick-add__color-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.brand-quick-add__color-name {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: .04em;
}

.brand-quick-add__variant-rows {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.brand-quick-add__variant-row {
  display: grid;
  grid-template-columns: 70px
    60px
    90px
    160px
    32px;
  gap: 10px;
  align-items: center;
}

.brand-quick-add__variant-size,
.brand-quick-add__variant-stock,
.brand-quick-add__variant-price {
  font-size: 14px;
  line-height: 1.5;
}
.brand-quick-add__variant-price {
  font-size: 18px;
}

.brand-quick-add__variant-stock {
  color: #555;
}

.brand-quick-add__stock-low {
  color: #c00;
}

.brand-quick-add__variant-price {
  text-align: right;
  white-space: nowrap;
}

.brand-quick-add__variant-price s {
  display: block;
  margin-bottom: 2px;
  color: #999;
  font-size: 11px;
}

.brand-quick-add__form {
  margin: 0;
}

.brand-quick-add__cart-button,
.brand-quick-add__restock-button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
  width: 100%;
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #111;
  color: #fff;
  font-size: 14px;
  line-height: 1.3;
  cursor: pointer;
}

.brand-quick-add__cart-button:hover {
  background: #fff;
  color: #111;
}

.brand-quick-add__cart-button .svg-wrapper {
  width: 16px;
  height: 16px;
}

.brand-quick-add__restock-button {
  background: #e5e5e5;
  border-color: #e5e5e5;
  color: #111;
  cursor: pointer;
  opacity: 1;
}

.brand-quick-add__restock-button:hover {
  background: #d8d8d8;
  border-color: #d8d8d8;
  color: #111;
}

.brand-quick-add__variant-wishlist {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 36px;
  min-height: 36px;
}

.brand-quick-add__footer {
  margin-top: 30px;
  text-align: center;
}

.brand-quick-add__detail-link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 220px;
  min-height: 42px;
  padding: 10px 28px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  font-size: 13px;
  text-decoration: none;
}

.brand-quick-add__detail-link:hover {
  background: #111;
  color: #fff;
}

.brand-quick-add__variant-row.is-sold-out {
  opacity: 1;
}

/* Brand Quick Add：カラー画像とサイズ一覧を横並び */

.brand-quick-add__color-group {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  column-gap: 20px;
  align-items: start;
}

.brand-quick-add__color-media {
  display: block;
  margin-bottom: 0;
}

.brand-quick-add__color-image-button {
  display: block;
  width: 70px;
  margin: 0 0 10px;
}

.brand-quick-add__color-name {
  display: block;
  font-size: 12px;
  line-height: 1.5;
}

.brand-quick-add__variant-rows {
  min-width: 0;
  padding-top: 2px;
}

.brand-quick-add__wishlist-button {
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  background: transparent;
  border: 0;
  color: #111;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.brand-quick-add__wishlist-button.is-added {
  color: #d93636;
}

.brand-quick-add__wishlist-button:disabled {
  cursor: wait;
  opacity: 0.5;
}

/* ==============================
  Brand Quick Add Modal Responsive
============================== */

.quick-add-modal--brand .quick-add-modal__content,
.quick-add-modal--brand .quick-add-modal__content-info,
.quick-add-modal--brand .brand-quick-add,
.quick-add-modal--brand .brand-quick-add__layout,
.quick-add-modal--brand .brand-quick-add__details,
.quick-add-modal--brand .brand-quick-add__variants,
.quick-add-modal--brand .brand-quick-add__color-group,
.quick-add-modal--brand .brand-quick-add__variant-rows {
  box-sizing: border-box;
  min-width: 0;
}

/* 狭めのPC・タブレット */
@media screen and (max-width: 1100px) {
  .quick-add-modal--brand .quick-add-modal__content {
    width: calc(100% - 40px);
    max-width: 920px;
  }

  .quick-add-modal--brand .quick-add-modal__content-info {
    width: 100%;
    padding: 0;
  }

  .brand-quick-add {
    padding: 52px 32px 36px;
  }

  .brand-quick-add__layout {
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    gap: 32px;
  }

  .brand-quick-add__media {
    width: 100%;
    max-width: 260px;
  }

  .brand-quick-add__variant-row {
    grid-template-columns: 70px 60px 90px 160px 32px;
    gap: 8px;
  }
}
@media screen and (max-width: 900px) {
  .quick-add-modal--brand .quick-add-modal__content {
    width: calc(100% - 30px);
  }

  .brand-quick-add {
    padding: 48px 24px 32px;
  }

  .brand-quick-add__layout {
    grid-template-columns: minmax(140px, 210px) minmax(0, 1fr);
    gap: 24px;
  }

  .brand-quick-add__media {
    max-width: 210px;
  }
}
/* 画像と商品情報を上下にする */
@media screen and (max-width: 850px) {
  .quick-add-modal--brand .quick-add-modal__content {
    top: 20px;
    bottom: 20px;
    width: calc(100% - 30px);
    max-height: none;
    margin: 0 auto;
  }

  .quick-add-modal--brand .quick-add-modal__content-info {
    max-height: 100%;
  }

  .brand-quick-add {
    width: 100%;
    padding: 56px 24px 32px;
  }

  .brand-quick-add__layout {
    display: block;
  }

  .brand-quick-add__media {
    position: static;
    width: min(400px, 70%);
    max-width: 480px;
    margin: 0 auto 32px;
  }

  .brand-quick-add__header {
    padding-right: 40px;
  }

  .brand-quick-add__variant-row {
    grid-template-columns:
      52px
      minmax(60px, 1fr)
      minmax(76px, auto)
      minmax(130px, 160px)
      32px;
  }
}



/* ==============================
  Brand Quick Add Modal - SP
============================== */

@media screen and (max-width: 749px) {
  .quick-add-modal--brand .quick-add-modal__content {
    /* top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important; */
    width: 94% !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: 95dvh !important;
    margin: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }

  .quick-add-modal--brand .quick-add-modal__content-info {
    width: 100% !important;
    height: 100% !important;
    max-height: 100dvh !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .quick-add-modal--brand .quick-add-modal__toggle {
    position: fixed !important;
    top: 14px !important;
    right: 14px !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    background: #fff !important;
    z-index: 20 !important;
  }

  .quick-add-modal--brand .quick-add-modal__toggle .icon {
    width: 16px !important;
    height: 16px !important;
  }

  .brand-quick-add {
    box-sizing: border-box;
    width: 100%;
    padding: 56px 5% 40px;
  }

  .brand-quick-add__layout {
    display: block;
  }

  /* 商品メイン画像 */
  .brand-quick-add__media {
    position: static;
    width: 100%;
    max-width: 360px;
    margin: 0 auto 24px;
  }

  .brand-quick-add__main-image {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
  }

  .brand-quick-add__details {
    width: 100%;
    min-width: 0;
  }

  .brand-quick-add__header {
    margin: 0 0 22px;
    padding: 0;
    text-align: left;
  }

  .brand-quick-add__title {
    margin: 0 0 8px;
    padding-right: 36px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.04em;
  }

  .brand-quick-add__price .price {
    font-size: 14px;
  }

  .brand-quick-add__variants {
    width: 100%;
    border-top: 1px solid #d9d9d9;
  }

  /* カラー単位 */
  .brand-quick-add__color-group {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    column-gap: 14px;
    align-items: start;
    width: 100%;
    padding: 18px 0;
    border-bottom: 1px solid #d9d9d9;
  }

  .brand-quick-add__color-media {
    display: block;
    min-width: 0;
    margin: 0;
  }

  .brand-quick-add__color-image-button {
    display: block;
    width: 62px;
    margin: 0 0 7px;
    padding: 0;
  }

  .brand-quick-add__color-image {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
  }

  .brand-quick-add__color-name {
    display: block;
    font-size: 11px;
    line-height: 1.5;
    word-break: break-word;
  }

  /* サイズ一覧 */
  .brand-quick-add__variant-rows {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
    padding: 0;
  }

  .brand-quick-add__variant-row {
    display: grid;
    grid-template-columns:
      minmax(40px, auto)
      minmax(58px, 1fr)
      auto
      38px;
    grid-template-areas:
      "size stock price price"
      "form form form wishlist";
    gap: 8px 8px;
    align-items: center;
    width: 100%;
    min-width: 0;
  }

  .brand-quick-add__variant-size {
    grid-area: size;
  }

  .brand-quick-add__variant-stock {
    grid-area: stock;
  }

  .brand-quick-add__variant-price {
    grid-area: price;
  }

.brand-quick-add__form {
  grid-area: form;
  width: 100%;
  min-width: 0;
  margin: 0;
}

.brand-quick-add__variant-wishlist {
  grid-area: wishlist;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  min-width: 38px;
  min-height: 38px;
  align-self: center;
}

  .brand-quick-add__variant-size,
  .brand-quick-add__variant-stock,
  .brand-quick-add__variant-price {
    min-width: 0;
    font-size: 11px;
    line-height: 1.5;
  }

  .brand-quick-add__variant-size {
    font-weight: 500;
  }

  .brand-quick-add__variant-stock {
    color: #555;
    white-space: nowrap;
  }

  .brand-quick-add__variant-price {
    text-align: right;
    white-space: nowrap;
  }

  .brand-quick-add__variant-price s {
    display: inline;
    margin: 0 4px 0 0;
    font-size: 10px;
  }

  .brand-quick-add__cart-button,
  .brand-quick-add__restock-button {
    width: 100%;
    min-height: 38px;
    padding: 8px 12px;
    font-size: 11px;
  }

  /* スマホではhoverによる反転を防止 */
  .brand-quick-add__cart-button:hover {
    border-color: #111;
    background: #111;
    color: #fff;
  }

  .brand-quick-add__cart-button .svg-wrapper {
    width: 15px;
    height: 15px;
  }

  .brand-quick-add__variant-wishlist {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    min-width: 32px;
    min-height: 32px;
  }

.brand-quick-add__wishlist-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  padding: 0;
  font-size: 22px;
  line-height: 1;
}

  .brand-quick-add__footer {
    margin-top: 28px;
    padding-bottom: 20px;
  }

  .brand-quick-add__detail-link {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: 10px 20px;
    font-size: 12px;
  }
}

/*
  ==============================
  Header icon layout
  ==============================
*/

/* 共通ヘッダー */

.header-wrapper .header > .header__icons .header__icon {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  min-width: 44px !important;
  height: auto !important;
  padding: 0 !important;
  text-decoration: none;
}

.header-wrapper .header > .header__icons .header__icon > .svg-wrapper {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px !important;
}

.header-wrapper .header > .header__icons .header__icon > .svg-wrapper svg,
.header-wrapper .header > .header__icons .header__icon > .svg-wrapper > span,
.header-wrapper .header > .header__icons .header__icon > .svg-wrapper > span svg {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
}

/* ブランドヘッダー */

.brand-site-header__icons .header__icon {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  min-width: 48px !important;
  height: auto !important;
  padding: 0 !important;
}

.brand-site-header__icons .header__icon > .svg-wrapper {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px !important;
}

.brand-site-header__icons .header__icon > .svg-wrapper svg,
.brand-site-header__icons .header__icon > .svg-wrapper > span,
.brand-site-header__icons .header__icon > .svg-wrapper > span svg {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
}

/* アイコン下テキスト */

.header__icon-label,
.brand-site-header__icon-label {
  display: none !important;
  /* display: block; */
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.2;
  white-space: nowrap;
}

/* 260711 FAQ改修 weblab */

/* 幅を全幅に */

.faq-page .collapsible-content-wrapper-narrow {
  max-width: 1080px;
  padding-left: 20px;
  padding-right: 20px;
}

.faq-page .collapsible-content__wrapper {
  padding-top: 0;
  padding-bottom: 0;
}

/* カテゴリ帯の下の囲みを消す */

.faq-page .collapsible-content__wrapper.content-container {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* カテゴリ間の余白 */

.faq-page .collapsible-section-layout {
  padding-top: 50px;
  padding-bottom: 50px;
}

.faq-page .faq-cat + .faq-cat {
  margin-top: 0;
}

/* 重複タイトル(FAQ)を非表示 */

.faq-page .main-page-title {
  display: none;
}

/* タイトル */

.faq-page .rich-text {
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 56px;
  padding-left: 20px;
  padding-right: 20px;
}

.faq-page .rich-text__wrapper {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: flex-start !important;
}

.faq-page .rich-text__blocks {
  width: 100%;
  max-width: 100%;
}

.faq-page .rich-text__heading {
  margin: 0;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
  text-align: left;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.1em;
  color: #000;
}

/* TOPへ戻る 非表示 */

.faq-page .rich-text:has(.rich-text__buttons) {
  display: none;
}

/* 最下部の余白 */

.faq-page #MainContent {
  padding-bottom: 80px;
}

/* カテゴリピル */

.faq-catnav {
  max-width: 1080px;
  margin: 64px auto 54px;
  padding: 0 20px;
}

.faq-catnav__list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.faq-catnav__item {
  margin: 0;
}

.faq-catnav__btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 40px;
  padding: 0 33px;
  border: 1px solid #ebebeb;
  border-radius: 30px;
  background: #fff;
  color: #222;
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
  transition: background .3s, border-color .3s;
}

.faq-catnav__btn::after {
  content: "";
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  margin-top: -3px;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
  transform: rotate(45deg);
}

.faq-catnav__btn:hover {
  background: #f6f6f6;
  border-color: #ddd;
}

/* カテゴリ帯 */

.faq-page .collapsible-content__header {
  margin-bottom: 0;
}

.faq-page .collapsible-content__heading.faq-cat__heading {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  margin: 0;
  padding: 16px 0;
  background: #f6f6f6;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
  user-select: none;
}

/* 帯の開閉マーカー（開＝−） */

.faq-page .collapsible-content__heading.faq-cat__heading::before {
  content: "";
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  background: linear-gradient(#222, #222) center / 14px 1.5px no-repeat;
}

/* 閉＝＋ */

.faq-page .faq-cat--closed .faq-cat__heading::before {
  background: linear-gradient(#222, #222) center / 14px 1.5px no-repeat,
    linear-gradient(#222, #222) center / 1.5px 14px no-repeat;
}

/* カテゴリ折りたたみ */

.faq-page .faq-cat--closed .collapsible-content__grid {
  display: none;
}

/* 1カラム固定・はみ出し解消 */

.faq-page .collapsible-content__grid {
  display: block;
  margin: 48px 0 0;
}

.faq-page .collapsible-content__grid .grid__item {
  width: 100%;
  max-width: 100%;
  padding: 0;
}

/* Q&A行 */

.faq-page .accordion {
  border: 0;
  border-bottom: 1px solid #ebebeb;
}

/* 質問リストの先頭にも区切り線 */

.faq-page .grid__item > .accordion:first-child {
  border-top: 1px solid #ebebeb;
}

.faq-page .accordion summary {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px 0;
  cursor: pointer;
  list-style: none;
}

.faq-page .accordion summary::-webkit-details-marker {
  display: none;
}

/* 既存キャレットを隠す */

.faq-page .accordion summary > .icon-caret,
.faq-page .accordion summary > svg,
.faq-page .accordion summary .icon-accordion {
  display: none;
}

.faq-page .accordion__title {
  flex: 1 1 auto;
  margin: 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}

/* 行の開閉マーカー（閉＝＋） */

.faq-page .accordion summary::after {
  content: "";
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  background: linear-gradient(#222, #222) center / 14px 1.5px no-repeat,
    linear-gradient(#222, #222) center / 1.5px 14px no-repeat;
}

/* 開＝− */

.faq-page .accordion details[open] > summary::after {
  background: linear-gradient(#222, #222) center / 14px 1.5px no-repeat;
}

/* 回答（色・サイズはQと同一・左右2emインデント） */

.faq-page .accordion__content {
  padding: 4px 2em 20px;
  font-size: 15px;
  line-height: 1.8;
  color: inherit;
}

.faq-page .accordion__content h5 {
  margin: 0;
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;
}

.faq-page .accordion__content p {
  margin: 0 0 1em;
}

.faq-page .accordion__content p:last-child {
  margin-bottom: 0;
}

.faq-page .accordion__content a {
  color: #222;
  text-decoration: underline;
}

/* SP */

@media screen and (max-width: 768px) {
  .faq-page .rich-text,
  .faq-page .collapsible-content-wrapper-narrow {
    padding-left: 5%;
    padding-right: 5%;
  }

  .faq-page .rich-text {
    padding-top: 32px;
  }

  .faq-page .rich-text__heading {
    font-size: 2.0rem;
  }

  .faq-catnav {
    margin: 33px auto 24px;
    padding: 0 5%;
  }

  .faq-page .faq-cat + .faq-cat {
    margin-top: 0;
  }

  /* SP：カテゴリ間・帯→質問を設計値(狭め)に */

  .faq-page .collapsible-section-layout {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .faq-page .collapsible-content__grid {
    margin-top: 16px;
  }

  .faq-catnav__list {
    gap: 8px;
  }

  .faq-catnav__btn {
    height: 34px;
    padding: 0 14px;
    gap: 8px;
    font-size: 12px;
  }

  .faq-page .collapsible-content__heading.faq-cat__heading {
    padding: 14px 0;
    font-size: 15px;
  }

  .faq-page .accordion summary {
    padding: 16px 0;
    gap: 14px;
  }

  .faq-page .accordion__title {
    font-size: 14px;
  }

  .faq-page .accordion__content {
    padding: 12px 2em 14px;
    font-size: 14px;
  }
}

/* 260711 カート改修 weblab */

/* 見出し「ショッピングカート」＝FAQ見出しと同一スタイルに揃える（Dawnの大サイズを!importantで抑える） */

.cart-page .title-wrapper-with-link {
  display: block;
  padding-top: 104px;
  margin-bottom: 24px;
}

.cart-page .title--primary {
  margin: 0;
  padding-bottom: 30px;
  border-bottom: 1px solid #ebebeb;
  text-align: left;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2.6rem !important;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.1em;
  color: #000;
}

/* FAQと同じく768px以下は2.0rem＋上余白も縮小 */

@media screen and (max-width: 768px) {
  .cart-page .title--primary {
    font-size: 2rem !important;
  }

  .cart-page .title-wrapper-with-link {
    padding-top: 40px;
  }
}

/* 空カート時も見出しを表示 */

.cart-page cart-items.is-empty .title-wrapper-with-link {
  display: block;
}

/* 左右余白（.page-width が padding:0 のため、カート内容のみ付与。ヘッダー/フッターは対象外・SVGで最終調整予定） */

.cart-page cart-items .page-width,
.cart-page .cart__footer-wrapper .page-width {
  padding-left: 40px;
  padding-right: 40px;
}

/* 空カート文言（Figma: 18px・通常ウェイト） */

.cart-page .cart__empty-text {
  font-size: 1.8rem;
  font-weight: 400;
  margin-bottom: 12px;
}

/* スマホ：上余白を小さく・下余白を大きく */

@media screen and (max-width: 768px) {
  .cart-page .cart__warnings {
    padding-top: 12px;
  }

  .cart-page .cart__empty-text {
    margin-top: 8px;
    margin-bottom: 24px;
  }
}

/* 「買い物を続ける」：ボタン→下線付きテキストリンク（空カート） */

.cart-page .cart__warnings a.button {
  display: inline;
  background: none;
  border: 0;
  box-shadow: none;
  min-height: 0;
  padding: 0;
  color: #000;
  font-size: 1.4rem;
  text-decoration: underline;
}

/* Dawnボタンの枠線（::before/::after）を消して下線リンクだけに */

.cart-page .cart__warnings a.button::before,
.cart-page .cart__warnings a.button::after {
  display: none !important;
}

/* 会員ボックス：グレーの枠線で囲む・中央 */

.cart-page .mw-cart-login-box {
  max-width: 460px;
  margin: 56px auto 96px;
  /* 上:「買い物を続ける」との間 / 下:余白（SP80pxより少し大） */
  padding: 32px 24px;
  border: 1px solid #ebebeb;
  text-align: center;
}

.cart-page .mw-cart-login-box .cart__login-title {
  margin: 0 0 8px;
}

.cart-page .mw-cart-login-box .cart__login-paragraph {
  margin: 0;
  letter-spacing: -0.02em;
}

/* スマホ：会員ボックス 上余白を少し小さく・下余白をがっつり追加＋1行に収める（設計SP=左右16px・幅342px） */

@media screen and (max-width: 768px) {
  .cart-page cart-items .page-width,
  .cart-page .cart__footer-wrapper .page-width {
    padding-left: 16px;
    padding-right: 16px;
  }

  .cart-page .mw-cart-login-box {
    margin: 40px auto 80px;
    padding: 24px 14px;
  }

  .cart-page .mw-cart-login-box .cart__login-paragraph {
    font-size: 1.3rem;
  }
}

/* ログインに下線 */

.cart-page .cart__login-paragraph a {
  text-decoration: underline;
}

/* 商品テーブルの上に余白（送料無料バーとの間） */

.cart-page .cart__contents {
  margin-top: 64px;
}

/* 商品テーブル見出し（商品/数量/合計）Figma: 14px #6E6E6E */

.cart-page .cart-items thead th {
  font-weight: 400;
  color: #6e6e6e;
  border-bottom: 1px solid #ebebeb;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
}

/* 商品行（罫線は各tdに付けて合計列まで全幅化） */

.cart-page .cart-item {
  border-bottom: none;
}

.cart-page .cart-item > td {
  padding-top: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #ebebeb;
}

/* Dawnは .cart__items 自体にも下罫線を引く（各行td罫線と二重になる）→ 消す */

.cart-page .cart__items {
  border-bottom: none;
  padding-bottom: 0;
}

.cart-page .cart-item__name {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  color: #000;
}

.cart-page .cart-item__details {
  font-size: 1.3rem;
  color: #6e6e6e;
}

/* 商品金額：太め・黒（Figma 16px） */

.cart-page .cart-item__price-wrapper .price,
.cart-page .cart-item .dualPrice {
  color: #000;
  font-weight: 600;
  font-size: 1.6rem;
}

/* color/size等の詳細 Figma 14px */

.cart-page .cart-item__details .product-option {
  font-size: 1.4rem;
}

/* 数量ステッパー（丸ボタン・枠線削除・上下中央） */

.cart-page .cart-quantity {
  border: none;
  min-height: 0;
  align-items: center;
}

.cart-page .cart-quantity::before,
.cart-page .cart-quantity::after {
  box-shadow: none !important;
}

.cart-page .cart-quantity .quantity__button {
  width: 28px;
  height: 28px;
  border: 1px solid #ccc;
  border-radius: 50%;
}

.cart-page .cart-quantity .quantity__input {
  width: 36px;
  height: 50px;
  min-height: 50px;
  margin: 0 10px;
  /* ±ボタンと離す */
  padding: 0;
  border: 1px solid #ebebeb;
  /* 「1」の周りにグレーの四角（縦長・正方形寄り） */
  text-align: center;
  line-height: 48px;
}

/* 数量とゴミ箱アイコンを上下中央で揃える */

.cart-page .cart-item__quantity-wrapper {
  align-items: center;
}

/* 行内で 数量・合計 を上下中央に */

.cart-page .cart-item__media,
.cart-page .cart-item__details {
  vertical-align: top;
}

@media screen and (min-width: 769px) {
  /* PC表示の合計セル(.small-hide)のみ table-cell 化（アプリのblockification対策） */

  .cart-page table.cart-items td.cart-item__quantity,
  .cart-page table.cart-items td.cart-item__totals.small-hide {
    display: table-cell !important;
    vertical-align: middle !important;
  }
}

/* 備考欄（注文に関するご要望など） */

.cart-page .cart__note label {
  display: block;
  font-weight: 400;
  font-size: 1.4rem;
  color: #000;
  margin-bottom: 8px;
}

/* 備考欄の列幅を広げる（Dawnは固定35rem=350px。設計は約440px） */

.cart-page .cart__footer > .cart__note {
  width: 44rem;
  max-width: none;
}

.cart-page .cart__note textarea {
  width: 100%;
  min-height: 160px;
  border: 1px solid #cfcfcf;
  box-shadow: none !important;
  background: #fff;
  padding: 14px 16px;
}

/* Dawnのフィールド枠(box-shadow ::after)を消してグレー枠だけに */

.cart-page .cart__note::after,
.cart-page .cart__note::before {
  box-shadow: none !important;
}

/* 合計 */

.cart-page .totals__total {
  font-weight: 700;
}

/* 「ディスカウントと配送料は…」：上の余白を広げて下げ、下のボタンに寄せる */

.cart-page .tax-note {
  color: #888;
  font-size: 1.2rem;
  margin-top: 20px;
  margin-bottom: 8px;
}

/* 商品合計(税込)の下に黒い罫線（設計: 2px黒・324px・右寄せで左に伸びる） */

.cart-page .totals {
  border-bottom: 2px solid #000;
  padding-bottom: 12px;
  margin-bottom: 12px;
}

/* 合計金額：黒・太（商品金額と同じ） */

.cart-page .totals__total-value {
  color: #000;
  font-weight: 600;
}

/* 購入手続きボタン：黒・角丸ピル・横幅を縮めて右寄せ（Dawnの枠線::afterを削除） */

.cart-page .cart__ctas {
  display: flex;
  justify-content: flex-end;
  margin-top: 6px;
}

.cart-page .cart__checkout-button {
  background: #111;
  border-radius: 999px;
  color: #fff;
  min-height: 0;
  width: auto;
  padding: 20px 76px;
  font-size: 1.4rem;
}

.cart-page .cart__checkout-button::after,
.cart-page .cart__checkout-button::before {
  box-shadow: none !important;
}

/* shopボタン：購入手続き直下・同幅・右寄せ */

.cart-page .cart__dynamic-checkout-buttons {
  margin: 12px 0 0 auto;
  padding: 0;
}

.cart-page .cart__dynamic-checkout-buttons > * {
  width: 100% !important;
}

/* shopボタンのグレー枠線・背景を除去（ホスト要素側） */

.cart-page .cart__dynamic-checkout-buttons,
.cart-page .cart__dynamic-checkout-buttons [data-shopify="dynamic-checkout-cart"],
.cart-page .cart__dynamic-checkout-buttons shopify-accelerated-checkout-cart,
.cart-page .cart__dynamic-checkout-buttons shopify-accelerated-checkout {
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
}

/* 移動した「買い物を続ける」（購入手続きボタンの下・右寄せ・下線・ボタンと余白を開ける） */

.cart-page .cart__continue-wrap {
  margin-top: 44px;
  /* ボタンからもう少し下げる */
  text-align: right;
}

.cart-page .cart__continue-wrap a,
.cart-page .cart__continue-wrap #continue-shopping {
  font-size: 1.3rem;
}

/* フッター（購入エリア）下の余白を拡大 */

.cart-page .cart__footer {
  padding-bottom: 100px;
}

.cart-page .cart__continue-wrap a,
.cart-page #continue-shopping {
  text-decoration: underline;
}

/* ===== SP(スマホ)専用調整 ===== */

@media screen and (max-width: 768px) {
  /* 数量セルの上の内側罫線を消す（SPはグリッド表示） */

  .cart-page .cart-item > td.cart-item__details,
  .cart-page .cart-item > td.cart-item__totals {
    border-bottom: none;
  }

  /* 数量セルの上部余白をゼロに（詳細のすぐ下に付ける） */

  .cart-page .cart-item > td.cart-item__quantity {
    padding-top: 0;
  }

  /* 備考欄：PC用の44rem固定だと画面からはみ出す→全幅。縦も少し小さく */

  .cart-page .cart__footer > .cart__note {
    width: 100%;
    max-width: 100%;
  }

  .cart-page .cart__note textarea {
    min-height: 120px;
  }

  /* 商品合計：ラベルも金額もまとめて右寄せ */

  .cart-page .totals {
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    gap: 12px;
  }

  .cart-page .totals__total-value {
    text-align: right;
  }

  /* 購入ボタン・shop・「買い物を続ける」を中央寄せ */

  .cart-page .cart__ctas {
    justify-content: center;
  }

  .cart-page .cart__dynamic-checkout-buttons {
    margin-left: auto;
    margin-right: auto;
  }

  .cart-page .cart__continue-wrap {
    text-align: center;
  }
}

/* 会員ボックス（空カート） */

.cart-page .cart__login-title {
  font-size: 1.6rem;
  font-weight: 700;
}

/* 「ブランドから他の商品を探す」ブロック非表示（Mattrz campaign 123457・設計で削除） */

.cart-page .mz_brandSection_92963,
.cart-page #mattrz-cx-campaign-element-campaign-123457 {
  display: none;
}

/* CHECKED ITEM(recently-viewed)セクションの下padding(228px)を上(64px)に合わせて縮小・PC/SP共通 */

.cart-page [class*="recently_viewed_custom_Y4Cz78"] {
  padding-bottom: 64px !important;
}

/* カート上部の巨大余白対策（背高2要素＝検索パネル/閉ドロワーをフロー外へ・カート限定） */

.cart-page .custom-search-panel {
  position: fixed !important;
}

.cart-page .menu-drawer-container:not([open]) .menu-drawer {
  display: none !important;
}

/* カート限定で body grid→flex縦積みに置換（空カート時にヘッダーが1fr行で100vhに伸びる問題を解消） */

.cart-page {
  display: flex !important;
  flex-direction: column !important;
}

.cart-page > #MainContent {
  flex: 1 0 auto !important;
}

/* 送料無料バー（Mattrz・全幅帯・中央・金額赤・丸ピルと下矢印を解除） */

.cart-page ._fs_bn_section {
  max-width: none;
  margin: 64px auto 0 !important;
  /* 上:罫線との間をさらに広く / 下:削除 */
  padding: 0;
  /* page-width内なので二重paddingを解消＝下線と同幅 */
}

.cart-page [id$="__fs_bn"] {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 11px 20px !important;
  background: #f6f6f6 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  color: #000 !important;
}

/* 下向き矢印（Mattrzの ::after CSS三角形）を削除 */

.cart-page [id$="__fs_bn"]::after,
.cart-page [id$="__fs_bn"]::before {
  display: none !important;
}

/* 本文と金額（インライン・サイズ差）を上下中央で揃える */

.cart-page [id$="__fs_bn"] fsdiv,
.cart-page [id$="__fs_bn"] fsspan,
.cart-page [id$="__fs_bn"] span {
  vertical-align: middle;
  line-height: 1;
}

.cart-page [id$="_fs_free_shipping"] {
  color: #e43f42 !important;
  font-size: 2.2rem !important;
  font-weight: 400 !important;
  vertical-align: middle;
  line-height: 1;
  position: relative;
  top: -2px;
  /* 金額が下寄りに見えるのを微補正 */
}

/* スマホ：送料無料バーのグレー内部余白を追加・文字を小さく・罫線との間を縮小 */

@media screen and (max-width: 768px) {
  .cart-page [id$="__fs_bn"] {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    font-size: 1.4rem !important;
  }

  .cart-page [id$="_fs_free_shipping"] {
    font-size: 1.9rem !important;
  }

  .cart-page ._fs_bn_section {
    margin: 32px auto 24px !important;
  }
}

/* 260711 ログイン改修 weblab */

/* Dawnの .customer 幅制限(478px)・中央寄せを解除（全幅1080・左寄せ基調） */

body.login-page .customer.login {
  max-width: 108rem !important;
  text-align: left;
}

/* 見出し「ログイン」左寄せ・下線 */

.login-page .customer.login h1 {
  text-align: left;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-bottom: 40px;
}

/* セクション見出し（会員の方はこちら / 初めての方へ）＝アイコン＋中央 */

.login-page .mw-login-head {
  text-align: center;
  margin: 0 0 30px;
}

/* 見出し下の余白を少し大きく */

.login-page .mw-login-head--member {
  margin-top: 72px;
}

/* タイトル下線からアイコンまで */

.login-page .mw-login-head--new {
  margin-top: 96px;
}

/* 初めての方へアイコン上の余白 */

.login-page .mw-login-head__ico {
  display: inline-block;
  line-height: 0;
}

.login-page .mw-login-head .mw-ico {
  width: 30px;
  height: 30px;
  color: #111;
}

.login-page .mw-login-head__title {
  margin: 6px 0 0;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #000;
}

/* ログイン/recoverフォーム＝グレー枠・中央（#F6F6F6・幅536px） */

.login-page .mw-login-form,
.login-page .mw-recover-form {
  max-width: 536px;
  margin: 0 auto;
  background: #f6f6f6;
  padding: 40px;
  box-sizing: border-box;
}

.login-page .mw-login-form .field,
.login-page .mw-recover-form .field {
  margin-bottom: 16px;
}

.login-page .mw-login-form input[type="email"],
.login-page .mw-login-form input[type="password"],
.login-page .mw-recover-form input[type="email"] {
  width: 100%;
  background: #fff;
  border: none;
  box-shadow: none;
}

.login-page input::placeholder {
  color: #909090;
  opacity: 1;
}

/* Dawnの入力枠線は input ではなく .field::after のbox-shadowで描かれる（黒枠の正体）→消す */

.login-page .mw-login-form .field::after,
.login-page .mw-login-form .field::before,
.login-page .mw-recover-form .field::after,
.login-page .mw-recover-form .field::before {
  display: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* ※ラベルはDawnのフロートラベル（空欄時は入力欄内に表示＝プレースホルダ相当）を活かすため隠さない。 */

/* 260717 ログイン エラー文を左寄せ（SP）weblab */

@media screen and (max-width: 768px) {
  .login-page .form__message {
    justify-content: flex-start !important;
    text-align: left !important;
    width: 100% !important;
  }

  .login-page .errors {
    text-align: left !important;
    padding-left: 0 !important;
  }

  .login-page .errors ul {
    padding-left: 0 !important;
    margin: 0 !important;
    list-style-position: inside !important;
  }

  .login-page .errors li {
    text-align: left !important;
  }
}

/* パスワードお忘れリンク：パスワード欄の下・左寄せ・小・下線 */

.login-page .mw-login-form a[href="#recover"] {
  display: inline-block;
  margin: 4px 0 24px;
  font-size: 1.3rem;
  text-decoration: underline;
  color: #333;
}

/* 会員ログインボタン：黒・角丸ピル・中央（実測240×52） */

.login-page .mw-login-form > button {
  display: block;
  margin: 0 auto;
  width: 240px;
  min-height: 52px;
  padding: 0;
  background: #111;
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 1.4rem;
}

.login-page .mw-login-form > button::after,
.login-page .mw-login-form > button::before {
  box-shadow: none !important;
}

/* ── 初めての方へ ── */

/* 見出し文（左右の線は無し・中央） */

.login-page .mw-login-newcomer__lead {
  margin: 0 auto 6px;
  font-size: 1.5rem;
  font-weight: 700;
  color: #111;
  text-align: center;
}

/* 文言直下の装飾罫線（支給SVG・368px・中央）。余白は小さめ */

.login-page .mw-login-newcomer__rule {
  margin: 0 auto 28px;
  text-align: center;
  color: #111;
  line-height: 0;
}

.login-page .mw-login-newcomer__rule .mw-rule {
  height: auto;
}

/* PC用罫線（368px）を表示・SP用は隠す */

.login-page .mw-rule--pc {
  display: inline-block;
  width: 368px;
  max-width: 100%;
}

.login-page .mw-rule--sp {
  display: none;
  width: 208px;
  max-width: 100%;
}

/* 見出し文の改行：PCは1行（改行無効）、SPは「！」で改行して2行 */

.login-page .mw-newcomer-br {
  display: none;
}

/* 新規会員登録：黒ピル・中央（240×52） */

.login-page .mw-login-newcomer__cta {
  text-align: center;
  margin-bottom: 40px;
}

.login-page .mw-login-register {
  display: inline-block;
  width: 240px;
  line-height: 52px;
  background: #111;
  color: #fff;
  border-radius: 999px;
  font-size: 1.4rem;
  text-align: center;
  text-decoration: none;
}

/* ポイントカード（#EDE58C・2列・gap4px・白丸アイコン80px・左上リボン） */

.login-page .mw-login-points {
  max-width: 1080px;
  margin: 0 auto 100px;
  /* 4バナー下の余白（バナー高128pxより少し小さめ） */
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
}

.login-page .mw-login-points__card {
  position: relative;
  min-height: 128px;
  padding: 20px 24px 20px 128px;
  background: #ede58c;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}
/* @media screen and (min-width: 769px) {
  .login-page .mw-login-points__card:nth-child(5) {
    grid-column: 1 / -1;
    padding: 20px 24px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 24px;
    text-align: center;
  }
} */

/* 左上リボン＝角を斜めに横切る緑の帯（三角ではない）。カードのoverflow:hiddenで両端を切る */

.login-page .mw-login-points__ribbon {
  position: absolute;
  top: 15px;
  left: -33px;
  width: 100px;
  height: 15px;
  background: #9ecb83;
  transform: rotate(-45deg);
}

.login-page .mw-login-points__icon {
  position: absolute;
  left: 32px;
  top: 50%;
  transform: translateY(-50%);
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* @media screen and (min-width: 769px) {
  .login-page .mw-login-points__card:nth-child(5) .mw-login-points__icon {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    margin-bottom: 0;
  }
} */
.login-page .mw-login-points__icon svg {
  width: 46px;
  height: 46px;
  color: #111;
}

.login-page .mw-login-points__body {
  display: block;
}

/* 「（仮）貯まったポイントは」＝細い黒枠の四角で囲む（設計） */

.login-page .mw-login-points__note {
  display: inline-block;
  font-size: 1.2rem;
  color: #1b1311;
  border: 1px solid #1b1311;
  padding: 2px 8px;
}

.login-page .mw-login-points__main {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  color: #111;
  margin-top: 0;
  line-height: 1.4;
}

/* ── パスワードリセット(メール入力/#recover) ── */

/* :target で見出しにフォーカスが当たり青枠が出るのを抑制 */

.login-page .customer.login h1:focus {
  outline: none;
}

/* サブテキスト「パスワードをリセットするためのメールを送信します」中央（SP既定・上部余白あり） */

.login-page #recover + div > p {
  text-align: center;
  font-size: 1.5rem;
  margin: 40px 0 12px;
  /* 260712 SP: 上部余白を大きく・下部を小さく weblab */
}

/* 260712 PC: サブテキストを下げて上部余白を取り、左寄せ＋グレー枠(536中央)と左端を揃える weblab */

@media screen and (min-width: 769px) {
  .login-page #recover + div > p {
    max-width: 536px;
    margin: 60px auto 12px;
    /* 260712 PC上部余白60・下部12。左寄せ・536中央は維持 weblab */
    text-align: left;
  }
}

/* キャンセル(白枠ピル)＋送信(黒ピル)を中央横並び */

.login-page .mw-recover-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

/* 送信：黒ピル 240×52 */

.login-page .mw-recover-form > .mw-recover-actions button {
  width: 240px;
  min-height: 52px;
  padding: 0;
  background: #111;
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 1.4rem;
  margin: 0;
}

.login-page .mw-recover-form button::after,
.login-page .mw-recover-form button::before {
  box-shadow: none !important;
}

/* キャンセル：白・黒枠ピル 183×51 */

.login-page .mw-recover-form a[href="#login"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 183px;
  min-height: 51px;
  background: #fff;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  font-size: 1.4rem;
  margin: 0;
  text-decoration: none;
  /* 260712 キャンセルの下線を除去 weblab */
}

@media screen and (max-width: 768px) {
  .login-page .mw-login-form {
    padding: 24px 16px;
  }

  .login-page .mw-login-head--member {
    margin-top: 48px;
  }

  /* SP：PC72pxの約2/3 */

  .login-page .mw-login-head--new {
    margin-top: 56px;
  }

  .login-page .mw-login-newcomer__lead {
    font-size: 1.4rem;
    line-height: 1.6;
  }

  .login-page .mw-newcomer-br {
    display: inline;
  }

  /* SP：「！」で改行して2行 */

  /* SP：罫線をSP用SVG(208px)に差し替え */

  .login-page .mw-rule--pc {
    display: none;
  }

  .login-page .mw-rule--sp {
    display: inline-block;
  }

  .login-page .mw-login-points {
    grid-template-columns: 1fr;
  }

  /* SP: アイコンを小さめ・左詰めにして本文を1行に収める */

  .login-page .mw-login-points__card {
    padding-left: 96px;
  }

  .login-page .mw-login-points__icon {
    left: 16px;
    width: 64px;
    height: 64px;
  }

  .login-page .mw-login-points__icon svg {
    width: 38px;
    height: 38px;
  }

  .login-page .mw-login-points__note {
    font-size: 1.1rem;
  }

  .login-page .mw-login-points__main {
    font-size: 1.3rem;
    white-space: nowrap;
  }
}

/* 260711 会員登録改修 weblab */

/* Dawnの.customer幅制限(478px)を解除（タイトル全幅・グレー枠は中央）。customer.cssが後読みのため!important */

body.register-page .customer.register {
  max-width: 108rem !important;
  text-align: left;
}

/* 見出し「新規会員登録」左寄せ・下線 */

.register-page .customer.register h1 {
  text-align: left;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-bottom: 60px;
  /* 260712 タイトル下線〜グレー枠の上部余白を40→60(1.5倍) weblab */
}

/* フォーム＝グレー枠・中央（#F6F6F6・536px） */

.register-page .mw-register-form {
  max-width: 536px;
  margin: 0 auto 70px;
  /* 260712 グレー枠下の余白 56→70(1.25倍) weblab */
  background: #f6f6f6;
  padding: 40px;
  box-sizing: border-box;
}

.register-page .mw-register-form .field {
  margin-bottom: 16px;
}

.register-page .mw-register-form input[type="text"],
.register-page .mw-register-form input[type="email"],
.register-page .mw-register-form input[type="password"] {
  width: 100%;
  background: #fff;
  border: none;
  box-shadow: none;
}

.register-page input::placeholder {
  color: #909090;
  opacity: 1;
}

/* Dawnの入力枠線（.field::after box-shadow）を消す */

.register-page .mw-register-form .field::after,
.register-page .mw-register-form .field::before {
  display: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* メルマガ配信チェック */

.register-page .mw-register-form .accepts-marketing {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 16px;
  font-size: 1.4rem;
}

.register-page .mw-register-form .accepts-marketing label {
  margin: 0;
}

/* 注記「※ご住所は…」 */

.register-page .mw-register-note {
  margin: 0 0 24px;
  font-size: 1.3rem;
  color: #555;
}

/*
  260712 register: Mattrzアプリ注入（重複注記/特典バナー等）をまとめて非表示 weblab
  ※恒久対応はMattrz側でのcampaign停止が本筋
*/

body.register-page [id^="mattrz-cx-campaign-element-campaign-"],
body.register-page [id^="_fs_block"],
body.register-page [class^="_fs_block"],
body.register-page [id*="_fs_insText"],
body.register-page [class*="_fs_insText"] {
  display: none !important;
}

/* ボタン：黒・角丸ピル・中央（240×52） */

.register-page .mw-register-form > button {
  display: block;
  margin: 0 auto;
  width: 240px;
  min-height: 52px;
  padding: 0;
  background: #111;
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 1.4rem;
}

.register-page .mw-register-form > button::after,
.register-page .mw-register-form > button::before {
  box-shadow: none !important;
}

@media screen and (max-width: 768px) {
  .register-page .mw-register-form {
    padding: 24px 16px;
    margin-bottom: 56px;
  }

  /* 260712 SP下部余白は据え置き(PCは70) weblab */
}

/* 260711 パスワードリセット(PW入力)改修 weblab（260712 デザイン反映） */

/* 260712 上部巨大余白対策（カート同様。body grid→flex縦積み＋ヘッダーcustom_liquid非表示）weblab */

.reset-page {
  display: flex !important;
  flex-direction: column !important;
}

.reset-page > #MainContent {
  flex: 1 0 auto !important;
}

.reset-page .menu-drawer-container:not([open]) .menu-drawer {
  display: none !important;
}

.reset-page .custom-search-panel {
  position: fixed !important;
}

.reset-page [id$="__custom_liquid_4XnD3E"] {
  display: none !important;
}

/* Dawnの.customer幅制限を解除（タイトル全幅・グレー枠は中央） */

body.reset-page .customer.reset-password {
  max-width: 108rem !important;
  text-align: left;
}

/* 見出し「アカウントのパスワードをリセットする」左寄せ・下線 */

.reset-page .customer.reset-password h1 {
  text-align: left;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-top: 24px;
  /* 260712 SP上部余白（SP実測比較で60は過大→24）weblab */
  margin-bottom: 40px;
}

/* サブテキスト「新しいパスワードを入力してください」＝212のサブと同じ余白。SPは左寄せ（指示） */

.reset-page .customer.reset-password > p {
  text-align: left;
  /* SP：左寄せ */
  font-size: 1.5rem;
  margin: 40px 0 12px;
  /* SP：212と同じ 上40/下12 */
}

@media screen and (min-width: 769px) {
  .reset-page .customer.reset-password h1 {
    margin-top: 60px;
  }

  /* PC：上部余白60（実測比較） */

  .reset-page .customer.reset-password > p {
    max-width: 536px;
    margin: 60px auto 12px;
    /* PC：212と同じ 上60/下12・536中央・左寄せ */
    text-align: left;
  }
}

/* フォーム＝グレー枠・中央（#F6F6F6・536px） */

.reset-page .mw-reset-form {
  max-width: 536px;
  margin: 0 auto 70px;
  /* 260712 グレー枠下部余白 PC70（下は指示で拡大）weblab */
  background: #f6f6f6;
  padding: 40px;
  box-sizing: border-box;
}

.reset-page .mw-reset-form .field {
  margin-bottom: 16px;
}

.reset-page .mw-reset-form input[type="password"] {
  width: 100%;
  background: #fff;
  border: none;
  box-shadow: none;
}

.reset-page input::placeholder {
  color: #909090;
  opacity: 1;
}

.reset-page .mw-reset-form .field::after,
.reset-page .mw-reset-form .field::before {
  display: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* 260722 各フィールドのエラーを入力欄の下へ weblab */

.reset-page .mw-reset-form .field {
  flex-wrap: wrap !important;
}

.reset-page .mw-reset-form .field input[type="password"] {
  flex: 1 1 100% !important;
}

.reset-page .mw-reset-form .field .form__message {
  flex: 0 0 100% !important;
  width: 100% !important;
  order: 3 !important;
  justify-content: flex-start !important;
  margin-top: 6px !important;
}

/* ボタン：黒・角丸ピル・中央（240×52） */

.reset-page .mw-reset-form > button {
  display: block;
  margin: 24px auto 0;
  /* 260712 ボタン上余白24（フィールドmb16とのマージン相殺後も24が勝つ）weblab */
  width: 240px;
  min-height: 52px;
  padding: 0;
  background: #111;
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 1.4rem;
}

.reset-page .mw-reset-form > button::after,
.reset-page .mw-reset-form > button::before {
  box-shadow: none !important;
}

@media screen and (max-width: 768px) {
  .reset-page .mw-reset-form {
    padding: 24px 16px;
    margin-bottom: 56px;
  }

  /* 260712 SP下部余白56 weblab */
}

/* 260711 配送先住所改修 weblab（260712 デザイン反映） */

/* 260712 上部巨大余白対策（カート/reset同様。body grid→flex縦積み）weblab */

.addresses-page {
  display: flex !important;
  flex-direction: column !important;
}

.addresses-page > #MainContent {
  flex: 1 0 auto !important;
}

.addresses-page .menu-drawer-container:not([open]) .menu-drawer {
  display: none !important;
}

.addresses-page .custom-search-panel {
  position: fixed !important;
}

.addresses-page [id$="__custom_liquid_4XnD3E"] {
  display: none !important;
}

/* Dawnの幅制限解除（タイトル全幅・中身は中央） */

body.addresses-page .customer.addresses {
  max-width: 108rem !important;
  text-align: left;
}

/* 見出し「配送先住所」左寄せ・下線 */

.addresses-page .customer.addresses h1 {
  text-align: left;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-top: 24px;
  /* 260712 上部余白を他画面と統一（SP24/PC60）weblab */
  margin-bottom: 24px;
}

@media screen and (min-width: 769px) {
  .addresses-page .customer.addresses h1 {
    margin-top: 60px;
  }

  /* PC上部余白60（他画面統一） */
}

/* マイページに戻る（右寄せ・白枠ピル） */

.addresses-page .customer.addresses > a[href] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  float: right;
  min-height: 44px;
  padding: 0 24px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  font-size: 1.3rem;
  text-decoration: none;
}

/* 新しい配送先を追加（黒ピル・中央） */

/* 260712 追加ボタン「新しい配送先を追加」を下げる（margin-top 70）weblab */

.addresses-page button[aria-controls="AddAddress"] {
  clear: both;
  display: block;
  margin: 100px auto 40px;
  /* SP100 / PCは下のmediaで150 */
  width: 240px;
  min-height: 52px;
  background: #111;
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 1.4rem;
}

@media screen and (min-width: 769px) {
  .addresses-page button[aria-controls="AddAddress"] {
    margin-top: 150px;
    margin-bottom: 80px;
  }

  /* PC:上150/下80 */
}

/* セクション見出し：既定は中央（「現在の配送先」等はこのまま中央） */

.addresses-page .customer.addresses h2 {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  margin: 0 0 20px;
}

/* 追加/編集フォームの見出しだけ左寄せ・グレー枠(536)の左端に整列 */

.addresses-page .customer.addresses #AddressNewHeading,
.addresses-page .customer.addresses [id^="EditAddress_"] > h2 {
  max-width: 536px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

/* 追加/編集フォームを開いた時、ボタンとの間に上余白（編集はより大きく下げる） */

.addresses-page #AddAddress {
  margin-top: 40px;
}

.addresses-page [id^="EditAddress_"] {
  margin-top: 40px;
}

/* SP40 */

@media screen and (min-width: 769px) {
  .addresses-page [id^="EditAddress_"] {
    margin-top: 80px;
  }

  /* PC80 */
}

/* 「現在の配送先」＝デフォルト住所のli直下h2（中央のまま）。上余白PC100/SP70・下余白PC30 */

.addresses-page .customer.addresses li[data-address] > h2 {
  margin-top: 70px;
  margin-bottom: 20px;
}

@media screen and (min-width: 769px) {
  .addresses-page .customer.addresses li[data-address] > h2 {
    margin-top: 100px;
    margin-bottom: 30px;
  }
}

/* 各フォーム＝グレー枠・中央（#F6F6F6・536px）・中身は左寄せ */

.addresses-page .customer.addresses form {
  max-width: 536px;
  margin: 0 auto 24px;
  background: #f6f6f6;
  padding: 48px 40px;
  box-sizing: border-box;
  /* 260712 上下padding 48(80%に微調整) weblab */
  text-align: left;
}

.addresses-page .customer.addresses .field {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* 260712 上下10(欄間20)。左右は触らない＝姓/名のDawn横並び余白を保持 */

.addresses-page .customer.addresses form > div {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* 260712 上下10のみ（左右は触らない＝姓/名の横並び保持） */

/* ※姓/名の横並びはDawnネイティブ(form>div:nth-of-type(1/2)の50%)に任せる */

/* 入力・セレクト：白・薄グレー枠（1本） */

.addresses-page .customer.addresses input[type="text"],
.addresses-page .customer.addresses input[type="tel"],
.addresses-page .customer.addresses select {
  width: 100%;
  background: #fff;
  border: 1px solid #d9d9d9;
  box-shadow: none;
  /* 260712 高さ/paddingは上書きしない＝Dawnのフローティングラベルを活かす weblab */
}

/* 「デフォルトの住所として設定する」＝チェックボックス左・ラベル右・同じ行 */

.addresses-page .customer.addresses form div:has(> input[type="checkbox"]) {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 22px 0;
  /* 260712 デフォルト住所チェック行の上下余白を拡大 weblab */
}

.addresses-page .customer.addresses input[type="checkbox"] {
  width: auto;
  height: auto;
  min-height: 0;
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
}

.addresses-page .customer.addresses input[type="checkbox"] + label {
  margin: 0;
  font-size: 1.4rem;
}

.addresses-page input::placeholder {
  color: #909090;
  opacity: 1;
}

/* Dawnの二重枠(.field::after)を消す */

.addresses-page .customer.addresses .field::after,
.addresses-page .customer.addresses .field::before {
  display: none !important;
  box-shadow: none !important;
}

/* 国/都道府県のラベルのみ（selectの上の見出し） */

.addresses-page .customer.addresses form label[for*="Country"],
.addresses-page .customer.addresses form label[for*="Province"] {
  display: block;
  font-size: 1.3rem;
  margin-bottom: 6px;
}

/* 260712 プルダウンの矢印を内側へ（位置を持つ span.svg-wrapper を右1.6rem）weblab */

.addresses-page .customer.addresses .select {
  position: relative;
}

.addresses-page .customer.addresses .select .svg-wrapper {
  right: 1.6rem;
}

.addresses-page .customer.addresses .select select {
  padding-right: 4rem;
}

/* プルダウンの黒枠（Dawnの.select__selectのbox-shadow）を他の入力と同じグレー1本に */

.addresses-page .customer.addresses .select__select,
.addresses-page .customer.addresses .select select {
  border: 1px solid #d9d9d9 !important;
  box-shadow: none !important;
}

.addresses-page .customer.addresses .select::after,
.addresses-page .customer.addresses .select::before {
  box-shadow: none !important;
  border: 0 !important;
}

/* ボタン共通（ピル） */

.addresses-page .customer.addresses button {
  border-radius: 999px;
  font-size: 1.4rem;
  min-height: 50px;
  padding: 0 28px;
}

.addresses-page .customer.addresses button::after,
.addresses-page .customer.addresses button::before {
  box-shadow: none !important;
}

/* 追加/更新（送信）＝黒 */

.addresses-page .customer.addresses form button:not([type="reset"]):not([type="button"]) {
  background: #111;
  color: #fff;
  border: 0;
}

/* キャンセル＝白枠 */

.addresses-page .customer.addresses button[type="reset"] {
  background: #fff;
  border: 1px solid #111;
  color: #111;
}

/* 編集＝白枠 */

.addresses-page .customer.addresses button[data-address-id] {
  background: #fff;
  border: 1px solid #111;
  color: #111;
}

/* 削除＝赤枠 */

.addresses-page .customer.addresses button[data-target] {
  background: #fff;
  border: 1px solid #e05a63;
  color: #e05a63;
}

/* フォーム内ボタン：キャンセル左・送信右・中央横並び */

.addresses-page .mw-addr-actions {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-top: 8px;
}

.addresses-page .mw-addr-actions button {
  min-width: 170px;
  margin: 0;
}

/* 住所リスト（表示）＝中央・編集/削除ボタンを中央横並び */

.addresses-page .customer.addresses ul[role="list"] {
  list-style: none;
  padding: 0;
}

.addresses-page .customer.addresses li[data-address] {
  text-align: center;
  margin-bottom: 40px;
}

.addresses-page .customer.addresses li[data-address] > p {
  line-height: 1.9;
  margin: 0 0 16px;
}

.addresses-page .customer.addresses li[data-address] > button[data-address-id],
.addresses-page .customer.addresses li[data-address] > button[data-target] {
  margin: 0 6px;
  min-width: 100px;
}

/* 編集フォームは左寄せ（上のli中央を打ち消し） */

.addresses-page .customer.addresses li[data-address] > div[id^="EditAddress"] {
  text-align: left;
}

@media screen and (max-width: 768px) {
  .addresses-page .customer.addresses form {
    padding: 24px 16px;
  }

  .addresses-page .mw-addr-actions {
    flex-direction: column;
  }

  .addresses-page .mw-addr-actions button {
    width: 100%;
  }
}

/* 260712 会員情報編集(215) weblab（Customer Fieldsアプリ描画・実DOMに合わせて着せ替え） */

/* 上部の余白対策（reset/配送先と同じ body grid→flex縦積み） */

.account-edit-page {
  display: flex !important;
  flex-direction: column !important;
}

.account-edit-page > #MainContent {
  flex: 1 0 auto !important;
}

.account-edit-page .menu-drawer-container:not([open]) .menu-drawer {
  display: none !important;
}

.account-edit-page .custom-search-panel {
  position: fixed !important;
}

.account-edit-page [id$="__custom_liquid_4XnD3E"] {
  display: none !important;
}

/* フルページフォームの薄グレー背景を透明化＋min-height/縦中央寄せを解除して上詰め（上部余白の解消） */

.account-edit-page .full__page__form__wrapper {
  background: transparent !important;
  min-height: 0 !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  justify-content: flex-start !important;
}

/* グリッドの半幅・中央pushを解除（タイトル全幅・左寄せ／中身は中央のグレー枠） */

.account-edit-page .full__page__form__wrapper .grid {
  display: block;
  margin: 0;
}

.account-edit-page .full__page__form__wrapper .grid__item {
  width: 100% !important;
  max-width: 108rem;
  margin: 0 auto !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left;
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

.account-edit-page .full__page__form {
  text-align: left;
}

/* 見出し「会員情報編集」左寄せ・下線 */

.account-edit-page .account__form__title {
  text-align: left;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin: 0 0 24px;
}

/* マイページに戻る（白枠ピル・右寄せ）※テンプレのdivがdisplay:flexなのでjustifyで右へ */

.account-edit-page .mw-account-back {
  display: flex;
  justify-content: flex-end;
  text-align: right;
  margin-bottom: 70px;
}

/* 260712 下余白 PC70/SP40 weblab */

.account-edit-page .mw-account-back a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 24px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  font-size: 1.3rem;
  text-decoration: none;
}

/* フォーム＝グレー枠・中央 */

.account-edit-page form#create_customer {
  clear: both;
  max-width: 536px;
  margin: 0 auto 50px;
  box-sizing: border-box;
  /* 260712 グレー枠下の余白+50 weblab */
  background: #f6f6f6;
  padding: 40px;
  text-align: left;
}

/* 入力欄 */

.account-edit-page .cf-field-container {
  margin-bottom: 10px;
}

/* 260712 16→10 weblab */

.account-edit-page .cf-field input[type="text"],
.account-edit-page .cf-field input[type="email"] {
  width: 100%;
  background: #fff;
  border: 1px solid #d9d9d9;
  box-shadow: none;
  padding: 1.2rem;
  color: #111 !important;
  /* 260712 入力値がグレーで読みにくい→黒に weblab */
}

.account-edit-page .cf-field label {
  font-size: 1.3rem;
}

/* フィールド群を囲む枠線（アプリの cf-form-step 等）は消す（デザインはグレー枠のみ） */

.account-edit-page .cf-form-inner,
.account-edit-page .cf-form-step,
.account-edit-page .cf-react-target {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* ボタン：キャンセル(白ピル)左＋更新(黒ピル)右・中央横並び。リセットは下段へ回す */

.account-edit-page .cf-form-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 16px;
  margin-top: 10px !important;
}

/* 260712 上margin 32→16→10。row-gap0=リセット白帯の上にグレー筋を出さない。アプリ指定に勝つよう!important */

.account-edit-page .cf-form-actions .cf-button {
  min-width: 170px;
  min-height: 50px;
  border-radius: 999px;
  font-size: 1.4rem;
  padding: 0 24px;
}

.account-edit-page .cf-form-actions .cf-submit-form {
  background: #111;
  color: #fff;
  border: 0;
}

.account-edit-page .cf-form-actions .cf-cancel {
  background: #fff;
  color: #111;
  border: 1px solid #111;
}

/* Dawn .button の擬似要素枠（黒い四角）を消す */

.account-edit-page .cf-form-actions .cf-button::after,
.account-edit-page .cf-form-actions .cf-button::before,
.account-edit-page .cf-reset-password a::after,
.account-edit-page .cf-reset-password a::before {
  box-shadow: none !important;
  content: none !important;
  border: 0 !important;
}

/* タイトルの装飾下線(テーマ既定)は非表示（自前の下線を使う） */

.account-edit-page .account__form__title::after {
  display: none !important;
}

/* パスワードをリセット：フォーム内のまま白帯＋負マージンで枠外・下に見せる（DOM移動不可のため視覚で実現） */

.account-edit-page .cf-reset-password {
  order: 99;
  flex: 0 0 auto;
  box-sizing: border-box;
  text-align: center;
  width: calc(100% + 80px);
  /* フォームpadding(PC40)×2だけ広げて枠端まで届かせる */
  margin: 24px -40px -40px;
  /* 上24=ボタン下にグレーを延長（白帯の上の透明マージン）／左右-40で枠端へ／下-40でグレー下paddingを相殺 */
  background: #fff;
  /* グレーを覆う白帯＝リセットを枠外に見せる */
  padding: 28px 40px 28px;
  /* ボタンとの間28／左右40で中央復帰／下28 */
}

.account-edit-page .cf-reset-password a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 24px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  font-size: 1.3rem;
  text-decoration: none;
}

/* リセット送信後の確認メッセージ：アプリ既定のオレンジ枠を除去しグレー枠内で中央2行（文言はJSで差込） */

.account-edit-page .cf-verify-email-message,
.account-edit-page .cf-verify-email-message [data-reach-alert] {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #111 !important;
  margin: 0 auto !important;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.9;
}

.account-edit-page .cf-verify-email-message {
  padding: 8px 0 !important;
}

.account-edit-page .cf-verify-email-message [data-reach-alert] {
  padding: 0 !important;
}

@media screen and (max-width: 768px) {
  .account-edit-page form#create_customer {
    padding: 24px 16px;
  }

  /* SP：キャンセル/更新を左右に並べる（リセットは flex-basis:100% で下段に折り返す＝wrap維持） */

  .account-edit-page .cf-form-actions {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
  }

  .account-edit-page .cf-form-actions .cf-button {
    flex: 1;
    min-width: 0;
    width: auto;
  }

  /* SP：白帯の張り出しをSPのフォームpadding(24 16)に合わせる */

  .account-edit-page .cf-reset-password {
    width: calc(100% + 32px);
    margin: 20px -16px -24px;
    padding: 24px 16px 24px;
  }

  .account-edit-page .mw-account-back {
    margin-bottom: 40px;
  }

  /* SP40 */

  /* SP：左右余白を他ページ(15px)と揃える */

  .account-edit-page .full__page__form__wrapper .grid__item {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

/* 260712 マイページ(214) weblab */

.mypage-page .account-header__left {
  display: block;
  width: 100%;
  text-align: left;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin: 24px 0 56px;
  /* 上部余白：他アカウント系と統一（SP24／PC60）／下線→氏名の余白を広め */
}

@media (min-width: 769px) {
  .mypage-page .account-header__left {
    margin-top: 60px;
  }
}

/* 260712 マイページ(214) メニュー3列化・ログアウトピル化 weblab */

/* Swym読込中に3列グリッドが半幅に潰れるのを防ぐ（mypage限定で全幅固定） */

.mypage-page .grid > .grid__item.one-whole {
  max-width: 100% !important;
}

/* 「マイページメニュー」ラベルH1は新デザインに無いので非表示（タイトルは .account-header__left で別要素） */

.mypage-page .grid__item > h1.title {
  display: none;
}

/* ログアウトのみ枠線ピルボタン化（SP/PC共通・中央配置・チェブロン非表示）／上下余白大きめ・特に下 */

.mypage-page .mw_account_menu_item.item-logout {
  border: 1px solid #111;
  border-radius: 999px;
  width: auto;
  min-width: 160px;
  justify-self: center;
  justify-content: center;
  padding: 8px 28px;
  margin-top: 64px;
  margin-bottom: 72px;
}

.mypage-page .item-logout .arrow {
  display: none;
}

/* 260715 マイページ：ランク→メニューの距離を広げる／上罫線を列ごとに分割（連続線をやめる＝下の行と同様） weblab */

.mypage-page .mw_account_menu_grid {
  margin-top: 48px;
}

@media screen and (min-width: 990px) {
  .mypage-page .mw_account_menu_grid {
    border-top: 0 !important;
  }

  .mypage-page .mw_account_menu_item.item-info,
  .mypage-page .mw_account_menu_item.item-hist-on,
  .mypage-page .mw_account_menu_item.item-fav-prod {
    border-top: 1px solid rgba(101, 101, 101, 0.2) !important;
  }
}

/* PC：メニューを3列化＋ログアウトは全幅行で中央ピル */

@media screen and (min-width: 990px) {
  .mypage-page .mw_account_menu_grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "info    hist-on   fav-prod"
      "addr    hist-real fav-coord"
      "logout  logout    logout";
    gap: 0 40px;
  }
}

/* ブランド帯「sab street bis」カード：Mattrz 2枚の中央にJS注入する暫定カード（本筋はMattrz側） */

.mypage-page .mw-bis-card {
  display: block;
  width: 100%;
  aspect-ratio: 344 / 212;
  background-image: url(//mindwind.tokyo/cdn/shop/t/113/assets/mw-bis-card.png?v=44870374834523104521787143208);
  background-size: cover;
  background-position: center;
  transition: transform 0.3s ease;
}

.mypage-page .mw-bis-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

@media screen and (max-width: 767px) {
  .mypage-page .mw-bis-card {
    aspect-ratio: 163 / 100;
    background-image: url(//mindwind.tokyo/cdn/shop/t/113/assets/mw-bis-card-sp.png?v=133952776339798805431787143208);
  }
}

/* 260715 マイページ ブランド帯：3バナーを離す＋各バナー下にブランド名 weblab */

.mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_row {
  gap: 24px !important;
}

/* 見出し「ブランドから他の商品を探す」→バナーまでの余白（左padding削除はSPのみ） */

.mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_title {
  margin-bottom: 16px !important;
}

/* 3バナーの縦幅を統一（Mattrz2枚＋bis）＝同一アスペクト比＋cover */

.mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_image-link {
  display: block !important;
  aspect-ratio: 344 / 212 !important;
  overflow: hidden !important;
}

.mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_image-link img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.mypage-page .mw-brand-label {
  display: block;
  margin-top: 12px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.4;
  color: #000;
  text-decoration: none;
}

/* バナー下ブランド名の矢印を支給SVGに（テキスト›は font-size:0 で隠しSVG背景に置換） */

.mypage-page .mw-brand-label .mw-brand-arrow {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 8px;
  vertical-align: middle;
  font-size: 0;
  background: url(//mindwind.tokyo/cdn/shop/t/113/assets/mw-arrow.svg?v=168877295848862848771787143208) no-repeat center / contain;
}

/* ブランド名の下〜次の罫線まで十分な余白 */

.mypage-page #mattrz-cx-campaign-element-campaign-75835 {
  padding-bottom: 84px;
}

/* 260716 マイページ メニュー各リンクの矢印を支給SVGに置換＋右端に少し余白 weblab */

.mypage-page .mw_account_menu_item:not(.item-logout) {
  padding-right: 8px;
}

.mypage-page .mw_account_menu_item:not(.item-logout) .arrow {
  display: inline-block !important;
  /* テーマ既定で display:none のため表示に */
  width: 12px !important;
  height: 12px !important;
  margin-left: auto !important;
  /* 右端へ */
  background: url(//mindwind.tokyo/cdn/shop/t/113/assets/mw-arrow.svg?v=168877295848862848771787143208) no-repeat center / contain !important;
  border: 0 !important;
  transform: none !important;
  flex: 0 0 auto !important;
}

/* 氏名・会員IDを太字に */

.mypage-page .account-header__right strong {
  font-weight: 700 !important;
}

/* 会員ID（氏名の次の行）の上下に少し余白／文字は細く（氏名は太字のまま） */

.mypage-page .account-header__right > div:nth-child(2) {
  margin: 8px 0 !important;
}

.mypage-page .account-header__right > div:nth-child(2) strong {
  font-weight: 400 !important;
}

/* 会員ID → その下のバーコードまでの余白を少し広げる */

.mypage-page #bcTarget {
  margin-top: 12px !important;
}

.mypage-page .mw_account_menu_item:not(.item-logout) .arrow::before,
.mypage-page .mw_account_menu_item:not(.item-logout) .arrow::after {
  content: none !important;
  display: none !important;
}

/* 260716 マイページ スマホ 調整 weblab */

@media screen and (max-width: 768px) {
  /* お気に入りをメニュー最下部（ログアウトの上）へ */

  .mypage-page .mw_account_menu_grid {
    display: flex !important;
    flex-direction: column !important;
  }

  .mypage-page .mw_account_menu_item.item-fav-prod {
    order: 8 !important;
  }

  .mypage-page .mw_account_menu_item.item-logout {
    order: 9 !important;
    align-self: center !important;
    margin-top: 32px !important;
  }

  /* 見出し→バナーの距離＋左padding削除（バナー左端に揃える） */

  .mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_title {
    margin-bottom: 8px !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
  }

  /* バナーは2つ横並び＋余りは次行・中央揃え（折返し時の行間を広めに：縦30/横12） */

  .mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 30px 12px !important;
  }

  .mypage-page #mattrz-cx-campaign-element-campaign-75835 ._fs_column {
    width: calc(50% - 6px) !important;
    flex: 0 0 calc(50% - 6px) !important;
  }

  /* 氏名の上（下線→氏名）の余白を少し詰める */

  .mypage-page .account-header__left {
    margin-bottom: 32px !important;
  }

  /* バナーエリアに左右16pxの余白（他セクションと統一）＋最下部の余白を縮小 */

  .mypage-page #mattrz-cx-campaign-element-campaign-75835 {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-bottom: 48px !important;
  }

  /* 会員IDの文字サイズを少し小さく（氏名24pxはそのまま） */

  .mypage-page .account-header__right > div:nth-child(2),
  .mypage-page .account-header__right > div:nth-child(2) strong {
    font-size: 18px !important;
  }

  /* バナー下のブランド名を少しだけ小さく */

  .mypage-page .mw-brand-label {
    font-size: 1.2rem !important;
  }
}

/*
  260713 お気に入り集約（共有タブバー）weblab
  Swym・StaffStartの両ページに「お気に入り」タイトル＋3タブを描画
*/

.mw-fav-page .mw-fav-title {
  max-width: 108rem;
  margin: 24px auto 0;
  padding: 0 20px 20px;
  box-sizing: border-box;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #000;
  text-align: left;
  border-bottom: 1px solid #ebebeb;
}

@media (min-width: 769px) {
  .mw-fav-page .mw-fav-title {
    margin-top: 60px;
  }
}

.mw-fav-page .mw-fav-tabs {
  display: flex;
  justify-content: center;
  gap: 48px;
  max-width: 108rem;
  margin: 56px auto 0;
  /* お気に入り下線→タブ罫線の距離を広げる */
  padding: 0 20px;
  box-sizing: border-box;
  border-bottom: 1px solid #ebebeb;
}

.mw-fav-page .mw-fav-tab {
  padding: 12px 6px;
  margin-bottom: -1px;
  color: #888;
  font-size: 1.5rem;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  white-space: nowrap;
}

.mw-fav-page .mw-fav-tab.is-active {
  color: #111;
  font-weight: 700;
  border-bottom-color: #111;
}

@media screen and (max-width: 767px) {
  .mw-fav-page .mw-fav-tabs {
    gap: 24px;
  }

  .mw-fav-page .mw-fav-tab {
    font-size: 1.4rem;
  }
}

/* Swym側の重複見出し「お気に入り」を非表示（当社タイトルに一本化。メール＋共有アイコン行は残す） */

/* 260715 Swym既定ヘッダー：タイトル/シェアを非表示・三本線(クリアリスト)は残す weblab */

/* 三本線ヘッダーはJSでメール行内へ移動・右端に配置 */

.mw-fav-page .swym-wishlist-detail-header {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

.mw-fav-page .swym-wishlist-main-title {
  display: none !important;
}

.mw-fav-page .swym-wishlist-detail-header .swym-share-btn {
  display: none !important;
}

/* 三本線アイコンに差し替え */

.mw-fav-page #swym-wishlist-context-menu {
  display: inline-flex !important;
  width: 22px;
  height: 22px;
  cursor: pointer;
  background-image: linear-gradient(#000, #000),
    linear-gradient(#000, #000),
    linear-gradient(#000, #000);
  background-size: 22px 2px;
  background-position: center top 3px, center center, center bottom 3px;
  background-repeat: no-repeat;
}

.mw-fav-page #swym-wishlist-context-menu::before {
  content: none !important;
}

/* 260715 メール行(container-title-bar)の罫線除去＋本文幅に合わせて左端揃え weblab */

.mw-fav-page .swym-wishlist-container-title-bar {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  /* 人物アイコンの左端を「お気に入り」下線の左端に一致（本文幅中央寄せ＋左寄せflex） */
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  max-width: var(--page-width, 1080px);
  margin: 32px auto 32px !important;
  /* 上=タブ罫線との距離／下=一覧までの距離 */
  padding-left: 0 !important;
  box-sizing: border-box;
}

/* PC/SP問わずメールボタンを左端に固定（SwymのflexでSPは右に流れるため） */

.mw-fav-page #swym-user-login-status-btn {
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Swymの区切り線（濃色div）を除去 */

.mw-fav-page .swym-wishlist-detail-separator {
  display: none !important;
}

/* メール横の人物アイコンを支給SVGに差し替え（Swym既定アイコンを打ち消し） */

.mw-fav-page #swym-user-login-status-btn {
  background-image: none !important;
}

.mw-fav-page #swym-user-login-status-btn::before {
  content: "" !important;
  display: inline-block !important;
  width: 15px !important;
  height: 15px !important;
  margin-right: 8px !important;
  vertical-align: -2px !important;
  font: 0/0 sans-serif !important;
  background: url(//mindwind.tokyo/cdn/shop/t/113/assets/mw-fav-user-icon.svg?v=144052484126985201787143208) no-repeat center / contain !important;
}

/* ===== 260715 お気に入りカード 調整 weblab ===== */

/* PCは1行5商品：Swymグリッド(ul.swym-wishlist-grid)を5カラム化＋本文幅(1080)に整列 */

.mw-fav-page .swym-wishlist-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  column-gap: 20px !important;
  row-gap: 72px !important;
  /* カート釦→下の行の画像までの距離をさらに大きく（PC） */
  width: 100% !important;
  max-width: var(--page-width, 1080px) !important;
  margin: 0 auto !important;
}

.mw-fav-page .swym-wishlist-grid > li {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  /* 列がコンテンツで広がり画像が縦伸びするのを防ぐ→全カード同サイズ */
  margin: 0 !important;
  list-style: none !important;
}

.mw-fav-page .swym-wishlist-grid > li > .swym-wishlist-item {
  width: 100% !important;
  min-width: 0 !important;
  display: flex;
  flex-direction: column;
  height: 100%;
}
/* 商品名を押すボタン */
.swym-wishlist-item > .swym-is-button:first-of-type {
  flex: 0 0 auto;
}

/* 価格エリアを伸ばす */
.swym-product-price {
  margin-bottom: auto;
}

/* カートボタン */
.swym-add-to-cart-btn {
  margin-top: 16px;
}

@media screen and (max-width: 768px) {
  /* サイド16pxの余白（下線/タブ罫線が端に付かないよう・他画面と合わせる） */

  .mw-fav-page .mw-fav-title {
    margin: 24px 16px 0 !important;
    padding: 0 0 16px !important;
  }

  .mw-fav-page .mw-fav-tabs {
    margin: 24px 16px 0 !important;
    padding: 0 !important;
  }

  /* タブ罫線も16px inset＋お気に入り下線との距離を詰める */

  .mw-fav-page .swym-wishlist-container-title-bar {
    display: flex !important;
    justify-content: flex-start !important;
    margin: 20px 16px 20px !important;
  }

  /* メール：アイコン左寄せ＋メールアドレス表示（Swymがモバイルで中央寄せ・幅100%・テキスト非表示にするのを打ち消し） */

  .mw-fav-page #swym-user-login-status-btn {
    position: static !important;
    /* Swymがモバイルで position:absolute;left:150px にするのを解除→flexで左端へ */
    margin: 0 auto 0 0 !important;
    width: auto !important;
    max-width: none !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  .mw-fav-page #swym-user-login-status-btn .swym-user-text {
    display: inline !important;
  }

  /* 2カラム＋左右16px余白／行間（カート釦→下の行）は大きめ */

  .mw-fav-page .swym-wishlist-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    column-gap: 16px !important;
    row-gap: 36px !important;
    padding: 0 16px !important;
    max-width: none !important;
  }

  /* カード内（画像→ブランド→カラーサイズ→金額）の距離をさらに圧縮 */

  .mw-fav-page .swym-wishlist-item .mw-fav-brand {
    margin-top: 4px !important;
  }

  .mw-fav-page .swym-wishlist-item .swym-title {
    margin-top: 4px !important;
  }

  .mw-fav-page .swym-wishlist-item .swym-variant-title {
    margin-top: 5px !important;
  }

  .mw-fav-page .swym-wishlist-item .swym-product-price {
    margin-top: 5px !important;
  }

  .mw-fav-page .swym-add-to-cart-btn {
    margin-top: 14px !important;
    padding: 9px 16px !important;
  }
}

/* 削除(×)ボタン：濃いグレーの×＋半透明の白い丸（design 24x24 右上） */

.mw-fav-page .swym-delete-btn {
  width: 24px !important;
  height: 24px !important;
  background: rgba(255, 255, 255, 0.75) !important;
  border-radius: 50% !important;
  color: #333 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.mw-fav-page .swym-delete-btn .swym-icon {
  color: #333 !important;
}

/* ①画像を縦長 200:240 に（Swymが高さ指定を持つためaspect-ratioでなくpadding-top比率で強制） */

.mw-fav-page .swym-wishlist-image-wrapper {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 0 !important;
  padding-top: 120% !important;
  /* 240/200 */
  overflow: hidden !important;
}

.mw-fav-page .swym-wishlist-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* 商品名・色・金額をカード左端に揃える（削除×/カート追加ボタンは同クラスなので除外） */

.mw-fav-page .swym-wishlist-item > button.swym-is-button:not(.swym-delete-btn):not(.swym-add-to-cart-btn) {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  text-align: left !important;
}

.mw-fav-page .swym-wishlist-item .swym-title,
.mw-fav-page .swym-wishlist-item .swym-variant-title,
.mw-fav-page .swym-wishlist-item .swym-product-price {
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
}

/* ⑤行間・行送りを少し広げる */

.mw-fav-page .swym-wishlist-item .mw-fav-brand {
  margin: 10px 0 0 !important;
}

/* 商品名・カート釦は太字にしない／商品名・カラーサイズは一段小さく／行間は詰め気味 */

.mw-fav-page .swym-wishlist-item .swym-title {
  margin: 6px 0 0 !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  font-size: 1.4rem !important;
  color: #000000 !important;
}

.mw-fav-page .swym-wishlist-item .swym-variant-title {
  margin: 8px 0 0 !important;
  line-height: 1.5 !important;
  font-size: 1.2rem !important;
  color: #000000 !important;
}

.mw-fav-page .swym-wishlist-item .swym-product-price {
  margin: 8px 0 0 !important;
  font-family: 'Google Sans', 'Roboto', sans-serif !important;
}

/* ②値引き表記：左=元値（薄いグレー）／右=値引き後（Swym既定は final が左）→ order入替。金額は太字にしない */

.mw-fav-page .swym-product-price.swym-has-sale {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
}

.mw-fav-page .swym-product-original-price {
  order: 0 !important;
  font-weight: 400 !important;
  color: #b3b3b3 !important;
}

.mw-fav-page .swym-product-final-price {
  order: 1 !important;
  font-weight: 400 !important;
}

/* 値引きあり＝値引き後(final)を赤／値引きなし＝黒 */

.mw-fav-page .swym-product-price.swym-has-sale .swym-product-final-price {
  color: #E43F42 !important;
}

.mw-fav-page .swym-product-price:not(.swym-has-sale),
.mw-fav-page .swym-product-price:not(.swym-has-sale) .swym-product-final-price {
  color: #000000 !important;
}

/* 「カートに入れる」ボタン：ピル＋白カートアイコン（文言差替はJS側） */

.mw-fav-page .swym-add-to-cart-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  border-radius: 999px !important;
  /* ピル */
  padding: 13px 16px !important;
  /* 内部の上下余白 */
  margin: 18px 0 0 !important;
}

.mw-fav-page .swym-add-to-cart-btn::before {
  content: "" !important;
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 auto !important;
  background: url(//mindwind.tokyo/cdn/shop/t/113/assets/mw-cart-icon.svg?v=125963831176531989981787143208) no-repeat center / contain !important;
}

/* タブレット幅(750〜1000px)はボタン文字・アイコン・余白を縮小して1行に収める */

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .mw-fav-page .swym-add-to-cart-btn {
    font-size: clamp(10px, 1.3vw, 14px) !important;
    padding: 11px 8px !important;
    gap: 6px !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
  }

  .mw-fav-page .swym-add-to-cart-btn::before {
    width: 1.1em !important;
    height: 1.1em !important;
  }
}

/* ⑦一覧から下部罫線までの距離を確保 */

.mw-fav-page .swym-simple-wishlist-container-content {
  padding-bottom: 112px !important;
}

/* ①商品名を最初から全表示（Swym既定は1行省略 white-space:nowrap;ellipsis）→ 折返し全表示に */

.mw-fav-page .swym-wishlist-item .swym-title,
.mw-fav-page .swym-wishlist-item .swym-title-1 {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* ③カード全体をクリック可能に見せる（クリック先は商品詳細＝JSで付与） */

.mw-fav-page .swym-wishlist-item {
  cursor: pointer;
}

/* ②ブランド名（vendor）を商品名の上に。JSで注入した .mw-fav-brand を整形 */

.mw-fav-page .mw-fav-brand {
  font-size: 1.2rem;
  color: #6E6E6E;
  line-height: 1.4;
  margin: 8px 0 2px;
  text-align: left;
}

/* 260715 StaffStart（コーディネート/スタッフ）調整 weblab（sc-*不安定なのでJS付与のフックで指定） */

.mw-fav-page .mw-ss-breadcrumb {
  display: none !important;
}

/* パンくず削除 */

/* パンくず非表示後に残るラッパ(.sc-jdkBTo)の余白：PCはほんの少し、SPはがっつり縮小 */

.mw-fav-page div:has(> .mw-ss-breadcrumb) {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

@media screen and (max-width: 768px) {
  .mw-fav-page div:has(> .mw-ss-breadcrumb) {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

.mw-fav-page .mw-ss-count {
  margin-top: -16px !important;
  margin-bottom: 50px !important;
}

/* ②件数を上へ＋下部余白を大きく */

/* ③PC5列＋⑤行間（行→次の行の画像頭まで）を大きく＋画像同士の横間隔を少し広く */

.mw-fav-page .mw-ss-grid {
  grid-template-columns: repeat(5, 1fr) !important;
  column-gap: 12px !important;
  row-gap: 40px !important;
  width: 100% !important;
}

.mw-fav-page .mw-ss-grid > .mw-ss-card {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
}

/* 主画像（1つ目のリンク＝コーディネート/スタッフ写真）をカラム幅にフィット。アバターは対象外 */

.mw-fav-page .mw-ss-card > a:first-child {
  display: block !important;
  width: 100% !important;
}

/* コーデ/スタッフ画像（コンテナdiv内のimg）のみ幅フィット。リンク直下の再生アイコンimgは対象外 */

.mw-fav-page .mw-ss-card > a:first-child > div img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* 動画コーデの再生アイコン画像（コーデリンク直下のimg）は非表示（拡大不具合の元・不要との指示） */

.mw-fav-page .mw-ss-card > a:first-child > img {
  display: none !important;
}

/* ④身長：大きく＋黒＋やや太字 */

.mw-fav-page .mw-ss-height {
  font-size: 1.4rem !important;
  color: #000000 !important;
  font-weight: 500 !important;
}

/* ⑥スタッフ：名前と同行の身長を改行（名前の下に身長を積む） */

.mw-fav-page .mw-ss-name-height {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 4px !important;
}

/* PCのみ：一覧下部→その下の罫線までの距離を離す */

@media screen and (min-width: 769px) {
  .mw-fav-page .mw-ss-grid {
    margin-bottom: 64px !important;
  }
}

@media screen and (max-width: 768px) {
  .mw-fav-page .mw-ss-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    row-gap: 32px !important;
  }
}

/* ※シェア釦は上部の .swym-wishlist-detail-header を丸ごと非表示にすることで一緒に除去 */


/* ==============================================================
2026-07-16 金井作業分
============================================================== */

/* ご注文履歴（オンラインストア）一覧 リニューアル */

.mw-order-history {
  padding-top: 40px;
  padding-bottom: 60px;
}

.mw-order-history__header {
  border-bottom: 1px solid var(--border);
  padding-bottom: 24px;
  padding-top: 64px;
  margin-bottom: 24px;
}

.mw-order-history__title {
  margin: 0;
}

.mw-order-history__back-row {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 32px;
}

.mw-order-history__back-btn {
  padding: 1.2rem 2.4rem;
}

/* PC table */
.mw-order-table {
  width: 100%;
  border-collapse: collapse;
}

.mw-order-table,
.mw-order-table thead,
.mw-order-table tbody,
.mw-order-table tr {
  display: block;
  width: 100%;
}

.mw-order-table thead tr,
.mw-order-table tbody tr {
  display: grid;
  grid-template-columns: 1.6fr 1.2fr 1fr 1fr 1fr;
  align-items: center;
  column-gap: 16px;
}

.mw-order-table th,
.mw-order-table td {
  display: block;
  text-align: left;
  padding: 20px 0;
}

.mw-order-table thead tr {
  border-bottom: 1px solid var(--border);
  padding-bottom: 12px;
}

.mw-order-table th {
  padding: 0;
  font-weight: normal;
  color: var(--text);
}

.mw-order-table__row {
  border-bottom: 1px solid var(--border);
}

.mw-order-table__total-head,
.mw-order-table__total {
  text-align: right;
}

.mw-order-table__row-link {
  color: inherit;
  text-decoration: none;
  font-weight: bold;
}

.mw-pill {
  display: inline-block;
  margin-left: 8px;
  padding: 0.4rem 1.2rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 1.2rem;
  white-space: nowrap;
}

/* SP cards */
.mw-order-cards {
  display: none;
}

.mw-order-cards__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 16px 0;
  border-bottom: 1px solid var(--border);
  color: inherit;
  text-decoration: none;
}

.mw-order-cards__number {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 749px) {
  .mw-order-history__table-wrap {
    display: none;
  }

  .mw-order-cards {
    display: block;
  }

  .mw-order-history__back-row {
    justify-content: center;
  }
}

/* ページタイトル */
.mw-page-title {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.6rem;
  font-weight: 610;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #000;
}

/* マイページに戻るボタン */
.mw-btn-back {
  display: inline-block;
  padding: 9px 33px 10px;
  border: 1px solid #000;
  border-radius: 1000px;
  background-color: #fff;
  color: #000;
  font-size: 1.2rem;
  font-weight: 610;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
}

/* 区切り線 */
.mw-divider {
  width: 100%;
  height: 1px;
  background-color: #EBEBEB;
  margin-bottom: 32px;
}

.mw-divider:empty {
  display: block !important;
}

.mw-order-history__header {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 32px;
}

.mw-order-history__back-row {
  margin-bottom: 64px;
}

/* ご注文履歴テーブル */
.mw-order-table thead tr,
.mw-order-table tbody tr {
  grid-template-columns: 240px 240px 1fr 1fr 120px;
  column-gap: 40px;
}

.mw-order-table th {
  padding: 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8;
  color: #6E6E6E;
  border-bottom: none;
}

.mw-order-table thead tr {
  border-bottom: none;
  box-shadow: none;
  margin-bottom: 8px;
}

.mw-order-table thead::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #EBEBEB;
  margin-bottom: 24px;
}

.mw-order-table tbody {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.mw-order-table__row {
  border-bottom: none;
}

.mw-order-table td {
  padding: 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.8;
}

.mw-order-table th.mw-order-table__total-head,
.mw-order-table td.mw-order-table__total {
  text-align: right;
}

.mw-order-table td .mw-order-table__row-link,
.mw-order-table td[data-label="注文日"],
.mw-order-table td.mw-order-table__total {
  font-weight: 450;
}

.mw-order-table td[data-label="支払い状況"],
.mw-order-table td[data-label="発送状況"] {
  font-weight: 400;
}

/* 領収書リンク */
.mw-order-table td .receipt-link {
  display: inline-block;
  margin-left: 8px;
  padding: 7px 17px 8px;
  border: 1px solid #EBEBEB;
  border-radius: 1000px;
  font-size: 0;
  line-height: 1;
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
}

.mw-order-table td .receipt-link::after {
  content: "領収書";
  font-size: 1.2rem;
}

/* SPカード */
.mw-order-cards {
  flex-direction: column;
  gap: 24px;
  padding: 24px 0;
  border-top: 1px solid #EBEBEB;
  border-bottom: 1px solid #EBEBEB;
}

.mw-order-cards__row {
  flex-wrap: nowrap;
  border-bottom: none;
  padding: 0;
  gap: 16px;
}

.mw-order-cards__date,
.mw-order-cards__number {
  display: flex;
  align-items: center;
  gap: 16px;
}

.mw-order-cards__label {
  font-size: 1.2rem;
  font-weight: 400;
  color: #6E6E6E;
  line-height: 1.8;
}

.mw-order-cards__value {
  font-size: 1.4rem;
  font-weight: 450;
  color: #000;
  line-height: 1.8;
}

.mw-pill {
  padding: 7px 17px 8px;
  border: 1px solid #EBEBEB;
  border-radius: 1000px;
  font-size: 1.4rem;
  font-weight: 450;
  line-height: 1.4;
  color: #000;
  background-color: #fff;
}

@media screen and (max-width: 749px) {
  .mw-page-title {
    font-size: 2rem;
    line-height: 1.4;
  }

  .mw-order-history__header {
    padding-top: 0;
    margin-bottom: 16px;
  }

  .mw-order-history__back-row {
    justify-content: flex-end;
    margin-bottom: 32px;
  }

  .mw-btn-back {
    padding: 7px 17px;
    font-size: 1rem;
  }

  .mw-order-cards {
    display: flex;
  }

  .mw-order-cards .receipt-link {display: none;}
}

/* ご注文履歴詳細 */
.mw-order-detail {
  display: flex;
  justify-content: center;
  gap: 40px;
  width: 100%;
}

.mw-order-detail__main {
  display: flex;
  flex-direction: column;
  gap: 24px;
  flex: 1;
  min-width: 0;
}

.mw-order-detail__heading {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mw-order-detail__number {
  margin: 0;
  font-size: 2.4rem;
  font-weight: 610;
  line-height: 1.8;
  color: #000;
}

.mw-order-detail__date {
  margin: 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8;
  color: #6E6E6E;
}

.mw-order-detail__box {
  border: 1px solid #EBEBEB;
  padding-bottom: 24px;
}

/* PC table */
.mw-order-detail-table {
  width: 100%;
  border-collapse: collapse;
}

.mw-order-detail-table,
.mw-order-detail-table thead,
.mw-order-detail-table tbody,
.mw-order-detail-table tr {
  display: block;
  width: 100%;
}

.mw-order-detail-table thead tr,
.mw-order-detail-table tbody tr {
  display: grid;
  grid-template-columns: 1fr 120px 100px 60px 100px;
  align-items: center;
  column-gap: 40px;
  padding: 0 40px;
}

.mw-order-detail-table th,
.mw-order-detail-table td {
  display: block;
  text-align: left;
  padding: 0;
  border: none;
}

.mw-order-detail-table th {
  padding-top: 16px;
  padding-bottom: 16px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8;
  color: #6E6E6E;
}

.mw-order-detail-table thead tr {
  border-bottom: 1px solid #EBEBEB;
}

.mw-order-detail-table tbody tr {
  padding-top: 24px;
  padding-bottom: 24px;
}

.mw-order-detail-table th.mw-order-detail-table__price,
.mw-order-detail-table td.mw-order-detail-table__price,
.mw-order-detail-table th.mw-order-detail-table__total,
.mw-order-detail-table td.mw-order-detail-table__total {
  text-align: right;
}

.mw-order-detail-table th.mw-order-detail-table__qty,
.mw-order-detail-table td.mw-order-detail-table__qty {
  text-align: center;
}

.mw-order-detail-table__product-link {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  text-decoration: underline;
}

.mw-order-detail-table td {
  font-size: 1.6rem;
  font-weight: 450;
  color: #000;
}

.mw-order-detail-table__properties {
  display: flex;
  flex-direction: column;
  font-size: 1.4rem;
  color: #6E6E6E;
}

.mw-order-detail-table__discounts {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 1.4rem;
}

/* 発送状況ボックス */
.mw-order-detail-shipbox {
  display: inline-flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 16px;
  padding: 16px 24px;
  background-color: #F6F6F6;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8;
  color: #000;
}

/* 小計/ディスカウント/配送/税 */
.mw-order-detail-summary {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px 40px 0;
  border-top: 1px solid #EBEBEB;
}

.mw-order-detail-summary__row {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}

.mw-order-detail-summary__label {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8;
  color: #6E6E6E;
}

.mw-order-detail-summary__value {
  font-size: 1.6rem;
  font-weight: 450;
  line-height: 1.8;
  color: #000;
  white-space: nowrap;
}

.mw-order-detail-summary__discount {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.mw-order-detail-summary__discount-title {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 1.2rem;
  color: #6E6E6E;
}

.mw-order-detail-summary__discount-title .svg-wrapper svg {
  width: 10px;
  height: 10px;
}

/* 合計 */
.mw-order-detail-total {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  margin: 16px 40px 0;
  padding-top: 16px;
}

.mw-order-detail-total__label {
  font-size: 1.8rem;
  font-weight: 610;
  color: #000;
}

.mw-order-detail-total__value {
  font-size: 2rem;
  font-weight: 450;
  color: #000;
}

/* サイドバー(請求先/発送先住所) */
.mw-order-detail__sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 180px;
  flex-shrink: 0;
}

.mw-order-detail__sidebar .mw-order-detail__address:not(:last-child) {
  padding-bottom: 24px;
  border-bottom: 1px solid #EBEBEB;
}

.mw-order-detail__address-title {
  margin: 0 0 8px;
  font-size: 1.8rem;
  font-weight: 610;
  line-height: 1.8;
  color: #000;
}

.mw-order-detail__address-status,
.mw-order-detail__address-body {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  color: #000;
}

.mw-order-detail__address-body {
  margin-top: 4px;
  font-size: 1.4rem;
}

/* SP cards(商品一覧) */
.mw-order-detail-cards {
  display: none;
}

.mw-order-detail-cards__item {
  padding: 16px 0;
  border-bottom: 1px solid #EBEBEB;
}

.mw-order-detail-cards__row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 4px 0;
}

.mw-order-detail-cards__row--product {
  align-items: flex-start;
}

.mw-order-detail-cards__label {
  flex-shrink: 0;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.8;
  color: #6E6E6E;
}

.mw-order-detail-cards__value {
  font-size: 1.4rem;
  font-weight: 450;
  line-height: 1.8;
  color: #000;
  text-align: right;
}

.mw-order-detail-cards__value--product {
  text-decoration: underline;
}

@media screen and (max-width: 749px) {
  .mw-order-detail {
    flex-direction: column;
    gap: 32px;
  }

  .mw-order-detail__number {
    font-size: 2.2rem;
  }

  .mw-order-detail__date {
    font-size: 1.2rem;
  }

  .mw-order-detail-table {
    display: none;
  }

  .mw-order-detail-cards {
    display: block;
  }

  .mw-order-detail__box {
    border-left: none;
    border-right: none;
  }

  .mw-order-detail-summary {
    padding: 24px 0 0;
  }

  .mw-order-detail-total {
    margin: 16px 0 0;
  }

  .mw-order-detail__sidebar {
    width: 100%;
  }

  .mw-order-detail__address-title {
    font-size: 1.6rem;
  }

  .mw-order-detail__address-status {
    font-size: 1.4rem;
  }

  .mw-order-detail__address-body {
    font-size: 1.2rem;
  }
}

/* ご注文履歴（店舗/その他） */
.gi-pointify-external-order-summaries-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.gi-pointify-external-order-summaries-table thead th:nth-child(1) {
  width: 15%;
}

.gi-pointify-external-order-summaries-table thead th:nth-child(2) {
  width: 38%;
}

.gi-pointify-external-order-summaries-table thead th:nth-child(3) {
  width: 25%;
}

.gi-pointify-external-order-summaries-table thead th:nth-child(4) {
  width: 22%;
}

.gi-pointify-external-order-summaries-table thead tr {
  border-bottom: 1px solid #EBEBEB;
}

.gi-pointify-external-order-summaries-table thead th {
  padding: 0 0 16px;
  font-size: 1.4rem;
  font-weight: 400;
  color: #6E6E6E;
  text-align: left;
}

.gi-pointify-external-order-summaries-table thead th:last-child {
  text-align: right;
}

.gi-pointify-external-order-summaries-summary-cell {
  padding: 24px 0 8px !important;
  font-size: 1.6rem !important;
  font-weight: 450 !important;
  color: #000 !important;
}

.gi-pointify-external-order-summaries-item-cell {
  padding: 0 0 8px !important;
  border-top: none !important;
}

.gi-pointify-subtable-flex-columns {
  gap: 4px;
}

.gi-pointify-subtable-flex-columns .gi-pointify-subtable-flex:first-child {
  font-size: 1.6rem;
  color: #000;
}

.gi-pointify-subtable-flex-columns .gi-pointify-subtable-flex:last-child {
  font-size: 1.4rem;
  color: #6E6E6E;
}

.gi-pointify-subtable-flex-columns .gi-pointify-subtable-flex:last-child > div:last-child {
  font-size: 1.6rem;
  color: #000;
}

@media screen and (max-width: 749px) {
  .gi-pointify-external-order-summaries-table thead {
    display: none;
  }

  .gi-pointify-external-order-summaries-table,
  .gi-pointify-external-order-summaries-table tbody,
  .gi-pointify-external-order-summaries-table tr {
    display: block;
    width: 100%;
  }

  .gi-pointify-external-order-summaries-summary-row {
    display: block;
    padding-top: 16px;
    padding-bottom: 8px;
    border-top: 1px solid #EBEBEB !important;
  }

  .gi-pointify-external-order-summaries-summary-cell {
    display: flex !important;
    justify-content: space-between;
    gap: 16px;
    padding: 4px 0 !important;
    border-top: none !important;
    font-size: 1.4rem !important;
  }

  .gi-pointify-external-order-summaries-summary-cell::before {
    flex-shrink: 0;
    color: #6E6E6E;
  }

  .gi-pointify-external-order-summaries-summary-cell:nth-of-type(1)::before {
    content: "注文番号";
  }

  .gi-pointify-external-order-summaries-summary-cell:nth-of-type(2)::before {
    content: "日付";
  }

  .gi-pointify-external-order-summaries-summary-cell:nth-of-type(3)::before {
    content: "店舗";
  }

  .gi-pointify-external-order-summaries-summary-cell:nth-of-type(4)::before {
    content: "合計(税込)";
  }

  .gi-pointify-external-order-summaries-item-cell[colspan="1"] {
    display: none;
  }

  .gi-pointify-external-order-summaries-item-cell[colspan="3"] {
    display: block !important;
    padding: 8px 0 !important;
  }
}

/* ご利用ガイド */
.mw-guide__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 40px;
  row-gap: 64px;
}

.mw-guide-card__summary {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 16px 16px 0;
  background-color: #F6F6F6;
  cursor: default;
  list-style: none;
}

.mw-guide-card__summary::-webkit-details-marker {
  display: none;
}

.mw-guide-card__dash {
  flex-shrink: 0;
  width: 16px;
  height: 1px;
  background-color: #000;
}

.mw-guide-card__title {
  flex: 1;
  font-size: 1.6rem;
  font-weight: 610;
  line-height: 1.4;
  letter-spacing: 0.1em;
  color: #000;
}

.mw-guide-card__toggle {
  display: none;
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  color: #000;
}

.mw-guide-card__toggle-plus,
.mw-guide-card__toggle-minus {
  display: none;
  width: 100%;
  height: 100%;
}

.mw-guide-card__toggle svg {
  display: block;
  width: 100%;
  height: 100%;
}

.mw-guide-card__details:not([open]) .mw-guide-card__toggle-plus {
  display: block;
}

.mw-guide-card__details[open] .mw-guide-card__toggle-minus {
  display: block;
}

.mw-guide-card__list-inner {
  margin: 0;
  padding: 16px;
  list-style: none;
  background-color: #fff;
}

.mw-guide-card__list-inner a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 4px 12px 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.4;
  color: #000;
  text-decoration: none;
}

.mw-guide-card__list-inner a svg {
  flex-shrink: 0;
  width: 10px;
  height: 6px;
  transform: rotate(-90deg);
}

.mw-guide__grid {
  align-items: start;
}

/* 開いているとき */
.mw-guide-card:has(.mw-guide-card__details[open]) {
  border-bottom: 6px solid #F6F6F6;
}

/* 閉じているとき */
.mw-guide-card:has(.mw-guide-card__details:not([open])) {
  border-bottom: none;
}

@media screen and (max-width: 749px) {
  .mw-guide-card__list {
    padding: 0 8px 8px;
    background-color: #F6F6F6;
  }

  .mw-guide__grid {
    grid-template-columns: 1fr;
    row-gap: 24px;
  }

  .mw-guide-card__summary {
    cursor: pointer;
  }

  .mw-guide-card__toggle {
    display: block;
  }
}

/* 見出し+本文ページ(共通ひな形) */
.mw-simple-page__content {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #000;
}

.mw-simple-page__content p {
  margin: 0 0 24px;
}

.mw-simple-page__content h2 {
  margin: 48px 0 16px;
  font-size: 1.8rem;
  font-weight: 610;
  line-height: 1.6;
  color: #000;
}

.mw-simple-page__content h2:first-child {
  margin-top: 0;
}

@media screen and (max-width: 749px) {
  .mw-simple-page__content {
    font-size: 1.4rem;
  }

  .mw-simple-page__content h2 {
    margin: 32px 0 12px;
    font-size: 1.6rem;
  }
}

/* ご利用ガイド */
.mw-guide-card {
  border: 8px solid #F6F6F6;
  border-top: none;
}

@media screen and (max-width: 749px) {
  .mw-guide-card {
    border: none;
  }
}

/* コンテンツページ共通の上下余白 */
.mw-page-spacing {
  padding-top: 40px;
  padding-bottom: 60px;
}
.mw-page-spacing.mw-news {
  padding-bottom: 180px;
}

/* 初めての方へ: 注意事項ボックス */
.mw-notice-box {
  margin: 16px 0 24px;
  padding: 24px;
  background-color: #F6F6F6;
}

.mw-notice-box p {
  margin: 0 0 16px;
}

.mw-notice-box p:last-child {
  margin-bottom: 0;
}

/* 初めての方へ: 公式アプリボックス */
.mw-app-box {
  margin: 16px 0 24px;
  padding: 32px;
  background-color: #F6F6F6;
}

.mw-app-box__links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.mw-app-box__links img {
  display: block;
  height: 48px;
  width: auto;
}

@media screen and (max-width: 749px) {
  .mw-app-box {
    padding: 24px 16px;
  }
}

/* 見出し+本文ページ: CTAボタン */
.mw-simple-page__buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-top: 48px;
}

.mw-simple-page__buttons .button {
  min-width: 240px;
}

@media screen and (max-width: 749px) {
  .mw-simple-page__buttons .button {
    width: 100%;
    min-width: 0;
  }
}

/* .rte内の.buttonが.rte aの文字色に上書きされるのを防止 */
.rte a.button {
  color: rgb(var(--color-button-text));
}

.rte a.button:hover {
  color: rgb(var(--color-button-text));
}

.rte img {
  border: none !important;
}

/* 利用規約等の法定ポリシーページ(Shopify標準の.shopify-policy__*、テーマにテンプレートは無い) */
/* Shopifyが独自に読み込む policy-xxxxx.css と詳細度(単一クラス)が同じため、#MainContentを付けて上回るようにしている */
#MainContent .shopify-policy__container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 40px 32px 60px;
  box-sizing: border-box;
}

@media screen and (min-width: 768px) and (max-width: 989px) {
  #MainContent .shopify-policy__container {
    padding-left: 21.3333333333px;
    padding-right: 21.3333333333px;
  }
}

@media screen and (max-width: 767px) {
  #MainContent .shopify-policy__container {
    padding-left: 16px;
    padding-right: 16px;
  }
}

#MainContent .shopify-policy__title {
  margin-bottom: 32px;
  padding-bottom: 32px;
  border-bottom: 1px solid #EBEBEB;
  text-align: left;
}

#MainContent .shopify-policy__title h1 {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.6rem;
  font-weight: 610;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #000;
  text-align: left;
}

#MainContent .shopify-policy__body .rte {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #000;
}

#MainContent .shopify-policy__body .rte p {
  margin: 0 0 24px;
}
#MainContent .shopify-policy__body .rte p a {
  color: #666 !important;
  text-decoration: underline !important;
}
#MainContent .shopify-policy__body .rte p a:hover {
  text-decoration: none !important;
}
#MainContent .shopify-policy__body .rte h2,
#MainContent .shopify-policy__body .rte > ul {
  margin: 48px 0 16px;
  padding: 0;
  list-style: none;
}

#MainContent .shopify-policy__body .rte h2:first-child,
#MainContent .shopify-policy__body .rte > ul:first-child {
  margin-top: 0;
}

#MainContent .shopify-policy__body .rte h2,
#MainContent .shopify-policy__body .rte > ul > li {
  font-size: 1.8rem;
  font-weight: 610;
  line-height: 1.6;
}

@media screen and (max-width: 749px) {
  #MainContent .shopify-policy__title h1 {
    font-size: 2rem;
    line-height: 1.4;
  }

  #MainContent .shopify-policy__body .rte {
    font-size: 1.4rem;
  }

  #MainContent .shopify-policy__body .rte h2,
  #MainContent .shopify-policy__body .rte > ul {
    margin: 32px 0 12px;
  }

  #MainContent .shopify-policy__body .rte h2,
  #MainContent .shopify-policy__body .rte > ul > li {
    font-size: 1.6rem;
  }
}

/* 店舗からのお知らせ 統合一覧(ブログ+イベント) */
.mw-news__head {
  display: flex;
  flex-direction: column;
  gap: 32px;
  /* margin-bottom: 64px; */
}

.mw-news__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 40px;
  row-gap: 64px;
  min-height: 200px;
}

.mw-news-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
  color: #000;
  text-decoration: none;
}

.mw-news-card__thumb {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #f6f6f6;
}

.mw-news-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mw-news-card__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mw-news-card__badge {
  align-self: flex-start;
  padding: 3px 5px 4px;
  background: #ebebeb;
  font-size: 11px;
  line-height: 100%;
  font-weight: 400;
  color: #000;
}

.mw-news-card__headline {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}

.mw-news-card__title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 16px;
  line-height: 180%;
  font-weight: 400;
  color: #000;
}

.mw-news-card__arrow {
  flex: 0 0 auto;
  display: inline-flex;
  width: 12px;
  height: 12px;
  color: #000;
}

.mw-news-card__date {
  font-size: 14px;
  line-height: 180%;
  font-weight: 450;
  color: #000;
}

.mw-news__status {
  margin: 0;
  padding: 40px 0;
  text-align: center;
  font-size: 14px;
  color: #6e6e6e;
}

.mw-news__redirect {
  margin: 0;
  padding: 40px 0;
  text-align: center;
}

.mw-news__pager {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin-top: 64px;
}

.mw-news__pager:empty {
  display: none;
}

.mw-news-pager__num {
  min-width: 24px;
  padding-bottom: 8px;
  font-size: 16px;
  line-height: 100%;
  font-weight: 450;
  color: #000;
  text-align: center;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.mw-news-pager__num.is-current {
  border-bottom-color: #000;
}

.mw-news-pager__ellipsis {
  font-size: 16px;
  line-height: 100%;
  color: #000;
}

.mw-news-pager__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 16px;
  color: #000;
}

@media screen and (max-width: 749px) {
  .mw-news__head {
    margin-bottom: 32px;
  }

  .mw-news__grid {
    grid-template-columns: 1fr;
    row-gap: 32px;
  }
}

/* ==============================
  404 Page
============================== */

.custom-404 {
  padding: 130px 0 125px;
  background: #fff;
}

.custom-404__inner {
  text-align: center;
}

.custom-404__heading {
  width: 100%;
  padding: 25px 20px;
  background: #f5f5f5;
}

.custom-404__title {
  margin: 0;
  color: #111;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .08em;
}

.custom-404__text {
  margin: 26px 0 0;
  color: #111;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: .04em;
}

.custom-404__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  min-height: 40px;
  margin-top: 58px;
  padding: 8px 26px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  background: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  transition:
    color .2s ease,
    background-color .2s ease;
}

.custom-404__button:hover {
  color: #fff;
  background: #111;
}

@media screen and (max-width: 749px) {
  .custom-404 {
    padding: 64px 0 72px;
  }

  .custom-404__inner {
    width: 90%;
    padding: 0;
  }

  .custom-404__heading {
    padding: 20px 16px;
  }

  .custom-404__title {
    font-size: 20px;
  }

  .custom-404__text {
    margin-top: 22px;
    font-size: 13px;
  }

  .custom-404__button {
    min-width: 140px;
    min-height: 38px;
    margin-top: 40px;
    font-size: 13px;
  }
}

/* ==============================
  Search Result
============================== */

#cxcontent_dvlec_cxwrapper {
  display: none !important;
}

.search-brand-links {
  max-width: 1080px;
  margin: 120px auto 160px;
}

.search-brand-links__title {
  margin: 0 0 36px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  letter-spacing: .08em;
}

.search-brand-links__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.search-brand-links__item {
  display: block;
  text-align: center;
}

.search-brand-links__item img {
  display: block;
  width: 100%;
  height: auto;
}
.search-brand-links__label {
  position: relative;
  display: inline-block;
  margin-top: 16px;
  padding-right: 20px;
  color: #111;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}

.search-brand-links__label::after {
  content: "";
  position: absolute;
  right: 0;
  top: calc(50% - 3px);
  mask-image: url("//mindwind.tokyo/cdn/shop/t/107/assets/ico_arw.svg?v=79645605205074833431780984362");
  mask-repeat: no-repeat;
  mask-size: contain;
  background-color: #333;
  width: 6px;
  height: 10px;
}

@media screen and (max-width: 749px) {
  .search-brand-links {
    width: 90%;
    margin-top: 72px;
  }

  .search-brand-links__title {
    margin-bottom: 24px;
    font-size: 20px;
  }

  .search-brand-links__list {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

/* ==============================
  Shopify Policy Page
============================== */

.shopify-policy__container {
  max-width: 1080px;
  margin: 0 auto;
  padding-left: 5%;
  padding-right: 5%;
}

.shopify-policy__title {
  margin-bottom: 40px;
}

.shopify-policy__body {
  font-size: 14px;
  line-height: 1.8;
}

.shopify-policy__body .rte > p {
  margin: 0 0 12px;
}

.shopify-policy__body .rte > p:has(> strong) {
  margin-top: 36px;
  margin-bottom: 0 !important;
  padding-bottom: 0;
  font-size: 16px;
  font-weight: 700;
}

.shopify-policy__body .rte > p:has(> strong):first-of-type {
  margin-top: 0;
}

.shopify-policy__body .rte a {
  text-decoration: underline;
}

.about_size ul {
  list-style-type: none;
  margin: 0;
  padding: 0 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.about_size ul li {
  width: calc(50% - 20px);
}
.about_size ul li p {
  margin: 0 !important;
}
.about_size ul li p.tit {
  background: #f5f5f5;
  text-align: center;
  padding: 5px 10px;
}
@media screen and (max-width: 768px) {
  .about_size ul {
    gap: 20px;
  }
  .about_size ul li {
    width: 100%;
  }
}

.payment-accordion {
  width: 100%;
  border-top: 1px solid #ddd;
}

.payment-accordion__item {
  border-bottom: 1px solid #ddd;
}

.payment-accordion__button {
  position: relative;
  width: 100%;
  padding: 20px 48px 20px 16px;
  border: 0;
  background: #fff;
  color: #222;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
}

.payment-accordion__icon {
  position: absolute;
  top: 50%;
  right: 18px;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
}

.payment-accordion__icon::before,
.payment-accordion__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #222;
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease;
}

.payment-accordion__icon::before {
  width: 14px;
  height: 1px;
}

.payment-accordion__icon::after {
  width: 1px;
  height: 14px;
}

.payment-accordion__button[aria-expanded="true"]
  .payment-accordion__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.payment-accordion__content {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  transition:
    grid-template-rows 0.35s ease,
    visibility 0.35s;
}

.payment-accordion__item.is-open .payment-accordion__content {
  grid-template-rows: 1fr;
  visibility: visible;
}

.payment-accordion__inner {
  min-height: 0;
  padding: 0 16px;
  overflow: hidden;
}

.payment-accordion__item.is-open .payment-accordion__inner {
  padding-bottom: 28px;
}

.payment-accordion__inner p {
  margin: 0 0 16px;
  font-size: 14px;
  line-height: 1.9;
}

.payment-accordion__inner h3 {
  margin: 28px 0 12px;
  font-size: 15px;
  line-height: 1.6;
}

.payment-accordion__inner ul {
  margin: 24px 0;
  padding-left: 20px;
}

.payment-accordion__inner li {
  margin-bottom: 8px;
  line-height: 1.8;
}

.payment-accordion__inner a {
  color: inherit;
  text-decoration: underline;
}

.payment-table {
  margin: 24px 0;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

.payment-table__head,
.payment-table__row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.payment-table__head > div,
.payment-table__row > div {
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  font-size: 13px;
  line-height: 1.7;
}

.payment-table__head {
  background: #f5f5f5;
  font-weight: 700;
}

.payment-table img {
  display: block;
  width: 100%;
  max-width: 240px;
  height: auto;
}

.payment-accordion__banner {
  display: inline-block;
  margin-top: 8px;
}

.payment-accordion__banner img {
  display: block;
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 749px) {
  .payment-accordion__button {
    padding: 16px 42px 16px 12px;
    font-size: 15px;
  }

  .payment-accordion__inner {
    padding-right: 12px;
    padding-left: 12px;
  }

  .payment-accordion__item.is-open .payment-accordion__inner {
    padding-bottom: 24px;
  }

  .payment-table {
    overflow-x: auto;
  }

  .payment-table__head,
  .payment-table__row {
    min-width: 620px;
  }
}