:root{--washi:#efeae0;--washi-2:#e5dfd3;--card:#f7f4ee;--ink:#191614;--ink-2:#5d564c;--ink-3:#8b8378;--ai:#22384e;--beni:#a02d21;--beni-ink:#fbf6ee;--rule:#d6cfc1;--rule-2:#c4bbaa;--ok:#3f6b4a;--f-display:"Hoefler Text",Didot,"Bodoni 72","Palatino Linotype",Palatino,Georgia,serif;--f-body:"Helvetica Neue","Segoe UI",system-ui,-apple-system,Arial,sans-serif;--f-label:Futura,"Avenir Next","Century Gothic","Segoe UI",system-ui,sans-serif;--f-data:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--wrap:1240px;--head-h:62px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--washi);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--f-display);font-weight:400;margin:0;line-height:1.14;text-wrap:balance;letter-spacing:-.005em}p{margin:0}img{display:block;max-width:100%}a{color:inherit}:focus-visible{outline:2px solid var(--beni);outline-offset:3px}.wrap{max-width:var(--wrap)}.wrap,.wrap-narrow{margin-inline:auto;padding-inline:clamp(1.1rem,4vw,3rem)}.wrap-narrow{max-width:760px}.label{font-family:var(--f-label);font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3)}.price{font-family:var(--f-data);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--beni)}.rule{height:1px;background:var(--rule);border:0;margin:0}.site-head{position:-webkit-sticky;position:sticky;top:0;z-index:60;background:var(--card);border-bottom:1px solid var(--rule)}.site-head .bar{display:flex;align-items:center;gap:1.6rem;height:var(--head-h)}.logo{display:flex;align-items:baseline;gap:.55rem;text-decoration:none}.logo .kanji{font-size:22px;color:var(--beni);line-height:1}.logo .kanji,.logo b{font-family:var(--f-display)}.logo b{font-weight:400;font-size:20px;letter-spacing:.02em}.site-nav{display:flex;gap:1.5rem;margin-left:auto}.site-nav a{font-family:var(--f-label);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent}.site-nav a:hover{color:var(--ink);border-color:var(--beni)}.head-actions{display:flex;align-items:center;gap:1rem;margin-left:1rem}.icon-btn{background:none;border:0;cursor:pointer;color:var(--ink);padding:.3rem;font-family:var(--f-data);font-size:12px;display:inline-flex;align-items:center;gap:.4rem}.icon-btn b{color:var(--beni);font-weight:400}.menu-toggle{display:none}.hero{position:relative;min-height:min(72vh,620px);display:grid}.hero>img{width:100%;height:100%;object-fit:cover}.hero .veil,.hero>img{position:absolute;inset:0}.hero .veil{background:linear-gradient(105deg,rgba(12,10,9,.9),rgba(12,10,9,.68) 45%,rgba(12,10,9,.3))}.hero .inner{position:relative;display:flex;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;padding:clamp(2rem,5vw,4.5rem) 0}.tategaki{writing-mode:vertical-rl;font-family:var(--f-display);font-size:clamp(28px,3.6vw,44px);color:#ede7db;letter-spacing:.3em;opacity:.85;border-left:1px solid rgba(237,231,219,.28);padding-left:1rem}.hero-copy{max-width:36rem;display:flex;flex-direction:column;gap:1.1rem}.hero-copy .label{color:#c9bfae}.hero h1{font-size:clamp(31px,5vw,56px);color:#ede7db;line-height:1.07}.hero p{color:#d6cdbe;font-size:17px;max-width:44ch}.btn{font-family:var(--f-label);font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:.9rem 1.45rem;text-decoration:none;cursor:pointer;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:none}.btn-fill{background:var(--beni);color:var(--beni-ink);border-color:var(--beni)}.btn-fill:hover{filter:brightness(1.1)}.btn-fill:disabled{opacity:.55;cursor:default;filter:none}.btn-line{border-color:rgba(237,231,219,.5);color:#ede7db}.btn-line:hover{border-color:#ede7db}.btn-dark{border-color:var(--ink);color:var(--ink)}.btn-dark:hover{background:var(--ink);color:var(--washi)}.btn-row{display:flex;flex-wrap:wrap;gap:.7rem}.sec{padding:clamp(2.4rem,5vw,4rem) 0}.sec-head{display:flex;align-items:flex-end;gap:1.5rem;margin-bottom:2rem}.sec-head h2{font-size:clamp(24px,2.6vw,32px)}.sec-head .label{display:block;margin-bottom:.5rem}.sec-head a{margin-left:auto;font-family:var(--f-label);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);text-decoration:none;border-bottom:1px solid var(--rule-2);padding-bottom:3px;white-space:nowrap}.sec-head a:hover{color:var(--beni);border-color:var(--beni)}.shot{overflow:hidden;background:var(--washi-2);position:relative}.shot img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.3,1)}a:hover .shot img{transform:scale(1.035)}.ratio-4-3{aspect-ratio:4/3}.ratio-16-10{aspect-ratio:16/10}.ratio-1{aspect-ratio:1}.feature{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:clamp(1.2rem,3vw,2.5rem);gap:clamp(1.2rem,3vw,2.5rem);align-items:center;text-decoration:none;margin-bottom:clamp(1.8rem,3.5vw,3rem)}.feature h3{font-size:clamp(22px,2.4vw,30px);margin-bottom:.6rem}.feature p{color:var(--ink-2);font-size:15.5px;max-width:46ch}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:clamp(1rem,2.5vw,2rem);gap:clamp(1rem,2.5vw,2rem)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:clamp(.9rem,2vw,1.6rem);gap:clamp(.9rem,2vw,1.6rem)}.grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));grid-gap:clamp(1rem,2.2vw,1.8rem);gap:clamp(1rem,2.2vw,1.8rem)}.tile{text-decoration:none;display:flex;flex-direction:column;gap:.65rem}.tile h3{font-size:20px}.tile h4{font-family:var(--f-body);font-size:15px;font-weight:600;line-height:1.35;margin:0}.tile p{font-size:14px;color:var(--ink-2)}.kv{display:flex;gap:1.4rem;font-family:var(--f-data);font-size:12px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kv b{color:var(--ink);font-weight:400}.tile .row{display:flex;align-items:baseline;gap:.6rem}.tile .row .price{font-size:15px}.tile .row small{font-family:var(--f-data);font-size:11px;color:var(--ink-3)}.band{position:relative;color:#ede7db}.band>img{width:100%;height:clamp(280px,40vw,400px);object-fit:cover}.band .veil{background:rgba(11,10,9,.64)}.band .inner,.band .veil{position:absolute;inset:0}.band .inner{display:grid;place-items:center;text-align:center;padding:2rem}.band q{font-family:var(--f-display);font-size:clamp(20px,2.5vw,29px);line-height:1.42;quotes:"「" "」";max-width:38rem;display:block}.band cite{font-style:normal;font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#b9af9e;display:block;margin-top:1rem}.page-head{padding:clamp(1.8rem,4vw,3rem) 0 0}.crumb{font-family:var(--f-label);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}.crumb a{text-decoration:none}.crumb a:hover{color:var(--beni)}.page-head h1{font-size:clamp(28px,4vw,46px);margin:.8rem 0 1rem}.lede{font-size:17.5px;max-width:60ch}.author,.lede{color:var(--ink-2)}.author{display:flex;align-items:center;gap:.8rem;margin-top:1.4rem;font-size:14px}.author .ini{width:38px;height:38px;border-radius:50%;border:1px solid var(--rule-2);display:grid;place-items:center;font-family:var(--f-display);color:var(--beni);flex:none}.author small{color:var(--ink-3);font-size:13px}.facts{display:flex;flex-wrap:wrap;gap:2rem;padding:1.5rem 0;margin-top:1.6rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.facts b{display:block;font-family:var(--f-data);font-size:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:400}.facts span{font-family:var(--f-label);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}.method{display:grid;grid-template-columns:1fr 360px;grid-gap:0;gap:0;align-items:start}.steps{padding:clamp(1.6rem,3.5vw,2.6rem) clamp(1rem,2.5vw,2rem) 2rem 0}.step{display:grid;grid-template-columns:2.3rem 1fr;grid-gap:1.1rem;gap:1.1rem;padding-bottom:2rem}.step .n{font-family:var(--f-data);font-size:12px;color:var(--beni);padding-top:.35rem}.step h3{font-size:19px;margin-bottom:.35rem}.step p{color:var(--ink-2);font-size:15.5px;max-width:62ch}.step .note{margin-top:.7rem;padding-left:.9rem;border-left:2px solid var(--ai);color:var(--ink-2);font-size:14px}.panel{border-left:1px solid var(--rule);background:var(--washi-2);padding:clamp(1.2rem,2.5vw,1.7rem);position:-webkit-sticky;position:sticky;top:calc(var(--head-h) + 1rem)}.panel h2{font-size:20px}.panel>.label{display:block;margin:.35rem 0 1rem}.ing-line{display:flex;gap:.7rem;align-items:flex-start;padding:.6rem 0;border-bottom:1px solid var(--rule);font-size:14.5px;cursor:pointer}.ing-line input{margin-top:.35rem;accent-color:var(--beni);width:15px;height:15px;flex:none}.ing-line .nm{flex:1 1}.ing-line .nm small{display:block;color:var(--ink-3);font-size:12px}.ing-line .price{font-size:13.5px;white-space:nowrap}.ing-line.pantry{cursor:default}.ing-line.pantry .price{color:var(--ink-3);font-family:var(--f-body);font-size:12px}.sum{margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--ink)}.sum .row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.9rem}.sum .row span{font-size:13.5px;color:var(--ink-2)}.sum .row .price{font-size:25px}.sum .btn{width:100%}.sum small{display:block;text-align:center;margin-top:.7rem;font-size:12px;color:var(--ink-3)}.prose{font-size:17px;line-height:1.78;color:var(--ink)}.prose>*+*{margin-top:1.3rem}.prose h2{font-size:clamp(22px,2.4vw,28px);margin-top:2.6rem}.prose h3{font-size:20px;margin-top:2rem}.prose p{color:var(--ink-2)}.prose ol,.prose ul{color:var(--ink-2);padding-left:1.3rem}.prose li{margin-bottom:.5rem}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--beni);text-underline-offset:3px}.prose blockquote{margin:0;padding-left:1.1rem;border-left:2px solid var(--ai);font-family:var(--f-display);font-size:19px;color:var(--ink)}.prose table{width:100%;border-collapse:collapse;font-size:15px}.prose th{text-align:left;font-weight:400;color:var(--ink-3);font-family:var(--f-label);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:.6rem 0;border-bottom:1px solid var(--rule-2)}.prose td{padding:.6rem 0;border-bottom:1px solid var(--rule);color:var(--ink-2);vertical-align:top}.callout{background:var(--card);border-left:2px solid var(--beni);padding:1.1rem 1.3rem;font-size:15.5px;color:var(--ink-2)}.callout strong{display:block;color:var(--ink);font-family:var(--f-label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.4rem}.faq{border-top:1px solid var(--rule)}.faq details{border-bottom:1px solid var(--rule);padding:1rem 0}.faq summary{cursor:pointer;font-family:var(--f-display);font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--beni);font-family:var(--f-data)}.faq details[open] summary:after{content:"−"}.faq p{margin-top:.7rem;color:var(--ink-2);font-size:15.5px;max-width:66ch}.pdp{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:0;gap:0}.pdp .gal{border-right:1px solid var(--rule)}.pdp .strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule)}.pdp .strip .shot{border-right:1px solid var(--rule)}.pdp .strip .shot:last-child{border-right:0}.pdp .info{padding:clamp(1.5rem,3.5vw,2.6rem);display:flex;flex-direction:column;gap:1rem}.pdp h1{font-size:clamp(25px,3vw,35px)}.pdp .big{font-size:31px}.avail{font-family:var(--f-label);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ok)}.avail.out{color:var(--ink-3)}.opts{display:flex;gap:.5rem;flex-wrap:wrap}.opts button{font-family:var(--f-data);font-size:13px;padding:.6rem .95rem;background:transparent;border:1px solid var(--rule-2);color:var(--ink);cursor:pointer}.opts button[aria-pressed=true]{border-color:var(--ink);background:var(--washi-2)}table.spec{width:100%;border-collapse:collapse;font-size:14.5px}table.spec th{text-align:left;font-weight:400;color:var(--ink-3);padding:.5rem 0;width:40%}table.spec td{padding:.5rem 0;border-bottom:1px solid var(--rule)}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chips a{font-size:13.5px;text-decoration:none;color:var(--ink-2);border:1px solid var(--rule-2);padding:.4rem .85rem}.chips a:hover{border-color:var(--beni);color:var(--beni)}.shop{display:grid;grid-template-columns:210px 1fr;grid-gap:clamp(1.4rem,3vw,2.6rem);gap:clamp(1.4rem,3vw,2.6rem)}.filters{font-size:14px;position:-webkit-sticky;position:sticky;top:calc(var(--head-h) + 1rem);align-self:start}.filters .label{display:block;margin:1.4rem 0 .5rem}.filters .label:first-child{margin-top:0}.filters a{display:block;padding:.22rem 0;color:var(--ink-2);text-decoration:none}.filters a:hover{color:var(--beni)}.filters a.on{color:var(--ink);font-weight:600}.cart-table{width:100%;border-collapse:collapse}.cart-table td{padding:1rem 0;border-bottom:1px solid var(--rule);vertical-align:middle}.cart-table .thumb{width:84px}.qty{display:inline-flex;border:1px solid var(--rule-2)}.qty button{width:30px;height:32px;background:none;border:0;cursor:pointer;color:var(--ink)}.qty button,.qty span{font-family:var(--f-data)}.qty span{width:34px;display:grid;place-items:center;font-size:13px;border-inline:1px solid var(--rule-2)}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-family:var(--f-label);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}.field input,.field select,.field textarea{font-family:var(--f-body);font-size:15px;padding:.7rem .8rem;border:1px solid var(--rule-2);background:var(--card);color:var(--ink);border-radius:0}.field input:focus,.field textarea:focus{outline:2px solid var(--beni);outline-offset:-1px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.notice{padding:.9rem 1.1rem;font-size:14.5px;border-left:2px solid var(--ai);background:var(--card);color:var(--ink-2)}.notice.err{border-color:var(--beni)}.site-foot{background:var(--ai);color:#d8e3ec;padding:3rem 0 2.2rem;margin-top:4rem}.site-foot .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;grid-gap:2.4rem;gap:2.4rem}.site-foot .label{color:#8fa6b8;display:block;margin-bottom:.7rem}.site-foot a{display:block;text-decoration:none;font-size:14px;padding:.2rem 0;color:#d8e3ec}.site-foot a:hover{color:#f0b8a8}.site-foot p{font-size:14px;color:#a9bbc9;max-width:34ch}.site-foot .bottom{border-top:1px solid rgba(216,227,236,.18);margin-top:2.2rem;padding-top:1.1rem;font-size:12px;color:#8fa6b8;display:flex;flex-wrap:wrap;gap:1.2rem}.site-foot .bottom a{display:inline}.stack{display:flex;flex-direction:column}.gap-s{gap:.6rem}.gap-m{gap:1.1rem}.gap-l{gap:2rem}.muted{color:var(--ink-2)}.center{text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:960px){.feature,.form-grid,.grid-3,.grid-4,.method,.pdp,.shop,.site-foot .cols{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.panel{border-left:0;border-top:1px solid var(--rule);position:static}.steps{padding-right:0}.pdp .gal{border-right:0;border-bottom:1px solid var(--rule)}.filters{position:static}.site-nav,.tategaki{display:none}.site-nav.open{display:flex;flex-direction:column;position:absolute;top:var(--head-h);left:0;right:0;background:var(--card);border-bottom:1px solid var(--rule);padding:1.2rem clamp(1.1rem,4vw,3rem);gap:1rem}.menu-toggle{display:inline-flex}}@media (prefers-reduced-motion:reduce){.shot img{transition:none}}.banner{width:100%;height:clamp(240px,36vw,440px);overflow:hidden;background:var(--washi-2)}.banner img{width:100%;height:100%;object-fit:cover}@media (max-width:960px){.cart-layout,.set-box{grid-template-columns:1fr!important}}