/* WineKai archive edition. Load after parent and child CSS. */
.wk-arch-main.wk-arch-main,
.wk-arch-header.wk-arch-header,
.wk-arch-preview{
  --wk-wine:#5c1f27;
  --wk-wine-2:#8a3542;
  --wk-wine-ink:#3f141b;
  --wk-wine-tint:#f4ecee;
  --wk-cream:#f5efe4;
  --wk-paper:#fbf8f4;
  --wk-accent:#b9892c;
  --wk-accent-2:#d9bb78;
  --wk-text:#2a2224;
  --wk-text-2:#6b5a5e;
  --wk-line:#e6d9cd;
  --wk-line-strong:#c9b3a1;
  --wk-serif:"Times New Roman",Times,"Yu Mincho","游明朝","游明朝体",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro","MS PMincho",serif;
  color:var(--wk-text);
}

.wk-arch-main.wk-arch-main{background:var(--wk-paper);color:var(--wk-text)}
.wk-arch-main .l-contents{padding-top:56px;padding-bottom:72px}
/* Background images remain controlled by the parent theme; do not reset background-image. */
/* ★親テーマ動的CSS対策: 管理画面の色設定（#ff8000 等）が ::before オーバーレイと
   upper/lower の background に出力されるため、wk-arch-header スコープで中和する。
   詳細度 0,2,0+（.wk-arch-header 前置）で親の 0,1,0 に勝つ。背景画像（写真）は
   .p-page-header 本体に付くため維持、ただし ::before の色ベタは廃止。 */
.wk-arch-header.p-page-header::before{content:none;background:none}
/* 親テーマ標準の右側黒グラデ（::after rgba(0,0,0,.75)）を無効化。
   写真をクリアに見せ、文字視認性は白プレートで担保 */
.wk-arch-header.p-page-header::after{content:none}
.wk-arch-header.p-page-header{height:auto;min-height:280px;background-color:var(--wk-cream) !important;border-bottom:1px solid var(--wk-line-strong);color:var(--wk-wine)}
.wk-arch-header .p-page-header__inner{height:auto;min-height:280px}
.wk-arch-header .p-page-header__upper{height:auto;min-height:280px;padding:48px 40px;box-sizing:border-box;background:var(--wk-cream) !important;color:var(--wk-wine) !important;display:flex;flex-direction:column;justify-content:center}
.wk-arch-header .p-page-header__upper-title{position:relative;margin:0;padding:0 0 20px;border-bottom:2px solid var(--wk-wine);font-family:var(--wk-serif);font-size:clamp(30px,4.2vw,54px) !important;font-weight:400;line-height:1.15;letter-spacing:.1em;color:var(--wk-wine) !important;text-shadow:none;overflow-wrap:normal;word-break:keep-all;white-space:nowrap}
.wk-arch-header .p-page-header__upper-title::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--wk-accent)}
.wk-arch-header .p-page-header__upper-sub{margin:22px 0 0;font-size:13px;line-height:1.9;letter-spacing:.12em;color:var(--wk-wine) !important;text-shadow:none}
.wk-arch-header .p-page-header__lower{padding:40px;box-sizing:border-box;justify-content:center;background-size:cover;background-position:center}
/* lower 自体の背景画像は親が付けているが、ヘッダー本体と同じ写真が二重に敷かれるため廃止。
   本体の写真を生かし、文字は白プレートで視認性確保（absolute 中央配置は親のまま活かす） */
.wk-arch-header .p-page-header__lower-title{align-self:flex-start;margin:0;padding:10px 16px;background:rgba(251,248,244,.92);color:var(--wk-wine) !important;font-family:var(--wk-serif);font-size:22px;font-weight:500;line-height:1.7;text-shadow:none;max-width:100%;box-sizing:border-box}
.wk-arch-header .p-page-header__lower-desc{align-self:flex-start;margin:8px 0 0;padding:8px 16px;background:rgba(251,248,244,.92);color:var(--wk-text-2) !important;font-size:13px;line-height:2;text-shadow:none;max-width:100%;box-sizing:border-box}
.wk-arch-header .p-page-header__lower-title:empty,.wk-arch-header .p-page-header__lower-desc:empty{display:none}
.wk-arch-main .p-headline02,
.wk-arch-main .p-headline02{
  display:block;position:relative;margin:0 0 30px;padding:0 0 18px;
  border:0;border-bottom:1px solid var(--wk-line-strong);background:transparent;
}
.wk-arch-main .p-headline02::after,
.wk-arch-main .p-headline02::after{
  content:"";position:absolute;left:0;bottom:-2px;width:56px;height:3px;background:var(--wk-wine);
}
.wk-arch-main .p-headline02::before,
.wk-arch-main .p-headline02::before{
  content:"";position:absolute;left:0;bottom:-6px;width:56px;height:1px;background:var(--wk-accent-2);
}
/* Existing child mobile title uses !important; the override is restricted to these headings. */
.wk-arch-main .p-headline02__title,
.wk-arch-main .p-headline02__title{
  margin:0;color:var(--wk-wine);font-family:var(--wk-serif);
  font-size:clamp(1.65rem,3.4vw,2.35rem) !important;font-weight:400;line-height:1.25;letter-spacing:.14em;
}
.wk-arch-main .p-headline02__sub,
.wk-arch-main .p-headline02__sub{margin:10px 0 0;color:var(--wk-text-2);font-size:12px;line-height:1.8;letter-spacing:.12em}
/* Events: preserve theme visibility rules (.is-active) for calendar filtering. */
.wk-arch-main .p-event-list{gap:38px 28px;overflow:visible}
.wk-arch-main .p-article07{min-width:0;padding-bottom:20px;border-bottom:1px solid var(--wk-line)}
.wk-arch-main .p-article07 > a{display:block;position:relative;border-radius:3px;overflow:hidden;background:var(--wk-cream);box-shadow:none}
.wk-arch-main .p-article07__img{position:relative;border-radius:3px;overflow:hidden;background:var(--wk-cream)}
.wk-arch-main .p-article07__img::before{content:none;background:none}
.wk-arch-main .p-article07__img img{display:block;width:100%;height:auto;aspect-ratio:740/500;object-fit:cover}
/* Compact version of wk-eventhead's month / day / year-weekday medallion.
 * The opaque paper keeps every photo readable without a gradient or shadow.
 */
.wk-arch-main .p-article07__date.wk-arch-date{
  position:absolute;z-index:2;top:18px;left:16px;right:auto;bottom:auto;transform:none;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  box-sizing:border-box;width:112px;height:auto;min-height:116px;margin:0;padding:10px 8px;
  border:0;border-top:1px solid var(--wk-wine);border-bottom:1px solid var(--wk-wine);
  border-radius:0;background:var(--wk-paper);color:var(--wk-wine);
  font-family:var(--wk-serif);font-size:12px;font-weight:400;line-height:1;text-align:center;box-shadow:none;
}
.wk-arch-main .wk-arch-date::before,
.wk-arch-main .wk-arch-date::after{content:"";position:absolute;left:0;right:0;height:1px;background:var(--wk-accent-2)}
.wk-arch-main .wk-arch-date::before{top:3px}
.wk-arch-main .wk-arch-date::after{bottom:3px}
.wk-arch-main .wk-arch-date__month{display:block;color:var(--wk-wine-2);font-size:10px;letter-spacing:.14em;text-indent:.14em;text-transform:uppercase;line-height:1.4}
.wk-arch-main .wk-arch-date .p-date__day{display:block;margin:4px 0 6px;color:var(--wk-wine-ink);font-size:48px;font-weight:400;line-height:.95;letter-spacing:0;font-variant-numeric:tabular-nums}
.wk-arch-main .wk-arch-date__foot{display:flex;justify-content:center;gap:8px;color:var(--wk-text-2);font-size:10px;letter-spacing:.1em;text-transform:uppercase;line-height:1.4}
/* Includes custom dates returned by the original AJAX renderer, which are paragraphs. */
.wk-arch-main .p-article07__date.p-date__text{
  position:static;display:block;transform:none;width:auto;height:auto;max-width:none;
  margin:0;padding:10px 14px;border:0;border-top:1px solid var(--wk-line);border-radius:0;
  background:var(--wk-cream);color:var(--wk-wine);font-family:var(--wk-serif);font-size:13px;line-height:1.8;text-align:left;
}
.wk-arch-main .p-article07__cat{position:static;display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 0;padding:0}
.wk-arch-main .p-article07 .p-event-cat{
  display:inline-block;min-width:0;height:auto;padding:4px 12px;border:1px solid var(--wk-line-strong);
  border-radius:999px;background:transparent;color:var(--wk-wine);font-size:11px;font-weight:500;line-height:1.6;letter-spacing:.08em;
}
.wk-arch-main .p-article07 .p-event-cat:hover,
.wk-arch-main .p-article07 .p-event-cat:focus-visible{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine)}
.wk-arch-main .p-article07__title{margin:12px 0 0;color:var(--wk-text);font-family:var(--wk-serif);font-size:17px;font-weight:600;line-height:1.8;letter-spacing:.025em}
.wk-arch-main .p-article07__title a{color:inherit}
.wk-arch-main .p-article07__title a:hover{color:var(--wk-wine)}
.wk-arch-main .p-calendar{margin-bottom:28px;border-color:var(--wk-line);background:transparent}
.wk-arch-main .p-calendar__item{border-color:var(--wk-line);color:var(--wk-text-2)}
.wk-arch-main .p-calendar .js-calendar__item-btn{min-height:44px;border:1px solid var(--wk-line-strong);border-radius:2px;background:transparent;color:var(--wk-wine);font-family:var(--wk-serif);box-shadow:none}
.wk-arch-main .p-calendar .js-calendar__item-btn:hover,
.wk-arch-main .p-calendar .js-calendar__item-btn.is-active,
.wk-arch-main .p-calendar .is-active > .js-calendar__item-btn{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff}

.wk-arch-main .p-blog-list,.wk-arch-main .p-special-list,.wk-arch-main .p-recommended-special-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px;margin:0 0 48px}
.wk-arch-main .p-blog-list__item,.wk-arch-main .p-special-list__item,.wk-arch-main .p-recommended-special-list__item{width:auto;height:auto;min-width:0;margin:0;float:none;background:#fff;border-bottom:1px solid var(--wk-line)}
.wk-arch-main .p-article01__img,.wk-arch-main .p-article05__img,.wk-arch-main .p-article06__img{display:block;position:relative;height:auto;overflow:hidden}
.wk-arch-main .p-article01__img img,.wk-arch-main .p-article05__img img,.wk-arch-main .p-article06__img img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.wk-arch-main .p-article01__img::before,.wk-arch-main .p-article05__img::before,.wk-arch-main .p-article06__img::before{content:none;background:none}
.wk-arch-main .p-article01__content,.wk-arch-main .p-article05__content{position:static;inset:auto;transform:none;display:flex;flex-direction:column;width:auto;height:auto;padding:24px;background:#fff;color:var(--wk-text)}
.wk-arch-main .p-article01__title,.wk-arch-main .p-article05__title,.wk-arch-main .p-article06__title{position:static;inset:auto;transform:none;width:auto;height:auto;margin:0;padding:0;background:#fff;color:var(--wk-text);font-family:var(--wk-serif);font-size:21px;font-weight:600;line-height:1.8;text-align:left;text-shadow:none;overflow:visible}
.wk-arch-main .p-article06__title,.wk-arch-main .p-article06__title:last-child{padding:24px}
.wk-arch-main .p-article01__title a{color:inherit}
.wk-arch-main .p-article01__meta{position:static;order:-1;display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 12px;color:var(--wk-text-2);font-size:12px;line-height:1.8}
.wk-arch-main .p-article01__date{color:var(--wk-text-2);letter-spacing:.1em}
.wk-arch-main .p-article01__cat a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:4px}
.wk-arch-main .p-article05__excerpt{margin:12px 0 0;color:var(--wk-text-2);font-size:13px;line-height:2}
.wk-arch-main #blog_category_sort_wrap{margin:32px auto 0;max-width:1200px;background:transparent}
.wk-arch-main #blog_category_sort .item a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:auto;min-height:44px;padding:10px 16px;border:1px solid var(--wk-line-strong);border-radius:999px;background:transparent;color:var(--wk-wine);font-size:12px;line-height:1.8}
.wk-arch-main #blog_category_sort .item a p{margin:0;color:inherit}
.wk-arch-main #blog_category_sort .active_category a,.wk-arch-main #blog_category_sort .item a:hover{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine)}
.wk-arch-main .swiper-nav-button{background:var(--wk-paper);color:var(--wk-wine);border-color:var(--wk-line)}
.wk-arch-main .p-pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:44px 0 0;padding:0;list-style:none}
.wk-arch-main .p-pager__item{margin:0}
.wk-arch-main .p-pager__item a,.wk-arch-main .p-pager__item span{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--wk-line-strong);background:transparent;color:var(--wk-wine)}
.wk-arch-main .p-pager__item .current,.wk-arch-main .p-pager__item a:hover{background:var(--wk-wine);color:#fff;border-color:var(--wk-wine)}
.wk-arch-main .p-upcoming-event__link a{color:var(--wk-wine);text-underline-offset:5px}
.wk-arch-main a:focus-visible,.wk-arch-main button:focus-visible{outline:2px solid var(--wk-wine-2);outline-offset:4px}
@media(max-width:767px){
.wk-arch-header .p-page-header__inner{display:block}
.wk-arch-header .p-page-header__upper,.wk-arch-header .p-page-header__lower{width:100%;min-height:0;padding:32px 24px}
.wk-arch-header .p-page-header__lower-title{font-size:20px}
.wk-arch-main .l-contents{padding-top:32px;padding-bottom:48px}
.wk-arch-main .p-blog-list,.wk-arch-main .p-special-list,.wk-arch-main .p-recommended-special-list{grid-template-columns:1fr;gap:28px}
.wk-arch-main .p-article01__content,.wk-arch-main .p-article05__content,.wk-arch-main .p-article06__title:last-child{padding:20px}
.wk-arch-main .p-article01__title,.wk-arch-main .p-article05__title,.wk-arch-main .p-article06__title{font-size:19px}
}
@media(prefers-reduced-motion:reduce){
.wk-arch-main a,.wk-arch-main img,.wk-arch-main button{transition:none !important;animation:none !important}
}

/* =========================================================================
   ガイド詳細本文（.wk-guide-body スコープ — /guide/<slug>/ 10ページ共通）
   page-no-side.php（子テーマ版）がガイドハブ配下の固定ページに付与する。
   entry.css の「h2 左太線（::before）」を打ち消し、イベント詳細と同一の
   「二重罫 + 明朝」デザイン言語に刷新する。
   ========================================================================= */

.wk-guide-page .p-entry{margin-top:40px}

/* ── 見出し: entry.css の左太線を無効化 → 二重罫へ ─────────────────────── */
.wk-guide-body > h2{
	position:relative;
	margin:2.6em 0 1em;
	padding:0 0 12px;
	border-bottom:2px solid var(--wk-wine);
	font-family:var(--wk-serif);
	font-size:1.5rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:.02em;
	color:var(--wk-wine);
}
.wk-guide-body > h2::before{content:none}
.wk-guide-body > h2::after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:-6px;
	height:1px;
	background:var(--wk-accent);
}
.wk-guide-body > h2:first-child{margin-top:0}

.wk-guide-body > h3{
	margin:2em 0 .8em;
	padding:0 0 0 12px;
	border-left:3px solid var(--wk-wine);
	font-size:1.125rem;
	font-weight:600;
	line-height:1.5;
	letter-spacing:.01em;
	color:var(--wk-wine-2);
}
.wk-guide-body > h3::before,
.wk-guide-body > h3::after{content:none}

.wk-guide-body > h4{
	margin:1.8em 0 .6em;
	font-size:1.05rem;
	font-weight:600;
	color:var(--wk-text);
}

/* ── 本文 ─────────────────────────────────────────────────────────────── */
.wk-guide-body p{color:var(--wk-text);line-height:1.95;margin:0 0 1.2em}
.wk-guide-body > * + *{margin-top:1.2em}

/* em 強調（マナーの不安の引用等）: 薄染めプレートで静かに強調 */
.wk-guide-body p em{
	font-style:normal;
	background:linear-gradient(transparent 62%, var(--wk-wine-tint) 62%);
	color:var(--wk-wine);
	font-weight:500;
}

/* リスト: 生成りカード + ワイン左罫線（イベント詳細の推しポイントと同系） */
.wk-guide-body ul{
	list-style:none;
	padding:16px 20px;
	margin:1.4em 0;
	background:var(--wk-cream);
	border-left:2px solid var(--wk-wine);
	border-radius:4px;
}
.wk-guide-body ul li{
	position:relative;
	padding:8px 0 8px 1.6em;
	border-bottom:1px solid var(--wk-line);
	line-height:1.85;
	color:var(--wk-text);
}
.wk-guide-body ul li:last-child{border-bottom:0}
.wk-guide-body ul li::before{
	content:"🍷";
	position:absolute;
	left:0;
	font-size:.95em;
}

/* 引用: 薄染め紙 + 大きな引用符（wk-event__quote と同系） */
.wk-guide-body blockquote{
	margin:1.6em 0;
	padding:16px 20px 16px 44px;
	background:var(--wk-wine-tint);
	border-left:2px solid var(--wk-wine);
	border-radius:4px;
	position:relative;
	color:var(--wk-text);
}
.wk-guide-body blockquote::before{
	content:"\201C";
	position:absolute;
	left:12px;
	top:4px;
	font-size:2.2em;
	line-height:1;
	color:var(--wk-wine);
	font-weight:700;
}

/* 表: 罫線トーン統一（ガイドには table が無いが将来対応） */
.wk-guide-body table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.95em}
.wk-guide-body th{background:var(--wk-wine);color:#fff;padding:10px 14px;text-align:left;font-weight:600}
.wk-guide-body td{padding:10px 12px;border-bottom:1px solid var(--wk-line);color:var(--wk-text)}

/* a: ワイン色アンダーライン */
.wk-guide-body a{color:var(--wk-wine-2);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.wk-guide-body a:hover{color:var(--wk-wine)}

/* ページャー・wp リンク */
.wk-guide-body .p-page-links{margin-top:2em}

/* ── モバイル ─────────────────────────────────────────────────────────── */
@media (max-width:767px){
	.wk-guide-body > h2{font-size:1.25rem;margin:2.2em 0 .9em;padding-bottom:10px}
	.wk-guide-body ul{padding:12px 16px}
}

/* ガイド詳細: アイキャッチ画像はヘッダー写真と重複するため非表示
   （page-no-side.php の p-entry__img は show_thumbnail オプションで出力される） */
.wk-guide-page .p-entry__img{display:none}

/* TCD Custom Editor（tcdce）が --tcdce-h2-text-align:center を出力するため、
   ガイド本文の見出しは !important で左寄せに固定する */
.wk-guide-body > h2{text-align:left !important}
.wk-guide-body > h3{text-align:left !important}

/* ── モバイル（≤991px）ヘッダー修正 ──────────────────────────────────────
   親テーマはモバイルで .p-page-header 本体の写真を捨て（background-image:none!important）、
   __lower を 360px の写真パネルに切り替える。ただし __lower::before に黒グラデ
   （rgba(0,0,0,.75)）を重ねるため「灰色一色」に見えていた。
   → グラデを無効化して写真をクリアに見せ、文字は白プレートで視認性担保。
   ※ デスクトップ側で付与した __lower の background-image:none はモバイルで解除
     （モバイルでは __lower が唯一の写真担体になるため）。 */
@media screen and (max-width:991px){
  .wk-arch-header .p-page-header__lower::before{content:none}
}

/* =========================================================================
   都道府県アーカイブ /event/prefecture/{slug}/（.wk-arch-pref スコープ）
   taxonomy-prefecture.php 用。カードは p-article07 流用のため既存スタイルを共有。
   ========================================================================= */

/* 47県ナビチップ（上部・下部共通） */
.wk-arch-pref{margin:0 0 28px;padding:0}
.wk-arch-pref__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.wk-arch-pref__item{margin:0}
.wk-arch-pref__chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;border:1px solid var(--wk-line-strong);border-radius:999px;
  background:transparent;color:var(--wk-wine);
  font-size:12px;font-weight:500;line-height:1.6;letter-spacing:.06em;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease;
}
.wk-arch-pref__chip:hover,.wk-arch-pref__chip:focus-visible{background:var(--wk-wine-tint);border-color:var(--wk-wine);color:var(--wk-wine)}
.wk-arch-pref__chip.is-current{background:var(--wk-wine);border-color:var(--wk-wine);color:#fff}
.wk-arch-pref__chip.is-current:hover{background:var(--wk-wine-2);color:#fff}
.wk-arch-pref__count{display:inline-block;min-width:1.8em;padding:0 6px;border-radius:999px;background:rgba(0,0,0,.06);color:inherit;font-size:10px;line-height:1.8;text-align:center;vertical-align:baseline}
.wk-arch-pref__chip.is-current .wk-arch-pref__count{background:rgba(255,255,255,.2)}
.wk-arch-pref--bottom{margin:40px 0 0}

/* 導入文 */
.wk-arch-pref__intro{margin:0 0 28px;color:var(--wk-text-2);font-size:14px;line-height:2}

/* 0件の県アーカイブ */
.wk-arch-pref__empty{
  margin:0;padding:48px 24px;border:1px solid var(--wk-line);border-radius:4px;
  background:var(--wk-cream);color:var(--wk-text-2);font-size:14px;line-height:2;text-align:center;
}
.wk-arch-pref__empty a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:4px}

/* 都道府県チップ（カード・詳細ページの分類チップ部に追加される p-event-cat の派生）。
   .wk-arch-pref-chip を付けて event_tag チップと並列に並べる。
   親テーマの .p-event-cat--{term_id} 色指定に依存しないため、明示的なスタイルを与える */
.wk-arch-main .p-article07 .p-event-cat--pref,
.p-entry__header02-title_upper .p-event-cat--pref,
.p-slider__cat .p-event-cat--pref{
  border-color:var(--wk-wine);
  background:var(--wk-wine-tint);
  color:var(--wk-wine);
}
.p-entry__header02-title_upper .p-event-cat--pref:hover,
.p-slider__cat .p-event-cat--pref:hover{
  background:var(--wk-wine);
  color:#fff;
}

@media(max-width:767px){
  .wk-arch-pref__list{gap:6px}
  .wk-arch-pref__chip{padding:4px 10px;font-size:11px}
  .wk-arch-pref__intro{font-size:13px}
}

/* 都道府県アーカイブ: 要約・データ・地域の特徴・FAQ・出典（.wk-arch-pref-guide）
   taxonomy-prefecture.php の1ページ目のみ出力。 */
.wk-arch-pref__summary{margin:-12px 0 28px;color:var(--wk-text-2);font-size:13px;line-height:1.9}
.wk-arch-pref-guide{margin:48px 0 0}
.wk-arch-pref-guide__section{margin:0 0 40px}
.wk-arch-pref-guide__title{margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--wk-line-strong);color:var(--wk-wine);font-size:18px;font-weight:600;line-height:1.6;text-align:left}
.wk-arch-pref-guide__subtitle{margin:24px 0 10px;font-size:15px;font-weight:600;line-height:1.6}
.wk-arch-pref-guide p{margin:0 0 14px;color:var(--wk-text-2);font-size:14px;line-height:2}
.wk-arch-pref-guide__table{width:100%;margin:0 0 8px;border-collapse:collapse;font-size:14px;line-height:1.8}
.wk-arch-pref-guide__table caption{margin:0 0 8px;color:var(--wk-text-2);font-size:12px;text-align:left}
.wk-arch-pref-guide__table th,.wk-arch-pref-guide__table td{padding:10px 14px;border:1px solid var(--wk-line);text-align:left;vertical-align:top}
.wk-arch-pref-guide__table th{width:40%;background:var(--wk-cream);font-weight:500}
.wk-arch-pref-guide__stats{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 0 8px;padding:0;list-style:none;font-size:14px;line-height:1.9}
.wk-arch-pref-guide__stats a,.wk-arch-pref-guide__sources a,.wk-arch-pref-faq__quote a{color:var(--wk-wine);text-decoration:underline;text-underline-offset:4px}
.wk-arch-pref-guide .wk-arch-pref-guide__note{margin-top:12px;font-size:12px;line-height:1.8}
.wk-arch-pref-faq__item{padding:18px 0;border-bottom:1px solid var(--wk-line)}
.wk-arch-pref-faq__item:first-of-type{padding-top:4px}
.wk-arch-pref-faq__q{margin:0 0 8px;font-size:15px;font-weight:600;line-height:1.7}
.wk-arch-pref-faq__a p:last-child{margin-bottom:0}
.wk-arch-pref-faq__a q{quotes:"「" "」"}
.wk-arch-pref-faq__quote{margin:0 0 14px;padding:12px 16px;border-left:3px solid var(--wk-wine);background:var(--wk-cream)}
.wk-arch-pref-guide .wk-arch-pref-faq__quote p{margin:0 0 6px;color:inherit}
.wk-arch-pref-faq__quote footer{font-size:12px;line-height:1.8}
.wk-arch-pref-faq__quote cite{font-style:normal}
.wk-arch-pref-guide__sources{margin:0;padding-left:1.4em;font-size:13px;line-height:2}

@media(max-width:767px){
  .wk-arch-pref-guide__title{font-size:16px}
  .wk-arch-pref-guide p,.wk-arch-pref-guide__table,.wk-arch-pref-guide__stats{font-size:13px}
  .wk-arch-pref-guide__table th,.wk-arch-pref-guide__table td{padding:8px 10px}
}

/* 季節特集の追加案内。既存宣言を変更せず、新規 wk-feat 名前空間へ限定。 */
/* 長い日本語主題の折返しだけを特集 h1 に適用。他ページの見出しは対象外。 */
.wk-arch-special .wk-arch-header .p-page-header__upper-title {
  white-space:normal; word-break:normal; overflow-wrap:anywhere;
  font-size:clamp(26px,3.3vw,44px) !important; line-height:1.55; letter-spacing:.035em;
}
.wk-feat-guide.wk-feat-guide {
  box-sizing:border-box; width:100%; max-width:1040px; min-width:0;
  margin:var(--wk-section) auto 0; padding:clamp(24px,4vw,56px);
  background:var(--wk-cream); border:1px solid var(--wk-line); border-radius:var(--wk-radius);
  color:var(--wk-ink); font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  line-height:1.95; overflow-wrap:anywhere;
}
.wk-feat-guide.wk-feat-guide h2 {
  margin:2.5em 0 1em; padding:0 0 .6em; border:0; border-bottom:1px solid var(--wk-line);
  background:transparent; color:var(--wk-ink);
  font-family:var(--wk-serif,"Yu Mincho", "Hiragino Mincho ProN",serif);
  font-size:clamp(22px,2.3vw,30px); font-weight:600; line-height:1.6; letter-spacing:.025em;
}
.wk-feat-guide.wk-feat-guide > h2:first-child {margin-top:0}
.wk-feat-guide.wk-feat-guide h3 {
  margin:1.5em 0 .65em; padding:0; border:0; background:transparent;
  font-size:1.12em; font-weight:700; line-height:1.7; color:var(--wk-ink);
}
.wk-feat-guide.wk-feat-guide p {margin:.8em 0 1.2em}
.wk-feat-guide.wk-feat-guide ul {margin:1em 0; padding-left:1.5em; list-style:disc}
.wk-feat-guide.wk-feat-guide li {margin:.5em 0}
.wk-feat-guide.wk-feat-guide a {color:var(--wk-wine); text-decoration:underline; text-underline-offset:.22em}
.wk-feat-guide.wk-feat-guide a:hover {text-decoration-thickness:2px}
.wk-feat-guide.wk-feat-guide :focus-visible {outline:3px solid var(--wk-wine);outline-offset:4px}
.wk-feat-guide.wk-feat-guide [id] {scroll-margin-top:calc(var(--wk-header-h) + 24px)}
.wk-feat-guide .wk-feat-points {
  padding:20px 28px; background:var(--wk-wine-soft); border-left:4px solid var(--wk-wine);
  border-radius:0 var(--wk-radius-sm) var(--wk-radius-sm) 0;
}
.wk-feat-guide .wk-feat-points h3 {margin-top:0}
.wk-feat-guide .wk-feat-toc {margin:24px 0; padding:18px 0; border-block:1px solid var(--wk-line); line-height:2.5}
.wk-feat-guide .wk-feat-toc a {display:inline-block; padding:4px 6px; min-height:36px}
.wk-feat-guide .wk-feat-stats {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0}
.wk-feat-guide .wk-feat-stats p {margin:0; padding:20px; background:var(--wk-wine-soft); border-radius:var(--wk-radius-sm); font-size:.9em}
.wk-feat-guide .wk-feat-stats strong {display:block; margin-top:8px; font-size:1.65em; font-variant-numeric:tabular-nums; line-height:1.5; color:var(--wk-wine-dark)}
.wk-feat-guide figure.wk-feat-figure {margin:28px 0 32px; padding:16px; background:var(--wk-wine-soft); border:1px solid var(--wk-line); border-radius:var(--wk-radius)}
.wk-feat-guide .wk-feat-figure img {display:block; width:100%; max-width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; margin:0; border-radius:var(--wk-radius-sm)}
.wk-feat-guide .wk-feat-figure figcaption {margin:14px 4px 4px; color:var(--wk-ink); font-size:.9em; line-height:1.8; text-align:left}
.wk-feat-guide .wk-feat-table {max-width:100%; overflow-x:auto; margin:24px 0; border:1px solid var(--wk-line); border-radius:var(--wk-radius-sm)}
.wk-feat-guide .wk-feat-table table {width:100%; margin:0; border:0; border-collapse:collapse; font-size:.95em; line-height:1.85}
.wk-feat-guide .wk-feat-table caption {padding:14px 18px; font-weight:700; text-align:left; background:var(--wk-wine-soft)}
.wk-feat-guide .wk-feat-table th,.wk-feat-guide .wk-feat-table td {padding:16px 20px; border:0; border-bottom:1px solid var(--wk-line); vertical-align:top; text-align:left; color:var(--wk-ink)}
.wk-feat-guide .wk-feat-table thead th {background:var(--wk-wine-soft)}
.wk-feat-guide .wk-feat-table th[scope="row"] {width:28%; font-weight:600}
.wk-feat-guide .wk-feat-faq > section {padding:8px 0 16px; border-bottom:1px solid var(--wk-line)}
.wk-feat-guide.wk-feat-guide blockquote {margin:24px 0; padding:20px 28px; border:0; border-left:4px solid var(--wk-wine); background:var(--wk-wine-soft); box-shadow:none; font-style:normal}
.wk-feat-guide.wk-feat-guide blockquote::before,.wk-feat-guide.wk-feat-guide blockquote::after {content:none}
.wk-feat-guide blockquote footer,.wk-feat-guide .wk-feat-sources {font-size:.9em; line-height:1.9}
.wk-feat-guide .wk-feat-sources a {overflow-wrap:anywhere}
.wk-feat-guide ul.wk-feat-regions {display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; padding:0; list-style:none}
.wk-feat-guide .wk-feat-regions a {display:block; padding:8px 4px; text-align:center; min-height:28px}
.wk-feat-guide .wk-feat-links a {display:inline-block; padding:5px 0}
@media (max-width:767px) {
  .wk-feat-guide.wk-feat-guide {margin-top:40px; padding:22px 18px; border-radius:var(--wk-radius-sm); line-height:1.95}
  .wk-feat-guide.wk-feat-guide h2 {margin-top:2em; font-size:23px}
  .wk-feat-guide .wk-feat-points {padding:16px 18px}
  .wk-feat-guide .wk-feat-stats {grid-template-columns:1fr; gap:10px}
  .wk-feat-guide .wk-feat-stats p {padding:14px 18px}
  .wk-feat-guide .wk-feat-stats strong {font-size:1.45em}
  .wk-feat-guide figure.wk-feat-figure {padding:8px; margin:22px 0}
  .wk-feat-guide .wk-feat-table th,.wk-feat-guide .wk-feat-table td {padding:12px 10px}
  .wk-feat-guide .wk-feat-table th[scope="row"] {width:32%}
  .wk-feat-guide ul.wk-feat-regions {grid-template-columns:repeat(3,minmax(0,1fr))}
  .wk-feat-guide.wk-feat-guide blockquote {padding:16px 18px}
}
@media print {
  .wk-feat-guide.wk-feat-guide {max-width:none; margin:24px 0; padding:16px; background:transparent}
  .wk-feat-guide .wk-feat-faq > section,.wk-feat-guide figure.wk-feat-figure {break-inside:avoid}
}

/* 融合記事：既存装飾のクラス移行 */
.wk-fused-article .wk-fuse-style-00d6d72fa0 {border-left:3px solid #c0392b;padding-left:12px;margin:1.8em 0 0.8em;font-size:1.15em;line-height:1.5;}
.wk-fused-article .wk-fuse-style-2093ead426 {border-bottom:1px solid #f0e0e2;}
.wk-fused-article .wk-fuse-style-25a98a3a6a {margin-top: 0;}
.wk-fused-article .wk-fuse-style-40a1a700e0 {padding:10px 12px;}
.wk-fused-article .wk-fuse-style-4fd071677b {max-width: 100%; height: auto;}
.wk-fused-article .wk-fuse-style-556906deb4 {clear: both;}
.wk-fused-article .wk-fuse-style-613b3a43db {background-color: #f9f9f9; padding: 20px; border-radius: 8px; border: 1px solid #eee;}
.wk-fused-article .wk-fuse-style-7b9cc0a106 {margin:2em 0;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.12);}
.wk-fused-article .wk-fuse-style-8d1c4353eb {float: left; margin: 0 20px 20px 0;}
.wk-fused-article .wk-fuse-style-ae416abac8 {color:#7b1e3a;font-weight:600;border-bottom:2px solid #e8c4c9;}
.wk-fused-article .wk-fuse-style-b7f92b2d17 {border-collapse:collapse;width:100%;font-size:0.95em;}
.wk-fused-article .wk-fuse-style-c071ac34ac {border-left:5px solid #7b1e3a;background:linear-gradient(90deg,#fdf6f7,#fff);padding:12px 16px;margin:2.2em 0 1em;font-size:1.45em;line-height:1.5;border-radius:0 8px 8px 0;}
.wk-fused-article .wk-fuse-style-d154338adb {overflow-x:auto;margin:1.5em 0;border:1px solid #f0e0e2;border-radius:10px;}
.wk-fused-article .wk-fuse-style-e09e75eeb0 {float: right; margin: 0 0 20px 20px;}
.wk-fused-article .wk-fuse-style-eec6a974d7 {background:#fdf6f7;border:1px solid #f0d9dd;border-radius:10px;padding:14px 18px;margin:1.2em 0;font-size:0.92em;color:#5c1626;}
.wk-fused-article .wk-fuse-style-fb5ec070f2 {text-align: center;}
/* 融合記事専用。既存アーカイブとトークンを継承する。 */
.wk-fused-article { color: var(--wk-ink); line-height: 1.95; overflow-wrap: anywhere; }
.wk-fused-article h2 { border-left: 5px solid var(--wk-wine); background: linear-gradient(90deg,var(--wk-wine-soft),transparent); padding: .8em 1em; margin: 2.5em 0 1.2em; font-size: clamp(1.2rem,2.5vw,1.55rem); line-height: 1.55; border-radius: 0 var(--wk-radius-sm) var(--wk-radius-sm) 0; scroll-margin-top: calc(var(--wk-header-h) + 24px); }
.wk-fused-article h3 { border-left: 3px solid var(--wk-wine); padding-left: .8em; margin: 1.8em 0 .8em; font-size: 1.12em; line-height: 1.65; }
.wk-fused-article p { margin-block: 1.1em; }
.wk-fused-article a { text-underline-offset: .2em; }
.wk-fused-article a:focus-visible,.wk-fused-article [tabindex]:focus-visible { outline: 3px solid var(--wk-wine); outline-offset: 4px; }
.wk-fused-article .wk-fuse-points { padding: 1.2em 1.5em; background: var(--wk-wine-soft); border-top: 3px solid var(--wk-wine); border-radius: var(--wk-radius); margin: 1.5em 0; }
.wk-fuse-points > p,.wk-fuse-toc > p { font-weight: 700; color: var(--wk-wine-dark); }
.wk-fused-article .wk-fuse-toc { padding: 1em 1.5em; background: var(--wk-cream); border: 1px solid var(--wk-line); border-radius: var(--wk-radius); }
.wk-fuse-toc ol { padding-left: 1.5em; columns: 2; column-gap: 2.5em; }
.wk-fuse-toc li { break-inside: avoid; padding-block: .3em; }
.wk-fused-article figure { margin: 1.7em 0; }
.wk-fused-article img { max-width: 100%; height: auto; border-radius: var(--wk-radius); }
.wk-fused-article .wk-fuse-figure { padding: .75em; border: 1px solid var(--wk-line); border-radius: var(--wk-radius); background: var(--wk-cream); }
.wk-fused-article figcaption { padding: .7em .4em .2em; color: var(--wk-muted); font-size: .88em; line-height: 1.7; }
.wk-fuse-table { overflow-x: auto; margin: 1.4em 0 2em; border: 1px solid var(--wk-line); border-radius: var(--wk-radius); }
.wk-fuse-table table { width: 100%; border-collapse: collapse; margin: 0; min-width: 32rem; font-size: .95em; }
.wk-fuse-table caption { text-align: left; font-weight: 700; padding: 1em; color: var(--wk-wine-dark); background: var(--wk-cream); }
.wk-fuse-table th,.wk-fuse-table td { padding: 1em 1.1em; text-align: left; vertical-align: top; border-bottom: 1px solid var(--wk-line); }
.wk-fuse-table thead th { background: var(--wk-wine); color: white; }
.wk-fuse-table tbody th { width: 28%; background: var(--wk-cream); }
.wk-fuse-table tbody tr:last-child > * { border-bottom: 0; }
.wk-fuse-faq > section { padding: .5em 1.4em 1em; margin-block: 1em; border: 1px solid var(--wk-line); border-radius: var(--wk-radius); }
.wk-fuse-faq h3 { color: var(--wk-wine-dark); border: 0; padding: 0; margin-top: 1em; }
.wk-fused-article blockquote { border-left: 3px solid var(--wk-wine); padding: 1em 1.5em; margin: 1.5em 0; background: var(--wk-cream); }
.wk-fuse-related { margin-block: 2em; padding: .5em 1.4em 1.4em; background: var(--wk-cream); border-radius: var(--wk-radius); }
.wk-fused-article .wk-feat-links,.wk-fused-article .wk-feat-sources { padding-left: 1.4em; }
@media (max-width: 600px) { .wk-fuse-toc ol { columns: 1; } .wk-fused-article { font-size: 1rem; } .wk-fused-article .wk-fuse-points,.wk-fused-article .wk-fuse-toc,.wk-fuse-faq > section { padding-inline: 1em; } }
@media print { .wk-fused-article .wk-fuse-table { overflow: visible; } .wk-fuse-table table { min-width: 0; } .wk-fuse-toc { display: none; } }
