:root{--ink:#24302c;--sub:#5e6d67;--line:#dde3df;--paper:#f8f9f6;--accent:#2c6a4c;--sea:#e6eef2}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:auto}body{background:var(--paper);color:var(--ink);margin:0;font:400 16px/1.85 Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}a{color:var(--accent)}h1,h2,h3{line-height:1.4}h1{margin:4px 0 12px;font-size:30px}.wrap{max-width:900px;margin:0 auto;padding:0 20px}.site-head{padding:10px 20px;font-size:14px;font-weight:700}.site-head a{color:var(--ink);text-decoration:none}.breadcrumb{color:var(--sub);flex-wrap:wrap;gap:0 6px;margin:0;padding:0 0 6px;font-size:12px;list-style:none;display:flex}.breadcrumb li+li:before{content:"›";margin-right:6px}.breadcrumb a{color:var(--sub)}.breadcrumb-bottom{border-top:1px solid var(--line);margin-top:32px;padding-top:12px}.lead{margin:0 0 12px;font-size:17px}.note{color:var(--sub);font-size:13px;line-height:1.7}.town-map{margin:14px 0 0}.modes{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.mode{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:6px 14px;font-size:14px}.mode:hover{border-color:var(--accent)}.mode[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:700}.town-search{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.town-search label{font-size:14px;font-weight:700}.town-search input{border:1px solid var(--line);max-width:340px;font:inherit;border-radius:8px;flex:200px;padding:7px 12px}.map-box{aspect-ratio:1/.9;background:var(--sea);border-radius:10px;max-width:100%;margin:0 auto;position:relative;overflow:hidden}.map-box svg{width:100%;height:100%;display:block}.map-box path[data-c]{stroke:none;cursor:pointer;outline:none;transition:fill .45s}.map-box path[data-c]:focus-visible{stroke:#111;stroke-width:1.4px}.town-mark{fill:#ffd21f;stroke:#111;stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:none}.town-border{vector-effect:non-scaling-stroke}.town-pop{z-index:2;color:#fff;text-align:center;white-space:nowrap;pointer-events:none;background:#16211c;border-radius:8px;gap:0;padding:5px 12px;font-size:13px;line-height:1.5;display:grid;position:absolute;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 2px 8px #00000059}.town-pop strong{font-size:16px}.town-pop.flip{transform:translate(-50%,8px)}.town-pop.left{transform:translate(-100%,calc(-100% - 10px))}.town-pop.right{transform:translateY(calc(-100% - 10px))}.town-pop.flip.left{transform:translate(-100%,8px)}.town-pop.flip.right{transform:translateY(8px)}.town-pop[hidden],.town-tip[hidden]{display:none}.town-tip{z-index:3;color:#fff;pointer-events:none;background:#16211ce0;border-radius:4px;padding:1px 8px;font-size:13px;position:absolute}.map-tools{z-index:2;gap:6px;display:grid;position:absolute;top:10px;right:10px}.map-tools button{border:1px solid var(--line);min-width:42px;height:38px;color:var(--ink);font:inherit;cursor:pointer;background:#fffffff2;border-radius:8px;padding:0 6px;font-size:14px;font-weight:700}.town-choice{border:1px solid var(--accent);color:var(--accent);font:inherit;cursor:pointer;background:#fff;border-radius:999px;margin:4px 6px 0 0;padding:3px 12px;font-size:14px;font-weight:700}.map-box path[data-c]:hover{filter:brightness(1.14)}.town-border{fill:none;stroke:#fff;stroke-width:.7px;pointer-events:none}.map-load{color:var(--sub);place-items:center;margin:0;display:grid;position:absolute;inset:0}.lab{fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#0000008c;stroke-width:4px;pointer-events:none;font:700 22px sans-serif}.lab.small{stroke-width:3px;font-size:14px}.town-info{border-left:4px solid var(--accent);background:#fff;border-radius:4px;min-height:3.6em;margin:10px 0 0;padding:10px 14px}@media (prefers-reduced-motion:reduce){.map-box path[data-c]{transition:none}}.prose h2{border-bottom:2px solid var(--accent);margin:36px 0 12px;padding-bottom:6px;font-size:23px}.prose h3{margin:22px 0 6px;font-size:18px}.prose p{margin:0 0 12px}.scroll{overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;vertical-align:top;padding:8px 10px}td.wrap-cell{white-space:normal;min-width:14em}.orig{margin:0 0 14px}.orig img{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:auto;display:block}.orig figcaption{flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:8px;display:flex}.zoom-link{background:var(--accent);color:#fff;border-radius:999px;padding:7px 18px;font-weight:700;text-decoration:none;display:inline-block}.zoom-link:hover{filter:brightness(1.1)}.quick{flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.quick a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 14px;text-decoration:none;display:inline-block}.sources{font-size:14px}.adsense{margin:24px 0}.score{margin:8px 0 2px;font-size:18px}.score strong{color:var(--accent);font-size:36px}.per{flex-wrap:wrap;gap:4px 14px;margin:0 0 10px;padding:0;font-size:14px;list-style:none;display:flex}.coloring .tap{cursor:pointer}.last{z-index:2;color:#fff;background:#16211c;border-radius:6px;margin:0 0 6px;padding:6px 12px;font-weight:700;position:sticky;top:0}.actions{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.act{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:8px 18px;font-weight:700}.act.primary{border-color:var(--accent);background:var(--accent);color:#fff}.sub-h{margin:18px 0 4px;font-size:18px}.page-end{padding-bottom:48px}.banners{flex-wrap:wrap;justify-content:center;gap:14px;margin:28px 0 0;padding:0;list-style:none;display:flex}.banners img{border-radius:10px;width:240px;height:auto;display:block}.home{color:var(--ink);flex-direction:column;align-items:center;gap:6px;margin-top:28px;font-size:13px;text-decoration:none;display:flex}.home img{border-radius:50%}.share{justify-content:center;align-items:center;gap:10px;margin:32px 0 0;display:flex}.share-title{color:var(--sub);letter-spacing:.1em;font-size:12px;font-weight:700}.share-btn{color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.share-btn.x{background:#111}.share-btn.facebook{background:#1877f2}.share-btn.line{background:#06c755}@media (width<=700px){h1{font-size:25px}th,td{padding:7px 6px;font-size:14px}.map-tools{gap:4px;display:flex;top:6px;right:6px}.map-tools button{min-width:32px;height:30px;padding:0 5px;font-size:12px}}
