
.header-nav{gap:20px}
.column-page,.column-article{max-width:1200px;margin:auto;padding:70px 34px 90px;color:#101a2d}
.column-intro{padding:25px 0 42px}.column-intro h1{font-size:clamp(28px,3vw,40px);line-height:1.55;margin:24px 0}.column-intro>p:last-child{color:#56647b;line-height:1.9}
.column-categories{display:flex;flex-wrap:wrap;gap:10px;padding:24px 0;border-top:1px solid #dbe2ed;border-bottom:1px solid #dbe2ed}.column-categories a{padding:10px 22px;border:1px solid #dbe2ed;text-decoration:none;font-size:14px;transition:.18s}.column-categories a[aria-current=true],.column-categories a:hover{background:#101a2d;color:#fff;border-color:#101a2d}.column-count{font-size:13px;color:#65758c;margin:28px 0 20px}
.column-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.column-card{min-width:0;border:1px solid #dbe2ed;background:#fff}.column-card[hidden]{display:none}.column-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}.column-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-bottom:1px solid #eef2f7;background:#fff}.column-card-copy{padding:22px;display:flex;flex:1;flex-direction:column}.column-meta{display:flex;align-items:center;gap:16px;color:#5d7cbd;font-size:12px;font-weight:600;letter-spacing:.05em}.column-meta time{color:#65758c;font-size:11px;font-weight:400}.column-card h2{font-size:18px;line-height:1.8;margin:12px 0 26px}.column-read{margin-top:auto;font-size:12px;display:flex;justify-content:space-between;color:#56647b}.column-read>span{font-size:20px;color:#5d7cbd}.column-card:hover{border-color:#5d7cbd;box-shadow:0 8px 24px #101a2d09}.column-card>a:focus-visible{outline:2px solid #5d7cbd;outline-offset:4px}.column-empty{padding:60px 20px;text-align:center;background:#f5f8fc;color:#56647b;line-height:1.9}.column-empty[hidden]{display:none}
.column-button{display:inline-flex;gap:30px;align-items:center;padding:15px 24px;border:1px solid #bdc9d9;text-decoration:none;color:#101a2d;font-size:14px;margin-top:30px}.column-button:hover{background:#eef4fb;border-color:#5d7cbd}.home-column{padding:70px max(5%,calc((100% - 1160px)/2));}.home-column>h2{font-size:30px;margin:24px 0 34px}.home-column .column-card h2{font-size:18px}
.column-article{max-width:1140px}.column-breadcrumb{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:#65758c;margin-bottom:46px}.column-breadcrumb a{text-decoration:none}.column-article .article-heading{position:static;display:block;height:auto;padding:0;box-shadow:none;border:none;background:none;max-width:820px;margin:0 auto 30px}.article-heading h1{font-size:clamp(25px,2.8vw,36px);line-height:1.65;margin:20px 0}.article-author{font-size:13px;color:#65758c}.article-conclusion,.article-banner,.article-toc,.article-body{max-width:820px;margin-left:auto;margin-right:auto}.article-conclusion{padding:26px 30px;background:#f0f5fb;border-left:3px solid #5d7cbd;margin-bottom:30px}.article-conclusion>span{font-size:13px;color:#4b6ea9;font-weight:600}.article-conclusion p{font-size:17px;line-height:1.95;margin:12px 0 0}.article-banner{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.article-toc{margin-top:34px;margin-bottom:46px;padding:24px 30px;border:1px solid #dbe2ed}.article-toc>p{font-size:12px;font-weight:600;margin:0 0 12px}.article-toc ol{padding-left:24px;margin:0}.article-toc li{padding:6px 0;font-size:14px;line-height:1.8}.article-toc a{color:#425d86;text-decoration:none}.article-body{font-size:16px;line-height:2.1}.article-body section{scroll-margin-top:120px;margin-bottom:50px}.article-body h2{font-size:25px;line-height:1.7;border-bottom:1px solid #dbe2ed;padding-bottom:16px;margin:0 0 25px}.article-body p{margin:20px 0}.article-body li{margin-bottom:10px}.article-qa{background:#f7f9fc;padding:24px 28px;margin:28px 0;border-top:2px solid #a6bee2}.article-qa h3{font-size:17px;line-height:1.8;margin:0;display:flex;gap:16px}.article-qa p{display:flex;gap:16px;font-size:15px;margin:14px 0 0}.article-qa span{color:#5d7cbd;flex-shrink:0;font-weight:700}.article-body .article-source{font-size:12px;color:#65758c;line-height:1.8}.article-source a{color:#425d86;text-underline-offset:3px}.article-action{padding:28px;background:#f0f5fb}.article-body .article-note{font-size:12px;color:#65758c}.column-related{padding-top:40px;border-top:1px solid #dbe2ed}.column-related>h2{font-size:24px;margin:0 0 28px}
@media(max-width:1150px){.header-nav{gap:13px}.header-nav>a,.service-nav-toggle{font-size:12px}.document-link{display:none}}
@media(max-width:850px){.column-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.column-page,.column-article{padding:45px 24px 70px}.header-nav{display:none}}
@media(max-width:600px){.column-grid{grid-template-columns:1fr;gap:24px}.column-page,.column-article{padding:30px 20px 60px}.column-intro{padding:16px 0 28px}.column-categories{gap:8px}.column-categories a{padding:9px 15px;font-size:13px}.column-card h2{font-size:18px}.home-column{padding:50px 20px}.home-column>h2{font-size:26px}.article-heading h1{font-size:25px}.article-conclusion{padding:20px}.article-conclusion p{font-size:16px}.article-toc{padding:20px}.article-body h2{font-size:22px}.article-qa{padding:20px}.article-qa h3{font-size:16px}.article-action{padding:22px}.column-breadcrumb{margin-bottom:28px}}

.article-author a{color:inherit;text-decoration:none}.article-author a:hover{color:#5d7cbd}
.column-author-box{border:1px solid #d7e1ef;padding:28px;margin:42px 0;scroll-margin-top:110px;background:#fff}
.article-body .column-author-label{font-size:13px;font-weight:700;letter-spacing:.08em;color:#5d7cbd;margin:0 0 20px}
.column-author-profile{display:flex;align-items:center;gap:24px}.column-author-profile img{width:120px;height:120px;border-radius:50%;object-fit:cover;object-position:center 42%;flex-shrink:0}
.article-body .column-author-company{font-size:13px;color:#56647b;margin:0}.article-body .column-author-name{font-size:21px;font-weight:700;margin:4px 0 0}.article-body .column-author-bio{font-size:15px;line-height:1.9;margin:24px 0 0}.column-author-box .column-button{margin-top:22px}
@media(max-width:600px){.column-author-box{padding:22px}.column-author-profile{gap:18px}.column-author-profile img{width:88px;height:88px}.article-body .column-author-name{font-size:19px}}

.column-read .column-plane,.column-button .column-plane{display:inline-block;width:18px;height:18px;flex:0 0 18px;vertical-align:middle;color:#5d7cbd}.column-read{align-items:center}


.column-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
@media(hover:hover){.column-card:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(16,26,45,.12);border-color:#8aa1cf}}
.column-card:focus-within,.column-card:active{transform:translateY(-6px);box-shadow:0 14px 30px rgba(16,26,45,.12);border-color:#8aa1cf}
@media(prefers-reduced-motion:reduce){.column-card{transition:none}.column-card:hover,.column-card:focus-within,.column-card:active{transform:none}}

.site-footer .footer-ai-details{margin:4px 0 22px;padding:4px 0 0 14px;border-left:1px solid #46536a}
.site-footer .footer-ai-details a{display:block;font-size:13px;font-weight:400;line-height:1.8;color:#bac5d5;margin:0 0 10px;letter-spacing:.01em}
.site-footer .footer-ai-details a:last-child{margin-bottom:0}.site-footer .footer-ai-details a:hover{color:#c8ad72}


.article-diagram{margin:32px 0;padding:0}.article-diagram img{display:block;width:100%;height:auto;border:1px solid #e0e5ed;border-radius:8px}.article-diagram figcaption{margin-top:10px;color:#59677c;font-size:13px;line-height:1.7}.article-table-scroll{overflow-x:auto}.article-references{padding:24px;background:#f5f7fa;border:1px solid #dce2ec}.article-references a{overflow-wrap:anywhere}.article-toc ol{columns:2;column-gap:28px}.article-toc li{break-inside:avoid;margin-bottom:12px}.article-body p{overflow-wrap:anywhere}.column-card img{aspect-ratio:16/9;object-fit:cover}
@media(max-width:700px){.article-toc ol{columns:1}.article-diagram{margin:24px 0}.article-diagram img{min-width:0}.article-references{padding:18px}}


.column-page>.column-categories{position:relative;inset:auto;z-index:auto;width:auto;display:flex;flex-wrap:wrap;background:#fff}
/* コラム記事：本文の白い背景を画面の端まで広げる（広い画面で左右にページ背景の黒が見えないように。本文の幅は変えない） */
html body.bx-sub>main.column-article{box-shadow:0 0 0 100vmax #fff;clip-path:inset(0 -100vmax)}
