:root{color-scheme:light;--md-primary:#1a1a1a;--md-on-primary:#ffffff;--md-primary-container:#efefef;--md-on-primary-container:#1a1a1a;--md-secondary:#4a6267;--md-on-secondary:#ffffff;--md-secondary-container:#ececee;--md-on-secondary-container:#1a1a1a;--md-tertiary:#525e7d;--md-on-tertiary:#ffffff;--md-tertiary-container:#e8e8ea;--md-on-tertiary-container:#1a1a1a;--md-error:#ba1a1a;--md-on-error:#ffffff;--md-error-container:#ffdad6;--md-on-error-container:#410002;--md-background:#ffffff;--md-on-background:#191c1d;--md-surface:#ffffff;--md-on-surface:#191c1d;--md-surface-variant:#f4f4f5;--md-on-surface-variant:#3f484a;--md-outline:#a1a1aa;--md-outline-variant:#e4e4e7;--md-shadow:#000000;--md-scrim:#000000;--md-inverse-surface:#2e3132;--md-inverse-on-surface:#eff1f1;--md-inverse-primary:#4fd8eb;--shape-xs:8px;--shape-sm:12px;--shape-md:16px;--shape-lg:24px;--shape-xl:32px;--shape-full:999px;--dur:0.22s;--ease:cubic-bezier(0.2,0,0,1);--surface-dim:var(--md-surface);--surface-container-low:color-mix(in srgb,var(--md-surface) 60%,var(--md-surface-variant));--surface-container:var(--md-surface-variant);--surface-container-high:color-mix(in srgb,var(--md-surface-variant) 70%,var(--md-outline-variant))}*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100%;background:var(--surface-dim);color:var(--md-on-surface);font-family:var(--font-body),"Hiragino Sans",sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}a{text-decoration:none}a,button{color:inherit}button{font-family:inherit;border:none;background:none;cursor:pointer;padding:0}.display{font-size:44px;line-height:1.15;letter-spacing:.02em}.display,.headline{font-family:var(--font-brand),serif;font-weight:700}.headline{font-size:26px;line-height:1.3}.title-lg{font-size:20px;font-weight:700;line-height:1.35}.title{font-size:16px;font-weight:700;line-height:1.4}.body-lg{font-size:16px;line-height:1.8}.body{font-size:14px;line-height:1.7}.label{font-size:12px;font-weight:500;line-height:1.4;letter-spacing:.03em}.shell{display:flex;min-height:100dvh}.rail{display:none;position:sticky;top:0;height:100dvh;width:88px;flex:none;flex-direction:column;align-items:center;gap:10px;padding:20px 0;background:var(--md-surface);border-right:1px solid var(--md-outline-variant)}.rail-brand{font-family:var(--font-brand);font-weight:700;font-size:13px;color:var(--md-primary);text-align:center;line-height:1.3;margin-bottom:14px;white-space:pre-line}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11.5px;font-weight:500;color:var(--md-on-surface-variant);width:100%;padding:2px 0}.nav-item .ic{width:56px;height:32px;border-radius:var(--shape-full);display:grid;place-items:center;transition:background var(--dur) var(--ease)}.nav-item .ic svg{width:22px;height:22px}.nav-item[data-on=true]{color:var(--md-on-surface)}.nav-item[data-on=true] .ic{background:var(--md-primary-container);color:var(--md-on-primary-container)}.nav-item:not([data-on=true]):hover .ic{background:color-mix(in srgb,transparent 92%,var(--md-on-surface))}.bottombar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:space-around;background:var(--md-surface);border-top:1px solid var(--md-outline-variant);padding:8px 0 max(10px,env(safe-area-inset-bottom))}.main{flex:1 1;min-width:0;padding-bottom:88px}@media (min-width:840px){.rail{display:flex}.bottombar{display:none}.main{padding-bottom:32px}}.hero{color:var(--md-on-surface);margin:16px;padding:40px 12px 28px;position:relative}.hero .leaf{display:none}@media (min-width:840px){.hero{margin:24px;padding:76px 52px 44px}}.btn-filled{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 28px;border-radius:var(--shape-full);background:var(--md-primary);color:var(--md-on-primary);font-size:15px;font-weight:700;transition:box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}.btn-filled:hover{box-shadow:0 2px 10px color-mix(in srgb,transparent 65%,var(--md-primary))}.btn-filled:active{transform:scale(.97)}.btn-filled.lg{height:56px;font-size:16px;padding:0 36px;border-radius:var(--shape-md);width:100%}.btn-tonal{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 18px;border-radius:var(--shape-full);background:var(--md-secondary-container);color:var(--md-on-secondary-container);font-size:13.5px;font-weight:700;transition:filter var(--dur) var(--ease),transform var(--dur) var(--ease)}.btn-tonal:hover{filter:brightness(.96)}.btn-tonal:active{transform:scale(.97)}.searchbar{display:flex;align-items:center;gap:10px;height:52px;padding:0 18px;background:var(--surface-container-high);border-radius:var(--shape-full);transition:box-shadow var(--dur) var(--ease)}.searchbar:focus-within{box-shadow:0 0 0 2px var(--md-primary)}.searchbar input{flex:1 1;min-width:0;border:none;background:none;outline:none;font-size:15px;font-family:inherit;color:var(--md-on-surface)}.searchbar input::placeholder{color:var(--md-on-surface-variant)}.chiprow{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px}.chiprow::-webkit-scrollbar{display:none}.chip{flex:none;display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 15px;border-radius:10px;border:1px solid var(--md-outline);font-size:13.5px;font-weight:500;color:var(--md-on-surface-variant);transition:all var(--dur) var(--ease);background:transparent}.chip[data-on=true]{background:var(--md-secondary-container);color:var(--md-on-secondary-container);border-color:transparent;font-weight:700}.chip:not([data-on=true]):hover{background:color-mix(in srgb,transparent 94%,var(--md-on-surface))}.grid{display:grid;gap:12px;padding:4px 16px 32px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:600px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1000px){.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:4px 24px 48px}}@media (min-width:1400px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.card{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:var(--shape-lg);overflow:hidden;cursor:pointer;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);text-align:left}.card:hover{transform:translateY(-3px);box-shadow:0 8px 24px color-mix(in srgb,transparent 88%,var(--md-shadow))}.card:active{transform:scale(.98)}.card .ph{position:relative;aspect-ratio:1;background:var(--surface-container-high)}.card .ph img{width:100%;height:100%;object-fit:cover}.card .meta{padding:12px 14px 14px}.badge{position:absolute;font-size:11px;font-weight:700;letter-spacing:.03em;padding:4px 10px;border-radius:var(--shape-full)}.badge.size{top:10px;left:10px;background:rgba(0,0,0,.55);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sku-line{display:flex;align-items:center;justify-content:space-between;gap:6px}.sku{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:17px;font-weight:800;letter-spacing:.02em}.price{font-size:14px;font-weight:700;color:var(--md-primary)}.card .ttl{margin:5px 0 0;font-size:12px;line-height:1.55;color:var(--md-on-surface-variant);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}.caro{display:flex;gap:12px;overflow-x:auto;padding:4px 16px 12px;scroll-snap-type:x mandatory;scrollbar-width:none}.caro::-webkit-scrollbar{display:none}.caro .slide{flex:none;width:min(72vw,300px);scroll-snap-align:start;border-radius:var(--shape-xl);overflow:hidden;position:relative;cursor:pointer;aspect-ratio:4/3;background:var(--surface-container-high)}.caro .slide img{width:100%;height:100%;object-fit:cover}.caro .slide .cap{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;background:linear-gradient(transparent,rgba(0,0,0,.62));color:#fff;font-size:14px;font-weight:700;font-family:ui-monospace,Menlo,monospace}@media (min-width:840px){.caro{padding:4px 24px 16px}.caro .slide{width:320px}}.scrim{position:fixed;inset:0;z-index:50;background:color-mix(in srgb,transparent 55%,var(--md-scrim));display:flex;align-items:flex-end;justify-content:center;animation:fadein .18s var(--ease)}.sheet{background:var(--surface-container-low);width:100%;max-height:92dvh;overflow-y:auto;border-radius:var(--shape-xl) var(--shape-xl) 0 0;animation:rise .26s var(--ease)}@media (min-width:840px){.scrim{align-items:center}.sheet{width:880px;max-height:86dvh;border-radius:var(--shape-xl)}.sheet-cols{display:grid;grid-template-columns:1.1fr 1fr;gap:0}}.handle{width:36px;height:4px;border-radius:2px;background:var(--md-outline);margin:10px auto 2px}@media (min-width:840px){.handle{display:none}}.gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery::-webkit-scrollbar{display:none}.gallery img{width:100%;flex:none;aspect-ratio:1;object-fit:cover;scroll-snap-align:center}@media (min-width:840px){.gallery{border-radius:var(--shape-lg);margin:20px 0 20px 20px;overflow:hidden auto}}.dots{display:flex;gap:6px;justify-content:center;margin-top:10px}.dots i{width:6px;height:6px;border-radius:3px;background:var(--md-outline);transition:all var(--dur) var(--ease);font-style:normal}.dots i[data-on=true]{width:18px;background:var(--md-primary)}.copychip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px;border-radius:10px;border:1.5px solid var(--md-primary);color:var(--md-primary);font-size:13px;font-weight:700;transition:all var(--dur) var(--ease)}.copychip[data-done=true]{background:var(--md-primary);color:var(--md-on-primary)}.snackbar{position:fixed;left:50%;bottom:96px;z-index:60;transform:translateX(-50%) translateY(20px);opacity:0;visibility:hidden;background:var(--md-inverse-surface);color:var(--md-inverse-on-surface);font-size:14px;padding:13px 22px;border-radius:var(--shape-xs);transition:transform .25s var(--ease),opacity .25s var(--ease),visibility 0s .25s;pointer-events:none;box-shadow:0 4px 16px rgba(0,0,0,.25)}.snackbar[data-show=true]{transform:translateX(-50%) translateY(0);opacity:1;visibility:visible;transition-delay:0s}@media (min-width:840px){.snackbar{bottom:32px}}.howto{margin:12px 16px;padding:16px 18px;background:var(--surface-container-low);color:var(--md-on-surface-variant);border:1px solid var(--md-outline-variant);border-radius:var(--shape-lg);font-size:13px;line-height:1.9}@media (min-width:840px){.howto{margin:16px 24px;display:flex;gap:28px;align-items:center}}.howto .step{display:flex;align-items:center;gap:8px}.howto .n{flex:none;width:24px;height:24px;border-radius:50%;background:var(--md-primary);color:var(--md-on-primary);display:grid;place-items:center;font-size:12px;font-weight:700}.shelf-row{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 16px 14px;scrollbar-width:none}.shelf-row[data-rows="3"]{display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,auto);grid-auto-columns:148px;row-gap:10px}@media (min-width:840px){.shelf-row[data-rows="3"]{grid-auto-columns:172px;row-gap:12px}}.shelf-row[data-rows="3"] .shelf-card{width:auto}.shelf-row::-webkit-scrollbar{display:none}@media (min-width:840px){.shelf-row{padding:2px 24px 18px;gap:12px}}.shelf-card{flex:none;width:148px;scroll-snap-align:start;text-align:left;background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:var(--shape-md);overflow:hidden;cursor:pointer;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}@media (min-width:840px){.shelf-card{width:172px}}.shelf-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px color-mix(in srgb,transparent 90%,var(--md-shadow))}.shelf-card:active{transform:scale(.97)}.shelf-card .ph{aspect-ratio:1;background:var(--surface-container-high)}.shelf-card .ph img{width:100%;height:100%;object-fit:cover}.shelf-card .cap{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:8px 10px}.shelf-badge{font-size:10.5px;font-weight:800;letter-spacing:.06em;background:var(--md-primary);color:var(--md-on-primary);padding:3px 8px;border-radius:var(--shape-full)}@keyframes fadein{0%{opacity:0}}@keyframes rise{0%{transform:translateY(48px);opacity:.6}}.section-head{display:flex;align-items:baseline;justify-content:space-between;padding:20px 16px 10px}@media (min-width:840px){.section-head{padding:26px 24px 12px}}.empty{grid-column:1/-1;text-align:center;color:var(--md-on-surface-variant);padding:70px 0}