/* 計器盤と3つの図解。紺×アイボリー×真鍮の細い線。選択後は非表示。 */
.map-frame{--tray-h:188px}
.fk-tray{position:absolute;z-index:9;left:16px;right:16px;bottom:12px;height:calc(var(--tray-h) - 16px);display:flex;gap:18px;align-items:stretch;padding:10px 14px;border-radius:14px;color:#f6f1e3;background:linear-gradient(#27456aee,#18314df2);border:1px solid #cbb07f99;box-shadow:0 14px 34px #10243b44,inset 0 1px #ffffff1f;backdrop-filter:blur(10px)}
.route-focused .fk-tray,.route-focused .fk-tip{display:none!important}

/* 非選択時：海図を計器盤の分だけ縮める */
.map-frame:not(.route-focused) .map-scroll{height:calc(100% - var(--tray-h))!important}
.map-frame:not(.route-focused) .exploration-bar{bottom:calc(var(--tray-h) + 8px)!important}
.map-frame:not(.route-focused) .map-foot{display:none!important}

/* 計器の切替 */
.fk-lens-wrap{flex:none;display:flex;align-items:center;gap:12px;width:min(640px,50%)}
.fk-sel-dial{flex:none;width:112px;height:auto;overflow:visible}
.fk-lenses{flex:1;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}
.fk-lens{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;padding:7px 12px;border-radius:10px;border:1px solid #e9dcc033;background:#ffffff0d;transition:background .25s,border-color .25s,transform .25s}
.fk-lens:hover{background:#ffffff22;border-color:#e9dcc088}
.fk-lens:focus-visible{outline:2px solid #f6e7c4;outline-offset:2px}
.fk-lens-ic{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1.5px solid #d9bd86;color:#e9cf9b}
.fk-lens-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.fk-lens-tx{display:flex;flex-direction:column;min-width:0;gap:2px}
.fk-lens-tx b{font:700 14px/1.2 'Noto Sans JP',sans-serif;letter-spacing:.03em}
.fk-lens-tx small{font:400 10.5px/1.3 'Noto Sans JP',sans-serif;color:#cfdae4;white-space:normal}
.fk-lens.on{background:#f8f3e5;border-color:#f8f3e5;color:#1d3f5d;transform:translateY(-1px);box-shadow:0 6px 14px #0b1d3355}
.fk-lens.on .fk-lens-ic{border-color:#a98a52;color:#8a6b34}
.fk-lens.on .fk-lens-tx small{color:#4d6b80}

/* 操作エリア（計器ごとに入れ替わる） */
.fk-ctrl{flex:1;min-width:0;display:flex;align-items:center;gap:18px;padding-left:18px;border-left:1px solid #e9dcc044}
.fk-hint{margin:0;font:400 13px/1.7 'Noto Sans JP',sans-serif;color:#dbe5ee}
.fk-compass-l{flex:none}
.fk-compass-m{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.fk-dial{display:block;width:150px;height:auto}
.fk-dial-arc{fill:none;stroke:#e9dcc088;stroke-width:1.5;stroke-dasharray:2 4}
.fk-dial-dot{stroke:#f8f3e5;stroke-width:1.5}
.fk-needle{transform-origin:60px 64px;transform:rotate(0deg);transition:transform 1.1s cubic-bezier(.3,1.5,.5,1)}
.fk-needle-body{fill:#f2d79b}
.fk-needle-hub{fill:#18314d;stroke:#f2d79b;stroke-width:2}
.fk-chips,.fk-checks{display:flex;flex-wrap:wrap;gap:7px}
.fk-tchip,.fk-cchip{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1.5px solid #e9dcc077;background:#ffffff10;color:#f6f1e3;font:600 12.5px/1.2 'Noto Sans JP',sans-serif;transition:background .2s,color .2s,border-color .2s}
.fk-tchip:hover,.fk-cchip:hover{background:#ffffff26;border-color:#f2d79b}
.fk-tchip:focus-visible,.fk-cchip:focus-visible{outline:2px solid #f6e7c4;outline-offset:2px}
.fk-tchip[aria-pressed="true"],.fk-cchip[aria-pressed="true"]{background:#f8f3e5;color:#1d3f5d;border-color:#f8f3e5}
.fk-glyph{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#f2d79b;color:#18314d;font:700 11px/1 'Zen Old Mincho',serif}
.fk-cchip[aria-pressed="true"] .fk-glyph{background:#1d3f5d;color:#f8f3e5}
.fk-split{display:flex;align-items:center;gap:12px}
.fk-split-txt{flex:none;font:500 12.5px/1.4 'Noto Sans JP',sans-serif;color:#dbe5ee}
.fk-split-bar{flex:1;max-width:240px;height:10px;display:flex;gap:2px;border-radius:5px;overflow:hidden;background:#ffffff1a}
.fk-split-bar i{display:block;min-width:6px;transition:flex .5s}

/* 収支試算帳 */
.fk-ledger-l{flex:none;width:min(400px,42%)}
.fk-ledger-m{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.fk-amt{display:flex;flex-direction:column;gap:7px}
.fk-amt-in{display:flex;align-items:baseline;gap:8px;font:500 12.5px 'Noto Sans JP',sans-serif;color:#dbe5ee}
.fk-amt-in input{width:118px;padding:5px 9px;border-radius:8px;border:1.5px solid #e9dcc088;background:#fbf9f2;color:#18314d;font:700 17px/1.2 'DM Sans','Noto Sans JP',sans-serif;text-align:right}
.fk-amt-in input:focus-visible{outline:2px solid #f6e7c4;outline-offset:2px}
.fk-amt input[type=range]{width:100%;accent-color:#f2d79b}
.fk-quick{display:flex;gap:6px;flex-wrap:wrap}
.fk-quick button{all:unset;cursor:pointer;padding:3px 10px;border-radius:999px;border:1px solid #e9dcc066;font:500 11.5px 'DM Sans',sans-serif;color:#f6f1e3}
.fk-quick button:hover{background:#ffffff26}
.fk-quick button:focus-visible{outline:2px solid #f6e7c4}
.fk-ledger-legend{display:flex;gap:16px;font:500 12px 'Noto Sans JP',sans-serif;color:#f6f1e3}
.fk-ledger-legend i{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-2px}
.fk-ledger-legend .k1{background:#f2d79b}.fk-ledger-legend .k2{background:#ffffff33;border:1px solid #e9dcc088}.fk-ledger-legend .k3{border:1.5px dashed #e9dcc0aa}
.fk-ledger-note{margin:0;font:400 11.5px/1.6 'Noto Sans JP',sans-serif;color:#cfdae4}
.fk-check-m{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}

/* 海図の上の図解 */
.fk-lens-on #map-tooltip{display:none!important}
#map-svg .route.fk-dim{opacity:.2!important;filter:grayscale(1);transition:opacity .4s,filter .4s}
.route.fk-hit{transition:opacity .4s}
.fk-ov{pointer-events:none}
.fk-glow{fill:none;stroke:var(--c);stroke-width:3.5;opacity:.9;animation:fk-glow 1.8s ease-out 1}
@keyframes fk-glow{from{r:4;opacity:0}60%{opacity:1}to{opacity:.9}}
.fk-track{fill:none;stroke:#b9c7d1;stroke-width:6;opacity:.55}
.fk-keep{fill:none;stroke:#1d3f5d;stroke-width:6;stroke-linecap:butt;transition:stroke-dasharray .6s cubic-bezier(.3,.8,.3,1)}
.fk-none{fill:none;stroke:#8fa2af;stroke-width:1.6;stroke-dasharray:3 4}
.fk-keep-bg{fill:#fbf9f2;stroke:#1d3f5d44;stroke-width:1}
.fk-keep-lab text{font:700 10.5px 'DM Sans','Noto Sans JP',sans-serif;fill:#1d3f5d}
.fk-badge circle{fill:#fbf9f2;stroke:#1d3f5d;stroke-width:1.5}
.fk-badge text{font:700 9.5px 'Zen Old Mincho',serif;fill:#1d3f5d}
.fk-badge{animation:fk-pop .45s var(--d,0ms) both cubic-bezier(.3,1.5,.5,1)}
.fk-badge.off{opacity:.3}
@keyframes fk-pop{from{opacity:0;transform:translate(var(--bx,0),20px) scale(.3)}}

/* ツールチップ */
.fk-tip{position:absolute;z-index:12;width:290px;padding:12px 14px;border-radius:12px;background:#fbf9f2;color:#254a64;border:1px solid #c9d2d3;box-shadow:0 12px 30px #1f405e30;pointer-events:none;font:400 12.5px/1.65 'Noto Sans JP',sans-serif}
.fk-tip[hidden]{display:none}
.fk-tip-h{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}
.fk-tip-h b{font:700 15px/1.3 'Zen Old Mincho','Noto Sans JP',serif;color:#1d3f5d}
.fk-tip-h span{font-size:11.5px;color:#6d8797}
.fk-tip p{margin:0 0 6px}.fk-tip p:last-child{margin:0}
.fk-tip p b{color:#1d3f5d}.fk-tip-s{font-size:11px;color:#6d8797}

@media(prefers-reduced-motion:reduce){.fk-needle,.fk-keep,.fk-split-bar i,.fk-glow,.fk-badge,.fk-lens{animation:none!important;transition:none!important}}
@media(max-width:1180px){.fk-lenses{width:auto;grid-template-columns:1fr}.fk-lens-tx small{display:none}.fk-dial{width:120px}}

.fk-chip-rows{display:flex;flex-direction:column;gap:7px}
.fk-chip-lab{flex:none;min-width:150px;font:500 11.5px/1.3 'Noto Sans JP',sans-serif;color:#cfdae4}
.fk-chips{align-items:center}
.fk-tchip{padding:5px 12px}

/* 収支試算帳：初心者向けの言い方と図 */
.fk-amt-q{margin:0;font:700 14px/1.4 'Noto Sans JP',sans-serif;color:#f6f1e3}
.fk-amt-in input{width:132px;font-size:20px}
.fk-amt-in span{font:600 14px 'Noto Sans JP',sans-serif;color:#f6f1e3}
.fk-ledger-m{gap:7px}
.fk-example{display:flex;flex-direction:column;gap:5px}
.fk-ex-title{margin:0;font:500 12px/1.3 'Noto Sans JP',sans-serif;color:#cfdae4}
.fk-ex-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fk-ex-row i{font-style:normal;color:#e9cf9b;font-weight:700}
.fk-ex-step{display:flex;flex-direction:column;gap:2px;padding:6px 12px;border-radius:10px;background:#ffffff14;border:1px solid #e9dcc044;min-width:104px}
.fk-ex-step small{font:500 11px/1.2 'Noto Sans JP',sans-serif;color:#cfdae4}
.fk-ex-step b{font:700 17px/1.2 'DM Sans','Noto Sans JP',sans-serif;color:#f6f1e3}
.fk-ex-step.s3{background:#f8f3e5;border-color:#f8f3e5}.fk-ex-step.s3 small{color:#4d6b80}.fk-ex-step.s3 b{color:#1d3f5d}
.fk-ledger-legend{flex-wrap:wrap;gap:6px 18px}
.fk-ledger-legend span{display:inline-flex;align-items:center;gap:6px;font:400 12px/1.3 'Noto Sans JP',sans-serif;color:#dbe5ee}
.fk-ledger-legend b{color:#f6f1e3;font-weight:700}
.fk-ring-s{width:18px;height:18px;flex:none}
.fk-ring-s .t{fill:none;stroke:#ffffff44;stroke-width:3.4}
.fk-ring-s .k{fill:none;stroke:#f2d79b;stroke-width:3.4}
.fk-ring-s.a .k{stroke-dasharray:38 44}.fk-ring-s.b .k{stroke-dasharray:0 44}
.fk-ring-s.b .t{stroke:#ffffff88}
.fk-ring-s .n{fill:none;stroke:#e9dcc0;stroke-width:1.6;stroke-dasharray:2.5 3}
.fk-ex-step{padding:5px 11px}
.fk-ledger-m{justify-content:center}

/* STARTの前は計器盤を出さない */
.awaiting-start .fk-tray,.awaiting-start .fk-tip{display:none!important}

/* 最初の画面：題名と、4つの見方 */
.captain-desk .map-entry .entry-content{display:flex;flex-direction:column;align-items:center}
.map-entry h1{display:flex;flex-direction:column;align-items:center;gap:2px;margin:6px 0 10px;line-height:1.12}
.map-entry .e-t1{font:700 clamp(30px,3.6vw,48px)/1.1 'Zen Old Mincho','Noto Sans JP',serif;letter-spacing:.14em;color:#f6ead0}
.map-entry .e-t2{font:700 clamp(64px,8.2vw,112px)/1.05 'Zen Old Mincho','Noto Sans JP',serif;letter-spacing:.06em;color:#fffaf0}
.map-entry .entry-kicker{letter-spacing:.2em}
.fk-entry{display:flex;flex-direction:column;align-items:center;gap:8px;margin:16px 0 18px;width:min(860px,92vw)}
.fk-entry-dial{width:170px;height:auto;overflow:visible}
.fk-entry-dial .fk-dial-arc{stroke:#f2d79baa}
.fk-entry-dot{fill:#ffffff40;stroke:#f2d79b;stroke-width:1.5;transition:fill .3s,r .3s}
.fk-entry-dot.on{fill:#f2d79b;r:7.5px}
.fk-entry-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%}
.fk-pick{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;color:#f6f1e3;background:#16304fcc;border:1px solid #e9dcc055;backdrop-filter:blur(8px);transition:background .25s,transform .25s,border-color .25s;text-shadow:none}
.fk-pick:hover{background:#27456acc;border-color:#f2d79b}
.fk-pick:focus-visible{outline:3px solid #f6e7c4;outline-offset:2px}
.fk-pick[aria-pressed="true"]{background:#f8f3e5;color:#1d3f5d;border-color:#f8f3e5;transform:translateY(-2px);box-shadow:0 10px 22px #0b1d3366}
.fk-pick[aria-pressed="true"] .fk-lens-ic{border-color:#a98a52;color:#8a6b34}
.fk-pick[aria-pressed="true"] .fk-lens-tx small{color:#4d6b80}
.fk-pick .fk-lens-tx small{white-space:normal}
.fk-entry-sel{margin:0;font:500 13px/1.4 'Noto Sans JP',sans-serif;color:#f6ead0}
@media(max-width:900px){.fk-entry-row{grid-template-columns:repeat(2,minmax(0,1fr))}.fk-entry-dial{width:130px}}
@media(prefers-reduced-motion:reduce){.fk-entry-dot,.fk-pick{transition:none}}

/* 海図は計器盤の上で完結させる（他のCSSの height:100% より強く指定） */
.captain-desk[data-phase] .map-frame:not(.route-focused) .map-scroll{height:calc(100% - var(--tray-h))!important;max-height:calc(100% - var(--tray-h))!important;bottom:auto!important}
@media(max-height:780px){.map-frame{--tray-h:154px}.fk-lens-tx small{display:none}.fk-lens{padding:6px 12px}.fk-dial{width:104px}.fk-example .fk-ex-title,.fk-ledger-note{display:none}}

/* 背景の色合い：計器を切り替えると、色が広がって変わる */
.fk-tint{position:absolute;inset:0;z-index:3;pointer-events:none;mix-blend-mode:multiply}
.fk-sweep{position:absolute;inset:0;z-index:3;pointer-events:none;mix-blend-mode:multiply;animation:fk-sweep .9s cubic-bezier(.3,.7,.2,1) both}
@keyframes fk-sweep{from{clip-path:circle(0% at var(--ox,30%) 100%)}to{clip-path:circle(150% at var(--ox,30%) 100%)}}
.route-focused .fk-tint,.route-focused .fk-sweep{display:none}
.fk-entry-tint{position:absolute;inset:0;z-index:0;pointer-events:none;mix-blend-mode:multiply;transition:background .9s ease}
.map-entry .entry-content{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.fk-sweep{animation:none}.fk-entry-tint{transition:none}}
@media(max-width:1180px){.fk-lens-wrap{width:auto}.fk-sel-dial{width:84px}}
@media(max-height:780px){.fk-sel-dial{width:86px}}

/* 計器盤の左側を詰める（説明は title に。名前だけ見せる） */
.fk-lens-wrap{width:min(430px,34%)}
.fk-lens-wrap .fk-lens-tx small{display:none}
.fk-lens-wrap .fk-lens{padding:8px 10px}
.fk-lens-wrap .fk-lens-tx b{font-size:13.5px}
.fk-sel-dial{width:96px}
.fk-quick{flex-wrap:nowrap}
.fk-ledger-l{width:min(380px,40%)}

/* 色の膜は「背景の画像」と「文字・地点」の間に置く（文字を覆わない） */
.map-scroll>.fk-tint,.map-scroll>.fk-sweep{z-index:0!important}
.map-scroll>.map-canvas{position:relative;z-index:1}

/* 背景画像（計器ごと）：色の膜の代わりに画像を重ねる */
.fk-tint,.fk-sweep{background-size:cover;background-position:center;background-repeat:no-repeat}
.fk-tint{transition:opacity .6s ease}

/* 計器のときは、海図の板を薄くして、背景画像が透けて見えるようにする */
.captain-desk .map-frame.fk-lens-on:not(.route-focused) .map-canvas::before{background:linear-gradient(145deg,rgba(255,252,244,.16),rgba(255,252,244,.08))!important;-webkit-backdrop-filter:blur(1.5px) saturate(.95)!important;backdrop-filter:blur(1.5px) saturate(.95)!important;border-color:rgba(255,255,255,.55)!important;transition:background .6s,backdrop-filter .6s}

/* 計器のときは、もとの海図の画像を隠し、選んだ背景だけを見せる */
.map-scroll::before{transition:opacity .6s ease}
.captain-desk .map-frame.fk-lens-on:not(.route-focused) .map-scroll::before{opacity:0!important}
.fk-tint,.fk-sweep{mix-blend-mode:normal!important}

/* 地図を大きく：右下の探索ボタンを外し、上下の余白を詰める */
.map-frame .exploration-bar{display:none!important}
.captain-desk.map-only-tools[data-phase] .map-frame .map-canvas{padding:72px 24px 14px 24px!important}
.captain-desk.map-only-tools[data-phase] .map-frame .map-canvas::before{inset:72px 24px 14px!important}
/* 計器のときの板：背景が透けすぎないよう、少し白く */
.captain-desk .map-frame.fk-lens-on:not(.route-focused) .map-canvas::before{background:linear-gradient(145deg,rgba(255,252,244,.5),rgba(255,252,244,.36))!important;-webkit-backdrop-filter:blur(2.5px) saturate(.95)!important;backdrop-filter:blur(2.5px) saturate(.95)!important}

.fk-entry-tint{display:none!important}
/* 幅の狭い画面（1180px以下）：収支試算帳の注意書きまで収まるよう、計器盤を高くする */
@media(max-width:1180px){.map-frame{--tray-h:216px}}
@media(max-width:1180px){.fk-sel-dial{display:none}.fk-lens-wrap{width:250px}.fk-lens-wrap .fk-lens{padding:7px 9px}.fk-ledger-l{width:min(330px,40%)}.fk-ctrl{gap:12px;padding-left:12px}}

/* 立場ごとの一言（海図の列の見出しの下） */
.atlas-region-who{font:500 12px 'Noto Sans JP',sans-serif;fill:#5a7587;text-anchor:middle;letter-spacing:.02em}
/* 始める前に知っておくこと（詳細の頭の帯） */
.route-focused .compass-view .fk-heads-up{flex:none;margin:0;padding:10px 28px;background:#f3ecd9;border-bottom:1px solid #e0d5b8;font:400 13.5px/1.7 'Noto Sans JP',sans-serif;color:#3d4f5a}
.fk-heads-up b{margin-right:12px;color:#7a5c1e;font-weight:700}
.route-focused .compass-view .fk-heads-up{padding:7px 28px;font-size:13px;line-height:1.6}
.route-focused .compass-view .route-card-head h2{font-size:30px!important;margin:0 0 8px!important}
.route-focused .compass-view .route-card-head{padding:12px 32px 10px!important}
.route-focused .compass-view .service-compass{padding:10px 24px 14px!important}

/* ===== スマホ幅（700px以下） ===== */
.fk-sheet-handle{display:none}
@media(max-width:700px){
 :root .map-frame{--tray-h:96px}
 .desk-global-search input{font-size:13px!important;padding:0 12px!important}
 /* 計器盤：下のボトムシート。4つの計器を横一列に */
 .fk-tray{left:0;right:0;bottom:0;height:calc(var(--tray-h) - 8px);border-radius:16px 16px 0 0;padding:8px 8px 10px;flex-direction:column;gap:0;overflow:visible}
 .fk-sheet-handle{display:block;position:absolute;left:50%;top:-1px;transform:translateX(-50%);width:84px;height:22px;border:0;background:none;cursor:pointer;z-index:2}
 .fk-sheet-bar{display:block;width:38px;height:4px;border-radius:2px;background:#e9dcc0aa;margin:9px auto 0}
 .fk-lens-wrap{width:100%;margin-top:14px}
 .fk-sel-dial{display:none}
 .fk-lenses{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
 .fk-lens{flex-direction:column;justify-content:center;gap:3px;padding:5px 2px;text-align:center}
 .fk-lens-ic{width:24px;height:24px}.fk-lens-ic svg{width:15px;height:15px}
 .fk-lens-tx b{font-size:11px;letter-spacing:0;white-space:nowrap}
 .fk-lens-tx small{display:none}
 /* 操作の中身は、せり上がるシートに */
 .fk-ctrl{display:none;position:absolute;left:0;right:0;bottom:100%;max-height:46vh;overflow:auto;flex-direction:column;align-items:stretch;gap:12px;padding:14px 14px 12px;border:0;border-radius:16px 16px 0 0;background:linear-gradient(#27456af2,#18314df5);border-top:1px solid #cbb07f99;box-shadow:0 -10px 24px #10243b44}
 .fk-tray.sheet-open .fk-ctrl{display:flex}
 .fk-hint{font-size:12.5px}
 .fk-compass-l{display:none}
 .fk-chip-lab{min-width:100%}
 .fk-split-bar{max-width:none}
 .fk-ledger-l,.fk-ledger-m,.fk-compass-m,.fk-check-m{width:100%}
 .fk-ex-row{gap:6px}.fk-ex-step{min-width:0;flex:1;padding:5px 8px}.fk-ex-step b{font-size:14px}
 /* 地図は計器盤の分だけ縮め、横にスクロールして見る */
 .map-frame:not(.route-focused) .map-scroll{overflow-x:auto!important}
 .atlas-filter-toggle{top:70px!important}
 /* 詳細：全面・1列。縮小海図と一覧はやめる */
 .route-focused .map-scroll,.route-focused .fk-mini-frame,.route-focused .fk-rail{display:none!important}
 .route-focused .fk-back{display:inline-flex;left:12px;top:68px}
 .route-focused .route-branch{left:8px!important;right:8px!important;top:108px!important;bottom:8px!important}
 .route-focused .compass-view .route-card-head{padding:12px 16px 10px!important}
 .route-focused .compass-view .route-card-head h2{font-size:24px!important;padding-right:96px}
 .route-focused .compass-view .route-card-head>button:nth-of-type(1){position:static;margin:6px 0}
 .route-focused .compass-view .route-card-head>button:nth-of-type(2){right:12px;top:10px}
 .fk-flip{flex-direction:column;align-items:flex-start;gap:6px}
 .fk-line{width:2px!important;height:22px;margin:0 0 0 14px;background:#a98a52;transform-origin:top}
 .fk-line:after{right:-4px;top:auto;bottom:-1px;transform:rotate(135deg)}
 .fk-flip .fk-to strong{font-size:21px}.fk-flip .fk-from strong{font-size:16px}
 .route-focused .compass-view .fk-official{position:static;align-items:stretch;margin-top:12px}
 .route-focused .compass-view .fk-official-row{flex-direction:column}
 .route-focused .compass-view .fk-official-btn{justify-content:center}
 .route-focused .compass-view .fk-official-src{text-align:left}
 .route-focused .compass-view .research-date{position:static!important;display:block;margin-top:6px!important}
 .route-focused .compass-view .fk-heads-up{padding:8px 16px;font-size:12.5px}
 .route-focused .compass-view .service-compass{display:flex!important;flex-direction:column;gap:10px!important;padding:10px 12px 14px!important;overflow:auto}
 .route-focused .compass-view .compass-area{grid-column:auto!important;grid-row:auto!important;overflow:visible!important;padding:12px 8px 12px!important}
 .route-focused .compass-view .fk-next{padding:8px 14px 10px;gap:8px}
 .route-focused .compass-view .compass-pitch{font-size:15px!important}
 /* カード全体を縦にスクロール（内側の枠は切らない） */
 .route-focused .route-branch.compass-view{display:block!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch}
 .route-focused .compass-view .route-card-head{position:relative;display:block!important}
 .route-focused .compass-view .service-compass{flex:none!important;overflow:visible!important;height:auto!important}
 .route-focused .compass-view .compass-area{min-height:0!important;max-height:none!important}
}

/* 運営者情報・免責・プライバシーへのリンク */
.desk-brand small{text-transform:none!important;letter-spacing:.02em!important}
.fk-legal-s a{font:500 11px/1.4 'Noto Sans JP',sans-serif;color:#cfe0ee;text-decoration:underline;text-underline-offset:2px}
.fk-legal-s a:hover{color:#fff}
.fk-legal-s a:focus-visible,.fk-legal-e a:focus-visible{outline:2px solid #f6e7c4;outline-offset:2px}
.fk-legal-row{margin:6px 0 0!important}
.fk-legal-e a{font:500 12.5px/1.6 'Noto Sans JP',sans-serif;color:#f6ead0;text-decoration:underline;text-underline-offset:3px;text-shadow:0 1px 6px #07172dcc}
.fk-legal-e a:hover{color:#fff}

/* 姉妹サイト（転職分析図鑑）への入口 */
.fk-sister{display:inline-flex;align-items:center;gap:12px;margin:6px 0 4px;padding:9px 18px 9px 11px;border-radius:12px;background:#16304fcc;border:1px solid #e9dcc066;color:#f6f1e3;text-decoration:none;text-align:left;backdrop-filter:blur(8px);transition:background .25s,border-color .25s,transform .25s}
.fk-sister:hover{background:#27456acc;border-color:#f2d79b;transform:translateY(-1px)}
.fk-sister:focus-visible{outline:3px solid #f6e7c4;outline-offset:2px}
.fk-book{flex:none;width:27px;height:36px;border-radius:2px 5px 5px 2px;background:linear-gradient(155deg,rgba(255,255,255,.2),rgba(255,255,255,0) 45%,rgba(0,0,0,.28)),#1F4FD8;box-shadow:inset 0 0 0 2px #1F4FD8,inset 0 0 0 3px #c9ae78,2px 3px 0 -1px #e9e2d0,4px 5px 0 -2px #cfc6b0}
.fk-sister-tx{display:flex;flex-direction:column;gap:2px}
.fk-sister-tx small{font:500 11px/1.3 'Noto Sans JP',sans-serif;color:#cfdae4}
.fk-sister-tx b{font:700 17px/1.3 'Zen Old Mincho','Noto Sans JP',serif;letter-spacing:.04em}
.fk-sister-tx em{font:400 12px/1.4 'Noto Sans JP',sans-serif;font-style:normal;color:#dbe5ee}
.fk-sister-h{display:inline-flex;align-items:center;margin-right:10px;padding:0 15px;height:38px;border-radius:19px;border:1px solid #cfe0ee77;color:#e8f0f7;font:600 12.5px/1 'Noto Sans JP',sans-serif;text-decoration:none;white-space:nowrap;background:#ffffff10;transition:background .2s}
.fk-sister-h:hover{background:#ffffff26}
.fk-sister-h:focus-visible{outline:2px solid #f6e7c4;outline-offset:2px}
.fk-zukan-link{margin-left:auto;font:600 12.5px/1.4 'Noto Sans JP',sans-serif;color:#1d3f5d;text-underline-offset:3px}
.fk-zukan-link:hover{color:#2b5a82}
.fk-zukan-link:focus-visible{outline:2px solid #1d3f5d;outline-offset:2px}
@media(max-width:900px){.fk-sister-h{display:none}}
.fk-sister-tx{min-width:0}
.fk-book-lib{background:linear-gradient(155deg,rgba(255,255,255,.2),rgba(255,255,255,0) 45%,rgba(0,0,0,.28)),#2f6b5e;box-shadow:inset 0 0 0 2px #2f6b5e,inset 0 0 0 3px #c9ae78,2px 3px 0 -1px #e9e2d0,4px 5px 0 -2px #cfc6b0}
/* 姉妹サイトの2枚: 4つの見方の下、右寄せ。メインの紺とは別の、明るい紙の札 */
.fk-sisters{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;width:100%;margin:12px 0 0}
.fk-sisters .fk-sister{box-sizing:border-box;min-width:0;max-width:100%;margin:0;padding:7px 14px 7px 9px;gap:9px;align-items:center;background:#f4efe4f2;border:1px solid #d9c9a3;color:#1d3f5d;border-radius:10px;box-shadow:0 6px 14px -8px rgba(0,0,0,.45)}
.fk-sisters .fk-sister:hover{background:#fffaf0;border-color:#b8955a;transform:translateY(-1px)}
.fk-sisters .fk-sister-tx small{color:#6b6150;font-size:10.5px}
.fk-sisters .fk-sister-tx b{font-size:14px;color:#1d3f5d}
.fk-sisters .fk-sister-tx em{display:none}
.fk-sisters .fk-book{transform:scale(.82)}
@media(max-width:900px){.fk-sisters{justify-content:stretch}.fk-sisters .fk-sister{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.fk-sister{transition:none}}
