@charset "UTF-8";
/* コラム（/column/）専用。site.css の変数と見た目に合わせる */
.col-intro h1{max-width:20em}
.col-kicker{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin:0 0 1.1rem;color:var(--muted);font-size:.84rem;letter-spacing:.06em}
.col-kicker a{color:var(--muted);text-decoration:none}.col-kicker a:hover{color:var(--ink)}
.col-kicker span{padding-left:1.1rem;border-left:1px solid var(--line)}.col-kicker .col-kicker-first{padding-left:0;border-left:0}
.col-subtitle{margin:.9rem 0 0;color:var(--muted);font-family:var(--serif);font-size:clamp(1.05rem,1.6vw,1.25rem);letter-spacing:.03em}
.col-meta{display:flex;flex-wrap:wrap;gap:.3rem 1.4rem;margin:1.6rem 0 0;color:var(--muted);font-size:.86rem}
.col-meta a{color:inherit}
.col-body{padding-top:clamp(3rem,7vw,4.5rem)}
.col-body>section{margin:0 0 clamp(2.8rem,6vw,3.8rem)}
.col-body h2{margin:0 0 1.2rem;font-size:clamp(1.25rem,2.2vw,1.6rem)}
.col-body h3{margin:1.9rem 0 .45rem;font-size:1.05rem}
.col-body ul,.col-body ol{margin:0 0 1.15rem;padding-left:1.3rem}
.col-body li{margin-bottom:.45rem}
.col-body p a,.col-body li a{text-decoration-color:var(--line)}
.col-fig{margin:2.4rem 0 2.6rem}
.col-fig svg{display:block;width:100%;max-width:30rem;height:auto;margin:0 auto}
.col-fig figcaption{margin-top:.9rem;color:var(--muted);font-size:.84rem;line-height:1.6;text-align:center;text-wrap:balance;word-break:auto-phrase}
.col-table-wrap{margin:1.6rem 0 1.4rem}
table.col-table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.7}
table.col-table thead th{padding:.6rem .6rem .6rem 0;border-bottom:1px solid var(--ink);color:var(--muted);font-size:.79rem;font-weight:500;letter-spacing:.05em;text-align:left;vertical-align:bottom}
table.col-table tbody th,table.col-table td{padding:.8rem .6rem .8rem 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
table.col-table tbody th{width:42%;font-weight:500}
.col-summary{padding:1.6rem 0 .4rem;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.col-summary h2{font-size:1.15rem}
.col-cta{margin:0 0 clamp(2.8rem,6vw,3.8rem)}
.col-cta h2{margin:0 0 .6rem;font-size:1.15rem}
.col-cta .actions{margin-top:1.4rem}
.col-sources h2{font-size:1rem;color:var(--muted)}
.col-sources ul{padding-left:1.1rem;color:var(--muted);font-size:.84rem;line-height:1.75}
.col-sources a{color:var(--muted);overflow-wrap:anywhere}.col-sources a:hover{color:var(--ink)}
.col-back{margin:0;padding-top:1.4rem;border-top:1px solid var(--line)}
.col-index-intro{padding-bottom:clamp(2.4rem,5vw,3.4rem);border-bottom:0}
.col-types{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin:1.8rem 0 0;font-size:.88rem}
.col-types div{display:flex;gap:.7rem;align-items:baseline}.col-types dt{font-weight:500}.col-types dd{margin:0;color:var(--muted)}
.col-index{padding-top:0}
.col-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--ink)}
.col-item{padding:1.5rem 0;border-bottom:1px solid var(--line)}
.col-item .col-kicker{margin-bottom:.45rem}
.col-item h2{margin:0 0 .45rem;font-size:clamp(1.1rem,1.8vw,1.28rem);line-height:1.6}
.col-item h2 a{text-decoration:none}.col-item-sub{display:block;margin-top:.15rem;color:var(--muted);font-size:.86em}.col-item h2 a:hover{color:var(--accent)}
.col-item p:last-child{margin:0;color:var(--muted);font-size:.92rem;line-height:1.75}
@media(max-width:600px){
table.col-table thead{display:none}
table.col-table,table.col-table tbody,table.col-table tr,table.col-table th,table.col-table td{display:block;width:auto}
table.col-table tr{padding:.85rem 0;border-bottom:1px solid var(--line)}
table.col-table tbody tr:first-child{border-top:1px solid var(--ink)}
table.col-table tbody th,table.col-table td{padding:0;border:0}
table.col-table tbody th{width:auto;margin-bottom:.25rem;color:var(--muted);font-size:.84rem}
}
