/*
Theme Name: コルク
Template: blocksy
Version: 1.0.0
Description: はじめてのインスタ副業（chona-insta.com）用の Blocksy 子テーマ。コルクボードに、インスタント写真・付箋・マスキングテープ・押しピンを留めた絵柄で、トップ・章・記事ページ・記事の一覧を作る。
Author: はじめてのインスタ副業
Text Domain: koruku
*/

/* ───────── 色と文字 ───────── */
:root {
	--kr-ink: #2b2420;
	--kr-text: #352c26;
	--kr-muted: #6b6158;
	--kr-cork: #c99a5e;
	--kr-cork-d: #a77a43;
	--kr-wood: #8a5a2b;
	--kr-wood-d: #5f3b19;
	--kr-wood-dd: #3b2615;
	--kr-paper: #fffdf8;
	--kr-paper2: #f7f1e5;
	--kr-kraft: #efe1c6;
	--kr-line: #e4d9c6;
	--kr-rule: #d3e3ec;
	--kr-margin: #e59a8f;
	--kr-note: #fff2b8;
	--kr-note-d: #6b5200;
	--kr-red: #c8423b;
	--kr-yellow: #f2c14e;
	--kr-link: #155a61;
	--kr-link-hover: #a24a2f;
	--kr-shadow: 0 1px 0 rgba(58, 36, 18, .05), 0 14px 28px -14px rgba(58, 36, 18, .6);
	--kr-shadow-s: 0 1px 0 rgba(58, 36, 18, .06), 0 8px 16px -10px rgba(58, 36, 18, .6);
	--kr-font: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic Medium", YuGothic, "Yu Gothic", Meiryo, sans-serif;
	/* 手書きふうの字：Windows の UD デジタル 教科書体（family 名は NP。太字の指定で NP-B の字になる）、Mac は丸ゴシック */
	--kr-hand: "UD Digi Kyokasho NP", "UD デジタル 教科書体 NP", "UD Digi Kyokasho N", "Hiragino Maru Gothic ProN", "BIZ UDPGothic", "Yu Gothic", sans-serif;
	/* 章の色（標準は「はじめる前に」） */
	--kr-c: #2b8a93;
	--kr-cd: #165a61;
	--kr-ct: #d9eff0;
}

/* 章の色。art/koruku.py の SHOU と同じ（c＝章の色、cd＝濃い色、ct＝薄い色） */
.kr-c-hajimeru,
body.kr-site.kr-cat-hajimeru {
	--kr-c: #2b8a93;
	--kr-cd: #165a61;
	--kr-ct: #d9eff0;
}

.kr-c-toukou,
body.kr-site.kr-cat-toukou {
	--kr-c: #d39a2c;
	--kr-cd: #6e4a06;
	--kr-ct: #faecd0;
}

.kr-c-shuunyuu,
body.kr-site.kr-cat-shuunyuu {
	--kr-c: #5c8c3a;
	--kr-cd: #36561f;
	--kr-ct: #e4efd8;
}

.kr-c-rule,
body.kr-site.kr-cat-rule {
	--kr-c: #34578f;
	--kr-cd: #1e3561;
	--kr-ct: #dfe6f3;
}

.kr-c-okane,
body.kr-site.kr-cat-okane {
	--kr-c: #b5573b;
	--kr-cd: #73321d;
	--kr-ct: #f6e0d6;
}

/* Blocksy の色と文字の変数を、このサイトの値にする（親の :root より body のほうが近いので、こちらが使われる） */
body.kr-site {
	--theme-font-family: var(--kr-font);
	--theme-text-color: var(--kr-text);
	--theme-headings-color: var(--kr-ink);
	--theme-heading-color: var(--kr-ink);
	--theme-link-initial-color: var(--kr-link);
	--theme-link-hover-color: var(--kr-link-hover);
	--theme-border-color: var(--kr-line);
	--theme-selection-background-color: var(--kr-note);
	--theme-selection-text-color: var(--kr-ink);
	--theme-button-background-initial-color: var(--kr-cd);
	--theme-button-background-hover-color: var(--kr-wood-d);
	--theme-button-text-initial-color: #fff;
	--theme-button-text-hover-color: #fff;
	--theme-palette-color-1: #155a61;
	--theme-palette-color-2: #a24a2f;
	--theme-palette-color-3: #352c26;
	--theme-palette-color-4: #2b2420;
	--theme-palette-color-5: #e4d9c6;
	--theme-palette-color-6: #f7f1e5;
	--theme-palette-color-7: #c99a5e;
	--theme-palette-color-8: #fffdf8;
	/* コルクボードの地（粒は assets/img/cork.svg。地の色はここ） */
	background-color: var(--kr-cork);
	background-image:
		url(assets/img/cork.svg),
		radial-gradient(ellipse 70% 900px at 15% 0, rgba(255, 236, 200, .25), transparent);
	background-size: 240px 240px, 100% 1400px;
	background-repeat: repeat, no-repeat;
	color: var(--kr-text);
	font-family: var(--kr-font);
	-webkit-text-size-adjust: 100%;
	overflow-wrap: anywhere;
}

body.kr-site #main-container,
body.kr-site .site-main {
	background: transparent;
}

.kr-site h1,
.kr-site h2,
.kr-site h3,
.kr-site h4 {
	color: var(--kr-ink);
	font-family: var(--kr-font);
}

.kr-site a {
	color: var(--kr-link);
}

.kr-site a:hover {
	color: var(--kr-link-hover);
}

.kr-site :focus-visible {
	outline: 3px solid var(--kr-yellow);
	outline-offset: 2px;
	border-radius: 3px;
}

.kr-wrap {
	box-sizing: border-box;
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 20px;
}

.kr-center {
	text-align: center;
}

/* 押しピン（丸い頭）。::before などに使う */
.kr-pin {
	--kr-pc: var(--kr-red);
}

/* ───────── ヘッダー（Blocksy の #header） ───────── */
body.kr-site #header {
	position: relative;
}

body.kr-site #header::before {
	content: "";
	display: block;
	height: 9px;
	background: var(--kr-wood) linear-gradient(to bottom, rgba(255, 255, 255, .18), rgba(0, 0, 0, .18));
}

body.kr-site #header [data-row*="middle"] {
	--height: 82px;
	background: var(--kr-paper);
	border-bottom: 1px solid var(--kr-line);
	box-shadow: 0 6px 14px -8px rgba(58, 36, 18, .55);
}

body.kr-site #header .site-title,
body.kr-site #header .site-title a {
	color: var(--kr-ink);
	font-family: var(--kr-hand);
	font-size: 1.32rem;
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 1.3;
	text-decoration: none;
}

body.kr-site #header .site-title a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

body.kr-site #header .site-title a::before {
	content: "";
	flex: none;
	width: 42px;
	height: 42px;
	background: url(assets/img/logo-mark.svg) center / contain no-repeat;
}

body.kr-site #header .site-description {
	color: var(--kr-muted);
	font-size: .78rem;
}

body.kr-site #header-menu-1 .menu > li > .ct-menu-link {
	--menu-item-height: auto;
	padding: .5em .85em;
	margin: 0 1px;
	border-radius: 999px;
	color: var(--kr-ink);
	font-size: .9rem;
	font-weight: 700;
}

body.kr-site #header-menu-1 .menu > li > .ct-menu-link:hover,
body.kr-site #header-menu-1 .menu > li.current-menu-item > .ct-menu-link,
body.kr-site #header-menu-1 .menu > li.current-post-ancestor > .ct-menu-link,
body.kr-site #header-menu-1 .menu > li.current-category-ancestor > .ct-menu-link {
	background: var(--kr-paper2);
	color: var(--kr-ink);
}

/* 章のメニュー：章の色の押しピン */
body.kr-site .kr-menu-cat > .ct-menu-link::before {
	content: "";
	flex: none;
	display: inline-block;
	width: 11px;
	height: 11px;
	margin-right: 7px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 35%, rgba(255, 255, 255, .7) 0 18%, transparent 22%), var(--kr-c);
	box-shadow: 1px 2px 2px rgba(58, 36, 18, .35);
}

body.kr-site #header-menu-1 .menu > li.kr-menu-list > .ct-menu-link {
	margin-left: 8px;
	background: var(--kr-ink);
	color: #fff;
}

body.kr-site #header-menu-1 .menu > li.kr-menu-list > .ct-menu-link:hover {
	background: var(--kr-wood-d);
	color: #fff;
}

/* ───────── ボタン ───────── */
.kr-btn,
.kr-site .kr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .4em;
	min-height: 48px;
	padding: .7em 1.6em;
	border: 2px solid var(--kr-ink);
	border-radius: 999px;
	background: var(--kr-ink);
	color: #fff;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none;
	box-shadow: 0 3px 0 rgba(58, 36, 18, .35);
	transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}

.kr-btn:hover,
.kr-site .kr-btn:hover {
	background: var(--kr-wood-d);
	border-color: var(--kr-wood-d);
	color: #fff;
	transform: translateY(1px);
	box-shadow: 0 2px 0 rgba(58, 36, 18, .35);
}

.kr-btn--ghost,
.kr-site .kr-btn--ghost {
	background: var(--kr-paper);
	color: var(--kr-ink);
	border-style: dashed;
}

.kr-site .kr-btn--ghost:hover {
	background: #fff;
	color: var(--kr-ink);
	border-color: var(--kr-ink);
}

/* ───────── マスキングテープ（はしがぎざぎざ） ───────── */
.kr-tape,
.kr-site [data-content] > article::before,
.kr-site [data-content] > article::after,
.kr-card::before,
.kr-chbox::before,
.kr-board::before,
.kr-about__box::before,
.kr-hero__note::before,
.ci-related::before {
	--kr-tape: var(--kr-c);
	content: "";
	position: absolute;
	z-index: 2;
	width: 128px;
	height: 30px;
	background:
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .38) 0 7px, transparent 7px 16px),
		var(--kr-tape);
	opacity: .85;
	clip-path: polygon(0 0, 100% 0, 96% 20%, 100% 40%, 96% 60%, 100% 80%, 96% 100%, 0 100%, 4% 80%, 0 60%, 4% 40%, 0 20%);
	box-shadow: 0 1px 2px rgba(0, 0, 0, .12);
	pointer-events: none;
}

/* ───────── 記事・固定ページの紙（Blocksy の article） ───────── */
.kr-site [data-content] > article {
	--theme-container-width: 100%;
	--theme-block-width: 100%;
	--theme-block-max-width: 100%;
	position: relative;
	box-sizing: border-box;
	width: min(880px, calc(100% - 24px));
	max-width: none;
	margin: 0 auto;
	padding: 52px 56px 44px;
	border: 0;
	background: var(--kr-paper);
	border-radius: 2px;
	box-shadow: var(--kr-shadow);
}

.kr-site [data-content] > article::before {
	top: -13px;
	left: 26px;
	transform: rotate(-6deg);
}

.kr-site [data-content] > article::after {
	top: -11px;
	right: 30px;
	transform: rotate(5deg);
	--kr-tape: var(--kr-yellow);
}

.kr-page [data-content] > article::before {
	--kr-tape: var(--kr-wood);
}

/* 題の箱（Blocksy の .hero-section[data-type=type-1]） */
.kr-site article .hero-section[data-type="type-1"] {
	--margin-bottom: 30px;
	--alignment: left;
	text-align: left;
}

.kr-site article .entry-header > *:not(:first-child) {
	margin-top: 14px;
}

.kr-site article .entry-header .page-title {
	font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.05rem);
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: .01em;
	color: var(--kr-ink);
}

.kr-site article .entry-header .entry-meta {
	color: var(--kr-muted);
	font-size: .88rem;
}

/* パンくず */
.kr-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	gap: 2px 0;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: .82rem;
	color: var(--kr-muted);
}

.kr-breadcrumb li {
	margin: 0;
}

.kr-breadcrumb li + li::before {
	content: "›";
	margin: 0 .55em;
	color: var(--kr-cork-d);
}

.kr-breadcrumb a {
	color: var(--kr-muted);
	text-decoration: underline;
	text-decoration-color: rgba(107, 97, 88, .4);
	text-underline-offset: 3px;
}

/* 章の札（題の上） */
.kr-label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.kr-label a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 4px 14px 4px 5px;
	border-radius: 999px;
	background: var(--kr-ct);
	color: var(--kr-cd);
	font-size: .88rem;
	font-weight: 700;
	text-decoration: none;
}

.kr-label a:hover {
	color: var(--kr-cd);
	background: #fff;
	box-shadow: inset 0 0 0 2px var(--kr-ct);
}

.kr-label img {
	width: 30px;
	height: 30px;
}

.kr-label__no {
	font-family: var(--kr-hand);
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--kr-cd);
	letter-spacing: .04em;
}

/* アイキャッチ（白いふちとテープ） */
.kr-eyecatch {
	position: relative;
	box-sizing: border-box;
	margin: 0 0 34px;
	padding: 9px;
	background: #fff;
	box-shadow: var(--kr-shadow-s);
	transform: rotate(-.5deg);
}

.kr-eyecatch img {
	display: block;
	width: 100%;
	height: auto;
}

/* ───────── 本文 ───────── */
.kr-site .entry-content {
	font-size: 1.0625rem;
	line-height: 1.95;
	color: var(--kr-text);
}

.kr-site .entry-content > * {
	--theme-content-spacing: 1.35em;
}

.kr-site .entry-content a {
	color: var(--kr-link);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.kr-site .entry-content a:hover {
	color: var(--kr-link-hover);
}

.kr-site .entry-content strong {
	background: linear-gradient(transparent 62%, rgba(242, 193, 78, .45) 62%);
}

/* h2：章の色のマスキングテープに、丸い番号の札 */
.kr-site .entry-content h2.kr-h2 {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-top: 2.6em;
	margin-bottom: 1em;
	padding: 12px 22px 12px 12px;
	background:
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .34) 0 9px, transparent 9px 20px),
		var(--kr-ct);
	clip-path: polygon(0 0, 100% 0, 99.2% 25%, 100% 50%, 99.2% 75%, 100% 100%, 0 100%, .8% 75%, 0 50%, .8% 25%);
	color: var(--kr-ink);
	font-size: 1.32rem;
	line-height: 1.55;
	font-weight: 700;
	scroll-margin-top: 90px;
}

.kr-h2__no {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	margin-top: -1px;
	border-radius: 50%;
	background: radial-gradient(circle at 34% 30%, rgba(255, 255, 255, .35) 0 14%, transparent 18%), var(--kr-cd);
	color: #fff;
	font-family: var(--kr-hand);
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1;
	box-shadow: 1px 2px 3px rgba(58, 36, 18, .35);
}

.kr-h2__t {
	flex: 1 1 auto;
	min-width: 0;
	padding-top: 2px;
}

.kr-site .entry-content h2.kr-h2--plain {
	padding-left: 20px;
}

.kr-site .entry-content h2.kr-h2--src {
	margin-top: 2.8em;
	padding: 14px 0 0;
	background: none;
	clip-path: none;
	border-top: 2px dashed var(--kr-line);
	font-size: 1.05rem;
	color: var(--kr-muted);
}

/* h3：小さな押しピンと点線 */
.kr-site .entry-content h3 {
	position: relative;
	margin-top: 2em;
	margin-bottom: .8em;
	padding: 0 0 6px 28px;
	border-bottom: 2px dotted var(--kr-line);
	font-size: 1.14rem;
	line-height: 1.6;
	font-weight: 700;
	color: var(--kr-ink);
}

.kr-site .entry-content h3::before {
	content: "";
	position: absolute;
	left: 2px;
	top: .42em;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 32%, rgba(255, 255, 255, .7) 0 16%, transparent 20%), var(--kr-c);
	box-shadow: 1px 2px 2px rgba(58, 36, 18, .35);
}

.kr-site .entry-content ul:not([class]),
.kr-site .entry-content ol:not([class]) {
	padding-left: 1.4em;
}

.kr-site .entry-content li + li {
	margin-top: .3em;
}

/* 表 */
.ci-table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin-bottom: 1.6em;
	border: 1px solid var(--kr-line);
	border-radius: 4px;
	background: #fff;
}

.kr-site .ci-table-scroll table {
	width: 100%;
	min-width: 540px;
	margin: 0;
	border-collapse: collapse;
	border: 0;
	font-size: .93em;
	line-height: 1.7;
}

.kr-site .ci-table-scroll th,
.kr-site .ci-table-scroll td {
	padding: 9px 12px;
	border: 0;
	border-bottom: 1px solid var(--kr-line);
	text-align: left;
	vertical-align: top;
}

.kr-site .ci-table-scroll th + th,
.kr-site .ci-table-scroll td + td {
	border-left: 1px solid var(--kr-line);
}

.kr-site .ci-table-scroll thead th,
.kr-site .ci-table-scroll tr:first-child th {
	background: var(--kr-ct);
	color: var(--kr-ink);
	font-weight: 700;
}

.kr-site .ci-table-scroll tbody tr:nth-child(even) td {
	background: #fcf9f2;
}

.kr-site .ci-table-scroll tr:last-child td {
	border-bottom: 0;
}

/* PR表示：本文と同じ大きさ・太字・濃い色（ステマ規制の運用基準。小さい字や薄い色にしない） */
.kr-site .entry-content .ci-pr {
	box-sizing: border-box;
	margin: 0 0 .7em;
	padding: .55em .95em;
	border: 2px solid var(--kr-ink);
	border-radius: 4px;
	background: #fff;
	color: var(--kr-ink);
	font-size: 1em;
	font-weight: 700;
	line-height: 1.7;
}

/* 確認日 */
.kr-site .entry-content .ci-checked-on {
	margin-bottom: 1.6em;
	color: var(--kr-muted);
	font-size: .88em;
	line-height: 1.7;
}

/* お知らせ（メモ） */
.kr-site .entry-content .ci-note {
	padding: 14px 18px;
	border: 1px solid var(--kr-line);
	border-left: 5px solid var(--kr-cork-d);
	border-radius: 3px;
	background: var(--kr-paper2);
	font-size: .95em;
	line-height: 1.85;
}

/* 3行でいうと（付箋） */
.kr-site .entry-content .ci-summary {
	position: relative;
	box-sizing: border-box;
	padding: 34px 22px 16px;
	background: linear-gradient(to bottom, rgba(0, 0, 0, .05) 0 22px, transparent 22px), var(--kr-note);
	box-shadow: 0 10px 18px -12px rgba(58, 36, 18, .7);
	transform: rotate(-.5deg);
}

.kr-site .entry-content .ci-summary > p:first-child {
	position: absolute;
	top: 2px;
	left: 22px;
	margin: 0;
	color: var(--kr-note-d);
	font-family: var(--kr-hand);
	font-size: .95rem;
	font-weight: 700;
	letter-spacing: .06em;
}

.kr-site .entry-content .ci-summary ul {
	margin: 4px 0 0;
	padding-left: 1.25em;
}

.kr-site .entry-content .ci-summary li::marker {
	color: var(--kr-note-d);
}

/* この記事で話すこと（罫線の入ったカード） */
.kr-site .entry-content .ci-toc {
	position: relative;
	box-sizing: border-box;
	padding: 14px 20px 12px 46px;
	border: 1px solid var(--kr-line);
	border-radius: 3px;
	background-color: #fff;
	background-image:
		linear-gradient(90deg, transparent 32px, var(--kr-margin) 32px 34px, transparent 34px),
		repeating-linear-gradient(to bottom, transparent 0 calc(2em - 1px), var(--kr-rule) calc(2em - 1px) 2em);
	background-position: 0 0, 0 11px;
	box-shadow: var(--kr-shadow-s);
	line-height: 2em;
}

.kr-site .entry-content .ci-toc > p:first-child {
	margin: 0;
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
	font-size: 1.05rem;
}

.kr-site .entry-content .ci-toc ol {
	margin: 0;
	padding-left: 1.5em;
}

.kr-site .entry-content .ci-toc li {
	margin: 0;
	line-height: 2em;
}

.kr-site .entry-content .ci-toc li::marker {
	color: var(--kr-cd);
	font-weight: 700;
}

.kr-site .entry-content .ci-toc a {
	color: var(--kr-text);
	text-decoration-color: rgba(53, 44, 38, .3);
}

.kr-site .entry-content .ci-toc a:hover {
	color: var(--kr-link-hover);
}

/* 大事なところ（押しピンで留めたカード） */
.kr-site .entry-content .ci-point {
	position: relative;
	box-sizing: border-box;
	padding: 20px 20px 14px 22px;
	border: 2px solid var(--kr-c);
	border-radius: 6px;
	background: #fff;
	box-shadow: var(--kr-shadow-s);
}

.kr-site .entry-content .ci-point::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 18px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 32%, rgba(255, 255, 255, .7) 0 16%, transparent 20%), var(--kr-red);
	box-shadow: 2px 3px 3px rgba(58, 36, 18, .35);
}

.kr-site .entry-content .ci-point > *:last-child {
	margin-bottom: 0;
}

/* チェックリスト（方眼のメモ） */
.kr-site .entry-content .ci-checklist {
	box-sizing: border-box;
	margin-left: 0;
	padding: 14px 18px 12px;
	list-style: none;
	border: 1px solid var(--kr-line);
	border-radius: 4px;
	background-color: #fff;
	background-image:
		linear-gradient(#edf2f5 1px, transparent 1px),
		linear-gradient(90deg, #edf2f5 1px, transparent 1px);
	background-size: 16px 16px;
}

.kr-site .entry-content .ci-checklist li {
	position: relative;
	margin: 0;
	padding: 6px 0 6px 34px;
	border-bottom: 1px dashed var(--kr-line);
	line-height: 1.75;
}

.kr-site .entry-content .ci-checklist li:last-child {
	border-bottom: 0;
}

.kr-site .entry-content .ci-checklist li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: .62em;
	box-sizing: border-box;
	width: 19px;
	height: 19px;
	border: 2px solid var(--kr-cd);
	border-radius: 4px;
	background: #fff;
}

/* この記事とつながる話（クラフト紙にテープ） */
.kr-site .entry-content .ci-related {
	position: relative;
	box-sizing: border-box;
	margin-top: 2.2em;
	padding: 22px 20px 14px;
	border-radius: 3px;
	background: var(--kr-kraft);
	box-shadow: var(--kr-shadow-s);
}

.ci-related::before {
	top: -13px;
	left: 20px;
	width: 104px;
	transform: rotate(-4deg);
}

.kr-site .entry-content .ci-related > p:first-child {
	margin: 0 0 6px;
	color: var(--kr-wood-d);
	font-family: var(--kr-hand);
	font-weight: 700;
	font-size: 1.05rem;
}

.kr-site .entry-content .ci-related ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.kr-site .entry-content .ci-related li {
	position: relative;
	margin: 0;
	padding: 7px 0 7px 26px;
	border-top: 1px dashed rgba(95, 59, 25, .25);
	line-height: 1.65;
}

.kr-site .entry-content .ci-related li:first-child {
	border-top: 0;
}

.kr-site .entry-content .ci-related li::before {
	content: "";
	position: absolute;
	left: 3px;
	top: 1.02em;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 32%, rgba(255, 255, 255, .7) 0 16%, transparent 20%), var(--kr-c);
	box-shadow: 1px 2px 2px rgba(58, 36, 18, .35);
}

.kr-site .entry-content .ci-related a {
	color: var(--kr-ink);
	font-weight: 700;
	text-decoration-color: rgba(43, 36, 32, .3);
}

.kr-site .entry-content .ci-related a:hover {
	color: var(--kr-link-hover);
}

/* 確かめた公式の情報 */
.kr-site .entry-content .ci-sources {
	padding-left: 1.2em;
	font-size: .86em;
	line-height: 1.75;
	color: var(--kr-muted);
}

.kr-site .entry-content .ci-sources li {
	word-break: break-all;
}

/* 書いた人（記事の紙の下） */
.kr-author {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	box-sizing: border-box;
	margin: 44px 0 0;
	padding: 20px 4px 0;
	border-top: 2px dashed var(--kr-line);
}

.kr-author__img {
	flex: none;
	width: 72px;
	height: 72px;
}

.kr-author__body p {
	margin: 0;
}

.kr-author__label {
	color: var(--kr-muted);
	font-size: .8rem;
}

.kr-site .kr-author__name {
	margin: 2px 0 4px;
	font-family: var(--kr-hand);
	font-size: 1.2rem;
	font-weight: 700;
	color: var(--kr-ink);
}

.kr-author__text {
	font-size: .92rem;
	line-height: 1.8;
}

.kr-author__text a {
	margin-left: .4em;
	white-space: nowrap;
}

/* ───────── 記事の紙の外：同じ章の記事・ほかの章 ───────── */
.kr-chbox,
.kr-others {
	box-sizing: border-box;
	width: min(880px, calc(100% - 24px));
	margin-left: auto;
	margin-right: auto;
}

.kr-chbox {
	position: relative;
	margin-top: 46px;
	padding: 28px 30px 22px;
	background: var(--kr-paper);
	border-top: 6px solid var(--kr-c);
	border-radius: 2px;
	box-shadow: var(--kr-shadow);
}

.kr-chbox::before {
	top: -18px;
	left: calc(50% - 64px);
	transform: rotate(-2deg);
}

.kr-chbox__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}

.kr-chbox__head img {
	flex: none;
}

.kr-chbox__head > div {
	flex: 1 1 auto;
	min-width: 0;
}

.kr-chbox__label {
	margin: 0;
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
	font-size: .9rem;
}

.kr-site .kr-chbox__title {
	margin: 0;
	font-size: 1.2rem;
	line-height: 1.45;
}

.kr-chbox__count {
	flex: none;
	padding: 3px 12px;
	border-radius: 999px;
	background: var(--kr-ct);
	color: var(--kr-cd);
	font-weight: 700;
	font-size: .85rem;
}

/* 番号つきの短い題のリスト */
.kr-nlist {
	margin: 0;
	padding: 0;
	list-style: none;
}

.kr-nlist li {
	display: flex;
	gap: 10px;
	align-items: baseline;
	margin: 0;
	padding: 8px 6px;
	border-bottom: 1px dashed var(--kr-line);
	line-height: 1.6;
}

.kr-nlist li:last-child {
	border-bottom: 0;
}

.kr-nlist__no {
	flex: none;
	min-width: 3.6em;
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
	font-size: .95rem;
	letter-spacing: .02em;
}

.kr-site a.kr-nlist__t {
	color: var(--kr-ink);
	font-weight: 700;
	text-decoration: none;
}

.kr-site a.kr-nlist__t:hover {
	color: var(--kr-link-hover);
	text-decoration: underline;
}

.kr-nlist li.is-current {
	border-radius: 4px;
	background: var(--kr-ct);
}

.kr-nlist li.is-current .kr-nlist__t {
	font-weight: 700;
	color: var(--kr-ink);
}

.kr-nlist li.is-current em {
	display: inline-block;
	margin-left: 8px;
	padding: 0 8px;
	border-radius: 999px;
	background: var(--kr-cd);
	color: #fff;
	font-style: normal;
	font-size: .72rem;
	font-weight: 700;
	vertical-align: 2px;
	white-space: nowrap;
}

/* ほかの章 */
.kr-others {
	margin-top: 40px;
}

.kr-site .kr-others__title,
.kr-site .kr-sec__kicker {
	display: inline-block;
	margin: 0 0 14px;
	padding: 4px 18px;
	background:
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .35) 0 7px, transparent 7px 16px),
		var(--kr-yellow);
	clip-path: polygon(0 0, 100% 0, 97% 25%, 100% 50%, 97% 75%, 100% 100%, 0 100%, 3% 75%, 0 50%, 3% 25%);
	color: var(--kr-ink);
	font-family: var(--kr-hand);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.6;
	transform: rotate(-1.5deg);
}

.kr-minis {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 14px;
}

.kr-mini {
	position: relative;
	display: grid;
	grid-template-columns: 52px 1fr;
	grid-template-rows: auto auto;
	column-gap: 10px;
	align-items: center;
	padding: 12px 14px;
	border-left: 6px solid var(--kr-c);
	border-radius: 2px;
	background: var(--kr-paper);
	box-shadow: var(--kr-shadow-s);
	text-decoration: none;
	transition: transform .12s ease;
}

.kr-site a.kr-mini {
	color: var(--kr-ink);
	text-decoration: none;
}

.kr-mini:hover {
	transform: translateY(-2px) rotate(-.6deg);
}

.kr-mini img {
	grid-row: 1 / 3;
	width: 52px;
	height: 52px;
}

.kr-mini__no {
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-size: .8rem;
	font-weight: 700;
}

.kr-mini__name {
	grid-column: 2;
	font-weight: 700;
	line-height: 1.4;
}

.kr-mini__count {
	position: absolute;
	right: 10px;
	top: 8px;
	color: var(--kr-muted);
	font-size: .75rem;
}

.kr-others .kr-center {
	margin-top: 22px;
}

/* ───────── 記事カード（白い紙にテープ） ───────── */
.kr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 34px 26px;
	margin: 0;
}

.kr-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px 34px;
}

.kr-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kr-grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kr-card {
	position: relative;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	padding: 10px 10px 14px;
	background: var(--kr-paper);
	box-shadow: var(--kr-shadow);
	transition: transform .15s ease, box-shadow .15s ease;
}

.kr-card::before {
	top: 2px;
	left: -22px;
	width: 84px;
	height: 24px;
	transform: rotate(-38deg);
}

.kr-grid > .kr-card:nth-child(even)::before {
	left: auto;
	right: -22px;
	transform: rotate(38deg);
	--kr-tape: var(--kr-yellow);
}

.kr-grid > .kr-card:nth-child(3n) {
	--kr-tilt: .6deg;
}

.kr-grid > .kr-card:nth-child(3n+1) {
	--kr-tilt: -.5deg;
}

@media (min-width: 900px) {
	.kr-grid > .kr-card {
		transform: rotate(var(--kr-tilt, 0deg));
	}
}

.kr-card:hover {
	transform: translateY(-3px) rotate(0deg);
	box-shadow: 0 1px 0 rgba(58, 36, 18, .05), 0 20px 30px -14px rgba(58, 36, 18, .65);
}

.kr-card__img {
	aspect-ratio: 1200 / 630;
	overflow: hidden;
	background: var(--kr-ct);
}

.kr-card__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kr-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 10px 4px 0;
}

.kr-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
	margin: 0 0 4px;
}

.kr-card__no {
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
	font-size: .95rem;
}

.kr-card__cat {
	padding: 0 10px;
	border-radius: 999px;
	background: var(--kr-ct);
	color: var(--kr-cd);
	font-size: .76rem;
	font-weight: 700;
	line-height: 1.8;
}

.kr-site .kr-card__title {
	margin: 0 0 8px;
	font-size: 1.02rem;
	line-height: 1.6;
	font-weight: 700;
}

.kr-site .kr-card__title a {
	color: var(--kr-ink);
	text-decoration: none;
}

/* カード全体を押せるように */
.kr-card__title a::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.kr-site .kr-card:hover .kr-card__title a {
	color: var(--kr-link-hover);
}

.kr-card__date {
	margin: auto 0 0;
	color: var(--kr-muted);
	font-size: .8rem;
}

/* ───────── トップ ───────── */
.kr-home {
	width: 100%;
	overflow: hidden;
}

.kr-hero {
	padding: 46px 0 26px;
}

.kr-hero__in {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	gap: 18px;
	align-items: center;
}

.kr-hero__note {
	position: relative;
	box-sizing: border-box;
	padding: 40px 38px 32px;
	background:
		repeating-linear-gradient(to bottom, transparent 0 calc(2.1em - 1px), rgba(211, 227, 236, .7) calc(2.1em - 1px) 2.1em),
		var(--kr-paper);
	background-position: 0 20px;
	box-shadow: var(--kr-shadow);
	transform: rotate(-1deg);
}

.kr-hero__note::before {
	top: -14px;
	left: calc(50% - 64px);
	transform: rotate(-3deg);
}

.kr-hero__tag {
	display: inline-block;
	margin: 0 0 14px;
	padding: 2px 12px;
	border-radius: 999px;
	background: var(--kr-ct);
	color: var(--kr-cd);
	font-weight: 700;
	font-size: .86rem;
}

.kr-site .kr-hero__title {
	margin: 0 0 16px;
	font-family: var(--kr-hand);
	font-size: clamp(2rem, 1.3rem + 2.6vw, 3.05rem);
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: .02em;
	color: var(--kr-ink);
}

.kr-hero__title span {
	color: var(--kr-cd);
	background: linear-gradient(transparent 66%, rgba(242, 193, 78, .55) 66%);
}

.kr-hero__lead {
	margin: 0 0 22px;
	font-size: 1rem;
	line-height: 2.1;
}

.kr-hero__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
}

.kr-hero__art img {
	display: block;
	width: 100%;
	height: auto;
}

/* 見出し（コルクの上） */
.kr-sec {
	padding: 48px 0;
}

.kr-site .kr-sec__title {
	margin: 0 0 10px;
	font-size: clamp(1.4rem, 1.1rem + 1.2vw, 1.85rem);
	line-height: 1.45;
	color: var(--kr-ink);
	text-shadow: 0 1px 0 rgba(255, 240, 210, .45);
}

.kr-sec__lead {
	display: inline-block;
	margin: 0 0 26px;
	padding: 4px 12px;
	background: rgba(255, 253, 248, .9);
	box-shadow: var(--kr-shadow-s);
	font-size: .95rem;
	line-height: 1.8;
}

.kr-new .kr-center {
	margin-top: 34px;
}

/* トップ：5つの章（写真ふうのカード） */
.kr-chapters__grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 34px 26px;
}

.kr-chapter {
	position: relative;
	box-sizing: border-box;
	flex: 0 1 calc((100% - 52px) / 3);
	min-width: 0;
	padding: 12px 12px 14px;
	background: var(--kr-paper);
	box-shadow: var(--kr-shadow);
}

.kr-chapter::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: -9px;
	left: calc(50% - 10px);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 32%, rgba(255, 255, 255, .7) 0 16%, transparent 20%), var(--kr-cd);
	box-shadow: 3px 4px 4px rgba(58, 36, 18, .4);
}

@media (min-width: 900px) {
	.kr-chapter:nth-child(odd) {
		transform: rotate(-.6deg);
	}

	.kr-chapter:nth-child(even) {
		transform: rotate(.7deg);
	}
}

.kr-site a.kr-chapter__photo {
	position: relative;
	display: grid;
	grid-template-columns: 76px 1fr;
	align-items: center;
	column-gap: 14px;
	padding: 18px 16px;
	background:
		radial-gradient(circle at 30% 30%, rgba(255, 255, 255, .22), transparent 60%),
		radial-gradient(circle, rgba(255, 255, 255, .12) 2.5px, transparent 3px) 0 0 / 22px 22px,
		var(--kr-c);
	color: #fff;
	text-decoration: none;
}

.kr-chapter__photo img {
	grid-row: 1 / 3;
	width: 76px;
	height: 76px;
	filter: drop-shadow(0 3px 3px rgba(0, 0, 0, .2));
}

.kr-chapter__no {
	font-family: var(--kr-hand);
	font-size: .88rem;
	font-weight: 700;
	opacity: .95;
}

.kr-chapter__name {
	font-family: var(--kr-hand);
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.3;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .2);
}

.kr-c-toukou a.kr-chapter__photo,
.kr-site .kr-c-toukou a.kr-chapter__photo {
	color: var(--kr-ink);
}

.kr-c-toukou .kr-chapter__name {
	text-shadow: 0 1px 0 rgba(255, 255, 255, .35);
}

.kr-chapter__desc {
	margin: 12px 4px 6px;
	font-size: .9rem;
	line-height: 1.8;
	color: var(--kr-text);
}

.kr-chapter .kr-nlist {
	margin: 0 2px;
}

.kr-chapter .kr-nlist li {
	padding: 6px 2px;
	font-size: .94rem;
}

/* トップ：このサイトについて */
.kr-about__box {
	position: relative;
	display: flex;
	gap: 24px;
	align-items: flex-start;
	box-sizing: border-box;
	max-width: 900px;
	margin: 0 auto;
	padding: 34px 36px 26px;
	background: var(--kr-paper);
	box-shadow: var(--kr-shadow);
}

.kr-about__box::before {
	top: -13px;
	left: 40px;
	transform: rotate(-5deg);
	--kr-tape: var(--kr-wood);
}

.kr-about__img {
	flex: none;
	width: 112px;
	height: 112px;
}

.kr-site .kr-about__title {
	margin: 0 0 10px;
	font-family: var(--kr-hand);
	font-size: 1.4rem;
}

.kr-about__box p {
	margin: 0 0 12px;
	line-height: 1.95;
}

.kr-about__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
}

/* ───────── 章・検索のページ ───────── */
.kr-archive {
	padding-top: 40px;
	padding-bottom: 60px;
}

.kr-archive-head {
	margin-bottom: 40px;
}

.kr-archive-head .kr-breadcrumb {
	display: inline-block;
	margin-bottom: 16px;
	padding: 3px 12px;
	background: rgba(255, 253, 248, .92);
	box-shadow: var(--kr-shadow-s);
}

.kr-archive-head__note {
	position: relative;
	display: flex;
	gap: 20px;
	align-items: center;
	box-sizing: border-box;
	max-width: 860px;
	padding: 34px 32px 26px;
	background: linear-gradient(to bottom, rgba(0, 0, 0, .05) 0 26px, transparent 26px), var(--kr-ct);
	box-shadow: var(--kr-shadow);
	transform: rotate(-.6deg);
}

.kr-archive-head__note::before {
	content: "";
	position: absolute;
	top: -9px;
	left: calc(50% - 11px);
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 32%, rgba(255, 255, 255, .7) 0 16%, transparent 20%), var(--kr-red);
	box-shadow: 3px 4px 4px rgba(58, 36, 18, .4);
}

.kr-archive-head__note--plain {
	background: linear-gradient(to bottom, rgba(0, 0, 0, .05) 0 26px, transparent 26px), var(--kr-note);
}

.kr-archive-head__note img {
	flex: none;
	width: 88px;
	height: 88px;
}

.kr-archive-head__label {
	margin: 0;
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
}

.kr-site .kr-archive-head__title {
	margin: 2px 0 6px;
	font-family: var(--kr-hand);
	font-size: clamp(1.6rem, 1.2rem + 1.5vw, 2.2rem);
	line-height: 1.35;
	color: var(--kr-ink);
}

.kr-archive-head__desc {
	margin: 0;
	font-size: .95rem;
	line-height: 1.85;
}

.kr-empty {
	padding: 20px;
	background: var(--kr-paper);
}

.kr-pagination {
	margin-top: 36px;
}

.kr-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kr-pagination a,
.kr-pagination span {
	display: inline-block;
	min-width: 42px;
	padding: 8px 12px;
	box-sizing: border-box;
	background: var(--kr-paper);
	box-shadow: var(--kr-shadow-s);
	text-align: center;
	text-decoration: none;
	color: var(--kr-ink);
	font-weight: 700;
}

.kr-pagination .current {
	background: var(--kr-ink);
	color: #fff;
}

.kr-others--archive {
	width: auto;
	margin-top: 54px;
}

/* ───────── 記事の一覧（[kr_ichiran]） ───────── */
.kr-site .kr-ichiran-nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}

.kr-ichiran-nav li {
	margin: 0;
}

.kr-site .kr-ichiran-nav a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 12px 4px 5px;
	border-radius: 999px;
	background: var(--kr-ct);
	color: var(--kr-cd);
	font-weight: 700;
	font-size: .88rem;
	text-decoration: none;
}

.kr-ichiran-nav a span {
	color: var(--kr-muted);
	font-weight: 400;
	font-size: .78rem;
}

.kr-board {
	position: relative;
	margin: 0 0 34px;
	padding: 22px 20px 12px;
	border: 1px solid var(--kr-line);
	border-top: 6px solid var(--kr-c);
	background: #fff;
	scroll-margin-top: 90px;
}

.kr-board::before {
	top: -17px;
	right: 24px;
	width: 92px;
	height: 24px;
	transform: rotate(4deg);
}

.kr-board__head {
	display: flex;
	align-items: center;
	gap: 12px;
}

.kr-board__label {
	margin: 0;
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
	font-size: .88rem;
}

.kr-site .entry-content h2.kr-board__title {
	margin: 0;
	padding: 0;
	background: none;
	clip-path: none;
	font-family: var(--kr-hand);
	font-size: 1.3rem;
	line-height: 1.4;
}

.kr-board__desc {
	margin: 10px 0 6px;
	font-size: .9rem;
	line-height: 1.8;
	color: var(--kr-muted);
}

.kr-site .entry-content .kr-board__list {
	margin: 8px 0 0;
	padding: 0;
	list-style: none;
}

.kr-site .entry-content .kr-board__list li {
	margin: 0;
	border-top: 1px dashed var(--kr-line);
}

.kr-site .entry-content .kr-board__list a {
	display: flex;
	gap: 10px;
	align-items: baseline;
	padding: 9px 4px;
	color: var(--kr-ink);
	text-decoration: none;
	line-height: 1.65;
}

.kr-site .entry-content .kr-board__list a:hover {
	background: var(--kr-paper2);
	color: var(--kr-link-hover);
}

.kr-board__no {
	flex: none;
	min-width: 3.6em;
	color: var(--kr-cd);
	font-family: var(--kr-hand);
	font-weight: 700;
}

.kr-board__t {
	font-weight: 700;
}

/* ───────── フッター ───────── */
.kr-prefooter {
	margin-top: 40px;
	padding: 38px 0 30px;
	background: var(--kr-wood-d) linear-gradient(to bottom, rgba(255, 255, 255, .08), rgba(0, 0, 0, .12));
	border-top: 10px solid var(--kr-wood);
	color: #f6ead6;
}

.kr-prefooter__in {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	gap: 24px;
	align-items: center;
}

.kr-prefooter__brand {
	display: flex;
	gap: 14px;
	align-items: center;
}

.kr-prefooter__brand img {
	flex: none;
	padding: 4px;
	border-radius: 8px;
	background: var(--kr-paper);
}

.kr-prefooter__brand p {
	margin: 0;
}

.kr-prefooter__name {
	font-family: var(--kr-hand);
	font-size: 1.2rem;
	font-weight: 700;
	color: #fff;
}

.kr-prefooter__desc {
	font-size: .86rem;
	line-height: 1.8;
	color: #ecdcc2;
}

.kr-prefooter__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kr-prefooter__links li {
	margin: 0;
}

.kr-site .kr-prefooter__links a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(255, 253, 248, .1);
	box-shadow: inset 0 0 0 1px rgba(255, 253, 248, .25);
	color: #fff;
	font-size: .86rem;
	font-weight: 700;
	text-decoration: none;
}

.kr-site .kr-prefooter__links a:hover {
	background: rgba(255, 253, 248, .22);
	color: #fff;
}

.kr-prefooter__links li[class*="kr-c-"] a::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--kr-c);
	box-shadow: 0 0 0 2px rgba(255, 255, 255, .5);
}

body.kr-site #footer {
	background: var(--kr-wood-dd);
}

body.kr-site #footer [data-row] {
	background: var(--kr-wood-dd);
	border-top: 0;
}

body.kr-site #footer .ct-footer-copyright {
	--theme-text-color: #eadbc3;
	--theme-link-initial-color: #ffffff;
	--theme-link-hover-color: #ffe2a6;
	color: #eadbc3;
	font-size: .84rem;
	line-height: 1.9;
	text-align: center;
}

body.kr-site #footer .ct-footer-copyright a {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.kr-foot-sep {
	margin: 0 .5em;
	opacity: .6;
}

/* ───────── 幅のせまい画面 ───────── */
@media (max-width: 999.98px) {
	.kr-grid--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kr-grid--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kr-chapter {
		flex-basis: calc((100% - 26px) / 2);
	}

	.kr-hero__in {
		grid-template-columns: minmax(0, 1fr);
	}

	.kr-hero__art {
		max-width: 680px;
		margin: 0 auto;
	}

	.kr-prefooter__in {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 689.98px) {
	body.kr-site #header [data-row*="middle"] {
		--height: 66px;
	}

	body.kr-site #header .site-title,
	body.kr-site #header .site-title a {
		font-size: 1.08rem;
	}

	body.kr-site #header .site-title a::before {
		width: 34px;
		height: 34px;
	}

	.kr-wrap {
		padding: 0 14px;
	}

	.kr-site [data-content] > article {
		width: calc(100% - 16px);
		padding: 36px 18px 30px;
	}

	.kr-site [data-content] > article::before {
		left: 12px;
		width: 96px;
	}

	.kr-site [data-content] > article::after {
		right: 12px;
		width: 96px;
	}

	.kr-site .entry-content {
		font-size: 1rem;
		line-height: 1.9;
	}

	.kr-site .entry-content h2.kr-h2 {
		gap: 10px;
		padding: 10px 14px 10px 10px;
		font-size: 1.16rem;
	}

	.kr-h2__no {
		width: 32px;
		height: 32px;
		font-size: 1rem;
	}

	.kr-site .entry-content .ci-summary,
	.kr-eyecatch,
	.kr-hero__note,
	.kr-archive-head__note {
		transform: none;
	}

	.kr-site .entry-content .ci-toc {
		padding-left: 40px;
		background-image:
			linear-gradient(90deg, transparent 26px, var(--kr-margin) 26px 28px, transparent 28px),
			repeating-linear-gradient(to bottom, transparent 0 calc(2em - 1px), var(--kr-rule) calc(2em - 1px) 2em);
	}

	.kr-chbox,
	.kr-others {
		width: calc(100% - 16px);
	}

	.kr-chbox {
		padding: 24px 16px 16px;
	}

	.kr-site .kr-chbox__title {
		font-size: 1.05rem;
	}

	.kr-grid,
	.kr-grid--2,
	.kr-grid--3,
	.kr-grid--4 {
		grid-template-columns: minmax(0, 1fr);
		gap: 30px;
	}

	.kr-chapters__grid {
		gap: 30px;
	}

	.kr-chapter {
		flex-basis: 100%;
	}

	.kr-hero {
		padding-top: 30px;
	}

	.kr-hero__note {
		padding: 30px 20px 24px;
	}

	.kr-sec {
		padding: 34px 0;
	}

	.kr-about__box {
		flex-direction: column;
		padding: 28px 20px 20px;
	}

	.kr-about__img {
		width: 80px;
		height: 80px;
	}

	.kr-archive-head__note {
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 18px 20px;
	}

	.kr-archive-head__note img {
		width: 64px;
		height: 64px;
	}

	.kr-author {
		flex-direction: column;
		gap: 10px;
	}

	.kr-board {
		padding: 18px 12px 8px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kr-card,
	.kr-mini,
	.kr-btn {
		transition: none;
	}
}

/* 固定ページ（運営者・プライバシーポリシー）の見出し：Blocksy の既定のままだと記事の h2 より大きく見えるので、紙のノートの小見出しにそろえる（2026年10月13日） */
.kr-page:not(.kr-page-ichiran) .entry-content h2 {
	font-size: 1.3rem;
	line-height: 1.5;
	margin: 2.2em 0 .8em;
	padding: 0 0 .35em .7em;
	border-left: 5px solid var(--kr-cd);
	border-bottom: 2px dashed var(--kr-line);
}

.kr-page:not(.kr-page-ichiran) .entry-content h3 {
	font-size: 1.1rem;
	line-height: 1.5;
	margin: 1.8em 0 .6em;
}
