body, .main { background: #fff !important; }

/* ===== 記事の土台（完全攻略ページ /contents/case-kouryaku/ と同じ） ===== */
.ck-wrap {
	--red:#A62B17; --red-pale:#F6E9E6; --ink:#1A1A1A; --sub:#555; --line:#D9D9D9;
	--g1:#F4F4F4; --g2:#E6E6E6; --g3:#BDBDBD; --g4:#7A7A7A; --g5:#3C3C3C;
	--serif:"Noto Serif JP","Hiragino Mincho ProN",serif;
	max-width: 760px; margin: 0 auto; padding: 24px 24px 64px;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;
	font-size: 16px; line-height: 1.9; color: var(--ink); letter-spacing: .02em;
	text-align: left;
}
.ck-wrap *, .ck-wrap *::before, .ck-wrap *::after { box-sizing: border-box; }
.ck-wrap p, .ck-wrap ul, .ck-wrap ol, .ck-wrap h1, .ck-wrap h2, .ck-wrap h3, .ck-wrap h4, .ck-wrap figure, .ck-wrap table { margin: 0; padding: 0; }
.ck-wrap a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.ck-wrap strong { font-weight: 700; background: linear-gradient(transparent 62%, var(--red-pale) 62%); }
.ck-wrap img { max-width: 100%; height: auto; }

.ck-bc { font-size: 12px; color: var(--sub); margin-bottom: 14px; }
.ck-bc a { color: var(--sub) !important; }
.ck-bc span { margin: 0 6px; }

/* ===== ヒーロー ===== */
.ck-hero { padding-top: 4px; }
.ck-kicker { font-family: var(--serif); color: var(--red); font-weight: 700; font-size: 15px; letter-spacing: .08em; }
.ck-kicker::before { content: ""; display: inline-block; width: 22px; height: 3px; background: var(--red); vertical-align: middle; margin-right: 10px; }
.ck-wrap h1.ck-h1 { font-family: var(--serif); font-size: 36px; line-height: 1.4; font-weight: 700; margin: 10px 0 0; word-break: auto-phrase; }
.ck-hero-fig { margin: 24px 0 14px !important; }
.ck-hero-fig img { display: block; width: 100%; height: auto; }
.ck-meta { font-size: 13px; color: var(--sub); margin-top: 16px !important; padding-top: 12px; border-top: 1px solid var(--line); }
.ck-meta b { font-weight: 700; color: var(--ink); }
.ck-lead { margin-top: 18px; }
.ck-lead p + p { margin-top: 1em; }

/* 目次 */
.ck-toc { margin: 24px 0 0; background: var(--g1); padding: 20px 24px; }
.ck-toc-t { font-family: var(--serif); font-weight: 700; font-size: 15px; margin-bottom: 6px !important; }
.ck-toc ol { list-style: none; counter-reset: t; }
.ck-toc > ol > li { font-size: 14px; line-height: 1.6; padding: 6px 0; border-bottom: 1px solid var(--g2); }
.ck-toc > ol > li:last-child { border-bottom: 0; }
.ck-toc > ol > li.num::before { counter-increment: t; content: counter(t, decimal-leading-zero) "　"; color: var(--red); font-weight: 700; font-family: var(--serif); }
.ck-toc ol ol { padding: 4px 0 0 1.4em; counter-reset: s; }
.ck-toc ol ol li { border: 0; padding: 2px 0; font-size: 13px; color: var(--sub); }
.ck-toc ol ol li::before { counter-increment: s; content: counter(t) "-" counter(s) "　"; color: var(--sub); font-size: 12px; }
.ck-toc a { text-decoration: none; }
.ck-toc a:hover { text-decoration: underline; }

/* ===== 見出し（番号はCSS counter、積み上がって固定） ===== */
.ck-wrap { counter-reset: h2; }
.ck-sec { margin-top: 48px; scroll-margin-top: 90px; counter-reset: h3; }
.ck-wrap h2.ck-h2:not(.nonum) { counter-increment: h2; }
.ck-wrap h2.ck-h2:not(.nonum)::before { content: counter(h2, decimal-leading-zero); display: inline-block; font-size: .6em; letter-spacing: .12em; color: var(--red); font-family: var(--serif); margin-right: .8em; vertical-align: .15em; }
.ck-wrap h3.ck-h3::before { counter-increment: h3; content: counter(h2) "-" counter(h3); display: inline-block; white-space: nowrap; color: var(--red); font-family: var(--serif); font-size: 14px; letter-spacing: .06em; margin-right: .7em; vertical-align: .15em; }
.ck-sec.nonum h3.ck-h3::before { content: none; }
/* 階層: h2配下は28px、h3のまとまり(.ck-sub)は縦線つきでさらに32px */
.ck-sec > *:not(h2.ck-h2) { margin-left: 28px; }
.ck-sub { position: relative; padding-top: 26px; }
.ck-sub::before { content: ""; position: absolute; left: 1px; top: 36px; bottom: 0; border-left: 2px solid var(--g2); }
.ck-sub > *:not(h3.ck-h3) { margin-left: 32px; }
.ck-wrap h2.ck-h2 { font-family: var(--serif); font-size: 28px; line-height: 1.5; font-weight: 700; margin: 8px 0 18px; padding: 6px 0 10px; border-bottom: 1px solid var(--ink); word-break: auto-phrase; background: #fff; position: sticky; top: var(--hdr, 0px); z-index: 6; transition: font-size .15s, padding .15s; }
.ck-wrap h2.ck-h2.is-stuck { font-size: 19px; padding: 10px 0 8px; }
.ck-wrap h3.ck-h3 { font-family: var(--serif); font-size: 21px; line-height: 1.55; font-weight: 700; margin: 0 0 16px; padding: 6px 0 6px 14px; border-left: 4px solid var(--red); word-break: auto-phrase; scroll-margin-top: calc(var(--hdr, 0px) + 70px); background: #fff; position: sticky; top: calc(var(--hdr, 0px) + var(--h2h, 0px)); z-index: 5; transition: font-size .15s; }
.ck-wrap h3.ck-h3.is-stuck { font-size: 16px; padding-top: 6px; padding-bottom: 6px; box-shadow: 0 6px 8px -6px rgba(0,0,0,.18); }
.ck-wrap h3.ck-h3 strong { background: none; }
.ck-wrap h4 { font-size: 16px; font-weight: 700; margin: 32px 0 10px; }
.ck-wrap h4 strong { background: none; }

/* ===== 本文（Gutenberg/Classic のHTMLをそのまま受ける） ===== */
.ck-body p { margin: 0 0 1em; }
.ck-body ul, .ck-body ol { margin: 14px 0; padding-left: 0; }
.ck-body ul li { list-style: none; position: relative; padding-left: 18px; margin-top: 6px; }
.ck-body ul li::before { content: ""; position: absolute; left: 2px; top: .8em; width: 7px; height: 7px; background: var(--red); }
.ck-body ol { list-style: none; counter-reset: k; }
.ck-body ol li { position: relative; padding-left: 30px; margin-top: 8px; }
.ck-body ol li::before { counter-increment: k; content: counter(k); position: absolute; left: 0; top: 4px; width: 20px; height: 20px; background: var(--red); color: #fff; font-size: 12px; font-weight: 700; text-align: center; line-height: 20px; }
.ck-body ul ul, .ck-body ol ol { margin: 4px 0 0; }
.ck-body figure.wp-block-image { margin: 24px 0 !important; text-align: center; }
.ck-body figure.wp-block-image img { display: inline-block; max-width: 100%; height: auto; }
.ck-body figure.wp-block-image figcaption { font-size: 12px; color: var(--sub); margin-top: 8px; line-height: 1.6; }
.ck-body figure.wp-block-table { overflow-x: auto; margin: 20px 0 !important; }
.ck-body table { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.7; }
.ck-body th, .ck-body td { border-bottom: 1px solid var(--line); padding: 10px 12px; text-align: left; vertical-align: top; }
.ck-body thead th, .ck-body tr:first-child th { background: var(--ink); color: #fff; font-family: var(--serif); font-weight: 700; border-bottom: 0; }
.ck-body tbody th { font-weight: 700; background: var(--g1); }
.ck-body th strong { background: none; }
.ck-body blockquote { margin: 20px 0; padding: 14px 20px; background: var(--g1); border-left: 4px solid var(--ink); font-size: 15px; }
.ck-body .wp-block-buttons { display: flex; justify-content: center; margin: 28px 0 !important; }
.ck-body .wp-block-button__link { display: inline-block; background: var(--red) !important; color: #fff !important; font-weight: 700; font-size: 16px; padding: 15px 36px; text-decoration: none !important; border-radius: 0 !important; }
.ck-body .wp-block-button__link:hover { opacity: .88; }
.ck-body .wp-block-embed { margin: 24px 0 !important; }
.ck-body .wp-block-embed iframe, .ck-body iframe { max-width: 100%; }
.ck-body .video-container { position: relative; padding-bottom: 56.25%; height: 0; }
.ck-body .video-container iframe { position: absolute; inset: 0; width: 100%; height: 100%; }
.ck-body > p:last-child { margin-bottom: 0; }
.ck-body small { font-size: 12px; color: var(--sub); line-height: 1.6; }
.ck-body .yt-card-link { display: grid; grid-template-columns: 160px 1fr; gap: 14px; align-items: center; border: 1px solid var(--line); padding: 12px; text-decoration: none !important; }
.ck-body .yt-card-item::before { display: none !important; }
.ck-body .yt-card-item { padding-left: 0 !important; }

/* ===== CTA・関連記事・末尾 ===== */
.ck-rel { margin-top: 36px; }
.ck-rel-t { font-family: var(--serif); font-weight: 700; font-size: 15px; margin-bottom: 8px !important; }
.ck-rel ul { list-style: none; border-top: 1px solid var(--ink); }
.ck-rel li { border-bottom: 1px solid var(--line); }
.ck-rel a { display: block; padding: 12px 4px; text-decoration: none !important; font-size: 15px; }
.ck-rel a span { display: block; font-size: 12px; color: var(--sub); }

@media (max-width: 767px) {
	.ck-wrap { padding: 24px 16px 64px; font-size: 15px; }
	.ck-wrap h1.ck-h1 { font-size: 26px; letter-spacing: 0; }
	.ck-toc { padding: 16px; }
	.ck-sec { margin-top: 36px; }
	.ck-wrap h2.ck-h2 { font-size: 22px; }
	.ck-wrap h3.ck-h3 { font-size: 18px; }
	.ck-sec > *:not(h2.ck-h2) { margin-left: 12px; }
	.ck-sub > *:not(h3.ck-h3) { margin-left: 16px; }
	.ck-sub { padding-top: 20px; }
	.ck-sub::before { top: 28px; }
	.ck-wrap h2.ck-h2.is-stuck { font-size: 16px; padding: 8px 0 6px; }
	.ck-wrap h3.ck-h3.is-stuck { font-size: 14px; }
	.ck-body table { font-size: 13px; }
	.ck-body th, .ck-body td { padding: 8px; }
	.ck-body .yt-card-link { grid-template-columns: 1fr; }
	.ck-body .wp-block-button__link { display: block; text-align: center; padding: 15px 12px; }
}

/* ===== ブログ本体(Cocoon)の上書き: 1列にして右列を消す。ヘッダーは残しフォントだけ明朝に ===== */
#sidebar { display: none !important; }
.main, #content, #content-in, .content, .article { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; }
#content-in { max-width: none !important; }
body { background: #fff !important; }
#navi .navi-in > ul > li > a, .menu-drawer a, .mobile-menu-buttons .menu-caption { font-family: "Noto Serif JP","Hiragino Mincho ProN",serif !important; font-weight: 700 !important; letter-spacing: .04em; }
#navi .navi-in .header__button { font-family: "Noto Serif JP","Hiragino Mincho ProN",serif !important; }
.footer-nav__bubble-in, .footer-nav__txt2, .footer-nav__txt3 { font-family: "Noto Serif JP","Hiragino Mincho ProN",serif !important; }
.ck-wrap p, .ck-wrap ul, .ck-wrap ol, .ck-wrap figure, .ck-wrap table { margin-bottom: 0; }

/* ===== 内部ブログカード(作り直し) ===== */
.ck-body .wp-block-embed__wrapper { display: block; }
.ck-body .blogcard-wrap { display: block; text-decoration: none !important; margin: 20px 0; color: var(--ink) !important; }
.ck-body .blogcard { display: grid; grid-template-columns: 136px 1fr; gap: 0 18px; border: 1px solid var(--line); border-left: 4px solid var(--red); padding: 14px 16px; align-items: center; position: relative; background: #fff; transition: background .15s; }
.ck-body .blogcard-wrap:hover .blogcard { background: var(--g1); }
.ck-body .blogcard-thumbnail { margin: 0 !important; grid-row: 1 / 3; float: none !important; width: auto !important; }
.ck-body .blogcard-content, .ck-body .blogcard-title, .ck-body .blogcard-snippet { margin-left: 0 !important; margin-right: 0 !important; padding: 0 !important; float: none !important; }
.ck-body .blogcard-thumbnail img { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; }
.ck-body .blogcard-content::before { content: "あわせて読む"; display: block; font-family: var(--serif); font-size: 11px; font-weight: 700; color: var(--red); letter-spacing: .1em; margin-bottom: 4px; }
.ck-body .blogcard-title { font-family: var(--serif); font-weight: 700; font-size: 15px; line-height: 1.5; }
.ck-body .blogcard-snippet { font-size: 12px; color: var(--sub); line-height: 1.6; margin-top: 4px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ck-body .blogcard-footer, .ck-body .blogcard-label { display: none !important; }

/* ===== 文脈CTA(記事内の aside)の作り直し: インライン指定を上書き ===== */
.ck-body aside[style] { margin: 36px 0 !important; padding: 26px 28px !important; border: 1px solid var(--line) !important; border-top: 4px solid var(--red) !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; color: var(--ink) !important; }
.ck-body aside[style] > p:nth-of-type(1) { font-family: var(--serif) !important; color: var(--red) !important; font-size: 14px !important; letter-spacing: .08em !important; margin: 0 0 6px !important; }
.ck-body aside[style] > p:nth-of-type(1)::before { content: ""; display: inline-block; width: 18px; height: 3px; background: var(--red); vertical-align: middle; margin-right: 8px; }
.ck-body aside[style] > p:nth-of-type(2) { font-family: var(--serif) !important; font-size: 22px !important; line-height: 1.5 !important; margin: 0 0 14px !important; word-break: auto-phrase; }
.ck-body aside[style] > p:nth-of-type(3), .ck-body aside[style] > p:nth-of-type(4) { font-size: 15px !important; line-height: 1.85 !important; margin: 0 0 12px !important; }
.ck-body aside[style] > ul { margin: 0 0 20px !important; padding: 14px 18px !important; border-radius: 0 !important; background: var(--g1) !important; }
.ck-body aside[style] > ul li { font-size: 14px; }
.ck-body aside[style] a[style] { display: block !important; max-width: 480px !important; margin: 0 auto !important; padding: 15px 18px !important; border-radius: 0 !important; box-shadow: none !important; font-weight: 700 !important; text-align: center !important; text-decoration: none !important; line-height: 1.5 !important; }
.ck-body aside[style] a[style]:first-of-type { background: var(--red) !important; color: #fff !important; border: 0 !important; }
.ck-body aside[style] a[style] + br { display: none; }
.ck-body aside[style] a[style]:not(:first-of-type) { margin-top: 10px !important; background: #fff !important; color: var(--ink) !important; border: 1px solid var(--ink) !important; }
.ck-body aside[style] > p:last-of-type { font-size: 12px !important; color: var(--sub) !important; text-align: center !important; margin: 12px 0 0 !important; }

/* ===== 記事中CTA(元のデザインを維持)との干渉だけ消す ===== */
.ck-body .stg-cta-wrap li::before { display: none !important; }
.ck-body .stg-cta-wrap li { margin-top: 0; }
.ck-body .stg-cta-wrap p, .ck-body .stg-cta-wrap div { margin-bottom: 0; }

/* ===== 末尾ブロック(4案共通) ===== */
.ck-note { font-size: 12px; color: var(--sub); margin-top: 8px !important; }
.ck-prog-lead { margin-top: 20px !important; }
.ck-cta { display: grid; grid-template-columns: 1fr 200px; gap: 28px; align-items: center; margin: 32px 0 0 !important; background: var(--ink); color: #fff; padding: 36px 32px; }
.ck-cta-k { display: inline-block; font-family: var(--serif); font-size: 13px; letter-spacing: .1em; border: 1px solid rgba(255,255,255,.6); padding: 2px 10px; margin: 0 0 12px !important; }
.ck-cta-t { font-family: var(--serif); font-size: 22px; font-weight: 700; line-height: 1.5; word-break: auto-phrase; }
.ck-cta p { font-size: 15px; margin-top: 12px !important; color: #ddd; }
.ck-cta p.ck-cta-t { color: #fff; }
.ck-cta-btn { display: inline-block; margin-top: 20px; background: var(--red); color: #fff !important; font-family: var(--serif); font-weight: 700; font-size: 16px; padding: 15px 36px; text-decoration: none !important; }
.ck-cta-btn:hover { opacity: .88; }
.ck-cta-note { font-size: 12px !important; color: #bbb !important; margin-top: 12px !important; }
.ck-cta-list { list-style: none; margin: 14px 0 0 !important; }
.ck-cta-list li { position: relative; padding-left: 22px; margin-top: 6px; font-family: var(--serif); font-weight: 700; font-size: 15px; }
.ck-cta-list li::before { content: ""; position: absolute; left: 0; top: .55em; width: 12px; height: 7px; border-left: 2px solid var(--red); border-bottom: 2px solid var(--red); transform: rotate(-45deg); }
.ck-cta-fig { margin: 0 !important; }
.ck-cta-fig img { display: block; width: 100%; height: auto; background: #fff; padding: 6px; }
.ck-cta-fig figcaption { font-size: 11px; color: #bbb; text-align: center; margin-top: 6px; }
/* 白地版 */
.ck-cta.ck-cta-light { background: #fff; color: var(--ink); border: 1px solid var(--line); border-top: 4px solid var(--red); }
.ck-cta-light .ck-cta-k { color: var(--red); border-color: var(--red); }
.ck-cta-light p { color: var(--g5); }
.ck-cta-light p.ck-cta-t { color: var(--ink); }
.ck-cta-light .ck-cta-note { color: var(--sub) !important; }
.ck-cta-light .ck-cta-fig img { border: 1px solid var(--line); }
.ck-cta-light .ck-cta-fig figcaption { color: var(--sub); }
/* 案1: 数字と特長 */
.ck-nums { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 4px; }
.ck-nums div { border: 1px solid var(--line); border-top: 3px solid var(--red); padding: 16px 12px 14px; text-align: center; }
.ck-nums b { display: block; font-family: var(--serif); font-size: 40px; line-height: 1; color: var(--red); }
.ck-nums b small { font-size: 16px; margin-left: 2px; }
.ck-nums span { display: block; font-size: 12px; color: var(--g5); line-height: 1.5; margin-top: 8px; }
.ck-feat { list-style: none; margin: 16px 0 0 !important; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ck-feat li { border: 1px solid var(--line); padding: 14px 16px; }
.ck-feat b { display: block; font-family: var(--serif); font-size: 15px; margin-bottom: 4px; }
.ck-feat span { display: block; font-size: 13px; color: var(--g5); line-height: 1.7; }
/* 案1 LP素材入り */
.ck-wrap h3.ck-prog-h, .ck-wrap p.ck-prog-h { font-family: var(--serif); font-weight: 700; font-size: 19px; margin: 40px 0 16px !important; padding: 4px 0 4px 20px !important; border-left: 4px solid var(--red); line-height: 1.4; }
/* ===== サービス紹介パネル(案1): 1つの箱に番号付きの白いカードで並べる ===== */
.ck-sec > .ck-pn { margin-left: 0; }
.ck-pn { background: var(--g1); padding: 20px; border: 1px solid var(--line); }
.ck-pn-band-k { display: inline-block; font-family: var(--serif); font-size: 12px; letter-spacing: .14em; border: 1px solid rgba(255,255,255,.7); padding: 2px 10px; }
.ck-pn-band-t { font-family: var(--serif); font-size: 26px; font-weight: 700; margin-top: 10px !important; }
.ck-pn-band-s { font-size: 13px; color: #ccc; margin-top: 6px !important; }
.ck-pn-sec { background: #fff; border: 1px solid var(--line); padding: 22px 22px 24px; margin-top: 14px; }
.ck-wrap h3.ck-pn-h { display: flex; align-items: baseline; gap: 12px; font-family: var(--serif); font-size: 18px; font-weight: 700; line-height: 1.4; margin: 0 0 18px !important; padding: 0 0 10px !important; border-bottom: 1px solid var(--ink); }
.ck-wrap h3.ck-pn-h .n { font-size: 13px; letter-spacing: .14em; color: var(--red); font-weight: 400; }
.ck-pn-lead { font-size: 15px; line-height: 1.9; margin: 0 0 16px !important; }
.ck-pn .ck-lp { margin-top: 0; }
.ck-pn .ck-nums { margin-top: 0; }
.ck-pn .ck-feat { margin-top: 0 !important; }
.ck-pn .ck-yt-one-wrap { margin: 0 auto; }
.ck-pn #slider-voice { margin-top: 0; }
.ck-prog-v1 .ck-cta.ck-cta-in { margin-top: 0 !important; border: 0; border-top: 0; padding: 0 0 4px; }
.ck-lp-banner-note { text-align: center; max-width: 480px; margin-left: auto !important; margin-right: auto !important; }
.ck-pn-more { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); }
.ck-pn-more-t { font-family: var(--serif); font-size: 13px; letter-spacing: .1em; color: var(--sub); margin: 0 0 10px !important; }
.ck-pn .mck-link { margin-top: 0; }
.ck-pn .ck-line { margin-top: 12px; }
/* 公式サイト(/)のファーストビューをそのまま(ver1.css の rem を px に) */
.ck-lp { margin-top: 20px; text-align: center; padding: 20px 16px 18px; background-color: #fff; background-image: repeating-linear-gradient(to bottom, #f7f7f7, #f7f7f7 2px, transparent 0, transparent 16px), repeating-linear-gradient(to right, #f7f7f7, #f7f7f7 2px, transparent 0, transparent 16px); border: 1px solid var(--line); }
.ck-lp p { margin: 0 !important; line-height: 0; }
.ck-lp img { display: inline-block; height: auto; }
.ck-lp-s1 img { width: 100%; max-width: 400px; }
.ck-lp-s2 { margin-top: 6px !important; margin-bottom: -8px !important; }
.ck-lp-s2 img, .ck-lp-ttl img { width: 100%; max-width: 352px; }
.ck-lp-read { margin-top: 16px !important; }
.ck-lp-read img { width: 100%; max-width: 400px; }
.ck-lp-ann { margin-top: 8px !important; color: #A4A4A4; font-size: 10px; line-height: 1.6 !important; text-align: left; padding-left: 1em; text-indent: -1em; }
.ck-lp .ck-cta-btn { margin-top: 20px; }
.ck-lp-banner { margin: 10px auto 0 !important; max-width: 400px; }
.ck-lp-banner img { display: block; width: 100%; height: auto; }
.ck-logos { margin-top: 14px; border: 1px solid var(--line); padding: 12px 16px 10px; }
.ck-logos-t { font-family: var(--serif); font-size: 12px; letter-spacing: .08em; color: var(--sub); text-align: center; margin: 0 0 6px !important; }
.ck-logos ul { list-style: none; margin: 0 !important; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 12px; }
.ck-logos li { margin: 0; padding: 0; }
.ck-logos img { display: block; width: 64px; height: 64px; object-fit: contain; }
/* YouTube: その場で再生(クリックでiframeに差し替え) */
.ck-yt { position: relative; display: block; aspect-ratio: 16 / 9; background: #000; overflow: hidden; cursor: pointer; }
.ck-yt img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ck-yt iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.ck-yt-play { position: absolute; left: 50%; top: 50%; width: 64px; height: 44px; margin: -22px 0 0 -32px; border-radius: 10px; background: rgba(26,26,26,.85); }
.ck-yt-play::after { content: ""; position: absolute; left: 25px; top: 12px; border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent #fff; }
.ck-yt:hover .ck-yt-play, .ck-yt:focus .ck-yt-play { background: var(--red); }
.ck-yt-one-wrap { max-width: 480px; margin: 0 auto; }
.ck-yt-one { border: 1px solid var(--line); }
.ck-yt-cap { font-size: 12px; color: var(--g5); margin-top: 8px !important; text-align: center; }
.ck-feat-img li { padding: 0 0 14px; overflow: hidden; }
.ck-feat-img img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-bottom: 1px solid var(--line); margin-bottom: 12px; }
.ck-feat-img b, .ck-feat-img span { padding: 0 16px; }
.ck-feat-img b { min-height: 2.6em; display: flex; align-items: flex-end; }
/* 利用者の声: 公式サイトと同じカルーセル(真ん中1本が大きく、両脇は60%・薄く) */
.ck-voice-wrap { position: relative; }
#slider-voice { position: relative; margin: 8px auto; box-sizing: border-box; }
#slider-voice .splide__list { margin: 0 !important; padding: 0 !important; list-style: none; }
#slider-voice .splide__slide { display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; }
#slider-voice .splide__slide::before { display: none; }
#slider-voice .vc-wrap { position: relative; width: 60%; aspect-ratio: 16/9; background: #000; overflow: hidden; opacity: .5; }
#slider-voice .splide__slide.is-active .vc-wrap { width: 100%; opacity: 1; }
#slider-voice .splide__slide:not(.is-active) .vc-wrap { -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 24%, #000 76%, transparent 100%); mask-image: linear-gradient(to right, transparent 0%, #000 24%, #000 76%, transparent 100%); }
.vc-facade { position: absolute; inset: 0; width: 100%; height: 100%; cursor: pointer; display: block; background: #000; }
.vc-facade .vc-thumb { width: 100%; height: 100%; object-fit: cover; display: block; border: 0; }
.vc-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 68px; height: 48px; background: rgba(33,33,33,.85); border-radius: 12px; display: block; pointer-events: none; }
.vc-play::after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-40%,-50%); border-style: solid; border-width: 12px 0 12px 18px; border-color: transparent transparent transparent #fff; }
.vc-facade:hover .vc-play { background: #f00; }
#slider-voice .splide__arrow { background: #fff; border: 1px solid var(--line); opacity: 1; width: 40px; height: 40px; }
#slider-voice .splide__arrow svg { fill: var(--ink); width: 14px; height: 14px; }
/* マッキンゼー第一志望の方へ(公式サイトと同じ) */
.mck-link { background-color: #051C2C; color: #fff; display: block; margin-top: 28px; text-decoration: none !important; transition: opacity .3s; }
.mck-link:hover { opacity: .85; }
.mck-link__inner { align-items: center; display: flex; gap: 24px; padding: 30px 32px; }
.mck-link__body { flex: 1; }
.ck-wrap .mck-link, .ck-wrap .mck-link__ttl { color: #fff; }
.mck-link__ttl { display: block; font-family: "Noto Serif JP", serif; font-size: 24px; font-weight: 700; letter-spacing: .04em; line-height: 1.5; }
.mck-link__txt { color: #d3dae4; display: block; font-size: 15px; line-height: 1.6; margin-top: 2px; }
.mck-link__icon { background-color: #2251FF; border-radius: 50%; flex: none; height: 48px; position: relative; width: 48px; }
.mck-link__icon::before { background: url(/img/icon/arrow-slider.svg) center / 100% no-repeat; content: ""; height: 16px; left: 50%; position: absolute; top: 50%; transform: translate(-50%,-50%) scale(-1,1); width: 16px; }
.mck-link .pc-none { display: none; }
.ck-banner { display: block; margin-top: 28px; border: 1px solid var(--line); }
.ck-banner img { display: block; width: 100%; height: auto; }
.ck-banner:hover { opacity: .88; }
.ck-line { margin-top: 16px; }
.ck-ytrow { margin-top: 22px; }
.ck-ytrow-t { font-family: var(--serif); font-weight: 700; font-size: 14px; letter-spacing: .06em; margin: 0 0 10px !important; padding-left: 10px; border-left: 3px solid var(--red); line-height: 1.3; }
.ck-ytrow ul { list-style: none; margin: 0 !important; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.ck-ytrow li { margin: 0; padding: 0; }
.ck-ytrow li::before { display: none; }
.ck-ytrow p { font-size: 12px; line-height: 1.5; margin: 6px 0 0 !important; color: var(--ink); font-weight: 700; }
.ck-ytrow p span { display: block; font-weight: 400; color: var(--sub); font-size: 11px; }
.ck-ytrow-bottom { margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--line); }
.ck-ytrow-more { text-align: right; font-size: 13px; }
.ck-prog-v1 .ck-cta.ck-cta-light { grid-template-columns: minmax(0,1fr) 260px; margin-top: 24px !important; }
.ck-cta-fig-w { width: 100%; min-width: 0; max-width: 100%; }
.ck-cta-fig-w img { padding: 0; max-width: 100%; }
.ck-cta-body { min-width: 0; }
.ck-cta-body { min-width: 0; }
/* 案2: 悩みと3ステップ */
.ck-prog-q { font-family: var(--serif); font-weight: 700; font-size: 18px; margin: 0 0 10px !important; }
.ck-worry { list-style: none; margin: 0 !important; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; }
.ck-worry li { position: relative; padding: 10px 12px 10px 36px; background: var(--g1); font-size: 14px; }
.ck-worry li::before { content: ""; position: absolute; left: 12px; top: 14px; width: 12px; height: 7px; border-left: 2px solid var(--red); border-bottom: 2px solid var(--red); transform: rotate(-45deg); }
.ck-flow3 { list-style: none; counter-reset: fl; margin: 20px 0 0 !important; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.ck-flow3 li { position: relative; border: 1px solid var(--line); padding: 18px 16px 16px; }
.ck-flow3 li::before { counter-increment: fl; content: counter(fl, decimal-leading-zero); font-family: var(--serif); font-size: 24px; font-weight: 700; color: var(--red); line-height: 1; display: block; margin-bottom: 8px; }
.ck-flow3 li:not(:last-child)::after { content: ""; position: absolute; right: -10px; top: 50%; margin-top: -7px; border-style: solid; border-width: 7px 0 7px 9px; border-color: transparent transparent transparent var(--g4); }
.ck-flow3 b { display: block; font-family: var(--serif); font-size: 17px; margin-bottom: 4px; }
.ck-flow3 span { display: block; font-size: 13px; color: var(--g5); line-height: 1.7; }
/* 案3: 運営陣 */
.ck-team { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 16px; }
.ck-team > div { border: 1px solid var(--line); padding: 16px; }
.ck-team-role { display: inline-block; font-family: var(--serif); font-size: 11px; font-weight: 700; color: var(--red); border: 1px solid var(--red); padding: 2px 8px; margin: 0 0 10px !important; letter-spacing: .06em; }
.ck-team-name { font-family: var(--serif); font-size: 20px; font-weight: 700; line-height: 1.3; }
.ck-team-ttl { font-size: 12px; color: var(--sub); margin-top: 2px !important; }
.ck-team-b { font-size: 13px; color: var(--g5); line-height: 1.7; margin-top: 10px !important; }
/* 案4: 1枚 */
.ck-one { margin-top: 8px; border: 1px solid var(--ink); display: grid; grid-template-columns: 1fr 220px; }
.ck-one-head { grid-column: 1 / -1; background: var(--ink); color: #fff; padding: 28px 32px 24px; }
.ck-one-k { font-family: var(--serif); font-size: 14px; letter-spacing: .08em; color: #fff; }
.ck-one-k::before { content: ""; display: inline-block; width: 18px; height: 3px; background: var(--red); vertical-align: middle; margin-right: 8px; }
.ck-one-t { font-family: var(--serif); font-size: 34px; font-weight: 700; line-height: 1.3; margin-top: 6px !important; }
.ck-one-sub { font-size: 14px; color: #ddd; line-height: 1.8; margin-top: 10px !important; }
.ck-one-body { padding: 24px 32px 28px; }
.ck-one-body .ck-cta-list { margin-top: 0 !important; }
.ck-one-proof { margin-top: 16px; padding: 12px 14px; background: var(--g1); font-size: 13px; line-height: 1.6; }
.ck-one-proof b { font-family: var(--serif); font-size: 26px; color: var(--red); margin-right: 8px; line-height: 1; }
.ck-one-proof span { display: block; font-size: 11px; color: var(--sub); }
.ck-one-body .ck-cta-btn { display: block; text-align: center; }
.ck-one-fig { margin: 0 !important; padding: 24px 24px 24px 0; align-self: center; }
.ck-one-fig img { display: block; width: 100%; height: auto; border: 1px solid var(--line); }
.ck-one-fig figcaption { font-size: 11px; color: var(--sub); text-align: center; margin-top: 6px; }
@media (max-width: 767px) {
	.ck-cta { grid-template-columns: 1fr; padding: 28px 20px; }
	.ck-cta-t { font-size: 19px; }
	.ck-cta-btn { display: block; text-align: center; padding: 15px 12px; }
	.ck-cta-fig { max-width: 240px; margin: 0 auto !important; }
	.ck-nums { grid-template-columns: repeat(3, 1fr); gap: 6px; }
	.ck-nums b { font-size: 28px; }
	.ck-nums span { font-size: 11px; }
	.ck-feat, .ck-worry, .ck-flow3, .ck-team { grid-template-columns: 1fr; }
	.ck-pn { padding: 12px; }
	.ck-pn-band-t { font-size: 21px; }
	.ck-pn-sec { padding: 16px 14px 18px; margin-top: 10px; }
	.ck-wrap h3.ck-pn-h { font-size: 16px; }
	.ck-lp { padding: 24px 12px 22px; background-size: auto; }
	.ck-lp { padding: 16px 10px 14px; }
	.ck-lp-s1 img { max-width: 230px; } .ck-lp-s2 img { max-width: 240px; } .ck-lp-ttl img { max-width: 250px; } .ck-lp-read img { max-width: 250px; }
	.ck-lp-read { margin-top: 12px !important; }
	.ck-lp .ck-cta-btn { display: block; text-align: center; }
	#slider-voice .vc-wrap { width: 100%; opacity: 1; }
	#slider-voice .splide__slide:not(.is-active) .vc-wrap { -webkit-mask-image: none; mask-image: none; }
	.mck-link__inner { gap: 14px; padding: 20px 16px; }
	.mck-link__ttl { font-size: 18px; } .mck-link__txt { font-size: 13px; }
	.mck-link__icon { width: 40px; height: 40px; } .mck-link__icon::before { width: 12px; height: 12px; }
	.mck-link .pc-none { display: inline; }
	.ck-logos img { width: 48px; height: 48px; }
	.ck-logos ul { gap: 2px 6px; }
	.ck-ytrow ul { grid-template-columns: 1fr 1fr; gap: 10px 8px; }
	.ck-prog-v1 .ck-cta.ck-cta-light { grid-template-columns: minmax(0,1fr); }
	.ck-cta-fig-w { max-width: 100%; }
	.ck-flow3 li:not(:last-child)::after { right: auto; left: 24px; top: auto; bottom: -11px; margin: 0; border-width: 9px 7px 0 7px; border-color: var(--g4) transparent transparent transparent; }
	.ck-one { grid-template-columns: 1fr; }
	.ck-one-head { padding: 22px 18px 20px; }
	.ck-one-t { font-size: 26px; }
	.ck-one-body { padding: 18px 18px 22px; }
	.ck-one-fig { padding: 0 18px 22px; max-width: 260px; margin: 0 auto !important; }
	.ck-body aside[style] { padding: 20px 16px !important; }
	.ck-body aside[style] > p:nth-of-type(2) { font-size: 19px !important; }
	.ck-body .blogcard { grid-template-columns: 1fr; gap: 10px; }
	.ck-body .blogcard-thumbnail { grid-row: auto; }
}

/* ===== 左の固定目次（PC 1200px以上・h2だけ・完全攻略ページと同じ） ===== */
.ck-side { display: none; }
@media (min-width: 1200px) {
	.ck-page { display: grid; grid-template-columns: 176px 760px 176px; gap: 32px; justify-content: center; align-items: start; }
	.ck-side { display: block; position: sticky; top: calc(var(--hdr, 0px) + 28px); padding: 28px 0 0 0; font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif; opacity: .85; }
	.ck-side:hover { opacity: 1; }
	.ck-side-t { font-family: "Noto Serif JP","Hiragino Mincho ProN",serif; font-weight: 700; font-size: 13px; letter-spacing: .12em; color: #555; padding: 0 0 8px 14px; border-bottom: 1px solid #1A1A1A; margin: 0 0 6px; }
	.ck-side-list { list-style: none; margin: 0; padding: 0; max-height: calc(100vh - var(--hdr, 0px) - 120px); overflow: auto; }
	.ck-side-list li { margin: 0; padding: 0; }
	.ck-side-list li::before { display: none; }
	.ck-side-list a { display: block; padding: 6px 8px 6px 10px; font-size: 12px; line-height: 1.45; color: #3C3C3C; text-decoration: none; border-left: 3px solid transparent; }
	.ck-side-list a .n { font-family: "Noto Serif JP",serif; color: #A62B17; margin-right: .4em; font-size: 11px; }
	.ck-side-list a:hover { background: #F4F4F4; }
	.ck-side-list li.on > a { border-left-color: #A62B17; background: #F6E9E6; color: #1A1A1A; font-weight: 700; }
	.ck-side-list li.on > a .n { font-weight: 400; }
	.ck-toc { display: none; }
	.ck-wrap { margin: 0; }
}

/* ===== 講師の吹き出し・監修カード（完全攻略ページと同じ） ===== */
.ck-voice { margin: 28px 0; padding: 18px 22px 18px 18px; background: var(--g1); border-left: 4px solid var(--ink); display: grid; grid-template-columns: 56px 1fr; gap: 14px; align-items: start; }
.ck-voice img { width: 56px; height: 56px; border-radius: 50%; display: block; object-fit: cover; border: 1px solid var(--line); background: #fff; }
.ck-voice-who { font-family: var(--serif); font-size: 13px; font-weight: 700; margin-bottom: 6px !important; }
.ck-voice-who span { display: inline-block; font-family: var(--serif); background: var(--ink); color: #fff; padding: 1px 9px; margin-right: 8px; font-size: 12px; letter-spacing: .06em; }
.ck-voice p { font-size: 15px; line-height: 1.85; }
.ck-sv { margin: 36px 0 0 !important; border-top: 2px solid var(--ink); border-bottom: 1px solid var(--line); padding: 18px 4px; display: grid; grid-template-columns: max-content 72px 1fr; gap: 16px; align-items: start; }
.ck-sv img { width: 72px; height: 72px; border-radius: 50%; display: block; object-fit: cover; border: 1px solid var(--line); }
.ck-wrap .ck-sv-t { display: inline-block; width: max-content; font-family: var(--serif); font-size: 12px; font-weight: 700; background: var(--ink); color: #fff; padding: 2px 10px; line-height: 1.7; white-space: nowrap; align-self: start; letter-spacing: .1em; }
.ck-sv-name { font-family: var(--serif); font-weight: 700; font-size: 17px; }
.ck-sv-name span { display: block; font-family: "Noto Sans JP",sans-serif; font-size: 13px; font-weight: 400; color: var(--sub); }
.ck-sv p.b { font-size: 14px; color: var(--g5); margin-top: 6px !important; line-height: 1.75; }
@media (max-width: 767px) { .ck-sv { grid-template-columns: 56px 1fr; } .ck-sv img { width: 56px; height: 56px; } .ck-wrap .ck-sv-t { grid-column: 1 / -1; } }
/* --- 仕上げ(2026-10-22) --- */
.ck-wrap .ck-body p { margin-bottom: 1em !important; } /* 10/27: margin の一括指定だと h2/h3 配下の字下げ(margin-left)まで消えるので下だけ */
.ck-wrap h2.ck-h2.is-stuck, .ck-wrap h3.ck-h3.is-stuck { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; }
.ck-wrap h2.ck-h2.is-stuck { font-size: 18px; padding: 10px 0 8px; }
.ck-wrap h3.ck-h3.is-stuck { font-size: 15px; }
.ck-wrap h2.ck-h2.is-stuck::before { vertical-align: 0; }
.ck-midcta { margin: 8px 0 0; }
.ck-wrap h2.ck-h2.ck-pn-band { position: static; display: block; background: var(--ink); color: #fff; border: 0; padding: 22px 24px 20px; margin: -20px -20px 16px; line-height: 1.4; }
.ck-pn-band-k { display: inline-block; font-family: var(--serif); font-size: 12px; letter-spacing: .14em; font-weight: 400; border: 1px solid rgba(255,255,255,.7); padding: 2px 10px; }
.ck-pn-band-t { display: block; font-family: var(--serif); font-size: 26px; font-weight: 700; margin-top: 10px; }
.ck-pn .ck-lp { border: 0; }
#slider-voice::before, #slider-voice::after { content: ""; position: absolute; top: 0; bottom: 0; width: 56px; z-index: 2; pointer-events: none; }
#slider-voice::before { left: 0; background: linear-gradient(to right, #fff, rgba(255,255,255,0)); }
#slider-voice::after { right: 0; background: linear-gradient(to left, #fff, rgba(255,255,255,0)); }
#slider-voice .splide__arrow { z-index: 3; }
.ck-prog-v1 .ck-cta.ck-cta-light { grid-template-columns: minmax(0,1fr) 300px; }
.ck-cta-light .ck-cta-fig figcaption { font-size: 12px; color: var(--g5); margin-top: 8px; }
.ck-rel ul { border-top: 1px solid var(--ink); }
.ck-rel a { display: flex; gap: 14px; align-items: center; padding: 10px 4px; }
.ck-rel a img { display: block; flex: none; width: 120px; height: 68px; object-fit: cover; border: 1px solid var(--line); }
.ck-rel-b { display: block; font-size: 15px; line-height: 1.5; }
@media (min-width: 1200px) {
	/* 右下の固定バナー(560px)が本文に重ならないよう、本文を左に120px寄せ、バナーを8割に */
	.ck-page { padding-right: 240px; }
	.footer-nav { transform: scale(.8); transform-origin: right bottom; }
}
@media (max-width: 767px) {
	/* 10/27 雄大: SPでも h3 まで固定する(10/22 の「SPは h2 だけ」を撤回) */
	.ck-wrap h3.ck-h3.is-stuck { white-space: normal; font-size: 18px; box-shadow: none; }
	.ck-wrap h2.ck-h2.is-stuck { font-size: 15px; }
	.ck-wrap h2.ck-h2.ck-pn-band { padding: 18px 16px 16px; margin: -12px -12px 12px; }
	.ck-pn-band-t { font-size: 21px; }
	#slider-voice::before, #slider-voice::after { display: none; }
	.ck-rel a { gap: 10px; }
	.ck-rel a img { width: 88px; height: 50px; }
	.ck-prog-v1 .ck-cta.ck-cta-light { grid-template-columns: minmax(0,1fr); }
}

/* ===== 要点・チェックリストのボックス（後藤さん提案 2026-10-24）: 薄いグレー地＋左に赤の細線。リストに class="point" か、要点/ポイント/チェックリスト/まとめ の見出し直後のリスト ===== */
.ck-body .ck-point-t { font-family: var(--serif); font-weight: 700; color: var(--red); font-size: 15px; line-height: 1.6; background: var(--g1); border-left: 3px solid var(--red); margin: 20px 0 0 !important; padding: 16px 20px 0 22px; }
.ck-body ul.ck-point, .ck-body ol.ck-point { background: var(--g1); border-left: 3px solid var(--red); margin: 20px 0; padding: 16px 20px 16px 22px; }
.ck-body .ck-point-t + ul.ck-point, .ck-body .ck-point-t + ol.ck-point { margin-top: 0; padding-top: 8px; }
.ck-body ul.ck-point > li:first-child, .ck-body ol.ck-point > li:first-child { margin-top: 0; }
.ck-body ul.ck-point > li { padding-left: 18px; }
.ck-body ol.ck-point > li { padding-left: 30px; }
@media (max-width: 767px) {
	.ck-body ul.ck-point, .ck-body ol.ck-point { padding: 14px 14px 14px 16px; }
	.ck-body .ck-point-t { padding: 14px 14px 0 16px; }
}

/* ===== 2026-10-27 中野さんのフェルミ記事(/test/fermi-kouryaku/)を基本形にそろえる(雄大指示) ===== */
.ck-wrap h1.ck-h1 { font-size: 36px; line-height: 1.4; } /* 10/27 雄大: 42px は大きすぎる → 10/22 の 36px に戻す */
.ck-h1sub { font-family: var(--serif); font-size: 22px; font-weight: 700; line-height: 1.5; margin-top: 10px !important; word-break: auto-phrase; }
.ck-h1sub em { font-style: normal; color: var(--red); }
.ck-hero-fig figcaption { font-size: 12px; color: var(--sub); margin-top: 8px; line-height: 1.6; }
.ck-sec { margin-top: 72px; }
.ck-wrap h2.ck-h2 { margin: 12px 0 24px; padding: 6px 0 12px; }
.ck-sub { padding-top: 36px; }
/* 本文中の目次: 白地・枠線・赤い帯の「目次」・番号は「1｜」 */
.ck-toc { background: #fff; padding: 0; border: 1px solid var(--line); }
.ck-wrap .ck-toc-t { background: var(--red); color: #fff; font-size: 16px; padding: 10px 16px; margin-bottom: 0 !important; letter-spacing: .12em; }
.ck-toc > ol { padding: 14px 20px 16px; }
.ck-toc > ol > li { font-size: 16px; border-bottom: 0; padding: 5px 0; }
.ck-toc > ol > li.num::before { content: counter(t) "｜"; }
.ck-toc ol ol li { font-size: 14px; padding: 3px 0; }
.ck-toc ol ol li::before { content: counter(t) "-" counter(s) "｜"; color: var(--g4); font-family: var(--serif); }
/* 末尾: 黒いCTA(1枚)とあわせて読みたい(1行説明つき) */
.ck-wrap .ck-cta.ck-cta-short { display: block; margin: 56px 0 0 !important; padding: 36px 32px; }
.ck-wrap .ck-cta-short .ck-cta-t { font-size: 30px; line-height: 1.45; word-break: auto-phrase; }
.ck-cta-short p { color: #fff; margin-top: 14px; }
.ck-cta-short .ck-cta-btn { margin-top: 20px; }
.ck-rel-short { margin-top: 48px; }
.ck-rel-short a { display: block; padding: 12px 4px; }
.ck-rel-short a .ck-rel-b { display: block; font-weight: 700; }
.ck-rel-short a .ck-rel-b span { display: block; font-size: 12px; color: var(--sub); font-weight: 400; margin-top: 2px; }
@media (max-width: 767px) {
	.ck-wrap { font-size: 15px; }
	.ck-wrap h1.ck-h1 { font-size: 29px; letter-spacing: 0; }
	.ck-h1sub { font-size: 17px; }
	.ck-sec { margin-top: 56px; }
	.ck-sub { padding-top: 28px; }
	.ck-toc > ol { padding: 10px 14px 12px; } .ck-wrap .ck-toc-t { font-size: 16px; padding: 10px 14px; } .ck-toc > ol > li { font-size: 15px; }
	.ck-wrap .ck-cta.ck-cta-short { padding: 28px 20px; }
	.ck-wrap .ck-cta-short .ck-cta-t { font-size: 23px; }
}
@media (min-width: 1200px) {
	/* 左の固定目次: 赤い帯の「目次」・240px・文字13px(中野さん版) */
	/* 右下の固定バナー(左端 約1048px・0.7倍)と本文列(右端 ≤1040px)が重ならない幅: 220 + 36 + 760 = 1016、右の余白 376 で左目次は 24px から */
	.ck-page { grid-template-columns: 220px 760px; gap: 36px; padding-right: 376px; }
	.footer-nav { transform: scale(.7); }
	.ck-side { opacity: 1; top: calc(var(--hdr, 0px) + 12px); padding-top: 0; }
	.ck-side .ck-side-t { font-family: var(--serif); font-weight: 700; background: var(--red); color: #fff; padding: 9px 14px; border-bottom: 0; letter-spacing: .12em; font-size: 14px; margin: 0 0 6px; }
	.ck-side-list a { padding: 9px 12px 9px 14px; font-size: 13px; line-height: 1.5; color: var(--g5); }
	.ck-side-list a .n { font-size: 12px; margin-right: .5em; }
}
@media (min-width: 1200px) and (max-width: 1439px) {
	.ck-page { justify-content: start; padding-left: 16px; padding-right: 0; }
}
