:root{--ink:#152b35;--red:#951f2b;--line:#dfe4e5;--muted:#5f6c72}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.75 -apple-system,BlinkMacSystemFont,'Noto Sans JP',sans-serif}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #b27517;outline-offset:4px}.draft{background:var(--ink);color:white;text-align:center;padding:8px 16px;font-size:14px}header{height:98px;display:flex;align-items:center;gap:35px;max-width:1280px;margin:auto;padding:0 40px}.brand{display:flex;align-items:center;gap:16px;white-space:nowrap}.brand small{font-size:14px;writing-mode:vertical-rl}.brand span{font:bold 36px/1.3 'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.14em}nav{display:flex;align-items:center;gap:32px;margin-left:auto;font-size:14px}.phone{font-weight:600}.cart-open{border:1px solid var(--line);background:white;padding:10px 17px;border-radius:4px;font-size:14px}.cart-open b{background:var(--red);color:white;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;margin-left:8px}main{max-width:1280px;margin:auto;padding:0 40px}.intro{display:grid;grid-template-columns:1fr 1.2fr;min-height:470px;background:#f1f5f6;overflow:hidden}.intro-copy{padding:42px}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.08em;color:var(--red);margin:0 0 14px}h1,h2,h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif}h1{font-size:48px;line-height:1.45;letter-spacing:.06em;margin:0 0 20px}h2{font-size:30px;line-height:1.5;margin:0}h3{font-size:21px;margin:6px 0 10px}p{margin:0 0 16px}.intro-copy>p:not(.eyebrow){color:var(--muted)}.perks{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;margin:20px 0}.perks span{border-left:2px solid var(--red);padding-left:10px}.perks strong{display:block;color:var(--red)}.browse{display:inline-block;border-bottom:1px solid var(--ink);padding:3px 0;font-weight:600}.intro figure{margin:0;position:relative;min-width:0}.intro img{width:100%;height:100%;object-fit:cover;display:block}.intro figcaption{position:absolute;bottom:0;right:0;background:rgba(21,43,53,.85);color:white;padding:8px 18px;font-size:14px}.menu{padding:60px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.section-heading>p{font-size:14px;color:var(--muted);margin:0}.filters{display:flex;border-bottom:1px solid var(--line);margin-bottom:30px;gap:24px}.filters button{border:0;border-bottom:3px solid transparent;padding:14px 2px;background:none;color:var(--muted);font-weight:600}.filters .active{color:var(--red);border-bottom-color:var(--red)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 22px}.product{min-width:0}.product img{width:100%;aspect-ratio:1.3;object-fit:cover;display:block;background:#edf0f1}.product h3{font-size:23px;margin:13px 0 4px}.description{font-size:14px;color:var(--muted);min-height:48px;margin-bottom:10px}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.price{font-size:20px;font-weight:600}.price small{font-size:14px;font-weight:400}.add{font-size:14px;border:1px solid var(--red);color:var(--red);background:white;padding:7px 12px;border-radius:3px}.add:hover{background:var(--red);color:white}.note{font-size:14px;color:var(--muted);margin-top:22px}.rolls{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:10px 0}.rolls ul{list-style:none;padding:0;margin:0}.rolls li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:10px 0}.rolls small{color:var(--muted)}.guide{padding:40px;background:#f1f5f6}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:30px}.number{color:var(--red);font:24px Georgia,serif}.guide p{color:var(--muted);font-size:15px}.storage{border-top:1px solid #ccd5d8;margin-top:15px;padding-top:20px}.storage h3{font-size:18px}.storage p{margin:0}.store{display:flex;justify-content:space-between;align-items:center;padding:55px 0;gap:25px}.store p{color:var(--muted);font-size:15px;margin-top:14px}.store>a{font:32px Georgia,serif;white-space:nowrap}.store small{display:block;font:14px/2 sans-serif;text-align:center;color:var(--muted)}footer{max-width:1200px;margin:auto;padding:20px 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted);display:flex;justify-content:space-between}dialog{width:min(580px,calc(100% - 24px));max-height:88vh;padding:28px;border:none;border-radius:8px;color:var(--ink)}dialog::backdrop{background:#10253099}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:26px}.dialog-head button{background:none;border:0;font-size:30px}.cart-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:14px 0}.cart-row small{display:block;color:var(--muted)}.quantity{display:flex;align-items:center;gap:12px}.quantity button{width:32px;height:36px;line-height:1;border:1px solid var(--line);background:white;border-radius:3px}.methods{margin:24px 0;border:1px solid var(--line);padding:14px}.methods label{margin-right:16px}.summary-row{display:flex;justify-content:space-between}.total{font-size:22px;font-weight:bold;border-top:1px solid var(--line);margin-top:8px;padding-top:12px}.discount{color:var(--red)}.cart-info{font-size:14px;color:var(--muted);margin:20px 0}.call{display:block;background:var(--red);color:white;padding:13px;text-align:center;border-radius:4px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:10px 24px;background:var(--ink);color:white;border-radius:4px;opacity:0;pointer-events:none;font-size:14px;transition:opacity .2s;white-space:nowrap}#toast.show{opacity:1}@media(max-width:1000px){nav .phone{display:none}.grid{grid-template-columns:repeat(3,1fr)}.intro-copy{padding:30px}h1{font-size:40px}.product-bottom{flex-wrap:wrap}}@media(max-width:700px){header{height:80px;padding:0 18px;gap:12px}.brand{gap:8px}.brand span{font-size:28px}.brand small{font-size:12px}nav{display:none}.cart-open{margin-left:auto;padding:8px;font-size:13px}main{padding:0 16px}.draft{font-size:12px}.intro{display:flex;flex-direction:column}.intro-copy{padding:26px 24px}.intro h1{font-size:36px;margin-bottom:14px}.intro-copy>p{font-size:15px}.intro .perks{margin:14px 0}.intro figure{height:255px}.intro figcaption{font-size:12px}.menu{padding:36px 0}.section-heading{display:block}.section-heading>p{margin-top:12px;font-size:12px}h2{font-size:26px}.filters{gap:12px}.filters button{font-size:14px;flex:1;padding:12px 0}.grid{grid-template-columns:repeat(2,1fr);gap:28px 12px}.product h3{font-size:20px}.description{font-size:13px;min-height:46px}.price{font-size:19px}.product-bottom{display:block}.add{display:block;width:100%;margin-top:8px;min-height:42px}.guide{padding:24px}.guide-grid{grid-template-columns:1fr;gap:12px}.guide-grid article{border-bottom:1px solid var(--line)}.store{display:block;padding:35px 8px}.store>a{font-size:29px;display:block;margin-top:24px}.store small{text-align:left}.rolls{grid-template-columns:1fr}.rolls li{font-size:15px}footer{margin:0 20px;font-size:12px}dialog{padding:20px}.cart-row{font-size:15px}.quantity{gap:8px}}

.brand-logo{display:block;width:146px;height:74px;object-fit:contain}.brand small{writing-mode:horizontal-tb;font-size:14px}@media(max-width:700px){.brand-logo{width:112px;height:57px}.brand small{display:none}}

/* Persistent shopping controls and compact mobile catalogue */
:root{--muted:#46545c}body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.cart-open{color:var(--red)}.filters{position:sticky;top:0;z-index:10;background:#fff;gap:22px;padding-top:4px;box-shadow:0 2px 0 #dfe4e5;overflow-x:auto;scrollbar-width:thin}.filters button{flex-shrink:0;white-space:nowrap}.product-bottom{display:grid;grid-template-columns:1fr;gap:4px}.pickup-price{font-size:14px;color:var(--red);font-weight:600}.pickup-price small{font-weight:400}.add{width:100%;margin-top:8px;min-height:44px}.photo{overflow:hidden;aspect-ratio:1.3;background:#edf0f1}.photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;transform:scale(1.055)}.storage{border-top:0;margin-top:15px;padding-top:20px}.store>a{background:var(--red);color:#fff;padding:16px 24px;border-radius:4px}.store small{color:#fff}.cart-bar{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;border-top:1px solid var(--line);padding:12px max(24px,calc((100vw - 1200px)/2)) calc(12px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #152b3510}.cart-bar>div{display:flex;align-items:center;gap:20px}.cart-bar strong{font-size:15px}.cart-bar span{font-size:22px;font-weight:700}.cart-bar button{border:0;border-radius:4px;background:var(--red);color:#fff;padding:11px 24px;font-weight:600}.delivery-notice{background:#f1f5f6;padding:16px;margin-top:18px;font-size:14px}.delivery-notice p{margin:8px 0 0}.delivery-notice button{border:1px solid var(--red);color:var(--red);background:white;padding:10px;margin-top:12px;min-height:44px}#toast{bottom:calc(100px + env(safe-area-inset-bottom))}dialog{z-index:30}.description{font-size:14px}.guide p{color:var(--muted)}@media(max-width:700px){.intro{display:grid;grid-template-columns:1.2fr 1fr;min-height:0}.intro-copy{padding:18px 14px}.intro .eyebrow{font-size:12px;margin-bottom:7px;letter-spacing:0}.intro h1{font-size:26px;margin:0 0 10px}.intro-copy>p:not(.eyebrow){font-size:14px;line-height:1.65}.intro-copy>p br{display:none}.intro figure{height:auto;min-height:240px}.intro figcaption{display:none}.intro .perks{display:block;font-size:12px;margin:10px 0}.perks span{display:block;margin:7px 0}.browse{font-size:14px}.menu{padding-top:24px}.section-heading{margin-bottom:10px}.section-heading .eyebrow{margin-bottom:6px}.section-heading h2{font-size:23px}.filters{gap:18px;margin-bottom:20px}.filters button{flex:0 0 auto;font-size:14px;padding:13px 2px}.cart-bar{padding-left:16px;padding-right:16px}.cart-bar>div{display:block}.cart-bar strong{display:block;font-size:13px}.cart-bar span{font-size:20px}.cart-bar button{font-size:14px;padding:11px 18px}.product h3{font-size:20px}.description{font-size:14px;min-height:72px}.product-bottom{display:grid}.add{margin-top:4px}.store>a{white-space:normal}.store small{text-align:left}html{scroll-padding-top:65px}}@media(max-width:360px){.intro{grid-template-columns:1fr}.intro figure{display:none}.filters{gap:14px}.filters button{font-size:13px}}

/* Restore the original opening composition. */
@media(max-width:700px){.intro{display:flex;flex-direction:column;min-height:0}.intro-copy{padding:26px 24px}.intro .eyebrow{font-size:14px;margin:0 0 14px;letter-spacing:.08em}.intro h1{font-size:36px;line-height:1.45;margin:0 0 14px}.intro-copy>p:not(.eyebrow){font-size:15px;line-height:1.75}.intro-copy>p br{display:inline}.intro figure{display:block;height:255px;min-height:0}.intro figcaption{display:block;font-size:12px}.intro .perks{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;margin:14px 0}.perks span{display:inline;margin:0}.browse{font-size:16px}.menu{padding-top:36px}.section-heading{margin-bottom:26px}.section-heading .eyebrow{margin-bottom:14px}.section-heading h2{font-size:26px}}

.area-details{margin:24px 0}.area-details h3{font-size:21px}.area-details details{background:white;border-bottom:1px solid var(--line);padding:14px 16px}.area-details summary{cursor:pointer;font-weight:600;color:var(--red)}.area-details p{margin:14px 0 0;line-height:2;overflow-wrap:anywhere}.area-field{margin:16px 0 24px}.area-field label{display:block;font-size:15px;margin-bottom:8px;font-weight:600}.area-field select{font:inherit;width:100%;max-width:100%;padding:12px 8px;border:1px solid #bcc6ca;border-radius:4px;background:white;color:var(--ink)}.area-field[hidden]{display:none}

.payment-methods{flex-direction:column;align-items:flex-start}.payment-methods label[hidden]{display:none}.payment-pending{color:#676767}

.rolls li{align-items:center}.rolls li>div{text-align:right;flex-shrink:0}.rolls .add{font-size:14px;padding:7px 10px}.rolls>.note{grid-column:1/-1;margin:0}
.order-form{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.order-form label{display:block;margin:12px 0;font-size:15px}.order-form input:not([type=checkbox]),.order-form textarea{display:block;width:100%;padding:10px;border:1px solid #88979e;border-radius:4px;font:inherit;font-size:16px;line-height:1.5;min-height:44px}.order-form h3{margin-top:22px}.order-form .consent{display:flex;gap:10px;align-items:flex-start}.consent input{margin-top:6px;min-width:20px;min-height:20px}.order-form a{text-decoration:underline}.call{width:100%;border:0;font:inherit;margin:12px 0;min-height:44px}.secondary-call{background:#fff;color:var(--red);border:1px solid var(--red)}#reviewText{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:15px;line-height:1.8;background:#f1f5f6;padding:14px}#editOrder,#retryPayment{padding:12px;min-height:44px;background:#fff;color:var(--red);border:1px solid var(--red);border-radius:4px;margin:8px 8px 8px 0}button:disabled{opacity:.55;cursor:default}#squareCard{margin-top:16px}#orderResult{white-space:pre-line;font-size:15px;color:var(--red)}[hidden]{display:none!important}.payment-methods label{display:block;margin:8px 0}.order-form .note{margin-top:10px}

.order-form select{width:100%;padding:12px;border:1px solid #88979e;border-radius:4px;background:white;color:var(--ink);font:inherit;font-size:16px;min-height:44px}.order-guide{margin:32px auto;padding:24px;max-width:1100px;background:#fff;border-top:1px solid var(--line)}.order-guide li{margin:10px 0}.order-guide a{color:var(--red)}#postalChoices button{display:block;text-align:left;font:inherit;padding:10px;margin:8px 0;min-height:44px;background:white;border:1px solid var(--line)}

.news-entry{display:block;margin:24px auto;padding:18px 22px;max-width:1100px;border:1px solid #dce1e4;border-left:4px solid #951f2b;background:#fffafa;color:#951f2b;text-decoration:none}.news-entry strong{display:block;font-size:18px}.news-entry span{display:block;font-size:14px;margin-top:4px;color:#5d6873}

.order-destinations{max-width:1180px;margin:40px auto;padding:0 24px}.order-destinations h2{font-size:clamp(24px,4vw,34px);margin:10px 0 24px}.order-destination-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.order-destination-grid>a{display:block;padding:28px;border:1px solid #d9cbb4;border-radius:12px;background:#fffdf8;color:#27221c;text-decoration:none}.order-destination-grid>a:nth-child(2){background:#28241e;color:#fff6df;border-color:#ad8d55}.order-destination-grid span{font-size:13px;letter-spacing:.08em}.order-destination-grid h3{font-size:21px;line-height:1.5;margin:12px 0}.order-destination-grid p{line-height:1.8;margin-bottom:22px}.order-destination-grid strong{display:block}.order-destination-grid a:hover{box-shadow:0 5px 18px #0002}.order-destination-grid a:focus-visible{outline:3px solid #a5782c;outline-offset:4px}@media(max-width:680px){.order-destinations{padding:0 16px}.order-destination-grid{grid-template-columns:1fr}.order-destination-grid>a{padding:23px}}
