@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/

/* 投稿ページではアイキャッチを非表示（本文内の画像ブロックで代替表示するため） */
.single .eye-catch {
  display: none !important;
}

/*
 * Luxury front styling
 * Reference: refined white base, champagne gold navigation, editorial cards.
 */
:root {
  --luxury-ink: #1f2834;
  --luxury-muted: #5f6a7a;
  --luxury-line: #dbe4ef;
  --luxury-paper: #fffdf8;
  --luxury-cream: #f4f7fb;
  --luxury-gold: #b88f2f;
  --luxury-gold-deep: #8f6a22;
  --luxury-gold-bright: #d8b24a;
  --luxury-red: #b84e45;
  --luxury-brown-hover: #6f4d14;
  --luxury-navy: #243345;
  /* REFACTOR: ISSUE-R3-002 対応 - ナビ背景をネイビー(#1c2a3a)からダークブラウン(#3a2a0e)へ変更 */
  --luxury-nav-bg: #3a2a0e;
  --luxury-nav-dark: #2a1f0a;
  --luxury-nav-hover: #4d3a14;
  --luxury-list-border: #b7965c;
  /* SITE_REQUIREMENTS カラーパレット */
  --site-bg: #faf4e0;
  --site-header: #2a1f0a;
  --site-nav: #3a2a0e;
  --site-text: #1a1208;
  --site-text-sub: #7a6030;
  --site-text-pale: #a89060;
  --site-border-gold: rgba(184, 143, 47, 0.25);
  --site-border-gold-hover: rgba(184, 143, 47, 0.6);
  --font-display: "Zen Old Mincho", "Yu Mincho", "Hiragino Mincho ProN", Georgia, serif;
  --font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
}

/* REFACTOR-BEFORE: body.public-page { background: linear-gradient(180deg, #f7fbff 0, #edf3f9 340px, #fff8ee 100%); } */
/* REFACTOR: ISSUE-001 対応 - 後半(415行目付近)の定義と重複するため background を削除し、font/color/overflow のみ残す */
body.public-page {
  color: var(--luxury-ink);
  font-family: var(--font-body);
  overflow-x: hidden;
}

a {
  color: var(--luxury-gold-deep);
}

/* REFACTOR: NEW-003 対応 - #6f4d14 を CSS 変数に置き換え */
a:hover {
  color: var(--luxury-brown-hover);
}

.container {
  background: transparent;
}

/* REFACTOR: ISSUE-R3-001 対応 - ヘッダー背景をSITE_REQUIREMENTS仕様(#2a1f0a ダーク)に変更
   REFACTOR-BEFORE: border-top: 4px solid var(--luxury-gold-bright); background: linear-gradient(#fff, #f3f7fb); */
.header-container {
  border-top: 4px solid var(--luxury-gold-bright);
  border-bottom: 1px solid rgba(216, 178, 74, .28);
  box-shadow: 0 8px 26px rgba(92, 66, 24, .08);
  background: linear-gradient(180deg, #fffdf8 0, #fff7eb 100%);
}

/* 明るい背景に合わせたヘッダーリンク色 */
.header-in .site-name-text-link,
.header-in .tagline,
.header-in a {
  color: var(--luxury-gold-deep);
}
.header-in a:hover {
  color: #8b611f;
}

.header-in.wrap {
  min-height: 54px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 0 12px;
  overflow: hidden;
}

.logo-text {
  margin: 0;
}

header .logo,
footer .logo,
.logo-text {
  text-align: left;
}

header .logo-text,
footer .logo-text {
  padding: 0;
}

header .site-name-text-link,
footer .site-name-text-link {
  display: block;
  padding: 0;
}

.tagline {
  display: none;
}

/* REFACTOR-BEFORE: .site-name-text { font-size: 8px; ... } */
/* REFACTOR: ISSUE-008 対応 - font-size: 8px はアクセシビリティ上問題あり。
   テキストは header/footer の .site-name-text ルールで text-indent により非表示にするため、
   ここではフォールバック用に font-size: 0 を設定する */
.site-name-text {
  display: inline-block;
  color: var(--luxury-gold-deep);
  font-family: var(--font-display);
  font-size: 0;
  font-weight: 700;
  line-height: 1.1;
  text-shadow: none;
}

.site-name-text::after {
  content: none;
}

/* ヘッダー/フッター用のロゴはサイト表記と同じサイズ・SVGを使う */
/* REFACTOR: ISSUE-026 対応 - ヘッダーのロゴマークをヘッダーの高さに合わせて拡大 */
footer .site-name-text,
header .site-name-text {
  display: block;
  width: 360px;
  max-width: 100%;
  height: 42px;
  background: url("assets/title-candidates-cinematic/cinematic-05-red-accent.svg") left center / contain no-repeat;
  color: transparent;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
  text-indent: -9999px;
  white-space: nowrap;
}

#navi {
  background: var(--luxury-gold);
}

#navi-in.wrap {
  min-height: 0;
}

/* REFACTOR-BEFORE: .luxury-front { margin-bottom: 42px; } */
/* REFACTOR: ISSUE-001 対応 - 後半の定義(background/box-shadow)と重複するため margin のみ残す */
.luxury-front {
  margin-bottom: 42px;
}
/* NOTE: background と box-shadow は後半の "Amazon Prime-inspired refinements" セクションで定義 */

/* REFACTOR: ISSUE-001 対応 - 後半の重複定義を統合し、単一の正規定義にまとめた */
.luxury-front-nav {
  max-width: 1110px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  background: var(--luxury-nav-bg);
  border-left: 0;
  border-right: 0;
}

/* REFACTOR: ISSUE-001/NEW-001/NEW-002 対応 - 後半の重複定義を統合。min-height/position/color/border を正規値に更新 */
.luxury-front-nav a {
  min-height: 54px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f7f9fc;
  background: var(--luxury-nav-bg);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  border-left: 1px solid rgba(255, 255, 255, .08);
  border-right: 1px solid rgba(0, 0, 0, .24);
  transition: background-color .2s ease, color .2s ease;
}

.luxury-front-nav a.is-active {
  color: #fff;
  background: var(--luxury-nav-hover);
}

.luxury-front-nav a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 34px;
  height: 3px;
  background: var(--luxury-gold-bright);
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  transition: transform .2s ease;
}

/* REFACTOR: NEW-002 対応 - ホバー色 #26374b を CSS 変数 --luxury-nav-hover に置き換え */
.luxury-front-nav a:hover {
  color: #fff;
  background: var(--luxury-nav-hover);
}

.luxury-front-nav a:hover::after {
  transform: translateX(-50%) scaleX(1);
}

.luxury-front-nav a.is-active::after {
  transform: translateX(-50%) scaleX(1);
}

/* REFACTOR: ISSUE-R3-003 対応 - ヒーロー背景をSITE_REQUIREMENTS仕様(#2a1f0a→#4a3510 ダークゴールド)に変更
   REFACTOR-BEFORE: linear-gradient(薄クリーム系) */
.luxury-search-hero {
  position: relative;
  overflow: hidden;
  min-height: 230px;
  display: grid;
  place-items: center;
  background: linear-gradient(160deg, #2a1f0a 0%, #4a3510 100%);
}

/* REFACTOR: ISSUE-R3-003 対応 - ダーク背景向けに装飾を調整 */
.luxury-search-hero::before {
  content: "";
  position: absolute;
  inset: -22%;
  background:
    linear-gradient(115deg, transparent 0 38%, rgba(216, 178, 74, .08) 38.3% 38.9%, transparent 39.2%),
    linear-gradient(65deg, transparent 0 53%, rgba(216, 178, 74, .06) 53.2% 53.7%, transparent 54%),
    radial-gradient(ellipse at 72% 42%, rgba(184, 143, 47, .2), transparent 22%);
  opacity: .8;
  transform: rotate(-4deg);
}

.luxury-search-hero::after {
  content: "";
  position: absolute;
  right: max(24px, calc((100vw - 1110px) / 2));
  bottom: -24px;
  width: 190px;
  height: 190px;
  border-radius: 50%;
  border: 1px solid rgba(216, 178, 74, .3);
  background: radial-gradient(circle, rgba(216, 178, 74, .12), rgba(216, 178, 74, 0) 68%);
}

.luxury-search-hero__inner {
  position: relative;
  z-index: 1;
  width: min(calc(100% - 32px), 650px);
  text-align: center;
}

.luxury-search-hero__kicker {
  margin: 0 0 8px;
  color: var(--luxury-gold-deep);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

/* REFACTOR: ISSUE-R3-004 対応 - 白テキスト＋明朝体に変更（ダーク背景対応）
   REFACTOR-BEFORE: color: #2d251a; （ダーク色、ライト背景向け） */
.luxury-search-hero__title {
  margin: 0 0 20px;
  color: #ffffff;
  font-family: var(--font-display);
  font-size: clamp(22px, 3vw, 34px);
  font-weight: 700;
  line-height: 1.35;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
}

.luxury-search-hero__keywords {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 auto 18px;
}

.luxury-search-hero__keywords a,
.luxury-detail__keywords a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 4px 10px;
  color: #3a2a0e;
  background: #fff7df;
  border: 1px solid rgba(184, 143, 47, .34);
  border-radius: 2px;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.luxury-search-hero__keywords a:hover,
.luxury-detail__keywords a:hover {
  color: #1a1208;
  background: #fff2c4;
}

/* REFACTOR: ISSUE-027 対応 - 注目キーワード遷移先の検索結果ページでは
   上部の検索フォーム枠を表示しない */
body.search-results .search-box.input-box,
body.search-no-results .search-box.input-box {
  display: none;
}

.content-in.wrap {
  gap: 20px;
}

@media screen and (min-width: 1024px) {
  .content-in.wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 24px;
    align-items: start;
  }

  /* REFACTOR-BEFORE: .main, .sidebar { width: auto !important; } */
  /* REFACTOR: ISSUE-005 対応 - !important を高詳細度セレクタで代替 */
  body .main,
  body .sidebar {
    width: auto;
  }

  body .sidebar {
    position: sticky;
    top: 20px;
    max-height: calc(100vh - 40px);
    overflow: auto;
  }
}

.main,
.sidebar {
  box-sizing: border-box;
  background: #fff;
  border: 1px solid var(--luxury-line);
  box-shadow: 0 18px 42px rgba(86, 66, 34, .08);
}

.main {
  padding: 28px 24px;
}

.sidebar {
  padding: 18px;
}

.list-title,
.widget-sidebar-title,
.article h1,
.article h2 {
  color: #07101f;
}

/* REFACTOR: ISSUE-012 対応 - border-bottom-color を --luxury-list-border 変数で一元管理 */
.list-title {
  margin-bottom: 28px;
  padding: 0 0 14px;
  border-bottom: 2px solid var(--luxury-list-border);
  font-size: 24px;
  font-weight: 800;
}

.list-title-in {
  display: inline-block;
}

.ect-tile-card .entry-card-wrap {
  padding: 0;
  background: #fff;
  border: 1px solid #e1d6c4;
  box-shadow: 0 12px 28px rgba(64, 48, 24, .08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ect-tile-card .entry-card-wrap:hover {
  transform: translateY(-4px);
  border-color: var(--luxury-gold);
  box-shadow: 0 20px 38px rgba(64, 48, 24, .14);
}

.ect-tile-card .entry-card {
  display: block;
  flex: none;
  width: 100%;
  min-height: 0;
}

.entry-card-thumb {
  margin: 0;
  background: #efe8dc;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

.entry-card-thumb-image {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.entry-card-content {
  padding: 7px 10px 8px;
}

/* REFACTOR: トップページのミニマル化対応 - カード行間を詰める */
.list {
  row-gap: 4px;
}

/* REFACTOR: Cocoonのコンテンツ幅上限を一覧部分だけ解除する。
   ヘッダーやフッターの可読幅は維持しつつ、ワイド画面では左右24pxの余白を残して
   サムネイルグリッドを画面幅いっぱいまで広げる。 */
@media (min-width: 1257px) {
  .content-in.wrap {
    width: calc(100% - 48px);
    max-width: none;
  }

  .main {
    width: auto;
    flex: 1 1 auto;
    min-width: 0;
  }
}

/* REFACTOR: Cocoon標準の固定3列（33%幅）をやめ、画面幅に応じて列数が自動で増減する
   CSS Gridに置き換える。JS不要・ブレークポイント不要でPCを広げるほど列が増える。
   ect-vertical-card / ect-3-columns はフロントページ・女優/メーカー一覧・タグ一覧すべてで
   共通して使われているため、ここ一箇所の上書きで全ページに反映される。 */
.list.ect-vertical-card.ect-3-columns {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  column-gap: 8px;
  row-gap: 4px;
}

.list.ect-vertical-card.ect-3-columns .entry-card-wrap.a-wrap {
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
}

/* REFACTOR: SITE_REQUIREMENTS.md「モバイル: 2列」を維持するため、
   auto-fillのminmax計算に任せず狭幅では明示的に2列固定にする */
@media (max-width: 600px) {
  .list.ect-vertical-card.ect-3-columns {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 6px;
    row-gap: 4px;
  }
}

.entry-card-title {
  color: #1b1712;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.55;
}

.entry-card-snippet {
  margin-top: 10px;
  color: var(--luxury-muted);
  font-size: 13px;
  line-height: 1.7;
}

.post-date,
.entry-card-info,
.entry-card-meta {
  color: #8a7c68;
}

/* REFACTOR: ISSUE-003 対応 - line663付近の#e50914ハードコード定義と統合。
   --luxury-red 変数で一元管理し、後方の重複定義を削除する。
   REFACTOR-BEFORE:
   .cat-label, .cat-link, .tag-link { background: var(--luxury-gold); border-color: var(--luxury-gold); color: #fff; } */
.cat-label,
.cat-link,
.tag-link {
  background: var(--luxury-red);
  border-color: var(--luxury-red);
  color: #fff;
}

.pagination .page-numbers,
.pager-post-navi a,
.btn,
.ranking-item-link-buttons a,
.button {
  border-radius: 0;
}

.widget-sidebar-title {
  margin-bottom: 14px;
  padding: 0 0 10px;
  border-bottom: 1px solid var(--luxury-line);
  font-size: 18px;
  font-weight: 800;
}

.widget-sidebar-title::after {
  content: "";
  display: block;
  width: 58px;
  height: 2px;
  margin-top: 9px;
  background: var(--luxury-red);
}

.sidebar .widget {
  margin-bottom: 30px;
}

.sidebar a {
  color: #38250a;
}

.fanza-disclosure-brand {
  display: block;
  margin: 2px 0 10px;
}

.fanza-disclosure-logo {
  display: block;
  width: 100%;
  height: auto;
}

.footer {
  background: linear-gradient(180deg, #fff9ef 0, #fff5e8 100%);
  color: #5f5039;
  border-top: 4px solid var(--luxury-gold-bright);
  text-align: left;
}

.footer a {
  color: #8f6a22;
}

.footer a:hover {
  color: #8b611f;
}

.footer .site-name-text,
.footer .site-name-text-link {
  color: var(--luxury-gold-deep);
  font-size: 0;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
}

/* Amazon Prime-inspired refinements */
/* REFACTOR: ISSUE-R3-009 対応 - 背景をSITE_REQUIREMENTS単色(#faf4e0)に変更
   REFACTOR-BEFORE: linear-gradient(#fffdf7, #f8f0e2, #fffaf2) グラデーション */
body.public-page {
  background: var(--site-bg);
}

/* REFACTOR-BEFORE: .header-container { background: ... } */
/* REFACTOR: NEW-005 対応 - 前半（59行目付近）に background を統合済みのため、この分割定義を削除 */

/* REFACTOR: ISSUE-R3-002/003 対応 - luxury-front 全体をダークブラウン基調に統一
   REFACTOR-BEFORE: background: linear-gradient(#162130, #1c2a3a) ネイビー系 */
.luxury-front {
  background: var(--site-nav);
  box-shadow: 0 20px 48px rgba(0, 0, 0, .3);
}

body.fanza-front-tab-vr .entry-card-wrap[data-genre="2D"],
body.fanza-front-tab-2d .entry-card-wrap[data-genre="VR"] {
  display: none !important;
}

body.fanza-front-tab-vr .entry-card-wrap.is-placeholder-thumb,
body.fanza-front-tab-2d .entry-card-wrap.is-placeholder-thumb {
  display: none !important;
}

/* REFACTOR: ISSUE-001/NEW-001/NEW-002 対応 - .luxury-front-nav a / a::after / a:hover / a:hover::after
   すべて前半の正規定義（161行目付近）に統合済みのため、この重複ブロックを削除 */

/* REFACTOR: ISSUE-R3-003 対応 - ネイビー系→ダークゴールド系に統一 */
.luxury-cinema-hero {
  min-height: 180px;
  background:
    radial-gradient(circle at 78% 28%, rgba(216, 178, 74, .18), transparent 35%),
    linear-gradient(160deg, #2a1f0a 0%, #4a3510 100%);
}

.luxury-cinema-hero::before {
  opacity: .24;
  background:
    linear-gradient(115deg, transparent 0 38%, rgba(255, 255, 255, .18) 38.3% 38.8%, transparent 39.2%),
    linear-gradient(65deg, transparent 0 53%, rgba(216, 178, 74, .18) 53.2% 53.7%, transparent 54%);
}

.luxury-cinema-hero::after {
  border-color: rgba(216, 178, 74, .24);
  background: radial-gradient(circle, rgba(216, 178, 74, .16), rgba(216, 178, 74, 0) 68%);
}

.luxury-cinema-hero .luxury-search-hero__kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffd878;
}

.luxury-cinema-hero .luxury-search-hero__title {
  margin-bottom: 8px;
  color: #fffaf0;
  font-size: clamp(18px, 2.4vw, 28px);
  text-shadow: 0 10px 28px rgba(0, 0, 0, .28);
}

.luxury-affiliate-notice {
  display: inline-block;
  margin: 12px 0 0;
  padding: 7px 12px;
  color: #f4e2c5;
  background: rgba(0, 0, 0, .24);
  border: 1px solid rgba(216, 178, 74, .55);
  font-size: 14px;
  font-weight: 700;
}

.luxury-affiliate-notice strong {
  color: #fffaf0;
  font-size: 1.08em;
}

.luxury-hero-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

/* REFACTOR-BEFORE: .luxury-hero-actions a { background: #d8b24a; border: 1px solid #d8b24a; } */
/* REFACTOR: ISSUE-007 対応 - ハードコードカラー値をCSS変数に置き換え */
.luxury-hero-actions a {
  min-width: 124px;
  padding: 10px 16px;
  color: #fff;
  background: var(--luxury-gold-bright);
  border: 1px solid var(--luxury-gold-bright);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

/* REFACTOR: NEW-003 対応 - #243345 を CSS 変数 --luxury-navy に置き換え */
.luxury-hero-actions a:nth-child(2) {
  color: #fff;
  background: var(--luxury-navy);
  border-color: var(--luxury-navy);
}

/* REFACTOR-BEFORE: .luxury-hero-actions a:hover { background: #b88f2f; border-color: #b88f2f; } */
/* REFACTOR: ISSUE-007 対応 - ハードコードカラー値をCSS変数に置き換え */
.luxury-hero-actions a:hover {
  color: #fff;
  transform: translateY(-2px);
  background: var(--luxury-gold);
  border-color: var(--luxury-gold);
}

/* REFACTOR-BEFORE: .list-title { border-bottom-color: #b7965c; } */
/* REFACTOR: ISSUE-012 対応 - --luxury-list-border 変数で一元管理するため、この上書き定義を削除 */

/* REFACTOR: ISSUE-002 対応 - masonry brick の幅を 3列/2列に固定し、一覧が1列に潰れる問題を解消
   REFACTOR-BEFORE: width: 100% !important; (全幅化で一覧が縦1列に崩れていた) */
.ect-tile-card .entry-card-wrap {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  border: 1px solid var(--site-border-gold);
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(42, 31, 10, .08);
}

.ect-tile-card .entry-card-wrap:hover {
  border-color: var(--site-border-gold-hover);
  box-shadow: 0 12px 32px rgba(184, 143, 47, .18);
}

.ect-tile-card .entry-card-content {
  display: block;
  flex: none;
  width: 100%;
  padding: 10px 12px 12px;
  background: #fffdf9;
  border-top: 1px solid rgba(216, 178, 74, .22);
  overflow: hidden;
}

body .ect-tile-card .entry-card {
  display: block !important;
  flex: none !important;
  position: relative;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
}

body .ect-tile-card .entry-card-content {
  display: block !important;
  flex: none !important;
  height: auto !important;
  overflow: hidden !important;
}

body .list.masonry.ect-tile-card {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  position: static !important;
  height: auto !important;
}

/* REFACTOR: ISSUE-R4-001/002 対応 - width:100%追加でfigureが全幅展開、アスペクト比を3:4(縦向き)に変更
   REFACTOR-BEFORE: flex: 0 0 auto; aspect-ratio: 4 / 3; (widthなし→93×70pxに縮退) */
.ect-tile-card .entry-card-thumb {
  width: 100% !important;
  float: none !important;
  flex: 0 0 auto;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #ede4cc;
}

.ect-tile-card .entry-card-thumb-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center;
  display: block;
}

/* REFACTOR: ISSUE-R3-008 対応 - 行クランプを2→3行に変更（品番付きタイトルが切れないよう）
   REFACTOR-BEFORE: -webkit-line-clamp: 2; min-height: 3em; */
.entry-card-title {
  display: -webkit-box;
  overflow: hidden;
  min-height: 4.65em;
  color: var(--site-text);
  font-family: var(--font-display);
  font-size: 13px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.entry-card-actress {
  margin-top: 8px;
  color: #9d741f;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.entry-card-maker {
  margin-top: 4px;
  overflow: hidden;
  color: #746957;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.entry-card-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0 0 8px;
}

/* REFACTOR: NEW-003 対応 - #2a211c を CSS 変数 --luxury-nav-dark に置き換え */
.entry-card-chips span {
  max-width: 100%;
  overflow: hidden;
  padding: 3px 7px;
  color: #f6ead8;
  background: var(--luxury-nav-dark);
  border: 1px solid rgba(230, 184, 90, .28);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.entry-card-chip-code {
  font-family: Consolas, "Courier New", monospace;
}


.ect-tile-card .entry-card-snippet,
.entry-card-snippet {
  display: none;
}

/* REFACTOR: ISSUE-010 対応 - !important を高詳細度セレクタで代替。
   REFACTOR-BEFORE: .entry-card-meta, .entry-card-info, .post-date, .post-update { display: none !important; } */
body .entry-card-meta,
body .entry-card-info,
body .post-date,
body .post-update {
  display: none;
}

/* REFACTOR: ISSUE-003 対応 - 上記（line385付近）の --luxury-red 統合定義に集約のため、
   この #e50914 ハードコード重複定義を削除。
   REFACTOR-BEFORE:
   .cat-label, .cat-link, .tag-link { background: #e50914; border-color: #e50914; } */

/* REFACTOR: ISSUE-011 対応 - サイドバーリンク色をCSS変数に追加 */
:root {
  --luxury-sidebar-text: #2f2418;
  --luxury-sidebar-sub: #7a541d;
  --luxury-sidebar-bg: #fffaf1;
  --luxury-sidebar-border: #e1d0b2;
}

.fanza-sidebar {
  background: #fffdf8;
}

.fanza-side-panel {
  margin-bottom: 26px;
}

.fanza-side-links,
.fanza-side-sub-links {
  display: grid;
  gap: 8px;
}

.fanza-side-links a,
.fanza-side-sub-links a,
.fanza-side-tags a {
  display: block;
  color: #241f19;
  text-decoration: none;
}

/* REFACTOR: ISSUE-011 対応 - サイドバーリンク色を変数に統一 */
.fanza-side-links a {
  padding: 10px 12px;
  background: var(--luxury-sidebar-bg);
  color: var(--luxury-sidebar-text);
  border: 1px solid var(--luxury-sidebar-border);
  border-left: 3px solid #b7965c;
  font-weight: 800;
}

/* REFACTOR: ISSUE-003 対応 - #e50914 を --luxury-red 変数に統一（残存ハードコード解消） */
.fanza-side-links a:first-child {
  border-left-color: var(--luxury-red);
}

.fanza-side-sub-links {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #eadcc4;
}

.fanza-side-sub-links a {
  padding: 7px 0 7px 14px;
  color: var(--luxury-sidebar-sub);
  border-left: 2px solid #d6bc83;
  font-size: 13px;
  font-weight: 800;
}

.fanza-side-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.fanza-side-tags a {
  padding: 7px 10px;
  border: 1px solid var(--luxury-sidebar-border);
  background: var(--luxury-sidebar-bg);
  color: var(--luxury-sidebar-sub);
  font-size: 13px;
  font-weight: 800;
}

.fanza-side-disclosure p {
  margin: 0;
  color: #6f5a39;
  font-size: 13px;
  line-height: 1.8;
}

/* サイドバーのコンテンツ一覧ナビ（女優一覧/メーカー一覧/タグ一覧） */
.fanza-side-nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.fanza-side-nav__list a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 14px;
  background: var(--luxury-sidebar-bg);
  color: var(--luxury-sidebar-text);
  border: 1px solid var(--luxury-sidebar-border);
  border-left: 3px solid var(--luxury-gold);
  font-weight: 800;
  text-decoration: none;
}

.fanza-side-nav__list a:hover {
  border-left-color: var(--luxury-gold-bright);
  background: #fffdf8;
}

.fanza-side-nav__list .fa {
  color: var(--luxury-gold-deep);
}

/* /tags/ タグ一覧ページのチップ表示 */
.luxury-tag-index {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.luxury-tag-index__chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  background: #fffdf8;
  border: 1px solid var(--site-border-gold);
  color: var(--site-text);
  font-weight: 800;
  text-decoration: none;
}

.luxury-tag-index__chip:hover {
  border-color: var(--luxury-gold);
  background: #fff;
}

.luxury-tag-index__count {
  min-width: 20px;
  padding: 1px 7px;
  border-radius: 999px;
  background: var(--luxury-gold);
  color: #fff;
  font-size: 12px;
  text-align: center;
}

/* REFACTOR: ISSUE-010 対応 - !important を高詳細度セレクタで代替（保守性向上）。
   REFACTOR-BEFORE: .list-more-button-wrap, .list-more-button { display: none !important; } */
/* EDIT: もっと見るボタンを非表示 */
body .list-more-button-wrap,
body .list-more-button {
  display: none;
}

/* REFACTOR: ISSUE-010 対応 - !important を高詳細度セレクタで代替。
   REFACTOR-BEFORE: .admin-pv, ... { display: none !important; } */
/* EDIT: カードのPV数を非表示 */
body .admin-pv,
body .today-pv,
body .week-pv,
body .month-pv,
body .all-pv,
body .post-views,
body .entry-views,
body .card-views,
body [class*="view-count"],
body [class*="pv-count"] {
  display: none;
}

/* EDIT: 初めての方へ ガイドパネル */
.luxury-guide-btn {
  min-width: 160px;
  padding: 10px 20px;
  color: #fff;
  background: transparent;
  border: 1px solid rgba(216, 178, 74, .6);
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  transition: background .18s ease;
}

.luxury-guide-btn:hover {
  background: rgba(216, 178, 74, .15);
}

/* REFACTOR: ISSUE-006 対応 - overflow-x:hidden と box-sizing:border-box を追加。
   モバイルでパネル内コンテンツが親幅を超えて横スクロールが発生するのを防ぐ。
   max-width:100% も追加して親コンテナからはみ出さないよう制御。 */
.luxury-guide-panel {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  box-sizing: border-box;
  background: #162130;
  border-top: 1px solid rgba(216, 178, 74, .3);
  margin-top: 12px;
}

.luxury-guide-panel[hidden] {
  display: none;
}

.luxury-guide-header {
  display: flex;
  justify-content: flex-end;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.luxury-guide-close {
  margin-left: auto;
  padding: 12px 16px;
  color: rgba(247, 249, 252, .5);
  background: transparent;
  border: none;
  font-size: 14px;
  cursor: pointer;
}

.luxury-guide-close:hover {
  color: #fff;
}

.luxury-guide-content {
  padding: 24px;
  max-width: 800px;
  margin: 0 auto;
}

.luxury-guide-content h3 {
  margin: 0 0 10px;
  color: #ffd878;
  font-size: 15px;
  font-weight: 800;
  border-bottom: 1px solid rgba(216, 178, 74, .2);
  padding-bottom: 6px;
}

.luxury-guide-content h3:not(:first-child) {
  margin-top: 20px;
}

.luxury-guide-content p,
.luxury-guide-content li {
  color: rgba(247, 249, 252, .82);
  font-size: 13px;
  line-height: 1.8;
}

.luxury-guide-content ul,
.luxury-guide-content ol {
  padding-left: 18px;
  margin: 6px 0;
}

.luxury-guide-content li {
  margin-bottom: 4px;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  .header-in.wrap {
    min-height: 96px;
  }

  .content-in.wrap {
    gap: 22px;
  }

  .main,
  .sidebar {
    box-shadow: 0 10px 28px rgba(86, 66, 34, .07);
  }
}

@media screen and (max-width: 1279px){
  .content-in.wrap {
    display: block;
  }

  .main,
  .sidebar {
    float: none;
    width: 100%;
    max-width: 100%;
  }

  body .sidebar {
    display: block !important;
  }

  body .sidebar {
    position: static;
    top: auto;
    max-height: none;
    overflow: visible;
    margin-top: 20px;
  }
}

/*834px以下*/
@media screen and (max-width: 834px){
  /* REFACTOR: モバイルでは下部固定メニューと役割が重複する上部ナビを省略する。 */
  #navi {
    display: none;
  }

  /* REFACTOR-BEFORE: 1023px以下では min-height: 96px。 */
  /* REFACTOR: ロゴの42px高は維持しつつ、ヘッダー外側の余白だけを圧縮する。 */
  .header-container {
    border-top-width: 2px;
  }

  .header-in.wrap {
    min-height: 50px;
    padding: 4px 12px;
  }

  .luxury-front {
    margin-bottom: 16px;
  }

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

  .luxury-front-nav a {
    min-height: 46px;
    font-size: 13px;
  }

  /* REFACTOR-BEFORE: min-height: 220px; padding: 22px 0; */
  /* REFACTOR: ファーストビューを広げるため、内容量に応じた高さへ変更する。 */
  .luxury-search-hero {
    min-height: 0;
    padding: 14px 0 12px;
  }

  .luxury-search-hero__inner {
    width: min(calc(100% - 24px), 650px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 6px;
    align-items: center;
  }

  .luxury-cinema-hero .luxury-search-hero__title {
    grid-column: 1 / -1;
    margin-bottom: 10px;
    font-size: 18px;
    line-height: 1.3;
  }

  .luxury-search-hero__keywords {
    grid-column: 1;
    grid-row: 2;
    justify-content: flex-end;
    gap: 6px;
    margin-bottom: 0;
  }

  .luxury-search-hero__keywords a,
  .luxury-search-hero__inner > .luxury-guide-btn {
    min-height: 30px;
    padding: 3px 8px;
    font-size: 12px;
    line-height: 1.2;
  }

  /* REFACTOR: DOM順とアクセシビリティを保ったまま、ガイド導線をタグと同じ行に配置する。 */
  .luxury-search-hero__inner > .luxury-guide-btn {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    color: #fffaf0;
    background: transparent;
    border-color: rgba(216, 178, 74, .72);
    border-radius: 2px;
  }

  .luxury-search-hero__inner > .luxury-guide-btn:hover {
    background: rgba(216, 178, 74, .15);
  }

  .luxury-affiliate-notice {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: center;
    margin-top: 8px;
    padding: 4px 8px;
    font-size: 12px;
    line-height: 1.4;
  }

  .luxury-guide-panel {
    grid-column: 1 / -1;
    grid-row: 4;
    margin-top: 8px;
  }

  .main,
  .sidebar {
    border-left: 0;
    border-right: 0;
  }

  body .list.masonry.ect-tile-card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/*480px以下*/
@media screen and (max-width: 480px){
  /* REFACTOR-BEFORE: .site-name-text { font-size: 8px; } */
  /* REFACTOR: ISSUE-008 対応 - SVG背景で表示しているため font-size: 0 を維持（text-indent 方式と統一） */
  .site-name-text {
    font-size: 0;
  }

  .luxury-hero-actions a {
    min-width: 0;
    width: min(100%, 154px);
  }

  /* REFACTOR-BEFORE: font-size: 21px; */
  .luxury-search-hero__title {
    font-size: 18px;
  }

  .main {
    padding: 22px 16px;
  }

  body .list.masonry.ect-tile-card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* REFACTOR: ISSUE-006 対応 - モバイルでguide-contentのpaddingを縮小してコンテンツ幅の超過を防ぐ */
  .luxury-guide-content {
    padding: 16px;
  }
}

/* REFACTOR: ISSUE-R3-014 対応 - 見出し要素に明朝体を適用（SITE_REQUIREMENTS タイポグラフィ仕様） */
.list-title,
.widget-sidebar-title,
.article h1,
.article h2,
.article h3 {
  font-family: var(--font-display);
}

/* REFACTOR: ISSUE-R3-015 対応 - .main/.sidebar背景を#fffdf8（クリーム）に統一 */
.main,
.sidebar {
  background: #fffdf8;
}

/* REFACTOR: ISSUE-R3-012 対応 - VR/2Dバッジスタイル */
.entry-card-thumb {
  position: relative;
}

.entry-card-thumb-link {
  display: block;
  width: 100%;
  height: 100%;
}

.entry-card-thumb-link .entry-card-thumb-image {
  display: block;
}

.entry-card-title a {
  color: inherit;
  text-decoration: none;
}

.entry-card-title a:hover {
  text-decoration: underline;
}

.entry-card-row1 {
  display: flex;
  align-items: flex-start;
  gap: 6px;
}

.entry-card-row1 .entry-card-title {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: end;
  gap: 4px;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: visible;
  white-space: normal;
  -webkit-line-clamp: unset;
}

.entry-card-title__link {
  display: -webkit-box;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* REFACTOR: 女優/メーカー一覧ページは<article class="article">内でカードを描画するため、
   Cocoon標準の記事本文用見出し装飾（.article h3の左太枠線等）がカードタイトルに
   誤って継承されるのを打ち消す */
.article .entry-card-title {
  border: none;
  padding: 0;
  background: none;
  font-size: 13px;
}

.entry-card-actress {
  display: inline-block;
  color: #ff3d9a;
  text-decoration: none;
  font-weight: 800;
  font-size: 13px;
}

.entry-card-title__separator {
  flex: 0 0 auto;
  color: var(--site-muted);
  font-family: var(--font-body);
  font-weight: 400;
}

.entry-card-title__actresses {
  min-width: 0;
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.entry-card-title .entry-card-actress {
  display: inline;
  margin: 0;
  color: #ff3d9a;
  font-family: var(--font-body);
  font-size: .92em;
  white-space: nowrap;
}

.entry-card-actress:hover,
.entry-card-title .entry-card-actress:hover {
  color: #ff3d9a;
  text-decoration: underline;
}

.entry-card-maker-icon {
  display: inline-flex;
  flex: 0 0 24px;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-top: 1px;
  color: #fff;
  background: linear-gradient(135deg, #2a1f0a, #4a3510);
  border: 1px solid var(--luxury-gold);
  border-radius: 50%;
  font-family: var(--font-display);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.entry-card-maker-icon:hover {
  color: #fff;
  border-color: var(--luxury-gold-bright);
}

/* 品番: Consolasフォント（タイトル末尾の括弧内表示） */
.entry-card-code-suffix {
  font-family: Consolas, "Courier New", monospace;
  font-size: 0.88em;
  color: var(--luxury-gold-deep);
  opacity: 0.85;
}

.luxury-single .luxury-detail {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 0 36px;
}

.luxury-detail__header {
  text-align: center;
}

.luxury-detail__code {
  margin: 0 0 10px;
  color: var(--luxury-gold-deep);
  font-family: Consolas, "Courier New", monospace;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
}

.luxury-detail__title {
  margin: 0;
  color: var(--site-text);
  font-family: var(--font-display);
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.4;
}

.luxury-detail__title a {
  color: inherit;
  text-decoration: none;
}

.luxury-detail__title a:hover {
  text-decoration: underline;
}

.luxury-detail__content .wp-block-image {
  overflow: hidden;
}

.luxury-detail__content .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform .28s ease, filter .28s ease;
  transform-origin: center center;
}

.luxury-detail__content .wp-block-image:hover img,
.luxury-detail__content .wp-block-image a:hover img {
  transform: scale(1.05) !important;
  filter: saturate(1.05) contrast(1.04) !important;
}

.luxury-detail__keywords {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 16px 0 18px;
}

.luxury-detail__media {
  margin: 0 0 18px;
  text-align: center;
}

.luxury-detail__thumb {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

.luxury-detail__meta-table {
  width: 100%;
  margin: 0 0 24px;
  background: #fffdf8;
  border: 1px solid var(--site-border-gold);
  border-collapse: collapse;
}

.luxury-detail__meta-table th,
.luxury-detail__meta-table td {
  padding: 10px 16px;
  border-bottom: 1px solid rgba(184, 143, 47, 0.2);
  text-align: left;
  vertical-align: top;
}

.luxury-detail__meta-table tr:last-child th,
.luxury-detail__meta-table tr:last-child td {
  border-bottom: none;
}

.luxury-detail__meta-table th {
  width: 96px;
  color: var(--site-text-sub);
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.luxury-detail__meta-table td {
  color: var(--site-text);
  font-size: 14px;
  font-weight: 700;
}

.luxury-detail__meta-table a {
  color: inherit;
  text-decoration: none;
}

.luxury-detail__meta-table a:hover {
  text-decoration: underline;
}

.luxury-detail__actress-link {
  color: #ff3d9a !important;
}

.luxury-detail__genres {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 24px;
}

.luxury-detail__genre-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 3px 10px;
  color: #3a2a0e;
  background: #fff7df;
  border: 1px solid rgba(184, 143, 47, .34);
  border-radius: 2px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.luxury-detail__genre-chip:hover {
  color: #1a1208;
  background: #fff2c4;
}

.luxury-detail__samples {
  max-width: 760px;
  margin: 0 auto 36px;
}

.luxury-detail__samples-title {
  margin: 0 0 14px;
  color: var(--luxury-gold-deep);
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 800;
  border-bottom: 1px solid rgba(184, 143, 47, .25);
  padding-bottom: 8px;
}

.luxury-detail__samples-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.luxury-detail__samples-grid img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid rgba(184, 143, 47, .25);
  transition: opacity .15s ease;
}

.luxury-detail__samples-grid a:hover img {
  opacity: .85;
}

@media (max-width: 600px) {
  .luxury-detail__samples-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* 女優一覧・メーカー一覧ページ（/actress/ , /maker/ ） */
.luxury-entity-index__title {
  margin: 0 0 20px;
  color: var(--luxury-gold-deep);
  font-family: var(--font-display);
  font-size: clamp(22px, 3vw, 30px);
  text-align: center;
}

.luxury-entity-index__title .fa,
.article > h1 .fa {
  margin-right: 8px;
  color: var(--luxury-gold);
}

.luxury-entity-index__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.luxury-entity-index__card {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 8px 16px;
  box-sizing: border-box;
  background: #fffdf8;
  border: 1px solid var(--site-border-gold);
  border-radius: 2px;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.luxury-entity-index__card:hover {
  border-color: var(--luxury-gold);
  box-shadow: 0 2px 10px rgba(184, 143, 47, .18);
}

.luxury-entity-index__card--profile {
  align-items: stretch;
  padding: 12px 16px;
}

.luxury-entity-index__card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--site-text);
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
}

.luxury-entity-index__card--actress .luxury-entity-index__name {
  color: #ff3d9a;
}

.luxury-entity-index__card .fa {
  color: var(--luxury-gold);
}

.luxury-entity-index__profile {
  color: var(--site-text-sub);
  font-size: 12px;
}

.luxury-entity-index__social {
  display: flex;
  gap: 8px;
}

.luxury-entity-index__social a {
  color: var(--luxury-gold);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}

.luxury-entity-index__social a:hover {
  text-decoration: underline;
}

/* 女優個別ページ（/actress/{名前}/）のプロフィールヘッダー */
.luxury-profile-header {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 0 0 24px;
  padding: 24px;
  background: linear-gradient(135deg, #fbf1d8, #f5e2ad);
  border: 1px solid var(--luxury-gold);
  border-radius: 16px;
}

.luxury-profile-header__avatar {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  color: #fff;
  background: linear-gradient(135deg, #2a1f0a, #4a3510);
  border: 2px solid var(--luxury-gold);
  border-radius: 50%;
  font-family: var(--font-display);
  font-size: 28px;
  font-weight: 700;
}

.luxury-profile-header__name {
  margin: 0 0 6px;
  border: none !important;
  padding: 0 !important;
  background: none !important;
  color: #3a2a0e !important;
  font-family: var(--font-display);
  font-size: 22px !important;
}

.luxury-profile-header--actress .luxury-profile-header__name {
  color: #ff3d9a !important;
}

.luxury-profile-header__stats {
  margin: 0 0 8px;
  color: #7a6030;
  font-size: 13px;
}

.luxury-profile-header__social {
  display: flex;
  gap: 10px;
}

.luxury-profile-header__social a {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

/* 女優: サムネイル上のVR/2Dバッジと同じゴールドを背景に、文字はピンク */
.luxury-profile-header--actress .luxury-profile-header__social a {
  color: #ff3d9a;
  background: var(--luxury-gold);
  border: 1px solid var(--luxury-gold);
}

.luxury-profile-header--actress .luxury-profile-header__social a:hover {
  background: var(--luxury-gold-bright);
}

/* メーカー: 公式サイトリンクはバッジと同じゴールド背景に白抜き文字 */
.luxury-profile-header--maker .luxury-profile-header__social a {
  color: #fff;
  background: var(--luxury-gold);
  border: 1px solid var(--luxury-gold);
}

.luxury-profile-header--maker .luxury-profile-header__social a:hover {
  background: var(--luxury-gold-bright);
}

.luxury-profile-header__works {
  margin: 0 0 16px !important;
  border: none !important;
  background: none !important;
  padding: 0 0 8px !important;
  color: var(--luxury-gold-deep) !important;
  font-family: var(--font-display);
  font-size: 18px !important;
  border-bottom: 1px solid rgba(184, 143, 47, .25) !important;
}
