/* 自費ナビ デザイン改善 Phase 1 — visual layer only, scoped to five pages.
   No data, selection, price calculation or release-gate changes. */
body.jn-design{
 --jn-ink:#21342f;--jn-sub:#52665e;--jn-green:#22634f;--jn-line:#d6dfd8;
 --jn-paper:#f6f8f4;--jn-heading:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;
 background:#fff;color:var(--jn-ink);font-family:'Zen Kaku Gothic New',-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;
 font-size:16px;line-height:1.9;letter-spacing:.025em;-webkit-font-smoothing:antialiased;
}
.jn-design .jn-page,.jn-design .jn-finder{font:inherit;color:var(--jn-ink);line-height:1.9;max-width:1120px}
.jn-design :is(h1,h2,h3,h4,.wp-block-site-title,.jn-menu strong){font-family:var(--jn-heading);font-weight:700;font-feature-settings:'palt';letter-spacing:.015em;overflow-wrap:anywhere}
body.jn-design .wp-block-post-title{max-width:1120px;font-size:34px;line-height:1.55;margin:0 auto 28px}
.jn-design :is(.jn-page,.jn-finder) h2{font-size:25px;line-height:1.6;margin:0 0 20px;padding:0;border:0;background:none}
.jn-design .jn-page>h2{margin-top:44px}
.jn-design :is(.jn-page,.jn-finder) h3{font-size:20px;line-height:1.6}
.jn-design .jn-page p{font-size:16px;line-height:1.95;margin:0 0 22px}
.jn-design .jn-lead{font-family:var(--jn-heading);font-weight:700;font-size:25px!important;line-height:1.7!important;max-width:900px;letter-spacing:.025em;margin:0 0 24px!important}
body.jn-design main.wp-block-group{margin-block-start:40px!important}
body.jn-design main.wp-block-group>.wp-block-group{padding-block-start:22px!important}
.jn-design .wp-block-post-content{margin-block-start:0}
.jn-design .wp-block-site-title{font-size:25px!important;letter-spacing:.04em}
.jn-design header .wp-block-group.alignwide{max-width:1120px!important;min-height:36px}
body.jn-design header .jn-nav-links{font-size:15px;gap:12px 26px;line-height:1.7;margin:0}
.jn-design .jn-page a{color:#1d604c;text-decoration-thickness:1px;text-underline-offset:4px}
.jn-design .jn-grid{gap:28px;align-items:stretch}
.jn-design .jn-grid>a.jn-menu{padding:24px 0 26px;border:0;border-top:3px solid var(--jn-green);border-bottom:1px solid var(--jn-line);border-radius:0;background:transparent;box-shadow:none;transition:background-color .15s ease}
.jn-design .jn-grid>a.jn-menu:hover{background:#f7faf7}
.jn-design .jn-menu strong{font-size:22px;line-height:1.7;margin:0 0 12px;color:var(--jn-ink)}
.jn-design .jn-menu span{font-size:16px;line-height:1.9;color:var(--jn-sub)}
.jn-design .jn-section{border:0;border-top:1px solid var(--jn-line);border-radius:0;background:var(--jn-paper);padding:30px 32px;margin:38px 0;box-shadow:none}
.jn-design .jn-section h2{margin-bottom:16px}
.jn-design .jn-section p:last-child{margin-bottom:0}
.jn-design .jn-site-footer{font-size:14px;border-top:1px solid var(--jn-line);padding-top:24px;margin-top:48px}
.jn-design .jn-site-footer p,.jn-design .jn-site-footer a{font-size:14px;line-height:1.9}
.jn-design .jn-nav-links{gap:12px 24px;line-height:1.9}
.jn-design .jn-corrections{font-size:16px;line-height:1.95}
.jn-design .jn-page dl{display:grid;grid-template-columns:130px minmax(0,1fr);margin:24px 0 36px;border-top:1px solid var(--jn-line)}
.jn-design .jn-page dt,.jn-design .jn-page dd{margin:0;padding:16px 0;border-bottom:1px solid var(--jn-line)}
.jn-design .jn-page dt{font-weight:700;color:var(--jn-sub)}
/* Search pages keep the inherited one-column result list. */
.jn-design .hospit-fee-finder{--ink:var(--jn-ink);--sub:var(--jn-sub);--teal:var(--jn-green);--line:var(--jn-line);--bg:#fff;margin:32px auto;background:#fff;font:inherit;max-width:1120px}
.jn-design .hospit-fee-finder .hff-main{max-width:none;padding:0 0 32px}
.jn-design .jn-finder .jn-intro{margin:0 0 30px;padding:30px 32px;border:0;border-top:2px solid #9fb9a8;border-bottom:1px solid var(--jn-line);border-radius:0;background:var(--jn-paper);box-shadow:none}
.jn-design .jn-finder .jn-intro>p{font-size:16px;line-height:1.9;margin:0 0 20px}
.jn-design .jn-finder .jn-intro>p:last-child{margin-bottom:0}
.jn-design .jn-finder .jn-grid{gap:24px;margin:24px 0}
.jn-design .jn-finder .jn-grid>section{border:0;border-left:2px solid #b9cdbd;border-radius:0;padding:0 0 0 20px;background:none}
.jn-design .jn-finder .jn-grid h3{font-size:19px;margin:0 0 10px}
.jn-design .jn-finder .jn-grid p{font-size:16px;line-height:1.9;margin:0}
.jn-design .jn-finder .jn-caution{border-top:2px solid #b99d61;background:#faf7ee;padding:28px 32px}
.jn-design .jn-finder .jn-caution p{font-size:16px;line-height:1.9;margin:0 0 18px}
.jn-design .jn-finder .jn-caution .hff-meta{font-size:14px}
.jn-design .hff-disclaimer,.jn-design .jn-local-note{font-size:14px;line-height:1.85;border:0;border-left:3px solid #ba9c60;border-radius:0;padding:16px 20px;margin:0 0 28px;background:#fbf8ef;color:#65583b}
.jn-design .hff-panel{margin:0 0 32px;padding:28px 0;border:0;border-top:1px solid var(--jn-line);border-radius:0;box-shadow:none;background:#fff}
.jn-design .hff-panel[data-hff=controls]{padding:28px 28px 30px;background:var(--jn-paper);border-top:3px solid var(--jn-green)}
.jn-design .hff-filters{gap:22px 20px;grid-template-columns:repeat(3,minmax(0,1fr))}
.jn-design .hff-field label{font-size:16px;line-height:1.65;font-weight:700;margin:0 0 10px;color:var(--jn-ink)}
.jn-design .hff-field :is(select,input){font-size:16px;line-height:1.5;min-height:50px;padding:12px;border:1px solid #acbcb1;border-radius:4px;background:#fff;color:var(--jn-ink);width:100%;max-width:100%}
.jn-design .hff-field input::placeholder{color:#677a6e;opacity:1}
.jn-design .hff-seg{gap:8px}
.jn-design .hff-seg button{font-size:16px;line-height:1.55;min-height:48px;padding:10px 16px;border:1px solid #a9bdae;border-radius:4px;font-weight:700;box-shadow:none}
.jn-design .hff-seg button[aria-pressed=true]{background:var(--jn-green);border-color:var(--jn-green);color:#fff}
.jn-design :is(.hff-field select,.hff-field input,.hff-seg button,.jn-page a):focus-visible{outline:3px solid #347563;outline-offset:3px}
.jn-design .hff-summary{align-items:baseline;gap:12px 20px;margin-bottom:12px}
.jn-design .hff-count{font-family:var(--jn-heading);font-size:26px;line-height:1.5;font-weight:700;color:var(--jn-ink)}
.jn-design :is(.hff-meta,.hff-hint,.hff-section-note,.hff-footer-note,.sort-note){font-size:14px;line-height:1.85;color:var(--jn-sub)}
.jn-design .hff-section-note{margin:0 0 24px}
.jn-design .hff-cards{display:flex;flex-direction:column;gap:0}
.jn-design .hff-clinic{padding:26px 0;border:0;border-top:1px solid var(--jn-line);border-radius:0;background:#fff;box-shadow:none;min-width:0}
.jn-design .hff-clinic:last-child{border-bottom:1px solid var(--jn-line)}
.jn-design .hff-clinic-head{align-items:flex-start;gap:24px}
.jn-design .hff-clinic h3{font-size:21px;line-height:1.65;margin:0 0 9px;letter-spacing:.015em}
.jn-design .hff-clinic .hff-meta{font-size:14px}
.jn-design .hff-clinic-price{min-width:200px;max-width:270px;text-align:right}
.jn-design .hff-clinic-price .hff-lbl{font-size:14px;line-height:1.8;display:block;margin-bottom:4px}
.jn-design .hff-clinic-price .hff-price{font-size:28px;line-height:1.45;letter-spacing:.015em;font-weight:700;font-variant-numeric:tabular-nums;color:#1d604c}
.jn-design .hff-clinic-price small{display:block;font-size:14px;line-height:1.8}
.jn-design .hff-clinic-meta{gap:8px 24px;margin:14px 0 10px;padding:12px 0;border-top:1px solid #edf1eb;border-bottom:1px solid #edf1eb;font-size:14px;line-height:1.85}
.jn-design .hff-clinic-meta :is(span,strong){font-size:14px}
.jn-design .hff-subtags{gap:6px;margin-top:10px}
.jn-design .hff-pill{font-size:14px;line-height:1.6;padding:3px 8px;border-radius:2px;background:#edf2eb;color:#445f50}
.jn-design .hff-hint{font-size:14px;margin-top:10px}
.jn-design .hff-clinic-bottom{gap:12px;margin-top:18px;align-items:center}
.jn-design .hff-action{margin:0;gap:12px}
.jn-design .hff-action a,.jn-design .hff-clinic-bottom a{font-size:15px;font-weight:700;line-height:1.8;text-underline-offset:4px}
.jn-design details.hff-panel{padding:18px 0}
.jn-design details.hff-panel summary{font-size:16px;font-weight:700;line-height:1.85;cursor:pointer}
.jn-design .jn-records{padding-top:36px}
.jn-design .jn-records h3{font-size:21px;line-height:1.7;margin:0 0 10px}
.jn-design .jn-records h4{font-size:16px;line-height:1.8;margin:0 0 8px}
.jn-design .jn-facility{padding:28px 0;border-color:var(--jn-line)}
.jn-design .jn-facility>p{font-size:14px;line-height:1.9;margin:0 0 10px}
.jn-design .jn-offers{gap:0;margin-top:20px}
.jn-design .jn-offers>li{font-size:14px;line-height:1.9;border:0;border-left:2px solid #d1dfd2;border-radius:0;padding:4px 0 4px 20px;margin:0 0 22px;background:none}
.jn-design .jn-offers p{font-size:14px;line-height:1.9;margin:7px 0}
.jn-design .jn-offers strong{font-size:16px;color:#1d604c}
.jn-design .jn-icon{display:inline-block;width:1.1em;text-align:center;font-size:.8em;margin-right:.55em;color:var(--jn-green)}
.jn-design .jn-caution .jn-icon{color:#8b733e}
@media(max-width:800px){.jn-design .hff-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.jn-design .hff-clinic-price{min-width:175px}.jn-design .jn-grid{gap:20px}}
@media(max-width:650px){
 body.jn-design .wp-block-post-title{font-size:28px;line-height:1.65;margin-bottom:24px}
 body.jn-design main.wp-block-group{margin-block-start:22px!important}
 body.jn-design main.wp-block-group>.wp-block-group{padding-block-start:12px!important}
 .jn-design :is(.jn-page,.jn-finder) h2{font-size:22px;line-height:1.65;margin-bottom:18px}
 .jn-design .jn-page>h2{margin-top:34px}
 .jn-design .jn-lead{font-size:22px!important;line-height:1.8!important}
 .jn-design .jn-grid{grid-template-columns:1fr;gap:22px}
 .jn-design .jn-grid>a.jn-menu{padding:20px 0}
 .jn-design .jn-menu strong{font-size:20px;line-height:1.75}
 .jn-design .jn-section{padding:24px 20px;margin:30px 0}
 .jn-design .jn-finder .jn-intro,.jn-design .jn-finder .jn-caution{padding:24px 20px;margin:0 0 26px}
 .jn-design .jn-finder .jn-grid{gap:22px;margin:22px 0}
 .jn-design .hff-panel[data-hff=controls]{padding:24px 20px}
 .jn-design .hff-clinic h3,.jn-design .jn-records h3{font-size:20px}
 .jn-design .hff-clinic-price{min-width:0;max-width:100%;text-align:left}
 .jn-design .hff-clinic-head{flex-direction:column;gap:16px}
 .jn-design .hff-clinic{padding:24px 0}
 .jn-design .hff-clinic-meta{gap:8px 16px}
 .jn-design .jn-page dl{grid-template-columns:95px minmax(0,1fr)}
 .jn-design .jn-offers>li{padding-left:14px}
 .jn-design .jn-site-footer{margin-top:38px}
}
@media(max-width:480px){.jn-design .hff-filters{grid-template-columns:1fr;gap:20px}.jn-design .hff-full{grid-column:1/-1}.jn-design .hff-seg button{flex:1 1 auto}.jn-design [data-hff=cost] button{flex-basis:100%}.jn-design .hff-count{font-size:24px}}
@media(max-width:650px){body.jn-design{--wp--style--root--padding-left:24px;--wp--style--root--padding-right:24px}}
