:root{--c-bg: #fbf9f4;--c-bg-soft: #f4f0e6;--c-bg-soft2: #ebe6d8;--c-bg-card: #ffffff;--c-text: #1a1612;--c-text-soft: #5c5650;--c-border: #d8d2c4;--c-rule: #1a1612;--c-primary: #8b1818;--c-primary-dark: #5e0f0f;--c-accent: #34594a;--c-accent-soft: #e8eee9;--c-warn-bg: #fbf3df;--c-warn-border: #d9b56a;--c-info-bg: #f1ece0;--c-info-border: #c9bd9e;--maxw: 720px;--maxw-wide: 1000px;--radius: 0;--radius-card: 2px;--tap: 48px;--font-serif: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;--font-sans: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "Noto Sans JP", system-ui, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.95;color:var(--c-text);background:var(--c-bg);background-image:radial-gradient(circle at 20% 10%,rgba(216,210,196,.18) 0,transparent 50%),radial-gradient(circle at 80% 80%,rgba(216,210,196,.14) 0,transparent 50%);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;word-break:normal;overflow-wrap:anywhere;line-break:strict}img{max-width:100%;height:auto;display:block}a{color:var(--c-primary)}.site{display:flex;flex-direction:column;min-height:100vh}.main{flex:1 0 auto}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:16px}.container-wide{max-width:var(--maxw-wide)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--c-primary-dark);color:#fff;padding:10px 16px;z-index:100}.skip-link:focus{left:8px;top:8px}a:focus-visible,button:focus-visible,summary:focus-visible,.btn:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px;border-radius:6px}.nav a.is-active:focus-visible{outline-color:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header{position:sticky;top:0;z-index:50;background:#fbf9f4f7;-webkit-backdrop-filter:saturate(1.1) blur(6px);backdrop-filter:saturate(1.1) blur(6px);border-bottom:3px double var(--c-rule)}.header__inner{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;padding-block:12px 8px}.header__brand{font-family:var(--font-serif);font-weight:700;font-size:1.35rem;letter-spacing:.08em;color:var(--c-text);text-decoration:none;line-height:1.3;margin-right:auto}.header__brand small{display:block;font-family:var(--font-sans);font-weight:400;font-size:.68rem;letter-spacing:.05em;color:var(--c-text-soft);margin-top:2px}.nav{display:flex;flex-wrap:wrap;gap:0;width:100%;border-top:1px solid var(--c-border);margin-top:6px;padding-top:4px}.nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px 8px 0;margin-right:14px;border-radius:0;font-size:.85rem;font-weight:500;text-decoration:none;color:var(--c-text-soft);background:transparent;white-space:nowrap;border-bottom:2px solid transparent;transition:border-color .15s ease,color .15s ease}.nav a:hover{color:var(--c-text);border-bottom-color:var(--c-border)}.nav a.is-active{background:transparent;color:var(--c-primary);font-weight:700;border-bottom-color:var(--c-primary)}@media (min-width: 720px){.nav{width:auto;border-top:none;margin-top:0;padding-top:0}.nav a{margin-right:22px}}.hero{background:var(--c-bg-soft);padding-block:36px 24px;border-bottom:1px solid var(--c-border);position:relative}.hero:after{content:"";display:block;position:absolute;left:0;right:0;bottom:-1px;height:3px;background:linear-gradient(90deg,var(--c-primary) 0,var(--c-primary) 35%,transparent 35%)}h1{font-family:var(--font-serif);font-size:clamp(1.5rem,5.4vw,2.1rem);line-height:1.55;letter-spacing:.01em;margin:.3em 0 .6em;font-weight:700}h2{font-family:var(--font-serif);font-size:clamp(1.25rem,4.4vw,1.55rem);line-height:1.55;margin:2.2em 0 .8em;padding-left:12px;border-left:4px solid var(--c-primary);font-weight:700}h3{font-family:var(--font-serif);font-size:clamp(1.05rem,3.6vw,1.2rem);line-height:1.55;margin:1.7em 0 .5em;font-weight:700}p{margin:1em 0}section{margin-block:8px}.lead{font-size:1.02rem;color:var(--c-text);line-height:2;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);padding-block:12px;margin-top:14px}ul,ol{padding-left:1.3em}li{margin:.35em 0}.eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.18em;color:var(--c-primary);background:transparent;border:none;border-bottom:2px solid var(--c-primary);padding:2px 4px 4px;border-radius:0;text-transform:uppercase}.crumbs{font-size:.8rem;color:var(--c-text-soft);padding-block:8px 0}.crumbs a{color:var(--c-text-soft);display:inline-block;padding:6px 2px}.crumbs span[aria-current]{color:var(--c-text)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.1em -16px;padding-inline:16px}.table-scroll::-webkit-scrollbar{height:8px}.table-scroll::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:8px}table.compare{border-collapse:collapse;width:100%;min-width:560px;font-size:.9rem;background:var(--c-bg-card)}table.compare th,table.compare td{border:1px solid var(--c-border);padding:10px 12px;text-align:left;vertical-align:top;line-height:1.7}table.compare thead th{background:var(--c-text);color:var(--c-bg);font-size:.84rem;font-weight:600;letter-spacing:.05em;white-space:nowrap;border-color:var(--c-text)}table.compare tbody th{background:var(--c-bg-soft);white-space:nowrap;font-weight:700;font-family:var(--font-serif)}table.compare tbody tr:nth-child(2n) td{background:var(--c-bg-soft)}.scroll-hint{font-size:.76rem;color:var(--c-text-soft);margin:.2em 0 0}.cards{display:grid;gap:16px;grid-template-columns:1fr;margin:1.4em 0}.card{border:1px solid var(--c-border);border-top:3px solid var(--c-rule);border-radius:var(--radius-card);padding:18px;background:var(--c-bg-card);scroll-margin-top:120px}section[id]{scroll-margin-top:110px}.toc{border:1px solid var(--c-border);border-top:3px double var(--c-rule);border-bottom:3px double var(--c-rule);border-radius:0;background:transparent;padding:14px 16px;margin:1.4em 0}.toc__title{font-weight:700;margin:0 0 6px;font-size:.9rem}.toc ol{margin:0;padding-left:1.4em}.toc li{margin:.2em 0}.toc a{display:inline-block;padding:4px 0;min-height:0}.tldr{border:1.5px solid var(--c-primary);border-radius:var(--radius);background:#fff;padding:14px 16px;margin:1.1em 0}.tldr__title{font-weight:700;color:var(--c-primary-dark);margin:0 0 6px}.tldr ul{margin:0;padding-left:1.3em}.tldr li{margin:.3em 0}.card h3{margin-top:0}.card__photo{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:8px;margin-bottom:2px;background:var(--c-bg-soft)}.photo-credit{font-size:.68rem;color:var(--c-text-soft);text-align:right;margin:0 0 8px}.photo-credit a{color:var(--c-text-soft)}.tag{display:inline-block;font-size:.74rem;font-weight:700;padding:2px 9px;border-radius:999px;margin-bottom:6px}.tag--chain{background:var(--c-info-bg);color:var(--c-primary-dark);border:1px solid var(--c-info-border)}.tag--local{background:var(--c-accent-soft);color:#0f5d46;border:1px solid #b7e0d4}.card dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:10px 0;font-size:.9rem}.card dt{color:var(--c-text-soft);white-space:nowrap}.card dd{margin:0}.card dd a[href^="tel:"]{display:inline-block;padding:4px 0;font-weight:600}.store-public{margin-top:10px;padding:10px 12px;border:1px solid var(--c-border);border-radius:8px;background:var(--c-bg-soft);font-size:.82rem;color:var(--c-text-soft);line-height:1.7}.store-public__label{display:inline-block;font-weight:700;font-size:.72rem;color:var(--c-text);background:#fff;border:1px solid var(--c-border);border-radius:999px;padding:1px 8px;margin-bottom:4px}.store-public p{margin:4px 0 0}.md-list{margin:10px 0 0;padding:10px 12px;border-radius:8px;font-size:.84rem;line-height:1.7}.md-list--merit{background:var(--c-accent-soft);border:1px solid #b7e0d4}.md-list--demerit{background:var(--c-warn-bg);border:1px solid var(--c-warn-border)}.md-list__title{margin:0 0 4px;font-weight:700;font-size:.78rem}.md-list--merit .md-list__title{color:#0f5d46}.md-list--demerit .md-list__title{color:#8a5a00}.md-list ul{margin:0;padding-left:1.2em}.md-list li{margin:.3em 0;color:var(--c-text-soft)}.card-ref{border:1px dashed var(--c-border);border-radius:var(--radius);background:var(--c-bg-soft);padding:12px 14px;font-size:.9rem;margin:0}.editor-note{font-size:.84rem;color:var(--c-text);background:var(--c-info-bg);border:1px solid var(--c-info-border);border-radius:8px;padding:8px 12px;margin:8px 0 0;line-height:1.7}.editor-note__label{display:inline-block;font-weight:700;font-size:.72rem;color:var(--c-primary-dark);margin-right:8px}.caution-note{font-size:.82rem;color:var(--c-text-soft);background:var(--c-warn-bg);border:1px solid var(--c-warn-border);border-radius:8px;padding:8px 12px;margin:8px 0 0;line-height:1.7}.caution-note__label{display:inline-block;font-weight:700;font-size:.72rem;color:#8a5a00;margin-right:8px}@media (min-width: 720px){.cards{grid-template-columns:1fr 1fr}}.callout{border-radius:var(--radius);padding:14px 16px;margin:1.2em 0;border:1px solid var(--c-info-border);background:var(--c-info-bg)}.callout--reco{border-color:#b7e0d4;background:var(--c-accent-soft)}.callout--warn{border-color:var(--c-warn-border);background:var(--c-warn-bg)}.callout p:first-child{margin-top:0}.callout p:last-child{margin-bottom:0}.callout__title{font-weight:700;margin-bottom:4px}.persona{display:grid;gap:14px;grid-template-columns:1fr;margin:1.2em 0}.persona__item{border:1px solid var(--c-border);border-left:5px solid var(--c-primary);border-radius:var(--radius);padding:14px 16px;background:#fff}.persona__item.is-local{border-left-color:var(--c-accent)}.persona__head{font-weight:700;margin-bottom:4px}@media (min-width: 720px){.persona{grid-template-columns:1fr 1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:10px 20px;border-radius:999px;font-weight:700;font-size:.95rem;text-decoration:none;line-height:1.3}.btn--primary{background:var(--c-primary);color:#fff}.btn--primary:hover{background:var(--c-primary-dark)}.btn--ghost{background:#fff;color:var(--c-primary);border:1.5px solid var(--c-primary)}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin:1.1em 0}.faq{margin:1.2em 0}.faq details{border:1px solid var(--c-border);border-radius:var(--radius);margin-bottom:10px;background:#fff;overflow:hidden}.faq summary{cursor:pointer;list-style:none;padding:14px 44px 14px 16px;font-weight:700;position:relative;min-height:var(--tap);display:flex;align-items:center}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"＋";position:absolute;right:16px;color:var(--c-primary);font-weight:700}.faq details[open] summary:after{content:"－"}.faq .faq__body{padding:0 16px 14px;color:var(--c-text-soft)}.faq .faq__body p:first-child{margin-top:0}.steps{counter-reset:step;list-style:none;padding-left:0;margin:1.2em 0}.steps li{position:relative;padding:12px 14px 12px 56px;border:1px solid var(--c-border);border-radius:var(--radius);margin-bottom:10px;background:#fff}.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:12px;top:12px;width:30px;height:30px;border-radius:50%;background:var(--c-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.footer{margin-top:40px;background:var(--c-bg-soft);border-top:1px solid var(--c-border);padding-block:24px;font-size:.84rem;color:var(--c-text-soft)}.footer nav{display:flex;flex-wrap:wrap;gap:4px 8px;margin-bottom:14px}.footer nav a{display:inline-flex;align-items:center;min-height:44px;padding:6px 8px;color:var(--c-text-soft)}.footer__navtitle{font-size:.78rem;font-weight:700;color:var(--c-text-soft);margin:4px 0 6px}.footer__disclaimer{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px;font-size:.8rem;line-height:1.7}.footer__meta{font-size:.78rem}.muted{color:var(--c-text-soft)}.small{font-size:.82rem}.center{text-align:center}.divider{border:0;border-top:1px solid var(--c-border);margin:2em 0}.section-soft{background:var(--c-bg-soft);padding-block:4px 20px;margin-top:28px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
