@charset "UTF-8";
/* ==========================================
  メルカード ホロビートEC店 テーマCSS
  ・おちゃのこ デフォルトCSS（ocnk.min.css）の後に読み込まれる前提
  ・HTMLは変更不可のため、詳細度はセレクタ（主に #container 等のID）で確保し !important は最小限
  ・ブレイクポイントはおちゃのこの PC/SP 切替に合わせ 840px を軸に 480 / 710 / 840 / 980 / 1200
========================================== */
/* @import は @charset 直後・他の規則より前でないと無効になる */
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@700;800&family=Yuji+Syuku&family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');

/* ==========================================
  Root
========================================== */
:root {
  /* 墨（暗い面） */
  --c-sumi-950: #0d0b09;
  --c-sumi-900: #14110e;
  --c-sumi-800: #1d1915;
  --c-sumi-700: #2a231b;
  --c-sumi-line: #3a2f22;
  --c-sumi-line-2: #4a3d2c;
  /* 和紙（明るい面） */
  --c-washi-50: #fbf7ee;
  --c-washi-100: #f4ecdc;
  --c-washi-200: #ece3d0;
  --c-washi-300: #e3d7bd;
  --c-washi-line: #cdbf9f;
  --c-washi-line-2: #d8cbaf;
  /* 朱 */
  --c-shu: #a8291a;
  --c-shu-hover: #c33622;
  --c-shu-light: #d9442c;
  --c-shu-tint: rgba(168, 41, 26, .08);
  /* 金 */
  --c-gold: #b8913a;
  --c-gold-light: #e6c98a;
  --c-gold-dark: #8a6d2f;
  /* 文字 */
  --c-text: #1d1915;
  --c-text-sub: #6b5d48;
  --c-text-on-dark: #e6dcc8;
  --c-text-on-dark-sub: #a99c84;
  --c-white: #fff;
  /* 補助 */
  --c-moss: #2f4a3a;

  /* フォント */
  --ff-sans: 'Zen Kaku Gothic New', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', Meiryo, sans-serif;
  --ff-serif: 'Shippori Mincho', 'Hiragino Mincho ProN', 'Yu Mincho', serif;
  --ff-brush: 'Yuji Syuku', 'Shippori Mincho', serif;

  /* 文字サイズ */
  --fz-2xs: .6875rem;
  --fz-xs: .75rem;
  --fz-s: .8125rem;
  --fz-m: .875rem;
  --fz-l: 1rem;
  --fz-xl: 1.25rem;
  --fz-title: clamp(1.75rem, 1.25rem + 2vw, 2.5rem);

  /* 字間 */
  --ls-ui: .08em;
  --ls-btn: .12em;
  --ls-title: .1em;
  --ls-label: .35em;

  /* 余白・幅 */
  --w-max: 80rem;
  --gutter: clamp(1rem, 4vw, 2.5rem);
  --sp-section: clamp(2.5rem, 6vw, 4.5rem);
  --sp-card: 1rem;
  --gap-card: clamp(.75rem, 2vw, 1.75rem);
  --side-w: 250px;

  /* 形 */
  --radius: 0;
  --shadow-float: 0 10px 30px rgba(0, 0, 0, .4);
  --tr: .2s ease;

  /* アイコン（Tabler Icons 3.19.0 outline を data URI 化。外部通信を増やさないため） */
--ic-arrow-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5l0 14'/%3E%3Cpath d='M18 11l-6 -6'/%3E%3Cpath d='M6 11l6 -6'/%3E%3C/svg%3E");
  --ic-book-2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 4v16h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h12z'/%3E%3Cpath d='M19 16h-12a2 2 0 0 0 -2 2'/%3E%3Cpath d='M9 8h6'/%3E%3C/svg%3E");
  --ic-cards: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.604 7.197l7.138 -3.109a.96 .96 0 0 1 1.27 .527l4.924 11.902a1 1 0 0 1 -.514 1.304l-7.137 3.109a.96 .96 0 0 1 -1.271 -.527l-4.924 -11.903a1 1 0 0 1 .514 -1.304z'/%3E%3Cpath d='M15 4h1a1 1 0 0 1 1 1v3.5'/%3E%3Cpath d='M20 6c.264 .112 .52 .217 .768 .315a1 1 0 0 1 .53 1.311l-2.298 5.374'/%3E%3C/svg%3E");
  --ic-category: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h6v6h-6z'/%3E%3Cpath d='M14 4h6v6h-6z'/%3E%3Cpath d='M4 14h6v6h-6z'/%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'/%3E%3C/svg%3E");
  --ic-chevron-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6l-6 6'/%3E%3C/svg%3E");
  --ic-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
  --ic-file-text: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3v4a1 1 0 0 0 1 1h4'/%3E%3Cpath d='M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z'/%3E%3Cpath d='M9 9l1 0'/%3E%3Cpath d='M9 13l6 0'/%3E%3Cpath d='M9 17l6 0'/%3E%3C/svg%3E");
  --ic-folder: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l3 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2'/%3E%3C/svg%3E");
  --ic-heart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572'/%3E%3C/svg%3E");
  --ic-home: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l-2 0l9 -9l9 9l-2 0'/%3E%3Cpath d='M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7'/%3E%3Cpath d='M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6'/%3E%3C/svg%3E");
  --ic-login-2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 8v-2a2 2 0 0 1 2 -2h7a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-7a2 2 0 0 1 -2 -2v-2'/%3E%3Cpath d='M3 12h13l-3 -3'/%3E%3Cpath d='M13 15l3 -3'/%3E%3C/svg%3E");
  --ic-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z'/%3E%3Cpath d='M3 7l9 6l9 -6'/%3E%3C/svg%3E");
  --ic-menu-2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l16 0'/%3E%3Cpath d='M4 12l16 0'/%3E%3Cpath d='M4 18l16 0'/%3E%3C/svg%3E");
  --ic-receipt-yen: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21v-16a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v16l-3 -2l-2 2l-2 -2l-2 2l-2 -2l-3 2'/%3E%3Cpath d='M9 11h6'/%3E%3Cpath d='M9 14h6'/%3E%3Cpath d='M9 7l3 4.5'/%3E%3Cpath d='M15 7l-3 4.5v4.5'/%3E%3C/svg%3E");
  --ic-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0'/%3E%3Cpath d='M21 21l-6 -6'/%3E%3C/svg%3E");
  --ic-shopping-bag: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.331 8h11.339a2 2 0 0 1 1.977 2.304l-1.255 8.152a3 3 0 0 1 -2.966 2.544h-6.852a3 3 0 0 1 -2.965 -2.544l-1.255 -8.152a2 2 0 0 1 1.977 -2.304z'/%3E%3Cpath d='M9 11v-5a3 3 0 0 1 6 0v5'/%3E%3C/svg%3E");
  --ic-user-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0'/%3E%3Cpath d='M16 19h6'/%3E%3Cpath d='M19 16v6'/%3E%3Cpath d='M6 21v-2a4 4 0 0 1 4 -4h4'/%3E%3C/svg%3E");
  --ic-user: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0'/%3E%3Cpath d='M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2'/%3E%3C/svg%3E");
  --ic-x: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6l-12 12'/%3E%3Cpath d='M6 6l12 12'/%3E%3C/svg%3E");
}

/* ==========================================
  Reset
========================================== */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--c-sumi-900);color:var(--c-text);font-family:var(--ff-sans);font-size:var(--fz-m);line-height:1.7;font-feature-settings:'palt';-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;}
a{color:var(--c-shu);text-decoration:none;transition:color var(--tr),background-color var(--tr),border-color var(--tr);}
a:hover{color:var(--c-shu-light);text-decoration:none;}
::selection{background:var(--c-shu);color:var(--c-washi-100);}

/* ==========================================
  Layout
========================================== */
/* ページ全体は墨の地。コンテンツ部分だけ和紙の面にする */
#container{background:var(--c-sumi-900);}
#contents{background:var(--c-washi-100);}
#container #inner_contents{max-width:var(--w-max);margin:0 auto;padding:1.5rem var(--gutter) var(--sp-section);background:transparent;}
#container #maincol{min-width:0;}
/* 内容が短いページでもフッターを画面下に置く（カート・ログインなど） */
#container #inner_container{display:flex;flex-direction:column;min-height:100vh;}
#container #main_wrapper{display:flex;flex:1 0 auto;flex-direction:column;}
#container #contents{flex:1 0 auto;}
.main_box,.side_box{margin-bottom:0;}
/* 1カラムのページ（ログイン・カート・お問い合わせ）は読みやすい幅に絞る */
#container .layout_1_col #inner_contents{max-width:56rem;}
@media (min-width:840px) {
  /* サイドの幅は デフォルトの width:250px!important を変えないため flex-shrink で潰れないようにするだけ */
  #container .layout_2_col #inner_contents{gap:clamp(1.5rem,3vw,2.75rem);}
  /* clearfix の疑似要素が flex の子になり gap 分ずれるため消す */
  #container .layout_2_col #inner_contents::before,#container .layout_2_col #inner_contents::after{display:none;}
  #container .layout_2_col #left_side_col{flex-shrink:0;padding-top:0;}
}

/* ==========================================
  Catch Copy（トップのみ出力。ref の最上部の朱の帯に見立てる）
========================================== */
#container .copy{max-width:none;margin:0;padding:.4375rem 1rem;background:var(--c-shu);color:var(--c-washi-100);text-align:center;}
#container .copy h1{margin:0;font-size:var(--fz-2xs);font-weight:700;line-height:1.5;letter-spacing:var(--ls-btn);}
@media (min-width:840px) {
  #container .copy h1{font-size:var(--fz-xs);}
}

/* ==========================================
  Header
========================================== */
#header_wrapper{background:rgba(20,17,14,.97);border-bottom:1px solid var(--c-sumi-line);}
#header_wrapper .header{min-height:0;padding:0;background:none;}
#container #header_area{max-width:var(--w-max);margin:0 auto;padding:.625rem .5rem;}
#header #inner_header{align-items:center;}
#header .header_left,#header .header_right{flex:none;width:auto;min-width:0;}
#header .header_center{flex:1;min-width:0;}
@media (min-width:840px) {
  /* 横並び：ロゴ｜（余白）｜検索｜マイページ・カート。#inner_header を display:contents にして検索バーと同じグリッドに載せる */
  #container #header_area{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;column-gap:1rem;padding:.875rem var(--gutter);}
  #header #inner_header{display:contents;}
  #header .header_left{display:none;}
  /* grid-row を明示しないと自動配置で検索バーが2行目に回る */
  #header .header_center{grid-column:1;grid-row:1;}
  #header .header_right{grid-column:4;grid-row:1;}
  #header .search_bar{grid-column:3;grid-row:1;}
  /* PCでは追従ヘッダー（ref と同じ）。SPは画面を圧迫するので追従させない */
  #main_wrapper > header{position:sticky;top:0;z-index:80;}
}

/* ==========================================
  Logo（自由欄のテキストロゴ。左に朱の角印を装飾として付ける）
========================================== */
#header .logo_wrap{padding:0;overflow: hidden;}
#header .logo_wrap a{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;justify-content:center;align-items:center;column-gap:.625rem;color:var(--c-washi-100);text-decoration:none;}
#header .logo_wrap a::before{content:'魂';grid-row:1 / 3;display:grid;place-items:center;width:2.125rem;height:2.125rem;background:var(--c-shu);color:var(--c-washi-100);font-family:var(--ff-brush);font-size:1.375rem;line-height:1;transform:rotate(-3deg);}
#header .logo_wrap .logo_ec{margin:0;font-family:var(--ff-serif);font-size:1.125rem;font-weight:800;line-height:1.15;letter-spacing:var(--ls-ui);color:var(--c-washi-100);text-shadow:none;}
#header .logo_wrap .logo_ech2{margin:.125rem 0 0;font-family:var(--ff-sans);font-size:.625rem;font-weight:400;line-height:1.2;letter-spacing:.3em;color:var(--c-gold);}
.use_hover #header .logo_wrap a:hover .logo_ec{color:var(--c-gold-light);}
@media (min-width:840px) {
  #header .logo_wrap a{justify-content:start;column-gap:.75rem;}
  #header .logo_wrap a::before{width:2.5rem;height:2.5rem;font-size:1.5rem;}
  #header .logo_wrap .logo_ec{font-size:1.375rem;}
  #header .logo_wrap .logo_ech2{font-size:.6875rem;}
}

/* ==========================================
  Header Nav（ハンバーガー・カート・マイページ）
========================================== */
#header .inner_header_nav .header_nav_item{width:2.75rem;min-width:2.75rem;letter-spacing:0;}
#header .inner_header_nav .nav_btn{display:flex;align-items:center;justify-content:center;height:2.75rem;margin:0;padding:0;color:var(--c-text-on-dark);font-size:var(--fz-2xs);}
#header .inner_header_nav .nav_text{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;min-width:0;}
#header .inner_header_nav .header_nav_item .fa{position:relative;display:block;margin:0;font-size:1.375rem;color:inherit;}
#header .inner_header_nav .nav_label{display:none;}
.use_hover #header .inner_header_nav .nav_btn:hover{color:var(--c-gold-light);}
/* カートは朱の四角ボタン（ref と同じ扱い） */
#header .inner_header_nav .h_cart .nav_btn{width:2.75rem;background:var(--c-shu);color:var(--c-washi-100);}
.use_hover #header .inner_header_nav .h_cart .nav_btn:hover{background:var(--c-shu-hover);color:var(--c-white);}
#header .header_right .header_nav_item + .header_nav_item{margin-left:.375rem;}
@media (min-width:840px) {
  #header .inner_header_nav .header_nav_item{width:auto;min-width:0;font-size:var(--fz-s);}
  #header .inner_header_nav .header_nav_item .fa{position:relative;top:auto;left:auto;width:auto;margin:0;font-size:1.125rem;}
  #header .inner_header_nav .nav_text{flex-direction:row;gap:.5rem;}
  #header .inner_header_nav .nav_label{display:inline;font-size:var(--fz-s);letter-spacing:var(--ls-ui);}
  #header .inner_header_nav .nav_btn{height:2.5rem;padding:0 1rem;border:1px solid var(--c-sumi-line-2);}
  #header .inner_header_nav .h_cart .nav_btn{width:auto;padding:0 1rem;border-color:var(--c-shu);}
  .use_hover #header .inner_header_nav .nav_btn:hover{border-color:var(--c-gold);}
}

/* カートの数量バッジ（i の中に span が出力される） */
#container .cart_qty{position:absolute;top:-.375rem;right:-.625rem;display:grid;place-items:center;min-width:1.125rem;height:1.125rem;padding:0 .25rem;border-radius:999px;background:var(--c-washi-100);color:var(--c-shu);font-family:var(--ff-sans);font-size:.625rem;font-weight:700;line-height:1;}
#container .cart_qty:empty{display:none;}

/* ==========================================
  Search
========================================== */
#header .search_bar .search{padding:.75rem var(--gutter);background:var(--c-sumi-800);border-top:1px solid var(--c-sumi-line);}
#header .search_bar .search_form{display:flex;align-items:stretch;gap:.5rem;max-width:40rem;margin:0 auto;}
#header .search_bar .search_box{flex:1;width:auto;min-width:0;height:2.5rem;padding:0 .875rem 0 2.25rem;border:1px solid var(--c-sumi-line-2);border-radius:var(--radius);background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b8913a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0'/%3E%3Cpath d='M21 21l-6 -6'/%3E%3C/svg%3E") .75rem 50% / .875rem no-repeat;color:var(--c-washi-100);font-family:var(--ff-sans);font-size:var(--fz-s);}
#header .search_bar .search_box::placeholder{color:var(--c-text-on-dark-sub);}
#header .search_bar .search_box:focus{outline:none;border-color:var(--c-gold);}
#header .search_bar .global_btn{display:flex;}
/* SPの閉じるボタンは absolute で右端に重なるので、その分だけ右に余白を取る */
#header .search_bar .search{padding-right:3rem;}
#header .search_bar .search_close{bottom:50%;right:.875rem;transform:translateY(50%);color:var(--c-text-on-dark);}
@media (min-width:840px) {
  /* デフォルトは右上に absolute 配置。ヘッダーのグリッドに載せるため static に戻す */
  /* 常時表示は検索バー付きヘッダーだけ。簡易ヘッダー（ログイン・カート等）は閉じたままにする */
  #header_wrapper.has_search_bar .search_bar{position:static;opacity:1;}
  #header_wrapper.has_search_bar .search_bar .inner_search_bar{display:block;}
  #header_wrapper.has_search_bar .search_bar .close_btn_box{display:none;}
  #header .search_bar .search{padding:0;background:transparent;border:0;}
  #header .search_bar .search_box{width:16rem;}
}
@media (min-width:980px) {
  #header .search_bar .search_box{width:20rem;}
}

/* ==========================================
  Global Nav（ref の「壱弐参肆」の帯を参考に、和紙の帯＋縦罫線）
========================================== */
#header_wrapper .header_global_nav{background:var(--c-washi-200);border-top:1px solid var(--c-sumi-line);}
#header_wrapper .global_nav{border:0;}
#container .inner_global_nav{max-width:var(--w-max);margin:0 auto;}
#container .inner_global_nav .global_nav_item{flex:1 1 0;min-width:0;}
#container .inner_global_nav .nav_btn{height:100%;padding:.5rem .125rem;border:0;border-right:1px solid var(--c-washi-line);background:transparent;color:var(--c-text);font-size:.625rem;font-weight:700;letter-spacing:0;text-align:center;}
#container .inner_global_nav .global_nav_item:last-child .nav_btn{border-right:0;}
#container .inner_global_nav .nav_btn .fa{margin:0 auto .25rem;font-size:1.25rem;color:var(--c-shu);}
.use_hover #container .inner_global_nav .nav_btn:hover{background:var(--c-washi-300);color:var(--c-text);}
@media (min-width:840px) {
  #container .inner_global_nav{padding:0 var(--gutter);}
  #container .inner_global_nav .global_nav_item:first-child .nav_btn{border-left:1px solid var(--c-washi-line);}
  #container .inner_global_nav .global_nav_item:last-child .nav_btn{border-right:1px solid var(--c-washi-line);}
  #container .inner_global_nav .nav_btn{padding:1rem .5rem;font-family:var(--ff-serif);font-size:var(--fz-l);letter-spacing:var(--ls-ui);}
  #container .inner_global_nav .nav_btn .fa{display:inline-block;margin:0 .5rem 0 0;font-size:1.25rem;vertical-align:-.2em;}
}

/* ==========================================
  Popup Menu（SPのメニュー）
========================================== */
/* 実際に表示される箱は absolute の .popup_nav_box。ここに地色を敷かないと下の内容が透ける */
#container .popup_nav_area,#container .popup_nav_box{background:var(--c-washi-100);box-shadow:var(--shadow-float);}
#container .upper_popup_nav{padding:.75rem 1rem;background:var(--c-washi-200);border-bottom:1px solid var(--c-washi-line);}
#container .font_setting{font-size:var(--fz-xs);color:var(--c-text-sub);}
#container .inner_popup_nav .nav_btn{padding:.875rem 1rem;border:0;border-bottom:1px solid var(--c-washi-line);background:transparent;color:var(--c-text);font-size:var(--fz-m);}
#container .inner_popup_nav .nav_btn .menu_nav_icon{color:var(--c-shu);}
#container .inner_popup_nav .nav_btn .chevron_right_icon{color:var(--c-gold);font-size:.625rem;}
.use_hover #container .inner_popup_nav .nav_btn:hover{background:var(--c-washi-300);}
#container .popup_nav_item.nav_on .nav_btn{color:var(--c-shu);}
#container .nav_close_box .nav_close{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;background:var(--c-sumi-800);color:var(--c-washi-100);}

/* ==========================================
  Top Slider
========================================== */
#photo{background:var(--c-sumi-950);border-bottom:1px solid var(--c-sumi-line);}
#container .top_image_slide{max-width:var(--w-max);margin:0 auto;padding:0;}
#photo .item_image{display:block;width:100%;}
/* デフォルトの矢印は background-image。色を変えられないので消して ::after の罫線で描く */
#photo .swiper-button-prev,#photo .swiper-button-next{box-sizing:border-box;display:grid;place-items:center;width:2.5rem;height:2.5rem;margin-top:-1.25rem;padding:0;transform:none;background:rgba(13,11,9,.72);border:1px solid var(--c-gold-dark);color:var(--c-gold-light);transition:background-color var(--tr);}
#photo .swiper-button-prev::after,#photo .swiper-button-next::after{content:'';width:.625rem;height:.625rem;border-top:2px solid currentColor;border-right:2px solid currentColor;}
#photo .swiper-button-prev::after{margin-left:.25rem;transform:rotate(-135deg);}
#photo .swiper-button-next::after{margin-right:.25rem;transform:rotate(45deg);}
.use_hover #photo .swiper-button-prev:hover,.use_hover #photo .swiper-button-next:hover{background:var(--c-shu);}
#photo .swiper-pagination-bullet{width:1.5rem;height:3px;margin:0 .1875rem;border-radius:0;background:var(--c-washi-100);opacity:.35;}
#photo .swiper-pagination-bullet-active{background:var(--c-shu-light);opacity:1;}
@media (min-width:840px) {
  #container .top_image_slide{padding:1.25rem var(--gutter);}
  #photo .swiper-button-prev,#photo .swiper-button-next{width:3rem;height:3rem;margin-top:-1.5rem;}
}

/* ==========================================
  Breadcrumb
========================================== */
#container .breadcrumb_area{max-width:var(--w-max);margin:0 auto;padding:1rem var(--gutter) 0;}
#container .breadcrumb_list{padding:0;font-size:var(--fz-xs);line-height:1.6;color:var(--c-text-sub);}
#container .breadcrumb_nav a{color:var(--c-text);}
.use_hover #container .breadcrumb_nav a:hover{color:var(--c-shu);}
#container .breadcrumb_nav .gt{margin:0 .5rem;color:var(--c-gold);}
#container .breadcrumb_nav .thispage{color:var(--c-text-sub);}

/* ==========================================
  Title（英字ラベル＋見出し。ref の「PRODUCTS／商品一覧」形式）
========================================== */
#container .title_head_space,#container .title_end_space{display:none;}
#container .page_title,#container .section_title{margin:0 0 1.75rem;padding:0;background:none;border:0;}
#container .page_title h1,#container .page_title h2,#container .section_title h2,#container .section_title h3{display:flex;flex-direction:column;gap:.375rem;margin:0;padding:0;background:none;border:0;color:var(--c-text);text-align:left;text-shadow:none;}
#container .page_title .title_text,#container .main_box .section_title .title_text{font-family:var(--ff-brush);font-size:var(--fz-title);font-weight:400;line-height:1.3;letter-spacing:var(--ls-title);}
/* 英字ラベル（装飾）。見出し本文は差し替えない */
#container .page_title h1::before,#container .page_title h2::before,#container .section_title h2::before,#container .section_title h3::before{content:var(--eyebrow,none);color:var(--c-shu);font-family:var(--ff-sans);font-size:var(--fz-xs);font-weight:700;line-height:1;letter-spacing:var(--ls-label);}
#container .page_title{padding-bottom:1rem;border-bottom:1px solid var(--c-washi-line);}
/* ページごとの英字ラベル */
.categorylist_page_body{--eyebrow:'CATEGORY';}
.result_page_body{--eyebrow:'SEARCH';}
.newitem_page_body{--eyebrow:'NEW ARRIVALS';}
.legal_page_body{--eyebrow:'LEGAL';}
.help_page_body{--eyebrow:'GUIDE';}
.login_page_body{--eyebrow:'LOGIN';}
.shoppingcart_page_body{--eyebrow:'CART';}
.inquiry_page_body{--eyebrow:'CONTACT';}
.detail_page_body .page_title{--eyebrow:'ITEM';}
.main_box{--eyebrow:'PRODUCTS';}
.main_box.item_new{--eyebrow:'NEW ARRIVALS';}
.main_box.item_category{--eyebrow:'CATEGORY';}
.main_box.item_recommend{--eyebrow:'RECOMMENDED';}
.main_box.item_ranking{--eyebrow:'RANKING';}
/* 商品名の見出しは長くなるので行書ではなく明朝にする */
#container .detail_page_title .title_text{font-family:var(--ff-serif);font-size:clamp(1.375rem,1.1rem + 1.2vw,1.875rem);font-weight:800;letter-spacing:.04em;}
/* 中見出し（商品詳細内・カート内など） */
#container .page_contents .section_title{margin-bottom:1rem;}
#container .page_contents .section_title h2,#container .page_contents .section_title h3{flex-direction:row;align-items:center;gap:.75rem;}
#container .page_contents .section_title h2::before,#container .page_contents .section_title h3::before{content:'';flex:none;width:.25rem;height:1.125em;background:var(--c-shu);}
#container .page_contents .section_title .title_text{font-family:var(--ff-serif);font-size:var(--fz-xl);font-weight:700;letter-spacing:.06em;}

/* ==========================================
  Item Box（トップの各商品ブロック。「もっと見る」を見出しの右へ移す）
========================================== */
#container .main_section + .main_section{margin-top:var(--sp-section);}
#container .main_box{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1rem;}
#container .main_box > *{grid-column:1 / -1;}
#container .main_box > .section_title{grid-column:1;grid-row:1;}
#container .main_box > .more_item{grid-column:2;grid-row:1;align-self:end;margin:0 0 1.75rem;}
#container .main_box .ajax_comment:empty{display:none;}
#container .more_item .general_btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 0;border:0;border-bottom:1px solid var(--c-text);border-radius:0;background:none;box-shadow:none;color:var(--c-text);font-size:var(--fz-s);font-weight:700;letter-spacing:var(--ls-ui);}
#container .more_item .general_btn .fa{font-size:.625rem;color:var(--c-shu);}
.use_hover #container .more_item .general_btn:hover{color:var(--c-shu);border-color:var(--c-shu);}

/* ==========================================
  Item List（商品カード）
========================================== */
/* デフォルトは li に % 幅（最大 ID1+クラス6）。ID2個で上書きして Grid で並べる */
#container #contents .tiled_list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-card);margin:0;padding:0;}
#container #contents .tiled_list .list_item_cell{width:auto;max-width:none;margin:0;padding:0;}
#container #contents .tiled_list .item_data{display:flex;height:100%;margin:0;padding:0;background:var(--c-washi-50);border:1px solid var(--c-washi-line-2);transition:border-color var(--tr);}
#container #contents .tiled_list .item_data_link{display:flex;flex-direction:column;width:100%;color:var(--c-text);}
#container #contents .tiled_list .inner_item_data{display:flex;flex-direction:column;flex:1;}
.use_hover #container #contents .tiled_list .item_data:hover{border-color:var(--c-shu);}
.use_hover #container #contents .tiled_list .item_data:hover .goods_name{color:var(--c-shu);}
/* 画像部は墨の地（ref と同じ）。正方形にして画像を contain で収める */
#container #contents .tiled_list .list_item_photo{max-width:none;margin:0;padding:.75rem;background:var(--c-sumi-800);}
#container #contents .tiled_list .inner_list_item_photo{position:relative;width:100%;aspect-ratio:1 / 1;}
#container #contents .tiled_list .inner_list_item_photo::before{display:none;}
#container #contents .tiled_list .list_item_photo .item_image_box{position:absolute;inset:0;display:block;}
/* 縦長画像も正方形の枠に収めるため、画像自体を枠いっぱいに広げて contain で縮める */
#container #contents .tiled_list .list_item_photo .item_image{position:absolute;inset:0;width:100%;max-width:none;height:100%;max-height:none;transform:none;object-fit:contain;transition:opacity var(--tr);}
.use_hover #container #contents .tiled_list .item_data:hover .item_image{opacity:.88;}
#container #contents .tiled_list .list_item_data{display:flex;flex-direction:column;flex:1;gap:.375rem;padding:.75rem .75rem .875rem;text-align:left;}
#container #contents .tiled_list .item_name{margin:0;font-family:var(--ff-serif);font-size:var(--fz-s);font-weight:700;line-height:1.55;}
#container #contents .tiled_list .goods_name{color:var(--c-text);transition:color var(--tr);}
#container #contents .tiled_list .common_icon:empty{display:none;}
#container #contents .tiled_list .item_info{display:flex;flex-direction:column;gap:.25rem;margin-top:auto;padding-top:.625rem;border-top:1px dashed var(--c-washi-line-2);}
#container #contents .tiled_list .selling_price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem;margin:0;color:var(--c-text);}
#container #contents .tiled_list .selling_price .figure{font-family:var(--ff-serif);font-size:1.0625rem;font-weight:800;line-height:1.3;color:var(--c-text);}
#container #contents .tiled_list .tax_label{font-size:var(--fz-2xs);color:var(--c-text-sub);}
#container #contents .tiled_list .stock{margin:0;font-size:var(--fz-2xs);color:var(--c-text-sub);}
#container #contents .tiled_list .soldout{color:var(--c-shu);font-weight:700;}
@media (min-width:710px) {
  #container #contents .tiled_list{grid-template-columns:repeat(3,minmax(0,1fr));}
  #container #contents .tiled_list .list_item_photo{padding:1rem;}
  #container #contents .tiled_list .list_item_data{padding:1rem 1rem 1.125rem;}
  #container #contents .tiled_list .item_name{font-size:var(--fz-l);}
  #container #contents .tiled_list .selling_price .figure{font-size:1.375rem;}
}
@media (min-width:1200px) {
  #container #contents .tiled_list{grid-template-columns:repeat(4,minmax(0,1fr));}
  #container .layout_1_col .tiled_list{grid-template-columns:repeat(4,minmax(0,1fr));}
}

/* 説明付きレイアウト（並び替えで切替えた時）の最低限の配色 */
#container .layout_desc .list_item_cell,#container .layout_text .list_item_cell{border-bottom:1px solid var(--c-washi-line);}
#container .layout_desc .goods_name,#container .layout_text .goods_name{font-family:var(--ff-serif);font-weight:700;color:var(--c-text);}

/* 商品一覧の「カートに入れる」（管理画面でONにした時用） */
#container .itemlist_cartbutton{max-width:100%;}
#container .item_list .add_cart .global_btn{display:block;margin:.5rem 0 0;text-align:center;}
#container .item_list .add_cart .cartinput{width:100%;min-width:0;height:2.5rem;padding:0 .625rem;font-size:var(--fz-xs);}

/* ==========================================
  Sort / Count
========================================== */
#container .item_sort_form{margin:0 0 1rem;padding:.625rem 0;border-bottom:1px solid var(--c-washi-line);}
#container .item_sort_form .sort{justify-content:space-between;align-items:center;gap:1rem;}
#container .sort_layout_icons{display:flex;gap:.25rem;}
#container .sort_layout_btn .icon_btn{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--c-washi-line);background:var(--c-washi-50);}
#container .sort_layout_btn.current_layout_btn .icon_btn{border-color:var(--c-text);}
#container .sort_toggle .custom_toggle_button{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border:1px solid var(--c-washi-line);background:var(--c-washi-50);color:var(--c-text);font-size:var(--fz-xs);font-weight:700;letter-spacing:var(--ls-ui);}
#container .sort_toggle .custom_toggle_button .fa{color:var(--c-shu);}
.use_hover #container .sort_toggle .custom_toggle_button:hover{border-color:var(--c-shu);color:var(--c-shu);}
#container .custom_toggle_area{margin-top:.75rem;padding:1rem;background:var(--c-washi-50);border:1px solid var(--c-washi-line);}
/* 閉じた状態は height:0 で隠す実装なので、余白と罫線も消さないと枠だけ残る */
#container .toggle_closed .custom_toggle_area{margin:0;padding:0;border:0;}
#container .sort_item{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;}
#container .sort_box{display:flex;flex-direction:column;gap:.25rem;margin:0;}
#container .sort_label{font-size:var(--fz-xs);font-weight:700;color:var(--c-text-sub);}
#container .sort_label .colon{display:none;}
#container .item_count{margin:0 0 1rem;font-size:var(--fz-xs);color:var(--c-text-sub);text-align:right;}
#container .item_count .number{margin-right:.125rem;font-family:var(--ff-serif);font-size:var(--fz-l);font-weight:800;color:var(--c-text);}
/* 0件の時は件数を大きく見せず、メッセージ代わりに中央へ */
#container .empty_number_box{padding:3rem 1rem;background:var(--c-washi-50);border:1px dashed var(--c-washi-line);text-align:center;}

/* ==========================================
  Pager（商品が増えると出る）
========================================== */
#container .pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;margin:2rem 0;padding:0;}
#container .pager strong,#container .pager .pager_btn{display:grid;place-items:center;min-width:2.5rem;height:2.5rem;padding:0 .625rem;border:1px solid var(--c-washi-line);border-radius:var(--radius);background:var(--c-washi-50);color:var(--c-text);font-family:var(--ff-serif);font-size:var(--fz-m);font-weight:700;}
#container .pager strong{background:var(--c-shu);border-color:var(--c-shu);color:var(--c-washi-100);}
.use_hover #container .pager .pager_btn:hover{border-color:var(--c-shu);color:var(--c-shu);}
#container .pager .to_next_page,#container .pager .to_prev_page{display:inline-flex;gap:.25rem;padding:0 1rem;background:var(--c-sumi-800);border-color:var(--c-sumi-800);color:var(--c-washi-100);font-family:var(--ff-sans);}
.use_hover #container .pager .to_next_page:hover,.use_hover #container .pager .to_prev_page:hover{background:var(--c-shu);border-color:var(--c-shu);color:var(--c-white);}

/* ==========================================
  Buttons
========================================== */
/* デフォルトは角丸5px＋inset影。ID付きで上書きする */
#container .global_btn .btn_color_emphasis,#container .global_btn .btn_color_common,#container .global_btn .general_btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;max-width:100%;border:1px solid transparent;border-radius:var(--radius);box-shadow:none;font-family:var(--ff-sans);font-weight:700;letter-spacing:var(--ls-btn);line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--tr),border-color var(--tr),color var(--tr);}
#container .global_btn .btn_color_emphasis{background:var(--c-shu);border-color:var(--c-shu);color:var(--c-washi-100);}
.use_hover #container .global_btn .btn_color_emphasis:hover{background:var(--c-shu-hover);border-color:var(--c-shu-hover);color:var(--c-white);}
#container .global_btn .btn_color_common{background:var(--c-sumi-800);border-color:var(--c-sumi-800);color:var(--c-washi-100);}
.use_hover #container .global_btn .btn_color_common:hover{background:var(--c-shu);border-color:var(--c-shu);color:var(--c-white);}
#container .global_btn .general_btn,#container .general_btn{background:transparent;border:1px solid var(--c-washi-line);border-radius:var(--radius);box-shadow:none;color:var(--c-text);}
.use_hover #container .global_btn .general_btn:hover,.use_hover #container .general_btn:hover{border-color:var(--c-shu);color:var(--c-shu);}
#container .global_btn .button_head_space,#container .global_btn .button_end_space{display:none;}
#container .global_btn .btn_size_xxlarge{min-width:15rem;height:3.5rem;padding:0 1.75rem;font-size:var(--fz-l);}
#container .global_btn .btn_size_xlarge{min-width:12rem;height:3.125rem;padding:0 1.5rem;font-size:var(--fz-m);}
#container .global_btn .btn_size_large{min-width:10rem;height:2.875rem;padding:0 1.25rem;font-size:var(--fz-m);}
#container .global_btn .btn_size_medium{min-width:7.5rem;height:2.5rem;padding:0 1rem;font-size:var(--fz-s);}
#container .global_btn .btn_size_small{min-width:4.5rem;height:2.5rem;padding:0 .875rem;font-size:var(--fz-xs);}
#container .global_btn .deleteinput_small{min-width:4.5rem;height:2rem;padding:0 .625rem;font-size:var(--fz-2xs);}
/* ヘッダー検索の「検索」は墨の面に馴染む罫線ボタン */
#header .search_bar .searchinput{min-width:0;height:2.5rem;padding:0 1rem;background:transparent;border:1px solid var(--c-gold-dark);color:var(--c-gold-light);}
.use_hover #header .search_bar .searchinput:hover{background:var(--c-gold);border-color:var(--c-gold);color:var(--c-sumi-900);}
/* 汎用リンク */
#container .global_link{color:var(--c-text);text-decoration:underline;text-decoration-color:var(--c-washi-line);text-underline-offset:.2em;}
.use_hover #container .global_link:hover{color:var(--c-shu);text-decoration-color:var(--c-shu);}
#container .global_iconleft .fa,#container .global_link .fa{margin-right:.375rem;color:var(--c-shu);}

/* ==========================================
  Form
========================================== */
#container input[type=text],#container input[type=email],#container input[type=password],#container input[type=tel],#container input[type=number],#container input[type=search],#container input[type=url],#container select,#container textarea{max-width:100%;min-height:2.75rem;padding:.5rem .75rem;border:1px solid var(--c-washi-line);border-radius:var(--radius);background-color:var(--c-white);color:var(--c-text);font-family:var(--ff-sans);font-size:1rem;line-height:1.5;box-shadow:none;transition:border-color var(--tr),box-shadow var(--tr);}
#container textarea{min-height:8rem;}
#container select{padding-right:2rem;}
#container input:focus,#container select:focus,#container textarea:focus{outline:none;border-color:var(--c-shu);box-shadow:0 0 0 3px rgba(168,41,26,.15);}
#container input[type=checkbox],#container input[type=radio]{accent-color:var(--c-shu);}
#container .form_area,#container .form_inner_area{border-color:var(--c-washi-line);}
#container .form_parts{padding:1rem 0;border-bottom:1px solid var(--c-washi-line);}
#container .form_title{font-weight:700;color:var(--c-text);}
#container .require{display:inline-block;margin-left:.5rem;padding:.125rem .375rem;background:var(--c-shu);color:var(--c-washi-100);font-size:.625rem;font-weight:700;letter-spacing:var(--ls-ui);vertical-align:.1em;}
#container .require .bracket{display:none;}
#container .cell_note{margin-top:.5rem;padding:.5rem .75rem;background:var(--c-washi-200);border-left:3px solid var(--c-gold);font-size:var(--fz-xs);color:var(--c-text-sub);}
#container .form_error input,#container .form_error textarea,#container .form_error select{border-color:var(--c-shu);background:var(--c-shu-tint);}
#container .error_msg,#container .form_status{color:var(--c-shu);font-size:var(--fz-xs);}
#container .checked_row{background:rgba(184,145,58,.14);}
#container .form_area .checked_row > .form_title,#container .form_inner_area .checked_row > .form_inner_title{color:var(--c-shu);}
#container .btn_box{margin-top:1.5rem;text-align:center;}
#container .form_area .input_box input.largesize,#container .form_area .input_box textarea{width:100%;}
@media (min-width:710px) {
  #container .form_area .form_parts{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:1.5rem;align-items:start;}
  #container .form_area .form_title{padding-top:.625rem;}
}

/* ==========================================
  Step（お問い合わせ・購入手続きの進捗）
========================================== */
#container .step_list{display:flex;margin:0 0 2rem;padding:0;list-style:none;}
#container .step_block{position:relative;flex:1;margin:0;padding:0;text-align:center;}
#container .step_block:not(:last-child)::after{content:'';position:absolute;top:50%;left:50%;z-index:0;width:100%;height:1px;background:var(--c-washi-line);}
#container .step_data{position:relative;z-index:1;display:inline-flex;flex-direction:column;align-items:center;gap:.25rem;padding:0 .5rem;background:var(--c-washi-100);}
#container .step_number{font-size:.625rem;font-weight:700;letter-spacing:.2em;color:var(--c-text-sub);}
#container .step_desc{display:block;min-width:4rem;padding:.375rem .75rem;border:1px solid var(--c-washi-line);background:var(--c-washi-50);font-size:var(--fz-s);font-weight:700;color:var(--c-text-sub);}
#container .step_check .step_number{color:var(--c-shu);}
#container .step_check .step_desc{background:var(--c-shu);border-color:var(--c-shu);color:var(--c-washi-100);}

/* ==========================================
  Item Detail
========================================== */
.model_number{display:none;}
#container .large_product_info_wrapper{display:flex;flex-direction:column;gap:1.5rem;}
/* 写真は墨の地の額に入れる。デフォルトの 300px 固定を解除して幅いっぱいに */
#container #contents .main_photo_slide{width:100%;max-width:none;min-width:0;margin:0;padding:1rem;background:var(--c-sumi-800);}
#container #contents .main_photo_slide .inner_slider_box,#container #contents .main_photo_slide .slider_box .swiper-container{max-width:none;margin:0 auto;}
#container #contents .main_photo_slide .item_image_box{position:relative;display:block;width:100%;height:auto;aspect-ratio:1 / 1;line-height:normal;}
#container #contents .main_photo_slide .item_image{position:absolute;inset:0;width:100%;max-width:none;height:100%;max-height:none;object-fit:contain;}
#container .main_photo_slide .swiper-button-prev,#container .main_photo_slide .swiper-button-next{color:var(--c-gold-light);}
#container .thumbnail .thumbnail_btn{border:2px solid transparent;}
#container .thumbnail .current .thumbnail_btn{border-color:var(--c-shu);}
/* 情報欄 */
#container .large_product_info_box{display:flex;flex-direction:column;}
#container .large_product_info_box .detail_item_data{margin:0;}
#container .large_product_info_box .box_both_ends_space{padding-left:0;padding-right:0;}
/* 商品名はページ見出し(h1)と重複するので情報欄側は出さない */
#container .large_product_info_box .detail_block_name{display:none;}
#container .detail_block_icon .common_icon:empty{display:none;}
#container .detail_block_price{padding:0 0 1rem;border-bottom:1px dashed var(--c-washi-line-2);}
#container .detail_block_price .selling_price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;margin:0;}
#container .detail_block_price .price_label{width:100%;font-size:var(--fz-xs);font-weight:700;letter-spacing:var(--ls-ui);color:var(--c-text-sub);}
#container .detail_block_price .colon{display:none;}
#container .detail_block_price .figure{font-family:var(--ff-serif);font-size:clamp(1.75rem,1.4rem + 1.4vw,2.25rem);font-weight:800;line-height:1.2;color:var(--c-text);}
#container .detail_block_price .tax_label{font-size:var(--fz-xs);color:var(--c-text-sub);}
#container .detail_block_price .regular_price,#container .detail_block_price .retail_price{width:100%;font-size:var(--fz-xs);color:var(--c-text-sub);}
#container .price_desc{font-size:var(--fz-2xs);color:var(--c-text-sub);}
#container .detail_block_stock .stock{padding:.75rem 0;font-size:var(--fz-m);font-weight:700;color:var(--c-shu);}
#container .detail_block_social .social_tool{padding:0 0 .75rem;}
#container .detail_block_social .web_share_button{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;font-size:var(--fz-l);}
#container .detail_block_form{padding-top:1rem;border-top:1px solid var(--c-washi-line);}
#container .detail_block_form .quantity .item_box{display:flex;align-items:center;gap:.75rem;}
#container .detail_block_form .quantity_label{font-size:var(--fz-s);font-weight:700;}
#container .detail_block_form .quantity .colon{display:none;}
#container .detail_block_form .quantity select{min-width:5.5rem;}
#container .detail_block_form .return{padding:.875rem 0;font-size:var(--fz-xs);}
/* カートボタンは全幅の朱。問い合わせ・お気に入りは罫線ボタンで2列 */
#container .detail_block_form .add_cart{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;padding-top:.25rem;}
#container .detail_block_form .add_cart_btn_wrapper{grid-column:1 / -1;}
#container .detail_block_form .add_cart_btn .cartinput{width:100%;min-width:0;height:3.5rem;font-size:var(--fz-l);}
#container .detail_block_form .add_cart .fa{font-size:1.125rem;}
#container .detail_block_form .inquiry_btn,#container .detail_block_form .favorite_btn{margin:0;}
#container .detail_block_form .inquiry_btn .btn_color_common,#container .detail_block_form .favorite_btn .btn_color_common{width:100%;min-width:0;height:2.75rem;padding:0 .5rem;background:transparent;border-color:var(--c-washi-line);color:var(--c-text);font-size:var(--fz-xs);letter-spacing:var(--ls-ui);}
.use_hover #container .detail_block_form .inquiry_btn .btn_color_common:hover,.use_hover #container .detail_block_form .favorite_btn .btn_color_common:hover{background:transparent;border-color:var(--c-shu);color:var(--c-shu);}
#container .detail_block_form .inquiry_btn .fa,#container .detail_block_form .favorite_btn .fa{color:var(--c-shu);}
/* 商品説明・関連グループ */
#container .detail_inner_box{margin-top:var(--sp-section);}
#container .item_desc_data .item_desc{padding:1.25rem;background:var(--c-washi-50);border:1px solid var(--c-washi-line-2);font-size:var(--fz-m);line-height:1.9;}
#container .pickupcategory_nav .inner_itemlist_nav{gap:.5rem;}
#container .pickupcategory_nav .nav_btn{position:relative;padding:.875rem 2rem .875rem 1rem;border:1px solid var(--c-washi-line);background:var(--c-washi-50);color:var(--c-text);font-weight:700;}
#container .pickupcategory_nav .chevron_right_icon{position:absolute;top:50%;right:.875rem;margin:0;transform:translateY(-50%);color:var(--c-gold);font-size:.625rem;}
.use_hover #container .pickupcategory_nav .nav_btn:hover{border-color:var(--c-shu);color:var(--c-shu);}
@media (min-width:980px) {
  #container .large_product_info_wrapper{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:2.5rem;align-items:start;}
  #container #contents .main_photo_slide{padding:1.5rem;}
}

/* バリエーション・オーダーメイド */
#container .variation_item,#container .order_item{padding:.375rem 0;}
#container .order_item{border-bottom:1px dotted var(--c-washi-line);}
#container .ordermade .bottompos{border-bottom:0;}
#container .hidden_stock .stocklist_data{text-align:center;}
#container .variation_stock_list{margin-bottom:.5rem;}
#container .variation_stock_list .data_table .selected_item,#container .variation_stock_list .data_table .selected_data{background:var(--c-shu-tint);color:var(--c-shu);}
#container .popup_variation,#container .popup_area{background:var(--c-washi-50);border:1px solid var(--c-washi-line);}
#container .popup_variation_selection,#container .popup_section{border-bottom:1px solid var(--c-washi-line);}
#container .popup_variation_button,#container .item_selection_button{background:var(--c-white);border:1px solid var(--c-washi-line);border-radius:var(--radius);}
#container .selected_option .popup_variation_button,#container .selected_option .item_selection_button{background:var(--c-shu-tint);border:2px solid var(--c-shu);color:var(--c-shu);}
#container .popup_variation_edit_button,#container .popup_variation_select_button,#container .item_select_operation_button{background:var(--c-sumi-800);border-radius:var(--radius);color:var(--c-washi-100);}
#container .popup_variation_value,#container .variation_selection_value,#container .item_selection_value{color:var(--c-shu);}
#container .variation_selection_box .validation_selection_selected_all,.use_hover #container .variation_selection_box .validation_selection_selected_all:hover{background:var(--c-shu-tint);border:1px solid var(--c-washi-line);color:var(--c-text);}
#container .validation_selection_selected_all .variation_selection_msg_text{background:var(--c-sumi-800);color:var(--c-washi-100);}

/* ==========================================
  Review
========================================== */
#container .rating_point{margin-left:.625rem;color:var(--c-gold);}
#container .large_rating_icon .rating_point{font-size:1.5rem;}
#container .medium_rating_icon .rating_point{font-size:1.25rem;}
#container .review_number{margin-left:.625rem;font-size:var(--fz-xs);}
#container .bar_graph{background:var(--c-gold);}
#container .rating_age,#container .rating_number a{font-size:var(--fz-xs);}
#container .review_data{border-bottom:1px dotted var(--c-washi-line);}
#container .mypagereview_contents .review_data{border-bottom:0;}
#container .review_title{font-family:var(--ff-serif);font-size:var(--fz-l);font-weight:700;}
#container .review_postdate{background:var(--c-washi-200);}
#container .review_note{border-top:1px solid var(--c-washi-line);border-bottom:1px solid var(--c-washi-line);}
#container .owner_note{border-bottom:1px solid var(--c-washi-line);}
#container .owner_header{font-size:var(--fz-xs);color:var(--c-shu);}
#container .owner_postdate{display:inline-block;margin-left:.375rem;}
#container .user_number{font-weight:700;color:var(--c-gold-dark);}
#container .review_vote_btn{display:block;margin-top:.375rem;}
#container .review_admin .global_btn{border-top:1px solid var(--c-washi-line);text-align:center;}
#container .detail_review_header{padding-top:.625rem;}
#container .detail_review_header .global_btn{text-align:center;}

/* ==========================================
  Table / Legal / Help
========================================== */
#container .data_table{border-collapse:collapse;}
#container .data_table th,#container .data_table td{padding:.625rem .75rem;border:1px solid var(--c-washi-line);}
#container .data_table th,#container .data_table_header{background:var(--c-washi-200);font-weight:700;}
/* 特商法：dt/dd の行。SPは縦積み、710px以上で2列 */
#container .contents_info_box{border-top:1px solid var(--c-text);}
#container .contents_info_data{margin:0;border-bottom:1px solid var(--c-washi-line);}
#container .contents_info_data .contents_title{padding:.875rem 0 .25rem;font-weight:700;color:var(--c-text);}
#container .contents_info_data .contents_desc{margin:0;padding:0 0 .875rem;line-height:1.9;}
#container .contents_info_data .contents_desc h1{margin:0;font-size:inherit;font-weight:inherit;}
@media (min-width:710px) {
  #container .contents_info_data{display:grid;grid-template-columns:12rem minmax(0,1fr);}
  #container .contents_info_data .contents_title{padding:1.125rem 1rem;background:var(--c-washi-200);}
  #container .contents_info_data .contents_desc{padding:1.125rem 1.25rem;}
}
/* ご利用案内のアンカーナビ */
#container .anchor_nav_area .flex_wrap{gap:.5rem;}
#container .anchor_nav_area .wrapped_item{flex:1 1 calc(50% - .5rem);width:auto;margin:0;}
#container .anchor_nav_area .nav_btn{height:100%;padding:.875rem .5rem;border:1px solid var(--c-washi-line);border-radius:var(--radius);background:var(--c-washi-50);color:var(--c-text);font-family:var(--ff-serif);font-size:var(--fz-m);font-weight:700;}
.use_hover #container .anchor_nav_area .nav_btn:hover{border-color:var(--c-shu);color:var(--c-shu);}
#container .anchor_nav_area .nav_btn.nav_on{background:var(--c-sumi-800);border-color:var(--c-sumi-800);color:var(--c-washi-100);}
#container .help_contents .contents_box,#container .help_regular_contents .contents_box{margin-top:2.5rem;}
@media (min-width:710px) {
  #container .anchor_nav_area .wrapped_item{flex-basis:calc(33.333% - .5rem);}
}

/* ==========================================
  Login
========================================== */
#container .psignin_contents .inner_page_contents{max-width:30rem;margin:0 auto;}
#container #signin_form{padding:1.5rem;background:var(--c-washi-50);border:1px solid var(--c-washi-line-2);}
#container .signin_box .id_box,#container .signin_box .pass_box{display:block;margin:0 0 1.25rem;}
#container .signin_box .id_title,#container .signin_box .pass_title{display:block;margin-bottom:.375rem;font-size:var(--fz-s);font-weight:700;}
#container .signin_box .colon{display:none;}
#container .signin_box .largesize{width:100%;}
#container .signin_box .inner_pass_box{position:relative;display:block;}
#container .signin_box .toggle-pass{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);color:var(--c-text-sub);}
#container .signininput_btn_box .global_btn,#container .signininput_btn_box .signininput{display:flex;width:100%;}
#container #register_form{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--c-washi-line);text-align:center;}
#container .gen_password_link_box{margin-bottom:1.25rem;font-size:var(--fz-s);}

/* ==========================================
  Cart
========================================== */
#container .inner_cart_data{margin-bottom:1rem;padding:1rem;background:var(--c-washi-50);border:1px solid var(--c-washi-line-2);border-radius:var(--radius);}
#container .empty_msg_box{padding:2rem 0;text-align:center;color:var(--c-text-sub);}
#container .cart_section,#container .top_separator{border-top:1px solid var(--c-washi-line);}
#container .bottom_separator{border-bottom:1px solid var(--c-washi-line);}
#container .cart_label{font-weight:700;}
#container .cart_inner_btn{text-align:center;}
#container .cart_sub_total_price,#container .cart_shipping_charge,#container .cart_footer{text-align:right;}
#container .grand_total{display:inline-flex;align-items:baseline;gap:.75rem;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:2px solid var(--c-shu);}
#container .grandtotal_label{font-weight:700;}
#container .grandtotal_label .colon{display:none;}
#container .grandtotal_price{font-family:var(--ff-serif);font-size:1.625rem;font-weight:800;color:var(--c-text);}
#container .continue_shopping{margin-top:1rem;padding:.75rem 0;border-top:1px solid var(--c-washi-line);border-bottom:1px solid var(--c-washi-line);text-align:right;font-size:var(--fz-s);}
#container .continue_shopping .fa{color:var(--c-shu);}
#container .cart_recipient .global_btn{text-align:center;}
#container .cart_recipient_title{padding-left:.625rem;border-left:4px solid var(--c-shu);}
#container .inner_global_info{background:var(--c-washi-50);border:1px solid var(--c-washi-line);}
#container .toggle_box .cart_point,#container .toggle_box .box_padding,#container .toggle_box .cart_point_notice{margin:1px;}

/* ==========================================
  Side Menu（PCは左サイド、840px未満は引き出し）
========================================== */
#container .side_col{background:var(--c-washi-100);}
#container .side_box + .side_box{margin-top:1.25rem;}
#container .inner_side_nav{margin:0;padding:0;border:1px solid var(--c-washi-line);border-bottom:0;background:var(--c-washi-50);}
#container .inner_side_nav .wrapped_item{width:100%;margin:0;}
#container .inner_side_nav .nav_btn,#container .side_itemlist_nav .nav_btn{position:relative;display:flex;align-items:center;width:100%;padding:.75rem 2rem .75rem .875rem;border:0;border-bottom:1px solid var(--c-washi-line);border-radius:0;background:transparent;color:var(--c-text);font-size:var(--fz-s);line-height:1.5;letter-spacing:.04em;}
#container .inner_side_nav .nav_text{display:flex;align-items:center;gap:.625rem;width:100%;}
#container .inner_side_nav .menu_nav_icon{order:-1;flex:none;width:auto;margin:0;font-size:1.125rem;color:var(--c-shu);}
#container .side_col .chevron_right_icon{position:absolute;top:50%;right:.875rem;margin:0;transform:translateY(-50%);font-size:.5625rem;color:var(--c-gold);}
.use_hover #container .inner_side_nav .nav_btn:hover,.use_hover #container .side_itemlist_nav .nav_btn:hover{background:var(--c-washi-300);color:var(--c-shu);}
/* 自由欄のリンク集（メルカードサイト一覧） */
#container .side_col .section_title{margin:0 0 .75rem;padding:0;}
#container .side_col .section_title h2{--eyebrow:'LINKS';gap:.25rem;}
#container .side_col .section_title .title_text{font-family:var(--ff-brush);font-size:1.375rem;font-weight:400;letter-spacing:var(--ls-title);}
#container .side_itemlist_nav .menu_link_list{margin:0;padding:0;list-style:none;border:1px solid var(--c-washi-line);border-bottom:0;background:var(--c-washi-50);}
#container .side_itemlist_nav .menu_link_item{margin:0;}
#container .side_itemlist_nav .nav_space{display:none;}
#container .side_free_box{margin-top:2rem;}
/* 引き出し（SP）の閉じるボタン */
#container .side_menu_close_btn{background:var(--c-sumi-800);color:var(--c-washi-100);}
/* SPの引き出しは画面端に張り付くので内側に余白を取る（PCでは不要なので下で解除） */
#container .side_col .inner_side_container{padding:1rem;}
@media (min-width:840px) {
  #container .side_col{background:transparent;}
  #container .side_col .inner_side_container{padding:0;}
}

/* ==========================================
  Footer（最暗部＋上に朱の線）
========================================== */
#bottom_wrapper{background:var(--c-sumi-950);}
#container #footer_wrapper{background:var(--c-sumi-950);border-top:3px solid var(--c-shu);color:var(--c-text-on-dark-sub);}
#footer_wrapper .footer_nav{padding:2.5rem 0 0;border:0;background:none;}
/* li の % 幅（最大クラス5個）を ID 付きで解除して Grid で並べる */
#container #footer_wrapper .inner_footer_nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem;max-width:var(--w-max);margin:0 auto;padding:0 var(--gutter);}
#container #footer_wrapper .inner_footer_nav .footer_nav_item{width:auto;margin:0;}
#footer_wrapper .inner_footer_nav .nav_btn{display:flex;align-items:center;height:100%;padding:.75rem 0;border:0;border-bottom:1px solid var(--c-sumi-700);background:transparent;color:var(--c-text-on-dark);font-size:var(--fz-s);letter-spacing:.04em;}
#footer_wrapper .inner_footer_nav .nav_text{display:flex;align-items:center;gap:.625rem;}
#footer_wrapper .inner_footer_nav .menu_nav_icon{order:-1;margin:0;font-size:1rem;color:var(--c-gold);}
#footer_wrapper .inner_footer_nav .chevron_right_icon{display:none;}
.use_hover #footer_wrapper .inner_footer_nav .nav_btn:hover{color:var(--c-gold-light);}
#container #inner_footer{max-width:var(--w-max);margin:0 auto;padding:2rem var(--gutter) 2.5rem;}
#footer_wrapper #copyright{padding:1.25rem 0 0;border-top:1px solid var(--c-sumi-700);color:var(--c-text-on-dark-sub);font-size:var(--fz-2xs);letter-spacing:.1em;text-align:left;}
#footer_wrapper .footer_banner:empty,#footer_wrapper .inner_footer_banner:empty{display:none;}
/* ログイン等の簡易フッター */
#footer_wrapper .footer_upper_link_box{margin-bottom:1.25rem;}
#footer_wrapper .footer_upper_link_box .global_link{color:var(--c-text-on-dark);text-decoration:none;}
#footer_wrapper .footer_upper_link_box .fa{color:var(--c-gold);}
@media (min-width:840px) {
  #container #footer_wrapper .inner_footer_nav{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:2.5rem;}
  #footer_wrapper .footer_nav{padding-top:3rem;}
}

/* ==========================================
  Back To Top
========================================== */
#container .back_to_top .inner_fixed_corner{display:grid;place-items:center;width:2.75rem;height:2.75rem;background:var(--c-sumi-800);border:1px solid var(--c-gold-dark);color:var(--c-gold-light);box-shadow:var(--shadow-float);transition:background-color var(--tr);}
#container .back_to_top .fa{font-size:1.25rem;}
.use_hover #container .back_to_top:hover .inner_fixed_corner{background:var(--c-shu);border-color:var(--c-shu);color:var(--c-white);}

/* ==========================================
  Icons（主要ナビだけ Tabler に置き換え。それ以外は Font Awesome のまま色を合わせる）
========================================== */
.h_side_menu_opener,.h_menu{--ic:var(--ic-menu-2);}
.h_cart,.t_cart,.s_cart,.f_cart{--ic:var(--ic-shopping-bag);}
.h_member,.g_member,.f_member{--ic:var(--ic-user);}
.g_search,.t_search{--ic:var(--ic-search);}
.g_group{--ic:var(--ic-cards);}
.g_category,.t_category{--ic:var(--ic-category);}
.g_link_item1{--ic:var(--ic-receipt-yen);}
.g_help,.t_help,.s_help,.f_help{--ic:var(--ic-book-2);}
.t_home,.f_home{--ic:var(--ic-home);}
.f_favorite{--ic:var(--ic-heart);}
.f_recently{--ic:var(--ic-clock);}
.t_info,.s_info,.f_info{--ic:var(--ic-file-text);}
.t_contact,.s_contact,.f_contact{--ic:var(--ic-mail);}
.t_singin,.s_singin{--ic:var(--ic-login-2);}
.t_register,.s_register{--ic:var(--ic-user-plus);}
/* 対象を列挙して限定する。--ic 未定義の項目（管理画面で追加された項目）に適用すると塗りつぶしの四角になるため */
:is(.h_side_menu_opener,.h_menu,.h_cart,.t_cart,.s_cart,.f_cart,.h_member,.g_member,.f_member,.g_search,.t_search,.g_group,.g_category,.t_category,.g_link_item1,.g_help,.t_help,.s_help,.f_help,.t_home,.f_home,.f_favorite,.f_recently,.t_info,.s_info,.f_info,.t_contact,.s_contact,.f_contact,.t_singin,.s_singin,.t_register,.s_register) .menu_nav_icon::before{content:'';display:block;width:1em;height:1em;background-color:currentColor;-webkit-mask:var(--ic) center / contain no-repeat;mask:var(--ic) center / contain no-repeat;}
#container .back_to_top .fa::before{content:'';display:block;width:1em;height:1em;background-color:currentColor;-webkit-mask:var(--ic-arrow-up) center / contain no-repeat;mask:var(--ic-arrow-up) center / contain no-repeat;}

/* ==========================================
  Notice Banner（自由欄：送料・決済の帯）
========================================== */
.notice-banner{width:100%;padding:.375rem 0;background:var(--c-sumi-950);border-top:1px solid var(--c-gold-dark);border-bottom:1px solid var(--c-gold-dark);}
.notice-container{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;max-width:var(--w-max);margin:0 auto;padding:0 .5rem;}
.notice-item{display:flex;align-items:center;gap:.1875rem;color:var(--c-text-on-dark);font-size:.625rem;font-weight:700;white-space:nowrap;}
.notice-shipping,.notice-delivery{margin-right:.625rem;margin-bottom:.1875rem;}
.notice-delivery{margin-bottom:0;}
.notice-payment{margin-right:0;}
.notice-icon{flex-shrink:0;width:14px;height:14px;}
.notice-img{flex-shrink:0;width:auto;height:14px;}
.payment-group{display:flex;align-items:center;gap:.25rem;}
.payment-method{display:flex;align-items:center;gap:.25rem;margin-right:.25rem;}
@media (min-width:480px) {
  .notice-banner{padding:.5rem 0;}
  .notice-container{padding:0 .75rem;}
  .notice-item{gap:.25rem;font-size:var(--fz-xs);}
  .notice-shipping,.notice-delivery{margin-right:1rem;margin-bottom:.25rem;}
  .notice-icon{width:16px;height:16px;}
  .notice-img{height:16px;}
  .payment-method{margin-right:.375rem;}
}
@media (min-width:710px) {
  .notice-banner{padding:.75rem 0;}
  .notice-container{padding:0 1.25rem;}
  .notice-item{gap:.375rem;font-size:var(--fz-m);}
  .notice-shipping,.notice-delivery{margin-right:1.5rem;margin-bottom:0;}
  .notice-icon{width:20px;height:20px;}
  .notice-img{height:20px;}
  .payment-method{margin-right:.5rem;}
}

/* ==========================================
  Card Spec（商品説明内のカード情報表）
========================================== */
.card_spce_list{margin:1.875rem 0;background:var(--c-washi-50);border:1px solid var(--c-washi-line);font-size:100%;}
.card_spce_list .ttl{margin:0 0 .625rem;padding:.5rem 5%;background:var(--c-sumi-800);border-bottom:2px solid var(--c-shu);color:var(--c-washi-100);font-family:var(--ff-serif);font-size:var(--fz-xl);font-weight:700;text-align:center;}
.card_list{margin:0;padding:0 1.25rem 1.25rem;list-style:none;}
.tr1,.tr2,.tr3,.tr4,.tr5,.tr6,.tr7,.tr8,.tr9,.tr10,.tr11{padding:.3125rem 0 .1875rem;border-bottom:1px dotted var(--c-gold);}
.tr11{border-bottom:0;}
[class$="-ttl"]{margin-right:.625rem;}
[class$="-name"]{font-weight:400;}
@media (min-width:710px) {
  .card_list{padding:0 1.875rem 1.875rem;}
}

/* ==========================================
  Feature（特集ブロック）
========================================== */
.feature-section{display:flex;flex-direction:column;align-items:center;}
.feature-main{width:100%;padding-right:0;text-align:left;}
.feature-sub{width:100%;}
.feature-list{margin:0;padding:0;font-size:85%;list-style:none;}
.feature-list li{display:flex;align-items:center;padding:.1875rem 0;border-bottom:1px dotted var(--c-gold);font-size:80%;}
.feature-list li .feature-list-ttl{padding:1px .3125rem;background:var(--c-shu);color:var(--c-washi-100);}
.feature-list li:last-child{padding:.3125rem 0 .625rem;border-bottom:0;}
@media (min-width:710px) {
  .feature-section{flex-direction:row;}
  .feature-main{width:auto;padding-right:.625rem;}
  .feature-sub{flex:1;width:auto;}
}

/* ==========================================
  Deck（デッキ販売ブロック）
========================================== */
.mcdDeck{max-width:62.5rem;margin:0 auto;padding:1rem .625rem 1.625rem;background:var(--c-washi-50);border:1px solid var(--c-washi-line);color:var(--c-text);font-family:var(--ff-sans);line-height:1.6;}
.mcdDeck *{box-sizing:border-box;margin:0;padding:0;}
.mcdDeck__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1.25rem;padding:.875rem 1.125rem;background:var(--c-sumi-800);border-bottom:3px solid var(--c-shu);}
.mcdDeck__title{font-family:var(--ff-serif);font-size:clamp(1rem,4.2vw,1.5rem);font-weight:800;line-height:1.35;letter-spacing:.06em;color:var(--c-washi-100);}
.mcdDeck__total{flex:0 0 auto;padding:.25rem .75rem;border:1px solid var(--c-gold-dark);font-size:var(--fz-xs);font-weight:700;letter-spacing:var(--ls-ui);color:var(--c-gold-light);white-space:nowrap;}
.mcdDeck__sec{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .75rem;padding:.5625rem 1rem;color:var(--c-washi-100);font-weight:700;letter-spacing:.06em;}
.mcdDeck__sec--egg{background:var(--c-shu);}
.mcdDeck__sec--main{background:var(--c-sumi-800);border-left:3px solid var(--c-shu);}
.mcdDeck__sec--other{background:var(--c-gold-dark);}
.mcdDeck__secName{font-size:clamp(.8125rem,3.4vw,1rem);}
.mcdDeck__secCount{flex:0 0 auto;padding:.1875rem .625rem;background:rgba(255,255,255,.16);font-size:var(--fz-xs);font-weight:700;white-space:nowrap;}
.mcdDeck__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.875rem .75rem;margin:0 0 1.5rem;}
.mcdDeck__item{position:relative;padding:.625rem .625rem .375rem 0;}
.mcdDeck__stack{position:relative;display:block;width:100%;aspect-ratio:5 / 7;}
.mcdDeck__layer{position:absolute;inset:0;display:block;overflow:hidden;background:var(--c-washi-300);box-shadow:0 2px 8px rgba(0,0,0,.35);}
.mcdDeck__layer:nth-last-child(1){z-index:4;}
.mcdDeck__layer:nth-last-child(2){z-index:3;transform:translate(3px,-3px);filter:brightness(.88);}
.mcdDeck__layer:nth-last-child(3){z-index:2;transform:translate(6px,-6px);filter:brightness(.78);}
.mcdDeck__layer:nth-last-child(4){z-index:1;transform:translate(9px,-9px);filter:brightness(.68);}
.mcdDeck__img{display:block;width:100%;height:100%;object-fit:cover;}
.mcdDeck__qty{position:absolute;right:0;bottom:0;z-index:5;padding:.25rem .5rem;background:var(--c-sumi-800);border:1px solid var(--c-gold);color:var(--c-washi-100);font-size:clamp(.8125rem,3.8vw,1.125rem);font-weight:700;line-height:1;white-space:nowrap;}
.mcdDeck__foot{margin-top:.375rem;padding:1rem .875rem;background:var(--c-white);border:1px solid var(--c-washi-line);}
.mcdDeck__footTitle{margin-bottom:.75rem;padding-left:.5625rem;border-left:4px solid var(--c-shu);font-family:var(--ff-serif);font-size:var(--fz-m);font-weight:800;letter-spacing:var(--ls-ui);}
.mcdDeck__table{width:100%;border-collapse:collapse;border:1px solid var(--c-washi-line);font-size:var(--fz-s);line-height:1.5;}
.mcdDeck__table th,.mcdDeck__table td{padding:.375rem .625rem;border-bottom:1px solid var(--c-washi-200);text-align:left;vertical-align:middle;}
.mcdDeck__table thead th{background:var(--c-sumi-800);border-bottom:0;color:var(--c-washi-100);font-size:var(--fz-2xs);font-weight:700;letter-spacing:.1em;white-space:nowrap;}
.mcdDeck__table tfoot td{background:var(--c-washi-200);border-bottom:0;font-weight:700;}
.mcdDeck__grp td{padding:.3125rem .625rem;color:var(--c-washi-100);font-size:var(--fz-2xs);font-weight:700;letter-spacing:var(--ls-ui);}
.mcdDeck__grp--egg td{background:var(--c-shu);}
.mcdDeck__grp--main td{background:var(--c-sumi-800);}
.mcdDeck__grp--other td{background:var(--c-gold-dark);}
.mcdDeck__num{width:50px;font-weight:700;color:var(--c-shu);text-align:center;white-space:nowrap;}
.mcdDeck__nameCell{word-break:break-all;}
.mcdDeck__code{overflow:hidden;width:26%;font-family:Consolas,Menlo,monospace;font-size:.65625rem;letter-spacing:.04em;color:var(--c-gold-dark);white-space:nowrap;text-overflow:ellipsis;}
.mcdDeck__link{color:var(--c-text);text-decoration:underline;text-decoration-color:rgba(168,41,26,.45);text-underline-offset:2px;}
.mcdDeck__comment{position:relative;margin-top:1.125rem;padding:1rem .875rem .875rem;background:var(--c-white);border:1px solid var(--c-gold);}
.mcdDeck__commentLabel{position:absolute;top:-.625rem;left:.75rem;padding:.25rem .625rem;background:var(--c-shu);color:var(--c-washi-100);font-size:var(--fz-2xs);font-weight:700;line-height:1;letter-spacing:var(--ls-btn);}
.mcdDeck__commentBody{font-size:var(--fz-s);line-height:1.9;white-space:pre-wrap;word-break:break-word;}
.mcdDeck__note{margin-top:.875rem;font-size:var(--fz-2xs);line-height:1.8;color:var(--c-text-sub);}
@media (min-width:480px) {
  .mcdDeck__grid{grid-template-columns:repeat(4,1fr);}
}
@media (min-width:710px) {
  .mcdDeck{padding:1.25rem 1rem 1.875rem;}
  .mcdDeck__grid{grid-template-columns:repeat(6,1fr);}
  .mcdDeck__foot{padding:1.25rem 1.125rem;}
  .mcdDeck__table{font-size:.84375rem;}
  .mcdDeck__num{width:62px;}
  .mcdDeck__code{font-size:.71875rem;}
  .mcdDeck__commentBody{font-size:.84375rem;}
}
@media (min-width:980px) {
  .mcdDeck__grid{grid-template-columns:repeat(8,1fr);}
}

/* ==========================================
  Scrollbar
========================================== */
html{scrollbar-color:var(--c-sumi-line-2) var(--c-sumi-900);}
