:root{--ink:#182c3b;--muted:#62737f;--teal:#087f80;--teal-dark:#056769;--line:#dce5e9;--bg:#f5f8fa;--orange:#b56b06;--white:#fff;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Noto Sans JP',Meiryo,sans-serif;color:var(--ink);font-size:16px;line-height:1.7}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}input,select,textarea{min-width:0;max-width:100%}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;border:1px solid #cbd7dd;background:white;border-radius:7px;padding:12px;color:var(--ink)}textarea{resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal);flex-shrink:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);outline-offset:2px}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{line-height:1.45;font-size:2rem;letter-spacing:.02em;margin-bottom:20px}h2{font-size:1.2rem;line-height:1.5}h3{font-size:1.05rem;line-height:1.6}small,.fine{font-size:.8rem;color:var(--muted)}.muted{color:var(--muted);font-size:.875rem}.container{width:min(1180px,calc(100% - 64px));margin:auto}.header{background:white;border-bottom:1px solid var(--line)}.header-inner{width:min(1180px,calc(100% - 64px));margin:auto;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-size:1.22rem;font-weight:750;line-height:1.3;text-decoration:none!important;white-space:nowrap}.brand small{display:block;font-size:.67rem;letter-spacing:.2em;color:var(--teal);font-weight:600;margin-top:5px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--teal);color:#fff;font-size:1.9rem;line-height:1}.header nav{display:flex;gap:34px;align-items:center;font-size:.875rem;font-weight:600}.header nav a{color:var(--ink)}.header nav .current{color:var(--teal)}.nav-contact{border:1px solid var(--line);border-radius:6px;padding:8px 16px}.search-intro{display:flex;justify-content:space-between;gap:28px;padding:44px 0 26px;align-items:center}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.15em;color:var(--teal);margin-bottom:12px}.search-intro h1{font-size:2.25rem;letter-spacing:.04em;margin-bottom:12px}.search-intro p:last-child{color:var(--muted);font-size:.925rem;margin-bottom:0}.intro-note{border-left:1px solid var(--line);padding-left:28px;display:flex;flex-direction:column;color:var(--muted);font-size:.75rem;gap:5px}.intro-note strong{font-size:2.5rem;color:var(--ink);font-weight:500;line-height:1.2}.intro-note small{font-size:.85rem;margin-left:8px}.search-bar{display:flex;align-items:stretch;gap:0;background:white;padding:13px;border:1px solid var(--line);box-shadow:0 7px 25px #142e3a08;border-radius:11px}.search-field{display:flex;flex-direction:column;flex:0 0 26%;padding:0 18px;gap:3px}.search-field span{font-size:.75rem;color:var(--muted);font-weight:600}.search-field input,.search-field select{border:0!important;padding:6px 0!important;outline-offset:0!important;border-radius:0!important}.search-field.keyword{flex:1;border-left:1px solid var(--line)}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--teal);color:white;border:1px solid var(--teal);border-radius:7px;padding:12px 21px;font-size:.875rem;font-weight:650;text-decoration:none!important;min-height:46px;gap:8px;line-height:1.5}.button:hover{background:var(--teal-dark);border-color:var(--teal-dark)}.button.secondary{background:white;color:var(--teal);border-color:#bed5d8}.button.secondary:hover{background:#edf7f7}.full{width:100%}.search-button{padding:12px 36px;font-size:1rem}.quick-links{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:18px 0 30px;font-size:.8rem}.quick-links>span{color:var(--muted);margin-right:7px}.chip{padding:5px 15px;border:1px solid var(--line);border-radius:5px;background:white;color:#475d6b}.chip:hover,.chip.selected{border-color:var(--teal);background:#edf7f7;color:var(--teal);text-decoration:none}.search-layout{display:grid;grid-template-columns:238px 1fr;gap:32px;padding-bottom:48px;align-items:start}.filters{border-top:3px solid var(--teal);background:white;padding:23px 20px;border-radius:0 0 8px 8px}.filters h2{margin-bottom:24px;font-size:1rem}.filters label{display:block;font-size:.85rem;margin-bottom:20px;font-weight:600}.filters select{font-size:.85rem;margin-top:8px;padding:10px}.check{display:flex!important;align-items:flex-start;gap:8px;font-size:.875rem!important;font-weight:400!important}.filters .check{align-items:center;margin-bottom:8px}.filters .fine{font-size:.75rem;line-height:1.6;margin-bottom:23px}.reset{display:block;text-align:center;color:var(--muted);font-size:.8rem;padding-top:14px}.aside-note{border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.mini-plus{color:var(--teal);font-size:1.45rem}.aside-note h3{font-size:.85rem;margin:6px 0 8px}.aside-note p{font-size:.8rem;color:var(--muted);margin:0}.results-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px}.results-head .eyebrow{font-size:.68rem;letter-spacing:.16em;margin-bottom:6px}.results-head h2{font-size:1.25rem;margin:0}.results-head h2>span{font-size:1.5rem;color:var(--teal);margin-left:13px}.results-head small{margin-left:3px;font-size:.8rem}.results-head>.muted{font-size:.75rem}.hospital-card{background:white;border:1px solid var(--line);border-radius:9px;margin-bottom:18px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.hospital-card:hover{border-color:#9bbdbf;box-shadow:0 6px 24px #102f3c08}.card-top{display:flex;justify-content:space-between;align-items:center;padding:15px 24px 0;gap:15px}.facility-label{color:var(--muted);font-size:.75rem;display:flex;align-items:center;gap:7px}.small-cross{color:var(--teal);font-size:1.2rem;line-height:1}.compare-check{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.75rem;cursor:pointer;white-space:nowrap}.card-body{display:flex;gap:20px;padding:16px 24px 20px}.facility-number{font-size:2.35rem;letter-spacing:-.04em;color:#c5d7dc;font-weight:300;line-height:1.35;border-right:1px solid var(--line);padding-right:19px;margin-top:2px;min-width:60px}.card-content{flex:1}.card-content h3{font-size:1.25rem;font-weight:700;margin-bottom:9px}.card-content h3 a{color:var(--ink)}.card-rating{font-size:.9rem;display:flex;align-items:center;gap:6px;margin-bottom:9px}.stars{color:var(--orange)}.card-rating strong{font-size:1.2rem}.rating-caption{font-size:.7rem;color:var(--muted);border-left:1px solid var(--line);margin-left:8px;padding-left:12px}.address{font-size:.8rem;color:var(--muted);margin:0 0 12px}.tags{display:flex;flex-wrap:wrap;gap:6px}.tags span{font-size:.7rem;color:#526778;background:#f1f5f7;padding:4px 9px;border-radius:4px}.tags .tag-teal{background:#e7f5f4;color:var(--teal)}.card-description{font-size:.8rem;color:var(--muted);line-height:1.8;margin:13px 0 0}.card-bottom{border-top:1px solid #edf1f3;padding:11px 24px;display:flex;justify-content:space-between;gap:10px;font-size:.7rem;color:#74848d}.card-bottom a{font-size:.8rem;font-weight:600}.compare-bar{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;background:#e9f2f4;border:1px solid #d5e5e8;border-radius:7px;gap:16px;font-size:.8rem;margin-top:24px}.editorial-note{display:flex;align-items:start;gap:18px;border-top:1px solid var(--line);margin-top:32px;padding-top:22px;font-size:.75rem;color:var(--muted)}.editorial-note>span{font-size:.65rem;letter-spacing:.12em;color:var(--teal);font-weight:700;padding-top:4px}.editorial-note p{flex:1;margin:0}.editorial-note a{white-space:nowrap}.active-filters{font-size:.85rem;color:var(--teal)}.footer{background:#eaf0f3;border-top:1px solid var(--line);padding:32px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer .brand{font-size:1rem}.footer .brand-mark{width:33px;height:33px;font-size:1.5rem;border-radius:10px}.footer-inner>div{display:flex;gap:20px;font-size:.75rem}.footer a{color:#536c7a}.footer-inner>p{font-size:.7rem;color:var(--muted);margin:0;text-align:right}.footer-inner small{font-size:.68rem}.mobile{display:none}.breadcrumb{font-size:.8rem;color:var(--muted);padding:25px 0;overflow-wrap:anywhere}.panel,.review-card{background:white;border:1px solid var(--line);border-radius:9px;padding:30px;margin-bottom:24px}.detail-hero{padding:15px 0 32px}.detail-hero h1{font-size:2rem;margin-bottom:12px}.detail-rating{display:flex;align-items:center;gap:10px;margin-bottom:16px}.detail-rating strong{font-size:1.8rem;color:var(--orange)}.detail-hero .tags{margin-bottom:18px}.detail-hero>p:last-of-type{color:var(--muted);font-size:.9rem}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.detail-layout{display:grid;grid-template-columns:1fr 290px;gap:30px;padding-bottom:40px}.info-list{display:grid;grid-template-columns:150px 1fr;margin:0 0 26px;line-height:1.9}.info-list dt,.info-list dd{border-top:1px solid var(--line);padding:17px 0;font-size:.875rem}.info-list dt{font-weight:600}.info-list dd{margin:0;overflow-wrap:anywhere}.info-list small{font-size:.75rem}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:36px 0 20px}.section-heading h2{margin:0}.section-heading a{font-size:.85rem}.rating-panel{padding:26px}.rating-panel h2{font-size:1rem}.rating-panel .eyebrow{font-size:.68rem}.score{font-size:3.7rem;line-height:1.2;color:var(--orange);margin:20px 0 10px;font-weight:500}.score small{font-size:.85rem;margin-left:10px}.rating-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:.8rem}.rating-panel .fine:last-child{margin-top:18px;margin-bottom:0;font-size:.75rem}.review-meta{display:flex;gap:12px;align-items:center;font-size:.875rem;margin-bottom:20px}.avatar{display:grid;place-items:center;width:38px;height:38px;background:#e9f3f5;border-radius:50%;color:var(--teal)}.review-meta small{display:block;font-size:.7rem}.review-rating{margin-left:auto;color:var(--orange);font-weight:700;font-size:1.1rem}.review-body{white-space:normal;overflow-wrap:anywhere;font-size:.95rem;line-height:1.9}.report-link{display:block;text-align:right;font-size:.75rem;margin-top:18px;color:var(--muted)}.form-wrap{max-width:760px;margin:36px auto 54px;padding:38px}.form-wrap h1{font-size:1.65rem}.stack{display:flex;flex-direction:column;gap:20px}.stack label{display:flex;flex-direction:column;gap:8px;font-size:.875rem;font-weight:600}.stack label small{font-size:.75rem;font-weight:400}.stack .check{flex-direction:row}.stack .button{align-self:flex-start;min-width:180px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ratings-fieldset{border:1px solid var(--line);border-radius:7px;margin:0;padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.ratings-fieldset legend{font-size:.85rem;padding:0 8px;font-weight:600}.notice,.error{border:1px solid #c6e2df;background:#edf8f6;padding:16px 20px;border-radius:7px;font-size:.875rem;margin:24px 0;color:#235d58}.error{border-color:#e8b9b9;background:#fff2f2;color:#9c3434}.empty{text-align:center;padding:50px 24px;background:white;border:1px solid var(--line);border-radius:8px}.empty>span{display:block;font-size:2.4rem;color:var(--teal)}.empty h3{margin:12px 0}.empty p{font-size:.9rem;color:var(--muted)}.empty .text-link{display:block;margin-top:16px}.text-link{font-size:.875rem}.honeypot{position:absolute;left:-10000px;visibility:hidden}.receipt{background:#eff4f7;border:1px solid var(--line);border-radius:7px;padding:20px;margin:24px 0}.receipt input{font-family:monospace;font-size:.8rem;margin:8px 0}.receipt label{font-size:.85rem}.prose{max-width:820px;margin:40px auto 55px;padding:44px}.prose p,.prose li{font-size:.95rem;line-height:2}.prose h2{margin-top:35px}.prose .lead{font-size:1.35rem;font-weight:650}.prose li{margin-bottom:10px}.table-scroll{overflow-x:auto;margin-bottom:50px;border:1px solid var(--line);border-radius:8px}.comparison{border-collapse:collapse;background:white;width:100%;min-width:700px;table-layout:fixed;font-size:.875rem}.comparison td,.comparison th{border:1px solid var(--line);padding:20px;vertical-align:top;overflow-wrap:anywhere}.comparison th{text-align:left;background:#edf4f5}.comparison th:first-child{width:150px}.comparison thead th{font-size:1rem}.admin-head{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.tabs{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 30px}.tabs a{background:white;padding:12px 18px;border:1px solid var(--line);border-radius:6px;font-size:.875rem}.tabs a.selected{background:var(--teal);color:white}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-hospital{padding:20px 0;border-bottom:1px solid var(--line);font-size:.875rem}.admin-hospital p{font-size:.8rem;color:var(--muted);margin:6px 0}.csv-header{overflow-x:auto;background:#eef4f6;padding:16px;font-size:.8rem}.skip{position:absolute;top:-60px;left:10px;background:white;padding:10px;z-index:2}.skip:focus{top:10px}hr{border:0;border-top:1px solid var(--line);margin:30px 0}
@media(min-width:1500px){.container,.header-inner{width:min(1240px,calc(100% - 80px))}.search-intro{padding-top:52px}}@media(max-width:960px){.container,.header-inner{width:calc(100% - 40px)}.header nav{gap:20px}.nav-contact{display:none}.search-layout{grid-template-columns:210px 1fr;gap:22px}.card-body{gap:14px;padding:14px 18px 18px}.card-top,.card-bottom{padding-left:18px;padding-right:18px}.facility-number{display:none}.search-button{padding:12px 20px}.quick-links{gap:7px}.footer-inner{flex-wrap:wrap}.footer-inner>div{flex-wrap:wrap}.detail-layout{grid-template-columns:1fr 250px;gap:20px}.info-list{grid-template-columns:120px 1fr}.panel{padding:24px}.detail-hero h1{font-size:1.8rem}}@media(max-width:700px){.container,.header-inner{width:calc(100% - 32px)}.header-inner{min-height:76px;gap:12px}.brand{font-size:1rem;gap:8px}.brand small{font-size:.55rem}.brand-mark{width:35px;height:35px;font-size:1.6rem;border-radius:10px}.header nav{font-size:.75rem;gap:14px}.header nav a:nth-child(2){display:none}.search-intro{padding:30px 0 22px}.search-intro h1{font-size:1.8rem;letter-spacing:.02em;line-height:1.55}.mobile{display:block}.search-intro .eyebrow{font-size:.68rem}.search-intro p:last-child{font-size:.8rem;max-width:270px}.intro-note{padding-left:14px;min-width:85px;max-width:110px;font-size:.65rem}.intro-note strong{font-size:2.1rem}.intro-note a{font-size:.65rem}.search-bar{flex-wrap:wrap;padding:10px;gap:12px}.search-field{padding:0 6px;flex:0 0 100%;border:0!important}.search-field.keyword{flex:1 1 100%;border-top:1px solid var(--line)!important;padding-top:9px}.search-button{width:100%;padding:11px}.quick-links{padding:18px 0 24px;gap:7px}.quick-links>span{width:100%;font-size:.75rem}.chip{font-size:.75rem;padding:4px 12px}.search-layout{display:flex;flex-direction:column;gap:24px}.filters{width:100%;padding:16px;border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:6px}.filters h2{font-size:.875rem;margin-bottom:14px}.filters form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.filters label{margin:0;font-size:.8rem}.filters .check{margin:0;font-size:.8rem!important;align-items:center}.filters .fine{display:none}.filters .full{grid-column:1/-1}.filters .reset{grid-column:1/-1;padding:0;font-size:.75rem}.aside-note{display:none}.results{width:100%}.results-head{align-items:end;padding-bottom:16px;gap:12px}.results-head h2{font-size:1.05rem}.results-head h2>span{font-size:1.3rem;margin-left:6px}.results-head>.muted{font-size:.65rem}.results-head .eyebrow{font-size:.6rem}.hospital-card{margin-bottom:14px}.card-top{padding:14px 16px 0}.facility-label{font-size:.65rem}.compare-check{font-size:.65rem;gap:4px}.compare-check input{width:16px;height:16px}.card-body{padding:12px 16px 17px}.card-content h3{font-size:1.1rem;line-height:1.6}.card-rating{font-size:.8rem;flex-wrap:wrap}.rating-caption{font-size:.65rem}.address,.card-description{font-size:.75rem}.tags span{font-size:.65rem}.card-bottom{padding:10px 16px;font-size:.65rem}.card-bottom a{font-size:.75rem}.compare-bar{padding:14px;flex-direction:column;align-items:stretch;text-align:center;gap:10px}.editorial-note{flex-wrap:wrap;gap:10px}.editorial-note p{min-width:80%;font-size:.7rem}.editorial-note a{margin-left:44px;font-size:.7rem}.footer-inner{align-items:start;gap:22px}.footer-inner>div{width:100%;gap:12px 22px;font-size:.7rem}.footer-inner>p{width:100%;text-align:left;font-size:.65rem}.breadcrumb{font-size:.7rem;padding:22px 0}.detail-hero h1{font-size:1.6rem}.detail-layout{display:flex;flex-direction:column-reverse;gap:0}.detail-layout aside{width:100%}.rating-panel{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.rating-panel>.eyebrow,.rating-panel>.fine:last-child{grid-column:1/-1}.rating-panel .score{font-size:2.8rem;margin:0;grid-column:2;grid-row:2/5;text-align:right}.rating-panel h2{margin-bottom:8px}.rating-panel>.fine{font-size:.7rem}.rating-row{grid-column:1/-1}.panel{padding:22px}.info-list{display:block}.info-list dt{padding:14px 0 4px;font-size:.8rem}.info-list dd{border:0;padding:0 0 14px;font-size:.85rem}.form-wrap,.prose{padding:24px 20px;margin:24px auto 40px}.form-wrap h1,.prose h1{font-size:1.5rem}.form-grid,.ratings-fieldset{grid-template-columns:1fr}.stack .button{align-self:stretch}.prose .lead{font-size:1.1rem}.prose p,.prose li{font-size:.875rem}.actions .button{padding:12px 16px}.admin-head{gap:14px}.admin-head h1{font-size:1.6rem}.admin-head .button{font-size:.75rem;padding:9px 12px;min-height:40px}.admin-columns{grid-template-columns:1fr}.tabs{gap:8px}.tabs a{font-size:.75rem;padding:10px 12px}.section-heading h2{font-size:1rem}.section-heading a{font-size:.75rem}.empty{padding:35px 20px}.review-card{padding:22px}.review-meta{font-size:.8rem}.review-meta small{font-size:.65rem}.notice,.error{font-size:.8rem;padding:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;margin-top:28px;font-size:.8rem;color:var(--muted)}.schedule-details{border-top:1px solid var(--line);padding:14px 0}.schedule-details summary{cursor:pointer;font-size:.875rem;font-weight:600}.schedule-details summary span{float:right;font-size:.75rem;color:var(--teal);font-weight:400}.schedule-details .table-scroll{margin:15px 0 0}.schedule-table{width:100%;border-collapse:collapse;font-size:.8rem}.schedule-table th,.schedule-table td{border-bottom:1px solid var(--line);padding:10px 14px;text-align:left}.schedule-table th{background:#f0f6f7;font-weight:500}.schedule-table th:first-child{width:90px}@media(max-width:700px){.intro-note strong{font-size:1.35rem}.intro-note small{font-size:.7rem;margin-left:4px}.pagination{gap:12px}.pagination>span{width:100%;text-align:center;order:-1}.filters .full{grid-column:1/-1}}
.filters summary{font-size:1rem;font-weight:650;cursor:pointer;margin-bottom:22px}.filters details:not([open]) summary{margin-bottom:0}@media(max-width:700px){.search-intro{display:block}.intro-note{border:0;max-width:none;min-width:0;padding:0;margin-top:16px;display:flex;flex-direction:row;align-items:center;gap:12px;font-size:.7rem}.intro-note strong{font-size:1.2rem;white-space:nowrap}.intro-note a{display:none}.filters summary{font-size:.875rem;margin-bottom:16px}.search-intro h1{font-size:1.75rem}.search-intro p:last-child{max-width:none}}
@media(max-width:700px){.results-head{flex-direction:column;align-items:flex-start;gap:6px}.results-head h2>span{white-space:nowrap}}
