/** Shopify CDN: Minification failed

Line 2952:1 Expected "}" to go with "{"

**/
/* =========================================================
   GLOBAL / HOME 共通
   ヘッダー・汎用見出し・商品一覧・セクション余白・サイドバー
   ========================================================= */

/* 260815 PC：ヘッダー背景・ナビ文字・右側アイコンを調整 */
@media (min-width: 1024px) {
  .utils-bar,
  .main-nav-bar {
    background-color: #424A52;
    box-shadow: 0 0 0 100vmax #424A52;
    clip-path: inset(0 -100vmax);
  }

  .main-nav__link {
    color: #ffffff;
    font-weight: 700;
  }

  .accounts .desktop-icon,
  .header-search-icon .desktop-icon,
  .cart-icon .desktop-icon {
    fill: #ffffff !important;
  }
}

/* 260815 SP：ヘッダー上下パディングを縮小 */
@media (max-width: 559px) {
  .utils-bar {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
}


/* 260815 PC/SP：HR区切り線の色・太さを統一 */
hr {
  border: 0;
  border-top: 1px solid #DCE0E3;
}


/* 260815 PC/SP：汎用見出しの区切り線と補足文レイアウトを調整 */
.standard-title:not(.section-heading__title) {
  border-top: 1px solid #DCE0E3;
  border-bottom: 1px solid #DCE0E3;
  padding-top: 14px;
  padding-bottom: 8px;
}

.standard-title:not(.section-heading__title):has(+ .section-heading__caption) {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0 !important;
}

.standard-title:not(.section-heading__title) + .section-heading__caption {
  font-size: 13px;
  font-weight: 700;
  border-bottom: 1px solid #DCE0E3;
  margin-top: 0;
  padding-bottom: 5px;
  margin-bottom: 15px;
}

.standard-title:not(.section-heading__title) + .section-heading__caption p {
  margin-top: 0;
  margin-bottom: 6px;
}

/* 260815 SP：汎用見出しを中央揃え */
@media (max-width: 559px) {
  .standard-title {
    text-align: center;
  }
}

/* 260817 PC/SP：セクション補足文内リンクを本文同色・下線なしに調整 */
.section-heading__caption a {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: none !important;
}

/* 260817 PC/SP：FeaturedCollection見出し・補足文・関連リンクの基本表示を調整 */
.section-heading {
  border-top: 1px solid #DCE0E3;
  border-bottom: 1px solid #DCE0E3;
  padding-top: 14px;
  padding-bottom: 12px;
}

.section-heading .section-heading__title {
  margin-top: 0;
  margin-bottom: 0 !important;
  padding: 0;
  border: none;
}

.section-heading .section-heading__caption {
  font-size: 13px;
  font-weight: 700;
  border: none;
  margin: 0;
  padding: 0;
}

.section-heading .section-heading__caption p {
  margin: 0;
}

.section-heading__links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 7px 18px 6px;

  border: 1px solid #F57426;
  border-radius: 3px;

  color: #FFFFFF !important;
  background-color: #F57426;

  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;

  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease;
}


/* 260817 PC/タブレット：FeaturedCollection見出しと関連リンクを左右配置 */
@media (min-width: 560px) {
  .section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
  }

  .section-heading__main {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
  }

  .section-heading__main .three-quarters {
    width: auto;
  }

  .section-heading__links {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    gap: 10px;

    flex: 0 0 auto;
    white-space: nowrap;
    text-align: right;

    transform: translateY(-2px);
  }
}



/* 260826 PC/SP：FeaturedCollection／ブログ記事の商品名を2行固定・3行目以降を省略 */
:is(.featured-collection,.kugui-article-product-grid) .product-block__title {
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;height:3em;min-height:3em;padding:0!important;
  margin-top:8px;margin-bottom:6px;line-height:1.5;white-space:normal;
}


/* 260817 PC：FeaturedCollection関連リンクをホバー時に白抜き表示 */
@media (min-width: 1024px) {
  .section-heading__links a:hover {
    color: #F57426 !important;
    background-color: #FFFFFF;
    border-color: #F57426;
  }
}



/* 260815 SP：FeaturedCollection見出しを中央・関連リンクを右下配置 */
@media (max-width: 559px) {
  .section-heading__main {
    width: 100%;
    text-align: center;
  }

  .section-heading__main .three-quarters {
    width: 100%;
  }

  .section-heading__caption {
    text-align: center;
  }

  .section-heading__links {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    width: 100%;
    margin-top: 4px;
    text-align: right;
  }

  .section-heading__links a {
    font-size: 11px;
    padding: 6px 12px;
  }
}

/* 260815 PC/SP：セクション本文の見出し下余白を調整 */
.section-heading__subtext p {
  margin-top: 18px;
  margin-bottom: 24px;
}

/* 260815 PC/SP：商品一覧の商品タイトル上下余白を調整 */
.product-block__title {
  padding-top:8px;
  padding-bottom:6px;
}

/* 260830 SP：商品カードの画像下・商品タイトル上下余白を縮小 */
@media(max-width:559px) {
  .product-block__image {
    margin-bottom:6px !important;
  }

  .product-block__title {
    padding-top:0 !important;
    padding-bottom:3px !important;
  }

  :is(.featured-collection,.kugui-article-product-grid) .product-block__title {
    padding:0 !important;
    margin-top:0 !important;
    margin-bottom:3px !important;
  }
}

/* 260815 PC/SP：商品一覧のVendor表記を小さく調整 */
.product-block__vendor {
  font-size: 11px;
}

/* 260830 SP：全ページの商品カードVendorを非表示 */
@media(max-width:559px) {
  .product-block__vendor {
    display:none !important;
  }
}

/* 260826 PC/SP：FeaturedCollection／ブログ記事の商品価格＋丸型カートを共通化 */
:is(.featured-collection,.kugui-article-product-grid) .product-block__actions {
  position:relative;display:grid;grid-template-columns:minmax(0,3fr) minmax(44px,1fr);
  align-items:center;gap:8px;width:100%;box-sizing:border-box;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__price-link {
  display:block;min-width:0;color:inherit!important;text-decoration:none!important;border:0!important;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__price-link .product-price {
  display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:4px;
  width:100%;margin:0;font-size:.9em;line-height:1.3;text-align:right;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart--compact,
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart--compact form {
  position:static;display:flex;align-items:center;justify-content:flex-end;width:100%;margin:0;padding:0;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact {
  display:flex;align-items:center;justify-content:center;flex:0 0 44px;
  width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;box-sizing:border-box;
  border:1px solid #F57426!important;border-radius:50%!important;
  background:#FFFFFF!important;color:#F57426!important;box-shadow:none!important;
  font-size:0!important;line-height:0!important;cursor:pointer;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact > * { display:none!important; }

:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact::before {
  content:"";display:block;width:22px;height:22px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='19' cy='20' r='1'/%3E%3Cpath d='M3 3h2l2.4 11.2a2 2 0 0 0 2 1.6h7.8a2 2 0 0 0 2-1.6L21 7H6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='19' cy='20' r='1'/%3E%3Cpath d='M3 3h2l2.4 11.2a2 2 0 0 0 2 1.6h7.8a2 2 0 0 0 2-1.6L21 7H6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}

@media(min-width:1024px) {
  :is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="idle"]:hover,
  :is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="added"]:hover {
    background:#F57426!important;color:#FFFFFF!important;
  }
}

:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="loading"] {
  border-color:#F57426!important;background:#F57426!important;color:#FFFFFF!important;cursor:wait;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="loading"]::before {
  width:22px;height:22px;background:currentColor;border:0;border-radius:0;animation:none;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="added"] {
  background:#F57426!important;color:#FFFFFF!important;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="added"]::before {
  width:21px;height:21px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='20 6 9 17 4 12' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='20 6 9 17 4 12' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact[data-cart-state="soldout"] {
  border-color:#87878F!important;background:#87878F!important;color:#FFFFFF!important;
  opacity:1!important;cursor:not-allowed;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__actions .ajax-add-notice--added {
  display:none!important;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__actions .ajax-add-notice--error {
  position:absolute!important;top:calc(100% + 5px);left:0!important;right:0!important;z-index:20;
  width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box;
  white-space:normal;font-size:12px;line-height:1.4;
}
:is(.featured-collection,.kugui-article-product-grid) .product-block__actions .ajax-add-notice--error .ajax-add-notice__inner {
  display:block;width:100%;margin:0!important;padding:7px 9px!important;box-sizing:border-box;
}

@media(max-width:559px) {
  :is(.featured-collection,.kugui-article-product-grid) .product-block__price-link .product-price {
    justify-content:center!important;text-align:center!important;
  }
  :is(.featured-collection,.kugui-article-product-grid) .product-block__actions {
    grid-template-columns:minmax(0,3fr) minmax(40px,1fr);gap:5px;
  }
  :is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact {
    flex-basis:40px;width:40px!important;min-width:40px!important;max-width:40px!important;
    height:40px!important;min-height:40px!important;
  }
  :is(.featured-collection,.kugui-article-product-grid) .product-block__cart-button--compact::before {
    width:20px;height:20px;
  }
}

/* 260815 PC/SP：各セクション間の上下余白を縮小 */
.row-double-space {
  margin: 30px 0 !important;
}

/* 260815 PC：スライドセクションの上下余白を調整 */
@media (min-width: 768px) {
  .row-double-space:has(.swiper-pagination) {
    margin-top: 15px !important;
    margin-bottom: 55px !important;
  }
}

/* 260815 SP：スライドページネーション位置・上下余白を調整 */
@media (max-width: 767px) {
  .row-double-space:has(.swiper-pagination) {
    margin-top: 10px !important;
    margin-bottom: 25px !important;
  }

  .swiper-pagination.swiper-pagination-horizontal {
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: translateY(10px);
  }
}

/* 260815 PC/SP：Featured Blogの記事サムネイルに薄いグレーの1px枠線を追加 */
.featured-blog .article-summary__image {
  border: 1px solid #DCE0E3;
}

/* 260815 PC/SP：記事「もっと読む」の文字・色・配置を調整 */
.article-summary__read-more {
  text-align: right;
}

.article-summary__read-more .standard-link {
  font-size: 13px;
  font-weight: 700;
  color: #C94F13;
}

/* 260815 PC/SP：記事タイトルと「もっと読む」の間隔を縮小 */
.article-summary__title {
  margin-bottom: 0 !important;
}

/* 260815 SP：記事一覧の各記事間の上下間隔を縮小 */
@media (max-width: 559px) {
  .article-summary {
    margin-bottom: 8px !important;
  }
}


/* 260815 PC：サイドバー補足文の文字・区切り線・余白を調整 */
.section-heading__caption_side {
  font-size: 12px;
  font-weight: 700;
  border-bottom: 1px solid #DCE0E3;
  margin-top: 0 !important;
  padding-bottom: 4px;
}

.small-title:has(+ .section-heading__caption_side) {
  margin-bottom: 0 !important;
}

.section-heading__caption_side p {
  margin-top: 0 !important;
  margin-bottom: 0;
}

/* 260815 PC：サイドバーテキスト本文を13pxに調整 */
.sidebar-block--text .rte {
  font-size: 13px;
}


/* 260815 PC：サイドバーナビの文字・区切り線・ホバー表示を調整 */
.sidebar-block--nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-block--nav ul li {
  border-bottom: 1px solid #DCE0E3;
  margin: 0;
}

.sidebar-block--nav ul li a {
  display: block;
  padding: 9px 6px;
  font-size: 13px;
  font-weight: 400;
  color: #555E66 !important;
  text-decoration: none !important;
  border-bottom: none !important;
  transition: background-color 0.2s ease;
}

.sidebar-block--nav ul li a:hover {
  color: #555E66 !important;
  background-color: #F4F5F5;
  text-decoration: none !important;
}


/* 260815 PC：サイドバー記事一覧の文字・区切り線・余白・ホバー表示を調整 */
.sidebar-block--blog > .article-summary {
  border-bottom: 1px solid #DCE0E3;
  padding-left: 6px;
  padding-bottom: 8px;
  margin-bottom: 8px;
  transition: background-color 0.2s ease;
}

.sidebar-block--blog > .article-summary .article-summary__title,
.sidebar-block--blog > .article-summary .article-summary__title a {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #555E66 !important;
}

.sidebar-block--blog > .section-heading__caption_side + .article-summary {
  margin-top: 0 !important;
  padding-top: 8px !important;
}

.sidebar-block--blog > .article-summary:hover {
  background-color: #F4F5F5;
}

/* =========================================================
   GLOBAL / HOME 追加調整
   サイドバーReadmore・商品ラベル・フッター・テーブル
   ========================================================= */

/* 260817 PC：サイドバーRead moreを右寄せ・上詰め・小さめ太字に調整 */
.sidebar-block--text .rte > :last-child {
  margin-bottom: 0 !important;
}

.sidebar-block--text > .btn-after-text {
  display: block;
  width: fit-content;
  min-width: 0 !important;
  margin: 10px 0 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;

  color: #C94F13 !important;
  font-size: 12px !important;
  font-weight: 700;
  line-height: 1.4;
}
/* 260817 PC/SP：商品一覧のSale・Sold outラベルを画像左下の横長四角に調整 */
.product-block__sale-label,
.product-block__soldout-label {
  top:auto !important;
  right:auto !important;
  bottom:0 !important;
  left:0 !important;
  width:auto !important;
  height:auto !important;
  min-width:70px !important;
  min-height:0 !important;
  margin:0 !important;
  padding:6px 12px !important;
  writing-mode:horizontal-tb !important;
  transform:none !important;
  border-radius:0 !important;
  font-size:15px !important;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  white-space:nowrap;
}

/* テーマ標準のリボン形状・三角切り欠きを解除 */
.product-block__sale-label::before,
.product-block__sale-label::after,
.product-block__soldout-label::before,
.product-block__soldout-label::after {
  content:none !important;
  display:none !important;
  border:0 !important;
  width:0 !important;
  height:0 !important;
}

/* 260817 PC/SP：フッターのメニュー文字・テキスト本文を小さく調整 */
.footer-block__links a {
  font-size: 13px;
}

.footer-block__content .rte {
  font-size: 13px;
  line-height: 1.6;
}

/* 260817 PC/SP：本文内テーブルを中央寄せ・幅縮小し、左右列の文字揃えを調整 */
.rte table {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  font-size: 13px;
}

/* 左列：中央揃え */
.rte table th:first-child,
.rte table td:first-child {
  text-align: center;
}

/* 右列：左揃え */
.rte table th:nth-child(2),
.rte table td:nth-child(2) {
  text-align: left;
}



/* =========================================================
   BLOG INDEX / ブログ一覧
   ========================================================= */

/* 260815 PC：ブログ一覧を2カラム化・記事間の縦余白を縮小 */
@media (min-width: 990px) {
  .template-blog [data-section-type="blog"] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 30px;
    row-gap: 15px;
  }

  .template-blog [data-section-type="blog"] > .row,
  .template-blog [data-section-type="blog"] > .pagination {
    grid-column: 1 / -1;
  }

  .template-blog [data-section-type="blog"] > .article-summary {
    margin-bottom: 0 !important;
  }
}

/* 260815 SP：ブログ一覧の記事ごとの縦間隔を拡大 */
@media (max-width: 559px) {
  .template-blog [data-section-type="blog"] > .article-summary {
    margin-bottom: 20px !important;
  }
}

/* 260815 PC/SP：ブログ一覧の記事タイトル文字サイズ・画像下余白を調整 */
.template-blog [data-section-type="blog"] > .article-summary > .standard-title {
  font-size: 14px;
  line-height: 1.5;
  margin-top: 0px;
}

/* 260815 SP：ブログ一覧の記事タイトルを左揃え */
@media (max-width: 559px) {
  .template-blog [data-section-type="blog"] > .article-summary > .standard-title,
  .template-blog [data-section-type="blog"] > .article-summary > .standard-title > a {
    text-align: left !important;
  }

  .template-blog [data-section-type="blog"] > .article-summary > .standard-title > a {
    display: block;
    width: 100%;
  }
}

/* 260815 PC/SP：ブログ一覧の記事抜粋文を非表示 */
.template-blog .article-summary__excerpt {
  display: none;
}

/* 260815 PC/SP：ブログ一覧サムネイルに薄いグレーの1px枠線を追加 */
.template-blog [data-section-type="blog"] > .article-summary > a > .global-border-radius {
  border: 1px solid #DCE0E3;
}

/* 260825 PC/タブレット：ブログ一覧・記事ページのカテゴリータグUIを共通化 */
@media (min-width:560px) {
  .template-blog [data-section-type="sidebar"] .sidebar-block > ul,
  body:has([data-section-type="article"]) .sidebar-block > ul.article__tags {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:8px 0 0;
    padding:0;
  }

  .template-blog [data-section-type="sidebar"] .article-tag,
  body:has([data-section-type="article"]) .sidebar-block .article-tag {
    display:inline-block;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:5px 8px !important;
    border:1px solid #DCE0E3 !important;
    border-radius:3px;
    background-color:#FFFFFF !important;
    color:#555E66 !important;
    font-size:13px !important;
    font-weight:600;
    line-height:1.3;
    text-align:left;
  }

  .template-blog [data-section-type="sidebar"] .article-tag a,
  body:has([data-section-type="article"]) .sidebar-block .article-tag a {
    display:block;
    margin:-5px -8px;
    padding:5px 8px;
    border:none !important;
    background:transparent !important;
    color:inherit !important;
    font-size:inherit !important;
    line-height:inherit;
    text-decoration:none !important;
  }

  .template-blog [data-section-type="sidebar"] .article-tag.btn--tags:hover,
  body:has([data-section-type="article"]) .sidebar-block .article-tag.btn--tags:hover {
    border-color:#DCE0E3 !important;
    background-color:#F4F5F5 !important;
    color:#555E66 !important;
  }

  .template-blog [data-section-type="sidebar"] .article-tag.btn--primary,
  body:has([data-section-type="article"]) .sidebar-block .article-tag.btn--primary {
    border-color:#C94F13 !important;
    background-color:#C94F13 !important;
    color:#FFFFFF !important;
    font-weight:700;
  }

  .template-blog [data-section-type="sidebar"] .article-tag.btn--primary:hover,
  body:has([data-section-type="article"]) .sidebar-block .article-tag.btn--primary:hover {
    border-color:#C94F13 !important;
    background-color:#C94F13 !important;
    color:#FFFFFF !important;
  }
}

/* 260815 PC：ブログ一覧のカテゴリーアコーディオンを非表示 */
@media (min-width: 560px) {
  .template-blog .blog-tag-accordion {
    display: none !important;
  }
}

/* 260815 SP：ブログ一覧のカテゴリー絞り込みをアコーディオン表示 */
@media (max-width: 559px) {
  .template-blog .blog-tag-accordion {
    width: 100%;
    margin: 8px 0 22px;
    border: 1px solid #DCE0E3;
    border-radius: 4px;
    background-color: #FCFCFB;
    overflow: hidden;
  }

  .template-blog .blog-tag-accordion > summary {
    position: relative;
    display: block;
    padding: 11px 38px 10px 14px;
    color: #555E66;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    cursor: pointer;
    list-style: none;
  }

  .template-blog .blog-tag-accordion > summary::-webkit-details-marker {
    display: none;
  }

  .template-blog .blog-tag-accordion > summary::after {
    content: "＋";
    position: absolute;
    top: 50%;
    right: 14px;
    color: #F57426;
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    transform: translateY(-50%);
  }

  .template-blog .blog-tag-accordion[open] > summary::after {
    content: "－";
  }

  .template-blog .blog-tag-accordion[open] > summary {
    border-bottom: 1px solid #DCE0E3;
    background-color: #F4F5F5;
  }

  .template-blog .blog-tag-accordion .categories {
    padding: 12px 12px 14px;
  }

  .template-blog .blog-tag-accordion .categories ul {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .template-blog .blog-tag-accordion .article-tag {
    display: inline-block;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border: 1px solid #DCE0E3 !important;
    border-radius: 3px;
    background-color: #FFFFFF !important;
    color: #555E66 !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
  }

  .template-blog .blog-tag-accordion .article-tag a {
    display: block;
    margin: -6px -10px;
    padding: 6px 10px;
    border: none !important;
    background: transparent !important;
    color: inherit !important;
    text-decoration: none !important;
  }

  .template-blog .blog-tag-accordion .article-tag:hover {
    border-color: #DCE0E3 !important;
    background-color: #F4F5F5 !important;
    color: #555E66 !important;
  }

  /* 260815 SP：ブログ絞り込み中のタグをオレンジ背景・白文字で強調 */
  .template-blog .blog-tag-accordion .article-tag:not(:has(a)) {
    border-color: #C94F13 !important;
    background-color: #C94F13 !important;
    color: #FFFFFF !important;
    font-weight: 700;
  }

  .template-blog .blog-tag-accordion .article-tag:not(:has(a)):hover {
    border-color: #C94F13 !important;
    background-color: #C94F13 !important;
    color: #FFFFFF !important;
  }
}

/* 260825 SP：ブログ記事下部のカテゴリータグをボタンUIに調整 */
@media (max-width:559px) {
  [data-section-type="article"] .categories.mobile-only > ul {
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin:8px 0 0;
    padding:0;
    list-style:none;
  }

  [data-section-type="article"] .categories.mobile-only .article-tag {
    display:inline-block;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:6px 10px !important;
    border:1px solid #DCE0E3 !important;
    border-radius:3px;
    background:#FFFFFF !important;
    color:#555E66 !important;
    font-size:12px !important;
    font-weight:600;
    line-height:1.3;
  }

  [data-section-type="article"] .categories.mobile-only .article-tag a {
    display:block;
    margin:-6px -10px;
    padding:6px 10px;
    border:0 !important;
    background:transparent !important;
    color:inherit !important;
    font-size:inherit !important;
    text-decoration:none !important;
  }
}

/* =========================================================
   PRODUCT / 商品ページ
   PCレイアウト・デザインベース
   ========================================================= */

/* =========================================================
   ① 外枠：サイドバー＋メインカラム
   ========================================================= */

/* 260815 PC/タブレット：商品ページ外枠をHOME同等のサイドバー＋メイン構成に固定 */
@media (min-width: 561px) {
  [data-section-type="product"] > .product-page-layout {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    margin-left: -36px !important;
    margin-right: -36px !important;
    width: auto !important;
  }

  [data-section-type="product"] > .product-page-layout > .product-page-sidebar {
    display: block !important;
    flex: 0 0 calc((100% + 36px) / 4) !important;
    width: calc((100% + 36px) / 4) !important;
    max-width: none !important;
    padding-left: 36px !important;
    padding-right: 24px !important;
    box-sizing: border-box;
  }

  [data-section-type="product"] > .product-page-layout > .product-page-main {
    display: block !important;
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-left: 36px !important;
    padding-right: 36px !important;
    box-sizing: border-box;
  }
}

/* 260815 PC/タブレット狭幅：HOME同様に960px以下でサイドバー比率を調整 */
@media (min-width: 561px) and (max-width: 960px) {
  [data-section-type="product"] > .product-page-layout > .product-page-sidebar {
    flex-basis: calc((100% + 36px) / 3 - 36px) !important;
    width: calc((100% + 36px) / 3 - 36px) !important;
    padding-right: 4px !important;
  }
}

/* 260815 PC：商品ページ上部を商品画像② 55%・商品情報③ 45%に調整し、下部に区切り線を追加 */
@media (min-width: 1024px) {
  [data-section-type="product"] .product-page-top {
    display: grid;
    grid-template-columns: minmax(0, 11fr) minmax(0, 9fr);
    gap: 30px;
    margin-left: 0;
    align-items: start;
    border-bottom: 1px solid #DCE0E3;
    padding-bottom: 24px;
    margin-bottom: 24px;
  }

  [data-section-type="product"] .product-page-media,
  [data-section-type="product"] .product-page-details {
    float: none;
    width: auto;
    min-width: 0;
    padding-left: 0;
  }
}


/* =========================================================
   ② 商品画像・サムネイル
   ========================================================= */

/* 260815 PC/SP：商品ページ②のメイン画像・サムネイルに薄い外枠を追加 */
.product-page-media .rimage-outer-wrapper {
  border: 1px solid #DCE0E3;
  box-sizing: border-box;
}

/* 260815 PC/SP：商品画像の拡大案内を画像直下へ表示 */
.product-page-media .product-image > .product-image__link {
  display: block;
  text-decoration: none !important;
}

.product-page-media .product-image > .product-image__link::after {
  content: "画像をクリックして拡大";
  display: block;
  margin-top: 2px;
  text-align: right;
  color: #7A838B;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
}

/* 260815 PC：商品サムネイルを左端揃え・固定間隔・複数段折り返しに調整 */
@media (min-width: 1024px) {
  .product-page-media .product-thumbnails--inline {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: flex-start;
    width: 100% !important;
    gap: 8px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .product-page-media .product-thumbnails--inline .product-thumbnails__item {
    flex: 0 0 68px !important;
    width: 68px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* 260815 PC/SP：選択中サムネイルのテーマ標準グレー外枠を解除 */
.product-page-media .product-thumbnails__item--active {
  box-shadow: none !important;
}

/* 260816 PC：選択中の商品サムネイルのみオレンジ枠で強調 */
@media (min-width: 1024px) {
  .product-page-media .product-thumbnails__item--active .rimage-outer-wrapper {
    border: 2px solid #F57426 !important;
  }
}

/* 260815 PC：未選択サムネイルのホバーをオレンジ枠・浮き上がり・影で強調 */
@media (min-width: 1024px) {
  .product-page-media
  .product-thumbnails__item:not(.product-thumbnails__item--active)
  .product-thumbnails__link
  .rimage-outer-wrapper {
    transition:
      border-color 0.18s ease,
      box-shadow 0.18s ease,
      transform 0.18s ease;
  }

  .product-page-media
  .product-thumbnails__item:not(.product-thumbnails__item--active)
  .product-thumbnails__link:hover
  .rimage-outer-wrapper {
    border-color: #F57426 !important;
    box-shadow: 0 3px 8px rgba(43, 50, 56, 0.18);
    transform: translateY(-2px);
  }
}


/* =========================================================
   ③ 商品情報・購入UI
   ========================================================= */

/* 260815 PC/SP：商品情報③を価格＋数量の2カラム構成に調整 */
.product-page-details {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 16px;
  row-gap: 0;
  align-items: center;
}

.product-page-details > * {
  grid-column: 1 / -1;
}

.product-page-details::after {
  display: none;
}

/* 260815 PC：②③の高さ連動を解除し、③内部の余白再配分を防止 */
@media (min-width: 1024px) {
  [data-section-type="product"] .product-page-details {
    align-self: start;
    align-content: start;
  }
}

/* 260815 PC/SP：商品名とProduct licensorの表示を調整 */
.product-page-details [data-dynamic-product-content="title"] h1 {
  margin-bottom: -8px !important;
}

.product-page-details > .product-form-block:has(.product-licensor) {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.product-page-details .product-licensor {
  width: 100%;
  text-align: left !important;
  font-size: 12px;
  line-height: 1.4;
}

/* 260815 PC/SP：商品価格を左揃え・大きめ表示に調整 */
.product-page-details .product-price.product-price--large {
  margin-bottom: 0 !important;
  text-align: left !important;
  font-size: 1.2em !important;
}

.product-page-details > .product-form-block:has(> .product-price.product-price--large) {
  grid-column: 1;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* 260815 PC/SP：購入フォーム外箱のみGridレイアウト上で解除 */
.product-page-details > .product-form-block:has(> .product-form.js-product-form),
.product-page-details > .product-form-block:has(> .product-form.js-product-form) > .product-form,
.product-page-details .product-qty-row-beside {
  display: contents;
}

/* 260815 PC/SP：数量セレクターを価格の右側へ配置 */
.product-page-details .product-qty-row-beside > .form-row:first-of-type {
  grid-column: 2;
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

/* 260815 PC/SP：数量セレクター本体を操作しやすく調整 */
.product-page-details .quantity-adjuster {
  display: inline-flex;
  align-items: center;
  height: 44px;
  border: 1px solid #DCE0E3;
  border-radius: 4px;
  background: #FFFFFF;
  overflow: hidden;
  box-sizing: border-box;
}

.product-page-details .quantity-adjuster__button {
  position: relative;
  display: block !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #F4F5F5;
  color: #555E66;
  font-size: 0 !important;
  line-height: 1 !important;
  box-sizing: border-box;
  transition:
    background-color 0.18s ease,
    color 0.18s ease;
}

/* 260815 PC/SP：数量セレクターの＋−記号をCSS描画して中央配置 */
.product-page-details .quantity-adjuster__button::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  background: currentColor;
  border-radius: 1px;
  transform: translate(-50%, -50%);
}

.product-page-details .quantity-adjuster__button:last-child::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 14px;
  background: currentColor;
  border-radius: 1px;
  transform: translate(-50%, -50%);
}

.product-page-details .quantity-adjuster__input.qty-actual__input {
  display: block;
  width: 90px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-left: 1px solid #DCE0E3 !important;
  border-right: 1px solid #DCE0E3 !important;
  background: #FFFFFF;
  color: #2B3238;
  font-size: 15px;
  font-weight: 700;
  line-height: 42px !important;
  text-align: center;
  box-sizing: border-box;
  appearance: textfield;
}

.product-page-details .quantity-adjuster__input::-webkit-inner-spin-button,
.product-page-details .quantity-adjuster__input::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}

/* 260815 PC：数量ボタンのホバーをオレンジで強調 */
@media (min-width: 1024px) {
  .product-page-details .quantity-adjuster__button:hover {
    background: #F57426;
    color: #FFFFFF;
  }
}

/* 260815 PC/SP：カート追加ボタンを③全幅・ブランドオレンジ・フラット表示に調整 */
.product-page-details .product-form-button-container {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 14px 0 0 !important;
}

.product-page-details .product-form-button-container button[name="add"] {
  display: block;
  width: 100% !important;
  min-height: 54px;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border: 2px solid #F57426 !important;
  border-radius: 4px;
  background-color: #F57426 !important;
  color: #FFFFFF !important;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  box-shadow: none !important;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease;
}

/* 260815 PC：カート追加ボタンをホバー時に白抜き表示 */
@media (min-width: 1024px) {
  .product-page-details .product-form-button-container button[name="add"]:hover {
    background-color: #FFFFFF !important;
    color: #F57426 !important;
    border-color: #F57426 !important;
    box-shadow: none !important;
    transform: translateY(-1px);
  }

  .product-page-details .product-form-button-container button[name="add"]:active {
    background-color: #FFFFFF !important;
    color: #C94F13 !important;
    border-color: #C94F13 !important;
    box-shadow: none !important;
    transform: translateY(0);
  }
}

/* 260815 PC/SP：商品情報タブをシンプルなアコーディオンUIに調整 */
.product-page-details .cpt-wrapper {
  width: 100%;
  margin-top: 22px;
  border-top: 1px solid #DCE0E3;
  background: #FFFFFF;
}

.product-page-details .cpt-tab-item {
  border-bottom: 1px solid #DCE0E3;
}

.product-page-details .cpt-tab-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 40px;
  margin: 0;
  padding: 14px 4px;
  border: 0 !important;
  background: #FFFFFF !important;
  color: #555E66 !important;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
}

.product-page-details .cpt-tab-btn .cpt-icon {
  width: 22px !important;
  height: 22px;
  color: #555E66 !important;
  flex-shrink: 0;
}

.product-page-details .cpt-tab-btn > span {
  flex: 1 1 auto;
}

.product-page-details .cpt-tab-btn .cpt-arrow {
  width: 14px !important;
  height: 14px !important;
  margin-left: auto !important;
  color: #555E66 !important;
  flex-shrink: 0;
  transition: transform 0.25s ease;
}

.product-page-details .cpt-tab-btn[aria-expanded="true"] .cpt-arrow {
  transform: rotate(180deg);
}

/* 260830 PC/SP：商品情報アコーディオン本文を周囲の文字サイズより一回り小さく表示 */
.product-page-details .cpt-tab-content {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  padding: 0 4px;
  color: #555E66;
  font-size:.9em;
  line-height: 1.5;
  transition:
    max-height 0.3s ease,
    opacity 0.2s ease,
    padding 0.3s ease;
}

.product-page-details .cpt-tab-content :is(p,span,strong,a,li) {
  font-size:inherit;
}

.product-page-details .cpt-tab-content.is-open {
  max-height: 800px;
  opacity: 1;
  padding-top: 2px;
  padding-bottom: 18px;
}

.product-page-details .cpt-tab-content > :first-child {
  margin-top: 0;
}

.product-page-details .cpt-tab-content > :last-child {
  margin-bottom: 0;
}

/* 260815 PC：商品情報アコーディオンのホバー・CTAとの間隔を調整 */
@media (min-width: 1024px) {
  [data-section-type="product"] .product-page-details .cpt-wrapper {
    margin-top: 25px;
  }

  .product-page-details .cpt-tab-btn:hover {
    background: #F4F5F5 !important;
  }
}

/* 260815 PC/SP：共有ラベルとSNSアイコンを横並び・右揃えに調整 */
.product-page-details .sharing {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  width: 100%;
  text-align: right;
}

.product-page-details .sharing .sharing-label {
  margin: 0;
  white-space: nowrap;
}

.product-page-details .sharing .sharing-list {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0;
  padding: 0;
}

/* =========================================================
   ④ 商品説明
   ========================================================= */

/* 260815 PC：旧HTMLの商品説明幅は95%を維持。XO Tunnel使用時は外枠を100%に戻し、XO共通幅で制御 */
@media (min-width: 1024px) {
  [data-section-type="product"] .product-page-description {
    width: 95% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  [data-section-type="product"] .product-page-description:has(.xo-tunnel) {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  [data-section-type="product"] .product-page-description img {
    display: block;
    width: 100%;
    max-width: 100% !important;
    height: auto;
  }
}

/* 260816 SP：商品ページの画像・商品情報間隔とSP専用表示を調整 */
@media (max-width: 560px) {

  /* ① PC用サイドバーをSPでは非表示 */
  [data-section-type="product"] .product-page-sidebar {
    display: none !important;
  }

  /* ② 商品画像と③商品情報の間に適度な余白を追加 */
  [data-section-type="product"] .product-page-details {
    margin-top: 10px !important;
  }

  /* SPでは画像ホバー前提の「クリックして拡大」文言を少し控えめに */
  .product-page-media .product-image > .product-image__link::after {
    font-size: 10px;
    margin-top: 2px;
  }

  /* 商品情報側が画面幅をはみ出さないよう保険 */
  .product-page-details {
    width: 100%;
    min-width: 0;
  }

  /* CTAはSPでも確実に全幅 */
  .product-page-details .product-form-button-container,
  .product-page-details
  .product-form-button-container
  button[name="add"] {
    width: 100% !important;
  }
}

/* 260816 SP狭幅：極端に狭い画面のみ数量入力欄を縮小 */
@media (max-width: 360px) {
  .product-page-details
  .quantity-adjuster__input.qty-actual__input {
    width: 65px !important;
  }
}


/* 260816 PC/SP：Sold out時のカートボタンをグレー表示に変更 */
.product-page-details
.product-form-button-container
button[name="add"][disabled] {
  background-color: #87878f !important;
  border-color: #87878f !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  transform: none !important;
}

/* 260816 PC/SP：税込表記を商品価格の左上に固定 */
.product-page-details .product-price.product-price--large::before {
  content: "税込";
  display: block;
  margin-bottom: 4px;
  color: #7A838B;
  font-size: 0.7em;
  font-weight: 400;
  line-height: 1.2;
  text-align: left;
}

/* 260826 PC/SP：LINE再入荷通知ボタンをカート追加ボタンと同じ全幅に調整 */
[data-section-type="product"] #oc-restock-button {
  grid-column: 1 / -1 !important;
  justify-self: stretch !important;
  display: block;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* =========================================================
   CART / カートページ
   ========================================================= */

/* =========================================================
   共通：商品行・補足文・会計ボタン
   ========================================================= */

/* 260816 PC/SP：カート商品行の基本文字サイズを14pxに統一 */
[data-section-type="cart"] .cart-items__body .cart-column--flex-row {
  font-size: 14px;
}

/* 260816 PC/SP：グローバル.product-priceの縮小指定をカート内で上書き */
[data-section-type="cart"] .cart-items__body .product-price {
  font-size: 14px !important;
}

[data-section-type="cart"] .cart-items__body .product-price .theme-money {
  font-size: inherit !important;
}

/* 260816 PC/SP：税・配送料についての補足文を右揃え */
[data-section-type="cart"] .cart-policies {
  width: 100%;
  text-align: right !important;
}

/* 260816 PC/SP：会計ボタンを商品ページと同じブランドオレンジ・フラット表示に調整 */
[data-section-type="cart"] .cart-checkout-button {
  display: block;
  width: 100% !important;
  min-height: 54px;
  border: 2px solid #F57426 !important;
  border-radius: 4px;
  background-color: #F57426 !important;
  color: #FFFFFF !important;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  box-shadow: none !important;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease;
}


/* =========================================================
   PC
   ========================================================= */

@media (min-width: 1024px) {

  /* 260816 PC：上部注意書きの余白を縮小 */
  #shopify-section-template--21428984840382__rich_text_4WkaML
  .rich-text-section
  .padded-block {
    padding: 10px 18px !important;
  }

  #shopify-section-template--21428984840382__rich_text_4WkaML
  .rich-text-section
  .rte p {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }

  /* 260816 PC：商品一覧ヘッダーを太字化 */
  [data-section-type="cart"] .cart-items__header {
    font-weight: 700;
  }

  /* 260816 PC：通常会計ボタンと追加決済を360px・右揃えで統一 */
  [data-section-type="cart"] .cart-checkout {
    width: 360px;
    margin-left: auto;
    margin-right: 0;
  }

  [data-section-type="cart"] .cart-checkout-button:hover {
    background-color: #FFFFFF !important;
    color: #F57426 !important;
    border-color: #F57426 !important;
  }

  [data-section-type="cart"] .additional-checkout-buttons {
    width: 360px !important;
    max-width: 360px !important;
    margin-top: 10px;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  [data-section-type="cart"]
  .additional-checkout-buttons
  shopify-accelerated-checkout-cart {
    display: block;
    width: 100%;
  }

  /* 260816 PC：カート全体の小計表示サイズを調整 */
  [data-section-type="cart"] .cart-subtotal-label {
    font-size: 14px !important;
  }

  [data-section-type="cart"] .cart-subtotal {
    font-size: 18px !important;
  }

  [data-section-type="cart"] .cart-subtotal .theme-money {
    font-size: inherit !important;
  }
}


/* =========================================================
   SP
   ========================================================= */

@media (max-width: 559px) {

  /* 260816 SP：上部注意書きの余白を縮小 */
  #shopify-section-template--21428984840382__rich_text_4WkaML
  .rich-text-section
  .padded-block {
    padding: 10px 14px !important;
  }

  #shopify-section-template--21428984840382__rich_text_4WkaML
  .rich-text-section
  .rte p {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* 260816 SP：カート見出しを左揃え */
  [data-section-type="cart"] > .standard-title {
    text-align: left !important;
  }

  /* 260816 SP：商品削除ボタンのタップ領域と×アイコンを強調 */
  [data-section-type="cart"] .cart-mobile-remove {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
  }

  [data-section-type="cart"] .cart-mobile-remove .icon svg {
    width: 18px;
    height: 18px;
  }

  [data-section-type="cart"] .cart-mobile-remove .icon svg path,
  [data-section-type="cart"] .cart-mobile-remove .icon svg polygon {
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 0.8;
  }

  /* 260816 SP：カート商品を「商品名／画像＋単価＋数量／削除＋小計」の3段構成に整理 */
  [data-section-type="cart"] .cart-item {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas:
      "title  title title"
      "image  price quantity"
      "remove total total";
    column-gap: 12px;
    row-gap: 12px;
    width: 100%;
    padding: 16px 0 20px;
    box-sizing: border-box;
  }

  /* HTML上の中間ラッパーをレイアウト上だけ解除 */
  [data-section-type="cart"] .cart-item > .cart-column--flex-group,
  [data-section-type="cart"]
  .cart-item
  > .cart-column--flex-group
  > .cart-column--flex-row:not(.cart-column--flex-row--lower),
  [data-section-type="cart"] .cart-column--description {
    display: contents !important;
  }

  /* PC用の下段削除リンクはSPでは非表示 */
  [data-section-type="cart"] .cart-column--flex-row--lower {
    display: none !important;
  }

  /* ① 商品名：全幅・太字 */
  [data-section-type="cart"] .cart-item-description {
    grid-area: title;
    width: 100%;
    min-width: 0;
    margin: 0;
  }

  [data-section-type="cart"] .cart-item-description > a {
    font-weight: 700;
  }

  /* ② 商品画像：100px */
  [data-section-type="cart"] .cart-column--image {
    grid-area: image;
    width: 100px !important;
    min-width: 100px !important;
    margin: 0 !important;
    align-self: center;
  }

  [data-section-type="cart"] .cart-column--image > div,
  [data-section-type="cart"] .cart-column--image a,
  [data-section-type="cart"] .cart-column--image .rimage-outer-wrapper {
    width: 100% !important;
    max-width: none !important;
  }

  /* ② 商品単価：画像・数量セレクターと垂直中央揃え */
  [data-section-type="cart"] .cart-column--price.product-price {
    grid-area: price;
    width: auto !important;
    margin: 0 !important;
    align-self: center;
    justify-self: start;
  }

  /* ② 数量セレクター：右寄せ・垂直中央揃え */
  [data-section-type="cart"] .cart-column--quantity {
    grid-area: quantity;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    align-self: center;
    justify-self: end;
    text-align: left !important;
  }

  /* ③ ×マーク：左寄せ */
  [data-section-type="cart"] .cart-mobile-remove {
    grid-area: remove;
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin: 0 !important;
    align-self: center;
    justify-self: start;
    transform: none !important;
  }

  /* ③ 小計：右寄せ・テーマ標準デザインを維持 */
  [data-section-type="cart"] .cart-column--total {
    grid-area: total;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center;
    justify-self: end;
    border: 0 !important;
    background: transparent !important;
  }
}

/* =========================================================
   XO CONTENT / ブログ記事・商品説明 共通
   - XO Tunnelの見た目はブログ記事／商品ページで共通化
   - 表示幅だけ各ページのレイアウトに合わせて個別制御
   ========================================================= */

/* =========================================================
   XOコンテンツ幅
   ========================================================= */

/* 260827 PC：ブログ記事は従来どおり本文85%幅・中央配置 */
@media (min-width: 560px) {
  [data-section-type="article"] .xo-tunnel > * {
    width: 85% !important;
    max-width: 85% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }
}

/* 260827 PC/タブレット：商品説明XOも85%幅・中央配置 */
@media (min-width: 561px) {
  [data-section-type="product"] .product-page-description .xo-tunnel > * {
    width: 85% !important;
    max-width: 85% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }
}

/* SP：ブログ記事は全幅 */
@media (max-width: 559px) {
  [data-section-type="article"] .xo-tunnel > * {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }
}

/* SP：商品説明XOは全幅 */
@media (max-width: 560px) {
  [data-section-type="product"] .product-page-description .xo-tunnel > * {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }
}


/* =========================================================
   XO本文
   ========================================================= */

/* 260827 PC：ブログ記事／商品説明の本文を14pxに統一 */
@media (min-width: 560px) {
  [data-section-type="article"] .xo-tunnel > p {
    margin-top: 0;
    margin-bottom: 2px;
    font-size: 14px;
    line-height: 1.7;
  }
}

@media (min-width: 561px) {
  [data-section-type="product"] .product-page-description .xo-tunnel > p {
    margin-top: 0;
    margin-bottom: 2px;
    font-size: 14px;
    line-height: 1.7;
  }
}

/* 260827 SP：ブログ記事／商品説明の本文を14pxに統一 */
@media (max-width: 559px) {
  [data-section-type="article"] .xo-tunnel > p {
    margin-top: 0;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1.6;
  }
}

@media (max-width: 560px) {
  [data-section-type="product"] .product-page-description .xo-tunnel > p {
    margin-top: 0;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1.6;
  }
}

/* 260830 PC/SP：ブログ記事・商品説明の下線を明るい黄色マーカー＋下側にはみ出す表現に調整 */
:is(
  [data-section-type="article"] .rte,
  [data-section-type="product"] .product-page-description
) :is(
  u,
  span[style*="text-decoration: underline"],
  span[style*="text-decoration:underline"]
) {
  text-decoration:none !important;
  padding-bottom:.08em;
  background:linear-gradient(
    transparent 58%,
    #fff584ff 58%,
    #fff584ff 100%
  ) !important;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}

/* =========================================================
   XO H2 / H3
   ========================================================= */

/* 260827 PC/SP：H2下部に全幅の太線 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > h2::after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  margin-top: 2px;
  margin-bottom: 14px;
  background-color: #8F0000;
}

/* 260827 PC/SP：H3下部に短い太線 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > h3::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  margin-top: 2px;
  margin-bottom: 7px;
  background-color: #8F0000;
}

/* PC：見出しサイズ・余白 */
@media (min-width: 560px) {
  [data-section-type="article"] .xo-tunnel > h2 {
    margin-top: 40px !important;
    margin-bottom: 0 !important;
    font-size: 26px;
    line-height: 1.5;
  }

  [data-section-type="article"] .xo-tunnel > h3 {
    margin-top: 28px !important;
    margin-bottom: 0 !important;
    font-size: 18px;
    line-height: 1.5;
  }
}

@media (min-width: 561px) {
  [data-section-type="product"] .product-page-description .xo-tunnel > h2 {
    margin-top: 40px !important;
    margin-bottom: 0 !important;
    font-size: 26px;
    line-height: 1.5;
  }

  [data-section-type="product"] .product-page-description .xo-tunnel > h3 {
    margin-top: 28px !important;
    margin-bottom: 0 !important;
    font-size: 18px;
    line-height: 1.5;
  }
}

/* SP：見出しサイズ・余白 */
@media (max-width: 559px) {
  [data-section-type="article"] .xo-tunnel > h2 {
    margin-top: 30px !important;
    margin-bottom: 14px !important;
    font-size: 20px;
    line-height: 1.5;
  }

  [data-section-type="article"] .xo-tunnel > h3 {
    margin-top: 22px !important;
    margin-bottom: 10px !important;
    font-size: 16px;
    line-height: 1.5;
  }
}

@media (max-width: 560px) {
  [data-section-type="product"] .product-page-description .xo-tunnel > h2 {
    margin-top: 30px !important;
    margin-bottom: 14px !important;
    font-size: 20px;
    line-height: 1.5;
  }

  [data-section-type="product"] .product-page-description .xo-tunnel > h3 {
    margin-top: 22px !important;
    margin-bottom: 10px !important;
    font-size: 16px;
    line-height: 1.5;
  }
}


/* =========================================================
   XO単独画像・キャプション
   ========================================================= */

/* 260827 PC/SP：画像の枠線・角丸 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-img__img {
  width: 100%;
  border: 1px solid #DCE0E3;
  border-radius: 3px;
  overflow: hidden;
  box-sizing: border-box;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-img__img img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 0;
}

/* グリッド・スライダー内はコンテナ幅いっぱい */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-row .xot-img,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .kugui-image-slider .xot-img {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 空キャプションは非表示 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-img__caption:empty {
  display: none;
}

/* PC：画像キャプション */
@media (min-width: 560px) {
  [data-section-type="article"] .xo-tunnel .xot-img__caption {
    margin-top: 4px;
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
  }
}

@media (min-width: 561px) {
  [data-section-type="product"] .product-page-description .xo-tunnel .xot-img__caption {
    margin-top: 4px;
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
  }
}

/* SP：画像キャプション */
@media (max-width: 559px) {
  [data-section-type="article"] .xo-tunnel .xot-img__caption {
    margin-top: 3px;
    margin-bottom: 0;
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
  }
}

@media (max-width: 560px) {
  [data-section-type="product"] .product-page-description .xo-tunnel .xot-img__caption {
    margin-top: 3px;
    margin-bottom: 0;
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
  }
}


/* =========================================================
   XO画像グリッド
   ========================================================= */

/* 260827 PC/SP：ブログ記事／商品説明の画像グリッドを2～4列表示 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > .xot-row {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 5px !important;
  box-sizing: border-box;
}

/* 2枚 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > .xot-row:has(> .xot-col:nth-child(2):last-child) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* 3枚 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > .xot-row:has(> .xot-col:nth-child(3):last-child) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* 4枚 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > .xot-row:has(> .xot-col:nth-child(4):last-child) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* 260827 PC/SP：ブログ記事／商品説明の連続画像グリッド間に縦余白を追加 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) > .xot-row + .xot-row {
  margin-top:8px !important;
}

/* 260827 PC/SP：ブログ記事／商品説明の画像グリッド内figure余白を解除 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-row .xot-img {
  margin:0 !important;
}


/* 各カラムの既存幅・余白を解除 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-row > .xot-col {
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-row .xot-img,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-row .xot-img__img,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-row .xot-img img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto;
}


/* =========================================================
   XO画像スライダー
   ========================================================= */

/* 260825 PC/SP：XO画像スライダー基本表示 */
.kugui-image-slider {
  width: 100%;
  margin: 20px 0;
}

.kugui-image-slider__stage {
  position: relative;
}

.kugui-image-slider__main figure {
  margin: 0;
}

.kugui-image-slider__main img {
  display: block;
  width: 100%;
  height: auto;
}

/* 260825 PC/SP：左右矢印を白色の大型シンプル表示に変更 */
.kugui-image-slider__prev,
.kugui-image-slider__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 64px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #FFFFFF;
  font-weight: 300;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
  text-shadow: 0 1px 4px rgba(0,0,0,.35);
}

/* 260825 PC：矢印サイズ・画像端からの距離 */
@media (min-width: 560px) {
  .kugui-image-slider__prev,
  .kugui-image-slider__next {
    font-size: 110px;
  }

  .kugui-image-slider__prev {
    left: 0;
  }

  .kugui-image-slider__next {
    right: 0;
  }
}

/* 260825 SP：タップ領域を画像内に保ち、矢印記号だけ外側へ移動 */
@media (max-width: 559px) {
  .kugui-image-slider__prev,
  .kugui-image-slider__next {
    width: 44px;
    overflow: visible;
    font-size: 70px;
  }

  .kugui-image-slider__prev {
    left: 0;
    text-indent: -60px;
  }

  .kugui-image-slider__next {
    right: 0;
    text-indent: 60px;
  }
}

/* 260825 PC/SP：サムネイル基本表示 */
.kugui-image-slider__thumbs {
  display: flex;
  gap: 8px;
  margin-top: 10px;
  overflow-x: auto;
}

.kugui-image-slider__thumb {
  flex: 0 0 80px;
  padding: 0;
  border: 2px solid transparent;
  background: none;
  cursor: pointer;
  opacity: .65;
}

.kugui-image-slider__thumb.is-active {
  border-color: #F57426;
  opacity: 1;
}

.kugui-image-slider__thumb img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

/* 260825 SP：サムネイルを小型化・横スワイプ表示に調整 */
@media (max-width: 559px) {
  .kugui-image-slider__thumbs {
    gap: 5px;
    margin-top: 8px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
  }

  .kugui-image-slider__thumbs::-webkit-scrollbar {
    display: none;
  }

  .kugui-image-slider__thumb {
    flex: 0 0 56px !important;
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    scroll-snap-align: start;
  }
}


/* =========================================================
   XO水平線・テーブル・補足文
   ========================================================= */

/* 260827 PC/SP：水平線の余白調整（旧HTML／XO Tunnel共通） */
.hr-narrow,
.xot-hr {
  margin-top: 16px;
  margin-bottom: 16px;
}

/* 260827 PC/SP：シンプルテーブル基本設定（旧HTML／XO Tunnel共通） */
.accordion-table,
.xot-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
}

.accordion-table td,
.accordion-table th,
.xot-table td,
.xot-table th {
  padding: 8px;
  border: 1px solid #ddd;
}

.xot-table {
  table-layout: fixed;
}

.xot-table td,
.xot-table th {
  vertical-align: top;
}

/* XO Tunnelテーブルの列幅を25%／75%に固定 */
.xot-table td:first-child,
.xot-table th:first-child {
  width: 25%;
}

.xot-table td:last-child,
.xot-table th:last-child {
  width: 75%;
}

/* XO Tunnelテーブル内テキスト */
.xot-table td > p,
.xot-table th > p {
  margin: 0;
  font-size: 12px;
}

/* XOテーブルのth見出しを太字化 */
.rte__table-wrapper .xot-table th,
.rte__table-wrapper .xot-table th > p {
  font-weight: 700 !important;
}

/* 260831 PC/SP：XO補足文を端末別サイズで表示 */
.xo-tunnel p.xot-subnote {
  text-align:right !important;
  font-size:13px !important;
  line-height:1.5;
}

@media(max-width:559px) {
  .xo-tunnel p.xot-subnote {
    font-size:12px !important;
  }
}

/* =========================================================
   BLOG ARTICLE / ブログ記事のみ
   ========================================================= */

/* 260824 SP：現在の記事タイトルを省略し、H1との間隔を調整 */
@media (max-width: 559px) {
  body:has([data-section-type="article"])
  #shopify-section-breadcrumbs .breadcrumbs li:last-child {
    display: none;
  }

  body:has([data-section-type="article"])
  #shopify-section-breadcrumbs {
    margin-bottom: 16px;
  }
}

/* 260824 PC/SP：記事上部のサムネイル画像を非表示 */
[data-section-type="article"]
a:has(> .global-border-radius > .rimage-outer-wrapper) {
  display: none !important;
}

/* 260827 SP：ブログ記事本文とフッターの重なりを防止 */
@media (max-width: 559px) {
  body:has([data-section-type="article"]) [data-section-type="article"] {
    display: flow-root;
    margin-bottom: 32px !important;
  }

  body:has([data-section-type="article"]) .footer-group {
    clear: both;
    position: relative;
  }
}

/* 260827 PC/SP：記事タイトル～共有UI～本文上部の間隔・共有UIを一括調整
   title_position が top / bottom のどちらでも同じ指定を適用 */
[data-section-type="article"] > :is(.row-bottom, .row):has(> h1.large-title) {
  --title-bottom: 0px;       /* H1下 → 共有UI */
  --share-top: 0px;          /* 共有UI上 */
  --share-bottom: 0px;       /* 共有UI下 */
  --header-bottom: 0px;      /* タイトル＋共有UI全体の下 */
  --share-label-gap: 8px;    /* 「共有」→最初のボタン */
  --share-button-gap: 0px;   /* SNSボタン同士 */
  --share-button-size: 40px; /* ボタンサイズ */
  --share-button-padding: 10px;
  margin-bottom: var(--header-bottom) !important;
}

[data-section-type="article"] > :is(.row-bottom, .row):has(> h1.large-title) > h1.large-title {
  margin-bottom: var(--title-bottom) !important;
}

[data-section-type="article"] .article-share--below-title {
  width: 100%;
  margin: var(--share-top) 0 var(--share-bottom) !important;
}

[data-section-type="article"] .article-share--below-title .sharing {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  margin: 0;
  text-align: right;
}

[data-section-type="article"] .article-share--below-title .sharing-label {
  flex: 0 0 auto;
  margin: 0 var(--share-label-gap) 0 0 !important;
  white-space: nowrap;
}

[data-section-type="article"] .article-share--below-title .sharing-list {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--share-button-gap);
  margin: 0 !important;
  padding: 0;
}

[data-section-type="article"] .article-share--below-title .sharing-list > li {
  margin: 0 !important;
}

[data-section-type="article"] .article-share--below-title .sharing-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--share-button-size);
  height: var(--share-button-size);
  padding: var(--share-button-padding);
  box-sizing: border-box;
}

/* 260827 PC：記事本文ブロック上部の余白を調整 */
[data-section-type="article"] > .rte.row.clearfix {
  margin-top: 10px !important;
}

/* 260827 SP：タイトル～共有UI～本文上部を個別調整 */
@media (max-width: 559px) {
  [data-section-type="article"] > :is(.row-bottom, .row):has(> h1.large-title) {
    --title-bottom: 0px;
    --share-top: 8px;
    --share-bottom: 0px;
    --header-bottom: 0px;
    --share-label-gap: 8px;
    --share-button-gap: 0px;
    --share-button-size: 40px;
    --share-button-padding: 10px;
  }

  [data-section-type="article"] > .rte.row.clearfix {
    margin-top: 0 !important;
  }
}


/* =========================================================
   XO TOGGLE / ブログ記事・商品説明 共通
   ========================================================= */

/* 260830 PC/SP：XOトグルを影付きホワイトカード表示に統一 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle {
  margin:12px 0;
  border:1px solid #DCE0E3;
  border-radius:6px;
  background:#FFFFFF;
  box-shadow:0 3px 0 rgba(43,50,56,.12);
  overflow:hidden;
}

/* タイトル */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle > summary {
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
  min-height:52px;
  padding:12px 48px 12px 20px;
  box-sizing:border-box;
  cursor:pointer;
  list-style:none;
  background:#FFFFFF;
  border:0;
  color:#2B3238;
  font-size:14px;
  font-weight:500;
  line-height:1.4;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle > summary::-webkit-details-marker {
  display:none;
}

/* summary内strongはXO共通の下線指定を解除 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle > summary strong {
  text-decoration:none !important;
}

/* 右側の開閉矢印 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle > summary::after {
  content:"";
  position:absolute;
  top:50%;
  right:24px;
  width:11px;
  height:11px;
  border-right:3px solid #424A52;
  border-bottom:3px solid #424A52;
  transform:translateY(-65%) rotate(45deg);
}

/* 開いた時：タイトル下に区切り線＋矢印反転 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle[open] > summary {
  border-bottom:1px solid #DCE0E3;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle[open] > summary::after {
  transform:translateY(-30%) rotate(225deg);
}

/* 開いた本文：カード内部に格納 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content {
  padding:12px 16px 12px 32px;
  box-sizing:border-box;
}

/* 本文・リスト */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content > p,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content > ul,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content > ol {
}

/* テーブル内文字も従来どおり12px */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table td > p,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table th > p {
}

/* 260830 PC：トグル見出しホバー */
@media(min-width:1024px) {
  :is(
    [data-section-type="article"] .xo-tunnel,
    [data-section-type="product"] .product-page-description .xo-tunnel
  ) .xot-toggle > summary:hover {
    background:#F4F5F5;
  }
}

/* 260830 PC/SP：XOトグル本文を周囲の文字サイズより一回り小さく表示 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content {
  padding:12px 16px 14px 24px;
  box-sizing:border-box;
  font-size:.9em;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content :is(p,ul,ol,li,table,td,th) {
  font-size:inherit;
}

/* =========================================================
   IMAGE LIGHTBOX / ブログ記事・商品説明 画像拡大
   ========================================================= */

/* 260828 PC/SP：ブログ記事／商品説明／固定ページの拡大可能画像 */
:is(
  [data-section-type="article"] .rte,
  [data-section-type="product"] .product-page-description,
  html.kugui-page-zoom main .rte
) img:not(a img):not(button img) {
  cursor:zoom-in;
}

/* 商品ページの既存メイン画像はテーマ標準機能を維持 */
[data-section-type="product"] .product-page-media-main img {
  cursor:inherit;
}

/* 260828 PC/SP：画像拡大オーバーレイ */
.kugui-image-lightbox {
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  box-sizing:border-box;
  background:rgba(0,0,0,.88);
}

.kugui-image-lightbox[hidden] {
  display:none !important;
}

.kugui-image-lightbox__image {
  display:block;
  max-width:94vw !important;
  max-height:90vh;
  width:auto !important;
  height:auto !important;
  object-fit:contain;
  cursor:default;
}

.kugui-image-lightbox__close {
  position:fixed;
  top:16px;
  right:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#FFFFFF;
  font-size:36px;
  font-weight:300;
  line-height:1;
  cursor:pointer;
}

html.kugui-lightbox-open,
html.kugui-lightbox-open body {
  overflow:hidden;
}

/* 260828 SP：拡大画像を画面いっぱいに近づける */
@media(max-width:559px) {
  .kugui-image-lightbox {
    padding:12px;
  }

  .kugui-image-lightbox__image {
    max-width:96vw !important;
    max-height:88vh;
  }

  .kugui-image-lightbox__close {
    top:8px;
    right:8px;
    width:40px;
    height:40px;
    font-size:32px;
  }
}

/* 260828 PC：フッターブロックをサイドバー／メイン相当の25：75比率に調整 */
@media(min-width:1024px) {
  .footer-blocks > .footer-block:first-child {
    flex:0 0 25% !important;
    width:25% !important;
    max-width:25% !important;
    box-sizing:border-box;
  }

  .footer-blocks > .footer-block:nth-child(2) {
    flex:0 0 75% !important;
    width:75% !important;
    max-width:75% !important;
    box-sizing:border-box;
  }
}

/* 260830 PC/SP：ブログ記事内の商品コレクションを上下バーで区切る */
[data-section-type="article"] .kugui-article-product-grid {
  margin-top:24px !important;
  margin-bottom:24px !important;
  padding-top:16px;
  padding-bottom:16px;
  border-top:4px solid #DCE0E3;
  border-bottom:4px solid #DCE0E3;
  box-sizing:border-box;
}

/* 260830 PC/SP：XOトグル内テーブルは外枠・縦線を消し、行区切り線のみ表示 */
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table {
  border:0 !important;
  box-shadow:none !important;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table td,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table th {
  border:0 !important;
}

:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table tr:not(:last-child) > td,
:is(
  [data-section-type="article"] .xo-tunnel,
  [data-section-type="product"] .product-page-description .xo-tunnel
) .xot-toggle__content .xot-table tr:not(:last-child) > th {
  border-bottom:1px solid #DCE0E3 !important;
}

/* 260830 PC/SP：商品説明・ブログ記事・固定ページ本文のリストに左インデントを追加 */
:is(
  [data-section-type="product"] .product-page-description,
  [data-section-type="article"] .rte,
  .row.reading-width > .rte
) :is(ul,ol) {
  padding-left:2em;
  margin-left:0;
}

/* 260830 PC/SP：blockquote内の文字サイズを周囲の本文に合わせる */
blockquote,
blockquote * {
  font-size:inherit !important;
}

/* 260830 PC/SP：商品ページリンクバナーの幅・余白・リンク表現を調整 */
.kugui-product-link-banner {
  --banner-space-top:20px;
  --banner-space-bottom:24px;

  width:100%;
  max-width:100%;
  margin:var(--banner-space-top) auto var(--banner-space-bottom);
  box-sizing:border-box;
}

.kugui-product-link-banner__link {
  display:block;
  position:relative;
  overflow:hidden;
  border-radius:4px;
  text-decoration:none !important;
  box-shadow:0 2px 6px rgba(43,50,56,.08);
  transition:transform .2s ease,box-shadow .2s ease;
  -webkit-tap-highlight-color:transparent;
}

.kugui-product-link-banner__image {
  display:block;
  width:100%;
  height:auto;
  transition:transform .2s ease,filter .2s ease;
}

/* 260830 PC：説明欄と同じ85%幅＋控えめなホバー反応 */
@media(min-width:561px) {
  .kugui-product-link-banner {
    width:85%;
    max-width:85%;
  }
}

@media(min-width:1024px) {
  .kugui-product-link-banner__link:hover {
    transform:translateY(-1px);
    box-shadow:0 4px 10px rgba(43,50,56,.13);
  }

  .kugui-product-link-banner__link:hover .kugui-product-link-banner__image {
    transform:scale(1.006);
    filter:brightness(.97);
  }
}

/* 260830 SP：全幅表示＋タップ反応 */
@media(max-width:560px) {
  .kugui-product-link-banner {
    width:100% !important;
    max-width:100% !important;
  }

  .kugui-product-link-banner__link:active {
    transform:scale(.98);
    box-shadow:0 1px 3px rgba(43,50,56,.10);
  }

  .kugui-product-link-banner__link:active .kugui-product-link-banner__image {
    filter:brightness(.9);
  }
}

/* 260830 PC/SP：リンクバナー右下にリンクアイコンを表示 */
.kugui-product-link-banner__link::after {
  content:"↗";
  position:absolute;
  right:8px;
  bottom:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:#424A52;
  font-size:16px;
  font-weight:700;
  line-height:1;
  box-shadow:0 2px 6px rgba(43,50,56,.18);
  pointer-events:none;
}

/* 260830 SP：リンクアイコンを小さく表示 */
@media(max-width:560px) {
  .kugui-product-link-banner__link::after {
    right:6px;
    bottom:6px;
    width:24px;
    height:24px;
    font-size:13px;
    box-shadow:0 1px 4px rgba(43,50,56,.16);
  }
}

/* 260830 PC/SP：商品ページリンクバナーのみグレー枠線を表示 */
.kugui-product-link-banner__link {
  border:1px solid #DCE0E3 !important;
  box-sizing:border-box;
}

/* 260830 SP：商品ページのパンくずから現在の商品名を非表示 */
@media(max-width:559px) {
  body:has([data-section-type="product"])
  #shopify-section-breadcrumbs .breadcrumbs li:last-child {
    display:none;
  }

/* 260830 SP：商品ページのパンくず下～メイン画像上の余白を縮小 */
@media(max-width:559px) {
  body:has([data-section-type="product"])
  #shopify-section-breadcrumbs {
    margin-bottom:6px;
  }

  [data-section-type="product"] .product-page-top {
    margin-top:0 !important;
    padding-top:0 !important;
  }

  [data-section-type="product"] .product-page-media {
    margin-top:0 !important;
    padding-top:0 !important;
  }
}


/* 260830 SP：商品画像をPC同様のメイン画像＋サムネイル表示に変更 */
@media(max-width:559px) {

  /* SPでもメイン画像を表示し、テーマ標準のモバイルSlick化を停止 */
  [data-section-type="product"]
  .product-page-media-main
  > .product-image.small-down--hide {
    display:block !important;
  }

  /* サムネイルをPC同様に横並び＋折り返し */
  [data-section-type="product"]
  .product-page-media
  .product-thumbnails--inline {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    align-items:flex-start !important;
    gap:5px;
    width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  [data-section-type="product"]
  .product-page-media
  .product-thumbnails--inline
  .product-thumbnails__item {
    display:block !important;
    flex:0 0 68px !important;
    width:68px !important;
    margin:0 !important;
  }

  /* 選択中サムネイルをオレンジ枠で表示 */
  [data-section-type="product"]
  .product-page-media
  .product-thumbnails__item--active
  .rimage-outer-wrapper {
    border:2px solid #F57426 !important;
  }

  /* Slick用の矢印・ドットは非表示 */
  [data-section-type="product"] .slick-external-controls {
    display:none !important;
  }
}

/* 260830 SP：メイン商品画像下の拡大案内をタップ表記に変更 */
@media(max-width:559px) {
  .product-page-media .product-image > .product-image__link::after {
    content:"画像をタップして拡大";
    font-size:10px;
    margin-top:2px;
  }
}

/* 260831 PC/SP：商品説明内h4を彩度の高い赤色に変更 */
[data-section-type="product"] .product-page-description h4 {
  color:#D60000 !important;
}