:root{--bns-navy:#0c2a4d; --bns-blue:#1f6fd0; --bns-teal:#0f7d80; --bns-orange:#ef8516; --bns-orange-text:#c2680b; --bns-ink:#1a2230; --bns-muted:#55617a; --bns-line:#dfe5ee; --bns-bg:#ffffff; --bns-soft:#f5f8fc; --bns-radius:14px;}
.bn-s-root, .bn-s-root *{box-sizing:border-box}
.bn-s-root{scroll-behavior:smooth; scroll-padding-top:96px}
.bn-s-root{margin:0; background:var(--bns-bg); color:var(--bns-ink); font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif; font-size:16px; line-height:1.9; -webkit-text-size-adjust:100%;}
.bn-s-root img, .bn-s-root svg{max-width:100%}
.bn-s-root a{color:var(--bns-blue)}
.bn-s-root a:hover{color:var(--bns-navy)}
.bn-s-root #progress{position:fixed; top:0; left:0; height:4px; width:0; background:var(--bns-orange); z-index:100; transition:width .08s linear}
.bn-s-site-header{position:sticky; top:0; z-index:90; background:rgba(255,255,255,.96); backdrop-filter:saturate(160%) blur(8px); border-bottom:1px solid var(--bns-line)}
.bn-s-hdr-in{max-width:1180px; margin:0 auto; padding:10px 20px; display:flex; align-items:center; gap:18px; flex-wrap:wrap}
.bn-s-logo{font-weight:800; letter-spacing:.04em; color:var(--bns-navy); font-size:19px; text-decoration:none; white-space:nowrap}
.bn-s-logo span{color:var(--bns-orange-text)}
.bn-s-nav{display:flex; gap:14px; flex-wrap:wrap; font-size:13px}
.bn-s-nav a{color:var(--bns-muted); text-decoration:none; padding:6px 2px; min-height:32px; display:inline-flex; align-items:center}
.bn-s-nav a:hover{color:var(--bns-navy)}
.bn-s-wrap{max-width:1180px; margin:0 auto; padding:0 20px}
.bn-s-crumb{font-size:12.5px; color:var(--bns-muted); padding:14px 0 0}
.bn-s-crumb a{color:var(--bns-blue); text-decoration:none}
.bn-s-crumb a:hover{text-decoration:underline}
.bn-s-hero{padding:20px 0 8px; border-bottom:1px solid var(--bns-line)}
.bn-s-chips{display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-bottom:16px}
.bn-s-chip{font-size:12px; font-weight:700; padding:5px 11px; border-radius:999px; border:1px solid var(--bns-line); color:var(--bns-navy); background:var(--bns-soft)}
.bn-s-chip.bn-s-cat{background:#eaf2fc; border-color:#cfe0f6; color:#164b8f}
.bn-s-chip.bn-s-lv-adv{background:#fdecec; border-color:#f3c9c9; color:#b3261e}
.bn-s-chip.bn-s-star{background:#fff4e6; border-color:#fadfba; color:var(--bns-orange-text)}
.bn-s-root h1{font-size:clamp(22px,4vw,34px); line-height:1.44; color:var(--bns-navy); margin:0 0 14px; letter-spacing:.01em}
.bn-s-sub{font-size:clamp(15px,2.1vw,17px); color:var(--bns-muted); margin:0 0 18px; line-height:1.8}
.bn-s-trust{display:flex; gap:8px 18px; flex-wrap:wrap; font-size:12.5px; color:var(--bns-muted); border-top:1px dashed var(--bns-line); border-bottom:1px dashed var(--bns-line); padding:11px 0; margin-bottom:20px}
.bn-s-trust b{color:var(--bns-navy)}
.bn-s-root figure{margin:0 0 22px}
.bn-s-ph{aspect-ratio:16/9; border:2px dashed #c3d1e4; border-radius:var(--bns-radius); background: repeating-linear-gradient(135deg,#fbfcfe,#fbfcfe 12px,#f4f7fb 12px,#f4f7fb 24px); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; text-align:center; padding:16px;}
.bn-s-ph .bn-s-t{font-weight:800; color:var(--bns-navy); font-size:15px}
.bn-s-ph .bn-s-s{font-size:12.5px; color:var(--bns-muted); max-width:640px}
.bn-s-root figcaption{font-size:12.5px; color:var(--bns-muted); margin-top:8px; line-height:1.7}
.bn-s-layout{display:grid; grid-template-columns:1fr 268px; gap:40px; align-items:start; padding:26px 0 10px}
.bn-s-root main{min-width:0}
.bn-s-toc{position:sticky; top:78px; border:1px solid var(--bns-line); border-radius:var(--bns-radius); padding:16px 14px; background:var(--bns-soft)}
.bn-s-toc h2{font-size:12px; letter-spacing:.12em; color:var(--bns-muted); margin:0 0 10px; font-weight:800; border:none; padding:0}
.bn-s-toc h2::after{display:none}
.bn-s-toc ol{list-style:none; margin:0; padding:0; counter-reset:t}
.bn-s-toc li{counter-increment:t; margin:0 0 2px}
.bn-s-toc a{display:flex; gap:9px; text-decoration:none; color:var(--bns-muted); font-size:13px; line-height:1.55; padding:8px 9px; border-radius:9px; border-left:3px solid transparent}
.bn-s-toc a::before{content:counter(t); font-weight:800; color:#a9b6cc; font-size:11.5px; padding-top:2px}
.bn-s-toc a:hover{background:#fff; color:var(--bns-navy)}
.bn-s-toc a.bn-s-active{background:#fff; color:var(--bns-navy); font-weight:700; border-left-color:var(--bns-orange)}
.bn-s-toc a.bn-s-active::before{color:var(--bns-orange-text)}
.bn-s-lede{border:1px solid var(--bns-line); border-left:5px solid var(--bns-teal); border-radius:var(--bns-radius); background:#f4faf9; padding:18px 22px; margin:0 0 24px}
.bn-s-lede .bn-s-lab{font-size:11.5px; font-weight:800; letter-spacing:.11em; color:var(--bns-teal); margin-bottom:8px}
.bn-s-lede p{margin:0 0 12px; font-size:15px}
.bn-s-lede p:last-child{margin-bottom:0}
.bn-s-spine{border:1px solid #cfe0f6; border-left:5px solid var(--bns-blue); border-radius:var(--bns-radius); background:#f7fbff; padding:20px 22px; margin:0 0 26px}
.bn-s-spine .bn-s-lab{font-size:11.5px; font-weight:800; letter-spacing:.11em; color:var(--bns-blue); margin-bottom:8px}
.bn-s-spine p{margin:0; font-size:clamp(16px,2.3vw,18.5px); font-weight:700; line-height:1.85; color:var(--bns-navy)}
.bn-s-kpi{display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:0 0 30px}
.bn-s-kpi div{border:1px solid var(--bns-line); border-radius:var(--bns-radius); padding:15px 14px; background:#fff; box-shadow:0 1px 3px rgba(12,42,77,.05)}
.bn-s-kpi .bn-s-k{font-size:11.5px; color:var(--bns-muted); font-weight:700; letter-spacing:.03em; margin-bottom:6px; line-height:1.5}
.bn-s-kpi .bn-s-v{font-size:clamp(16px,2.5vw,20px); font-weight:800; color:var(--bns-navy); line-height:1.35}
.bn-s-kpi .bn-s-v em{font-style:normal; color:var(--bns-orange-text)}
.bn-s-kpi .bn-s-n{font-size:11.5px; color:var(--bns-muted); margin-top:4px}
.bn-s-root section{scroll-margin-top:92px; padding:6px 0 4px}
.bn-s-root h2{font-size:clamp(19px,2.9vw,25px); color:var(--bns-navy); line-height:1.5; margin:34px 0 6px; padding-bottom:10px; border-bottom:2px solid var(--bns-line); position:relative}
.bn-s-root h2::after{content:""; position:absolute; left:0; bottom:-2px; width:78px; height:2px; background:var(--bns-orange)}
.bn-s-root h3{font-size:16.5px; color:var(--bns-navy); margin:24px 0 6px}
.bn-s-root p{margin:0 0 15px}
.bn-s-easy{font-size:12px; font-weight:800; letter-spacing:.1em; color:var(--bns-teal); margin:18px 0 6px}
.bn-s-claim{border-left:4px solid var(--bns-orange); background:#fffaf3; border-radius:0 12px 12px 0; padding:13px 16px; margin:16px 0 18px}
.bn-s-claim b{color:var(--bns-orange-text)}
.bn-s-root strong{font-weight:800}
.bn-s-note{font-size:13px; color:var(--bns-muted)}
.bn-s-caution{border:1px solid #fadfba; background:#fff8ef; border-radius:12px; padding:13px 16px; font-size:14px; color:#4a3a26; margin:14px 0 18px}
.bn-s-caution b{color:var(--bns-orange-text)}
.bn-s-cite{border:1px solid #cfe0f6; border-radius:12px; background:#f7fbff; padding:14px 16px; margin:16px 0 18px}
.bn-s-cite .bn-s-lab{display:inline-block; font-size:11px; font-weight:800; letter-spacing:.08em; padding:3px 9px; border-radius:999px; background:#eaf2fc; color:#164b8f; border:1px solid #cfe0f6; margin-bottom:8px}
.bn-s-cite .bn-s-q{margin:0 0 12px; font-size:15px; color:var(--bns-navy); font-weight:700; line-height:1.85}
.bn-s-cite .bn-s-lab2{display:inline-block; font-size:11px; font-weight:800; letter-spacing:.08em; padding:3px 9px; border-radius:999px; background:#e8f4f4; color:#0f7d80; border:1px solid #bfdedd; margin-bottom:8px}
.bn-s-cite .bn-s-exp{margin:0; font-size:14.5px; line-height:1.85}
.bn-s-cite-foot{font-size:13px; color:var(--bns-muted); border-top:1px solid var(--bns-line); padding-top:9px; margin-top:12px}
ol.bn-s-steps{padding-left:22px; margin:12px 0 18px}
ol.bn-s-steps li{margin-bottom:10px; line-height:1.85}
.bn-s-root details{border:1px solid var(--bns-line); border-radius:12px; background:#fbfcfe; margin:14px 0 18px; overflow:hidden}
.bn-s-root details[open]{background:#fff}
.bn-s-root summary{cursor:pointer; padding:13px 16px; font-weight:700; font-size:14px; color:var(--bns-navy); list-style:none; display:flex; align-items:center; gap:9px; min-height:48px}
.bn-s-root summary::-webkit-details-marker{display:none}
.bn-s-root summary::before{content:"＋"; color:var(--bns-orange-text); font-weight:800; font-size:14px}
.bn-s-root details[open] summary::before{content:"－"}
details .bn-s-body{padding:0 16px 14px; font-size:14.5px; line-height:1.85; color:#2b3648; border-top:1px solid var(--bns-line); padding-top:13px}
details .bn-s-body p:last-child{margin-bottom:0}
.bn-s-tw{overflow-x:auto; margin:16px 0 20px; border:1px solid var(--bns-line); border-radius:var(--bns-radius)}
.bn-s-root table{border-collapse:collapse; width:100%; min-width:520px; font-size:14px}
.bn-s-root th, .bn-s-root td{padding:11px 13px; border-bottom:1px solid var(--bns-line); text-align:left; vertical-align:top; line-height:1.7}
.bn-s-root thead th{background:var(--bns-navy); color:#fff; font-size:12.5px; font-weight:700; letter-spacing:.02em; border-bottom:none}
.bn-s-root tbody tr:last-child td{border-bottom:none}
.bn-s-root tbody tr:nth-child(even){background:#fafbfd}
.bn-s-root td em{font-style:normal; font-weight:800; color:var(--bns-orange-text)}
.bn-s-faq details{border-radius:12px}
.bn-s-faq summary{font-size:15px}
.bn-s-faq summary::before{content:"Q"; color:var(--bns-blue); font-weight:800}
.bn-s-faq details[open] summary::before{content:"Q"}
.bn-s-analysis{border:1px solid var(--bns-line); border-left:5px solid var(--bns-blue); border-radius:var(--bns-radius); background:#fbfcfe; padding:8px 22px 18px; margin:14px 0}
.bn-s-analysis .bn-s-tag{display:inline-block; font-size:11px; font-weight:800; letter-spacing:.08em; padding:3px 10px; border-radius:999px; background:#eaf2fc; color:#164b8f; border:1px solid #cfe0f6; margin:14px 0 4px}
.bn-s-analysis ul{padding-left:20px; margin:10px 0 0}
.bn-s-analysis li{margin-bottom:10px; font-size:15px; line-height:1.85}
.bn-s-author{border:1px solid var(--bns-line); border-radius:var(--bns-radius); padding:20px 22px; background:var(--bns-soft); margin:30px 0}
.bn-s-author .bn-s-who{font-weight:800; color:var(--bns-navy); font-size:15.5px; margin-bottom:4px}
.bn-s-author .bn-s-role{font-size:13px; color:var(--bns-muted); margin-bottom:14px}
.bn-s-policy{display:grid; grid-template-columns:repeat(3,1fr); gap:12px}
.bn-s-policy div{background:#fff; border:1px solid var(--bns-line); border-radius:11px; padding:13px 14px}
.bn-s-policy .bn-s-t{font-size:12.5px; font-weight:800; color:var(--bns-teal); margin-bottom:4px}
.bn-s-policy .bn-s-d{font-size:13px; color:#2b3648; line-height:1.75}
.bn-s-src{border:1px solid var(--bns-line); border-radius:var(--bns-radius); padding:6px 20px 16px}
.bn-s-src ol{padding-left:20px; margin:12px 0 0}
.bn-s-src li{margin-bottom:11px; font-size:14.5px; line-height:1.75}
.bn-s-src a{word-break:break-all}
.bn-s-src .bn-s-u{display:block; font-size:11.5px; color:var(--bns-muted); word-break:break-all}
.bn-s-wrapup{border:1px solid #cfe0f6; border-radius:var(--bns-radius); background:#f7fbff; padding:8px 22px 18px; margin:14px 0}
.bn-s-wrapup ul{padding-left:20px; margin:12px 0 0}
.bn-s-wrapup li{margin-bottom:10px; font-size:15px; line-height:1.85}
.bn-s-log{font-size:13.5px; color:var(--bns-muted); border-top:1px solid var(--bns-line); padding-top:14px; margin-top:28px}
.bn-s-site-footer{border-top:1px solid var(--bns-line); background:var(--bns-navy); color:#c9d7e8; margin-top:44px; padding:28px 0}
.bn-s-site-footer .bn-s-wrap{display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; align-items:center}
.bn-s-site-footer .bn-s-fl{font-weight:800; color:#fff; letter-spacing:.04em}
.bn-s-site-footer .bn-s-fr{font-size:12.5px}
@media (max-width:900px){.bn-s-layout{grid-template-columns:1fr; gap:0}.bn-s-toc{position:static; margin-bottom:26px}.bn-s-kpi{grid-template-columns:repeat(2,1fr)}.bn-s-policy{grid-template-columns:1fr}}
@media (max-width:560px){.bn-s-root{font-size:15.5px}.bn-s-wrap{padding:0 15px}.bn-s-kpi{grid-template-columns:1fr}.bn-s-trust{font-size:12px}}