body.asogi-redesign.article-rollout .rollout-header{ padding-bottom:0; }
body.asogi-redesign .rollout-hero{ margin:0; }
body.asogi-redesign .rollout-hero img{ display:block; width:100%; height:auto; object-fit:contain; }
body.asogi-redesign .rollout-header--text{ display:block; }
body.asogi-redesign .rollout-header--text .article-header__copy{ max-width:748px; margin-inline:auto; padding-block:18px 24px; }
body.asogi-redesign .rollout-key-points{ margin-block:0 28px; }
body.asogi-redesign .rollout-key-points ul{ padding-left:1.2em; margin:0; }
body.asogi-redesign .rollout-key-points li{ display:list-item; grid-template-columns:none; font-size:17px; line-height:1.85; margin-top:10px; }
body.asogi-redesign.article-rollout .article-aside .toc{ max-height:calc(100dvh - 130px); overflow-y:auto; }
body.asogi-redesign .rollout-body.asogi-redesign > section > h2{ font-family:var(--font); }
body.asogi-redesign .rollout-body.asogi-redesign > section:first-child > h2{ margin-top:20px !important; }
body.asogi-redesign .rollout-body.asogi-redesign h3{ font-size:21px; line-height:1.7; margin:36px 0 16px; }
body.asogi-redesign .rollout-body.asogi-redesign p,body.asogi-redesign .rollout-body.asogi-redesign li,body.asogi-redesign .rollout-body.asogi-redesign dd{ font-size:18px; line-height:1.9; }
body.asogi-redesign .rollout-body.asogi-redesign ul,body.asogi-redesign .rollout-body.asogi-redesign ol{ padding-left:1.4em; margin-block:22px 32px; }
body.asogi-redesign .rollout-body.asogi-redesign li + li{ margin-top:12px; }
body.asogi-redesign .rollout-body.asogi-redesign dl{ margin:28px 0 36px; }
body.asogi-redesign .rollout-body.asogi-redesign dl > div{ display:grid; grid-template-columns:180px minmax(0,1fr); gap:20px; padding:22px 0; border-top:1px solid var(--line); }
body.asogi-redesign .rollout-body.asogi-redesign dt{ font-size:17px; line-height:1.8; font-weight:650; }
body.asogi-redesign .rollout-body.asogi-redesign dd{ margin:0; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-note"]{ padding:20px 22px; border-left:3px solid var(--link); background:var(--caution-bg); }
body.asogi-redesign .rollout-body.asogi-redesign aside[aria-label*="注意"]{ margin-block:28px; padding:20px 22px; border-left:3px solid #8B4030; background:var(--caution-bg); }
body.asogi-redesign .rollout-body.asogi-redesign aside[aria-label*="注意"] p:last-child{ margin-bottom:0; }
body.asogi-redesign .rollout-body.asogi-redesign > aside{ margin:48px 0; padding:26px 0; border-block:1px solid #D8B7A5; background:transparent; }
body.asogi-redesign .rollout-body.asogi-redesign > aside p{ font-size:17px; margin-bottom:14px; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-cta-label"]{ color:var(--link); font-size:14px; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-cta-title"]{ font-weight:650; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-cta-actions"]{ display:flex; flex-wrap:wrap; gap:18px 28px; margin:20px 0; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-cta-actions"] a{ font-weight:650; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-clinics"]{ list-style:none; padding-left:0; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-clinics"] li{ border-top:1px solid var(--line); padding-block:20px; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-clinics"] strong,body.asogi-redesign .rollout-body.asogi-redesign [class$="-clinics"] span{ display:block; }
body.asogi-redesign .rollout-body.asogi-redesign figure{ margin:34px 0 40px; max-width:100%; }
body.asogi-redesign .diagram-viewport{ overflow-x:auto; overscroll-behavior-inline:contain; border:1px solid var(--line); }
body.asogi-redesign .diagram-viewport img{ width:100%; height:auto; display:block; }
body.asogi-redesign .diagram-tools{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:14px; margin-top:10px; }
body.asogi-redesign .diagram-scroll-hint{ display:none; }
body.asogi-redesign .rollout-body.asogi-redesign figcaption{ font-size:15px; color:var(--muted); margin-top:12px; }
body.asogi-redesign .article-table-scroll{ overflow-x:auto; }
body.asogi-redesign .rollout-body.asogi-redesign table{ border-collapse:collapse; width:100%; margin:24px 0; }
body.asogi-redesign .rollout-body.asogi-redesign th,body.asogi-redesign .rollout-body.asogi-redesign td{ border:1px solid var(--line); padding:16px; font-size:16px; vertical-align:top; }
body.asogi-redesign .rollout-body.asogi-redesign th{ background:var(--ivory); }
body.asogi-redesign .rollout-body.asogi-redesign details{ border-bottom:1px solid var(--line); }
body.asogi-redesign .rollout-body.asogi-redesign summary{ cursor:pointer; font-size:18px; font-weight:650; line-height:1.85; padding:24px 0; }
body.asogi-redesign .rollout-body.asogi-redesign details p{ padding-bottom:22px; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-sources"] > ol{ padding-left:1.25em; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-sources"] > ol li{ font-size:15px; overflow-wrap:anywhere; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-sources"] > ol span{ display:block; color:var(--muted); font-size:14px; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-related"]{ margin-top:40px; border-top:1px solid var(--line); }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-related"] ul{ list-style:none; padding-left:0; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-related"] li{ border-bottom:1px solid var(--line); padding-block:16px; }
body.asogi-redesign .rollout-body.asogi-redesign > .rollout-safety{ margin-top:56px; padding:26px; border-left:3px solid #8B4030; background:var(--caution-bg); }
body.asogi-redesign .rollout-body.asogi-redesign > .rollout-safety > h2{ border-top:0; padding-top:0; margin-top:0; }
body.asogi-redesign .rollout-body.asogi-redesign .rollout-information{ font-size:14px; color:var(--muted); margin:36px 0; display:flex; gap:8px; flex-wrap:wrap; }
body.asogi-redesign .rollout-back{ display:flex; gap:24px; padding-block:20px; border-top:1px solid var(--line); }
body.asogi-redesign .rollout-review{ padding:24px; background:var(--ivory); margin-bottom:36px; }
body.asogi-redesign .rollout-body.asogi-redesign section[id]{ scroll-margin-top:20px; }
@media(max-width:760px){body.asogi-redesign.article-rollout .article-layout{ width:calc(100% - 32px); }
body.asogi-redesign .rollout-header--text .article-header__copy{ padding-block:0 16px; }
body.asogi-redesign .rollout-key-points{ margin-bottom:0; }
body.asogi-redesign .rollout-key-points li{ font-size:17px; }
body.asogi-redesign .rollout-body.asogi-redesign{ width:100%; }
body.asogi-redesign .rollout-body.asogi-redesign h3{ font-size:19px; }
body.asogi-redesign .rollout-body.asogi-redesign p,body.asogi-redesign .rollout-body.asogi-redesign li,body.asogi-redesign .rollout-body.asogi-redesign dd{ font-size:18px; line-height:1.85; }
body.asogi-redesign .rollout-body.asogi-redesign dl > div{ grid-template-columns:1fr; gap:10px; padding-block:20px; }
body.asogi-redesign .rollout-body.asogi-redesign > aside{ margin-block:36px; }
body.asogi-redesign .rollout-body.asogi-redesign > .rollout-safety{ padding:22px 18px; }
body.asogi-redesign .rollout-body.asogi-redesign [class$="-note"]{ padding:18px; }
body.asogi-redesign .diagram-viewport img{ width:760px; max-width:none; }
body.asogi-redesign .diagram-scroll-hint{ display:block; font-size:14px; margin-bottom:10px; }
body.asogi-redesign.article-rollout .article-aside .toc{ max-height:none; overflow:visible; }
body.asogi-redesign .rollout-body.asogi-redesign table{ min-width:620px; }
body.asogi-redesign .rollout-body.asogi-redesign section[id]{ scroll-margin-top:0; }

}


body.asogi-redesign.article-rollout .rollout-hero img{ aspect-ratio:3/2; object-fit:contain; width:100%; height:auto; }
body.asogi-redesign .responsive-diagram{ color:var(--ink); background:#fff; border-block:1px solid #D8B7A5; padding:22px 0; max-width:100%; font-family:var(--font); scroll-margin-top:100px; }
body.asogi-redesign .responsive-diagram .vd-title{ font-size:18px; font-weight:700; line-height:1.7; margin-bottom:20px; }
body.asogi-redesign .vd-flow{ display:flex; flex-direction:column; gap:24px; }
body.asogi-redesign .vd-flow > *{ position:relative; }
body.asogi-redesign .vd-flow > * + *::before{ content:'↓'; position:absolute; top:-25px; left:calc(50% - .5em); color:#8B4030; font-size:20px; line-height:24px; }
body.asogi-redesign .vd-parallel,body.asogi-redesign .vd-compare{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
body.asogi-redesign .vd-branches{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; padding-top:24px; position:relative; align-items:start; }
body.asogi-redesign .vd-branches > *{ position:relative; }
body.asogi-redesign .vd-flow > .vd-branches::before{ content:''; width:calc(50% + 10px); height:12px; border-top:1px solid #AF543F; left:calc(25% - 5px); top:0; }
body.asogi-redesign .vd-branches::after{ content:''; position:absolute; height:24px; border-left:1px solid #AF543F; top:-24px; left:50%; }
body.asogi-redesign .vd-branches > *::before{ content:'↓'; color:#8B4030; position:absolute; top:-25px; left:calc(50% - .5em); font-size:20px; }
body.asogi-redesign .vd-branches .vd-item{ height:auto; min-height:110px; border-top:2px solid #AF543F; }
body.asogi-redesign .vd-branches > .vd-flow .vd-item-copy{ display:block; }
body.asogi-redesign .vd-parallel{ border:1px solid #D8B7A5; padding:14px; }
body.asogi-redesign .vd-parallel .vd-item{ background:#fff; border-bottom:1px solid #E8E0DC; padding:10px 6px; }
body.asogi-redesign .vd-item{ display:flex; align-items:flex-start; gap:12px; padding:16px 18px; background:#FFF5EE; min-width:0; }
body.asogi-redesign .vd-item-copy{ min-width:0; flex:1; }
body.asogi-redesign .vd-label{ display:block; font-size:18px; line-height:1.65; font-weight:650; overflow-wrap:anywhere; }
body.asogi-redesign .vd-line{ font-size:17px; line-height:1.7; margin-top:6px; overflow-wrap:anywhere; }
body.asogi-redesign .vd-compare .vd-item{ border-top:2px solid #AF543F; background:#FFF8F3; }
body.asogi-redesign .vd-compare .vd-item:nth-child(even){ background:#F6F3F1; border-color:#70625D; }
body.asogi-redesign .vd-compare .vd-line + .vd-line{ border-top:1px solid #E8E0DC; padding-top:8px; margin-top:8px; }
body.asogi-redesign .vd-note,body.asogi-redesign .vd-intro{ font-size:16px; line-height:1.8; }
body.asogi-redesign .vd-intro{ margin-bottom:18px; }
body.asogi-redesign .vd-note{ margin-top:20px; padding-left:12px; border-left:3px solid #AF543F; }
body.asogi-redesign .vd-note span + span{ display:block; }
body.asogi-redesign .vd-number{ flex:none; min-width:1.4em; font-size:16px; color:#8B4030; font-weight:700; line-height:1.9; }
body.asogi-redesign .responsive-diagram + figcaption{ font-size:14px; line-height:1.7; margin-top:10px; color:var(--muted); }
@media(min-width:761px){body.asogi-redesign .vd-flow > .vd-item .vd-item-copy{ display:grid; grid-template-columns:minmax(160px,1fr) minmax(0,1.3fr); align-items:start; gap:8px 20px; }
body.asogi-redesign .vd-flow > .vd-item .vd-line{ margin:0; }
body.asogi-redesign .vd-flow > .vd-item .vd-label:only-child{ grid-column:1/-1; }

}
@media(max-width:760px){body.asogi-redesign .responsive-diagram{ padding-block:20px; }
body.asogi-redesign .vd-compare{ grid-template-columns:1fr; }
body.asogi-redesign .vd-parallel{ gap:10px; padding:10px; }
body.asogi-redesign .vd-parallel .vd-item{ padding:8px 2px; }
body.asogi-redesign .vd-parallel .vd-label{ font-size:17px; }
body.asogi-redesign .vd-parallel .vd-line{ font-size:16px; }
body.asogi-redesign .vd-item{ padding:14px; }
body.asogi-redesign .vd-flow{ gap:24px; }
body.asogi-redesign .vd-flow > .vd-item .vd-item-copy{ display:grid; grid-template-columns:minmax(92px,.85fr) minmax(0,1.3fr); gap:6px 12px; align-items:start; }
body.asogi-redesign .vd-flow > .vd-item .vd-line{ margin:0; }
body.asogi-redesign .vd-flow > .vd-item .vd-label:only-child{ grid-column:1/-1; }
body.asogi-redesign .vd-flow > .vd-item--wide .vd-item-copy,body.asogi-redesign .vd-branches .vd-item .vd-item-copy{ display:block; }
body.asogi-redesign .vd-flow > .vd-item--wide .vd-line,body.asogi-redesign .vd-branches .vd-item .vd-line{ margin-top:6px; }

}
