@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
.cad-three{display:grid;gap:20px}.cad-figure-title{font-size:20px;font-weight:700;color:var(--color-navy);margin-bottom:20px}.cad-preparation .card-icon{width:48px;height:48px;margin-bottom:16px;color:var(--color-navy)}
.prep{padding:24px;border:1px solid var(--color-border);border-radius:12px;background:white}.prep>div{min-width:0}.prep>div>*+*{margin-top:20px}.prep>.num{margin-bottom:16px}.prep .table-scroll{max-width:100%}.h4{font-size:18px;color:var(--color-navy)}
.cad-salary{padding:24px;border:1px solid var(--color-border);border-radius:12px;background:white}.cad-legend{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;font-size:14px}.cad-legend p{margin:0;display:flex;align-items:center;gap:8px}.cad-legend-key{width:24px;height:12px;display:inline-block}.national{background:#7186a2}.regional{background:#1b2e4b}.cad-chart-row{display:grid;grid-template-columns:44px minmax(0,1fr) 76px;gap:8px;align-items:center;padding:16px 0;border-top:1px solid var(--color-border)}.cad-chart-region{font-size:14px;font-weight:700}.cad-chart-track{position:relative;height:16px;background:#f4f6f9}.cad-chart-track:after{content:'';position:absolute;left:var(--national-position);top:-17px;bottom:-17px;border-left:2px dashed #4b5563}.cad-chart-bar{display:block;height:100%;border-radius:2px}.cad-chart-value{text-align:right;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.cad-drawing{color:var(--color-navy)}.cad-drawing.secondary{background:#f4f6f9;color:#586779}.cad-blueprint{width:100%;height:auto;margin-top:20px}.cad-drawing.secondary .cad-blueprint{opacity:.6}
#flow>.stack{position:relative}#flow .step{min-width:0}.cad-branch{grid-column:2;padding:16px;border-left:1px solid var(--color-primary);border-bottom:1px solid var(--color-primary);font-size:14px;color:var(--color-navy);background:#f4f6f9;position:relative}.cad-branch:after{content:'';position:absolute;bottom:-5px;left:-5px;width:8px;height:8px;border-right:1px solid var(--color-primary);border-bottom:1px solid var(--color-primary);transform:rotate(45deg)}
#career>.cad-career{max-width:960px}.cad-career .step{display:flex;flex-direction:column;padding:24px;gap:16px;background:var(--color-accent-bg);border-bottom:3px solid var(--color-navy);border-radius:8px}.cad-career .step:after{display:none}.cad-correspondence{padding-top:12px;border-top:1px solid var(--color-border)}.cad-career-link{margin-top:12px;display:inline-flex;align-items:center;gap:8px;min-height:44px}.cad-career-link:after{content:'';width:7px;height:7px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}
#fv .cad-hero{margin:0;order:8;align-self:start}#fv .cad-hero img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
@media(min-width:768px){.cad-three{grid-template-columns:repeat(3,minmax(0,1fr))}.prep{padding:32px}.cad-chart-row{grid-template-columns:56px minmax(0,1fr) 100px;gap:20px}.cad-chart-value{font-size:16px}#flow>.stack{max-width:1200px;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;align-items:stretch}#flow .step{display:flex;flex-direction:column;gap:16px;padding-bottom:120px}#flow .step:not(:last-child):after{left:40px;right:-20px;top:20px;bottom:auto;width:auto;height:2px}#flow .step .h3{font-size:18px}#flow .step p{font-size:15px}.cad-branch{position:absolute;bottom:0;left:0;width:calc(200% + 20px);min-height:96px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-primary);border-top:0;background:white}.cad-branch:after{left:auto;right:-5px;top:0;bottom:auto;transform:rotate(225deg)}.cad-branch>p{background:white;padding:8px;font-size:14px!important}.cad-career{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px}.cad-career .step{padding:20px;min-height:380px}.cad-career .step:nth-child(2){min-height:430px}.cad-career .step:nth-child(3){min-height:480px}.cad-career .step:nth-child(4){min-height:530px}#fv .cad-hero{grid-area:4/2/6/3}#fv .cad-hero img{aspect-ratio:16/9}}
@media print{.cad-chart-row,.cad-career .step{break-inside:avoid}}

a,button,.opt{min-width:44px;min-height:44px}.cad-career-link{overflow-wrap:anywhere}

/* 職業訓練の表は列が多いので、スマホでは枠の中で横にスクロール（金型の職業訓練の表と同じ扱い） */
.prep table{min-width:560px}
