:root{--column-bg:#090909;--column-card:#151515;--column-text:#f4f4f4;--column-muted:#aaa;--column-accent:#caa96b}
.column-page #left_menu{z-index:1001}
body.column-page{margin:0;background:var(--column-bg);color:var(--column-text);font-family:"Noto Serif JP","Yu Mincho",serif}.column-page *{box-sizing:border-box}.column-shell{max-width:1120px;margin:0 auto;padding:120px 24px 80px}.column-heading{font-size:38px;letter-spacing:.18em;margin:0 0 38px;border-left:3px solid var(--column-accent);padding-left:18px}.column-categories{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}.column-categories a{color:#ddd;border:1px solid #555;padding:8px 14px;text-decoration:none}.column-categories a:hover,.column-categories a.active{border-color:var(--column-accent);color:var(--column-accent)}.column-page a:focus-visible{outline:2px solid var(--column-accent);outline-offset:3px}.column-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.column-card{display:flex;flex-direction:column;min-width:0;background:var(--column-card);color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}.column-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.3)}.column-card__image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,#1f1f1f,#101010);color:#777;letter-spacing:.15em}.column-card img{width:100%;height:100%;object-fit:cover}.column-card__body{padding:18px}.column-card time{color:var(--column-muted);font-size:13px}.column-card h2{font-size:19px;line-height:1.65;margin:10px 0}.column-card p{color:#bbb;font-size:14px;line-height:1.8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.column-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:45px}.column-pagination a{min-width:40px;text-align:center;color:#eee;border:1px solid #555;padding:8px 11px;text-decoration:none}.column-pagination a.active{border-color:var(--column-accent);color:var(--column-accent)}.column-pagination span{color:#777}.column-article{max-width:860px;margin:0 auto}.column-breadcrumb{font-size:13px;line-height:1.6;color:#999;margin-bottom:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.column-breadcrumb a{color:#bbb}.column-article>h1{font-size:36px;line-height:1.45;margin:0 0 15px;overflow-wrap:anywhere}.column-article__date{color:#999}.column-article__thumb{width:100%;margin:32px 0;max-height:520px;object-fit:cover}.column-content{font-family:"Noto Serif JP",serif;font-size:17px;line-height:2;color:#eee;overflow-wrap:anywhere}.column-content h2{font-size:27px;margin:2.5em 0 1em;border-bottom:1px solid #555;padding-bottom:10px}.column-content h3{font-size:22px;margin-top:2em}.column-content a{color:#e1c48e}.column-content img{max-width:100%;height:auto}.column-content figure{max-width:100%;margin:2em 0}.column-content blockquote{border-left:3px solid var(--column-accent);padding:10px 20px;background:#151515}.column-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.column-content th,.column-content td{border:1px solid #555;padding:9px}.column-cta{margin-top:64px;padding:30px;background:linear-gradient(135deg,#211c14,#121212);border:1px solid #6f5b37}.column-cta h2{margin:0 0 10px;font-size:25px}.column-cta p{color:#c9c2b5}.column-cta__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.column-cta__links a{display:inline-block;padding:12px 20px;background:var(--column-accent);color:#111;text-decoration:none;font-weight:bold}.column-related{margin-top:70px;border-top:1px solid #444;padding-top:30px}.column-related h2{font-size:25px}.column-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.column-related__grid a{display:flex;flex-direction:column;gap:9px;color:#eee;line-height:1.55;text-decoration:none}.column-related__grid img{width:100%;aspect-ratio:16/9;object-fit:cover}.column-preview-banner{position:fixed;top:0;left:0;right:0;z-index:9999;background:#b42318;color:white;text-align:center;padding:9px;font-family:sans-serif}.column-empty{text-align:center;padding:80px 0;color:#999}
@media(max-width:900px){.column-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.column-shell{padding-top:95px}}
@media(max-width:600px){.column-shell{padding:78px 16px 55px}.column-grid{grid-template-columns:1fr;gap:18px}.column-heading{font-size:28px;margin-bottom:25px}.column-categories{gap:7px}.column-categories a{padding:7px 10px;font-size:13px}.column-article>h1{font-size:27px}.column-content{font-size:16px;line-height:1.9}.column-content h2{font-size:23px}.column-related__grid{grid-template-columns:1fr}.column-cta{padding:22px 18px}.column-cta__links{flex-direction:column}.column-cta__links a{text-align:center}.column-pagination{gap:5px}.column-pagination a{min-width:35px;padding:7px}.column-preview-banner{font-size:12px}.column-preview-banner~header+.column-shell{padding-top:115px}}

/* Article body presentation is owned by this fixed container, not API HTML attributes. */
.column-article{min-width:0}
.column-article__thumb{display:block;width:100%;max-height:none;aspect-ratio:16/9;object-fit:cover;background:#151515}
.column-toc,.column-content,.column-cta{width:100%;max-width:760px;margin-left:auto;margin-right:auto}
.column-toc{margin-top:40px;margin-bottom:46px;padding:24px 28px;background:#151515;border:1px solid #4f4637;border-left:4px solid var(--column-accent)}
.column-toc__title{margin:0 0 14px;color:var(--column-accent);font-size:20px;font-weight:700;letter-spacing:.08em}
.column-toc ol{margin:0;padding-left:1.5em;list-style:decimal}
.column-toc__item{margin:.55em 0;line-height:1.65}
.column-toc__item--level-3{margin-left:1.25em;font-size:.94em}
.column-toc a{color:#eee;text-decoration:none;overflow-wrap:anywhere}
.column-toc a:hover{text-decoration:underline;text-decoration-color:var(--column-accent);text-underline-offset:.25em}
.column-content{min-width:0;word-break:normal}
.column-content>*{max-width:100%}
.column-content h2,.column-content h3{scroll-margin-top:110px;overflow-wrap:anywhere}
.column-content h2{line-height:1.5;border-left:4px solid var(--column-accent);border-bottom:1px solid #555;padding:0 0 10px 16px}
.column-content h3{line-height:1.55;margin:2em 0 .8em;padding-left:13px;border-left:2px solid #796846}
.column-content h4{margin:1.8em 0 .7em;font-size:19px;line-height:1.6;color:#f0dfbd}
.column-content p{margin:0 0 1.4em;line-height:2;overflow-wrap:anywhere}
.column-content ul,.column-content ol{margin:0 0 1.6em;padding-left:1.6em}
.column-content ul{list-style:disc}
.column-content ol{list-style:decimal}
.column-content li{margin:.45em 0;padding-left:.15em;line-height:1.85;overflow-wrap:anywhere}
.column-content li>ul,.column-content li>ol{margin:.45em 0 .7em}
.column-content a{overflow-wrap:anywhere;word-break:break-word;text-decoration:underline;text-underline-offset:.2em}
.column-content figure{width:100%;margin:2em auto}
.column-content img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}
.column-content figcaption{margin-top:.7em;color:#aaa;font-size:14px;line-height:1.7;text-align:center;overflow-wrap:anywhere}
.column-content blockquote{margin:2em 0;padding:18px 22px;overflow-wrap:anywhere}
.column-content blockquote>:last-child{margin-bottom:0}
.column-content table{display:block;width:100%;max-width:100%;margin:2em 0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
.column-content th,.column-content td{min-width:7rem;padding:10px 12px;vertical-align:top;line-height:1.65;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.column-content th{background:#211e19;color:#f1d49c;font-weight:700}
.column-content details{margin:1em 0;border:1px solid #514735;background:#151515}
.column-content details+details{margin-top:12px}
.column-content summary{position:relative;padding:17px 48px 17px 20px;color:#f3d59b;font-weight:700;line-height:1.65;list-style:none;cursor:pointer;overflow-wrap:anywhere}
.column-content summary::-webkit-details-marker{display:none}
.column-content summary::after{content:"＋";position:absolute;top:50%;right:20px;color:var(--column-accent);font-size:20px;transform:translateY(-50%)}
.column-content details[open] summary{border-bottom:1px solid #514735}
.column-content details[open] summary::after{content:"－"}
.column-content details>summary~*{margin-left:20px;margin-right:20px}
.column-content details>summary+p{margin-top:16px}
.column-content details>:last-child{margin-bottom:18px}
.column-cta{margin-top:64px}

@media(max-width:600px){
  .column-article__thumb{margin:24px 0 30px}
  .column-toc{margin-top:30px;margin-bottom:36px;padding:20px 18px}
  .column-toc__title{font-size:18px}
  .column-toc__item--level-3{margin-left:.65em}
  .column-content h2,.column-content h3{scroll-margin-top:90px}
  .column-content h2{font-size:23px;padding-left:12px}
  .column-content h3{font-size:20px;padding-left:10px}
  .column-content h4{font-size:18px}
  .column-content p{line-height:1.9}
  .column-content ul,.column-content ol{padding-left:1.35em}
  .column-content blockquote{padding:15px 16px}
  .column-content th,.column-content td{min-width:6.5rem;padding:9px 10px}
  .column-content summary{padding:15px 44px 15px 16px}
  .column-content summary::after{right:16px}
  .column-content details>summary~*{margin-left:16px;margin-right:16px}
}
