:root{--font-body: "Noto Sans SC", "Noto Sans JP", "M PLUS Rounded 1c", -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Yu Gothic", "Microsoft YaHei", sans-serif;--font-display: "Noto Sans SC", "M PLUS Rounded 1c", "Hiragino Sans", "Microsoft YaHei", sans-serif;--font-jp: "M PLUS Rounded 1c", "Noto Sans JP", "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif;--font-round: "M PLUS Rounded 1c", "Hiragino Maru Gothic ProN", "Noto Sans JP", sans-serif;--cat-tint: var(--accent-soft);--cat-ink: var(--accent-ink);color-scheme:light;--bg: #f7f1e6;--paper: #fdf8ef;--card: #fff;--ink: #2b2320;--muted: #76695d;--line: #e6daca;--accent: #e0782b;--accent-ink: #8a3f0a;--accent-soft: #fbe7d3;--btn: #b5560f;--btn-ink: #fff;--indigo: #3b5a9a;--indigo-ink: #2b4680;--indigo-soft: #dee6f6;--tint1: #fbe7d3;--tint2: #dee6f6;--tint3: #e4efd8;--tint4: #f7dee5;--shadow: 0 1px 2px rgb(60 40 20 / 6%), 0 12px 32px -16px rgb(60 40 20 / 25%);--focus: #b5560f}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #1b1714;--paper: #221d19;--card: #2b2521;--ink: #f4ece0;--muted: #ac9e8f;--line: #3b332c;--accent: #f0954b;--accent-ink: #ffc89a;--accent-soft: #48301c;--btn: #f0954b;--btn-ink: #1b1714;--indigo: #8faae0;--indigo-ink: #b9cbf2;--indigo-soft: #2a3450;--tint1: #48301c;--tint2: #2a3450;--tint3: #2e3d26;--tint4: #4a2a36;--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 12px 32px -16px rgb(0 0 0 / 60%);--focus: #ffc89a}}:root[data-theme=dark]{color-scheme:dark;--bg: #1b1714;--paper: #221d19;--card: #2b2521;--ink: #f4ece0;--muted: #ac9e8f;--line: #3b332c;--accent: #f0954b;--accent-ink: #ffc89a;--accent-soft: #48301c;--btn: #f0954b;--btn-ink: #1b1714;--indigo: #8faae0;--indigo-ink: #b9cbf2;--indigo-soft: #2a3450;--tint1: #48301c;--tint2: #2a3450;--tint3: #2e3d26;--tint4: #4a2a36;--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 12px 32px -16px rgb(0 0 0 / 60%);--focus: #ffc89a}[data-category=shopping],[data-category=work]{--cat-tint: var(--tint1);--cat-ink: var(--accent-ink)}[data-category=dining],[data-category=health]{--cat-tint: var(--tint4);--cat-ink: var(--accent-ink)}[data-category=transport],[data-category=school]{--cat-tint: var(--tint2);--cat-ink: var(--indigo-ink)}[data-category=delivery],[data-category=civic]{--cat-tint: var(--tint3);--cat-ink: var(--ink)}*{box-sizing:border-box}html{scroll-padding-top:88px}body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.6 var(--font-body);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:var(--accent-ink);text-decoration:none}a:hover{color:var(--accent)}button{cursor:pointer;color:inherit}button:disabled{cursor:wait}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}::selection{background:var(--accent-soft)}h1,h2,h3,h4,p{margin-top:0}img,svg{max-width:100%}ruby{ruby-position:over}rt{font-size:.5em;font-weight:500;letter-spacing:0;color:var(--muted)}[data-ruby=off] rt{display:none}input::placeholder{color:var(--muted)}.container{width:100%;max-width:1160px;margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.15em;color:var(--muted)}.muted{color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700;line-height:1.5;white-space:nowrap}.pill-cat{background:var(--cat-tint);color:var(--cat-ink)}.pill-outline{border:1px solid var(--line);color:var(--muted)}.pill-indigo{background:var(--indigo-soft);color:var(--indigo-ink)}.pill-accent{background:var(--accent-soft);color:var(--accent-ink)}.btn,.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-weight:700;transition:border-color .2s,filter .2s}.btn{padding:10px 18px;border:0;border-radius:12px;background:var(--btn);color:var(--btn-ink);font-size:.9375rem}.btn:hover{color:var(--btn-ink);filter:brightness(1.08)}.btn-outline{padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font-size:.875rem}.btn-outline:hover{border-color:var(--accent);color:var(--accent-ink)}.chip{display:inline-flex;align-items:center;min-height:36px;padding:5px 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font-size:.8125rem;font-weight:600}.chip:hover{border-color:var(--accent);color:var(--accent-ink)}.chip.active{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent-ink)}.chip-dashed{display:inline-flex;align-items:center;min-height:32px;padding:4px 12px;border:1px dashed var(--line);border-radius:999px;color:var(--ink);font-size:.8125rem}.chip-dashed:hover{border-color:var(--accent);color:var(--accent-ink)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.section-head h2{font-family:var(--font-display);font-weight:800;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;margin:0}.section-head p{margin:6px 0 0;color:var(--muted)}.section-head>span{font-size:.8125rem;color:var(--muted);font-weight:600}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.8125rem;color:var(--muted);padding-top:24px}.badge-num{display:inline-flex;align-items:center;justify-content:center;flex:none;font-family:var(--font-round);font-weight:800;font-size:.9375rem;line-height:1.4;color:var(--btn-ink);background:var(--btn);border-radius:12px;padding:4px 10px}.badge-num.indigo{color:var(--indigo-ink);background:var(--indigo-soft)}.text-link{color:var(--accent-ink);text-decoration:underline;text-underline-offset:4px}.link-button{border:0;background:transparent;color:var(--muted);font-size:.8125rem;padding:0;min-height:36px;cursor:pointer;white-space:nowrap}.link-button:hover{color:var(--accent-ink)}.empty-state{text-align:center;border:1px dashed var(--line);border-radius:20px;padding:48px 24px;background:var(--card)}.empty-state h1,.empty-state h2{font-family:var(--font-display);font-weight:800;font-size:1.25rem;margin-bottom:8px}.empty-state .btn,.empty-state .btn-outline{margin-top:8px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.prose{max-width:720px}.prose .breadcrumb{margin-bottom:clamp(16px,3vw,40px)}.prose h1{font-family:var(--font-display);font-weight:800;font-size:clamp(1.875rem,5vw,3.25rem);line-height:1.1;margin:8px 0 20px;text-wrap:balance}.prose h2{font-family:var(--font-display);font-weight:800;font-size:1.25rem;margin:36px 0 10px}.prose p,.prose li{font-size:1rem;line-height:1.8}.prose p{margin-bottom:14px;text-wrap:pretty}.prose .lead{font-size:1.0625rem}.prose a:not(.btn):not(.btn-outline){text-decoration:underline;text-underline-offset:4px}.prose .btn,.prose .btn-outline{margin:8px 8px 0 0}@media(max-width:767px){html{scroll-padding-top:124px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
