:root{font-family:system-ui,-apple-system,Noto Sans JP,sans-serif;color:#243e38;background:#f7f8f4;line-height:1.8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#17654f;text-underline-offset:4px}header,main,footer{max-width:1100px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #dce5dc}nav{display:flex;gap:22px;font-size:14px}.brand{font-size:22px;font-weight:800;text-decoration:none;white-space:nowrap}.brand span{font-weight:500}main{min-height:65vh}h1{font-size:clamp(28px,5vw,52px);line-height:1.45;letter-spacing:.02em}h2{font-size:24px;margin-top:40px}h3{font-size:18px}.hero{padding:45px 0 40px;max-width:780px}.eyebrow{color:#437361;font-size:13px;letter-spacing:.12em;font-weight:700}.lead{font-size:18px;color:#52665e}.panel{padding:28px;background:#fff;border:1px solid #dce5dc;border-radius:16px;margin:24px 0}.muted,.small{color:#617168}.small{font-size:13px}.notice{background:#edf3e8;padding:16px 20px;border-left:3px solid #779566}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px}.region{display:block;background:#fff;border:1px solid #dce5dc;border-radius:10px;padding:16px;text-decoration:none}.region:hover{border-color:#17654f;background:#edf3e8}.region small{display:block;color:#65776d}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.number{font-size:13px;color:#487963;font-weight:700}input,select,button{font:inherit;padding:12px;border:1px solid #a8bcb0;border-radius:8px;max-width:100%;background:#fff}input[type=search]{width:100%}button,.button{display:inline-block;background:#17654f;color:#fff;border:0;text-decoration:none;padding:12px 24px;border-radius:8px}button:disabled{background:#dce5dc;color:#53645a}label{display:block;margin-bottom:8px}.fields{display:flex;gap:14px;align-items:end;flex-wrap:wrap}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:14px 8px;border-bottom:1px solid #dce5dc;text-align:left}.table-wrap{overflow-x:auto}footer{border-top:1px solid #dce5dc;margin-top:50px;padding-bottom:40px}.empty{padding:28px;text-align:center;border:1px dashed #adc2b3;border-radius:12px;color:#617168}output{display:block;margin-top:18px}[hidden]{display:none!important}@media(max-width:600px){header{align-items:start;flex-direction:column;padding:18px}main,footer{padding:18px}nav{gap:18px}.steps{grid-template-columns:1fr;gap:8px}.hero{padding:28px 0}.panel{padding:20px}.fields input{width:170px}}.breadcrumbs{flex-wrap:wrap;gap:10px}.jump-links{flex-wrap:wrap;background:#edf3e8;padding:18px;border-radius:10px}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.metric-value{font-size:44px;font-weight:800;line-height:1.4;margin:14px 0}.metric-value span{font-size:15px;margin-left:8px}.chart-panel{margin:28px 0;background:#fff;border:1px solid #dce5dc;border-radius:16px;padding:24px}.chart-panel svg{display:block;width:100%;height:auto}.legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px}.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}details{border-bottom:1px solid #dce5dc;padding:16px 0}summary{cursor:pointer;color:#17654f;font-weight:600}.chome-section{scroll-margin-top:20px;padding-top:8px}.chome-section h3{font-size:23px}.chome-section h3 small{font-size:13px;font-weight:400;margin-left:12px}.point-heading,.point-price{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}.tag{background:#edf3e8;padding:4px 10px;border-radius:5px;font-size:12px}.point-card h4{font-size:20px;margin:18px 0}.point-price strong{font-size:30px}.point-price small{font-size:13px;margin-left:8px}.point-details{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}.point-details div{border-top:1px solid #e5eae3;padding-top:10px}.point-details dt{font-size:12px;color:#617168}.point-details dd{margin:4px 0;font-size:14px}section[id]{scroll-margin-top:20px}@media(max-width:600px){.metric-grid,.point-details{grid-template-columns:1fr;gap:8px}.metric{margin:8px 0}.metric-value{font-size:38px}.chart-panel{padding:12px}.point-price{justify-content:flex-start;gap:10px}}.town-hero{padding:20px 0 6px;max-width:none}.town-hero h1{font-size:clamp(28px,4vw,44px);font-weight:900;margin:8px 0;line-height:1.3}.town-hero .eyebrow{margin:0}.town-hero .lead{margin:8px 0;font-weight:600}.town-hero .small{margin:6px 0}html{scroll-behavior:smooth}:root{font-weight:500}h1,h2,h3,h4{font-weight:800}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#overview h2{margin:12px 0;font-size:18px}#overview .metric{margin:0;padding:22px}#overview .metric .eyebrow{margin:0;letter-spacing:.02em}.metric-value{font-size:clamp(42px,5vw,64px);font-weight:900;line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:-.035em;margin:12px 0 8px}.metric-value span{font-weight:700;letter-spacing:0}.metric-tsubo{font-size:15px;margin:8px 0}.metric-tsubo strong{font-size:24px;font-weight:900;letter-spacing:-.02em}.point-price strong{font-size:38px;font-weight:900;font-variant-numeric:tabular-nums}.point-price>span:first-of-type{font-weight:800}#ranking tbody td:nth-child(3),#ranking tbody td:nth-child(4){font-weight:800;font-size:17px;font-variant-numeric:tabular-nums}#overview>.metric-grid+p{font-size:13px;line-height:1.6}a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a65b29;outline-offset:4px}@media(max-width:600px){.town-hero{padding:16px 0 4px}.town-hero h1{font-size:28px}.town-hero .lead{font-size:15px}.town-hero .small{font-size:11px}#overview .metric{padding:14px 12px}#overview .metric .eyebrow{font-size:11px}#overview .metric .small{font-size:10px;line-height:1.6;margin-bottom:0}.metric-grid{gap:10px}.metric-value{font-size:clamp(30px,9vw,42px);margin:10px 0 6px}.metric-value span{display:block;font-size:12px;margin:4px 0 0}.metric-tsubo{font-size:10px}.metric-tsubo strong{display:block;font-size:23px}.breadcrumbs{font-size:12px;gap:8px}.point-price strong{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.ranking-table{table-layout:fixed;line-height:1.5}.ranking-table th,.ranking-table td{padding:14px 8px;vertical-align:middle}.ranking-table thead th:nth-child(1){width:12%}.ranking-table thead th:nth-child(2){width:18%}.ranking-table thead th:nth-child(3){width:36%}.ranking-table thead th:nth-child(4){width:34%}.ranking-table .cell-sub{display:block;font-size:12px;font-weight:500;color:#617168;margin-top:4px}.ranking-table .rank-cell,.ranking-table tbody th a{white-space:nowrap}#ranking .ranking-table .price-cell{font-size:16px;font-weight:500}.ranking-table .price-cell strong{font-size:22px;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}.ranking-table .price-cell strong small{font-size:11px;font-weight:500;margin-left:3px}#ranking .ranking-table .evidence-cell{font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}@media(max-width:600px){#ranking .ranking-panel{padding:16px 12px}.ranking-panel h3{margin:0 0 14px;font-size:16px}.ranking-table th,.ranking-table td{padding:12px 4px}.ranking-table thead th{font-size:12px;white-space:nowrap}.ranking-table thead .cell-sub{font-size:9px}.ranking-table tbody th,.ranking-table .rank-cell{font-size:13px}.ranking-table .price-cell strong{font-size:20px}.ranking-table .price-cell strong small{font-size:10px}.ranking-table .cell-sub{font-size:11px}#ranking .ranking-table .evidence-cell{font-size:12px}}.back-to-top{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:10;display:flex;align-items:center;justify-content:center;min-width:76px;min-height:44px;padding:10px 16px;border-radius:999px;background:#17654f;color:#fff;text-decoration:none;font-size:14px;font-weight:700;box-shadow:0 3px 12px #243e3826}.back-to-top:hover{background:#104d3c}footer{padding-bottom:90px}.home-return{font-size:14px}@media(max-width:600px){.back-to-top{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));padding:10px 14px}}summary .faq-question{display:inline;font-size:16px;font-weight:700}.ranking-table caption{text-align:left;font-size:12px;color:#617168;padding-bottom:8px}.home-intro+section{margin-top:16px}.num,.metric-value,.metric-tsubo strong,.point-price strong,.price-cell{font-family:Arial,Helvetica Neue,Segoe UI,sans-serif;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.num{text-align:right}.price-cell strong,.metric-value,.metric-tsubo strong{font-weight:900;letter-spacing:-.035em}main table td.num,main table th.num{text-align:right}.guide-after-prices{margin:12px 0;font-size:13px}.town-hero{padding:4px 0}.town-hero h1{margin:4px 0}.town-hero .small{margin:2px 0}.ranking-table{table-layout:auto}.ranking-table th,.ranking-table td{font-size:13px}.ranking-table thead th{width:auto}.ranking-table .price-cell strong{font-size:20px}.ranking-table .rank-cell{white-space:nowrap}@media(max-width:600px){main .table-wrap{overflow:visible}main table{width:100%;min-width:0!important;table-layout:fixed}main table th,main table td{padding:9px 4px;font-size:12px;overflow-wrap:anywhere;white-space:normal}main table caption{text-align:left;font-size:11px;margin-bottom:6px}main .ranking-panel{padding:14px 10px}#overview .metric-grid,#prices .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#overview .metric,#prices .metric{padding:12px 10px;margin:0}#overview .metric-value,#prices .metric-value{font-size:clamp(25px,7.3vw,34px)}#overview .metric-tsubo strong{font-size:20px}#overview .metric .small{font-size:9px}#prices .metric h3{font-size:12px;margin:0}#prices .metric p{font-size:11px;margin:6px 0}#prices .metric p.metric-value{font-size:clamp(25px,7.3vw,34px)}.town-hero h1{font-size:25px}}.compact-table{table-layout:fixed;min-width:0;width:100%;line-height:1.5}.compact-table thead th:first-child{width:34%}.compact-table th,.compact-table td{padding:12px 8px;vertical-align:top;font-size:14px}.compact-table thead th{font-size:12px;vertical-align:middle;text-align:right}.compact-table thead th:first-child{text-align:left}.compact-table tbody th{font-weight:600;text-align:left;overflow-wrap:anywhere}.compact-table tbody td.num{white-space:nowrap;overflow-wrap:normal}.compact-table tbody th>small{display:block;color:#617168;font-size:11px;font-weight:400}.compact-table .num strong{font-size:inherit;font-weight:800}.column-sort{padding:8px 0;background:none;color:#17654f;border-radius:3px;font-size:13px;font-weight:700;line-height:1.3;min-height:44px;white-space:nowrap;text-align:right;width:100%;cursor:pointer}.column-sort small{display:block;font-size:10px;font-weight:500;margin-top:3px}.column-sort:focus-visible{outline:2px solid #17654f;outline-offset:2px}.sort-arrow{font-size:11px;margin-left:3px}.cell-details{padding:0;margin:6px 0 0;border:0;line-height:1.5}.cell-details summary{font-size:11px;font-weight:500}.cell-details p{font-size:11px;font-weight:400;margin:6px 0;overflow-wrap:anywhere}.rank-badge{display:inline-block;color:#617168;font:11px Arial,sans-serif;margin-right:6px}.unavailable{font-family:system-ui,sans-serif;font-size:10px;font-weight:400;color:#617168}@media(max-width:600px){main .compact-table thead th:first-child{width:32%!important}main .compact-table th,main .compact-table td{padding:9px 3px;font-size:12px}main .compact-table tbody td.num{font-size:12px;letter-spacing:-.04em;white-space:nowrap}main .compact-table .num strong{font-size:13px}main .compact-table .column-sort{font-size:11px;padding:6px 0}main .compact-table .column-sort small{font-size:9px;letter-spacing:-.04em}main .compact-table .sort-arrow{font-size:9px;margin-left:1px}main .compact-table tbody th>a{font-size:12px}main .compact-table .rank-badge{font-size:10px;margin-right:4px}main .road-price-table thead th:first-child{width:44%!important}}main .compact-table thead th:not(:first-child){width:22%!important}main .compact-table tbody th a{white-space:normal}@media(max-width:600px){main .compact-table thead th:not(:first-child){width:22.666%!important}main .road-price-table thead th:not(:first-child){width:28%!important}.road-overview .metric-value{font-size:30px}}@media(max-width:600px){main #ranking .compact-table td.num{font-size:12px!important;font-weight:700}}main h1{font-size:clamp(30px,4.5vw,48px);line-height:1.35;margin-top:14px}.town-hero h1{font-size:clamp(29px,4vw,44px)}header nav{flex-wrap:wrap}footer nav{flex-wrap:wrap;gap:16px}h4{font-size:17px}h5{font-size:16px}h6{font-size:15px}@media(max-width:600px){.town-hero h1{font-size:29px}.home-intro h1{font-size:25px}header{gap:8px}header nav{font-size:12px;gap:14px}}main{container-type:inline-size}main h1.compact-title{font-family:Yu Gothic,Meiryo,sans-serif;font-kerning:none;font-size:calc(98cqi / var(--title-units));line-height:1.35;letter-spacing:0;margin:8px 0 10px;overflow-wrap:anywhere}.breadcrumbs{font-size:11px;line-height:1.5;gap:6px;margin:0 0 6px}.region-intro{font-size:13px;line-height:1.6;margin:6px 0}.notice.region-intro{padding:8px 12px}.city-price-heading{font-size:20px;margin:16px 0 10px}.city-price-grid .metric{margin:0;padding:18px}.city-price-grid .metric h3{font-size:14px;margin:0}.city-price-grid .metric p{margin:6px 0}.city-price-grid .metric .small{font-size:11px;line-height:1.6}@media(max-width:600px){.breadcrumbs{font-size:10px;gap:5px}.city-price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.city-price-grid .metric{padding:12px 10px}.city-price-grid .metric h3{font-size:11px}.city-price-grid .metric .metric-value{font-size:30px}.city-price-grid .metric .small{font-size:10px}.city-price-heading{font-size:17px;margin:12px 0 8px}.region-intro{font-size:11px}.home-intro h1.compact-title{margin:0 0 8px}}@media(min-width:900px){.city-price-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.city-price-grid .metric .metric-value{font-size:48px}}.mobile-menu{display:none}@media(max-width:600px){body>header{position:relative;flex-direction:row;align-items:center;gap:12px;padding:10px 18px}header .desktop-nav{display:none}.mobile-menu{display:block;padding:0;margin:0;border:0}.mobile-menu>summary{display:flex;flex-direction:column;align-items:center;justify-content:center;list-style:none;width:44px;min-height:44px;line-height:1.2;gap:2px}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary span{font-size:9px}.mobile-menu>summary:focus-visible{outline:3px solid #17654f;outline-offset:2px;border-radius:5px}.mobile-menu[open]>summary{background:#edf3e8;border-radius:6px}.mobile-menu nav{position:absolute;right:18px;top:calc(100% - 2px);z-index:20;display:flex;flex-direction:column;gap:0;min-width:190px;padding:6px;background:#fff;border:1px solid #dce5dc;border-radius:10px;box-shadow:0 6px 20px #243e3820}.mobile-menu nav a{display:flex;align-items:center;min-height:44px;padding:10px 14px;font-size:14px;text-decoration:none;border-radius:5px}.mobile-menu nav a:hover{background:#edf3e8}}.metric-value .countup-number{display:inline-block;font:inherit;letter-spacing:inherit;margin:0;font-variant-numeric:tabular-nums}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap!important;border:0!important}h2.point-table-heading{font-size:clamp(25px,2.5vw,30px);line-height:1.45}main h2{font-size:clamp(26px,2.6vw,32px)!important;line-height:1.45;letter-spacing:.015em;font-weight:800}.term-help{color:inherit;text-decoration:underline dotted;text-underline-offset:4px;cursor:help}.term-help ruby rt{font-size:9px;font-weight:500;color:#617168}.term-help:focus-visible{outline:2px solid #a65b29;outline-offset:4px}#term-explanation{position:fixed;inset:auto;margin:0;width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:18px 20px;border:1px solid #a8bcb0;border-radius:12px;background:#fff;color:#243e38;box-shadow:0 6px 24px #243e3826;font-size:14px;line-height:1.7}#term-explanation::backdrop{background:transparent}#term-explanation h3{font-size:16px;margin:0 24px 8px 0}#term-explanation p{margin:0 0 10px}#term-explanation .term-close{position:absolute;right:4px;top:4px;width:36px;height:36px;padding:0;background:transparent;color:#243e38;font-size:24px}#term-explanation .term-more{font-size:13px}.link-with-arrow{display:inline-flex;align-items:baseline;gap:.35em;max-width:100%}.link-arrow{flex:none;pointer-events:none;user-select:none;color:#437361}.metric-value .metric-number{display:inline-block;font:inherit;letter-spacing:inherit;margin:0;white-space:nowrap}.metric-value .metric-integer{display:inline;font:inherit;letter-spacing:inherit;margin:0}.metric-value .metric-decimal{display:inline;font-size:.55em;font-weight:inherit;letter-spacing:0;margin:0}.site-information{margin-top:18px}.policy-page{max-width:800px}.policy-page .small{margin-bottom:24px}.metric-tsubo strong .metric-number,.metric-tsubo strong .metric-integer{font:inherit;letter-spacing:inherit;margin:0;display:inline}.metric-tsubo strong .metric-decimal{font-size:.55em;font-weight:inherit;letter-spacing:0;margin:0;display:inline}
