/* 語句の途中の分断・句読点のぶら下がり・短い最終行を避ける。 */
.main,.compare-pair{line-break:strict;word-break:normal;overflow-wrap:break-word}
@supports(word-break:auto-phrase){.main,.compare-pair{word-break:auto-phrase}}
.main p,.main li,.main .callout,.compare-pair p,.compare-pair li,.compare-pair .callout{text-wrap:pretty}
.main h1,.main h2,.main h3,.main h4,.compare-pair h1,.compare-pair h2,.compare-pair h3,.compare-pair h4{text-wrap:balance;word-break:normal;overflow-wrap:normal}
.main .mini,.main .card,.main .node,.main .step,.main .bridge .big,.main .matrix>div,.main .tree-box,.main .decision-line .side,.main .relation .rbox,.compare-pair .mini,.compare-pair .card,.compare-pair .node,.compare-pair .step{overflow-wrap:break-word;word-break:normal}
.main .node,.main .step,.compare-pair .node,.compare-pair .step{text-wrap:balance}
.keep-term{white-space:nowrap}
.main .section-heading,.compare-pair .section-heading{column-gap:20px}
.main .pair-link,.compare-pair .pair-link{white-space:nowrap;word-break:keep-all}
/* 語句を保った表は、ページ幅を広げず表の中で横へ読む。 */
.main table{display:block;max-width:100%;overflow-x:auto;word-break:normal;overflow-wrap:break-word}
/* 初出説明は本文と同じ明暗差で表示し、小画面では縦に並べる。 */
.first-use-note{background:#f0f5fa;color:#172033;border:1px solid #c6d2df;border-left:4px solid #245586;border-radius:8px;padding:16px 20px;margin:18px 0 24px;font-size:14px;line-height:1.75}
.first-use-note .first-use-label{margin:0 0 10px;font-size:14px;font-weight:700;color:#172033}
.first-use-note dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:0}
.first-use-note dl>div{min-width:0;border-top:1px solid #c6d2df;padding-top:8px}
.first-use-note dt{font-weight:700;color:#172033;overflow-wrap:anywhere}
.first-use-note dd{margin:3px 0 0;color:#172033}
@media(max-width:700px){.first-use-note{padding:14px 16px}.first-use-note dl{grid-template-columns:1fr}}
/* 長い初出説明を用語集へ移し、本文には短い導線を残す。 */
.glossary-shortcut{margin:10px 0 16px;font-size:14px;line-height:1.5}
.glossary-shortcut a{display:inline-block;padding:7px 11px;border:1px solid #245586;border-radius:8px;background:#f0f5fa;color:#173b67;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.glossary-shortcut a:hover{background:#e2edf8}
.glossary-shortcut a:focus-visible,.glossary-fab:focus-visible{outline:3px solid #f59e0b;outline-offset:3px}
.glossary-fab{position:fixed;right:16px;bottom:16px;z-index:1000;padding:9px 15px;border:2px solid #fff;border-radius:999px;background:#173b67;color:#fff!important;font-size:14px;font-weight:800;text-decoration:none;box-shadow:0 3px 12px rgba(0,0,0,.25)}
.glossary-fab:hover{background:#102c4e}
@media(max-width:700px){.glossary-fab{right:10px;bottom:10px;padding:8px 13px}}
/* 色の継承による白地の薄い文字、色付き背景の白文字を修正。 */
.main .decision-line .side,.compare-pair .decision-line .side{color:#172033}
.main .rate-part:nth-child(4),.main .howto .how-row:before,.compare-pair .rate-part:nth-child(4),.compare-pair .howto .how-row:before{color:#172033}
.main .tiny,.main .field label,.main footer,.compare-pair .tiny{font-size:13px}
/* 計算機が生成する感応度表は、淡いセルに濃い文字を固定する。 */
.main .heat>div,.compare-pair .heat>div{color:#172033}
.main .heat>div.h,.compare-pair .heat>div.h,.main .heat>div.head,.compare-pair .heat>div.head{color:#ffffff;background:#172033}
/* 棒の外側にある数値・項目名は、棒の色ではなく図の淡い背景に合わせる。 */
.main .bar em,.main .bar span,.compare-pair .bar em,.compare-pair .bar span{color:#172033!important;font-size:13px}
.main .pv-bar em,.main .pv-bar span,.main .time-seg b,.main .time-seg span{color:#172033!important;font-size:13px}
/* 折返しで棒にかかるラベルも、専用の淡い下地で読めるようにする。 */
.main .bar em,.main .bar span,.main .pv-bar em,.main .pv-bar span,.compare-pair .bar em,.compare-pair .bar span{background:#f8fbfc}
.main .timeline .segment b,.main .timeline .segment span{color:#172033!important;font-size:13px}
