:root{--blue:#2469a6;--blue-soft:#eaf4fb;--success:#13724c;--shadow:0 8px 24px rgba(20,52,84,.12)}
:focus-visible{outline:4px solid #e8a900;outline-offset:3px}.site-header{position:sticky;top:0;z-index:1000}.header-inner{min-height:78px;max-width:1200px;padding:.75rem 1.5rem}.brand-mark{width:48px;height:48px;border-radius:14px 14px 14px 4px}.header-actions{display:flex;gap:.55rem}.header-actions button,.site-menu a{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:.6rem .85rem;background:#fff;font-weight:700;cursor:pointer}.menu-button{display:none}.site-menu{max-width:1200px;margin:auto;padding:0 1.5rem .75rem;background:#fff;justify-content:flex-end;gap:.5rem}.site-menu a{display:inline-flex;align-items:center;color:var(--navy);border-color:transparent}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.search-hero{padding:2.4rem max(1.25rem,calc((100% - 1040px)/2));background:linear-gradient(135deg,var(--navy2),var(--navy) 65%,#225f93);color:#fff}.search-heading{text-align:center}.search-heading .eyebrow{color:var(--yellow)}.search-hero h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.3;letter-spacing:.03em}.mobile-break{display:none}.location-search{max-width:760px;margin:1.5rem auto 0;padding:1.2rem;background:#fff;color:var(--text);border-radius:16px;box-shadow:var(--shadow)}.location-search label{display:block;margin-bottom:.4rem;font-weight:800}.search-row{display:grid;grid-template-columns:1fr auto;gap:.7rem}.input-wrap{min-width:0;height:54px;display:flex;align-items:center;gap:.6rem;border:2px solid #879bad;border-radius:10px;padding:0 .9rem;background:#fff}.input-wrap span{font-size:1.5rem}.input-wrap input{min-width:0;width:100%;border:0;outline:0;font-size:1.05rem;color:var(--text)}.location-search .primary-button{border:2px solid var(--yellow);cursor:pointer}.location-button{min-height:52px;width:100%;margin-top:.75rem;display:flex;align-items:center;justify-content:center;border:2px solid var(--navy);border-radius:10px;padding:.75rem 1.25rem;background:var(--blue-soft);font-weight:800;text-decoration:none}.hero-help{text-align:center;margin:.8rem 0 0;color:#dce9f5;font-weight:700}
.search-lead{display:block;margin-bottom:.65rem}.search-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.search-choice-row a{min-height:54px;display:flex;align-items:center;justify-content:center}
.area-search,.map-feature,.condition-section{max-width:1170px;margin:2rem auto;padding:2rem;border-radius:16px;background:#fff}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.section-heading-row h2,.area-search h2,.map-feature h2,.condition-section h2{margin:.2rem 0;font-size:clamp(1.6rem,3vw,2.1rem)}.area-search .eyebrow,.condition-section .eyebrow{color:var(--blue)}.text-link{font-weight:800}.region-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.region-list section{padding:1rem;border:1px solid var(--line);border-radius:10px}.region-list h3{margin:0 0 .45rem;color:var(--navy);font-size:1.05rem}.region-list p{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin:0}.region-list a{min-height:38px;display:inline-flex;align-items:center;font-weight:700}.map-feature{display:flex;align-items:center;justify-content:space-between;gap:2rem;color:#fff;background:linear-gradient(135deg,var(--navy2),var(--navy))}.map-feature .eyebrow{color:var(--yellow)}.map-feature p{margin:.4rem 0 0;color:#dce9f5}.map-feature .primary-button{flex:0 0 auto}
.condition-grid{grid-template-columns:repeat(3,1fr);gap:.8rem}.condition-grid a{min-height:118px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-content:center;gap:.1rem .75rem;padding:1rem;border:2px solid var(--line);border-radius:12px;background:#fff;text-decoration:none}.condition-grid a:hover{border-color:var(--blue);background:var(--blue-soft)}.condition-grid a>span{grid-row:1/3;align-self:center;min-width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--blue-soft);color:var(--navy);font-weight:900}.condition-grid strong{font-size:1rem}.condition-grid small{color:var(--muted)}
.guide-section,.data-note,.future-note{max-width:1170px;margin:1rem auto 2rem;padding:2rem;border-radius:16px}.guide-section{background:var(--navy);color:#fff}.guide-section .eyebrow{color:var(--yellow)}.guide-section h2,.data-note h2{margin:.25rem 0 .8rem;font-size:clamp(1.6rem,3vw,2.1rem)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;list-style:none;padding:0;margin:1.3rem 0 0}.steps li{display:flex;gap:.8rem;padding:1rem;border-radius:12px;background:rgba(255,255,255,.1)}.steps li>span{flex:0 0 auto;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);color:var(--text);font-weight:900}.steps strong{font-size:1.05rem}.steps p{margin:.2rem 0 0;color:#dce9f5}.data-note{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;background:var(--pale);border:1px solid #e5ca66}.data-note p{max-width:790px;margin-bottom:0}.future-note{background:#fff;border:1px solid var(--line)}.future-note strong{font-size:1.1rem}.future-note p{margin:.25rem 0 0;color:var(--muted)}
.site-footer{margin-top:3rem;padding:2rem max(1.5rem,calc((100% - 1170px)/2));text-align:left;display:block}.footer-brand{display:flex;align-items:baseline;gap:1rem}.site-footer strong{font-size:1.15rem}.site-footer span,.site-footer small{color:#bdd0e1}.site-footer nav{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin:1rem 0}.site-footer a{color:#fff}body.large-text{font-size:19px}body.large-text .area-search,body.large-text .map-feature,body.large-text .condition-section,body.large-text .guide-section,body.large-text .data-note,body.large-text .future-note{max-width:1320px}
@media(max-width:900px){.condition-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.data-note{grid-template-columns:1fr}}@media(max-width:640px){.header-inner{min-height:68px;padding:.65rem 1rem;align-items:center}.brand-mark{width:42px;height:42px}.brand strong{font-size:1.06rem}.brand small,.text-size-button{display:none}.menu-button{display:block}.site-menu{display:none;padding:.5rem 1rem 1rem;flex-direction:column;overflow:visible;white-space:normal}.site-menu.is-open{display:flex}.site-menu a{border-color:var(--line)}.search-hero{padding:1.5rem 1rem}.mobile-break{display:block}.search-hero h1{font-size:1.8rem}.location-search{padding:1rem}.search-choice-row{grid-template-columns:1fr}.location-search .primary-button{width:100%}.area-search,.map-feature,.condition-section{margin:1rem;padding:1.25rem}.section-heading-row,.map-feature{align-items:flex-start;flex-direction:column}.region-list{grid-template-columns:1fr}.condition-grid{grid-template-columns:1fr}.condition-grid a{min-height:94px}.guide-section,.data-note,.future-note{margin:1rem;padding:1.4rem}.footer-brand{align-items:flex-start;flex-direction:column;gap:0}.site-footer{padding:1.7rem 1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.rich-place-card{display:flex;flex-direction:column}.place-kana{margin-top:-.35rem;font-size:.85rem}.place-summary{margin:.5rem 0}.place-summary div{display:grid;grid-template-columns:6.5rem 1fr;gap:.75rem;padding:.45rem 0;border-top:1px solid var(--line)}.place-summary dt{font-weight:800;color:var(--navy)}.place-summary dd{margin:0}.card-detail-link{margin-top:auto;align-self:flex-start;font-weight:800}.facility-detail{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:2rem}.facility-data{margin:0}.facility-data>div{display:grid;grid-template-columns:8rem 1fr;border-top:1px solid var(--line)}.facility-data>div:last-child{border-bottom:1px solid var(--line)}.facility-data dt,.facility-data dd{padding:.9rem}.facility-data dt{background:var(--bg);font-weight:800}.facility-data dd{margin:0}.facility-data ul{margin:0;padding-left:1.3rem}.place-detail-map{height:390px;border:1px solid var(--line);border-radius:12px;background:#dce7ed}.yahoo-credit{text-align:right}@media(max-width:780px){.facility-detail{grid-template-columns:1fr}.place-summary div{grid-template-columns:1fr;gap:.1rem}.facility-data>div{grid-template-columns:1fr}.facility-data dt{padding-bottom:.25rem}.facility-data dd{padding-top:.25rem}.place-detail-map{height:330px}}
.place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:780px){.place-grid{grid-template-columns:1fr}}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.3rem;margin:0;padding:0;list-style:none}.breadcrumbs li{display:inline-flex;align-items:center}.breadcrumbs li:not(:last-child)::after{content:"›";margin-left:.3rem;color:#8794a2}.breadcrumbs [aria-current="page"]{color:var(--muted)}
.condition-grid a>span svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.section-more{margin:1.5rem 0 0}.eyebrows{margin:0;color:var(--blue);font-weight:800;letter-spacing:.08em}.prose>h2{margin:2.2rem 0 .7rem;color:var(--navy);font-size:1.45rem}.prose>h2:first-child{margin-top:0}.prose h3{margin:.2rem 0}.prose li+li{margin-top:.4rem}.legal p,.legal li{max-width:900px}.guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1rem 0 2rem;padding:0;list-style:none}.guide-cards li{display:flex;gap:.8rem;padding:1rem;border:1px solid var(--line);border-radius:12px}.guide-cards li>span{flex:0 0 auto;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-weight:900}.guide-cards p{margin:.2rem 0}.guide-definition>div,.confirm-list>div{display:grid;grid-template-columns:10rem 1fr;border-top:1px solid var(--line)}.guide-definition>div:last-child,.confirm-list>div:last-child{border-bottom:1px solid var(--line)}.guide-definition dt,.guide-definition dd,.confirm-list dt,.confirm-list dd{padding:.8rem}.guide-definition dt,.confirm-list dt{font-weight:800;background:var(--bg)}.guide-definition dd,.confirm-list dd{margin:0}.page-actions,.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.5rem}.footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin:1.5rem 0}.site-footer .footer-columns nav{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;margin:0}.footer-columns nav>strong{margin-bottom:.25rem;color:var(--yellow)}.contact-purpose{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.contact-purpose>div{padding:1rem;border:1px solid var(--line);border-radius:12px}.contact-purpose>div>strong{color:var(--blue);font-size:1.2rem}.contact-purpose h2{margin:.25rem 0;font-size:1.1rem}.contact-purpose p{margin:.2rem 0}.contact-note{margin:1.5rem 0;padding:1rem;border-left:5px solid var(--blue);background:var(--blue-soft)}.contact-note h2{margin:0;font-size:1.15rem}.contact-note p{margin:.3rem 0}.contact-form{max-width:820px}.form-field{margin:1.2rem 0}.form-field label{display:block;margin-bottom:.35rem;font-weight:800}.form-field em,.form-consent em{padding:.1rem .4rem;border-radius:4px;background:#a72828;color:#fff;font-size:.75rem;font-style:normal}.form-field input,.form-field select,.form-field textarea{width:100%;padding:.75rem;border:2px solid #aab8c5;border-radius:8px;background:#fff}.form-field textarea{resize:vertical}.form-field small{display:block;color:var(--muted)}.form-error{color:#a72828!important;font-weight:800}.form-consent{margin:1.2rem 0;padding:1rem;border:1px solid var(--line);border-radius:8px}.form-consent input{width:1.2rem;height:1.2rem;vertical-align:middle}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.confirm-list{margin:0}.confirm-list dd{overflow-wrap:anywhere}.form-actions form{margin:0}
.condition-grid a>span{transform:translateY(-3px)}.condition-grid a>span svg{display:block}
@media(max-width:900px){.footer-columns{grid-template-columns:repeat(2,1fr)}.guide-cards{grid-template-columns:1fr}}@media(max-width:640px){.footer-columns,.contact-purpose{grid-template-columns:1fr}.guide-definition>div,.confirm-list>div{grid-template-columns:1fr}.guide-definition dt,.confirm-list dt{padding-bottom:.25rem}.guide-definition dd,.confirm-list dd{padding-top:.25rem}}
.map-legend{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;margin:.5rem 0}.map-legend span{display:inline-flex;align-items:center;gap:.4rem;font-weight:800}.map-legend i{width:14px;height:14px;border-radius:50%;display:inline-block}.map-legend .verified{background:#237a4b}.map-legend .yahoo{background:#1769aa}.source-map-marker{background:transparent;border:0}.source-map-marker span{display:block;width:22px;height:22px;border:3px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 2px 5px #0006;transform:rotate(-45deg)}.map-source{display:inline-block;margin:0 0 .35rem!important;padding:.15rem .5rem;border-radius:999px;color:#fff!important;font-size:.78rem;font-weight:800}.map-source-verified{background:#237a4b}.map-source-yahoo_live{background:#1769aa}
.report-address-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.report-cta{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.report-cta h2{margin:.1rem 0}.report-cta p{margin:.3rem 0}@media(max-width:640px){.report-address-grid{grid-template-columns:1fr}.report-cta{align-items:flex-start;flex-direction:column}}
.report-complete{max-width:760px;text-align:center}.report-complete-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 1rem;border-radius:50%;background:var(--success);color:#fff;font-size:2.5rem;font-weight:900}.report-complete .form-actions{justify-content:center;margin-top:2rem}
.condition-grid a>span{width:42px;min-width:42px;height:42px;padding:0;transform:none;line-height:1}.condition-grid a>span svg{display:block;margin:0}
.prefecture-region-list{grid-template-columns:1fr}.prefecture-region-list section{padding:1.25rem 1.4rem}.prefecture-region-list h2{margin:0 0 .55rem;color:var(--navy);font-size:1.25rem}.prefecture-region-list a{padding:.25rem .15rem}
.admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem max(1rem,calc((100% - 1180px)/2));background:var(--navy2);color:#fff}.admin-header nav{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.admin-header a,.admin-header form a{color:#fff}.admin-header form{display:inline;margin:0}.admin-login{max-width:560px}.admin-tabs{display:flex;flex-wrap:wrap;gap:.7rem}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.7rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.admin-table th{background:var(--bg)}.admin-search{display:flex;gap:.4rem}.admin-search input{padding:.55rem;border:1px solid var(--line);border-radius:7px}.danger-button{padding:.8rem 1.15rem;border:0;border-radius:12px;background:#a72828;color:#fff;font-weight:800}.attribute-admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-bottom:1.5rem}.attribute-admin-grid label{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem;border:1px solid var(--line);border-radius:8px}.attribute-admin-grid select{padding:.5rem}@media(max-width:640px){.admin-header{align-items:flex-start;flex-direction:column}.attribute-admin-grid{grid-template-columns:1fr}}
