/*
Theme Name: 夜想堂 Child
Theme URI: https://yasou-do.com/
Description: Twenty Twenty-Five の子テーマ。夜想堂のデザイン土台（配色・ロゴ・ヘッダー・フッター・基本タイポ）を定義する。ショートコード部品は functions.php に段階的に追加。
Author: 夜想堂
Template: twentytwentyfive
Version: 0.3.60
Text Domain: yasoudo-child
*/

/* 手書きフォント（特集の手書きPOP用）。@importはCSS仕様上ファイル先頭に置く必要がある */
@import url('https://fonts.googleapis.com/css2?family=Yusei+Magic&display=swap');

/* ========================================
   夜想堂 デザイントークン（モック準拠）
   ======================================== */
:root{
  --yasoudo-ink: #1a1a1a;       /* 基調の黒 */
  --yasoudo-paper: #f4f1ea;     /* 生成りの紙 */
  --yasoudo-pop: #ffe600;       /* ポップな黄 */
  --yasoudo-pop-line: #ff4d4d;  /* 差し色の赤（ハイライト） */
  --yasoudo-accent: #c8102e;    /* CTA・強調の赤 */
  --yasoudo-card: #ffffff;      /* カード白 */
  --yasoudo-muted: #777777;     /* 補助テキスト */
  --yasoudo-navy: #2b3a55;      /* 女優データ用の紺 */
}

/* ========================================
   ベース
   ======================================== */
body{
  background: var(--yasoudo-paper);
  color: var(--yasoudo-ink);
  font-family: "Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Meiryo",sans-serif;
  line-height: 1.85;
  -webkit-font-smoothing: antialiased;
}

a{ color: var(--yasoudo-accent); }

/* ========================================
   サイトヘッダー（黒地・黄ボーダー・ロゴ）
   ======================================== */
.yasoudo-header{
  background: var(--yasoudo-ink);
  color: #fff;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 3px solid var(--yasoudo-pop);
  position: sticky;
  top: 0;
  z-index: 50;
}
.yasoudo-logo{
  font-weight: 900;
  font-size: 1.5rem;
  letter-spacing: 2px;
  font-style: italic;
  color: #fff;
  text-decoration: none;
  line-height: 1.1;
}
.yasoudo-logo span{ color: var(--yasoudo-pop); }
.yasoudo-logo small{
  display: block;
  font-size: .55rem;
  letter-spacing: 3px;
  font-style: normal;
  color: #aaa;
  margin-top: 2px;
  font-weight: 400;
}

/* ========================================
   サイトフッター（黒地・年齢確認・ロゴ・表記）
   ======================================== */
.yasoudo-footer{
  background: var(--yasoudo-ink);
  color: #aaa;
  padding: 30px 20px;
  font-size: .72rem;
  text-align: center;
  line-height: 2;
}
.yasoudo-footer .yasoudo-age{
  border: 1px solid #555;
  border-radius: 6px;
  padding: 10px;
  margin: 0 auto 16px;
  max-width: 640px;
  color: #ccc;
}
.yasoudo-footer .yasoudo-logo-f{
  font-weight: 900;
  font-style: italic;
  color: #fff;
  font-size: 1.1rem;
  letter-spacing: 2px;
  margin-bottom: 8px;
}
.yasoudo-footer .yasoudo-logo-f span{ color: var(--yasoudo-pop); }
.yasoudo-footer nav{ margin: 12px 0; }
.yasoudo-footer nav a{
  color: #bbb;
  text-decoration: none;
  margin: 0 10px;
  font-size: .72rem;
}
.yasoudo-footer nav a:hover{ color: var(--yasoudo-pop); }

/* ========================================
   親テーマ（Twenty Twenty-Five）のヘッダーを夜想堂仕様に
   ヘッダーのテンプレートパーツ＝<header> 要素を狙う。
   クラス名の細部に依存しないよう header 要素ベースで当てる。
   ======================================== */
header.wp-block-template-part,
.wp-site-blocks > header,
body .wp-site-blocks header.wp-block-template-part{
  background: var(--yasoudo-ink) !important;
  border-bottom: 3px solid var(--yasoudo-pop) !important;
}
/* ヘッダー内の文字・リンクを白に */
header.wp-block-template-part a,
header.wp-block-template-part .wp-block-site-title a,
header.wp-block-template-part .wp-block-site-title,
header.wp-block-template-part .wp-block-navigation,
header.wp-block-template-part .wp-block-navigation a,
.wp-site-blocks > header a{
  color: #fff !important;
}
/* サイトタイトル（夜想堂）を太く・斜体に。「堂」だけ黄色にはできないが、全体を夜想堂トーンに */
header.wp-block-template-part .wp-block-site-title a{
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: 2px;
  font-size: 1.5rem !important;
}
/* ヘッダーのナビにホバーで黄色 */
header.wp-block-template-part .wp-block-navigation a:hover{
  color: var(--yasoudo-pop) !important;
}
/* ヘッダー内側の余白を少し確保 */
header.wp-block-template-part{
  padding-top: 14px;
  padding-bottom: 14px;
}

/* ========================================
   親テーマのフッターを夜想堂仕様に（黒地）
   ======================================== */
footer.wp-block-template-part,
.wp-site-blocks > footer,
body .wp-site-blocks footer.wp-block-template-part{
  background: var(--yasoudo-ink) !important;
  border-top: 3px solid var(--yasoudo-pop) !important;
  color: #aaa !important;
}
footer.wp-block-template-part a,
footer.wp-block-template-part .wp-block-site-title,
footer.wp-block-template-part .wp-block-site-title a{
  color: #fff !important;
}
footer.wp-block-template-part a:hover{
  color: var(--yasoudo-pop) !important;
}

/* ========================================
   見出し・本文の基本トーン
   ======================================== */
.entry-content h2{
  font-weight: 900;
  border-left: 6px solid var(--yasoudo-accent);
  padding-left: 12px;
  margin: 1.6em 0 .8em;
}
.entry-content h3{
  font-weight: 900;
  margin: 1.4em 0 .6em;
}
.entry-content .yasoudo-mark{
  background: linear-gradient(transparent 60%, var(--yasoudo-pop) 60%);
  font-weight: 700;
}

/* =====================================================================
   STEP3: 記事用ショートコード部品のスタイル（モック準拠）
   ===================================================================== */

/* 1. リード（黄色POPボックス） */
.yasou-lead{
  margin: 24px 0;
  background: var(--yasoudo-pop);
  border: 3px solid var(--yasoudo-ink);
  padding: 22px;
  box-shadow: 6px 6px 0 var(--yasoudo-ink);
  font-weight: 700;
  font-size: 1.02rem;
  color: var(--yasoudo-ink);
}
.yasou-lead-big{
  font-size: 1.18rem;
  font-weight: 900;
  display: inline;
  background: linear-gradient(transparent 60%, var(--yasoudo-pop-line) 60%);
}

/* 2. レーダーチャート */
.yasou-radar-box{
  display: flex;
  justify-content: center;
  margin: 18px 0;
}

/* 3. 星評価 */
.yasou-stars{
  background: #fff;
  border: 2px solid var(--yasoudo-ink);
  border-radius: 8px;
  padding: 18px;
  margin: 10px 0;
}
.yasou-stars-row{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 9px 0;
  border-bottom: 1px dashed #ddd;
  font-size: .9rem;
  font-weight: 700;
}
.yasou-stars-row:last-of-type{ border-bottom: none; }
.yasou-star{ color: var(--yasoudo-pop-line); letter-spacing: 1px; font-size: 1rem; white-space: nowrap; }
.yasou-star .off{ color: #ddd; }
.yasou-stars-total{
  margin-top: 14px;
  background: var(--yasoudo-pop);
  border: 2px solid var(--yasoudo-ink);
  text-align: center;
  font-weight: 900;
  font-size: 1.1rem;
  padding: 12px;
  border-radius: 6px;
}

/* 4. 女優データ */
.yasou-actress{
  background: #fff;
  border: 2px solid var(--yasoudo-navy);
  border-radius: 8px;
  padding: 20px 18px;
  margin: 18px 0;
}
.yasou-actress-top{
  padding-bottom: 16px;
  border-bottom: 2px solid #eee;
  margin-bottom: 14px;
}
.yasou-actress-name{ font-size: 1.15rem; font-weight: 900; }
.yasou-actress-name small{ display: block; font-size: .7rem; color: var(--yasoudo-muted); font-weight: 700; margin-top: 3px; }
.yasou-actress-tags{ margin-top: 8px; display: flex; gap: 6px; flex-wrap: wrap; }
.yasou-actress-tags span{ background: #eef1f6; color: var(--yasoudo-navy); font-size: .68rem; font-weight: 700; padding: 3px 9px; border-radius: 20px; }
.yasou-actress-note{ font-size: .82rem; color: #555; font-weight: 700; margin-bottom: 14px; line-height: 1.7; }
.yasou-actress-note .label{ font-size: .66rem; color: var(--yasoudo-navy); font-weight: 900; display: block; margin-bottom: 5px; letter-spacing: 1px; }
.yasou-bar > div{ margin-bottom: 11px; }
.yasou-bar-row{ display: flex; justify-content: space-between; font-size: .85rem; font-weight: 700; margin-bottom: 4px; }
.yasou-bar-row .num{ color: var(--yasoudo-accent); }
.yasou-bar-track{ height: 9px; background: #eef1f6; border-radius: 6px; overflow: hidden; }
.yasou-bar-fill{ height: 100%; background: var(--yasoudo-navy); border-radius: 6px; }
.yasou-actress-foot{ font-size: .7rem; color: var(--yasoudo-muted); margin-top: 12px; }

/* 5. 夜想の一言 */
.yasou-verdict{
  margin: 24px 0;
  border-left: 6px solid var(--yasoudo-accent);
  background: #fff;
  padding: 16px 18px;
  font-size: .95rem;
  font-weight: 700;
}
.yasou-verdict .label{ font-size: .7rem; color: var(--yasoudo-accent); font-weight: 900; display: block; margin-bottom: 6px; letter-spacing: 1px; }

/* 6. こんな人に刺さる */
.yasou-fit{
  margin: 26px 0;
  background: #dfe4ea;
  border-radius: 10px;
  padding: 18px;
}
.yasou-fit h4{ font-size: .95rem; font-weight: 900; margin: 0 0 10px; }
.yasou-fit ul{ margin: 0; padding: 0; }
.yasou-fit li{ list-style: none; font-size: .9rem; font-weight: 700; padding: 5px 0 5px 24px; position: relative; }
.yasou-fit li::before{ content: "✓"; position: absolute; left: 0; color: var(--yasoudo-accent); font-weight: 900; }

/* 7. CTA */
.yasou-cta-wrap{ margin: 30px 0; }
.yasou-cta{
  display: block;
  text-align: center;
  background: var(--yasoudo-accent);
  color: #fff !important;
  font-weight: 900;
  font-size: 1.08rem;
  padding: 17px;
  text-decoration: none;
  border-radius: 6px;
}
.yasou-cta:hover{ opacity: .92; }
.yasou-cta-note{ text-align: center; font-size: .66rem; color: var(--yasoudo-muted); margin-top: 8px; }

/* 8. 広告/PR表示 */
.yasou-pr{
  background: #fff3cd;
  border: 1px dashed #c8a000;
  color: #665500;
  font-size: .78rem;
  padding: 8px 14px;
  border-radius: 6px;
  margin: 16px 0;
}

/* 注記 */
.yasou-note{ font-size: .8rem; color: var(--yasoudo-muted); }

/* ===== 夜想堂 文字サイズ＆女優データ枠 調整（末尾追記・2026-06-09 v17）===== */

/* --- 本文 --- */
.wp-block-post-content p,
.entry-content p { font-size: 1rem; }

/* --- 夜想スコア（星） --- */
.yasou-stars-row { font-size: 1.1rem; }
.yasou-star { font-size: 1.15rem; }

/* --- 夜想の一言（短い一言＋点数。大きく・センスで見せる） --- */
.yasou-verdict { font-size: 1.18rem !important; line-height: 1.9; }
.yasou-verdict .label { font-size: 1.05rem; }
.yasou-verdict-score {
	font-size: 2rem;
	font-weight: 900;
	color: var(--yasoudo-accent, #c8102e);
	text-align: center;
	letter-spacing: 1px;
	margin: 4px 0 8px;
	line-height: 1.2;
}
.yasou-verdict-body {
	font-size: 1.18rem;
	line-height: 1.9;
	text-align: center;
}

/* --- こんな人に刺さる（読ませる） --- */
.yasou-fit h4 { font-size: 1.18rem; }
.yasou-fit li { font-size: 1.12rem; }

/* --- レーダーラベル（PHP側を13pxにしたので保険の上書きは控えめに） --- */
.yasou-radar-box svg text { font-size: 13px; }

/* ============================================================
   女優データ枠（2026-06-09 改訂：顔写真＋夜想の勝手な見立て）
   ============================================================ */

/* 上部：顔写真＋見出し情報を横並び */
.yasou-actress-top {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	margin-bottom: 14px;
}

/* 顔写真 */
.yasou-actress-photo {
	flex: 0 0 auto;
	width: 96px;
}
.yasou-actress-photo img {
	width: 96px;
	height: 96px;
	object-fit: cover;
	border-radius: 8px;
	border: 2px solid var(--yasoudo-navy, #2b3a55);
	display: block;
}
.yasou-actress-photo a { display: block; line-height: 0; }

/* 見出し（名前・タグ・スペック） */
.yasou-actress-head { flex: 1 1 auto; min-width: 0; }

.yasou-actress-name { font-size: 1.4rem; font-weight: 900; line-height: 1.3; }
.yasou-actress-name small { font-size: .8rem; font-weight: 400; color: var(--yasoudo-muted, #777); margin-left: 6px; }

.yasou-actress-tags { margin-top: 6px; }
.yasou-actress-tags span {
	display: inline-block;
	font-size: .82rem;
	background: var(--yasoudo-navy, #2b3a55);
	color: #fff;
	padding: 2px 10px;
	border-radius: 999px;
	margin: 0 6px 4px 0;
}

/* 実スペック（カップ数・サイズ＝想像の足場） */
.yasou-actress-specs {
	margin-top: 8px;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: .5px;
}

/* 夜想の見立て（紹介文） */
.yasou-actress-note {
	font-size: 1.12rem !important;
	line-height: 1.85;
	margin: 12px 0;
}
.yasou-actress-note .label {
	display: block;
	font-size: 1.05rem;
	font-weight: 900;
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: 1px;
	margin-bottom: 6px;
}

/* 夜想の勝手な見立て（妄想項目：攻めどころ／現実で見かけたら） */
.yasou-actress-imagine {
	background: #fff8e1;
	border: 1px dashed var(--yasoudo-pop-line, #ff4d4d);
	border-radius: 10px;
	padding: 14px 16px;
	margin: 14px 0;
}
.yasou-actress-imagine .label {
	display: block;
	font-size: 1.05rem;
	font-weight: 900;
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: 1px;
	margin-bottom: 10px;
	text-align: center;
}
.yasou-imagine-row {
	display: flex;
	gap: 12px;
	padding: 8px 0;
	border-top: 1px solid rgba(0,0,0,.06);
}
.yasou-imagine-row:first-of-type { border-top: none; }
.yasou-imagine-key {
	flex: 0 0 96px;
	font-size: .95rem;
	font-weight: 900;
	color: var(--yasoudo-navy, #2b3a55);
}
.yasou-imagine-val {
	flex: 1 1 auto;
	font-size: 1rem;
	line-height: 1.85;
}

/* フッターのFANZAリンク */
.yasou-actress-foot {
	margin-top: 12px;
	text-align: right;
	font-size: .95rem;
}
.yasou-actress-foot a {
	color: var(--yasoudo-accent, #c8102e);
	font-weight: 700;
	text-decoration: none;
}
.yasou-actress-foot a:hover { text-decoration: underline; }

/* スマホ：顔写真を上に、情報を下に積む */
@media (max-width: 480px) {
	.yasou-actress-top { flex-direction: column; align-items: center; text-align: center; }
	.yasou-actress-tags { text-align: center; }
	.yasou-imagine-row { flex-direction: column; gap: 2px; }
	.yasou-imagine-key { flex: none; }
}

/* ============================================================
   サンプル画像 横スクロールギャラリー（2026-06-09）
   ============================================================ */
.yasou-gallery {
	margin: 22px 0;
}
.yasou-gallery-scroll {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x mandatory;
	padding-bottom: 8px;
}
.yasou-gallery-scroll img {
	flex: 0 0 auto;
	height: 200px;
	width: auto;
	border-radius: 6px;
	scroll-snap-align: start;
	display: block;
}
/* スクロールバーを夜想カラーに（黄色だと本文マーカーと同化するため赤で目立たせる） */
.yasou-gallery-scroll::-webkit-scrollbar { height: 10px; }
.yasou-gallery-scroll::-webkit-scrollbar-thumb { background: var(--yasoudo-accent, #c8102e); border-radius: 5px; }
.yasou-gallery-scroll::-webkit-scrollbar-track { background: #eee; border-radius: 5px; }
/* Firefox向け */
.yasou-gallery-scroll { scrollbar-color: var(--yasoudo-accent, #c8102e) #eee; }
/* スクロール可能のヒント */
.yasou-gallery-hint {
	font-size: .82rem;
	color: var(--yasoudo-accent, #c8102e);
	font-weight: 700;
	text-align: center;
	margin-top: 4px;
}
.yasou-gallery-note {
	font-size: 1rem;
	color: var(--yasoudo-ink, #1a1a1a);
	background: var(--yasoudo-pop, #ffe600);
	font-weight: 700;
	margin-top: 10px;
	padding: 10px 14px;
	border-radius: 8px;
	line-height: 1.7;
	text-align: left;
}
@media (max-width: 480px) {
	.yasou-gallery-scroll img { height: 150px; }
}

/* 作品パッケージ画像（冒頭の掴み） */
.yasou-package {
	margin: 8px 0 18px;
	text-align: center;
}
.yasou-package img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0,0,0,.15);
}

/* 女優データ枠：夜想のおすすめショット */
.yasou-actress-shot {
	margin: 14px 0;
	text-align: center;
}
.yasou-actress-shot .label {
	display: block;
	font-size: .82rem;
	font-weight: 900;
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: 1px;
	margin-bottom: 8px;
}
.yasou-actress-shot img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
	border: 2px solid var(--yasoudo-pop, #ffe600);
}
.yasou-shot-note {
	font-size: 1.02rem;
	line-height: 1.7;
	margin-top: 8px;
	text-align: left;
}

/* ============================================================
   関連記事リンク [yasou_related]（YouTubeおすすめ風）
   ============================================================ */
.yasou-related {
	margin: 32px 0 8px;
}
.yasou-related-head {
	font-size: 1.05rem;
	font-weight: 900;
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: 1px;
	text-align: center;
	margin-bottom: 16px;
}
.yasou-related-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}
.yasou-related-card {
	display: block;
	text-decoration: none;
	color: var(--yasoudo-ink, #1a1a1a);
	border: 1px solid #e5e2d8;
	border-radius: 10px;
	overflow: hidden;
	background: var(--yasoudo-card, #fff);
	transition: transform .15s ease, box-shadow .15s ease;
}
.yasou-related-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 14px rgba(0,0,0,.12);
}
.yasou-related-thumb {
	width: 100%;
	aspect-ratio: 16 / 11;
	overflow: hidden;
	background: #f0ede4;
	display: flex;
	align-items: center;
	justify-content: center;
}
.yasou-related-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.yasou-related-noimg {
	font-weight: 900;
	letter-spacing: 2px;
	color: #c9c4b6;
	font-size: 1rem;
}
.yasou-related-title {
	padding: 10px 12px 14px;
	font-size: .98rem;
	font-weight: 700;
	line-height: 1.5;
}
@media (max-width: 480px) {
	.yasou-related-grid { gap: 10px; }
	.yasou-related-title { font-size: .9rem; padding: 8px 10px 12px; }
}

/* ============================================================
   アイキャッチをサムネ専用にする（本文冒頭の自動表示を隠す）
   記事冒頭のパッケージは [yasou_package] に任せ、
   featured image は関連リンク・一覧のサムネ専用にする。
   ============================================================ */
.single .wp-block-post-featured-image,
.single-post .wp-block-post-featured-image {
	display: none !important;
}

/* ============================================================
   CTAボタンと関連リンクの分離（CTAを行き止まりとして目立たせる）
   ============================================================ */
/* verdict（95点）とCTAボタンの間を広げる */
.yasou-verdict { margin-bottom: 36px !important; }

.yasou-cta-wrap {
	margin-bottom: 8px;
}

/* 関連リンクは大きく離し、太い区切りでハッキリ分ける */
.yasou-related {
	margin-top: 72px;
	padding-top: 44px;
	border-top: 4px solid var(--yasoudo-ink, #1a1a1a);
}
.yasou-related-head {
	margin-bottom: 22px;
}

/* ============================================================
   投稿メタ情報（執筆者・カテゴリ・日付）を非表示
   タイトル→画像の掴みを邪魔しないため、単一記事のメタを隠す。
   「執筆者:」「カテゴリ:」ラベルは<p>タグ、中身は別class なので、
   それらを囲む親グループ（has-small-font-size のflexグループ）ごと消す。
   ============================================================ */
/* 親グループごと消す（自動生成IDに依存しない狙い方） */
.single .wp-block-post-title + figure + .wp-block-group.has-small-font-size,
.single .wp-block-post-title + .wp-block-group.has-small-font-size,
.single-post .wp-block-post-title + figure + .wp-block-group.has-small-font-size,
.single-post .wp-block-post-title + .wp-block-group.has-small-font-size,
.single .wp-container-core-group-is-layout-4efaea1e,
.single-post .wp-container-core-group-is-layout-4efaea1e {
	display: none !important;
}
/* 保険：個別要素も隠す */
.single .wp-block-post-author-name,
.single .wp-block-post-terms,
.single .wp-block-post-date,
.single-post .wp-block-post-author-name,
.single-post .wp-block-post-terms,
.single-post .wp-block-post-date {
	display: none !important;
}

/* ============================================================
   ヘッダーナビゲーションの見栄え調整（初期設定感を消す）
   ============================================================ */
/* メニュー全体：等間隔・縦中央 */
.wp-block-navigation {
	gap: 4px;
}
.wp-block-navigation .wp-block-navigation-item__content {
	display: inline-block;
	padding: 8px 16px;
	font-size: .95rem;
	font-weight: 700;
	letter-spacing: .5px;
	color: #fff !important;
	border-radius: 6px;
	transition: background .15s ease, color .15s ease;
	text-decoration: none;
}
/* ホバー：黄色背景＋黒文字でボタンっぽく */
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item__content:focus {
	background: var(--yasoudo-pop, #ffe600) !important;
	color: #1a1a1a !important;
}
/* 親テーマの header a{color:#fff!important} に勝つための高詳細度上書き */
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:hover,
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:focus,
.wp-site-blocks > header a.wp-block-navigation-item__content:hover,
.wp-site-blocks > header a.wp-block-navigation-item__content:focus {
	background: #ffe600 !important;
	color: #1a1a1a !important;
}
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.wp-site-blocks > header a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label {
	color: #1a1a1a !important;
}
/* 項目間に余計な隙間が出ないよう統一 */
.wp-block-navigation .wp-block-navigation-item {
	margin: 0;
}
@media (max-width: 600px) {
	.wp-block-navigation .wp-block-navigation-item__content {
		padding: 6px 10px;
		font-size: .85rem;
	}
}

/* ===== 夜想堂 ヘッダー仕上げ（末尾追記・2026-06-11 v18）===== */
/* v17のヘッダーナビ設定を上書き。①常時黄色ボタン＋文字拡大＋トップ画像重複退治 */

/* --- メニュー：常時 黄色ベタ塗りボタン（①仕様）・文字をロゴの約半分に --- */
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content,
.wp-site-blocks > header a.wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item__content {
	font-size: 23px !important;
	font-weight: 700 !important;
	padding: 10px 20px !important;
	letter-spacing: 1px !important;
	background: #ffe600 !important;
	color: #1a1a1a !important;
	border-radius: 6px !important;
	text-decoration: none !important;
	transition: background .15s ease !important;
}
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content .wp-block-navigation-item__label,
.wp-site-blocks > header a.wp-block-navigation-item__content .wp-block-navigation-item__label {
	color: #1a1a1a !important;
}

/* --- ホバー：一段沈んだ黄色（押し込んだ手応え） --- */
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:hover,
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:focus,
.wp-site-blocks > header a.wp-block-navigation-item__content:hover,
.wp-site-blocks > header a.wp-block-navigation-item__content:focus,
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item__content:focus {
	background: #d9c400 !important;
	color: #1a1a1a !important;
}
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.wp-site-blocks > header a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label {
	color: #1a1a1a !important;
}

/* --- 項目間の間隔（ボタンが大きい分、適度に） --- */
.wp-block-navigation { gap: 14px !important; }

/* --- スマホ：少し小さく --- */
@media (max-width: 600px) {
	header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content,
	.wp-site-blocks > header a.wp-block-navigation-item__content,
	.wp-block-navigation .wp-block-navigation-item__content {
		font-size: 15px !important;
		padding: 7px 12px !important;
	}
	.wp-block-navigation { gap: 8px !important; }
}

/* --- トップ（ブログ一覧）の画像重複退治：本文先頭パッケージを隠しサムネだけに --- */
.blog .yasou-package,
.home .yasou-package {
	display: none !important;
}

/* ===== 夜想堂 ヘッダー微調整（末尾追記・2026-06-11 v18.1）===== */
/* v18のメニューを：文字19pxに縮小・ボタン引き締め・右端寄せ */

/* 文字サイズとパディングを調整（v18の23px/10pxを上書き） */
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content,
.wp-site-blocks > header a.wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item__content {
	font-size: 19px !important;
	padding: 8px 16px !important;
}

/* メニュー全体を右端に寄せる（ロゴは左固定のまま、メニューを右へ） */
header.wp-block-template-part .wp-block-navigation {
	justify-content: flex-end !important;
	margin-left: auto !important;
}

/* ===== 夜想堂 ヘッダー微調整（末尾追記・2026-06-11 v18.2）===== */
/* 折衷案A+：常時は黒地・黄色文字・黄色枠／ホバーで背景黄色／お問い合わせは枠なし／さらに右寄せ */

/* 常時：黄色ベタ塗りをやめ、黒地・黄色文字・黄色枠に（v18の黄色背景を上書き） */
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content,
.wp-site-blocks > header a.wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item__content {
	background: transparent !important;
	color: #ffe600 !important;
	border: 1px solid #ffe600 !important;
}
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content .wp-block-navigation-item__label,
.wp-site-blocks > header a.wp-block-navigation-item__content .wp-block-navigation-item__label {
	color: #ffe600 !important;
}

/* ホバー：その項目だけ背景が黄色に光る・文字は黒 */
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:hover,
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:focus,
.wp-site-blocks > header a.wp-block-navigation-item__content:hover,
.wp-site-blocks > header a.wp-block-navigation-item__content:focus,
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item__content:focus {
	background: #ffe600 !important;
	color: #1a1a1a !important;
	border-color: #ffe600 !important;
}
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.wp-site-blocks > header a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label {
	color: #1a1a1a !important;
}

/* お問い合わせ（最後の項目）だけ：枠なし・脇役に */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item:last-child .wp-block-navigation-item__content {
	background: transparent !important;
	color: #cfcfcf !important;
	border: none !important;
}
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content .wp-block-navigation-item__label,
.wp-block-navigation .wp-block-navigation-item:last-child .wp-block-navigation-item__content .wp-block-navigation-item__label {
	color: #cfcfcf !important;
}
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item:last-child .wp-block-navigation-item__content:hover {
	background: transparent !important;
	color: #ffe600 !important;
}
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.wp-block-navigation .wp-block-navigation-item:last-child .wp-block-navigation-item__content:hover .wp-block-navigation-item__label {
	color: #ffe600 !important;
}

/* メニュー位置の微調整 */
header.wp-block-template-part .wp-block-navigation {
	margin-right: 0 !important;
}
.wp-block-group.alignwide {
	padding-right: 12px !important;
}

/* ===== 夜想堂 トップページ（末尾追記・2026-06-11 v18.3）===== */
/* モック準拠：キャッチ／今夜の一本／新着の棚／案内板 */

/* --- キャッチコピー --- */
.yasou-top-catch { border-left: 6px solid var(--yasoudo-accent, #c8102e); padding-left: 16px; margin-bottom: 30px; }
.yasou-top-catch h1 { font-size: 1.65rem; font-weight: 900; line-height: 1.4; margin: 0; }
.yasou-top-catch h1 .hl { background: linear-gradient(transparent 58%, var(--yasoudo-pop, #ffe600) 58%); }
.yasou-top-catch p { font-size: .9rem; color: #555; margin: 6px 0 0; }
.yasou-top-catch p a { color: var(--yasoudo-accent, #c8102e); font-weight: 700; }

/* --- 今夜の一本：黒帯ラベル --- */
.yasou-hero-label { background: var(--yasoudo-ink, #1a1a1a); color: #fff; font-weight: 900; font-size: 1rem; padding: 12px 18px; border-radius: 8px 8px 0 0; display: flex; align-items: center; gap: 8px; }
.yasou-hero-label .star { color: var(--yasoudo-pop, #ffe600); }
.yasou-hero-label .sub { font-size: .7rem; font-weight: 400; color: #aaa; margin-left: auto; }

/* --- 今夜の一本：ヒーローカード --- */
.yasou-hero-card { background: #fff; border: 2px solid var(--yasoudo-ink, #1a1a1a); border-top: none; border-radius: 0 0 8px 8px; box-shadow: 6px 6px 0 var(--yasoudo-ink, #1a1a1a); overflow: hidden; margin-bottom: 40px; gap: 0 !important; align-items: stretch !important; }
.yasou-hero-card .wp-block-post-featured-image { flex: 0 0 44%; margin: 0; }
.yasou-hero-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0; }
.yasou-hero-body { flex: 1 1 auto; padding: 18px 20px; }
.yasou-hero-title { font-size: 1.25rem !important; font-weight: 900 !important; line-height: 1.45 !important; margin: 8px 0 !important; }
.yasou-hero-title a { color: var(--yasoudo-ink, #1a1a1a) !important; text-decoration: none !important; }
.yasou-hero-excerpt { font-size: .85rem; color: #555; }
.yasou-hero-excerpt .wp-block-post-excerpt__more-link { display: none; }
.yasou-hero-btn { display: inline-block; background: var(--yasoudo-accent, #c8102e); color: #fff !important; font-weight: 900; font-size: .85rem; padding: 9px 20px; border-radius: 5px; text-decoration: none !important; margin-top: 12px; }
.yasou-hero-btn:hover { opacity: .9; }

/* --- カテゴリのピルバッジ（共通） --- */
.yasou-card-cat { font-size: .68rem; }
.yasou-card-cat a { display: inline-block; background: var(--yasoudo-pop, #ffe600); color: var(--yasoudo-ink, #1a1a1a) !important; border: 1px solid var(--yasoudo-ink, #1a1a1a); font-weight: 900; padding: 0 10px; border-radius: 20px; text-decoration: none !important; }

/* --- 新着の棚：見出し --- */
.yasou-shelf-label { font-weight: 900; font-size: 1.1rem; border-left: 6px solid var(--yasoudo-accent, #c8102e); padding-left: 12px; margin: 0 0 16px; }

/* --- 新着の棚：カード --- */
.yasou-shelf-query .wp-block-post-template { gap: 16px; }
.yasou-shelf-card { background: #fff; border: 1px solid #e5e2d8; border-radius: 10px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,.06); transition: transform .15s ease, box-shadow .15s ease; height: 100%; }
.yasou-shelf-card:hover { transform: translateY(-2px); box-shadow: 0 4px 14px rgba(0,0,0,.12); }
.yasou-shelf-card .wp-block-post-featured-image { margin: 0; }
.yasou-shelf-card .wp-block-post-featured-image img { border-radius: 0; display: block; }
.yasou-shelf-body { padding: 10px 12px 14px; }
.yasou-shelf-title { font-size: .92rem !important; font-weight: 700 !important; line-height: 1.5 !important; margin: 6px 0 0 !important; }
.yasou-shelf-title a { color: var(--yasoudo-ink, #1a1a1a) !important; text-decoration: none !important; }
.yasou-shelf-title a:hover { color: var(--yasoudo-accent, #c8102e) !important; }

/* --- 棚への案内板 --- */
.yasou-top-banners { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 40px 0 10px; }
.yasou-top-banners a { display: block; border-radius: 8px; padding: 18px 20px; text-decoration: none !important; transition: transform .15s ease; }
.yasou-top-banners a:hover { transform: translateY(-2px); }
.yasou-top-banners .t { font-weight: 900; font-size: 1.05rem; }
.yasou-top-banners .s { font-size: .78rem; margin-top: 3px; }
.yasou-banner-rank { background: var(--yasoudo-pop, #ffe600); border: 3px solid var(--yasoudo-ink, #1a1a1a); box-shadow: 5px 5px 0 var(--yasoudo-ink, #1a1a1a); color: var(--yasoudo-ink, #1a1a1a) !important; }
.yasou-banner-gravure { background: var(--yasoudo-ink, #1a1a1a); border: 3px solid var(--yasoudo-ink, #1a1a1a); box-shadow: 5px 5px 0 #bcae7a; color: #fff !important; }
.yasou-banner-gravure .t { color: var(--yasoudo-pop, #ffe600); }
.yasou-banner-gravure .s { color: #ccc; }

/* --- スマホ：ヒーローを縦積み・棚1列・案内板1列 --- */
@media (max-width: 600px) {
	.yasou-hero-card { flex-direction: column !important; }
	.yasou-hero-card .wp-block-post-featured-image { flex: none; }
	.yasou-shelf-query .wp-block-post-template { grid-template-columns: 1fr !important; }
	.yasou-top-banners { grid-template-columns: 1fr; }
}

/* ===== 夜想堂 トップページ余白調整（末尾追記・2026-06-11 v18.4）===== */
/* セクション間にゆとりを持たせ「セレクトショップの陳列」にする（詰めすぎ＝つかみ取り感の解消） */

/* キャッチコピーと「今夜の一本」の間 */
.yasou-top-catch { margin-bottom: 48px; }

/* 「今夜の一本」と「新着の棚」の間（記事ページのCTA分離と同じ流儀でたっぷり） */
.yasou-hero-card { margin-bottom: 72px; }

/* 棚のカード同士の間隔を広めに */
.yasou-shelf-query .wp-block-post-template { gap: 24px !important; }

/* カード内側もゆったり（タイトルが窮屈に見えないように） */
.yasou-shelf-body { padding: 14px 16px 18px; }
.yasou-shelf-title { margin: 8px 0 0 !important; }

/* 棚と案内板の間 */
.yasou-top-banners { margin: 72px 0 24px; }

/* ページ全体の下余白（フッターに張り付かないように） */
.yasou-top { padding-bottom: 30px; }

/* ===== 夜想堂 ヘッダー＆フッター仕上げ（末尾追記・2026-06-11 v18.5）===== */

/* --- ヘッダー：お問い合わせ（最後の項目）を右に離して別グループ化 --- */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child {
	margin-left: 44px !important;
}

/* --- フッター：3ブロック構成（ブランド／メインメニュー／事務リンク） --- */
footer.wp-block-template-part .yasou-footer-main {
	display: flex;
	flex-wrap: wrap;
	gap: 48px;
	align-items: flex-start;
}
footer.wp-block-template-part .yasou-footer-brand { max-width: 320px; }
footer.wp-block-template-part .yasou-footer-brand a { display: inline-block; line-height: 0; }
footer.wp-block-template-part .yasou-footer-brand .desc {
	color: #888 !important;
	font-size: .74rem;
	line-height: 1.9;
	margin: 14px 0 0;
	text-align: left;
}

/* メインメニュー（ヘッダーと同じ黄色枠ボタン） */
footer.wp-block-template-part .yasou-footer-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}
footer.wp-block-template-part .yasou-footer-nav a {
	border: 1px solid var(--yasoudo-pop, #ffe600);
	color: var(--yasoudo-pop, #ffe600) !important;
	font-size: .85rem;
	font-weight: 700;
	padding: 8px 18px;
	border-radius: 5px;
	text-decoration: none !important;
	transition: background .15s ease, color .15s ease;
	white-space: nowrap;
}
footer.wp-block-template-part .yasou-footer-nav a:hover {
	background: var(--yasoudo-pop, #ffe600);
	color: #1a1a1a !important;
}

/* 事務リンク（右端・控えめグレー・縦積み） */
footer.wp-block-template-part .yasou-footer-legal {
	margin-left: auto;
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-align: right;
	margin-top: 8px;
}
footer.wp-block-template-part .yasou-footer-legal a {
	color: #9a9a9a !important;
	font-size: .78rem;
	text-decoration: none !important;
	white-space: nowrap;
}
footer.wp-block-template-part .yasou-footer-legal a:hover {
	color: var(--yasoudo-pop, #ffe600) !important;
}

/* 最下段（コピーライト・アフィリエイト表記） */
footer.wp-block-template-part .yasou-footer-bottom {
	border-top: 1px solid #333;
	margin-top: 34px;
	padding-top: 16px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: space-between;
	color: #777 !important;
	font-size: .68rem;
}

/* スマホ：縦積みでゆったり */
@media (max-width: 700px) {
	footer.wp-block-template-part .yasou-footer-main { flex-direction: column; gap: 28px; }
	footer.wp-block-template-part .yasou-footer-legal { margin-left: 0; text-align: left; }
}

/* ===== 夜想堂 ヘッダー／フッター統一（末尾追記・2026-06-11 v18.6）===== */
/* 上下の額縁を揃える：内側コンテナの幅・左右余白を統一し、ボタンサイズを完全に同一に */

/* --- 内側コンテナ：同じ最大幅・同じ左右余白（左端と右端が上下で揃う） --- */
header.wp-block-template-part .wp-block-group.alignwide,
footer.wp-block-template-part .wp-block-group.alignwide {
	max-width: 1140px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 16px !important;
	padding-right: 16px !important;
	width: 100%;
}

/* --- フッターのメニューボタンをヘッダーと完全同サイズに --- */
footer.wp-block-template-part .yasou-footer-nav {
	gap: 14px;
}
footer.wp-block-template-part .yasou-footer-nav a {
	font-size: 19px;
	padding: 8px 16px;
	letter-spacing: 1px;
	border-radius: 6px;
}

/* --- フッターのブランドブロック幅を少し広げてバランス --- */
footer.wp-block-template-part .yasou-footer-brand { max-width: 340px; }

/* スマホ：フッターのボタンもヘッダー同様に小さく */
@media (max-width: 600px) {
	footer.wp-block-template-part .yasou-footer-nav a {
		font-size: 15px;
		padding: 7px 12px;
	}
	footer.wp-block-template-part .yasou-footer-nav { gap: 8px; }
}

/* ===== 夜想堂 ヘッダー折り返し修正（末尾追記・2026-06-11 v18.7）===== */
/* お問い合わせの2行目落ちを解消：コンテナを少し広げ、ボタンを微縮小し、1行に収める */

/* コンテナをわずかに拡張（上下とも＝揃いは維持） */
header.wp-block-template-part .wp-block-group.alignwide,
footer.wp-block-template-part .wp-block-group.alignwide {
	max-width: 1200px !important;
}

/* ヘッダーのメニュー：1行に収まるよう微調整・折り返し禁止 */
header.wp-block-template-part .wp-block-navigation {
	flex-wrap: nowrap !important;
}
header.wp-block-template-part .wp-block-navigation a.wp-block-navigation-item__content,
.wp-site-blocks > header a.wp-block-navigation-item__content {
	font-size: 18px !important;
	padding: 8px 14px !important;
	white-space: nowrap !important;
}

/* お問い合わせの間隔を少し詰める（離し感は維持） */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child {
	margin-left: 28px !important;
}

/* フッターのボタンもヘッダーと同サイズに追従 */
footer.wp-block-template-part .yasou-footer-nav a {
	font-size: 18px;
	padding: 8px 14px;
}

/* ===== 夜想堂 右端ピタ揃え（末尾追記・2026-06-11 v18.8）===== */
/* お問い合わせ（枠なしボタン）の内側余白を右だけ0にし、フッター事務リンクと右端を揃える */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content {
	padding-right: 0 !important;
}

/* ===== 夜想堂 ランキング棚（末尾追記・2026-06-13 v19）===== */
/* ランキング記事用の部品。記事本文に直接HTMLで組む方式（functions.php変更なし）。
   モック「夜想堂_モック_ランキング.html」準拠：1位ヒーロー／2-3位カード／4位以下の行。 */

/* --- 使い方ボックス（冒頭の一言案内） --- */
.yasou-rank-howto {
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 4px 4px 0 var(--yasoudo-ink, #1a1a1a);
	padding: 14px 18px;
	font-size: 1rem;
	font-weight: 700;
	margin: 20px 0 40px;
}

/* --- 1位：ヒーローカード --- */
.yasou-rank1 {
	position: relative;
	background: #fff;
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 8px 8px 0 var(--yasoudo-ink, #1a1a1a);
	margin: 34px 0 52px;
}
.yasou-rank1-badge {
	position: absolute;
	top: -18px;
	left: -14px;
	width: 64px;
	height: 64px;
	background: var(--yasoudo-pop, #ffe600);
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	line-height: 1;
	transform: rotate(-8deg);
	z-index: 2;
}
.yasou-rank1-badge .no { font-size: 26px; }
.yasou-rank1-badge .label { font-size: 10px; }
.yasou-rank1-head {
	background: var(--yasoudo-ink, #1a1a1a);
	color: var(--yasoudo-pop, #ffe600);
	font-size: .9rem;
	font-weight: 700;
	letter-spacing: 2px;
	padding: 8px 16px 8px 64px;
}
.yasou-rank1-body { padding: 20px; }
.yasou-rank1-body img {
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid #ddd;
	border-radius: 4px;
	margin-bottom: 14px;
}
.yasou-rank1-title {
	font-size: 1.25rem;
	font-weight: 900;
	line-height: 1.5;
	margin: 0 0 10px;
}

/* --- スコア行（1位〜3位 共通） --- */
.yasou-rank-scoreline {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin: 0 0 12px;
}
.yasou-rank-score {
	background: var(--yasoudo-pop, #ffe600);
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	font-weight: 900;
	font-size: .95rem;
	padding: 2px 14px;
}
.yasou-rank-stars {
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: 2px;
	font-weight: 700;
}

/* --- フック（ひとこと） --- */
.yasou-rank-hook {
	font-size: .95rem;
	font-weight: 700;
	background: #fffbe6;
	border-left: 4px solid var(--yasoudo-pop-line, #ff4d4d);
	padding: 10px 14px;
	margin: 0 0 16px;
	line-height: 1.7;
}

/* --- ボタン --- */
.yasou-rank-btns { display: flex; gap: 12px; flex-wrap: wrap; }
.yasou-rank-btn {
	display: inline-block;
	font-weight: 900;
	font-size: .9rem;
	padding: 10px 22px;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 3px 3px 0 var(--yasoudo-ink, #1a1a1a);
	text-decoration: none !important;
	text-align: center;
	transition: transform .1s ease, box-shadow .1s ease;
}
.yasou-rank-btn:hover {
	transform: translate(1px, 1px);
	box-shadow: 2px 2px 0 var(--yasoudo-ink, #1a1a1a);
}
.yasou-rank-btn--review { background: #fff; color: var(--yasoudo-ink, #1a1a1a) !important; }
.yasou-rank-btn--fanza { background: var(--yasoudo-accent, #c8102e); color: #fff !important; }

/* --- 2〜3位：中カード（2列グリッド） --- */
.yasou-rank-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	margin: 0 0 52px;
}
.yasou-rank-mid {
	position: relative;
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 5px 5px 0 var(--yasoudo-ink, #1a1a1a);
	padding: 18px 16px 16px;
}
.yasou-rank-mid-badge {
	position: absolute;
	top: -14px;
	left: -10px;
	width: 44px;
	height: 44px;
	background: #fff;
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	font-size: 1.1rem;
	transform: rotate(-8deg);
	z-index: 2;
}
.yasou-rank-mid img {
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid #ddd;
	border-radius: 4px;
	margin-bottom: 10px;
}
.yasou-rank-mid-title {
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.5;
	margin: 0 0 8px;
}
.yasou-rank-mid .yasou-rank-score { font-size: .8rem; padding: 1px 10px; }
.yasou-rank-mid .yasou-rank-stars { font-size: .8rem; }
.yasou-rank-mid .yasou-rank-hook { font-size: .85rem; padding: 8px 10px; margin-bottom: 12px; }
.yasou-rank-mid .yasou-rank-btn { font-size: .8rem; padding: 7px 14px; }

/* --- 4位以下：一覧の行 --- */
.yasou-rank-list-title {
	font-size: 1.05rem;
	font-weight: 900;
	border-left: 6px solid var(--yasoudo-pop-line, #ff4d4d);
	padding-left: 12px;
	margin: 0 0 16px;
}
.yasou-rank-row {
	display: flex;
	align-items: center;
	gap: 14px;
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	padding: 12px 14px;
	margin: 0 0 12px;
}
.yasou-rank-row .no {
	flex: 0 0 36px;
	font-weight: 900;
	font-size: 1.3rem;
	text-align: center;
	color: var(--yasoudo-navy, #2b3a55);
}
.yasou-rank-row .thumb { flex: 0 0 84px; }
.yasou-rank-row .thumb img {
	width: 84px;
	height: 60px;
	object-fit: cover;
	display: block;
	border: 1px solid #ccc;
	border-radius: 3px;
}
.yasou-rank-row .info { flex: 1 1 auto; min-width: 0; }
.yasou-rank-row .ttl {
	font-size: .95rem;
	font-weight: 700;
	line-height: 1.45;
	margin: 0 0 2px;
}
.yasou-rank-row .ttl a { color: var(--yasoudo-ink, #1a1a1a) !important; text-decoration: none !important; }
.yasou-rank-row .ttl a:hover { color: var(--yasoudo-accent, #c8102e) !important; }
.yasou-rank-row .one { font-size: .8rem; color: #777; margin: 0; }
.yasou-rank-row .right { flex: 0 0 auto; text-align: right; }
.yasou-rank-row .right .yasou-rank-score {
	font-size: .78rem;
	padding: 1px 8px;
	display: inline-block;
	margin-bottom: 6px;
}
.yasou-rank-row .right .go {
	display: block;
	font-size: .8rem;
	color: var(--yasoudo-accent, #c8102e) !important;
	font-weight: 900;
	text-decoration: none !important;
	white-space: nowrap;
}
.yasou-rank-row .right .go:hover { text-decoration: underline !important; }

/* --- 締めの一言 --- */
.yasou-rank-outro {
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	border-left: 8px solid var(--yasoudo-accent, #c8102e);
	padding: 16px 20px;
	font-size: 1rem;
	font-weight: 700;
	margin: 44px 0 28px;
	line-height: 1.9;
}

/* --- スマホ --- */
@media (max-width: 600px) {
	.yasou-rank-grid { grid-template-columns: 1fr; }
	.yasou-rank-row { flex-wrap: wrap; }
	.yasou-rank-row .info { flex: 1 1 60%; }
	.yasou-rank-row .right { flex: 1 1 100%; text-align: left; }
	.yasou-rank-row .right .yasou-rank-score { margin-bottom: 2px; margin-right: 10px; }
	.yasou-rank-row .right .go { display: inline-block; }
}

/* ===== 夜想堂 特集・手書きPOP（末尾追記・2026-06-13 v20）===== */
/* 特集記事用の部品。モック「夜想堂_モック_特集_手書きPOP.html」準拠。
   ベスト3＝POPカードでフル紹介／4位以下＝ランキングの .yasou-rank-row を流用。
   記事本文に直接HTMLで組む方式（functions.php変更なし）。 */

/* --- 手書きフォント --- */
.yasou-hand {
	font-family: "Yusei Magic", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
	font-weight: 400;
}

/* --- 看板POP（特集の大見出し） --- */
.yasou-pop-board {
	position: relative;
	background: var(--yasoudo-pop, #ffe600);
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 10px 10px 0 var(--yasoudo-ink, #1a1a1a);
	padding: 34px 26px 30px;
	margin: 24px 0 20px;
	transform: rotate(-0.6deg);
}
.yasou-pop-board::before {
	content: "特集";
	position: absolute;
	top: -16px;
	right: 18px;
	background: var(--yasoudo-accent, #c8102e);
	color: #fff;
	font-weight: 900;
	font-size: .85rem;
	padding: 4px 16px;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	transform: rotate(3deg);
}
.yasou-pop-board-title {
	font-size: 2rem;
	line-height: 1.5;
	margin: 0;
	font-weight: 400;
}
.yasou-pop-board-sub {
	font-size: .95rem;
	margin: 12px 0 0;
	border-top: 2px dashed var(--yasoudo-ink, #1a1a1a);
	padding-top: 10px;
}

/* --- 店主の前口上（マステ留めの手書きメモ） --- */
.yasou-pop-memo {
	position: relative;
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 5px 5px 0 rgba(26, 26, 26, .85);
	padding: 26px 24px 20px;
	margin: 0 0 52px;
	transform: rotate(0.4deg);
}
.yasou-pop-memo::before {
	content: "";
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%) rotate(-2deg);
	width: 110px;
	height: 24px;
	background: rgba(255, 230, 0, .75);
	border: 1px solid rgba(26, 26, 26, .2);
}
.yasou-pop-memo p { font-size: 1.05rem; margin: 0 0 12px; }
.yasou-pop-memo p:last-child { margin-bottom: 0; }

/* 手書きの黄マーカー（POP内の強調） */
.yasou-pop-ruled {
	background: linear-gradient(transparent 62%, var(--yasoudo-pop, #ffe600) 62%);
}

/* --- POPカード（ベスト3：1商品＝1枚の手書きPOP） --- */
.yasou-pop-card {
	position: relative;
	background: #fff;
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 7px 7px 0 var(--yasoudo-ink, #1a1a1a);
	margin: 0 0 58px;
}
.yasou-pop-card:nth-of-type(odd) { transform: rotate(-0.5deg); }
.yasou-pop-card:nth-of-type(even) { transform: rotate(0.5deg); }
.yasou-pop-card-badge {
	position: absolute;
	top: -20px;
	left: -12px;
	width: 62px;
	height: 62px;
	background: var(--yasoudo-accent, #c8102e);
	color: #fff;
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	font-weight: 400;
	transform: rotate(-8deg);
	z-index: 2;
	line-height: 1.2;
	text-align: center;
}
.yasou-pop-card-inner { padding: 28px 22px 22px; }
.yasou-pop-headline {
	font-size: 1.4rem;
	line-height: 1.6;
	margin: 0 0 14px;
	font-weight: 400;
}
.yasou-pop-headline .big {
	font-size: 1.8rem;
	background: linear-gradient(transparent 60%, var(--yasoudo-pop, #ffe600) 60%);
}
.yasou-pop-headline .red { color: var(--yasoudo-accent, #c8102e); }
.yasou-pop-img {
	text-align: center;
	margin: 0 0 14px;
}
.yasou-pop-img img {
	max-width: 70%;
	height: auto;
	display: inline-block;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	border-radius: 6px;
	background: #fff;
}
.yasou-pop-name {
	font-size: .9rem;
	color: #555;
	margin: 0 0 12px;
	font-weight: 700;
}
.yasou-pop-name .price {
	color: var(--yasoudo-accent, #c8102e);
	font-weight: 900;
	margin-left: 8px;
}
.yasou-pop-body {
	font-size: 1.05rem;
	margin: 0 0 16px;
	line-height: 1.95;
}

/* 殴り書きの星 */
.yasou-pop-stars {
	border-top: 2px dashed #bbb;
	border-bottom: 2px dashed #bbb;
	padding: 10px 4px;
	margin: 0 0 16px;
}
.yasou-pop-stars .row {
	display: flex;
	justify-content: space-between;
	font-size: 1rem;
	padding: 3px 0;
}
.yasou-pop-stars .stars {
	color: var(--yasoudo-accent, #c8102e);
	letter-spacing: 3px;
	white-space: nowrap;
}

/* カードのCTA（赤・全幅） */
.yasou-pop-cta {
	display: block;
	background: var(--yasoudo-accent, #c8102e);
	color: #fff !important;
	text-align: center;
	font-weight: 900;
	font-size: .95rem;
	padding: 13px;
	text-decoration: none !important;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 3px 3px 0 var(--yasoudo-ink, #1a1a1a);
	transition: transform .1s ease, box-shadow .1s ease;
}
.yasou-pop-cta:hover {
	transform: translate(1px, 1px);
	box-shadow: 2px 2px 0 var(--yasoudo-ink, #1a1a1a);
}

/* --- 締めの黒板POP --- */
.yasou-pop-closing {
	background: var(--yasoudo-ink, #1a1a1a);
	color: #fff;
	border: 3px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 8px 8px 0 rgba(200, 16, 46, .9);
	padding: 28px 24px;
	text-align: center;
	margin: 48px 0 28px;
	transform: rotate(-0.4deg);
}
.yasou-pop-closing .line1 {
	font-size: 1.4rem;
	color: var(--yasoudo-pop, #ffe600);
	margin: 0 0 8px;
}
.yasou-pop-closing .line2 {
	font-size: .92rem;
	color: #ddd;
	margin: 0;
}

/* --- 4位以下の一覧見出し（POP風味） --- */
.yasou-pop-list-title {
	font-size: 1.2rem;
	font-weight: 400;
	border-left: 6px solid var(--yasoudo-accent, #c8102e);
	padding-left: 12px;
	margin: 0 0 18px;
}

/* --- スマホ --- */
@media (max-width: 600px) {
	.yasou-pop-board-title { font-size: 1.5rem; }
	.yasou-pop-headline { font-size: 1.2rem; }
	.yasou-pop-headline .big { font-size: 1.45rem; }
	.yasou-pop-img img { max-width: 90%; }
	.yasou-pop-card-badge { width: 54px; height: 54px; font-size: .9rem; }
}

/* ===== 夜想堂 特集POPバッジ修正（末尾追記・2026-06-13 v21）===== */
/* 1〜3位の丸バッジが見出しに被る問題の解消＋バッジを大型化して目立たせる。
   v20の値を上書きするため!important使用（v20のスマホ用ルールにも勝つ必要がある）。 */

/* バッジ：大型化・文字も拡大・影を足して浮かせる */
.yasou-pop-card-badge {
	width: 78px !important;
	height: 78px !important;
	font-size: 1.3rem !important;
	top: -24px !important;
	left: -14px !important;
	box-shadow: 3px 3px 0 var(--yasoudo-ink, #1a1a1a);
}

/* カード内側の上余白を増やし、見出しをバッジの食い込み幅ぶん右へ＝被り解消 */
.yasou-pop-card-inner { padding-top: 36px !important; }
.yasou-pop-headline { padding-left: 80px; }

/* スマホ：バッジはやや小さく、見出しのずらし幅も追従 */
@media (max-width: 600px) {
	.yasou-pop-card-badge {
		width: 64px !important;
		height: 64px !important;
		font-size: 1.1rem !important;
		top: -20px !important;
	}
	.yasou-pop-headline { padding-left: 60px; }
}

/* ===== 夜想堂 特集POP・表彰台化＋リンク明示（末尾追記・2026-06-13 v22）===== */
/* ①1〜3位バッジを金銀銅＋王冠＋サイズ段差で「表彰台」にする（記事側でカードに
     .yasou-pop-card--1/--2/--3 を付与する前提）。
   ②商品名リンクを赤＋下線にして「押せる」ことを見た目で宣言する。 */

/* --- 共通：王冠を頭に載せる --- */
.yasou-pop-card--1 .yasou-pop-card-badge::before,
.yasou-pop-card--2 .yasou-pop-card-badge::before,
.yasou-pop-card--3 .yasou-pop-card-badge::before {
	content: "\1F451";
	position: absolute;
	left: 50%;
	transform: translateX(-50%) rotate(-10deg);
	line-height: 1;
}

/* --- 1位：金・最大 --- */
.yasou-pop-card--1 .yasou-pop-card-badge {
	width: 100px !important;
	height: 100px !important;
	font-size: 1.7rem !important;
	top: -30px !important;
	left: -16px !important;
	background: #ffd700 !important;
	color: var(--yasoudo-ink, #1a1a1a) !important;
}
.yasou-pop-card--1 .yasou-pop-card-badge::before { font-size: 30px; top: -24px; }
.yasou-pop-card--1 .yasou-pop-card-inner { padding-top: 44px !important; }
.yasou-pop-card--1 .yasou-pop-headline { padding-left: 100px; }

/* --- 2位：銀・中 --- */
.yasou-pop-card--2 .yasou-pop-card-badge {
	width: 84px !important;
	height: 84px !important;
	font-size: 1.4rem !important;
	top: -26px !important;
	background: #d9d9e0 !important;
	color: var(--yasoudo-ink, #1a1a1a) !important;
}
.yasou-pop-card--2 .yasou-pop-card-badge::before { font-size: 24px; top: -20px; }
.yasou-pop-card--2 .yasou-pop-headline { padding-left: 84px; }

/* --- 3位：銅・小 --- */
.yasou-pop-card--3 .yasou-pop-card-badge {
	width: 74px !important;
	height: 74px !important;
	font-size: 1.2rem !important;
	top: -22px !important;
	background: #c9803d !important;
	color: #fff !important;
}
.yasou-pop-card--3 .yasou-pop-card-badge::before { font-size: 20px; top: -17px; }
.yasou-pop-card--3 .yasou-pop-headline { padding-left: 76px; }

/* --- 商品名リンク：赤＋下線＝「押せる」の宣言（特集ベスト3） --- */
.yasou-pop-name { font-size: 1rem; }
.yasou-pop-name a {
	color: var(--yasoudo-accent, #c8102e) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
	font-weight: 900;
}
.yasou-pop-name a::after { content: " ↗"; font-size: .85em; }
.yasou-pop-name a:hover { background: var(--yasoudo-pop, #ffe600); }

/* --- 一覧行の商品名・記事名リンクも同じ宣言（特集4位以下＋ランキング記事共通） --- */
.yasou-rank-row .ttl a {
	color: var(--yasoudo-accent, #c8102e) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}
.yasou-rank-row .ttl a:hover { background: var(--yasoudo-pop, #ffe600); }

/* --- スマホ：段差は維持したまま一回り小さく --- */
@media (max-width: 600px) {
	.yasou-pop-card--1 .yasou-pop-card-badge { width: 80px !important; height: 80px !important; font-size: 1.35rem !important; top: -24px !important; }
	.yasou-pop-card--1 .yasou-pop-card-badge::before { font-size: 24px; top: -19px; }
	.yasou-pop-card--1 .yasou-pop-card-inner { padding-top: 36px !important; }
	.yasou-pop-card--1 .yasou-pop-headline { padding-left: 74px; }
	.yasou-pop-card--2 .yasou-pop-card-badge { width: 68px !important; height: 68px !important; font-size: 1.15rem !important; top: -20px !important; }
	.yasou-pop-card--2 .yasou-pop-card-badge::before { font-size: 19px; top: -15px; }
	.yasou-pop-card--2 .yasou-pop-headline { padding-left: 62px; }
	.yasou-pop-card--3 .yasou-pop-card-badge { width: 60px !important; height: 60px !important; font-size: 1rem !important; top: -18px !important; }
	.yasou-pop-card--3 .yasou-pop-card-badge::before { font-size: 16px; top: -13px; }
	.yasou-pop-card--3 .yasou-pop-headline { padding-left: 54px; }
}

/* ===== 夜想堂 アーカイブ目次（末尾追記・2026-06-13 v23）===== */
/* カテゴリ・タグの一覧ページを「目次の棚」にする。優劣なし・新しい順の横長カード。
   アーカイブテンプレート（query-title＋inherit付きクエリーループ）とセットで機能する。 */

/* --- 全体の余白 --- */
.yasou-archive {
	padding-top: 28px;
	padding-bottom: 60px;
}

/* --- 棚の名前（カテゴリ名・タグ名） --- */
.yasou-archive-title {
	font-size: 1.6rem !important;
	font-weight: 900 !important;
	border-left: 8px solid var(--yasoudo-accent, #c8102e);
	padding-left: 14px;
	margin: 0 0 6px !important;
}

/* --- 棚の口上（カテゴリ説明。管理画面で書けば出る・なければ非表示） --- */
.yasou-archive-desc {
	font-size: .9rem;
	color: #555;
	margin: 0 0 30px;
	padding-left: 22px;
}
.yasou-archive-desc:empty { display: none; }

/* --- 目次カード（横長・優劣なし） --- */
.yasou-archive-card {
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 4px 4px 0 var(--yasoudo-ink, #1a1a1a);
	margin: 0 0 22px !important;
	padding: 14px;
	gap: 18px !important;
	transition: transform .12s ease, box-shadow .12s ease;
}
.yasou-archive-card:hover {
	transform: translate(1px, 1px);
	box-shadow: 3px 3px 0 var(--yasoudo-ink, #1a1a1a);
}

/* サムネ（左・固定幅） */
.yasou-archive-thumb {
	flex: 0 0 220px;
	margin: 0 !important;
}
.yasou-archive-thumb img {
	width: 220px;
	height: 150px;
	object-fit: cover;
	display: block;
	border: 1px solid #ddd;
	border-radius: 4px;
}

/* 本文側 */
.yasou-archive-body { flex: 1 1 auto; min-width: 0; }

/* タイトル：赤＋下線の「押せる」宣言（v22のリンク作法と統一） */
.yasou-archive-card-title {
	font-size: 1.1rem !important;
	font-weight: 900 !important;
	line-height: 1.5 !important;
	margin: 6px 0 8px !important;
}
.yasou-archive-card-title a {
	color: var(--yasoudo-accent, #c8102e) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}
.yasou-archive-card-title a:hover { background: var(--yasoudo-pop, #ffe600); }

/* 抜粋 */
.yasou-archive-excerpt {
	font-size: .88rem;
	color: #555;
	line-height: 1.75;
	margin: 0 0 8px;
}
.yasou-archive-excerpt .wp-block-post-excerpt__more-link { display: none; }

/* 日付（鮮度の証明・控えめに） */
.yasou-archive-date {
	font-size: .72rem;
	color: var(--yasoudo-muted, #777);
}

/* --- ページ送り --- */
.yasou-archive-pagination {
	margin-top: 36px;
	font-weight: 700;
}
.yasou-archive-pagination a {
	color: var(--yasoudo-accent, #c8102e) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}
.yasou-archive-pagination .wp-block-query-pagination-numbers .current {
	background: var(--yasoudo-pop, #ffe600);
	border: 1.5px solid var(--yasoudo-ink, #1a1a1a);
	padding: 1px 9px;
}

/* --- 空の棚 --- */
.yasou-archive-empty {
	background: #fff;
	border: 2px dashed var(--yasoudo-ink, #1a1a1a);
	padding: 24px;
	text-align: center;
	font-weight: 700;
	color: #777;
}

/* --- スマホ：縦積み（サムネ全幅） --- */
@media (max-width: 600px) {
	.yasou-archive-card { flex-direction: column !important; gap: 10px !important; }
	.yasou-archive-thumb { flex: none; width: 100%; }
	.yasou-archive-thumb img { width: 100%; height: 180px; }
}

/* ===== 夜想堂 写真集（末尾追記・2026-06-13 v24）===== */
/* AIグラビア＝「夜想写真集」。記事内＝縦スクロールの写真集（大判画像＋黒帯キャプション）。
   カテゴリページ＝表紙が並ぶ本棚グリッド（専用テンプレート category-gravure とセット）。 */

/* --- 創刊の口上（記事冒頭） --- */
.yasou-book-intro {
	border-left: 6px solid var(--yasoudo-accent, #c8102e);
	padding: 4px 0 4px 16px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.9;
	margin: 20px 0 44px;
}

/* --- ページ（1枚＝1ページ） --- */
.yasou-book-page { margin: 0 0 44px; }
.yasou-book-num {
	font-size: .72rem;
	letter-spacing: 3px;
	color: #999;
	font-weight: 700;
	margin: 0 0 6px;
}
.yasou-book-page img,
.yasou-book-page video {
	width: 100%;
	height: auto;
	display: block;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	border-radius: 4px 4px 0 0;
	background: #000;
}
.yasou-book-cap {
	background: var(--yasoudo-ink, #1a1a1a);
	color: #fff;
	padding: 13px 16px;
	font-size: .98rem;
	line-height: 1.85;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	border-top: none;
	border-radius: 0 0 4px 4px;
}
.yasou-book-cap .y {
	color: var(--yasoudo-pop, #ffe600);
	font-weight: 700;
}

/* 動くページの帯（動画ページの目印） */
.yasou-book-motion {
	display: inline-block;
	background: var(--yasoudo-accent, #c8102e);
	color: #fff;
	font-size: .7rem;
	font-weight: 900;
	letter-spacing: 2px;
	padding: 1px 10px;
	border-radius: 999px;
	margin-left: 8px;
	vertical-align: middle;
}

/* --- 奥付（締め） --- */
.yasou-book-end {
	background: var(--yasoudo-ink, #1a1a1a);
	color: #ddd;
	padding: 26px 24px;
	text-align: center;
	border-radius: 6px;
	margin: 52px 0 28px;
}
.yasou-book-end .l1 {
	color: var(--yasoudo-pop, #ffe600);
	font-size: 1.2rem;
	font-weight: 900;
	margin: 0 0 8px;
}
.yasou-book-end .l2 {
	font-size: .9rem;
	margin: 0;
	line-height: 1.9;
}
.yasou-book-end a { color: var(--yasoudo-pop, #ffe600) !important; }

/* --- 本棚（カテゴリページの表紙グリッド） --- */
.yasou-bookshelf .wp-block-post-template {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}
.yasou-book-cover {
	background: #fff;
	border: 2px solid var(--yasoudo-ink, #1a1a1a);
	box-shadow: 5px 5px 0 var(--yasoudo-ink, #1a1a1a);
	padding: 8px 8px 10px;
	transition: transform .12s ease, box-shadow .12s ease;
}
.yasou-book-cover:hover {
	transform: translate(1px, 1px);
	box-shadow: 3px 3px 0 var(--yasoudo-ink, #1a1a1a);
}
.yasou-book-cover .wp-block-post-featured-image { margin: 0 !important; }
.yasou-book-cover .wp-block-post-featured-image img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	display: block;
	border-radius: 2px;
}
.yasou-book-cover-title {
	font-size: .82rem !important;
	font-weight: 700 !important;
	text-align: center;
	line-height: 1.5 !important;
	margin: 8px 2px 0 !important;
}
.yasou-book-cover-title a {
	color: var(--yasoudo-ink, #1a1a1a) !important;
	text-decoration: none !important;
}
.yasou-book-cover-title a:hover { color: var(--yasoudo-accent, #c8102e) !important; }

/* --- スマホ：本棚2列・ページ余白詰め --- */
@media (max-width: 600px) {
	.yasou-bookshelf .wp-block-post-template { grid-template-columns: repeat(2, 1fr); gap: 14px; }
	.yasou-book-page { margin-bottom: 32px; }
}

/* ===== 夜想堂 本文中CTAリンク（末尾追記・v_inline-cta_2026-06-16）===== */
/* 本文の転換点に置く、中央寄せの赤ピルボタン。末尾の四角い大CTAとは別物。 */
.yasou-inline-cta-wrap {
  text-align: center;
  margin: 22px 0;
}
.yasou-inline-cta {
  display: inline-block;
  background: #c8102e;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  padding: 10px 24px;
  border-radius: 999px;
  transition: background 0.15s ease, transform 0.1s ease;
}
.yasou-inline-cta:hover {
  background: #a00d25;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px);
}
.yasou-inline-cta:active {
  transform: translateY(0);
}
/* ===== 本文中CTAリンク ここまで ===== */

/* ===== 夜想堂 ギャラリー周辺の余白調整（末尾追記・v_gallery-space_v3_2026-06-16）===== */
/* 黄色noteは「次の章の見出し」。既存のverdict前の大余白ですら段落間に見えるため、 */
/* 章の境目とハッキリ分かるよう、その更に上のスケール（約90px）で区切る。 */
.yasou-gallery {
  margin: 48px 0 60px;
}
.yasou-gallery-hint {
  margin-top: 12px;
  margin-bottom: 0;
}
.yasou-gallery-note {
  margin-top: 90px;
  margin-bottom: 0;
}
/* ===== ギャラリー周辺の余白調整 ここまで ===== */

u actress 拡大 追記 · CSS
/* ===== 夜想堂 女優データ枠 名前・サイズ拡大（末尾追記・v_actress-big_2026-06-16）===== */
/* 名前とスリーサイズ/カップを枠の冒頭で目立たせる。既存定義（391/406行）を末尾追記で上書き。 */
.yasou-actress-name {
  font-size: 1.7rem;
  font-weight: 900;
  line-height: 1.3;
}
.yasou-actress-specs {
  margin-top: 10px;
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--yasoudo-accent, #c8102e);
  letter-spacing: .5px;
}
/* ===== 女優データ枠 名前・サイズ拡大 ここまで ===== */
 
/* ===== 夜想堂 検索窓（ヘッダー＋フッター・末尾追記・v_search_2026-06-16）===== */
/* 黒背景に馴染む黄ピル検索窓。PC/スマホで崩れないようflex-wrap・width明示。 */

/* --- 共通：黄ピルの検索フォーム --- */
.yasou-header-search .wp-block-search__inside-wrapper,
.yasou-footer-search .wp-block-search__inside-wrapper {
  display: flex;
  align-items: center;
  background: transparent;
  border: 1px solid var(--yasoudo-pop, #ffe600);
  border-radius: 999px;
  padding: 3px 4px 3px 14px;
  overflow: hidden;
}
.yasou-header-search .wp-block-search__input,
.yasou-footer-search .wp-block-search__input {
  background: transparent;
  border: none;
  outline: none;
  color: var(--yasoudo-pop, #ffe600);
  font-size: 14px;
  padding: 6px 4px;
  min-width: 0;
}
.yasou-header-search .wp-block-search__input::placeholder,
.yasou-footer-search .wp-block-search__input::placeholder {
  color: rgba(255, 230, 0, 0.6);
}
.yasou-header-search .wp-block-search__button,
.yasou-footer-search .wp-block-search__button {
  background: var(--yasoudo-pop, #ffe600);
  color: var(--yasoudo-ink, #1a1a1a);
  border: none;
  border-radius: 999px;
  font-weight: 700;
  font-size: 13px;
  padding: 7px 16px;
  margin: 0;
  cursor: pointer;
  white-space: nowrap;
}
.yasou-header-search .wp-block-search__button:hover,
.yasou-footer-search .wp-block-search__button:hover {
  background: #ffef4d;
}

/* --- ヘッダー：ナビ右に置く。幅は固定気味 --- */
.yasou-header-search {
  flex: 0 0 auto;
  margin-left: 10px;
}
.yasou-header-search .wp-block-search__input {
  width: 150px;
}

/* --- フッター：上部に1段、中央寄せ --- */
.yasou-footer-search {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 0 0 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(255, 230, 0, 0.25);
}
.yasou-footer-search .wp-block-search__input {
  width: 320px;
  max-width: 60vw;
}

/* --- スマホ：崩れ対策。ヘッダーは検索窓を次の段に全幅で折り返す --- */
@media (max-width: 700px) {
  .yasou-header-search {
    flex: 1 1 100%;
    margin-left: 0;
    margin-top: 10px;
    order: 99; /* ナビの後ろ＝下の段へ */
  }
  .yasou-header-search .wp-block-search__inside-wrapper {
    width: 100%;
  }
  .yasou-header-search .wp-block-search__input {
    width: 100%;
    flex: 1 1 auto;
  }
  .yasou-footer-search .wp-block-search__input {
    width: 100%;
    max-width: none;
  }
  .yasou-footer-search .wp-block-search__inside-wrapper {
    width: 100%;
  }
}
/* ===== 検索窓 ここまで ===== */

/* ===== 夜想堂 ヘッダー2段化＋AVスロット（末尾追記・v_header-row2_v3_2026-06-17）===== */
/* 1段目=ロゴ+ナビ（既存）。2段目(.yasou-header-row2)=左AVスロット＋右に横長検索窓。
   v3修正：
     ① 左端＝固定300pxをやめ「ロゴ列幅」と同じ余白に。ロゴ(336px)+1段目gap(24px)=ランキング左端。
        row2も spacer(=ロゴ幅) + gap(24px) で同じ位置から始まり、ナビ「ランキング」と構造的に揃う。
     ② コア :where(.is-layout-flow) > * の margin-block-start:1.2rem を打ち消し（検索窓だけ下にズレる原因）。
     ③ 検索窓は max-width で右端を調整（横長だが長すぎない）。 */

/* ロゴSVGの実幅。ロゴを差し替えたら基本ここだけ直せば左端揃えが追従する */
:root { --yasou-logo-w: 336px; }

/* 2段目の行 */
.yasou-header-row2 {
  display: flex;
  align-items: center;       /* AVスロットと検索窓の縦中央を揃える */
  gap: 24px;                 /* 1段目のロゴ↔ナビ間(blockGap=24px)と同値。spacer+この値=ランキング左端 */
  margin-top: 6px;           /* 1段目との段間 */
  padding-left: 0;
}

/* ② コアの flow 余白を打ち消す（検索窓が約19px下がる縦ズレの除去）。
   gap で間隔を取るので子の上マージンは不要 */
.yasou-header-row2 > * {
  margin-block-start: 0;
  margin-top: 0;
}

/* ① 左端をランキングに合わせる：固定マジック値ではなく「ロゴ列幅」と同じ余白。
   spacer(=ロゴ幅336px) + gap(24px) = 360px = 1段目「ランキング」の左端 */
.yasou-header-row2::before {
  content: "";
  flex: 0 0 auto;
  width: var(--yasou-logo-w, 336px);
}

/* ===== 夜想堂 ヘッダー2段化＋AVスロット（末尾追記・v_header-row2_v4_2026-06-17）===== */
/* 1段目=ロゴ+ナビ（既存）。2段目(.yasou-header-row2)=左AVスロット＋右に横長検索窓。
   v4修正：検索窓の左端/右端を1段目ナビに合わせる。
     ・AVスロット左端＝ランキング左端：spacer(=ロゴ幅336px)+gap(24px)=360px（現状維持・変更なし）
     ・検索窓は flex の流れから外して absolute 配置にし、
         左端 = --yasou-search-left（1段目「AIグラビア」左端＝実測585px）
         幅   = --yasou-search-width（右端が「お問い合わせ」右端＝実測948px になる幅363px）
       の2ノブで独立に調整（AVスロットの幅に影響されない）。
     ・原点は alignwide 左端。ランキング/AIグラビア/お問い合わせと同じ座標系。
   ※実測値は PC幅(ナビ23px)・Manrope+Yu Gothic前提。実ブラウザで微調整する場合は下記2変数だけ動かす。 */

/* ロゴSVGの実幅。ロゴを差し替えたらここだけ直す（AVスロット左端揃えが追従） */
:root {
  --yasou-logo-w: 336px;
  /* ▼検索窓の2ノブ（alignwide左端からの距離）。PCで合わせる ▼ */
  --yasou-search-left: 585px;   /* ★検索窓の【左端】。1段目「AIグラビア」左端に合わせる。増=右へ／減=左へ */
  --yasou-search-width: 363px;  /* ★検索窓の【幅】。右端=左端+この幅。お問い合わせ右端(≈948px)に合わせる。増=右端を右へ */
}

/* 2段目の行（AVスロットは従来どおり flex で左端=ランキングに揃える） */
.yasou-header-row2 {
  position: relative;          /* 検索窓の absolute 配置の基準 */
  display: flex;
  align-items: center;
  gap: 24px;                   /* 1段目のロゴ↔ナビ間と同値。spacer(ロゴ幅)+この値=ランキング左端 */
  margin-top: 6px;
  padding-left: 0;
}

/* コアの :where(.is-layout-flow) > * の margin-block-start:1.2rem を打ち消す（縦ズレ防止） */
.yasou-header-row2 > * {
  margin-block-start: 0;
  margin-top: 0;
}

/* AVスロット左端＝ランキング左端：ロゴ列ぶんの余白（固定px不使用・ロゴ幅変数） */
.yasou-header-row2::before {
  content: "";
  flex: 0 0 auto;
  width: var(--yasou-logo-w, 336px);
}

/* --- AVスロットメニュー：ナビと同じ黄枠ボタン。文字は黄色を強制（親テーマのwhiteに勝つ） --- */
.yasou-header-row2 a.yasou-avslot-menu,
.wp-site-blocks header .yasou-header-row2 a.yasou-avslot-menu,
header.wp-block-template-part .yasou-header-row2 a.yasou-avslot-menu {
  position: relative;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  background: transparent;
  color: var(--yasoudo-pop, #ffe600) !important;   /* 文字を黄色に強制 */
  border: 1px solid var(--yasoudo-pop, #ffe600);
  border-radius: 6px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  padding: 8px 18px;
  text-decoration: none !important;
  white-space: nowrap;
  line-height: 1.4;
  transition: background .15s ease, color .15s ease;
}
.yasou-header-row2 a.yasou-avslot-menu:hover,
.wp-site-blocks header .yasou-header-row2 a.yasou-avslot-menu:hover,
header.wp-block-template-part .yasou-header-row2 a.yasou-avslot-menu:hover {
  background: var(--yasoudo-pop, #ffe600);
  color: var(--yasoudo-ink, #1a1a1a) !important;
}

/* --- ★イチオシ バッジ：黄背景・黒文字・右上に外へ飛び出す・少し傾ける --- */
.yasou-avslot-badge {
  position: absolute;
  top: -13px;
  right: -22px;
  background: var(--yasoudo-pop, #ffe600);
  color: var(--yasoudo-ink, #1a1a1a) !important;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .5px;
  padding: 2px 9px;
  border-radius: 999px;
  transform: rotate(8deg);
  white-space: nowrap;
  box-shadow: 0 1px 4px rgba(0,0,0,.4);
}

/* --- 2段目の検索窓：左端=AIグラビア／右端=お問い合わせ に合わせて絶対配置。高さはAVスロットと中央揃え --- */
.yasou-header-row2 .yasou-header-search {
  position: absolute;
  left: var(--yasou-search-left, 585px);
  top: 50%;
  transform: translateY(-50%);                 /* AVスロットと縦中央を揃える */
  width: var(--yasou-search-width, 363px);
  max-width: calc(100% - var(--yasou-search-left, 585px)); /* 狭い画面でも右端からはみ出さない安全策 */
  margin-left: 0;
}
.yasou-header-row2 .yasou-header-search .wp-block-search__inside-wrapper {
  width: 100%;
  padding-top: 2px;
  padding-bottom: 2px;       /* AVスロット（上下8px+文字）と高さを近づける */
}
.yasou-header-row2 .yasou-header-search .wp-block-search__input {
  width: 100%;
  flex: 1 1 auto;
}

/* --- スマホ：絶対配置を解除・字下げ解除・縦積み・検索窓全幅 --- */
@media (max-width: 700px) {
  .yasou-header-row2 {
    flex-wrap: wrap;
    gap: 12px;
    padding-left: 0;
    position: static;          /* 基準解除 */
  }
  .yasou-header-row2::before {
    display: none;
  }
  .yasou-avslot-menu {
    flex: 0 0 auto;
  }
  .yasou-header-row2 .yasou-header-search {
    position: static;          /* 絶対配置を解除して通常フローへ */
    left: auto;
    top: auto;
    transform: none;
    width: 100%;
    max-width: none;
    flex: 1 1 100%;
  }
}
/* ===== ヘッダー2段化＋AVスロット ここまで ===== */

/* ===== 夜想堂 フッターAVスロット行（末尾追記・v_footer-avslot_v1_2026-06-17）===== */
/* フッター上部の検索段を「AVスロット（左）＋検索窓（右）」の中央寄せ1行にする。
   AVスロットのボタン装飾はヘッダーと同値をフッタースコープで再定義（ヘッダーCSSは流用不可なため）。
   バッジ(.yasou-avslot-badge)はグローバル定義を流用。ヘッダー側のCSSには一切触れない。 */

/* 検索段＝中央寄せの横並び行（既存 .yasou-footer-search の display:flex / justify-content:center に追記） */
.yasou-footer-search {
  align-items: center;       /* AVスロットと検索窓の縦中央を揃える */
  gap: 18px;                 /* AVスロットと検索窓の間隔 */
  flex-wrap: wrap;           /* 狭い画面では縦積みへ折り返す */
}
/* コアの flow 余白（:where(.is-layout-flow)>*{margin-block-start:1.2rem}）を打ち消し縦ズレ防止 */
.yasou-footer-search > * {
  margin-block-start: 0;
  margin-top: 0;
}

/* --- フッターのAVスロットメニュー：ヘッダーと同じ黄枠ボタン（フッタースコープで再定義） --- */
.yasou-footer-search a.yasou-avslot-menu,
.wp-site-blocks footer .yasou-footer-search a.yasou-avslot-menu,
footer.wp-block-template-part .yasou-footer-search a.yasou-avslot-menu {
  position: relative;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  background: transparent;
  color: var(--yasoudo-pop, #ffe600) !important;   /* 文字を黄色に強制（親テーマのリンク色に勝つ） */
  border: 1px solid var(--yasoudo-pop, #ffe600);
  border-radius: 6px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  padding: 8px 18px;
  text-decoration: none !important;
  white-space: nowrap;
  line-height: 1.4;
  transition: background .15s ease, color .15s ease;
}
.yasou-footer-search a.yasou-avslot-menu:hover,
.wp-site-blocks footer .yasou-footer-search a.yasou-avslot-menu:hover,
footer.wp-block-template-part .yasou-footer-search a.yasou-avslot-menu:hover {
  background: var(--yasoudo-pop, #ffe600);
  color: var(--yasoudo-ink, #1a1a1a) !important;
}

/* 検索窓の高さをAVスロットに近づける（ヘッダーと同じ詰め） */
.yasou-footer-search .wp-block-search__inside-wrapper {
  padding-top: 2px;
  padding-bottom: 2px;
}

/* --- スマホ：縦積み・中央寄せ（検索窓の全幅化は既存 @media の footer ルールが担当） --- */
@media (max-width: 700px) {
  .yasou-footer-search {
    gap: 12px;
  }
  .yasou-footer-search a.yasou-avslot-menu {
    flex: 0 0 auto;            /* バッジ付きボタンは縮めず、上段中央に */
  }
}
/* ===== フッターAVスロット行 ここまで ===== */

/* ===== 夜想堂 ヘッダー縦余白＋フッター調整（末尾追記・v25_2026-06-17）===== */
/* 直すこと：①ヘッダー2段目の下に余白を足す②フッター検索窓を短く・間隔広げる */

/* ① ヘッダー2段目の下に余白（黄色ボーダーとの間。今0でキチキチ） */
.yasou-header-row2 {
  margin-top: 12px;
  margin-bottom: 20px;   /* ★下の余白。キチキチなら増やす */
}

/* ② フッター：検索窓を短く・AVスロットとの間隔を広げる */
.yasou-footer-search {
  gap: 36px;             /* ★AVスロットと検索窓の間隔。詰まりすぎなら増やす */
}
.yasou-footer-search .wp-block-search__input {
  width: 280px;          /* ★フッター検索窓の幅。長すぎなら減らす */
  max-width: 60vw;
}
/* ===== ヘッダー縦余白＋フッター調整 ここまで ===== */

/* ===== 夜想堂 ヘッダーナビ スマホ全項目表示（overlayMenu:never併用・v_navmobile_v1_2026-06-17）===== */
@media (max-width: 700px) {
  header.wp-block-template-part .wp-block-navigation,
  header.wp-block-template-part .wp-block-navigation__container {
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin-left: 0 !important;
    row-gap: 8px;
  }
}
/* ===== ヘッダーナビ スマホ全項目表示 ここまで ===== */

/* ===== 夜想堂 AVスロット（/av-slot/・末尾追記・v_avslot_v1_2026-06-17）===== */
/* ガチャ風スロットページ。黒地×黄×赤。スマホ最優先（モバイルが基準、PCはmin-widthで微調整）。
   配色ノブ：--yasoudo-pop(黄) / --yasoudo-ink(黒) / --yasoudo-accent(赤) は既存テーマ変数を流用。 */

.yasou-slot {
  max-width: 560px;
  margin: 0 auto;
  padding: 8px 16px 40px;
  text-align: center;
  color: #fff;
}

/* 見出し */
.yasou-slot-title {
  font-size: clamp(28px, 8vw, 40px);
  font-weight: 900;
  letter-spacing: 2px;
  color: var(--yasoudo-pop, #ffe600);
  margin: 8px 0 4px;
  line-height: 1.1;
}
.yasou-slot-title .yasou-slot-badge { color: var(--yasoudo-accent, #c8102e); margin-right: 6px; }
.yasou-slot-sub {
  color: #cfcfcf;
  font-size: 14px;
  margin: 0 0 18px;
}

/* フェチコイン（タグ選択） */
.yasou-slot-coins {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 18px;
}
.yasou-slot-coin {
  appearance: none;
  background: transparent;
  color: var(--yasoudo-pop, #ffe600);
  border: 1.5px solid var(--yasoudo-pop, #ffe600);
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  padding: 7px 15px;
  cursor: pointer;
  transition: background .12s ease, color .12s ease, transform .08s ease;
}
.yasou-slot-coin:hover { background: rgba(255,230,0,.15); }
.yasou-slot-coin.is-active {
  background: var(--yasoudo-pop, #ffe600);
  color: var(--yasoudo-ink, #1a1a1a);
}
.yasou-slot-coin:active { transform: translateY(1px); }

/* スロット窓 */
.yasou-slot-window {
  position: relative;
  width: 100%;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0d0d0d;
  border: 4px solid var(--yasoudo-pop, #ffe600);
  border-radius: 16px;
  box-shadow: inset 0 0 40px rgba(0,0,0,.8), 0 0 0 2px #000, 0 10px 30px rgba(0,0,0,.5);
  overflow: hidden;
  padding: 14px;
}

/* リール（回す前/抽選中の表示） */
.yasou-slot-reel {
  display: flex;
  flex-direction: column;
  gap: 24px;
  font-size: 72px;
  font-weight: 900;
  color: var(--yasoudo-pop, #ffe600);
  line-height: 1;
}
.yasou-slot-window.is-spinning .yasou-slot-reel {
  animation: yasou-slot-roll .18s linear infinite;
  filter: blur(1.5px);
}
@keyframes yasou-slot-roll {
  from { transform: translateY(0); }
  to   { transform: translateY(-96px); }
}

/* 抽選結果 */
.yasou-slot-result { width: 100%; }
.yasou-slot-img {
  width: 100%;
  max-height: 360px;
  object-fit: contain;
  border-radius: 8px;
  display: block;
  margin: 0 auto 12px;
}
.yasou-slot-name {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.5;
}

/* メッセージ（抽選中／作品が少ない／エラー） */
.yasou-slot-msg {
  min-height: 20px;
  color: var(--yasoudo-pop, #ffe600);
  font-size: 13px;
  margin: 12px 0 0;
}

/* 操作ボタン */
.yasou-slot-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
}
.yasou-slot-spin {
  appearance: none;
  width: 100%;
  max-width: 320px;
  background: var(--yasoudo-pop, #ffe600);
  color: var(--yasoudo-ink, #1a1a1a);
  border: none;
  border-radius: 999px;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: 1px;
  padding: 15px 24px;
  cursor: pointer;
  box-shadow: 0 4px 0 #b9a800;
  transition: transform .08s ease, box-shadow .08s ease, background .12s ease;
}
.yasou-slot-spin:hover { background: #ffef4d; }
.yasou-slot-spin:active { transform: translateY(3px); box-shadow: 0 1px 0 #b9a800; }
.yasou-slot-spin:disabled { opacity: .6; cursor: default; box-shadow: 0 4px 0 #b9a800; }

.yasou-slot-review {
  display: inline-block;
  color: #fff !important;
  background: var(--yasoudo-accent, #c8102e);
  border-radius: 999px;
  font-size: 16px;
  font-weight: 700;
  padding: 12px 24px;
  text-decoration: none !important;
  transition: filter .12s ease;
}
.yasou-slot-review:hover { filter: brightness(1.12); }

/* PC：少しゆとり */
@media (min-width: 768px) {
  .yasou-slot { padding-top: 24px; }
  .yasou-slot-window { min-height: 380px; }
  .yasou-slot-img { max-height: 460px; }
  .yasou-slot-actions { flex-direction: row; justify-content: center; }
  .yasou-slot-spin { width: auto; min-width: 220px; }
}
/* ===== AVスロット ここまで ===== */

/* ===== 夜想堂 AVスロット 配色微修正（クリーム背景対応・末尾追記・v_avslot_color_2026-06-17）===== */
/* スロットページはクリーム地(--yasoudo-paper #f4f1ea)。黒地前提だった文字色だけ濃色化。
   サイズ・配置・演出・スロット窓の中身・見出し・選択中(is-active)は一切変更しない。色のみ。 */

/* 未選択コイン：クリーム地で読めるよう文字・枠線を濃色に */
.yasou-slot-coin {
  color: var(--yasoudo-ink, #1a1a1a);
  border-color: var(--yasoudo-ink, #1a1a1a);
}
/* ホバー：黄薄→濃グレー薄に（クリーム地で見える） */
.yasou-slot-coin:hover {
  background: rgba(26, 26, 26, .08);
}
/* 選択中は従来どおり（黄ベタ#ffe600＋黒文字＋黄枠）。枠色だけ元の黄に戻して見た目を固定 */
.yasou-slot-coin.is-active {
  border-color: var(--yasoudo-pop, #ffe600);
}

/* サブ説明：薄グレー#cfcfcf → 濃いグレー（クリーム地で読める） */
.yasou-slot-sub {
  color: #555;
}
/* ===== AVスロット 配色微修正 ここまで ===== */

/* ===== 夜想堂 ヘッダー スマホ/タブレット段積み（フッター式・末尾追記・v_header-stack_v1_2026-06-17）===== */
/* PC(≥1101px)は現行の横2段を一切変更しない。≤1100pxで絶対配置を解除しフッター式の縦積みへ。
   1100pxは検索窓の絶対右端(948px)が収まる最小幅。701〜1100の破綻帯もここで段積みに入る。 */
@media (max-width: 1100px) {
  /* row1（ロゴ＋ナビ）＝縦積み・中央 */
  header.wp-block-template-part .wp-block-group.alignwide:not(.yasou-header-row2) {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    row-gap: 12px;
    padding-right: 0 !important;           /* PC用 padding-right:12px の打ち消し */
  }
  /* ロゴ336px固定をやめ画面に合わせ縮小 */
  header.wp-block-template-part .yasoudo-logo svg { max-width: 78vw; height: auto; }
  /* ナビ：右寄せ(PC)解除→中央＋折返し */
  header.wp-block-template-part .wp-block-navigation,
  header.wp-block-template-part .wp-block-navigation__container {
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin-left: 0 !important;
    row-gap: 8px;
  }
  /* row2：絶対配置を解除して縦積み（フッター検索段と同じ挙動） */
  .yasou-header-row2 {
    position: static !important;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding-left: 0;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 230, 0, .25);  /* フッター式の段の区切り線（任意） */
  }
  .yasou-header-row2::before { display: none !important; }   /* ロゴ列ぶんの字下げ無効化 */
  .yasou-header-row2 .yasou-header-search {
    position: static !important;
    left: auto !important; top: auto !important; transform: none !important;
    width: 100% !important;
    max-width: 420px !important;   /* ★検索窓が広がりすぎない上限。お好みで増減 */
  }
}
/* ===== ヘッダー スマホ/タブレット段積み ここまで ===== */

/* ===== 夜想堂 AVスロット 品の調整（末尾追記・v_avslot_calm_2026-06-17）===== */
/* 静かで洗練されたトーン。光沢・グラデ・inset影・黒ボックスは一切なし。 */


/* ② サブフレーズ：控えめなまま“一回り”だけ大きく（クリーム地に馴染む濃グレー） */
.yasou-slot-sub {
  color: #555;
  font-size: clamp(15px, 3.8vw, 17px);   /* 14px → ほんの少し大きく。派手にしない */
  font-weight: 400;
  letter-spacing: .3px;
  line-height: 1.65;
}

/* ③ コイン：フラットで上品なチップ。細枠＋無地＋丸み（光沢/グラデ/影なし） */
.yasou-slot-coin {
  min-width: 3.4em;            /* 短いラベル（OL/NTR）も丸みのある円盤寄りに */
  padding: .6em 1.05em;
  background: transparent;
  color: var(--yasoudo-ink, #1a1a1a);
  border: 1.5px solid var(--yasoudo-ink, #1a1a1a);
  border-radius: 999px;
  font-weight: 700;
  letter-spacing: .5px;
}
.yasou-slot-coin:hover {
  background: rgba(26, 26, 26, .06);   /* ごく薄い陰影だけ（フラット） */
}
.yasou-slot-coin.is-active {
  background: var(--yasoudo-ink, #1a1a1a);   /* 選択中＝黒地に黄文字（フラットで品よく） */
  color: var(--yasoudo-pop, #ffe600);
  border-color: var(--yasoudo-ink, #1a1a1a);
}
/* ===== AVスロット 品の調整 ここまで ===== */

/* ===== 夜想堂 AVスロット 見出しマーカー（案C・末尾追記・v_avslot_titlemark_2026-06-17）===== */
/* 「★AVスロット」を黒文字＋黄マーカーに。クリーム背景でくっきり。星(赤)含む見出し全体にマーカー。
   既存の .yasou-slot-title（黄文字）を後方配置で上書き。 */
.yasou-slot-title {
  display: inline;                                  /* テキスト幅にマーカーを密着＋親(text-align:center)で中央 */
  color: var(--yasoudo-ink, #1a1a1a);               /* 黒文字（黄→黒に上書き＝薄すぎ解消） */
  background: linear-gradient(transparent 55%, var(--yasoudo-pop, #ffe600) 55%);
  /* ↑ 55% = 黄マーカーの開始位置。値を下げる(例45%)＝黄が太くなる／上げる(例65%)＝細くなる */
  -webkit-box-decoration-break: clone;              /* 改行しても各行のテキストにマーカーが付く */
  box-decoration-break: clone;
  -webkit-text-stroke: 0;                           /* 直近の縁取りCSSが残っていても無効化 */
  padding: .06em .18em;                             /* マーカーの左右の余白（お好みで） */
  line-height: 1.45;                                /* 改行時の帯の重なり方。詰めたい→値↓ */
}
/* 先頭の赤星は赤のまま（既存 .yasou-slot-badge を維持）。マーカーは星の背面も通る＝全体に自然にかかる */
.yasou-slot-title .yasou-slot-badge {
  color: var(--yasoudo-accent, #c8102e);
}
/* ===== AVスロット 見出しマーカー ここまで ===== */

/* ===== 夜想堂 サンプル動画 [yasou_movie]（末尾追記・v_movie_v1_2026-06-20）===== */
/* FANZAサンプル動画の埋め込み枠。女優データ枠の「おすすめショット」の位置に置く想定。
   560:360のアスペクト比を保ったレスポンシブ枠。黄枠で既存のおすすめショット静止画と馴染ませる。 */
.yasou-movie {
  margin: 14px 0;
}
.yasou-movie-frame {
  position: relative;
  width: 100%;
  padding-top: 64.28%;   /* 360 / 560 = 64.28%（動画の縦横比を維持） */
  border: 2px solid var(--yasoudo-pop, #ffe600);
  border-radius: 8px;
  overflow: hidden;
}
.yasou-movie-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
/* ===== サンプル動画 ここまで ===== */

/* ===== 夜想堂 サンプル動画 枠サイズ修正（末尾追記・v_movie_v2_2026-06-21）===== */
/* litevideoプレイヤーはタイトル帯＋コントロールバーを含むため縦に長い。
   padding-top 64.28%→85% に広げ、全画面ボタン等が枠内に収まるようにする。 */
.yasou-movie-frame {
  padding-top: 75%;
}
/* ===== サンプル動画 枠サイズ修正 ここまで ===== */

/* ===== 夜想堂 サンプル動画 枠なし・黒地版（末尾追記・v_movie_v3_2026-06-21）===== */
/* 黄色い枠を消し、背景を黒に。余白が出てもプレイヤーの黒背景と繋がって目立たない。
   枠線が無いのでデバイス間のサイズのズレも気にならなくなる。 */
.yasou-movie-frame {
  border: none;          /* 黄色い枠を消す */
  background: #000;      /* 余白を黒で吸収（プレイヤー背景と同色） */
  padding-top: 85%;      /* 大きめにして、どのデバイスでもはみ出さない（全画面ボタンが押せる） */
  border-radius: 6px;
}
/* ===== サンプル動画 枠なし・黒地版 ここまで ===== */

/* ===== 夜想堂 サンプル動画 枠サイズ強制上書き（末尾追記・v_movie_v4_2026-06-21）===== */
/* 過去のv2/v3指定や!importantと競合しても確実に勝つよう、詳細度を上げ!important付与。 */
.yasou-movie .yasou-movie-frame {
  padding-top: 80% !important;
  border: none !important;
  background: #000 !important;
}
/* ===== ここまで ===== */

/* ===== 夜想堂 「こんな人に刺さる」見出し強化（末尾追記・v_fit-head_2026-06-22）===== */
/* SEOエースのコーナー見出しが本文に埋もれて見えないため、中央寄せ・拡大・区切り線で「コーナー」として目立たせる。 */
.yasou-fit h4 {
  font-size: 1.5rem !important;
  font-weight: 900 !important;
  text-align: center !important;
  margin: 0 0 16px !important;
  padding-bottom: 12px;
  border-bottom: 3px solid var(--yasoudo-accent, #c8102e);
  letter-spacing: 1px;
  color: var(--yasoudo-ink, #1a1a1a);
}
/* ===== 「こんな人に刺さる」見出し強化 ここまで ===== */

/* ===== 夜想堂 プロフィール③素人型表示（末尾追記・v_amateur_v2_2026-06-23）===== */
.yasou-actress-imagine .yasou-amateur-note {
  text-align: center !important;
  font-size: 1.5rem !important;
  font-weight: 900 !important;
  color: var(--yasoudo-ink, #1a1a1a) !important;
  line-height: 1.6 !important;
  padding: 18px 0 !important;
  margin: 0 !important;
}
/* ===== プロフィール③素人型表示 ここまで ===== */

/* ===== 夜想堂 夜想の一言（末尾追記・v_verdict_v8_2026-06-23・9字固定でサイズ拡大）===== */
/* 一言9字固定が確定したので、12 miniで9字＋点数が1行に収まる範囲でサイズを拡大。
   折り返し・枠の高さ自動は保険として維持（万一10字以上でもはみ出さない）。 */
.yasou-verdict {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding-top: 16px !important;
  padding-bottom: 18px !important;
}
.yasou-verdict .yasou-verdict-line {
  text-align: center !important;
  line-height: 1.4 !important;
  margin-top: 8px !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
}
.yasou-verdict .yasou-verdict-score {
  font-size: clamp(1.5rem, 6vw, 2.6rem) !important;
  font-weight: 900 !important;
  color: var(--yasoudo-accent, #c8102e) !important;
  margin-right: 16px !important;
}
.yasou-verdict .yasou-verdict-word {
  font-size: clamp(1.5rem, 6vw, 2.6rem) !important;
  font-weight: 900 !important;
  color: var(--yasoudo-ink, #1a1a1a) !important;
}
.yasou-verdict .yasou-verdict-body { display: none !important; }
/* ===== 夜想の一言 ここまで ===== */

/* ===== 夜想堂 サンプル動画 実寸＋スマホ縮小（末尾追記・v_movie_v7_2026-07-02）===== */
/* プレイヤーは560×360固定描画（litevideo仕様・最小476のためスマホ幅に収まらない）。
   PC（560px以上）：枠を実寸560×360に合わせ中央寄せ＝余白ゼロ（v6で確認済み・維持）。
   スマホ（560px未満）：コンテナクエリ単位cqwで、560px幅のプレイヤー全体を
   枠幅に合わせて丸ごと縮小。切り抜きではなく縮小なので、
   シークバー・ミュート・最大化ボタンが全デバイスで必ず押せる。 */

/* --- 共通：枠をコンテナ化 --- */
.yasou-movie .yasou-movie-frame {
  container-type: inline-size;
  max-width: 560px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: 0 !important;
  height: 360px !important;
  border: none !important;
  background: #000 !important;
  border-radius: 6px;
  overflow: hidden;
  position: relative;
}
.yasou-movie .yasou-movie-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 560px !important;
  height: 360px !important;
}

/* --- スマホ（枠が560pxより狭くなった時）：プレイヤーを枠幅に縮小 --- */
@media (max-width: 559px) {
  .yasou-movie .yasou-movie-frame {
    height: auto !important;
    aspect-ratio: 560 / 360;   /* 高さは幅に比例して自動追従 */
  }
  .yasou-movie .yasou-movie-frame iframe {
    transform-origin: top left;
    /* 100cqw = 枠の現在幅。それを560pxで割った倍率で丸ごと縮小 */
    transform: scale(calc(100cqw / 560px));
  }
}
/* ===== サンプル動画 実寸＋スマホ縮小 ここまで ===== */

/* ── 特集メリハリ用（yasou-feat系・2026-07-05新設） ── */
.yasou-feat-hero{background:var(--yasoudo-yellow,#f7c600);border:3px solid var(--yasoudo-ink,#141414);box-shadow:8px 8px 0 var(--yasoudo-ink,#141414);padding:28px 20px;margin:1.5em 0;}
.yasou-feat-hero .big{display:block;font-size:clamp(34px,8vw,64px);font-weight:900;line-height:1.25;letter-spacing:.02em;}
.yasou-feat-hero .sub{display:block;margin-top:10px;font-size:15px;font-weight:700;}
.yasou-feat-numbers{display:flex;gap:10px;margin:1.5em 0;}
.yasou-feat-numbers .num{flex:1;background:#fffdf7;border:3px solid var(--yasoudo-ink,#141414);box-shadow:5px 5px 0 var(--yasoudo-ink,#141414);text-align:center;padding:16px 6px;}
.yasou-feat-numbers .num .v{display:block;font-size:clamp(26px,6vw,44px);font-weight:900;line-height:1.1;color:var(--yasoudo-accent,#c8102e);}
.yasou-feat-numbers .num .k{display:block;margin-top:6px;font-size:12px;font-weight:700;color:#4a4538;}
.yasou-feat-h2{font-size:clamp(26px,6vw,42px);font-weight:900;line-height:1.3;margin:1.6em 0 .6em;border-left:8px solid var(--yasoudo-accent,#c8102e);padding-left:14px;}
.yasou-feat-punch{font-size:clamp(20px,4.5vw,30px);font-weight:900;line-height:1.5;background:linear-gradient(transparent 55%,var(--yasoudo-yellow,#f7c600) 55%);display:inline;}
.yasou-feat-punch-wrap{margin:1.2em 0;}
.yasou-feat-note{font-size:13px;line-height:1.9;color:#4a4538;margin:.8em 0;}
.yasou-feat-qa{background:#fffdf7;border:3px solid var(--yasoudo-ink,#141414);box-shadow:5px 5px 0 var(--yasoudo-ink,#141414);padding:14px 16px;margin:1.5em 0;}
.yasou-feat-qa .row{display:flex;gap:10px;align-items:baseline;padding:10px 0;border-bottom:2px dashed #d8d2c2;}
.yasou-feat-qa .row:last-child{border-bottom:none;}
.yasou-feat-qa .q{flex:none;font-weight:900;font-size:15px;background:var(--yasoudo-ink,#141414);color:var(--yasoudo-yellow,#f7c600);padding:3px 10px;}
.yasou-feat-qa .a{font-weight:800;font-size:17px;line-height:1.6;}

/* ── ヒーロー看板・強化版＋「これは何？」ブロック（2026-07-05） ── */
.yasou-feat-hero{
  position:relative;text-align:center;
  background:repeating-conic-gradient(from 0deg,#f7c600 0deg 12deg,#ffd94d 12deg 24deg);
  border:4px solid var(--yasoudo-ink,#141414);
  outline:4px solid var(--yasoudo-accent,#c8102e);outline-offset:4px;
  box-shadow:12px 12px 0 var(--yasoudo-ink,#141414);
  padding:38px 20px 30px;margin:2.2em 8px 2.4em 2px;
  transform:rotate(-1deg);
}
.yasou-feat-hero .big{
  font-size:clamp(40px,10vw,80px);font-weight:900;line-height:1.2;
  letter-spacing:.02em;text-shadow:3px 3px 0 #fffdf7;
}
.yasou-feat-hero .sub{
  display:inline-block;margin-top:14px;font-size:14px;font-weight:800;
  background:var(--yasoudo-ink,#141414);color:#fffdf7;padding:4px 14px;
}
.yasou-feat-hero::before{
  content:"結論";
  position:absolute;top:-18px;left:-8px;z-index:2;
  background:var(--yasoudo-accent,#c8102e);color:#fff;
  font-size:15px;font-weight:900;letter-spacing:.18em;padding:8px 16px;
  transform:rotate(-8deg);
  border:3px solid var(--yasoudo-ink,#141414);
  box-shadow:3px 3px 0 var(--yasoudo-ink,#141414);
}
.yasou-feat-what{
  border:3px solid var(--yasoudo-ink,#141414);background:#fffdf7;
  box-shadow:6px 6px 0 var(--yasoudo-ink,#141414);
  padding:18px 16px;margin:1.6em 0;text-align:center;
}
.yasou-feat-what .label{
  display:inline-block;background:var(--yasoudo-accent,#c8102e);color:#fff;
  font-size:13px;font-weight:900;letter-spacing:.2em;padding:3px 14px;margin-bottom:10px;
}
.yasou-feat-what .line{display:block;font-size:clamp(22px,5.5vw,36px);font-weight:900;line-height:1.5;}
.yasou-feat-what .tail{display:block;margin-top:8px;font-size:12.5px;font-weight:700;color:#6d6656;}

/* ── 出口の看板（FANZA送客・2026-07-05） ── */
.yasou-feat-exit{
  position:relative;text-align:center;
  background:var(--yasoudo-ink,#141414);
  border:4px solid var(--yasoudo-ink,#141414);
  outline:4px solid var(--yasoudo-yellow,#f7c600);outline-offset:4px;
  box-shadow:12px 12px 0 rgba(20,20,20,.35);
  padding:36px 18px;margin:2.4em 8px 2.2em 2px;
  transform:rotate(.6deg);
}
.yasou-feat-exit .line{
  display:block;color:#fffdf7;font-weight:900;
  font-size:clamp(26px,6.5vw,44px);line-height:1.4;
}
.yasou-feat-exit .line .yel{color:var(--yasoudo-yellow,#f7c600);}
.yasou-feat-exit .btn{
  display:inline-block;margin-top:22px;
  background:var(--yasoudo-accent,#c8102e);color:#fff;
  font-size:clamp(18px,4.5vw,26px);font-weight:900;letter-spacing:.04em;
  padding:16px 34px;border:3px solid #fffdf7;
  box-shadow:5px 5px 0 rgba(0,0,0,.5);text-decoration:none;
}
.yasou-feat-exit .btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 rgba(0,0,0,.5);}
.yasou-feat-exit .under{display:block;margin-top:12px;font-size:11.5px;color:#8a8371;}

/* ── 出口の看板・調整版（2026-07-05） ── */
.yasou-feat-exit{padding:40px 18px 38px;}
.yasou-feat-exit .line{
  font-size:clamp(32px,8.5vw,60px);
  line-height:1.35;
  text-shadow:2px 2px 0 rgba(0,0,0,.6);
}
.yasou-feat-exit .btn{
  margin-top:26px;
  font-size:clamp(20px,5vw,30px);
  padding:18px 44px;
}
.yasou-feat-exit .under{display:none;}

/* ===== 一覧カード帯ヘッダー 2026-07-06 v3 =====
   黄帯=動画（作品レビュー）/ 赤帯=ランキング（夜想の棚）/ 黒帯=特集（店主のコラム）
   AIグラビア・その他カテゴリーは対象外 */

/* --- 共通：帯の土台 --- */
li.category-video .yasou-archive-card,
li.category-ranking .yasou-archive-card,
li.category-tokushu .yasou-archive-card{
	position:relative;
	padding-top:54px;
}
li.category-video .yasou-archive-card::before,
li.category-ranking .yasou-archive-card::before,
li.category-tokushu .yasou-archive-card::before{
	position:absolute;
	top:0;left:0;right:0;
	height:34px;
	display:flex;
	align-items:center;
	padding-left:118px;
	font-size:11px;
	font-weight:700;
	letter-spacing:.18em;
}
/* 既存バッジを帯の中へ移設 */
li.category-video .yasou-card-cat,
li.category-ranking .yasou-card-cat,
li.category-tokushu .yasou-card-cat{
	position:absolute;
	top:6px;left:14px;
	margin:0;
	z-index:1;
}

/* --- 動画：黄帯 --- */
li.category-video .yasou-archive-card::before{
	content:"作品レビュー";
	background:var(--yasoudo-pop,#ffe600);
	color:#1a1a1a;
	border-bottom:2px solid var(--yasoudo-ink,#1a1a1a);
}
li.category-video .yasou-card-cat a{
	background:#1a1a1a !important;
	color:var(--yasoudo-pop,#ffe600) !important;
	border-color:#1a1a1a !important;
}

/* --- ランキング：赤帯＋看板化 --- */
li.category-ranking .yasou-archive-card{
	background:#fff8dc;
	border-color:var(--yasoudo-accent,#c8102e);
	box-shadow:4px 4px 0 var(--yasoudo-accent,#c8102e);
}
li.category-ranking .yasou-archive-card:hover{
	box-shadow:3px 3px 0 var(--yasoudo-accent,#c8102e);
}
li.category-ranking .yasou-archive-card::before{
	content:"夜想の棚";
	background:var(--yasoudo-accent,#c8102e);
	color:#ffd9de;
}
li.category-ranking .yasou-card-cat a{
	background:#fff !important;
	color:var(--yasoudo-accent,#c8102e) !important;
	border-color:#fff !important;
}

/* --- 特集：黒帯＋看板化 --- */
li.category-tokushu .yasou-archive-card{
	background:#faf6ec;
}
li.category-tokushu .yasou-archive-card::before{
	content:"店主のコラム";
	background:var(--yasoudo-ink,#1a1a1a);
	color:#ffd400;
}
li.category-tokushu .yasou-card-cat a{
	background:#ffd400 !important;
	color:#1a1a1a !important;
	border-color:#ffd400 !important;
}

/* --- 看板化：ランキング・特集はタイトル特大＋抜粋なし --- */
li.category-ranking .yasou-archive-excerpt,
li.category-tokushu .yasou-archive-excerpt{
	display:none;
}
li.category-ranking .yasou-archive-card-title,
li.category-tokushu .yasou-archive-card-title{
	font-size:clamp(1.25rem,2.8vw,1.7rem);
	line-height:1.4;
	font-weight:900;
	margin:.3em 0;
}
li.category-ranking .yasou-archive-body,
li.category-tokushu .yasou-archive-body{
	display:flex;
	flex-direction:column;
	justify-content:center;
}

/* ===== ランキング記事：タイトル看板化 2026-07-06 =====
   single-post-*クラスはランキング記事ページのbodyに付かないため
   共通クラス .yasou-shelf-head を記事側に置いて装飾する方式 */
.yasou-shelf-head{
	margin:0 0 1.6em;
}
.yasou-shelf-head .yasou-shelf-title{
	background:var(--yasoudo-ink,#1a1a1a);
	color:#fff;
	display:block;
	font-size:clamp(1.5rem,4.5vw,2.2rem);
	font-weight:900;
	line-height:1.35;
	padding:.55em .8em;
	border:3px solid var(--yasoudo-ink,#1a1a1a);
	box-shadow:6px 6px 0 var(--yasoudo-accent,#c8102e);
}
.yasou-shelf-head .yasou-shelf-title small{
	display:block;
	font-size:.5em;
	color:#ffd400;
	letter-spacing:.15em;
	margin-bottom:.3em;
}
.yasou-shelf-head .yasou-shelf-catch{
	display:inline-block;
	background:var(--yasoudo-accent,#c8102e);
	color:#fff;
	font-size:clamp(1rem,2.6vw,1.25rem);
	font-weight:900;
	padding:.3em .9em;
	margin-top:14px;
	transform:rotate(-1.5deg);
}

/* 中型カードのボタン整列 2026-07-06 v2 */
.yasou-rank-mid .yasou-rank-btns{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.yasou-rank-mid .yasou-rank-btns .yasou-rank-btn{display:block !important;text-align:center;margin:0 !important;width:auto !important;float:none !important}
.yasou-rank-mid .yasou-rank-btns br{display:none}

/* ===== 夜想堂 ヘッダーナビ スマホ整列修正（末尾追記・v_navmobile_v2_2026-07-06）===== */
/* 原因：PC用の右寄せハック（お問い合わせの margin-left:28px と padding-right:0）が
   段積みモード（≤1100px）でも残り、折り返し2行目が非対称にガタつく。
   ≤1100pxではこの2つを解除し、全項目を均等な中央寄せ折り返しにする。PCは無変更。 */
@media (max-width: 1100px) {

  /* お問い合わせの左マージン（PC用の離し）を解除 */
  header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child {
    margin-left: 0 !important;
  }

  /* お問い合わせの右パディング0（PC用の右端ピタ揃え）を解除し、他ボタンと同じ左右対称に */
  header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content,
  .wp-block-navigation .wp-block-navigation-item:last-child .wp-block-navigation-item__content {
    padding: 8px 14px !important;
  }

  /* 折り返しの行間・項目間を均一化（中央寄せ・等間隔） */
  header.wp-block-template-part .wp-block-navigation,
  header.wp-block-template-part .wp-block-navigation__container {
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    row-gap: 8px !important;
    margin-left: 0 !important;
  }
}

/* スマホ実寸（≤600px）ではボタンが7px 12pxに縮むので、お問い合わせもそれに追従 */
@media (max-width: 600px) {
  header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item:last-child a.wp-block-navigation-item__content,
  .wp-block-navigation .wp-block-navigation-item:last-child .wp-block-navigation-item__content {
    padding: 7px 12px !important;
  }
}
/* ===== ヘッダーナビ スマホ整列修正 ここまで ===== */


/* ===== 夜想堂 ヘッダーC「店主カウンター・一本勝負」（末尾追記・v_hdc_v1_2026-07-07）===== */
/* サイトエディターのヘッダーをカスタムHTML1個（.yasou-hdc）に差し替えた前提の専用CSS。
   旧ヘッダーCSS（v17〜v25）は対象ブロック消滅により自然死。ここで完結させる。
   メリハリ：筐体に黄枠3px＋黄グロー、回すバーは赤（既存CTAと同じ文法）で黒背景から分離。 */

/* --- 全体コンテナ --- */
.yasou-hdc{
  max-width:1140px;
  margin:0 auto;
  padding:2px 16px 16px;
}
.yasou-hdc *{ margin-block-start:0; }  /* コアflow余白の打ち消し */

/* --- 上段：脇役リンク＋検索（事務の帯） --- */
.yasou-hdc-util{
  display:flex; justify-content:flex-end; align-items:center; gap:18px;
  border-bottom:1px solid #333;
  padding-bottom:10px; margin-bottom:24px;
  flex-wrap:wrap;
}
.yasou-hdc-sub{ display:flex; gap:20px; align-items:center; flex-wrap:wrap; }
header.wp-block-template-part .yasou-hdc-sub a,
.yasou-hdc-sub a{
  color:#bdbdbd !important;
  font-size:.8rem; font-weight:700; letter-spacing:.5px;
  text-decoration:none !important;
}
header.wp-block-template-part .yasou-hdc-sub a:hover,
.yasou-hdc-sub a:hover{ color:var(--yasoudo-pop,#ffe600) !important; }

.yasou-hdc-search{
  display:flex; align-items:center; gap:6px;
  border:1px solid #555; border-radius:999px;
  padding:3px 5px 3px 13px; margin:0;
}
.yasou-hdc-search input{
  background:transparent; border:none; outline:none;
  color:#ccc; font-size:.78rem; width:170px; min-width:0; padding:3px 0;
}
.yasou-hdc-search input::placeholder{ color:#888; }
.yasou-hdc-search button{
  appearance:none; cursor:pointer; border:none;
  background:#3a3a3a; color:#bbb; border-radius:999px;
  font-size:.72rem; font-weight:700; padding:4px 12px; white-space:nowrap;
}
.yasou-hdc-search button:hover{ background:var(--yasoudo-pop,#ffe600); color:var(--yasoudo-ink,#1a1a1a); }

/* --- 本体：左＝ロゴ＋口上／右＝筐体 --- */
.yasou-hdc-main{
  display:flex; gap:48px; align-items:center; flex-wrap:wrap;
}
.yasou-hdc-left{ flex:1 1 440px; }

header.wp-block-template-part .yasou-hdc-logo,
.yasou-hdc-logo{
  font-weight:900; font-size:2rem; letter-spacing:2px; font-style:italic;
  color:#fff !important; text-decoration:none !important;
  line-height:1.1; display:inline-block;
}
.yasou-hdc-logo span{ color:var(--yasoudo-pop,#ffe600); }
.yasou-hdc-logo small{
  display:block; font-size:.55rem; letter-spacing:4px; font-style:normal;
  color:#aaa; margin-top:3px; font-weight:400;
}

.yasou-hdc-l1{
  font-size:1.5rem; font-weight:900; line-height:1.7;
  color:#fff; margin:24px 0 0;
}
.yasou-hdc-l2{
  font-size:1.5rem; font-weight:900; line-height:2.2;
  color:#fff; margin:10px 0 0;
}
.yasou-hdc-l3{
  font-size:1.05rem; font-weight:700; color:#bbb; margin:14px 0 0;
}

/* 口上内の扉①「回す」＝筐体と同じ黄ベタ（同じ色＝同じ扉の宣言） */
header.wp-block-template-part a.yasou-hdc-spin,
a.yasou-hdc-spin{
  color:var(--yasoudo-ink,#1a1a1a) !important;
  background:var(--yasoudo-pop,#ffe600);
  text-decoration:none !important; font-weight:900;
  padding:1px 8px 2px; display:inline-block; line-height:1.5;
  box-shadow:0 3px 0 #b9a800;
  transition:transform .08s ease, box-shadow .08s ease;
}
a.yasou-hdc-spin:hover{ transform:translateY(2px); box-shadow:0 1px 0 #b9a800; }

/* 口上内の扉②「ランキング」＝黄文字下線（言葉のままの扉） */
header.wp-block-template-part a.yasou-hdc-rank,
a.yasou-hdc-rank{
  color:var(--yasoudo-pop,#ffe600) !important;
  text-decoration:underline !important; text-underline-offset:6px;
  text-decoration-thickness:2px; font-weight:900; padding:1px 4px;
  transition:background .12s ease, color .12s ease;
}
a.yasou-hdc-rank:hover{
  background:var(--yasoudo-pop,#ffe600);
  color:var(--yasoudo-ink,#1a1a1a) !important;
  text-decoration:none !important;
}

/* --- 筐体（メリハリ版：黄枠＋黄グロー＋赤バー） --- */
.yasou-hdc-kyotai{
  flex:0 1 380px;
  display:block; text-decoration:none !important; position:relative;
  background:var(--yasoudo-pop,#ffe600);
  border:3px solid var(--yasoudo-pop,#ffe600);   /* 黒バー部分も黄枠内に収める＝輪郭が立つ */
  border-radius:16px; overflow:hidden;
  box-shadow:0 8px 0 #b9a800, 0 0 34px rgba(255,230,0,.18);  /* 黄グローで黒背景から浮かす */
  transition:transform .08s ease, box-shadow .08s ease;
}
.yasou-hdc-kyotai:hover{
  transform:translateY(3px);
  box-shadow:0 5px 0 #b9a800, 0 0 40px rgba(255,230,0,.28);
}
.yasou-hdc-badge{
  position:absolute; top:14px; right:-36px; z-index:2;
  background:var(--yasoudo-accent,#c8102e); color:#fff;
  font-size:.72rem; font-weight:900; letter-spacing:2px;
  padding:3px 42px; transform:rotate(35deg);
}
.yasou-hdc-body{ display:block; padding:24px 24px 18px; text-align:center; }
.yasou-hdc-reels{
  display:flex; justify-content:center; gap:10px;
  font-size:2.8rem; margin-bottom:14px;
}
.yasou-hdc-reel{
  background:#000; border-radius:9px; overflow:hidden;
  height:1.5em; width:1.15em; position:relative; flex:0 0 auto;
  box-shadow:inset 0 0 10px rgba(0,0,0,.95);
}
.yasou-hdc-reel .rs{
  position:absolute; left:0; top:0; width:100%;
  display:flex; flex-direction:column; align-items:center;
  font-weight:900; line-height:1.5; color:var(--yasoudo-pop,#ffe600);
}
.yasou-hdc-reel.r1 .rs{ animation:yasou-hdc-roll 2.4s steps(6) infinite; }
.yasou-hdc-reel.r2 .rs{ animation:yasou-hdc-roll 2.9s steps(6) infinite .3s; }
.yasou-hdc-reel.r3 .rs{ animation:yasou-hdc-roll 3.4s steps(6) infinite .6s; }
@keyframes yasou-hdc-roll{
  from{ transform:translateY(0); }
  to{ transform:translateY(-9em); }
}
@media (prefers-reduced-motion: reduce){
  .yasou-hdc-reel .rs{ animation:none !important; }
}
.yasou-hdc-title{
  display:block; color:var(--yasoudo-ink,#1a1a1a);
  font-size:1.7rem; font-weight:900; letter-spacing:2px; line-height:1.2;
}
.yasou-hdc-copy{
  display:block; color:var(--yasoudo-ink,#1a1a1a);
  font-size:.92rem; font-weight:700; margin-top:5px;
}
/* 回すバー：赤×白＝既存CTA（yasou-cta）と同じ文法。黒背景と同化しない */
.yasou-hdc-bar{
  display:block; background:var(--yasoudo-accent,#c8102e); color:#fff;
  text-align:center; font-weight:900; font-size:1.2rem;
  letter-spacing:4px; padding:14px;
}
.yasou-hdc-kyotai:hover .yasou-hdc-bar{ filter:brightness(1.1); }

/* --- スマホ：事務帯は中央・検索全幅、本体は口上→筐体の縦積み --- */
@media (max-width:700px){
  .yasou-hdc{ padding:0 12px 14px; }
  .yasou-hdc-util{ justify-content:center; gap:12px; }
  .yasou-hdc-search{ width:100%; }
  .yasou-hdc-search input{ flex:1 1 auto; width:auto; }
  .yasou-hdc-logo{ font-size:1.5rem; }
  .yasou-hdc-main{ flex-direction:column; align-items:stretch; gap:22px; }
  .yasou-hdc-l1,.yasou-hdc-l2{ font-size:1.15rem; }
  .yasou-hdc-l2{ line-height:2.4; }
  .yasou-hdc-l3{ font-size:.92rem; }
  .yasou-hdc-kyotai{ flex:1 1 auto; }
  .yasou-hdc-reels{ font-size:2.2rem; }
  .yasou-hdc-title{ font-size:1.4rem; }
}
/* ===== ヘッダーC ここまで ===== */

/* ===== 特集POP 星評価 確実版（末尾追記・v_popstars_fix2_2026-07-07）===== */
.yasou-pop-stars .row{ display:block !important; }
.yasou-pop-stars .row span:first-child{ display:block; }
.yasou-pop-stars .row .stars{
  display:block; text-align:right; white-space:normal;
  margin-top:2px; letter-spacing:2px;
}
/* ===== ここまで ===== */