:root{--ink:#2b2422;--muted:#7a6f68;--line:#e7e0d8;--bg:#fbf9f6;--panel:#ffffff;--accent:#a8232f;--accent-dark:#8c1d27;--gold:#a98a4e;--danger:#b3261e;--ok:#1a7f37;--warn-bg:#faf5e9;--warn-line:#d9c48a;--serif:"Yu Mincho","YuMincho","Hiragino Mincho ProN","Noto Serif JP",serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;line-height:1.8}a{color:var(--accent)}.container{max-width:960px;margin:0 auto;padding:0 16px 64px}.container:has(.page-with-nav){max-width:1200px}.site-header{background:var(--panel);border-top:3px solid var(--accent);border-bottom:1px solid var(--line)}.site-header .inner{max-width:960px;margin:0 auto;padding:16px;display:flex;align-items:center;justify-content:space-between}.site-header .brand{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:.06em;color:var(--accent);text-decoration:none}.site-header nav a{margin-left:16px;text-decoration:none;color:var(--ink)}.site-header nav a:hover{color:var(--accent)}.hero{position:relative;margin-top:20px;border-radius:10px;overflow:hidden}.hero img{display:block;width:100%;height:320px;object-fit:cover}.hero-copy{position:absolute;left:0;right:0;bottom:0;padding:28px 24px 20px;background:linear-gradient(transparent,rgba(30,15,10,.55));color:#fff}.hero-title{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:.08em;text-shadow:0 1px 6px rgba(0,0,0,.35)}.hero-sub{font-size:14px;margin-top:4px;opacity:.95}@media (max-width:600px){.hero img{height:220px}.hero-title{font-size:20px}}.notice-bar{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:6px;padding:10px 14px;margin:16px 0;font-size:14px}h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:.04em}h1{font-size:26px;margin:28px 0 8px}h2{font-size:19px;margin:32px 0 8px}.lead{font-family:var(--serif);font-size:17px;line-height:2;letter-spacing:.03em;margin:24px auto 8px;max-width:640px;text-align:center}@media (max-width:600px){.lead{font-size:15px;text-align:left}}.size-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px;margin-top:16px;align-items:start}.card.size-card{padding:0;overflow:hidden;text-decoration:none;color:var(--ink);display:block}.size-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.size-card .size-card-body{padding:16px 18px 18px;display:grid;grid-gap:4px;gap:4px;justify-items:start}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px;margin-top:16px}.feature-title{font-family:var(--serif);font-size:16px;font-weight:600;margin-bottom:6px;padding-bottom:6px;border-bottom:2px solid var(--accent);display:inline-block}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:20px;gap:20px;margin-top:16px;align-items:stretch}.product-grid .card{display:flex;flex-direction:column}.product-grid .card .price{margin-top:auto;padding-top:6px}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px;transition:box-shadow .35s ease}.card:hover{box-shadow:0 3px 14px rgba(43,36,34,.08)}.card a.title{font-family:var(--serif);font-size:17px;font-weight:600;text-decoration:none;color:var(--ink);display:block;margin-bottom:4px}.card a.title:hover{color:var(--accent)}.card .title{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ink);margin-bottom:4px;word-break:keep-all;overflow-wrap:anywhere}.img-placeholder{background:#f3efe9;color:var(--muted);border:1px dashed var(--line);border-radius:6px;display:flex;align-items:center;justify-content:center;height:160px;font-size:13px;margin-bottom:12px}.price{font-size:18px;font-weight:700}.price small{font-weight:400;color:var(--muted)}.badge{display:inline-block;font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid var(--warn-line);background:var(--warn-bg);margin-left:8px;vertical-align:middle}.muted{color:var(--muted);font-size:14px}table.list,table.spec{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;font-size:14px}table.list td,table.list th,table.spec td,table.spec th{border-bottom:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}table.spec th{width:30%;font-weight:600}table.list th,table.spec th{background:#f7f3ec}.btn,button{display:inline-block;background:var(--accent);color:#fff;border:none;border-radius:6px;padding:10px 22px;font-size:15px;cursor:pointer;text-decoration:none;transition:background .25s ease}.btn:hover,button:hover{background:var(--accent-dark)}button:disabled{background:#c4b8ad;cursor:not-allowed}.btn.secondary,button.secondary{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.btn.secondary:hover,button.secondary:hover{background:var(--bg)}button.danger{background:var(--danger)}input,select,textarea{font-size:15px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;width:100%;background:var(--panel)}input[type=checkbox],input[type=radio]{width:auto;padding:0}.form-row{margin-bottom:14px;max-width:480px}.form-row label{display:block;font-size:14px;font-weight:600;margin-bottom:4px}.error-box{background:#fdeceb;border:1px solid #e8b3b0;color:var(--danger);border-radius:6px;padding:10px 14px;margin:12px 0;font-size:14px}.status-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid var(--line);background:#f3efe9}.status-authorized{background:#faf5e9;color:#7a5c1e}.status-captured{background:#e7f6ec;color:var(--ok)}.status-cancelled,.status-refunded{background:#f4e9e9;color:var(--danger)}.qty-input{width:80px}footer.site-footer{border-top:1px solid var(--line);margin-top:56px;padding:28px 16px;font-size:13px;color:var(--muted);background:var(--panel)}footer.site-footer .inner{max-width:960px;margin:0 auto}footer.site-footer a{color:var(--muted);text-decoration:none}footer.site-footer a:hover{color:var(--accent);text-decoration:underline}.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;margin-bottom:20px}.footer-heading{font-weight:700;color:var(--ink);margin-bottom:8px;font-size:13px;letter-spacing:.04em}.footer-col ul{list-style:none;padding:0;margin:0}.footer-col li{margin-bottom:6px;line-height:1.6}.footer-copyright{border-top:1px solid var(--line);padding-top:14px;font-size:12px;color:var(--muted)}@media (max-width:640px){.footer-cols{grid-template-columns:1fr;gap:16px}}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.chip{display:inline-block;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font-size:14px;text-decoration:none;transition:border-color .2s ease,color .2s ease}.chip:hover{border-color:var(--accent);color:var(--accent)}.page-with-nav{display:grid;grid-gap:32px;gap:32px;grid-template-areas:"main" "nav"}.page-main{grid-area:main;min-width:0}.page-nav{grid-area:nav}@media (min-width:900px){.page-with-nav{grid-template-columns:200px minmax(0,1fr);grid-template-areas:"nav main";gap:48px}.page-nav{position:-webkit-sticky;position:sticky;top:16px;align-self:start}}.page-nav-block{margin-bottom:22px}.page-nav-heading{font-family:var(--serif);font-size:14px;font-weight:600;color:var(--muted);padding-bottom:6px;border-bottom:1px solid var(--line);margin-bottom:8px}.page-nav-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:2px;gap:2px}.page-nav-list a{display:block;font-size:14px;color:var(--ink);text-decoration:none;border-left:2px solid transparent;padding:5px 2px 5px 8px;transition:color .2s ease,border-color .2s ease}.page-nav-list a:hover,.page-nav-list a[aria-current=page]{color:var(--accent);border-left-color:var(--accent)}.page-nav-list a[aria-current=page]{font-weight:600}.page-nav-cta{display:block;text-align:center;font-size:13px;padding:9px 10px}.page-nav-list a.is-on{color:var(--accent);border-left-color:var(--accent);font-weight:600}.chip.is-on{border-color:var(--accent);color:var(--accent)}.photo-pending{width:100%;height:96px;border:1px dashed var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;background:var(--panel);text-decoration:none}.hero-textonly{margin-top:20px;padding:40px 24px;text-align:center;background:var(--panel);border:1px dashed var(--line);border-radius:10px}.hero-textonly .hero-title{color:var(--ink);text-shadow:none}.hero-pending,.hero-textonly .hero-sub{color:var(--muted)}.hero-pending{margin-top:14px;font-size:13px}a.card{text-decoration:none;color:var(--ink)}a.card:hover{border-color:var(--accent)}