.city-page{margin:0}.city-page main{max-width:900px;margin:auto}.city-page header{background:var(--bg)}.city-page h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(30px,4vw,48px);line-height:1.6;letter-spacing:.04em;margin:12px 0 24px}.city-page h2{font-size:24px;margin-bottom:18px}.breadcrumbs{font-size:12px;padding:28px 0;color:var(--muted)}.city-intro{padding:26px 0 30px}.city-intro>p:not(.eyebrow){max-width:65ch;font-size:14px}.city-photo{margin:0 0 30px;position:relative}.city-photo img{display:block;width:100%;max-height:400px;object-fit:cover}.city-photo figcaption{position:absolute;bottom:10px;right:12px;background:#0006;color:white;padding:2px 8px;font-size:10px}.article-nav{padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;gap:24px;flex-wrap:wrap;font-size:13px}.city-page section[id]{scroll-margin-top:130px;padding:40px 0;border-bottom:1px solid var(--border)}.city-page section>p{font-size:14px;color:var(--muted)}.city-page .city-card{border:1px solid var(--border);padding:28px;background:var(--surface);margin:24px 0}.city-page .city-head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}.city-page .country-tag{font-size:12px;margin-left:12px;color:var(--muted)}.city-page .index-pair{display:flex;gap:14px}.city-page .index-box{background:var(--accent-soft);padding:12px 20px;min-width:120px}.city-page .idx-label{display:block;font-size:10px}.city-page .idx-val{display:block;font-size:30px;font-weight:bold}.city-page .concern-table{width:100%;border-collapse:collapse;font-size:13px}.city-page .concern-table td{padding:12px 5px;border-bottom:1px solid var(--border)}.city-page .num{font-variant-numeric:tabular-nums}.region-list{padding-left:20px;font-size:13px}.region-list li{margin:18px 0}.preparation-list{padding-left:24px}.preparation-list li{padding:8px 0}.preparation-list h3{font-size:16px}.preparation-list p{font-size:14px;color:var(--muted)}.related-cities{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.related-cities a{display:flex;justify-content:space-between;padding:14px;border:1px solid var(--border);text-decoration:none;font-size:13px}.related-cities a:hover{background:var(--accent-soft)}.city-page footer{padding-bottom:30px}.city-detail-link{display:block;margin-top:18px;font-size:13px;font-weight:600}
@media(max-width:600px){.city-page header{padding:12px 0;gap:8px}.city-page header nav{gap:12px;width:100%}.city-page header .brand{font-size:21px!important}.city-page .related-cities{grid-template-columns:repeat(2,1fr)}.city-page .city-card{padding:16px}.city-page .concern-table{font-size:11px}.city-page .article-nav{gap:12px}.city-page h2{font-size:21px}.city-page section[id]{scroll-margin-top:145px}.city-page .index-box{padding:10px 16px}}
