:root{color-scheme:light;--ink:#142230;--muted:#607083;--line:#e0e6eb;--bg:#f7fafb;--accent:#075f83;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif}
a{color:var(--accent);text-underline-offset:3px}a:focus-visible{outline:3px solid #d48a23;outline-offset:3px;border-radius:3px}
header{background:#102738;color:#fff}header .wrap{padding-top:18px;padding-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:12px}header a{color:#fff;text-decoration:none;font-weight:700}.brand{letter-spacing:.04em}.header-small{font-size:14px;opacity:.8}
.wrap{max-width:1080px;padding:0 28px;margin:auto}.hero{padding:54px 0 32px}.eyebrow{color:var(--accent);font-size:14px;font-weight:700;letter-spacing:.06em}.hero h1{font-size:clamp(28px,5vw,42px);line-height:1.35;margin:8px 0 14px}.lead{font-size:18px;max-width:800px;margin:0 0 14px}.summary{font-size:15px;color:var(--muted);margin:10px 0 0}.notice{margin:20px 0 0;padding:15px 18px;background:#eef5f9;border-left:3px solid var(--accent);font-size:15px}
.region-nav{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:24px;scroll-margin-top:20px}.region-nav h2{font-size:21px;margin:0 0 14px}.pref-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.pref-link{padding:10px 8px;min-height:46px;border:1px solid var(--line);border-radius:7px;text-decoration:none;display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:15px;font-weight:600}.pref-link:hover{background:#eef5f9}.pref-link span{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.sections{margin-top:34px;margin-bottom:80px}.pref-section{scroll-margin-top:18px;margin-top:40px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:20px 26px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:2px solid #dce6ec;padding-bottom:12px}.section-heading h2{font-size:24px;margin:0}.count{font-size:15px;color:var(--muted);font-weight:400}.back-top{font-size:14px;white-space:nowrap}.store-list{padding:0;list-style:none;margin:0}.store{padding:13px 0;border-bottom:1px solid #edf0f2;display:flex;align-items:center;justify-content:space-between;gap:16px}.store:last-child{border-bottom:0}.store-info{min-width:0;display:flex;flex-direction:column;gap:2px}.store-name{font-size:16px;font-weight:650;overflow-wrap:anywhere}.store-city{font-size:14px;color:var(--muted)}.store-links{white-space:nowrap;font-size:14px;display:flex;gap:12px}.store-links.empty{color:#8895a0;font-size:13px}footer{background:#102738;color:#e1eaf0;padding:24px 0;font-size:14px}footer a{color:#e1eaf0}
@media(max-width:850px){.pref-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){.wrap{padding:0 16px}.hero{padding:32px 0 24px}.lead{font-size:16px}.region-nav{padding:17px 14px}.pref-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.pref-link{padding:10px 7px;font-size:14px;min-height:46px}.pref-link span{font-size:12px}.pref-section{padding:14px 16px;margin-top:24px}.section-heading h2{font-size:21px}.store{align-items:flex-start;flex-direction:column;gap:6px}.store-links{white-space:normal;gap:14px}.header-small{display:none}}
@media(max-width:360px){.pref-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Online shop shortcut and list */
.online-jump{margin:0 0 18px}.online-jump a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:14px 20px;background:#eaf4f8;border:1px solid #b7d2df;border-radius:12px;font-size:17px;font-weight:700;text-decoration:none}.online-jump a:hover{background:#deedf4}.online-jump span{font-size:14px;white-space:nowrap}.online-section{margin-top:0}.online-description{color:var(--muted);font-size:15px;margin:14px 0 4px}@media(max-width:620px){.online-jump a{padding:14px;font-size:16px}.online-jump span{font-size:13px}}
