/* リハ就職マップ 共通スタイル v2（信頼系情報サイト・ネイビー#16324F×ブルー#1668B5）
 * 2026-08-28 全面再設計: かわいい系→男女ニュートラルな公的データベースのトーン。
 * ブランドのプラム#7A3E5Cは廃止でなく退役（運営者2026-08-28「信頼あるサイトに再デザイン構築してもいい」）。 */
*{box-sizing:border-box}
body{margin:0;background:#F3F6F9;color:#1F2C3A;
 font-family:"BIZ UDPGothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
 font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3,.claim,.brand,.stat-v,.hd-v{font-family:"Zen Kaku Gothic New","BIZ UDPGothic",sans-serif}
a{color:#1668B5}
button{font-family:inherit;cursor:pointer}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
header.site{position:sticky;top:0;z-index:20;background:#16324F;color:#fff;
 border-bottom:3px solid #1668B5}
header.site .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:11px 24px}
.brand{font-size:19px;font-weight:900;letter-spacing:.03em;color:#fff;text-decoration:none}
.profs{display:flex;gap:4px;background:#0E2438;border-radius:8px;padding:3px}
.profs a,.profs span{padding:6px 15px;border-radius:6px;font-size:12.5px;font-weight:700;
 color:#AFC6DC;text-decoration:none}
.profs .on{background:#fff;color:#16324F}
.profs .off{color:#5E748A}
.hd-fresh{margin-left:auto;font-size:11px;color:#8FA8C0;letter-spacing:.02em;white-space:nowrap}
.fav-h{margin-left:14px;padding:8px 15px;border-radius:8px;background:#fff;color:#16324F;
 font-size:13px;font-weight:700;border:0}
.crumbs{font-size:11.5px;color:#7A8899;padding:10px 0}
.crumbs a{color:#7A8899}
.hero{position:relative;overflow:hidden;text-align:center;padding:40px 0 36px;
 background:linear-gradient(170deg,#FDFEFF 0%,#EDF3F9 70%,#E7EFF7 100%);
 border-bottom:1px solid #DCE3EB}
.hero-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;
 letter-spacing:.06em;color:#1668B5;background:#fff;border:1px solid #C9DAEB;
 border-radius:6px;padding:6px 14px;
 /* h1に昇格させたので、素のh1規則（下）を全項目打ち消して従来のdivと同じ見た目に戻す */
 margin:0 0 14px;max-width:none;line-height:1.7;text-wrap:wrap;font-family:inherit}
h1,.claim{margin:0 auto 14px;max-width:26em;font-weight:900;font-size:30px;line-height:1.5;
 text-wrap:balance;color:#16324F}
.hero p.lede{margin:0 auto 26px;max-width:44em;font-size:14.5px;line-height:2;color:#51606F;text-wrap:pretty}
.search{max-width:860px;margin:0 auto;background:#fff;border:1px solid #C2D2E2;border-radius:12px;
 padding:20px;box-shadow:0 12px 30px rgba(22,50,79,.10);text-align:left}
.search-l{font-size:12.5px;font-weight:700;color:#37485A;margin-bottom:10px}
.search-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.search input,.search select{padding:13px 15px;border:1px solid #C9D6E3;border-radius:9px;
 font-size:14px;background:#FBFDFE;color:#1F2C3A}
.search input:focus,.search select:focus{outline:2px solid #1668B5;outline-offset:0;border-color:#1668B5}
.search input{flex:1;min-width:230px}
.modes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.car-opt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;
 padding:11px 15px;border:1.5px solid #C9D6E3;border-radius:10px;background:#FBFDFE;
 color:#37485A;cursor:pointer;font-family:inherit;line-height:1.4}
.car-opt b{font-size:14px;font-weight:700}
.car-opt span{font-size:11.5px;color:#7A8899}
.car-opt:hover{border-color:#1668B5}
.car-opt.on{background:#16324F;border-color:#16324F;color:#fff}
.car-opt.on span{color:#B9CEE2}
.mode-help{font-size:12px;color:#51606F;line-height:1.75;margin-bottom:12px}
.mode-help b{color:#16324F}
.search-row2{display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding-top:12px;
 border-top:1px dashed #D8E2EC}
.search-note{font-size:11.5px;color:#7A8899;line-height:1.7;flex:1;min-width:230px}
.origin-hit{font-size:12px;color:#1E7A46;font-weight:700}
.origin-miss{font-size:12px;color:#B3364B;font-weight:700}
.search-go{display:inline-block;padding:12px 24px;border-radius:9px;background:#1668B5;color:#fff;
 font-weight:700;font-size:13px;text-decoration:none;white-space:nowrap}
.search-go:hover{background:#0F4C8A}
.search-go.off{background:#C3CFDB;pointer-events:none}
button.search-go{border:0;cursor:pointer;font-family:inherit;line-height:1.4}
.search-row3{margin-top:14px}
.search-row3 .search-go{width:100%;padding:14px 24px;font-size:14.5px;text-align:center}
.search-go #goN{font-weight:400;opacity:.85;margin-left:.4em;font-variant-numeric:tabular-nums}
/* ヒーローの背景写真。生成画像であり実在の施設ではない（装飾専用）。
   マスクで左へ消すので、コピーが載る側の地色は素のままにできる＝文字のコントラストを落とさない */
.hero-bg{position:absolute;top:0;right:0;bottom:0;width:74%;z-index:0;pointer-events:none;
 background-size:cover;background-position:center;opacity:.30;
 -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 46%);
 mask-image:linear-gradient(90deg,transparent 0,#000 46%)}
.hero>.wrap{position:relative;z-index:1}
/* 職種の入口＝押せるものだと一目で分かる実体のあるボタン（統計カードと同じ見た目にしない）。
   面に動詞（検索する）を出す */
.pcta-row{display:grid;gap:10px;margin:26px 0 0;max-width:520px}
.pcta{display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:13px 14px 13px 18px;border-radius:10px;text-decoration:none;
 background:#1668B5;border:1px solid #12558F;color:#fff;
 box-shadow:0 6px 16px rgba(22,50,79,.16)}
.pcta:hover{background:#0F4C8A;border-color:#0F4C8A}
.pcta:focus-visible{outline:3px solid #16324F;outline-offset:2px}
.pcta-l{display:flex;flex-direction:column;gap:3px;min-width:0}
.pcta-l b{font-size:15px;font-weight:700}
.pcta-l i{font-style:normal;font-size:11.5px;color:#CFE3F6;font-variant-numeric:tabular-nums}
.pcta-go{display:inline-flex;align-items:center;gap:6px;flex:none;
 font-size:13px;font-weight:700;border-radius:7px;padding:8px 13px;
 background:#fff;color:#0F4C8A}
.pcta-go em{font-style:normal}
/* トップ2面: 2カラムヒーロー（左=コピー＋検索・右=データカード） */
.hero-duo{text-align:left}
.hero-grid{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:start}
.hero-duo .claim{margin:0 0 14px;max-width:none;font-size:31px}
.hero-duo p.lede{margin:0 0 24px;max-width:38em}
.hero-duo .search{margin:0;max-width:none}
.hero-duo .stats{max-width:none}
.trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.trust span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;
 color:#16324F;background:#fff;border:1px solid #D8E2EC;border-radius:7px;padding:6px 12px}
.trust span::before{content:"✓";color:#1E7A46;font-weight:900}
.hero-data{background:#fff;border:1px solid #C2D2E2;border-radius:12px;padding:20px 22px;
 box-shadow:0 12px 30px rgba(22,50,79,.10);margin-top:26px}
.hd-h{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;
 letter-spacing:.06em;color:#37485A;padding-bottom:10px;border-bottom:2px solid #16324F}
.hd-h::before{content:"";width:9px;height:9px;border-radius:2px;background:#1668B5}
.hd-item{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
 padding:13px 2px;border-bottom:1px solid #E8EDF3}
.hd-k{font-size:12.5px;color:#51606F}
.hd-v{font-size:22px;font-weight:900;color:#16324F;font-variant-numeric:tabular-nums;white-space:nowrap}
.hd-v small{font-size:12px;font-weight:700;color:#51606F;margin-left:2px}
.hd-note{font-size:11px;color:#7A8899;margin-top:10px;line-height:1.7}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}
.stat{background:#fff;border:1px solid #DCE3EB;border-radius:10px;padding:16px 20px;text-align:left}
a.stat{transition:border-color .12s,box-shadow .12s}
a.stat:hover{border-color:#1668B5;box-shadow:0 6px 18px rgba(22,50,79,.10)}
.stat-v{font-size:26px;font-weight:900;color:#16324F;font-variant-numeric:tabular-nums}
.stat:first-child .stat-v{color:#1668B5}
.stat-l{font-size:12px;color:#51606F;margin-top:3px}
.stats-3{grid-template-columns:repeat(3,1fr)}
.src-line{font-size:11.5px;color:#7A8899;margin-top:8px;text-align:left}
/* 3つの差別化 */
.feat3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:32px}
.feat{background:#fff;border:1px solid #DCE3EB;border-radius:12px;padding:20px 22px}
.feat-h{font-size:14.5px;font-weight:900;color:#16324F;margin-bottom:8px;line-height:1.5}
.feat-h::before{content:"";display:block;width:26px;height:4px;border-radius:2px;
 background:#1668B5;margin-bottom:10px}
.feat p{margin:0;font-size:12.5px;color:#51606F;line-height:1.9}
.feat p b{color:#16324F;font-variant-numeric:tabular-nums}
.filters{background:#fff;border:1px solid #DCE3EB;border-radius:12px;padding:16px 20px;margin:26px 0 14px}
.dom-btn{padding:9px 16px;border-radius:8px;font-size:13.5px;font-weight:700;
 border:1px solid #C9D6E3;background:#FBFDFE;color:#37485A;margin:0 6px 6px 0}
.dom-btn.on{background:#16324F;color:#fff;border-color:#16324F}
.view-btn{float:right;padding:9px 16px;border-radius:8px;font-size:13px;font-weight:700;
 border:1px solid #1668B5;background:#fff;color:#1668B5}
.view-btn:hover{background:#EAF2FA}
.job-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px;
 padding-top:12px;border-top:1px dashed #D8E2EC;font-size:12px;color:#7A8899}
.job-badge{padding:4px 10px;border-radius:6px;background:#EDF2F7;color:#51606F;font-weight:700}
.count-line{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;font-size:13.5px;
 color:#37485A;flex-wrap:wrap}
.count-line strong{font-size:19px;color:#1668B5;font-variant-numeric:tabular-nums}
.rank-note{font-size:11.5px;color:#7A8899;margin-left:auto}
.sort-l{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#51606F}
.sort-l select{padding:6px 10px;border:1.5px solid #C9D6E3;border-radius:8px;background:#fff;
 color:#16324F;font-family:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.sort-l select:focus-visible{outline:2px solid #1668B5;outline-offset:1px}
.sort-l select option:disabled{color:#8A98A8}
#map{display:none;height:540px;border:1px solid #C2D2E2;border-radius:12px;margin-bottom:16px;
 background:#EDF2F7;box-shadow:0 8px 24px rgba(22,50,79,.08);overflow:hidden}
#map.show{display:block}
.map-fallback{padding:36px;text-align:center;color:#51606F;font-size:13px}
.maplibregl-popup-content{font-family:inherit;border-radius:10px;padding:12px 15px;
 font-size:12.5px;line-height:1.7;box-shadow:0 8px 24px rgba(22,50,79,.28)}
.maplibregl-popup-content b{font-size:13px;color:#16324F}
.maplibregl-popup-content a{color:#1668B5;font-weight:700}
.loading{padding:40px;text-align:center;color:#7A8899;font-size:13px}
.cards{display:flex;flex-direction:column;gap:14px}
.card{position:relative;background:#fff;border:1px solid #DCE3EB;border-radius:12px;padding:20px 22px;
 display:flex;gap:22px;flex-wrap:wrap;cursor:pointer;
 transition:border-color .12s,box-shadow .12s,transform .12s}
.card:hover{border-color:#8FB4D9;box-shadow:0 10px 26px rgba(22,50,79,.12);transform:translateY(-1px)}
.card:hover .f-name a{text-decoration:underline}
.card-main{flex:1;min-width:300px}
.badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.chip-city{padding:3px 9px;border-radius:5px;background:#EAF2FA;color:#0F4C8A;
 font-size:11px;font-weight:700}
.chip-dom{padding:3px 9px;border-radius:5px;border:1px solid #C9D6E3;color:#37485A;
 font-size:11px;font-weight:700}
.f-corp{font-size:11.5px;color:#8494A5;line-height:1.5;margin-bottom:1px}
.f-name{font-size:17px;font-weight:700;line-height:1.5;margin-bottom:7px}
.f-name a{color:#1668B5;text-decoration:none}
.f-name a:hover{text-decoration:underline}
.f-line1{font-size:12.5px;color:#68788A;margin-bottom:11px}
.commute{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:11px}
.chip-car{padding:6px 12px;border-radius:7px;font-size:12.5px;font-weight:700}
.car-ok{background:#E9F5EE;color:#1E7A46}
.car-ng{background:#FBEDF0;color:#B3364B}
.chip-st{padding:6px 12px;border-radius:7px;background:#F5F8FB;border:1px solid #E1E9F1;
 color:#37485A;font-size:12.5px}
.basis-chips{display:flex;flex-wrap:wrap;gap:6px}
.chip-basis{padding:4px 10px;border-radius:4px;font-size:11.5px;color:#0F4C8A;background:#EFF5FB}
.card-side{flex:none;width:290px;display:flex;flex-direction:column;gap:10px}
.fill{display:flex;align-items:center;gap:9px}
.fill-bar{flex:1;height:7px;border-radius:999px;background:#E1E9F1;overflow:hidden}
.fill-bar i{display:block;height:7px;background:#1668B5}
.fill-t{font-size:11.5px;font-weight:700;color:#37485A;white-space:nowrap}
.cells{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#E1E9F1;
 border:1px solid #E1E9F1;border-radius:8px;overflow:hidden}
.cell{background:#FBFDFE;padding:9px 11px}
.cell-k{font-size:10.5px;color:#7A8899}
.cell-v{font-size:13.5px;font-weight:700;margin-top:2px}
.blank{color:#A6B2BF;font-weight:400}
/* 施設回答は7項目=奇数。最後のセルを全幅にして格子背景の空きマスを出さない。長文回答は折り返す */
.cells .cell:last-child:nth-child(odd){grid-column:1/-1}
.cell-v{overflow-wrap:anywhere}
.side-note{font-size:11px;color:#7A8899}
.btns{display:flex;gap:8px}
.btns button,.btns a{flex:1;padding:10px;border-radius:8px;font-size:12.5px;font-weight:700;
 text-align:center;text-decoration:none}
.b-fav{border:1px solid #C9D6E3;background:#fff;color:#37485A}
.b-fav.on{background:#16324F;color:#fff;border-color:#16324F}
.b-open{border:0;background:#1668B5;color:#fff}
.b-open:hover{background:#0F4C8A}
/* 「この施設の情報をもっと見たい」＝匿名の希望。押した数を数えるだけで表示は変えない */
.b-disc{border:1px solid #1668B5;background:#fff;color:#1668B5;border-radius:8px;
 padding:7px 15px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.b-disc:hover{background:#EEF5FC}
.b-disc.done,.b-disc:disabled{border-color:#C9D6E3;background:#F1F5F9;color:#6C7B8B;cursor:default}
.rulebox{background:#16324F;border-radius:14px;padding:32px 36px;color:#fff;margin:44px 0 0;
 display:grid;grid-template-columns:1.1fr 1fr;gap:34px}
.rule-eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.12em;color:#8FB4D9;margin-bottom:10px}
.rulebox h2{margin:0 0 12px;font-weight:900;font-size:21px;line-height:1.5;color:#fff}
.rulebox p{margin:0;font-size:13.5px;line-height:2;color:#C7D6E5;text-wrap:pretty}
.rule-card{background:#fff;color:#1F2C3A;border-radius:10px;padding:20px 22px}
.rule-card-h{font-size:12.5px;font-weight:700;color:#1668B5;margin-bottom:12px}
.rule-card div+div{margin-top:10px}
.rule-item{display:flex;gap:10px;font-size:13px;line-height:1.7}
.rule-item b{color:#1668B5}
.legend{background:#EDF2F7;border-radius:10px;padding:16px 20px;margin-top:20px;
 font-size:12.5px;color:#4A5A6B;line-height:1.9}
.static-list{margin-top:40px}
.static-list h2{font-size:17px;font-weight:900}
.static-list h3{font-size:14px;margin:18px 0 6px}
.static-list ul{margin:0;padding-left:1.4em;font-size:13px;line-height:2}
.favbar{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#16324F;color:#fff;display:none;
 border-top:3px solid #1668B5}
.favbar.show{display:block}
.favbar .wrap{display:flex;align-items:center;gap:16px;padding:12px 24px;flex-wrap:wrap}
.favbar strong{font-size:17px;color:#8FD3A8}
.b-comp{margin-left:auto;padding:10px 20px;border-radius:8px;border:0;background:#1668B5;
 color:#fff;font-size:13px;font-weight:700}
.b-comp:hover{background:#3D82C4}
.compare{display:none;background:#fff;border:2px solid #16324F;border-radius:12px;
 padding:20px;margin-bottom:16px;overflow-x:auto}
.compare.show{display:block}
.compare table{width:100%;border-collapse:collapse;font-size:12.5px;min-width:680px}
.compare th{text-align:left;padding:10px 12px;background:#EDF2F7;font-weight:700;color:#16324F}
.compare td{padding:10px 12px;border-bottom:1px solid #E8EDF3}
footer.site{background:#0E2438;color:#93A5B8;margin-top:56px}
footer.site .wrap{padding:30px 24px 90px;font-size:11.5px;line-height:2}
footer.site a{color:#B8CCE0}
main{padding-bottom:40px}
/* 施設個別ページ */
.fac-head{background:linear-gradient(170deg,#FDFEFF 0%,#EDF3F9 100%);border-bottom:1px solid #DCE3EB;
 padding:30px 0 26px}
.fac-head h1{margin:6px 0 10px;font-size:26px;text-align:left;max-width:none}
.fac-meta{font-size:13px;color:#37485A}
.fac-fav{display:inline-block;margin-left:14px;padding:6px 14px;border-radius:8px;
 font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;vertical-align:middle}
.fac-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:24px}
.panel{background:#fff;border:1px solid #DCE3EB;border-radius:12px;padding:20px 22px}
.panel h2{margin:0 0 12px;font-size:15px;font-weight:900;color:#16324F}
.kv{display:grid;grid-template-columns:9em 1fr;gap:6px 14px;font-size:13px}
.kv dt{color:#68788A}
.kv dd{margin:0}
.basis-row{display:grid;grid-template-columns:96px 1fr;gap:12px;padding:8px 0;
 border-bottom:1px solid #E8EDF3;font-size:12.5px}
.basis-dom{font-weight:700;font-size:13px}
.basis-conf{font-size:11px;color:#1E7A46;font-weight:700}
.basis-b{color:#37485A;line-height:1.8}
.kijun-list{margin:0;padding-left:1.3em;font-size:12.5px;line-height:2;color:#37485A;
 columns:2;column-gap:28px}
.kijun-clamp{max-height:350px;overflow:hidden;position:relative}
.kijun-clamp:not(.open)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:56px;
 background:linear-gradient(rgba(255,255,255,0),#fff);pointer-events:none}
.kijun-clamp.open{max-height:none}
.kijun-more{display:block;width:100%;margin-top:8px;padding:9px 0;border:1px solid #DCE3EB;
 border-radius:8px;background:#F4F7FA;color:#1668B5;font-size:12.5px;font-weight:700;
 cursor:pointer;font-family:inherit}
.kijun-more:hover{background:#EDF2F7}
.reach-list{font-size:12.5px;line-height:2;color:#37485A}
.reach-band{font-weight:700;color:#1E7A46}
#facmap{height:300px;border:1px solid #DCE3EB;border-radius:10px;margin-top:10px;
 background:#EDF2F7;overflow:hidden}
.map-note{margin-top:6px;font-size:11.5px;color:#7A8899;line-height:1.6}
.map-note a{color:#1668B5}
.contact-note{margin-top:10px;padding:10px 12px;border-radius:8px;background:#EAF2FA;
 color:#0F4C8A;font-size:11.5px}
/* 職種トップ: クリックできる日本地図（Geolonia japanese-prefectures を加工） */
.jmap-panel{background:#fff;border:1px solid #DCE3EB;border-radius:12px;padding:22px 22px 14px;margin-top:32px}
.jmap-h{margin:0 0 2px;font-size:15px;font-weight:900;color:#16324F}
.jmap{max-width:620px;margin:0 auto}
.jmap svg{width:100%;height:auto;display:block}
.jmap .prefecture{cursor:pointer;stroke:#fff;stroke-width:.8;transition:opacity .12s}
.jmap .prefecture:hover,.jmap .prefecture:focus{opacity:.7;outline:none}
.jmap .boundary-line{stroke:#B4C4D3;stroke-width:2;fill:none;stroke-dasharray:6 6}
.jmap-out{text-align:center;font-size:13.5px;font-weight:700;color:#1668B5;min-height:1.6em;
 margin-top:4px;font-variant-numeric:tabular-nums}
.jmap-legend{display:flex;align-items:center;justify-content:center;gap:4px;font-size:11px;
 color:#7A8899;margin-top:6px}
.jmap-legend i{width:26px;height:11px;border-radius:2px}
.jmap-legend span{margin:0 5px;font-variant-numeric:tabular-nums}
.jmap-credit{text-align:center;font-size:10.5px;color:#A6B2BF;margin-top:10px}
.jmap-credit a{color:inherit}
.pref-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.pref-list a{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #DCE3EB;
 border-radius:7px;padding:5px 13px;font-size:12.5px;font-weight:700;color:#1F2C3A;text-decoration:none}
.pref-list a b{color:#1668B5;font-variant-numeric:tabular-nums}
.pref-list a:hover{border-color:#1668B5;color:#1668B5}
@media (max-width:900px){
 .hd-fresh{display:none}
}
@media (max-width:760px){
 .stats,.stats-3{grid-template-columns:1fr 1fr}
 .modes{grid-template-columns:1fr}
 .pcta-row{max-width:none}
 .pcta{padding:12px 12px 12px 14px}
 .pcta-l b{font-size:14px}
 .pcta-go{padding:7px 11px;font-size:12.5px}
 /* 縦積みだと写真がコピーの真後ろに来るので、上から消して文字側を素地に戻す */
 .hero-bg{width:100%;opacity:.20;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 62%);
  mask-image:linear-gradient(180deg,transparent 0,#000 62%)}
 .hero-grid{grid-template-columns:1fr}
 .hero-duo .claim{font-size:24px}
 .hero-data{margin-top:0}
 .feat3{grid-template-columns:1fr}
 .jmap-panel{padding:14px 12px 10px}
 .rulebox{grid-template-columns:1fr;padding:24px 22px}
 .fac-grid{grid-template-columns:1fr}
 h1,.claim{font-size:24px}
 .card-side{width:100%}
 .kijun-list{columns:1}
}
@media print{
 header.site,.favbar,.search,.filters,footer.site,#map,.view-btn,.hero-data,.trust,
 .kijun-more,.fac-fav,.hero-bg,.pcta-row,.b-disc{display:none}
 body.print-comp #cards,body.print-comp .pager,body.print-comp .count-line{display:none}
 .compare{border:0}
 body{background:#fff}
 .card,.panel{break-inside:avoid;border:1px solid #999}
 .kijun-clamp{max-height:none}
 .kijun-clamp::after{display:none}
}

/* FAQ（県ページ・職種トップ。faq_ld と同文の可視ブロック） */
.faqbox{margin-top:36px}
.faqbox h2{font-size:16px;margin:0 0 12px}
.faq-i{border:1px solid #C9DAEB;border-radius:8px;background:#fff;margin-bottom:8px}
.faq-i summary{padding:11px 14px;font-size:13.5px;font-weight:700;color:#16324F;cursor:pointer}
.faq-i p{margin:0;padding:0 14px 12px;font-size:12.5px;line-height:1.9;color:#51606F}

/* ページ送り（検索結果を20件ずつ。地図は全件のまま） */
.pager{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:18px 0 4px}
.pg-btn{background:#16456F;color:#fff;border:0;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer}
.pg-btn:disabled{background:#C9D6E2;cursor:default}
.pg-info{font-size:12.5px;color:#51606F}
.pg-info b{color:#16324F;margin:0 2px}
