/*
Theme Name: Arkhe Child (エンニチ)
Theme URI: https://tech.freestudy.style/
Description: Arkhe の子テーマ。「追加CSS」に入れていたスタイルと、記事・一覧・ヘッダー・フッターのデザイン調整をまとめている。
Author: エンニチ
Template: arkhe
Version: 1.2.0
Text Domain: arkhe-child
*/

/* このファイルは design/build-child-theme.mjs が生成する。直接編集しないこと。
   編集するのは design/site.css（デザイン調整）と
   design/legacy-custom-css.bak.css（元からあった追加CSS）。 */


/* ==========================================================================
   1. 旧「追加CSS」から移設した分（フォーム / 目次 / G検定クイズ など）
   ========================================================================== */

/* メインコンテンツ start */
.l-main{
	margin-top: 30px;
}

.l-article{
	margin-top: 0px;
}

/* サイドバー start */
#sidebar .wp-image-112{
	width: 150px;
	height: 150px;
	object-fit: cover;
}

.sidebar_group-freestudy{
	box-shadow: 0px 0px 10px rgb(220, 220, 220);
	padding: 30px 20px 25px 30px;
	border-top: 5px solid #000000;
}
/* サイドバー end */

/* 投稿 start */
.l-content__body{
	margin-top: 0px;
}

.p-entry{
	padding: 25px 30px 50px 30px;
	box-shadow: 0px 0px 10px rgb(220, 220, 220);
	border-top: 5px solid #000000;
}

.p-entry p{
	padding: 0px 10px;
}

.p-entry h2{
	border-top: 2px solid black;
	border-bottom: 2px solid black;
	padding: 5px 15px;
}

.p-entry h3{
/* 	margin-top: 40px; */
  padding: 7px 0px 7px 15px;
  margin-bottom: 1em;
  border-left: 4px solid rgb(80,80,80);
}

.p-entry h4{
  padding: 8px 15px;
  border-bottom: 3px solid rgb(100,100,100);
}

.p-entry h5{
	position: relative;
}
.p-entry h5::before{
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: black;
  border-radius: 50%;
  margin-right: 8px;
	margin-bottom: 2px;
}

@media screen and (max-width:800px){
	.p-entry{
		padding: 0px;
		box-shadow: none;
		border-top: none;
	}
}
/* 投稿 end */

/* ヘッダー start */
.l-header{
	box-shadow: 5px 0px 10px rgb(180,180,180);
}
/* ヘッダー end */

/* パンくずリスト start */
.p-breadcrumb{
	padding: 20px 0;
}
/* パンくずリスト end */

/* お問い合わせ start */
.wpcf7-response-output{
	margin: 0 auto !important;
	margin-top: 25px !important;
	max-width: 800px !important; 
  border-radius: 3px;
	color: #842029;
	background-color: #f8d7da;
	border: 2px solid #f5c2c7 !important;
	padding: 10px 15px !important;
}

.cf-table{
	margin: 0 auto;
	max-width: 800px !important; 
	margin-bottom: 40px;
	color: rgb(90, 90, 90);
}

.cf-table th{
	background-color: #1c2e53 !important;
	color: white;
	vertical-align: middle;
	padding: 25px 16px;
	width: 250px;
}

.cf-table .required{
	font-size:.8em;
	padding: 3px 10px;
	background: #F57500;
	color: white;
	border-radius: 3px;
	margin-left: 8px;
}

.cf-table td{
	padding: 15px 20px  !important;
	vertical-align: middle;
}

.wpcf7-text, .wpcf7-select, .wpcf7-date{
	width: 100%;
	height: 40px;
	padding: 5px 10px;
}

span.wpcf7-list-item {
	display: block;
}

.cf-table td input, .cf-table td textarea, .cf-table td select{
	border-radius: 5px;
	background-color: #f5f5fa;
}

.cf-table td textarea{
	min-height: 140px;
	width: 100%;
	resize: vertical;
}

span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: red;
	font-weight: 600;
}

[data-class="wpcf7cf_group"], .wpcf7cf_group{
	margin-top: -41px !important;
}

.text_span{
	font-weight: 800;
}

.cf-table2 .time{
	width: calc(50% - 15px);
}

.cf-table2 .between{
	width: 30px !important;
	display: inline-block;
	text-align: center;
}

input.wpcf7-submit {
	margin: 0 auto;
	margin-bottom: 15px;
	display: block;
	padding: 8px 0px;
	width: 100%;
	max-width: 400px;
	background: #ffaa56;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	border-radius: 5px;
	box-shadow: 1px 1px 5px 1px rgb(220,220,220);
} 

@media screen and (max-width:800px){
	.cf-table{
		width: 100% !important;
		border: none !important;
/* 		margin-bottom: 0px; */
	}
	
	.cf-table th, .cf-table td{
		display: block;
		width: 100%;
		border: none;
		padding: 10px 15px;
	}
	
	.wpcf7-list-item{
		margin-left: 0px;
	}
	
	input.wpcf7-submit {
		font-size: 16px;
	}
}
/* お問い合わせ end */

/* 目次 start */
#ez-toc-container{
	padding:0;
	background-color: #f5f5f5 !important;
}

.ez-toc-title-container{
	  display: flex;
/*     justify-content: center; */
    align-items: center;
    margin: 0;
    padding: 10px 0;
    background-color: #000000;
    color: #fff;
}

.ez-toc-title{
	padding: 0 15px !important;
}

.ez-toc-title-toggle{
		margin-left: auto;
}

.ez-toc-toggle{
	padding: 0px 10px;
	margin-right: 15px;
}

.ez-toc-icon-toggle-span{
	background-color: white;
}

.ez-toc-list{
	padding: 10px 20px !important;
}

/* 目次 end */

.wp-category-cta-container > *:not(a):not(img){
	padding: 0px;
}

/* G検定 */ 

.gk-quiz {
  border: 1px solid #E7E3DB;
  border-radius: 12px;
  overflow: hidden;
  margin: 25px 0px 0px 1px;
  background: #fff;
}

.gk-quiz__q {
  display: flex;
  gap: 0.6rem;
  margin: 0;
  padding: 1.1rem 1.25rem;
  font-weight: 500;
  line-height: 1.8;
	padding: 10px 20px !important;
}

.gk-quiz__no {
  color: #2C6E7F;
  font-weight: 700;
  flex-shrink: 0;
}

.gk-quiz > details {
  border-top: 1px dashed #E7E3DB;
}

.gk-quiz summary {
  list-style: none;
  cursor: pointer;
  padding: 0.75rem 1.25rem;
  color: #2C6E7F;
  font-weight: 700;
  font-size: 0.92rem;
  background: #EAF2F3;
  transition: background 0.15s ease;
  user-select: none;
}

.gk-quiz summary::-webkit-details-marker { display: none; }

.gk-quiz summary::after {
  content: "　▼ クリックで開く";
  font-weight: 400;
  color: #5A6672;
  font-size: 0.82rem;
}
.gk-quiz details[open] summary::after { content: "　▲ とじる"; }

.gk-quiz summary:hover { background: #E0EDEE; }
.gk-quiz summary:focus-visible { outline: 2px solid #2C6E7F; outline-offset: -2px; }

.gk-quiz__verdict {
  display: inline-block;
  font-weight: 700;
  font-size: 0.9rem;
  padding: 0.28rem 0.75rem;
  border-radius: 999px;
  margin: 1.1rem 1.25rem 0.5rem;
}
.gk-quiz__verdict--ok { background: #E7F1EC; color: #2E7D57; }
.gk-quiz__verdict--ng { background: #F7EAED; color: #B5485B; }

.gk-quiz__exp {
  margin: 0 1.25rem 1.25rem;
  color: #1B2A3A;
  line-height: 1.85;
}

@media (prefers-reduced-motion: reduce) {
  .gk-quiz summary { transition: none; }
}


/* ==========================================================================
   2. デザイン調整
   ========================================================================== */

:root {
  /* Arkhe のトークンを上書き */
  --ark-color--main: #1b1a17;
  --ark-color--text: #33302b;
  --ark-color--link: #24384f;
  --ark-color--gray: #f5f2ec;

  /* 追加トークン
     地の色を寒色グレーから温かみのある紙へ振り、朱と藍を一段深くしている。
     ロゴが紺なので、構造色は藍のまま残す。 */
  --en-ink: #1b1a17;        /* 墨 */
  --en-ink-soft: #625d54;
  --en-accent: #a8341f;     /* 朱 */
  --en-indigo: #24384f;     /* 藍 */
  --en-line: #e2dcd2;
  --en-line-soft: #efeae1;
  --en-surface: #faf8f4;    /* 白練 */
  --en-paper: #f3efe8;      /* ページの地 */
  --en-radius: 6px;

  /* 見出しは明朝で格を出す。端末に載っている明朝を使うので読み込みコストはゼロ。
     游明朝は細く出るので、ウェイトとサイズで補正している。
     Noto Serif JP を使いたい場合は functions.php で読み込んだうえで先頭に足す。 */
  --en-mincho: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Yu Mincho",
               "YuMincho", "Noto Serif JP", "Noto Serif CJK JP", serif;
}

/* --------------------------------------------------------------------------
   1. 記事コンテナ
   -------------------------------------------------------------------------- */

.p-entry {
  background: #fff;
  padding: 56px 64px 72px;
  border-top: none;
  border-radius: var(--en-radius);
  box-shadow: 0 1px 2px rgba(27, 26, 23, .04), 0 6px 24px rgba(27, 26, 23, .05);
}

/* 本文と見出しの左端を揃える（既存の p { padding: 0 10px } を解除） */
.p-entry p { padding: 0; }

/* --------------------------------------------------------------------------
   2. タイポグラフィ
   -------------------------------------------------------------------------- */

.c-postContent {
  font-size: 1.0625rem;
  line-height: 1.95;
  color: var(--ark-color--text);
  letter-spacing: .03em;
  line-break: strict;
}

.c-postContent p { margin-block: 0 1.6em; }
.c-postContent strong { color: var(--en-ink); font-weight: 700; }
.c-postContent a {
  color: var(--en-indigo);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(36, 56, 79, .35);
  text-underline-offset: .22em;
  transition: text-decoration-color .18s ease, color .18s ease;
}
.c-postContent a:hover {
  color: var(--en-accent);
  text-decoration-color: var(--en-accent);
}

/* 記事タイトル */
.c-pageTitle__main {
  font-family: var(--en-mincho);
  font-weight: 600;
  font-size: clamp(1.7rem, 1.15rem + 1.9vw, 2.4rem);
  line-height: 1.55;
  letter-spacing: .05em;
  color: var(--en-ink);
  text-wrap: balance;
}

/* --------------------------------------------------------------------------
   3. 見出し
   h2・h3 を明朝、h4・h5 をゴシックにして、書体の差でも階層が読めるようにする。
   罫線は減らし、余白とサイズで格を出す。
   -------------------------------------------------------------------------- */

.p-entry :is(h2, h3) {
  font-family: var(--en-mincho);
  font-weight: 600;
  color: var(--en-ink);
  letter-spacing: .06em;
  text-wrap: balance;
}

/* h2 — 全幅の細い罫と、朱の短い罫 */
.p-entry h2 {
  border-top: none;
  border-bottom: 1px solid var(--en-line);
  padding: 0 0 .6em 0;
  margin-block: 4.5em 1.4em;
  position: relative;
  font-size: 1.5rem;
  line-height: 1.6;
}
.p-entry h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 2.4em;
  height: 2px;
  background: var(--en-accent);
}
.p-entry > .c-postContent > h2:first-child { margin-top: 0; }

/* h3 — 罫は左の細い縦線だけ */
.p-entry h3 {
  border-left: 2px solid var(--en-indigo);
  padding: .3em 0 .3em 1em;
  margin-block: 3.4em .9em;
  font-size: 1.22rem;
  line-height: 1.7;
}

/* h4 — ここからゴシック。書体の差で明朝の h3 と区切る */
.p-entry h4 {
  border-bottom: none;
  padding: 0;
  margin-block: 3em .7em;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: .06em;
  color: var(--en-ink);
}

/* h5 — 最小単位。h4 より小さく弱くして、朱の点で位置だけ示す */
.p-entry h5 {
  margin-block: 2.4em .6em;
  font-size: .88rem;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--en-ink-soft);
}
.p-entry h5::before {
  background-color: var(--en-accent);
  width: 5px;
  height: 5px;
  border-radius: 1px;
  margin-right: .55em;
  margin-bottom: 1px;
}

/* --------------------------------------------------------------------------
   4. 表 — 用語サイトの主役。外枠と塗りを外し、横罫だけで見せる
   -------------------------------------------------------------------------- */

:root {
  /* Arkhe はセルの padding を !important で指定しているので変数側で調整する */
  --ark-padding--cell: 15px 20px 15px 2px;
  --ark-color--border--table: #e2dcd2;
}

.c-postContent .wp-block-table,
.c-postContent > table { margin-block: 2.6em; }

/* 幅が足りないときは表ごと横スクロールさせる */
.c-postContent .wp-block-table { overflow-x: auto; }

.c-postContent table {
  border-collapse: collapse;
  width: 100%;
  font-size: .95rem;
  line-height: 1.85;
  border: none;
}

.c-postContent thead th {
  background: none;
  color: var(--en-ink);
  font-weight: 700;
  font-size: .84rem;
  letter-spacing: .1em;
  text-align: left;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--en-indigo);
}

/* テーマの word-break:break-all は「2025年」を「20/25年」で割ってしまうので戻す */
.c-postContent th,
.c-postContent td {
  border: none;
  border-bottom: 1px solid var(--en-line-soft);
  vertical-align: top;
  word-break: normal;
  word-break: auto-phrase;
  overflow-wrap: anywhere;
}

.c-postContent tbody tr:last-child th,
.c-postContent tbody tr:last-child td { border-bottom: 1px solid var(--en-line); }

/* 1 列目は見出しとして扱う。窮屈に潰れないよう下限幅を持たせる */
.c-postContent tbody td:first-child,
.c-postContent tbody th:first-child {
  color: var(--en-ink);
  font-weight: 700;
  min-width: 7em;
  padding-right: 28px !important;
}

/* --------------------------------------------------------------------------
   5. リスト・引用・コード
   -------------------------------------------------------------------------- */

.c-postContent ul,
.c-postContent ol { margin-block: 1.4em; padding-left: 1.5em; }
.c-postContent li { margin-block: .5em; }
.c-postContent ul li::marker { color: var(--en-accent); }
/* 番号は情報そのものなので本文色のまま太字にする */
.c-postContent ol li::marker { color: var(--en-ink); font-weight: 700; }
.c-postContent li > ul,
.c-postContent li > ol { margin-block: .5em; }

.c-postContent blockquote,
.c-postContent .wp-block-quote {
  margin-block: 2em;
  padding: 1.1em 1.4em;
  border: none;
  border-left: 3px solid var(--en-indigo);
  border-radius: 0 var(--en-radius) var(--en-radius) 0;
  background: var(--en-surface);
  color: var(--en-ink-soft);
}
.c-postContent blockquote > :last-child { margin-bottom: 0; }

.c-postContent :not(pre) > code {
  background: #f2efe8;
  color: #a8341f;
  padding: .1em .35em;
  border-radius: 4px;
  font-size: .9em;
}

.c-postContent pre,
.c-postContent .wp-block-code {
  margin-block: 2em;
  padding: 1.2em 1.4em;
  background: #22201c;
  color: #e8e3d9;
  border-radius: var(--en-radius);
  overflow-x: auto;
  font-size: .9rem;
  line-height: 1.75;
}
.c-postContent pre code { background: none; color: inherit; padding: 0; }

/* --------------------------------------------------------------------------
   6. アイキャッチ・画像
   -------------------------------------------------------------------------- */

.p-entry__thumb img {
  border-radius: var(--en-radius);
  max-height: 380px;
  width: 100%;
  object-fit: cover;
}

.c-postContent .wp-block-image img { border-radius: var(--en-radius); }
.c-postContent figcaption {
  margin-top: .7em;
  font-size: .85rem;
  color: var(--en-ink-soft);
  text-align: center;
}

/* --------------------------------------------------------------------------
   6.5 記事内コンポーネント（obsidian-wp が出力するコールアウト）
   -------------------------------------------------------------------------- */

.en-callout {
  --c: var(--en-indigo);
  --bg: #eff1f4;
  margin-block: 2.4em;
  padding: 1.25em 1.5em;
  border-left: 3px solid var(--c);
  border-radius: 0 var(--en-radius) var(--en-radius) 0;
  background: var(--bg);
}

.en-callout--tip     { --c: #2a5e46; --bg: #eef3ef; }
.en-callout--warning { --c: #7d5512; --bg: #f8f2e5; }
.en-callout--danger  { --c: #a8341f; --bg: #f8eeeb; }
.en-callout--neutral { --c: #625d54; --bg: #f4f1eb; }

.en-callout .en-callout__title {
  display: flex;
  align-items: center;
  gap: .5em;
  margin: 0 0 .6em;
  font-size: .92rem;
  font-weight: 700;
  color: var(--c);
  letter-spacing: .04em;
}
.en-callout .en-callout__title::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 2px;
  background: var(--c);
  flex-shrink: 0;
}

.en-callout__body { font-size: .96rem; }
.en-callout__body > :first-child { margin-top: 0; }
.en-callout__body > :last-child { margin-bottom: 0; }
/* 本文の段落マージンがボックス内でも効いてしまうので詰める */
.c-postContent .en-callout__body p { margin-block: 0 .8em; }
.c-postContent .en-callout__body > p:last-child { margin-bottom: 0; }

/* ==ハイライト== */
.c-postContent mark {
  background: linear-gradient(transparent 62%, #f3e2ac 62%);
  color: inherit;
  padding: 0 .1em;
}

/* --------------------------------------------------------------------------
   7. 一覧（トップ・アーカイブ）のカード
   Arkhe は .p-postList__item の左右 padding でガターを作っているので、
   カードの面は内側の .p-postList__link に付ける。
   -------------------------------------------------------------------------- */

/* 背景をわずかに沈めて、記事カード／本文カードを面として立たせる */
body { background: var(--en-paper); }

.p-postList.-type-card .p-postList__link {
  background: #fff;
  border: 1px solid var(--en-line);
  border-radius: var(--en-radius);
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.p-postList.-type-card .p-postList__item:hover .p-postList__link {
  transform: translateY(-3px);
  border-color: #d5cec2;
  box-shadow: 0 10px 26px rgba(27, 26, 23, .09);
}

/* テーマはホバー時に本文を薄くするが、浮き上がりと二重になるので戻す */
:is(.-type-card, .-type-list) > .p-postList__item:hover .p-postList__body { opacity: 1; }

.p-postList.-type-card .p-postList__link { display: flex; flex-direction: column; }
.p-postList.-type-card .p-postList__body {
  padding: 1rem 1.15rem 1.15rem;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}
/* 抜粋の長さが違ってもカード下端の日付・カテゴリーの行が揃うようにする */
.p-postList.-type-card .p-postList__meta { margin-top: auto; }

.p-postList__title {
  font-family: var(--en-mincho);
  font-weight: 600;
  color: var(--en-ink);
  letter-spacing: .04em;
}
.p-postList.-type-card .p-postList__title { font-size: 1.06rem; line-height: 1.65; }

.p-postList__excerpt {
  font-size: .84rem;
  line-height: 1.85;
  color: var(--en-ink-soft);
}

.p-postList.-type-card .p-postList__meta {
  padding-top: .8rem;
  border-top: 1px solid var(--en-line-soft);
  font-size: 11px;
}

/* カテゴリー名は少し目立たせる */
.p-postList__category,
.c-postTerms__item { color: var(--en-indigo); font-weight: 600; }

/* ページネーション */
.c-pagination__item { border-radius: 6px; }

/* --------------------------------------------------------------------------
   8. ヘッダー
   Arkhe 側で既に position:sticky なので、見え方だけ整える。
   -------------------------------------------------------------------------- */

.l-header {
  /* 既存の追加CSS が横方向にずれた濃い影を掛けているので上書きする */
  box-shadow: 0 1px 0 var(--en-line), 0 2px 12px rgba(27, 26, 23, .05);
  background: rgba(255, 255, 255, .86);
  backdrop-filter: saturate(150%) blur(10px);
}

.c-headLogo__img {
  max-height: 46px;
  width: auto;
}

/* グローバルナビ：当たり判定を広げ、ホバーと現在地を下線で示す */
.c-gnav__a {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 1.1em;
  height: 100%;
  font-weight: 600;
  letter-spacing: .04em;
  color: var(--en-ink);
}

.c-gnav__a::after {
  content: "";
  position: absolute;
  left: 1.1em;
  right: 1.1em;
  bottom: 22%;
  height: 2px;
  background: var(--en-accent);
  border-radius: 2px;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}

.c-gnav__li:hover > .c-gnav__a::after { transform: scaleX(1); }

/* 今いるカテゴリーを常時ハイライトする */
.c-gnav__li:is(.current-menu-item, .current-menu-parent, .current-post-parent) > .c-gnav__a {
  color: var(--en-accent);
}
.c-gnav__li:is(.current-menu-item, .current-menu-parent, .current-post-parent) > .c-gnav__a::after {
  transform: scaleX(1);
}

.p-breadcrumb { font-size: .82rem; color: var(--en-ink-soft); }
.p-breadcrumb a:hover { color: var(--en-accent); }

/* --------------------------------------------------------------------------
   8.5 サイドバー
   -------------------------------------------------------------------------- */

/* 背景を沈めたぶん、ウィジェットも白い面として揃える。
   既存の .sidebar_group-freestudy は独自に影を持っているので二重にしない。 */
#sidebar .c-widget:not(:has(.sidebar_group-freestudy)) {
  background: #fff;
  border: 1px solid var(--en-line);
  border-radius: var(--en-radius);
  padding: 18px 20px;
}
#sidebar .c-widget + .c-widget { margin-top: 20px; }

/* 画像や広告だけのウィジェットは枠を付けない */
#sidebar .c-widget:has(> .wp-block-group .wp-category-cta-container) {
  background: none;
  border: none;
  padding: 0;
}

#sidebar .wp-block-heading,
#sidebar .c-widget__title {
  font-size: 1rem;
  margin-bottom: .8em;
  padding-bottom: .5em;
  border-bottom: 2px solid var(--en-indigo);
  color: var(--en-ink);
}

#sidebar .wp-block-categories li a {
  display: block;
  padding: .5em .2em;
  border-bottom: 1px solid var(--en-line-soft);
}
#sidebar .wp-block-categories li:last-child a { border-bottom: none; }

/* --------------------------------------------------------------------------
   8.6 フッター
   テーマが持つ --ark-color--footer_bg / footer_txt に乗せて濃色にする。
   ウィジェットが空でも成立するようにしてある。
   -------------------------------------------------------------------------- */

.l-footer {
  --ark-color--footer_bg: #1b1a17;
  --ark-color--footer_txt: #c9c3b8;
  margin-top: 72px;
}

.l-footer a { text-decoration: none; }
.l-footer a:hover { color: #fff; text-decoration: underline; text-underline-offset: .25em; }

/* ウィジェット領域を段組みにする。
   Arkhe はウィジェット領域（.w-footer）単位で横並びにするが、
   ここでは display:contents で1枚剥がしてウィジェット単位の段組みにする。
   フッター2 に 2 つ入れても 3 列に並ぶ。 */
.l-footer__widgets {
  padding: 52px 0 44px;
}
.l-footer__widgets .l-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 40px;
  align-items: start;
}
.l-footer__widgets .w-footer { display: contents; }
.l-footer__widgets .w-footer + .w-footer { margin: 0; }
/* グリッド項目になった各ウィジェットの上マージンを消し、見出しの高さを揃える */
.l-footer__widgets .c-widget,
.l-footer__widgets .c-widget + .c-widget { margin: 0; }

.l-footer__widgets .wp-block-heading,
.l-footer__widgets .c-widget__title {
  font-family: var(--en-mincho);
  font-weight: 600;
  margin: 0 0 1em;
  padding-bottom: .6em;
  border-bottom: 1px solid rgba(255, 255, 255, .14);
  color: #fff;
  font-size: .95rem;
  letter-spacing: .06em;
}

.l-footer__widgets p { font-size: .88rem; line-height: 1.95; }

.l-footer__widgets ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.l-footer__widgets li a {
  display: block;
  padding: .55em 0;
  font-size: .88rem;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.l-footer__widgets li:last-child a { border-bottom: none; }

/* カテゴリーウィジェットの記事数 */
.l-footer__widgets li .c-postCount,
.l-footer__widgets li .post-count {
  margin-left: .5em;
  font-size: .78em;
  color: #918a7d;
  font-variant-numeric: tabular-nums;
}

/* 検索ウィジェット */
.l-footer__widgets .wp-block-search__inside-wrapper { gap: 8px; }
.l-footer__widgets .wp-block-search__input {
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 6px;
  padding: .6em .8em;
  color: #fff;
  font-size: .88rem;
}
.l-footer__widgets .wp-block-search__input::placeholder { color: #857e72; }
.l-footer__widgets .wp-block-search__input:focus-visible {
  outline: 2px solid var(--en-accent);
  outline-offset: 1px;
}
.l-footer__widgets .wp-block-search__button {
  background: var(--en-accent);
  border: none;
  border-radius: 6px;
  padding: .6em 1.1em;
  color: #fff;
  font-size: .85rem;
  font-weight: 700;
  cursor: pointer;
}
.l-footer__widgets .wp-block-search__button:hover { background: #8d2a18; }

/* 著作権表記の行 */
.l-footer__foot {
  padding: 20px 0 24px;
  border-top: 1px solid rgba(255, 255, 255, .1);
}
.c-copyright {
  margin: 0;
  font-size: .78rem;
  letter-spacing: .1em;
  color: #918a7d;
  text-align: center;
}

/* ページ先頭へ戻るボタン */
.c-fixBtn {
  border-radius: 4px;
  box-shadow: 0 2px 10px rgba(27, 26, 23, .16);
}

/* --------------------------------------------------------------------------
   9. スマートフォン
   -------------------------------------------------------------------------- */

@media screen and (max-width: 800px) {
  .p-entry { padding: 0; border-radius: 0; box-shadow: none; }
  .c-postContent { font-size: 1rem; line-height: 1.9; }
  .p-entry h2 { margin-block: 2.6em 1.2em; font-size: 1.25rem; }
  .p-entry h3 { margin-block: 2em 1em; font-size: 1.1rem; }
  .p-entry__thumb img { max-height: 220px; }
  :root { --ark-padding--cell: 10px 13px; }
  .c-postContent tbody td:first-child,
  .c-postContent tbody th:first-child { min-width: 5em; }
}

/* 画面が狭いと文節折り返しは行末の凹凸が大きくなるので、表も通常の折り返しに戻す */
@media screen and (max-width: 600px) {
  .c-postContent th,
  .c-postContent td { word-break: normal; }
}

/* ==== ここまで エンニチ デザイン v2 ============================== */
