:root{--navy:#142a3b;--navy-raised:#203b50;--amber:#f2a43b;--amber-hover:#e89428;--canvas:#f6f4ef;--surface:#fffefc;--subtle:#eef1f3;--text:#19222b;--muted:#56616b;--link:#1769a6;--price:#9a3412;--border:#d5d8d8;--border-strong:#aab2b7;--focus:#2e75b6;--error:#b42318;--radius:6px;--on-navy:white;--transparent:transparent;--rating-star:#b56b00;--discount:#8a5a00;--ad-border:#8e9aa3;--review-heading:#fff3d7;--primary-border:#d98218;--backdrop:#09161f85;--card-raised:0 1px 2px #142a3b14,0 3px 10px #142a3b0f;--button-radius:4px;--dialog-radius:14px;--overlay:0 18px 48px #0a19243d;--radius-round:50%;--font-ui:"BIZ UDPGothic","Hiragino Kaku Gothic ProN","Yu Gothic UI",sans-serif;--font-brand:"Shippori Mincho B1","Yu Mincho",serif}*{box-sizing:border-box}html{color:var(--text);background:var(--canvas);font-family:var(--font-ui);scroll-padding-bottom:80px}body{min-width:0;margin:0}button,input{font:inherit}button,a,input{touch-action:manipulation}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.button{border:1px solid var(--border-strong);border-radius:var(--button-radius);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;padding:10px 16px}.button:hover{background:var(--subtle)}.button--primary{border-color:var(--primary-border);background:var(--amber);color:var(--navy);font-weight:700}.button--primary:hover{background:var(--amber-hover)}.button:disabled{cursor:not-allowed;opacity:.48}body:has(dialog[open]){overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.skip-link{z-index:100;background:var(--surface);padding:12px;position:fixed;top:-60px;left:8px}.skip-link:focus{top:8px}.site-header{background:var(--navy);color:var(--on-navy)}.header-main{grid-template-columns:172px minmax(260px,1fr) auto auto 92px;align-items:center;gap:8px;max-width:1280px;min-height:64px;margin:auto;padding:8px 0;display:grid}.brand{color:var(--on-navy);font:600 26px/1.2 var(--font-brand);text-decoration:none;position:relative}.brand:after{content:"";border-bottom:3px solid var(--amber);border-radius:50%;width:102px;height:8px;position:absolute;bottom:-4px;left:0;transform:rotate(-2deg)}.brand small{font:11px/1.2 var(--font-ui);display:block}.search{border-radius:var(--button-radius);border:3px solid #0000;grid-template-columns:auto minmax(0,1fr) 48px;min-width:0;display:grid}.search:focus-within{border-color:var(--amber)}.search select{border:0;border-right:1px solid var(--border);color:#2e3840;background:#e6e8ea;border-radius:3px 0 0 3px;width:104px;height:42px;padding:0 28px 0 10px}.search input{border:0;border-radius:0;width:100%;min-width:0;height:42px;padding:0 14px;font-size:16px}.search select:focus,.search input:focus,.search__submit:focus{outline:none}.search__submit{background:var(--amber);width:48px;height:42px;color:var(--navy);cursor:pointer;border:0;border-radius:0 3px 3px 0;place-items:center;display:grid}.search__submit:hover{background:var(--amber-hover)}.search__submit svg{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;width:24px}.header-meta{min-height:48px;color:var(--on-navy);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;flex-direction:column;justify-content:center;align-items:flex-start;padding:5px 8px;text-decoration:none;display:flex}.header-meta:hover,.header-meta:focus-visible,.header-cart:hover,.header-cart:focus-visible{border-color:currentColor;outline:none}.header-meta small{font-size:11px;font-weight:400}.header-meta strong{font-size:13px}.header-cart{min-height:48px;color:var(--on-navy);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;grid-template-columns:34px auto;align-items:end;gap:2px;padding:5px 6px;display:grid;position:relative}.header-cart__icon{fill:none;stroke:currentColor;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round;width:34px}.header-cart__count{background:var(--amber);min-width:20px;height:20px;color:var(--navy);border-radius:999px;place-items:center;padding:0 5px;font-size:12px;font-weight:800;display:grid;position:absolute;top:0;left:25px}.header-cart strong{font-size:13px}.category-nav{background:var(--navy-raised);min-height:40px;padding-inline:max(0px,50% - 640px)}.category-nav__inner{gap:2px;min-width:0;display:flex;overflow-x:auto}.category-nav button{min-height:44px;color:var(--on-navy);background:var(--transparent);border:0;flex:none;padding:0 12px;font-weight:700}.category-nav button[aria-pressed=true]{-webkit-text-decoration:underline 3px var(--amber);text-decoration:underline 3px var(--amber);text-underline-offset:7px}.main{max-width:1280px;margin:auto;padding:28px 0 48px}.intro{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;padding:10px 24px}.intro h1{margin:0;font-size:28px;line-height:1.4}.intro p{color:var(--muted);margin:0;font-size:14px}.results-head{justify-content:space-between;align-items:center;min-height:44px;display:flex}.results-head h2{margin:0;font-size:18px}.results-count{color:var(--muted)}.grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;display:grid}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.product-card:hover{box-shadow:var(--card-raised)}.product-card__detail{text-align:left;background:var(--transparent);min-width:0;color:inherit;cursor:pointer;border:0;padding:0}.product-card h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:3em;margin:8px 0 0;font-size:16px;line-height:1.5;display:-webkit-box;overflow:hidden}.product-image{aspect-ratio:1;border-radius:var(--button-radius);background:var(--subtle);display:block;overflow:hidden}.product-image img{object-fit:cover;width:100%;height:100%;display:block}.rating{color:var(--link);font-size:14px}.rating__stars{color:var(--rating-star);letter-spacing:-1px}.price-block{flex-direction:column;justify-content:flex-end;min-height:62px;display:flex}.compare{color:var(--muted);justify-content:space-between;gap:8px;font-size:13px;display:flex}.compare strong{color:var(--discount)}.price{color:var(--price);font:700 21px/1.3 var(--font-brand);font-variant-numeric:tabular-nums}.tax{color:var(--muted);font-size:13px}.product-card__add{width:100%;margin-top:auto}.empty{border:1px solid var(--border);background:var(--surface);text-align:center;padding:32px}.empty button{margin-top:12px}.ad-row{background:var(--subtle);border:1px solid var(--ad-border);grid-column:1/-1;width:100%;min-width:250px;min-height:0;margin-block:24px}.site-footer{background:var(--navy);max-width:1280px;color:var(--on-navy);border-radius:var(--radius);justify-content:space-between;gap:24px;margin:0 auto 20px;padding:18px 24px;display:flex}.site-footer a{color:var(--on-navy);margin-left:16px}.dialog{border-radius:var(--dialog-radius);background:var(--surface);width:min(960px,100% - 32px);max-height:calc(100dvh - 32px);box-shadow:var(--overlay);border:0;padding:0}.dialog::backdrop{background:var(--backdrop)}.dialog__inner{max-height:calc(100dvh - 32px);padding:28px;overflow:auto}.dialog__close{width:44px;min-height:44px;padding:0;font-size:24px;position:absolute;top:16px;right:16px}.detail__top{grid-template-columns:minmax(260px,42%) 1fr;gap:32px;padding-right:48px;display:grid}.detail h2{margin:0 0 20px;font-size:26px}.detail .price-block{margin:16px 0}.detail__description{border-top:1px solid var(--border);margin-top:24px;padding-top:18px}.reviews h3{background:var(--review-heading);padding:8px 12px}.review{border-bottom:1px solid var(--border);padding:12px 0}.review h4,.review p{margin:3px 0}.review__head{justify-content:space-between;gap:12px;display:flex}.cart-dialog{width:min(480px,100% - 32px);margin-right:16px}.cart-dialog h2{margin-top:0}.cart-line{border-bottom:1px solid var(--border);grid-template-columns:72px 1fr;gap:12px;padding:16px 0;display:grid}.cart-line .product-image{width:72px}.cart-line h3{margin:0;font-size:16px}.quantity{align-items:center;gap:12px;margin-top:8px;display:flex}.quantity button{min-width:44px;min-height:44px}.quantity__delete{margin-left:auto}.cart-summary{grid-template-columns:1fr auto;gap:8px;margin:20px 0;display:grid}.cart-summary strong{font-size:20px}.toast{z-index:40;border-radius:var(--button-radius);background:var(--navy);color:var(--on-navy);padding:12px 18px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@media (width<=1100px){.header-main,.main{margin-inline:24px}.header-main{grid-template-columns:154px minmax(240px,1fr) auto auto 82px}.header-meta small{display:none}.category-nav{padding-inline:12px 0}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer{margin-inline:24px}}@media (width<=760px){.header-main{grid-template-columns:1fr auto;min-height:116px;margin:0 12px}.search{grid-area:2/1/auto/-1}.search select{width:88px}.header-meta{display:none}.header-cart{grid-area:1/2}}@media (width<=700px){.category-nav{padding:0;display:block}.category-nav__inner{padding-inline:4px}.main{margin-inline:12px}.intro{padding:12px 16px}.intro h1{font-size:22px}.main{padding-top:24px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-card{padding:10px}.product-card h2{-webkit-line-clamp:3;min-height:4.5em}.dialog,.cart-dialog{border-radius:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;inset:0}.dialog__inner{max-height:100dvh;padding:20px 16px 88px}.detail__top{padding-right:0;display:block}.detail h2{margin-top:18px;padding-right:50px}.site-footer{flex-direction:column;margin-inline:12px}.site-footer a{margin:0 12px 0 0}}@media (width<=359px){.grid{grid-template-columns:1fr}.brand{font-size:21px}.header-link{padding-inline:9px}}
