/* ============================================================
   DESIGN TOKENS — ぬくラボ v1 (dark / erotic-neon)
   60-30-10: base=dark plum / main=warm white text / accent=hot pink
   ============================================================ */
:root {
  /* color: base (60%) */
  --c-bg:        #120C0E;   /* ページ背景: 黒に微かな赤紫 */
  --c-surface:   #1e1017;   /* カード・ボックス面 */
  --c-surface-2: #291621;   /* 一段浮いた面(テーブルヘッダ等) */
  --c-line:      #3a2230;   /* 罫線 */
  /* color: main (30%) */
  --c-text:      #f3e7ee;   /* 本文 (contrast 14:1 on bg) */
  --c-text-sub:  #b39aa8;   /* 補足・メタ情報 (5.2:1) */
  /* color: accent (10%) — CTA専用 */
  --c-accent:    #E0324E;
  --c-accent-2:  #F04663;
  --grad-accent: linear-gradient(135deg,#E0324E 0%,#c81f66 100%);
  --grad-hero:   linear-gradient(160deg,#2b0f1f 0%,#120C0E 55%,#1a0b2e 100%);
  --glow:        0 0 24px rgba(224,50,78,.35);
  --glow-strong: 0 0 40px rgba(224,50,78,.55);
  /* 画像の上に文字を載せるためのスクリム(下端ほど濃い) */
  --grad-scrim:  linear-gradient(to top,
                   rgba(9,4,7,.97) 0%,
                   rgba(9,4,7,.82) 38%,
                   rgba(9,4,7,.32) 68%,
                   rgba(9,4,7,0)   100%);
  /* typography: base16 / scale 1.25 */
  --fs-s:  13px; --fs-base:16px; --fs-m:20px; --fs-l:25px; --fs-xl:31px; --fs-xxl:44px;
  --lh-body: 1.8; --lh-head: 1.35;
  --font: "Hiragino Sans","Noto Sans JP",sans-serif;
  /* spacing: 8px grid */
  --sp-1: 8px; --sp-2: 16px; --sp-3: 24px; --sp-4: 32px; --sp-6: 48px; --sp-8: 64px;
  /* radius / shadow */
  --r-s: 6px; --r-m: 12px; --r-l: 20px;
  --shadow: 0 4px 16px rgba(0,0,0,.45);
}

/* ============================================================
   パッケージ画像の見せ方(ヒーロー・記事一覧・セール共通)

   FANZA の pl.jpg は通常「左=裏表紙 / 中=背 / 右=表ジャケット」の合成なので、
   表だけを見せるには右寄せで切り出す(is-jacket)。
   VR作品の pl.jpg は合成ではなく1枚絵のポスターなので全体を収める(is-poster)。
   判定は PHP の sc_get_package_art()(APIのジャンル名にVR語があるか)。

   インラインstyleではなくクラスで持つ理由: 他所に
   `.entry-card-thumb img { object-fit: contain !important }` があり、
   インラインの通常宣言はそれに負けて絵の上下に白帯が出る(2026-08-12 実測)。
   ============================================================ */
.sc-card-pkg.is-jacket,
.sc-dmm-image.is-jacket img:not(.sc-card-fbg) {
  object-fit: cover !important;
  object-position: 100% 50% !important;
}
.sc-card-pkg.is-poster,
.sc-dmm-image.is-poster img:not(.sc-card-fbg) {
  object-fit: contain !important;
  object-position: 50% 50% !important;
}

/* ぼかし敷き(blur-fill): ポスター型・横長アイキャッチが 3:4 枠に contain で
   入るときの上下余白を、同じ画像のぼかしで埋める。黒帯より画になる。 */
img.sc-card-fbg {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  filter: blur(18px) saturate(1.15) brightness(.7) !important;
  transform: scale(1.15) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
/* 前面の絵はぼかし層より上に(absoluteのfbgはz-index無指定の静的要素に勝つため明示) */
img.sc-card-pkg { position: relative; z-index: 1; }
.sc-dmm-image img:not(.sc-card-fbg) { position: relative; z-index: 1; }

/* Base Styles (Cocoon Overrides) */
body {
  /* 平坦な黒だと肌のトーンが沈むので、固定の暖色アンビエントを敷く */
  background-color: var(--c-bg) !important;
  background-image:
    radial-gradient(ellipse 60% 45% at 12%  0%,  rgba(168,52,255,.14), transparent 70%),
    radial-gradient(ellipse 55% 40% at 88%  6%,  rgba(224,50,78,.13), transparent 70%),
    radial-gradient(ellipse 75% 55% at 50% 100%, rgba(224,50,78,.07), transparent 70%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
  color: var(--c-text) !important;
  font-family: var(--font) !important;
  font-size: var(--fs-base) !important;
  line-height: var(--lh-body) !important;
}
a {
  color: var(--c-accent-2);
  text-decoration: none;
  transition: .2s;
}
a:hover {
  color: #fff;
}
a:focus-visible, button:focus-visible {
  outline: 2px solid var(--c-accent);
  outline-offset: 2px;
}
img {
  max-width: 100%;
  display: block;
}

/* Header Container (Sticky 1-row layout) */
#header-container {
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  background: rgba(13,5,9,.92) !important;
  backdrop-filter: blur(8px) !important;
  border-bottom: 1px solid var(--c-line) !important;
}
#header-container-in {
  max-width: 1140px !important;
  margin: 0 auto !important;
  padding: 0 var(--sp-2) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: 56px !important;
  gap: var(--sp-2) !important;
}

/* Header (Logo area) */
#header,
#header-in,
.logo-header {
  background: transparent !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  width: auto !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  justify-content: flex-start !important;
}
.site-name-text {
  font-weight: 800 !important;
  font-size: 22px !important;
  color: #fff !important;
  letter-spacing: .05em !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}
.logo-header a {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}
.site-name-text::after {
  content: ".";
  color: var(--c-accent);
  text-shadow: 0 0 10px #E0324E;
}

/* Global Nav (Cocoon #navi) */
#navi,
#navi .navi-in {
  background: transparent !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  text-align: right !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
}
#navi-in {
  margin: 0 !important;
}
#navi .navi-in > ul {
  display: flex !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}
#navi .navi-in > ul > li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
#navi .navi-in a {
  color: var(--c-text-sub) !important;
  padding: 6px 8px !important;
  border-radius: var(--r-s) !important;
  font-size: 13px !important;
  transition: all .2s !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}
#navi .navi-in a:hover {
  color: #fff !important;
  background: transparent !important;
}
/* Focus on Sale link */
#navi .navi-in a[href*="/category/sale/"],
#navi .navi-in a[href*="/sale/"] {
  color: var(--c-accent) !important;
  background: transparent !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}
#navi .navi-in a[href*="/category/sale/"]:hover,
#navi .navi-in a[href*="/sale/"]:hover {
  color: #fff !important;
  background: transparent !important;
  text-shadow: none !important;
}
@media (max-width: 768px) {
  #navi .navi-in a:not([href*="/sale/"]):not([href*="/category/sale/"]) {
    display: none !important;
  }
}

/* Hero Carousel — 「開催中のセール」(sc-sale-strip)と同じ箱・同じヘッダ様式に
   統一する(2026-08-13 Yu指示)。全面グラデの帯をやめ、surface の箱+
   アクセント下線ヘッダ+同幅カード(200/260px)にする。 */
.sc-bhero {
  background: var(--c-surface);
  border: 1px solid var(--c-line);
  border-radius: var(--r-m);
  box-shadow: var(--shadow);
  position: relative;
  overflow: hidden;
  padding: var(--sp-3);
  /* ヒーローも #content-top-in(1140px)の中にいるため、幅は親に任せ切る。
     calc(100%-32px)を残すと親1140の中でさらに縮んで1108になり、セールと
     32pxずれる(2026-08-13 実測)。 */
  max-width: none;
  width: 100%;
  /* 下は「開催中のセール」に詰めて接続する(2026-08-13 Yu指示「くっつけて」) */
  margin: var(--sp-3) 0 0;
}
/* トップ上段(ヒーロー・セールストリップ)は下の記事一覧+サイドバーの柱
   (#content-in=1256px)と同幅に揃える(2026-08-13 Yu指示「下の記事一覧に合わせて
   広く」)。#content-top-in はネイティブで #content-in と同幅なので、幅には
   触らず余白だけ消す。 */
#content-top {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
#content-top-in {
  margin: 0 auto !important;
  padding-top: 0 !important;
}
/* 隙間29pxの正体はヒーローを包むウィジェット枠(#sc_hero-2)の
   margin-bottom 28.8px(Cocoon既定の1.8em)だった(2026-08-13 実測)。
   ウィジェット枠側を8pxに詰め、両者を接続する。 */
#content-top-in .sc-sale-strip,
#content-top-in .widget,
#content-top-in [id^="sc_sale_strip"] {
  margin-top: 0 !important;
}
#content-top-in [id^="sc_hero"] {
  margin-bottom: 8px !important;
}
.sc-bhero .sc-hero-head-row {
  margin: 0 0 var(--sp-2);
  padding: 0 0 var(--sp-1);
  border-bottom: 2px solid var(--c-accent);
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--sp-2);
}
.sc-bhero .sc-hero-head-row h2 {
  font-size: var(--fs-m);
  color: #fff;
  font-weight: 800;
  margin: 0;
}
.sc-hero-carousel {
  display: flex;
  gap: var(--sp-2);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: var(--sp-1) 0 var(--sp-2);
  scrollbar-width: none;
}
.sc-hero-carousel::-webkit-scrollbar {
  display: none;
}
.sc-hero-card {
  flex: 0 0 200px; /* セールストリップと同幅 */
  scroll-snap-align: start;
  background: var(--c-surface);
  border-radius: var(--r-m);
  overflow: hidden;
  border: 1px solid var(--c-line);
  transition: .2s;
  position: relative;
  display: block;
}
@media (min-width: 600px) {
  .sc-hero-card { flex: 0 0 260px; } /* セールストリップと同幅 */
}
.sc-hero-card:hover {
  border-color: var(--c-accent);
  box-shadow: var(--glow-strong);
  transform: translateY(-3px);
}
.sc-hero-card .sc-hero-rank {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 5;
  background: var(--grad-accent);
  color: #fff;
  font-weight: 800;
  font-size: 12px;
  padding: 2px 10px;
  border-radius: 999px;
  box-shadow: var(--glow);
}
/* 縦位置(3:4)。パッケージ画像はジャケット型=右クロップ / VRポスター型=全体表示で、
   object-fit / object-position は PHP がインライン style で入れる。
   ここで !important を付けるとポスター型が潰れるので付けない。 */
.sc-hero-card .sc-hero-th {
  aspect-ratio: 3/4;
  background: #0a0407;
  display: block;
  overflow: hidden;
  color: var(--c-text-sub);
  font-size: var(--fs-s);
  position: relative;
}
.sc-hero-card .sc-hero-th img.sc-card-pkg,
.sc-hero-card .sc-hero-th img.entry-card-thumb-image,
.sc-hero-card .sc-hero-th img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 100% 50%;
  transition: transform .5s ease;
}
.sc-hero-card:hover .sc-hero-th img.sc-card-pkg,
.sc-hero-card:hover .sc-hero-th img.wp-post-image {
  transform: scale(1.06);
}
/* ホバー中に巡回する本編サンプル画像 */
.sc-hero-card .sc-hero-th img.sc-card-frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  opacity: 0;
  transform: none;
  transition: opacity .35s ease;
  z-index: 2;
  pointer-events: none;
}
.sc-hero-card:hover .sc-hero-th img.sc-card-frame.sc-frame-on {
  opacity: 1;
}
/* 2026-08-12: 3行目が字の途中で切れるバグを修正。
   実測: computed の display が -webkit-box ではなく flow-root へ blockify され、
   -webkit-line-clamp が「2行目に…を付ける」までしか効かず、3行目が描画されていた。
   さらに clip 位置は padding box の端なので、3行目が padding-bottom(10px)の
   領域に食い込んで見えていた(scrollHeight 79px > clientHeight 59px)。
   対策: 下の余白を padding ではなく margin で取り、clip 位置を content box の端
   =ちょうど2行分に合わせる。クランプが効かない環境でも行の途中で切れない。
   display:-webkit-box は … を出すために残す(効く環境では従来どおり働く)。 */
/* 一覧カード・セールと同じく、タイトルは絵の上へ重ねてカード全面を画像にする */
.sc-hero-card .sc-hero-tt {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 4;
  padding: 42px 11px 0;
  /* 下余白は margin で取る。padding にすると3行目がその領域に描画されて
     字の途中で切れる(.sc-sale-strip-item-title と同じ理由) */
  margin: 0 0 10px;
  background: var(--grad-scrim);
  font-size: 12.5px;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  box-sizing: content-box;
  height: calc(1.45em * 2); /* ちょうど2行 */
  min-height: 0;
  color: #fff;
  text-shadow: 0 1px 4px rgba(0,0,0,.95);
  pointer-events: none;
}
/* スクリムの下端に余白を作る(clip 位置は content box の端のままにする) */
.sc-hero-card .sc-hero-th { margin-bottom: 0; }
.sc-hero-card::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 10px;
  z-index: 3;
  background: rgba(9,4,7,.97);
  pointer-events: none;
}

/* ============================================================
   Article Cards — 画像全面の2列グリッド (2026-08-12)

   実測: トップページ 4,689px のうち記事一覧が 2,714px = 58% を占める最大面積
   なのに、カードは 800x271px でサムネ幅 320px、画像占有率わずか 29.5%。
   ページの6割が横流しのテキストで、ヒーローやセールをいくら磨いても
   サイト全体の温度が変わらなかった原因がここ。

   カード全面を作品のパッケージ画像にし、タイトルは画像の上へ重ねる。
   抜粋(124字)は落とす。画像はアイキャッチではなくAPIのパッケージ画像
   (PHP側 sc_archive_card_art フィルタで差し替え)。
   ============================================================ */
.list.ect-entry-card {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 14px !important;
}
.list .entry-card-wrap:not(.clear) {
  display: block !important;
  position: relative !important;
  margin: 0 !important;
  background: var(--c-surface) !important;
  border-radius: var(--r-m) !important;
  overflow: hidden !important;
  box-shadow: var(--shadow) !important;
  transition: .2s !important;
  border: 1px solid var(--c-line) !important;
}
.list .entry-card-wrap:not(.clear) .entry-card {
  display: block !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.list .related-entry-card-wrap:not(.clear) {
  background: var(--c-surface) !important;
  border-radius: var(--r-m) !important;
  overflow: hidden !important;
  box-shadow: var(--shadow) !important;
  transition: .2s !important;
  border: 1px solid transparent !important;
  margin-bottom: var(--sp-2) !important;
  display: flex !important;
  flex-direction: column !important;
}
.list .entry-card-wrap.clear,
.list .related-entry-card-wrap.clear {
  display: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.list .entry-card-wrap:not(.clear):hover,
.list .related-entry-card-wrap:not(.clear):hover {
  transform: translateY(-4px) !important;
  border-color: var(--c-accent) !important;
  box-shadow: var(--glow-strong) !important;
}

/* --- サムネ: カード全面 --- */
.list .entry-card-wrap .entry-card-thumb {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: 3/4 !important;
  overflow: hidden !important;
  background: #0a0407 !important;
}
/* 見せ方はインラインstyleではなく is-jacket / is-poster のクラスで持つ。
   インラインだと、他所の `object-fit: contain !important` に負けて白帯が出る
   (インラインの通常宣言は !important 付きの宣言に勝てない・2026-08-12 実測)。 */
.list .entry-card-thumb img.sc-card-pkg {
  width: 100% !important;
  height: 100% !important;
  transition: transform .5s ease !important;
}
.list .entry-card-wrap:hover .entry-card-thumb img.sc-card-pkg,
.list .entry-card-wrap:hover .entry-card-thumb img.entry-card-thumb-image {
  transform: scale(1.06) !important;
}
/* ホバー中に巡回する本編サンプル画像 */
.list .entry-card-thumb img.sc-card-frame {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center center;
  opacity: 0;
  transform: none !important;
  transition: opacity .35s ease !important;
  z-index: 2;
  pointer-events: none;
}
.list .entry-card-wrap:hover .entry-card-thumb img.sc-card-frame.sc-frame-on {
  opacity: 1;
}

/* --- カテゴリラベル --- */
.list .entry-card-thumb .cat-label {
  top: 8px !important;
  left: 8px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 5 !important;
  background: rgba(9,4,7,.72) !important;
  border: 1px solid rgba(224,50,78,.5) !important;
  color: var(--c-accent-2) !important;
  border-radius: 999px !important;
  padding: 2px 10px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  backdrop-filter: blur(4px) !important;
}

/* --- タイトルを画像の上へ --- */
.list .entry-card-wrap .entry-card-content {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 4 !important;
  margin: 0 !important;
  padding: 44px 0 0 !important;
  background: var(--grad-scrim) !important;
}
/* 抜粋はページの6割をテキストの壁にしていた張本人。落とす */
.list .entry-card-wrap .entry-card-snippet {
  display: none !important;
}
.list .entry-card-wrap .entry-card-title {
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #fff !important;
  /* 下余白は padding ではなく margin。clip 位置を content box の端に合わせて
     3行目が字の途中で切れるのを防ぐ(.sc-hero-tt と同じ理由) */
  padding: 0 11px !important;
  margin: 0 0 6px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
  height: calc(1.45em * 2) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.95) !important;
}
.list .entry-card-wrap .entry-card-meta {
  position: static !important;
  padding: 0 11px 9px !important;
  margin: 0 !important;
  font-size: 11px !important;
  color: var(--c-text-sub) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.9) !important;
}

/* 関連記事カード(single下部)は従来の縦積みのまま */
.list .related-entry-card-wrap .related-entry-card-thumb,
.list .related-entry-card-wrap .entry-card-thumb {
  aspect-ratio: 16/10 !important;
  background: linear-gradient(135deg, #43172e, #1a0b2e) !important;
  position: relative !important;
}
.list .related-entry-card-wrap .related-entry-card-content,
.list .related-entry-card-wrap .entry-card-content {
  padding: var(--sp-2) !important;
}
.list .related-entry-card-wrap h2,
.list .related-entry-card-wrap h3 {
  font-size: var(--fs-base) !important;
  line-height: 1.5 !important;
  color: var(--c-text) !important;
}
.list .related-entry-card-wrap .related-entry-card-snippet,
.list .related-entry-card-wrap .entry-card-snippet {
  color: var(--c-text-sub) !important;
  font-size: var(--fs-s) !important;
}

/* In-Article Headings — 塗り箱+左帯は古いブログの定番で野暮ったさの主因。
   箱をやめ、太い白字+細いグラデ下線で締める(2026-08-13)。 */
.entry-content h2 {
  font-size: var(--fs-l) !important;
  line-height: var(--lh-head) !important;
  font-weight: 800 !important;
  letter-spacing: .02em !important;
  margin: var(--sp-6) 0 var(--sp-2) !important;
  padding: 0 0 10px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  color: #fff !important;
  position: relative !important;
}
.entry-content h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, var(--c-accent) 0%, rgba(224,50,78,.25) 40%, transparent 100%);
}

/* Tables (Cocoon .entry-content table) */
.entry-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: var(--sp-2) 0 !important;
  font-size: var(--fs-s) !important;
}
.entry-content th {
  background: var(--c-surface-2) !important;
  width: 30% !important;
  text-align: left !important;
  color: var(--c-text) !important;
}
.entry-content th, .entry-content td {
  padding: 12px 16px !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
}

/* DMM Shortcode Overrides */
.sc-dmm-media-container {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-m) !important;
  margin: var(--sp-3) 0 !important;
  padding: var(--sp-2) !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--sp-2) !important;
}
.sc-dmm-movie {
  border-radius: var(--r-s) !important;
  overflow: hidden !important;
}
.sc-sample-gallery {
  display: flex !important;
  gap: var(--sp-1) !important;
  overflow-x: auto !important;
  scroll-snap-type: x proximity !important;
  padding: 0 0 var(--sp-1) 0 !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(224,50,78,.4) transparent !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}
.sc-sample-gallery::-webkit-scrollbar {
  display: block !important;
  height: 6px !important;
}
.sc-sample-gallery::-webkit-scrollbar-track {
  background: transparent !important;
}
.sc-sample-gallery::-webkit-scrollbar-thumb {
  background: rgba(224,50,78,.4) !important;
  border-radius: 3px !important;
}
.sc-sample-gallery::-webkit-scrollbar-thumb:hover {
  background: rgba(224,50,78,.8) !important;
}
.sc-sample-gallery-item {
  flex: 0 0 88% !important;
  scroll-snap-align: start !important;
  border-radius: var(--r-s) !important;
  overflow: hidden !important;
  position: relative !important;
}
.sc-sample-gallery-item img {
  width: 100% !important;
  height: auto !important;
  border-radius: var(--r-s) !important;
  object-fit: cover !important;
  /* DMMのサンプル画像は 720x480 = 3:2。16/9 だと上下が切れて絵が減る */
  aspect-ratio: 3/2 !important;
  cursor: zoom-in !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
  transition: transform .4s ease !important;
}
.sc-sample-gallery-item:hover img {
  transform: scale(1.05) !important;
}
@media (min-width: 600px) {
  .sc-sample-gallery-item {
    flex: 0 0 56% !important;
  }
}
@media (min-width: 900px) {
  .sc-sample-gallery-item {
    flex: 0 0 42% !important;
  }
}

.sc-dmm-link-box {
  background: var(--c-surface) !important;
  border: 1px solid rgba(224,50,78,.35) !important;
  border-radius: var(--r-m) !important;
  padding: var(--sp-3) !important;
  text-align: center !important;
  margin: var(--sp-3) 0 !important;
  box-shadow: var(--shadow) !important;
}
.sc-dmm-link-box h4 {
  font-size: var(--fs-base) !important;
  margin-bottom: var(--sp-1) !important;
  line-height: 1.5 !important;
  color: var(--c-text) !important;
}
.sc-dmm-link-box p {
  color: var(--c-accent-2) !important;
  font-weight: 700 !important;
  margin-bottom: var(--sp-2) !important;
}
.sc-dmm-link-box p span {
  color: var(--c-text-sub) !important;
  font-weight: 400 !important;
}
.sc-dmm-link-box a {
  display: inline-block !important;
  background: var(--grad-accent) !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: var(--fs-m) !important;
  padding: 16px 48px !important;
  border-radius: 999px !important;
  box-shadow: var(--glow) !important;
  transition: .2s !important;
}
.sc-dmm-link-box a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 0 36px rgba(224,50,78,.55) !important;
}

/* ============================================================
   Sale / ランキング (/sale/) — 画像全面 (2026-08-12)

   旧: 白カードに 110px の小さい画像 + ランク丸 + 3行で切れるタイトル +
   価格行 + ピンクの「作品を見る」ボタン。装飾がカードの大半を占め、
   肝心の絵が一番小さいという逆転が起きていた。
   新: カード全面を作品の絵にし、ランク・%OFF・タイトル・価格を重ねる。
   カード自体がアフィリンクなので独立したボタンは廃止した。
   ============================================================ */
.sc-dmm-sale-wrapper {
  margin: var(--sp-3) 0 !important;
}
/* 列数。旧マークアップではPHP側の<style>が持っていたが、カード置換で
   そのブロックごと消えてモバイルが1列に伸びた(2026-08-13 実測 11,299px)。
   デスクトップは3列で止める — 4列にすると1枚あたりが145pxまで縮んで、
   「絵が小さい」という元の問題に戻るため。 */
.sc-dmm-sale-list {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 14px !important;
}
@media (min-width: 600px) {
  .sc-dmm-sale-list { grid-template-columns: repeat(3, 1fr) !important; }
}
.sc-dmm-sale-item {
  display: block !important;
  position: relative !important;
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-m) !important;
  overflow: hidden !important;
  box-shadow: var(--shadow) !important;
  text-decoration: none !important;
  transition: .2s !important;
}
.sc-dmm-sale-item:hover {
  border-color: var(--c-accent) !important;
  box-shadow: var(--glow-strong) !important;
  transform: translateY(-3px) !important;
}
.sc-dmm-sale-item .sc-dmm-image {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 3/4 !important;
  overflow: hidden !important;
  margin: 0 !important;
}
/* object-fit / object-position はジャケット型・VRポスター型で異なり、
   PHP がインライン style で入れる。ここで !important にすると潰れる */
.sc-dmm-sale-item .sc-dmm-image img {
  width: 100% !important;
  height: 100% !important;
  transition: transform .5s ease !important;
}
.sc-dmm-sale-item:hover .sc-dmm-image img {
  transform: scale(1.06) !important;
}
.sc-dmm-sale-noimg {
  display: block !important;
  padding: 16px !important;
  font-size: 12px !important;
  color: #fff !important;
  opacity: .8 !important;
  word-break: break-all !important;
}
/* ランク */
.sc-dmm-sale-rank {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  z-index: 5 !important;
  min-width: 26px !important;
  height: 26px !important;
  line-height: 26px !important;
  padding: 0 7px !important;
  text-align: center !important;
  border-radius: 999px !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  color: #fff !important;
  background: rgba(9,4,7,.78) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  backdrop-filter: blur(4px) !important;
}
.sc-dmm-sale-item.sc-rank-1 .sc-dmm-sale-rank {
  background: linear-gradient(135deg,#ffd700,#b8860b) !important;
  color: #000 !important; border-color: transparent !important;
}
.sc-dmm-sale-item.sc-rank-2 .sc-dmm-sale-rank {
  background: linear-gradient(135deg,#e0e0e0,#8a8a8a) !important;
  color: #000 !important; border-color: transparent !important;
}
.sc-dmm-sale-item.sc-rank-3 .sc-dmm-sale-rank {
  background: linear-gradient(135deg,#cd7f32,#8b4513) !important;
  color: #fff !important; border-color: transparent !important;
}
/* %OFF */
.sc-dmm-sale-off {
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  z-index: 5 !important;
}
/* タイトル・価格を絵の上へ */
.sc-dmm-sale-meta {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 4 !important;
  display: block !important;
  padding: 42px 0 0 !important;
  background: var(--grad-scrim) !important;
}
.sc-dmm-sale-title {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
  height: calc(1.45em * 2) !important; /* ちょうど2行 */
  padding: 0 11px !important;
  margin: 0 0 4px !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.95) !important;
}
.sc-dmm-sale-price {
  display: block !important;
  padding: 0 11px 10px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--c-accent-2) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.95) !important;
}

/* Sidebar Widgets (Cocoon .widget) */
#sidebar .widget {
  background: var(--c-surface) !important;
  border-radius: var(--r-m) !important;
  padding: var(--sp-2) !important;
  margin-bottom: var(--sp-3) !important;
  border: 1px solid var(--c-line) !important;
}
/* 点滅ドットはギミック感が強く野暮ったさの一因だったので撤去(2026-08-13)。
   小さめ・字間広めのラベル+短いアクセント下線で静かに締める。 */
#sidebar .widget h3 {
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
  margin-bottom: var(--sp-2) !important;
  padding-bottom: var(--sp-1) !important;
  border-bottom: 1px solid var(--c-line) !important;
  display: block !important;
  color: var(--c-text) !important;
  background: none !important;
  position: relative !important;
}
#sidebar .widget h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 28px;
  height: 2px;
  background: var(--c-accent);
}

/* Footer */
#footer {
  background: #0d0509 !important;
  padding: var(--sp-6) 0 !important;
  margin-top: var(--sp-8) !important;
  border-top: 1px solid var(--c-line) !important;
  color: var(--c-text-sub) !important;
}
#footer a {
  color: var(--c-text-sub) !important;
}
#footer a:hover {
  color: #fff !important;
}
#footer .footer-bottom-logo {
  display: none !important;
}
.footer-bottom {
  display: block !important;
  width: 100% !important;
}
.footer-bottom-content {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  text-align: left !important;
  float: none !important;
}
#navi-footer {
  text-align: left !important;
  display: block !important;
  width: auto !important;
  flex: 1 1 auto !important;
  float: none !important;
}
.credit {
  width: auto !important;
  margin: 0 !important;
  text-align: right !important;
  flex: 0 0 auto !important;
}
#navi-footer .menu-footer {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  gap: 16px !important;
  padding: 0 !important;
  margin: 0 !important;
}
#navi-footer .menu-footer li {
  list-style: none !important;
  display: inline-block !important;
}

/* Lightbox */
.sc-lightbox-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(0,0,0,0.85) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 99999 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.3s ease !important;
}
.sc-lightbox-overlay.sc-active {
  opacity: 1 !important;
  pointer-events: auto !important;
}
.sc-lightbox-image {
  max-width: 90% !important;
  max-height: 90vh !important;
  object-fit: contain !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.5) !important;
}

/* ============================================================
   v1.13.0 REVENUE ENHANCEMENT STYLES
   ============================================================ */

/* Sale Badge (%OFF) */
.sc-sale-badge {
  display: inline-block !important;
  background: var(--c-accent) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  padding: 2px 8px !important;
  border-radius: 4px !important;
  margin-left: 6px !important;
  box-shadow: var(--glow) !important;
  vertical-align: middle !important;
}

.sc-dmm-media-header {
  padding: 10px 16px !important;
  background: var(--c-surface-2) !important;
  border-bottom: 1px solid var(--c-line) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  font-size: 14px !important;
}
.sc-dmm-media-price {
  font-weight: 700 !important;
  color: var(--c-text) !important;
}
.sc-dmm-media-date {
  font-size: 12px !important;
  color: var(--c-text-sub) !important;
}

/* Sale Strip Widget */
.sc-sale-strip {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-m) !important;
  padding: var(--sp-3) !important;
  margin-bottom: var(--sp-4) !important;
  box-shadow: var(--shadow) !important;
}
.sc-sale-strip-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin-bottom: var(--sp-2) !important;
  border-bottom: 2px solid var(--c-accent) !important;
  padding-bottom: var(--sp-1) !important;
}
.sc-sale-strip-title {
  font-size: var(--fs-m) !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 !important;
}
.sc-sale-strip-date {
  font-size: 11px !important;
  color: var(--c-text-sub) !important;
}
.sc-sale-strip-grid {
  display: flex !important;
  gap: var(--sp-2) !important;
  overflow-x: auto !important;
  scroll-snap-type: x proximity !important;
  margin-bottom: var(--sp-2) !important;
  padding: var(--sp-1) 0 !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none;
}
.sc-sale-strip-grid::-webkit-scrollbar {
  display: none !important;
}
.sc-sale-strip-item {
  flex: 0 0 200px !important;
  scroll-snap-align: start !important;
  position: relative !important;
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-m) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  transition: .2s !important;
}
@media (min-width: 600px) {
  .sc-sale-strip-item {
    flex: 0 0 260px !important;
  }
}
.sc-sale-strip-item:hover {
  border-color: var(--c-accent) !important;
  box-shadow: var(--glow-strong) !important;
  transform: translateY(-3px) !important;
}
.sc-sale-strip-item:hover .sc-sale-strip-img-link img {
  transform: scale(1.06) !important;
}
.sc-sale-strip-img-link {
  position: relative !important;
  display: block !important;
  aspect-ratio: 3/4 !important;
  background: transparent !important;
  overflow: hidden !important;
}
.sc-sale-strip-img-link img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: right center !important;
  transition: transform .5s ease !important;
}
.sc-sale-strip-badge-wrap {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  z-index: 2 !important;
}
/* タイトル・価格を絵の上へ重ね、カード全面を画像にする */
.sc-sale-strip-body {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 2 !important;
  padding: 42px 0 0 !important;
  background: var(--grad-scrim) !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 0 !important;
  justify-content: flex-end !important;
}
/* 2026-08-12: ヒーローと同じ 3行目食い込みバグ(実測 20件中18件)。
   下の余白を padding から margin へ移し、clip 位置を content box の端
   =ちょうど2行分に合わせる。詳細は .sc-hero-tt のコメント参照。 */
.sc-sale-strip-item-title {
  padding: 0 11px !important;
  margin: 0 0 4px !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.95) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
  height: calc(1.5em * 2) !important; /* ちょうど2行 */
  min-height: 0 !important;
  text-decoration: none !important;
}
.sc-sale-strip-item-title:hover {
  color: var(--c-accent-2) !important;
}
.sc-sale-strip-price {
  padding: 0 11px 10px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--c-accent-2) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.95) !important;
}
.sc-sale-strip-footer {
  text-align: right !important;
  margin-top: var(--sp-1) !important;
}
.sc-sale-strip-more {
  display: inline-block !important;
  background: var(--grad-accent) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 6px 16px !important;
  border-radius: 999px !important;
  box-shadow: var(--glow) !important;
  transition: .2s !important;
  text-decoration: none !important;
}
.sc-sale-strip-more:hover {
  transform: translateX(2px) !important;
  color: #fff !important;
}

/* Feature D: Actress FANZA link & VR Guide Box */
.sc-actress-fanza-box {
  margin: var(--sp-4) 0 var(--sp-3) !important;
  text-align: center !important;
}
.sc-actress-fanza-link {
  display: inline-block !important;
  background: var(--grad-accent) !important;
  color: #fff !important;
  font-size: var(--fs-m) !important;
  font-weight: 800 !important;
  padding: 16px 40px !important;
  border-radius: 999px !important;
  box-shadow: var(--glow) !important;
  transition: .2s !important;
  text-decoration: none !important;
}
.sc-actress-fanza-link:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 0 36px rgba(224,50,78,.6) !important;
  color: #fff !important;
}

.sc-vr-guide-box {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-m) !important;
  padding: var(--sp-3) !important;
  margin: var(--sp-4) 0 var(--sp-3) !important;
  box-shadow: var(--shadow) !important;
}
.sc-vr-guide-title {
  font-size: var(--fs-l) !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 0 var(--sp-1) !important;
  padding-bottom: var(--sp-1) !important;
  border-bottom: 2px solid var(--c-accent) !important;
}
.sc-vr-guide-desc {
  font-size: var(--fs-s) !important;
  color: var(--c-text-sub) !important;
  margin-bottom: var(--sp-2) !important;
}
.sc-vr-guide-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 var(--sp-3) 0 !important;
}
.sc-vr-guide-list li {
  margin-bottom: 8px !important;
  padding-left: 16px !important;
  position: relative !important;
}
.sc-vr-guide-list li::before {
  content: "▶" !important;
  position: absolute !important;
  left: 0 !important;
  color: var(--c-accent) !important;
  font-size: 10px !important;
}
.sc-vr-guide-list a {
  color: var(--c-text-sub) !important;
  font-size: var(--fs-base) !important;
  transition: .2s !important;
  text-decoration: none !important;
}
.sc-vr-guide-list a:hover {
  color: #fff !important;
}
.sc-vr-guide-more-wrap {
  text-align: right !important;
}
.sc-vr-guide-more {
  display: inline-block !important;
  background: var(--c-surface-2) !important;
  border: 1px solid var(--c-accent) !important;
  color: #fff !important;
  font-size: var(--fs-s) !important;
  font-weight: 700 !important;
  padding: 8px 20px !important;
  border-radius: 999px !important;
  transition: .2s !important;
  text-decoration: none !important;
}
.sc-vr-guide-more:hover {
  background: var(--c-accent) !important;
  box-shadow: var(--glow) !important;
  color: #fff !important;
}

/* Carousel Arrows & Wrappers */
.sc-carousel-wrapper {
  position: relative !important;
}

.sc-carousel-arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 10 !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: rgba(30, 16, 23, 0.85) !important;
  border: 1px solid var(--c-accent) !important;
  color: var(--c-text) !important;
  font-size: 20px !important;
  line-height: 34px !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.5) !important;
  user-select: none !important;
}

.sc-carousel-arrow:hover {
  background: var(--c-accent) !important;
  color: #fff !important;
  box-shadow: var(--glow) !important;
}

.sc-carousel-arrow.sc-disabled {
  opacity: 0.3 !important;
  cursor: default !important;
}

.sc-carousel-prev {
  left: 8px !important;
}

.sc-carousel-next {
  right: 8px !important;
}

@media (max-width: 768px) {
  .sc-carousel-arrow {
    width: 28px !important;
    height: 28px !important;
    font-size: 16px !important;
    line-height: 26px !important;
  }
  .sc-carousel-prev {
    left: 4px !important;
  }
  .sc-carousel-next {
    right: 4px !important;
  }
}

/* Mid-article DMM Package Box */
.sc-dmm-mid-box {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-m) !important;
  padding: var(--sp-3) !important;
  margin: var(--sp-4) 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--sp-3) !important;
  box-shadow: var(--shadow) !important;
}
@media (min-width: 600px) {
  .sc-dmm-mid-box {
    flex-direction: row !important;
    align-items: center !important;
  }
}
.sc-dmm-mid-img-wrap {
  flex: 0 0 160px !important;
  max-width: 200px !important;
  border-radius: var(--r-s) !important;
  overflow: hidden !important;
}
.sc-dmm-mid-img-wrap img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}
.sc-dmm-mid-info {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
.sc-dmm-mid-title {
  font-size: var(--fs-m) !important;
  font-weight: 800 !important;
  margin: 0 !important;
  color: #fff !important;
  line-height: 1.4 !important;
}
.sc-dmm-mid-title a {
  color: #fff !important;
  text-decoration: none !important;
}
.sc-dmm-mid-title a:hover {
  color: var(--c-accent) !important;
}
.sc-dmm-mid-price {
  font-size: var(--fs-s) !important;
  font-weight: 700 !important;
  color: var(--c-accent-2) !important;
  margin: 0 !important;
}
.sc-dmm-mid-btn {
  display: inline-block !important;
  background: var(--grad-accent) !important;
  color: #fff !important;
  font-size: var(--fs-s) !important;
  font-weight: 800 !important;
  padding: 10px 24px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  box-shadow: var(--glow) !important;
  align-self: flex-start !important;
  transition: .2s !important;
}
.sc-dmm-mid-btn:hover {
  transform: translateY(-2px) !important;
  color: #fff !important;
}

/* ============================================================
   v1.14.1 ADDITIONS: RANKING RECOLORING, FOOTER, GOODS
   ============================================================ */

/* 1. Ranking recoloring & layout (dark x neon) */
.sc-dmm-ranking-wrapper {
  margin: var(--sp-3) 0 !important;
}
.sc-dmm-ranking-meta {
  font-size: var(--fs-s) !important;
  color: var(--c-text-sub) !important;
  margin-bottom: var(--sp-1) !important;
  text-align: right !important;
}
.sc-dmm-ranking-list {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: var(--sp-2) !important;
}
@media (min-width: 600px) {
  .sc-dmm-ranking-list { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 900px) {
  .sc-dmm-ranking-list { grid-template-columns: repeat(4, 1fr) !important; }
}
.sc-dmm-ranking-item {
  position: relative !important;
  background: var(--c-surface, #1e1017) !important;
  border: 1px solid var(--c-line, #3a2230) !important;
  border-radius: var(--r-m, 12px) !important;
  padding: var(--sp-2, 16px) !important;
  display: flex !important;
  flex-direction: column !important;
  box-shadow: var(--shadow) !important;
  transition: transform .2s, box-shadow .2s, border-color .2s !important;
}
.sc-dmm-ranking-item:hover {
  transform: translateY(-3px) !important;
  border-color: var(--c-accent, #E0324E) !important;
  box-shadow: var(--glow) !important;
}
.sc-dmm-ranking-badge {
  position: absolute !important;
  top: -8px !important;
  left: -8px !important;
  width: 36px !important;
  height: 36px !important;
  line-height: 36px !important;
  text-align: center !important;
  border-radius: 50% !important;
  font-weight: bold !important;
  font-size: var(--fs-s) !important;
  z-index: 2 !important;
  box-shadow: 0 2px 6px rgba(0,0,0,.5) !important;
}
.sc-dmm-ranking-badge-1 { background: linear-gradient(135deg, #ffd700, #b8860b) !important; color: #000 !important; }
.sc-dmm-ranking-badge-2 { background: linear-gradient(135deg, #e0e0e0, #8a8a8a) !important; color: #000 !important; }
.sc-dmm-ranking-badge-3 { background: linear-gradient(135deg, #cd7f32, #8b4513) !important; color: #fff !important; }
.sc-dmm-ranking-badge-other { background: var(--c-surface-2, #291621) !important; border: 1px solid var(--c-line, #3a2230) !important; color: var(--c-text-sub, #b39aa8) !important; }

.sc-dmm-ranking-img-wrap {
  aspect-ratio: 3/4 !important;
  background: #000 !important;
  border-radius: var(--r-s, 6px) !important;
  overflow: hidden !important;
  margin-bottom: var(--sp-1, 8px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.sc-dmm-ranking-img-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.sc-dmm-ranking-title {
  margin: 0 0 var(--sp-1, 8px) !important;
  font-size: 14px !important;
  color: var(--c-text, #f3e7ee) !important;
  line-height: 1.4 !important;
  flex-grow: 1 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
.sc-dmm-ranking-price {
  margin: 0 0 var(--sp-1, 8px) !important;
  font-weight: bold !important;
  color: var(--c-accent-2, #F04663) !important;
  font-size: 14px !important;
  text-align: center !important;
}
.sc-dmm-ranking-btn {
  display: block !important;
  text-align: center !important;
  background: var(--grad-accent) !important;
  color: #fff !important;
  padding: 8px 12px !important;
  border-radius: var(--r-s, 6px) !important;
  text-decoration: none !important;
  font-weight: bold !important;
  font-size: 13px !important;
  transition: .2s !important;
}
.sc-dmm-ranking-btn:hover {
  box-shadow: var(--glow) !important;
  color: #fff !important;
}

/* 2. Footer Menu Styling (Task F) */
.menu-footer li:first-child {
  border-left: none !important;
}
.menu-footer li:last-child {
  border-right: none !important;
}
.menu-footer li a {
  padding: 0 16px !important;
}

/* 3. Goods Card & Gallery (Task G) */
.sc-dmm-goods-container {
  margin: var(--sp-3) 0 !important;
}
.sc-dmm-goods-card {
  display: flex !important;
  gap: 16px !important;
  align-items: center !important;
  background: var(--c-surface, #1e1017) !important;
  border: 1px solid var(--c-line, #3a2230) !important;
  border-radius: var(--r-m, 12px) !important;
  padding: 16px !important;
}
@media (max-width: 600px) {
  .sc-dmm-goods-card {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}
.sc-dmm-goods-img {
  width: 130px !important;
  flex-shrink: 0 !important;
  aspect-ratio: 1/1 !important;
  background: #000 !important;
  border-radius: var(--r-s, 6px) !important;
  overflow: hidden !important;
}
.sc-dmm-goods-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
.sc-dmm-goods-info {
  flex: 1 !important;
}
.sc-dmm-goods-info h4 {
  margin: 0 0 8px !important;
  font-size: 16px !important;
  color: var(--c-text, #f3e7ee) !important;
  line-height: 1.4 !important;
}
.sc-dmm-goods-price {
  margin: 0 0 12px !important;
  font-weight: bold !important;
  color: var(--c-accent-2, #F04663) !important;
  font-size: 15px !important;
}
.sc-dmm-goods-btn {
  display: inline-block !important;
  background: var(--grad-accent) !important;
  color: #fff !important;
  padding: 10px 24px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-weight: bold !important;
  font-size: 14px !important;
  box-shadow: var(--glow) !important;
  transition: .2s !important;
}
.sc-dmm-goods-btn:hover {
  transform: translateY(-2px) !important;
  color: #fff !important;
}

div.tagline {
  display: none !important;
}

/* 2026-08-12: 旧アイキャッチ(16:10の横長)を枠内に収めるための contain。
   パッケージ画像(.sc-card-pkg)とサンプル画像(.sc-card-frame)は 3:4 の枠を
   埋める必要があるので対象外にする。除外しないと contain !important が勝って
   絵の上下に白帯が出る(2026-08-12 実測)。 */
.list .entry-card-wrap .entry-card-thumb img:not(.sc-card-pkg):not(.sc-card-frame):not(.sc-card-fbg),
.list .related-entry-card-wrap .related-entry-card-thumb img,
.list .related-entry-card-wrap .entry-card-thumb img {
  object-fit: contain !important;
  height: 100% !important;
  width: 100% !important;
}

/* == 2026-08-03 D102-3R: ヘッダーのブログタイトルを56pxバー内で上下中央に ==
   実測: #header-container-in(flex,center) の子 #header が block で56pxに伸び、
   中の #header-in(22px) が上端に張り付いていた。#header 自体を flex 中央化する。 */
#header {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}
#header-in {
  align-items: center !important;
}

/* ============================================================
   Typography & Parts Refinement (2026-08-13 Yu指示「野暮ったい」解消)
   方針: ネオンは差し色へ格下げし、字間(palt)・余白のリズム・細い線で締める。
   ============================================================ */
body {
  font-feature-settings: "palt" 1;
  letter-spacing: .01em;
}
h1, h2, h3, h4,
.sc-bhero .sc-hero-head-row h2,
.sc-sale-strip-title {
  font-feature-settings: "palt" 1;
  letter-spacing: .02em;
}

/* 記事タイトル(h1) */
h1.entry-title {
  font-size: 26px !important;
  line-height: 1.4 !important;
  font-weight: 800 !important;
  letter-spacing: .015em !important;
  color: #fff !important;
}

/* 記事内h3: 細い左バーだけの静かな見出し */
.entry-content h3 {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: var(--sp-4) 0 var(--sp-1) !important;
  padding: 2px 0 2px 12px !important;
  background: transparent !important;
  border: none !important;
  border-left: 3px solid var(--c-accent) !important;
  border-radius: 0 !important;
}

/* テーブル: 外枠を捨ててゼブラ+下線だけに */
.entry-content table {
  border: none !important;
  background: transparent !important;
}
.entry-content th, .entry-content td {
  border: none !important;
  border-bottom: 1px solid var(--c-line) !important;
  padding: 10px 14px !important;
}
.entry-content th {
  background: transparent !important;
  color: var(--c-accent-2) !important;
  font-weight: 700 !important;
}
.entry-content tr:nth-child(even) td {
  background: rgba(255,255,255,.02) !important;
}

/* ページネーション: Cocoon既定の四角を丸ピルへ */
.pagination { margin: var(--sp-4) 0 !important; }
.pagination .page-numbers {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text-sub) !important;
  border-radius: 999px !important;
  width: 40px !important;
  height: 40px !important;
  line-height: 38px !important;
  font-size: 14px !important;
  margin: 0 4px !important;
}
.pagination .page-numbers:hover {
  border-color: var(--c-accent) !important;
  color: #fff !important;
  background: var(--c-surface) !important;
}
.pagination .page-numbers.current {
  background: var(--grad-accent) !important;
  border-color: transparent !important;
  color: #fff !important;
}
.pagination-next-link {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  color: var(--c-text) !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  transition: .2s !important;
}
.pagination-next-link:hover {
  border-color: var(--c-accent) !important;
  box-shadow: var(--glow) !important;
  color: #fff !important;
  background: var(--c-surface) !important;
}

/* パンくず・記事メタ */
.breadcrumb {
  font-size: 12px !important;
  color: var(--c-text-sub) !important;
  margin: var(--sp-2) 0 !important;
  letter-spacing: .03em !important;
}
.breadcrumb a { color: var(--c-text-sub) !important; }
.breadcrumb a:hover { color: var(--c-accent-2) !important; }
.article-header .entry-date,
.post-date, .post-update {
  letter-spacing: .04em !important;
  font-size: 12px !important;
  color: var(--c-text-sub) !important;
}

/* フッター */
#navi-footer a {
  font-size: 12.5px !important;
  letter-spacing: .05em !important;
}
.credit {
  font-size: 12px !important;
  letter-spacing: .04em !important;
}

/* ============================================================
   Brush-up (2026-08-13 Yu委任): モバイル下部メニュー / 見出し折返し / 年齢認証
   ============================================================ */

/* 1) Cocoonモバイル下部メニュー: 既定の灰色(実測 rgb(117,117,117))が
   ダークテーマと衝突していた。ヘッダと同じ半透明ダーク+blurへ。 */
.mobile-menu-buttons {
  background: rgba(13,5,9,.94) !important;
  backdrop-filter: blur(8px) !important;
  border-top: 1px solid var(--c-line) !important;
  box-shadow: 0 -4px 16px rgba(0,0,0,.4) !important;
}
.mobile-menu-buttons .menu-button > a,
.mobile-menu-buttons .menu-caption {
  color: var(--c-text-sub) !important;
}
.mobile-menu-buttons .menu-icon {
  color: var(--c-accent-2) !important;
}

/* 2) セクションヘッダ: モバイルで「開催中のセール」が途中改行していた。
   見出しと取得日時を縦積みにして見出しは折り返させない。 */
@media (max-width: 600px) {
  .sc-sale-strip-header,
  .sc-bhero .sc-hero-head-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
  }
  .sc-sale-strip-title { white-space: nowrap !important; }
  .sc-sale-strip-date { font-size: 10px !important; }
}

/* 3) 年齢認証モーダル: 全訪問者が最初に見る画面をブランドの顔にする。
   本体のstyleはwp_footerで後勝ちするため !important で上書きする。 */
#sc-age-gate {
  background: rgba(9,4,7,.9) !important;
  backdrop-filter: blur(10px) !important;
}
#sc-age-gate .sc-age-box {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-line) !important;
  border-radius: var(--r-l) !important;
  box-shadow: 0 0 60px rgba(224,50,78,.16), var(--shadow) !important;
  padding: 36px 28px !important;
}
#sc-age-gate .sc-age-box::before {
  content: "ぬくラボ.";
  display: block;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: .05em;
  color: var(--c-accent);
  text-shadow: 0 0 14px rgba(224,50,78,.5);
  margin-bottom: 10px;
}
#sc-age-gate .sc-age-title {
  color: #fff !important;
  letter-spacing: .04em !important;
}
#sc-age-gate #sc-age-yes {
  background: var(--grad-accent) !important;
  border-radius: 999px !important;
  box-shadow: var(--glow) !important;
  letter-spacing: .02em !important;
}
#sc-age-gate #sc-age-no {
  background: transparent !important;
  border: 1px solid var(--c-line) !important;
  border-radius: 999px !important;
  color: var(--c-text-sub) !important;
}
#sc-age-gate #sc-age-no:hover {
  color: #fff !important;
  border-color: var(--c-text-sub) !important;
}

/* ============================================================
   関連記事カード(記事下)を一覧と同じ画像全面型に統一(2026-08-13 v1.16.8)
   従来の .list .related-entry-card-wrap 系ルールは single ページに
   .list 祖先が無く一度も当たっていなかった(実測)。ここは実DOM
   (#related-entries > .related-list > a.related-entry-card-wrap)に
   合わせて直接当てる。画像はPHP側 sc_related_card_art が供給。
   ============================================================ */
.related-entries .related-list {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 14px !important;
}
.related-entries .related-entry-card-wrap {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--c-surface) !important;
  border-radius: var(--r-m) !important;
  overflow: hidden !important;
  box-shadow: var(--shadow) !important;
  transition: .2s !important;
  border: 1px solid var(--c-line) !important;
}
.related-entries .related-entry-card-wrap:hover {
  transform: translateY(-4px) !important;
  border-color: var(--c-accent) !important;
  box-shadow: var(--glow-strong) !important;
}
.related-entries .related-entry-card {
  display: block !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
/* --- サムネ: カード全面 3:4 --- */
.related-entries .related-entry-card-thumb {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: 3/4 !important;
  overflow: hidden !important;
  background: #0a0407 !important;
}
.related-entries .related-entry-card-thumb img.sc-card-pkg {
  width: 100% !important;
  height: 100% !important;
  transition: transform .5s ease !important;
}
.related-entries .related-entry-card-wrap:hover .related-entry-card-thumb img.sc-card-pkg {
  transform: scale(1.06) !important;
}
/* アート未供給(アイキャッチ無し等)の素サムネは一覧と同じく contain */
.related-entries .related-entry-card-thumb img:not(.sc-card-pkg):not(.sc-card-frame):not(.sc-card-fbg) {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
/* ホバーで巡回する本編サンプル画像(一覧カードと同仕様) */
.related-entries .related-entry-card-thumb img.sc-card-frame {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center center;
  opacity: 0;
  transform: none !important;
  transition: opacity .35s ease !important;
  z-index: 2;
  pointer-events: none;
}
.related-entries .related-entry-card-wrap:hover .related-entry-card-thumb img.sc-card-frame.sc-frame-on {
  opacity: 1;
}
/* --- カテゴリラベル: 一覧と同じピル --- */
.related-entries .related-entry-card-thumb .cat-label {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 5 !important;
  background: rgba(9,4,7,.72) !important;
  border: 1px solid rgba(224,50,78,.5) !important;
  color: var(--c-accent-2) !important;
  border-radius: 999px !important;
  padding: 2px 10px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  backdrop-filter: blur(4px) !important;
}
/* --- タイトルはスクリムで画像上へ・抜粋は落とす --- */
.related-entries .related-entry-card-content {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 4 !important;
  margin: 0 !important;
  padding: 44px 0 0 !important;
  background: var(--grad-scrim) !important;
}
.related-entries .related-entry-card-snippet {
  display: none !important;
}
.related-entries .related-entry-card-title {
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
  color: #fff !important;
  /* 下余白は padding ではなく margin(clamp 3行目の見切れ防止・一覧と同理由) */
  padding: 0 11px !important;
  margin: 0 0 9px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
  height: calc(1.45em * 2) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.95) !important;
}


/* ================================================================
   ================================================================
   B-SKIN LAYER (v1.17.0 / 2026-08-13)
   ここから下が B案SKIN。上の design-v1 基底を後勝ちで全面リトーンする。
   正本: _design-b-skin-20260813/{b-skin-implementation.css, IMPLEMENTATION-PLAN.md}
   ================================================================ */

/* ==== B-skin: トークン+ベース+共通部品 ==== */
/* ---- トークン v1.0(確定版) ---- */
:root{
  --nl-bg: #120C0E; --nl-surface: #1C1115; --nl-surface-2: #241318;
  --nl-line: rgba(245,234,230,.10); --nl-ink: #F5EAE6; --nl-sub: #A88F92;
  --nl-crim: #E0324E; --nl-crim-hi: #F04663; --nl-gold: #FFC24B;
  --nl-wait: #C9A06A; --nl-skip: #7A6A6E; --nl-veil: rgba(12,7,9,.96);
  --nl-mono:ui-monospace,"SF Mono",Menlo,monospace;
  --nl-sans:"Zen Kaku Gothic New",sans-serif;
  --nl-num:"Oswald","Zen Kaku Gothic New",sans-serif;
}

/* ---- ベース(Cocoon上書き) ---- */
body.sc-skin{background:var(--nl-bg);color:var(--nl-ink);font-family:var(--nl-sans);font-size:15px;line-height:1.95;-webkit-font-smoothing:antialiased}
body.sc-skin a{color:var(--nl-crim);text-decoration:none}
body.sc-skin a:hover{color:var(--nl-crim-hi)}
body.sc-skin :focus-visible{outline:2px solid var(--nl-crim);outline-offset:2px}
body.sc-skin img{max-width:100%;height:auto}

/* ---- 共通原子 ---- */
.sc-kicker{font:600 10px var(--nl-mono);letter-spacing:.22em;color:var(--nl-crim)}
.sc-h2{font:900 22px/1.5 var(--nl-sans);letter-spacing:-.01em;color:var(--nl-ink)}
.sc-sechead{display:flex;align-items:baseline;gap:14px;margin:46px 0 22px}
.sc-stamp{font:500 10.5px var(--nl-mono);color:var(--nl-sub)} /* 価格の出る場所すべてに併記 */
.sc-btn{display:inline-block;background:var(--nl-crim);color: #FFF4F1;font:700 13.5px var(--nl-sans);padding:13px 28px;border-radius:999px;border:0;cursor:pointer;text-align:center}
.sc-btn:hover{background:var(--nl-crim-hi);color: #FFF4F1}
.sc-btn--ghost{background:transparent;border:1px solid  rgba(245,234,230,.35);color:var(--nl-ink)}
.sc-btn--ghost:hover{background:transparent;border-color:var(--nl-crim);color:var(--nl-crim)}
.sc-chip{display:inline-block;font:700 10px var(--nl-sans);padding:3px 10px;border-radius:999px;border:1px solid transparent;vertical-align:middle}
.sc-chip--buy{background:var(--nl-crim);color: #FFF4F1;border-color:var(--nl-crim)}
.sc-chip--wait{color:var(--nl-wait);border-color: rgba(201,160,106,.55)}
.sc-chip--skip{color:var(--nl-skip);border-color: #43363A}
.sc-num{font-family:var(--nl-num)}
.sc-score{font:600 1em var(--nl-num);color:var(--nl-crim)}
.sc-price{font:700 22px var(--nl-num);color:var(--nl-gold)}
.sc-img-pkg{aspect-ratio:3/4;object-fit:cover;width:100%;display:block;background:var(--nl-surface-2)}
.sc-img-sample{aspect-ratio:3/2;object-fit:cover;width:100%;display:block;background:var(--nl-surface-2)}


/* ==== B-skin: シチュ格子 ==== */
/* シチュタグ格子(欲望軸の入口) */
.sc-situ{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sc-situ__tile{position:relative;display:block;height:96px;border-radius:12px;overflow:hidden;border:1px solid var(--nl-line)}
.sc-situ__tile:hover{border-color:var(--nl-crim)}
.sc-situ__tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sc-situ__tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(18,12,14,.15), rgba(18,12,14,.88))}
.sc-situ__label{position:absolute;left:15px;bottom:11px;z-index:1;display:flex;align-items:baseline;gap:8px;font:900 17px var(--nl-sans);color:var(--nl-ink)}
.sc-situ__count{font:500 10px var(--nl-mono);color:var(--nl-sub)}

/* ==== B-skin: sticky CTA ==== */
/* sticky CTA(PC・結論ボックス通過後に出現) */
.sc-sticky{position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;align-items:center;gap:16px;background:var(--nl-veil);border-top:1px solid  rgba(224,50,78,.4);padding:12px 52px}
.sc-sticky.is-visible{display:flex}
.sc-sticky__title{font:600 13px var(--nl-sans);max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 下部固定CTA(SP) */
@media(max-width:768px){
  .sc-sticky{padding:10px 16px calc(14px + env(safe-area-inset-bottom));gap:10px}
  .sc-sticky__title{display:none}
  .sc-sticky .sc-btn{flex:1;padding:13px 0}
}

/* ==== B-skin: 回遊ゾーン ==== */
/* 回遊ゾーン(記事末尾・サイドバー代替) */
.sc-explore{max-width:1256px;margin:44px auto 0;padding:0 16px 40px}
.sc-explore__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}

/* ==== B-skin: 一覧(タグヒーロー/フィルタ/ページャ) ==== */
   一覧(タグ/カテゴリ共通・PC2カラム)
   ============================================================ */
.sc-taghero{padding:26px 0 22px;border-bottom:1px solid var(--nl-line)}
.sc-taghero h1{font:900 30px var(--nl-sans);letter-spacing:-.01em;display:inline}
.sc-taghero__desc{font:400 12.5px/1.9 var(--nl-sans);color:var(--nl-sub);margin-top:8px;max-width:640px}
.sc-filter{display:inline-flex;border:1px solid  rgba(245,234,230,.16);border-radius:999px;overflow:hidden}
.sc-filter button{font:500 12px var(--nl-sans);padding:8px 18px;color:var(--nl-sub);background:none;border:0;cursor:pointer}
.sc-filter button+button{border-left:1px solid  rgba(245,234,230,.12)}
.sc-filter button.is-active{background:var(--nl-crim);color: #FFF4F1;font-weight:700}
.sc-sort{font:500 11.5px var(--nl-sans);color:var(--nl-sub);border:1px solid  rgba(245,234,230,.16);border-radius:999px;padding:8px 16px;background:none}
.sc-pager{display:flex;justify-content:center;gap:6px;margin-top:24px}
.sc-pager a,.sc-pager span{width:32px;height:32px;border:1px solid  rgba(245,234,230,.16);border-radius:999px;display:grid;place-items:center;font:500 12px var(--nl-sans);color:var(--nl-sub)}
.sc-pager .is-current{background:var(--nl-crim);color: #FFF4F1;border-color:var(--nl-crim);font-weight:700}

/* ==== B-skin: 固定ページ/フォーム ==== */
/* ============================================================
   固定ページ(運営者情報・免責 / プライバシー / お問い合わせ)
   ============================================================ */
.sc-page{max-width:760px;margin:0 auto;padding:20px 16px 40px}
.sc-page h1{font:900 23px var(--nl-sans)}
.sc-page h2{display:flex;align-items:center;gap:9px;font:700 14px var(--nl-sans);margin:22px 0 8px}
.sc-page h2::before{content:"";width:14px;height:2px;background:var(--nl-crim)}
.sc-page p{font:400 12.5px/1.95 var(--nl-sans);color: #E3D2CF;margin:0}
.sc-form label{display:block;font:500 10.5px var(--nl-mono);color:var(--nl-sub);margin:16px 0 6px}
.sc-form input,.sc-form select,.sc-form textarea{width:100%;background: #1A1014;border:1px solid  rgba(245,234,230,.14);border-radius:8px;color:var(--nl-ink);font:400 12px var(--nl-sans);padding:12px 14px;box-sizing:border-box}
.sc-form textarea{min-height:110px}
.sc-form .sc-btn{width:100%;margin-top:18px}

/* ==== B-skin: SP調整 ==== */
/* ---- SP調整(390基準) ---- */
@media(max-width:480px){
  .sc-bhero{height:auto;aspect-ratio:3/2.6}
  .sc-bhero__grid{grid-template-columns:1fr}
  .sc-bhero__sub{display:none}
  .sc-bhero__body{padding:0 16px 14px}
  .sc-bhero__title{font-size:24px;line-height:1.35}
  .sc-sechead{margin:32px 0 14px}
  .sc-h2{font-size:18px}
  .sc-grid{grid-template-columns:1fr}
  .sc-situ{grid-template-columns:1fr 1fr}
  .sc-situ__tile{height:64px}
  .sc-top5{grid-template-columns:1fr}
  .sc-sale{padding:12px 16px;overflow-x:auto}
  .sc-spec{flex-direction:column}
  .sc-spec__pkg{width:140px}
  .sc-article h1{font-size:21px}
  body.sc-skin{font-size:14.5px}
}

/* ==== B-skin: モーション配慮 ==== */
/* ---- モーション配慮 ---- */
@media(prefers-reduced-motion:reduce){
  .sc-cycle img{transition:none}
}

/* ==== B-skin: パレット・書体差替(design-v1の全--c-*参照を一括リトーン) ==== */
body.sc-skin {
  --c-bg: #120C0E;
  --c-surface: #1C1115;
  --c-line: rgba(245,234,230,.10);
  --c-text: #F5EAE6;
  --c-text-sub: #A88F92;
  --c-accent: #E0324E;
  --c-accent-2: #F04663;
  --grad-accent: linear-gradient(135deg, #E0324E, #F04663);
  --grad-scrim: linear-gradient(180deg, transparent, rgba(12,7,9,.55) 40%, rgba(12,7,9,.97));
  font-family: var(--nl-sans) !important;
  background: var(--nl-bg) !important;
}
body.sc-skin h1, body.sc-skin h2, body.sc-skin h3 {
  font-family: var(--nl-sans) !important;
}
/* 価格・数字は Oswald+金 */
body.sc-skin .sc-dmm-media-price,
body.sc-skin .sc-dmm-goods-price {
  font-family: var(--nl-num) !important;
  color: var(--nl-gold) !important;
}

/* ==== B-skin: 一覧カードをサンプル主導(3:2)+タイトル画像下+パッケージ右下インセットへ ==== */
body.sc-skin .list .entry-card-wrap .entry-card-thumb {
  aspect-ratio: 3/2 !important;
}
body.sc-skin .list .entry-card-thumb img.sc-card-frame {
  opacity: 0;
}
body.sc-skin .list .entry-card-thumb img.sc-card-frame.sc-frame-on {
  opacity: 1;
}
body.sc-skin .entry-card-thumb img.sc-card-inset,
body.sc-skin .sc-hero-th img.sc-card-inset {
  position: absolute !important;
  right: 8px !important;
  bottom: 8px !important;
  width: 23% !important;
  height: auto !important;
  aspect-ratio: 3/4 !important;
  object-fit: cover !important;
  z-index: 3 !important;
  border: 1px solid rgba(245,234,230,.35) !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.5) !important;
}
/* タイトルはスクリム重ねをやめて画像の下の帯へ */
body.sc-skin .list .entry-card-wrap .entry-card-content {
  position: static !important;
  padding: 10px 12px 4px !important;
  background: var(--nl-surface) !important;
}
body.sc-skin .list .entry-card-wrap .entry-card-title {
  color: var(--nl-ink) !important;
  font-weight: 700 !important;
  text-shadow: none !important;
  padding: 0 !important;
}
body.sc-skin .list .entry-card-wrap .entry-card-meta {
  padding: 4px 12px 10px !important;
  text-shadow: none !important;
}

/* ==== B-skin: ヒーロー(既存カルーセルDOMのまま迫力を上げる) ==== */
body.sc-skin .sc-hero-card {
  width: 340px !important;
}
body.sc-skin .sc-hero-card:first-child {
  width: 560px !important;
}
body.sc-skin .sc-hero-card .sc-hero-th {
  aspect-ratio: 3/2 !important;
}

/* ==== B-skin: 記事1カラム(sc-onecol) ==== */
body.sc-onecol .sidebar,
body.sc-onecol #sidebar {
  display: none !important;
}
body.sc-onecol .main,
body.sc-onecol #main {
  width: 100% !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  float: none !important;
}
/* Cocoon既定の関連記事は回遊ゾーン(sc-explore)へ一本化 */
body.sc-skin #related-entries {
  display: none !important;
}
body.sc-skin .sc-explore__card {
  display: block;
  background: var(--nl-surface);
  border: 1px solid var(--nl-line);
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  transition: .2s;
}
body.sc-skin .sc-explore__card:hover {
  border-color: var(--nl-crim);
  transform: translateY(-3px);
}
body.sc-skin .sc-explore__thumb {
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
}
body.sc-skin .sc-explore__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.sc-skin .sc-explore__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: var(--nl-ink);
  font: 700 13px/1.5 var(--nl-sans);
  padding: 10px 12px 12px;
}

/* ==== B-skin: サンプル主導の基底表示(sc-frame-on は常時可視) ====
   design-v1 はヒーローで「基底=パッケージ・フレームはhover時のみ」だったが、
   B-skin はパッケージを出さないため、活性フレームを常時表示する。 */
body.sc-skin .entry-card-thumb img.sc-card-frame,
body.sc-skin .sc-hero-th img.sc-card-frame {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 0;
  transition: opacity .35s ease !important;
}
body.sc-skin .entry-card-thumb img.sc-card-frame.sc-frame-on,
body.sc-skin .sc-hero-th img.sc-card-frame.sc-frame-on {
  opacity: 1 !important;
}
/* シチュ格子の外枠(格子本体 .sc-situ は確定CSS側) */
body.sc-skin .sc-situ-wrap {
  margin: 8px 0 24px;
}

/* ==== B-skin: カードのスコアバッジ+シチュチップ(案のカード解剖に接近) ==== */
body.sc-skin .entry-card-thumb .sc-card-score,
body.sc-skin .sc-hero-th .sc-card-score {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  z-index: 4 !important;
  font: 600 12px/1 var(--nl-num) !important;
  color: #fff !important;
  background: var(--nl-crim) !important;
  border-radius: 6px !important;
  padding: 4px 8px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.4) !important;
}
body.sc-skin .entry-card-thumb .sc-card-chips,
body.sc-skin .sc-hero-th .sc-card-chips {
  position: absolute !important;
  left: 8px !important;
  bottom: 8px !important;
  z-index: 4 !important;
  display: flex !important;
  gap: 6px !important;
}
body.sc-skin .sc-card-chip {
  font: 700 10.5px/1.3 var(--nl-sans) !important;
  color: var(--nl-ink) !important;
  background: rgba(9,4,7,.72) !important;
  border: 1px solid rgba(224,50,78,.5) !important;
  border-radius: 999px !important;
  padding: 3px 10px !important;
  backdrop-filter: blur(4px) !important;
}
/* スコアと衝突するためカテゴリラベルは右上へ(案の配置に一致) */
body.sc-skin .list .entry-card-thumb .cat-label {
  left: auto !important;
  right: 8px !important;
  top: 8px !important;
}
/* パッケージインセットとチップの重なり回避: インセットは右下のまま、チップは左下 */

/* ==== B-skin: ヒーロー(案2a・ルートは衝突回避で sc-bhero) ==== */
/* ヒーロー(サンプル3枚モザイク+巡回) */
.sc-bhero{position:relative;height:min(620px,74vh);overflow:hidden;background: #0C0709}
.sc-bhero__grid{display:grid;grid-template-columns:2fr 1fr;gap:6px;height:100%}
.sc-bhero__main{position:relative}
.sc-bhero__sub{display:grid;grid-template-rows:1fr 1fr;gap:6px}
.sc-bhero__sub img{width:100%;height:100%;object-fit:cover}
.sc-bhero__shade{position:absolute;inset:auto 0 0 0;height:64%;background:linear-gradient(180deg,transparent, rgba(12,7,9,.55) 40%, rgba(12,7,9,.97));pointer-events:none}
.sc-bhero__body{position:absolute;inset:auto 0 0 0;padding:0 52px 38px}
.sc-bhero__title{font:900 44px/1.28 var(--nl-sans);letter-spacing:-.01em;max-width:960px;text-wrap:pretty;margin:12px 0 0}
/* 巡回(ヒーロー・ギャラリービューア共用) */
.sc-cycle{position:absolute;inset:0}
.sc-cycle img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
.sc-cycle img.is-active{opacity:1}
.sc-dots{position:absolute;top:18px;left:24px;display:flex;align-items:center;gap:8px;z-index:2}
.sc-dots__count{font:600 10px var(--nl-mono);color: rgba(245,234,230,.65);background: rgba(12,7,9,.55);padding:4px 9px;border-radius:999px}
.sc-dots i{width:5px;height:5px;border-radius:50%;background: rgba(245,234,230,.4)}
.sc-dots i.is-active{width:16px;border-radius:999px;background:var(--nl-crim)}


/* ==== B-skin: セール速報帯 ==== */
.sc-sale{display:flex;align-items:center;gap:24px;padding:16px 52px;background: #1A0E13;border-top:1px solid  rgba(224,50,78,.3);border-bottom:1px solid  rgba(224,50,78,.3)}
.sc-sale__item{display:flex;align-items:center;gap:12px;padding:10px 16px;border:1px solid var(--nl-line);background:var(--nl-bg);border-radius:10px}
.sc-sale__off{font:600 17px var(--nl-num);color:var(--nl-gold)}
.sc-sale__item del{font:500 11px var(--nl-mono);color:var(--nl-sub)}
.sc-sale__item b{color:var(--nl-ink)}
.sc-sale__meta{margin-left:auto;text-align:right}

/* ==== B-skin: カードグリッド ==== */
/* カードグリッド(新着・一覧共用) */
.sc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sc-card{background:var(--nl-surface);border:1px solid var(--nl-line);border-radius:12px;overflow:hidden}
.sc-card:hover{border-color: rgba(224,50,78,.55)}
.sc-card__media{position:relative;aspect-ratio:3/2;background:var(--nl-surface-2)}
.sc-card__media img{width:100%;height:100%;object-fit:cover}
.sc-card__score{position:absolute;top:10px;left:10px;font:600 13px var(--nl-num);background: rgba(12,7,9,.85);color:var(--nl-crim);border:1px solid  rgba(224,50,78,.5);padding:2px 8px;border-radius:6px}
.sc-card__pkg{position:absolute;right:10px;bottom:10px;width:42px;aspect-ratio:3/4;border:1px solid  rgba(245,234,230,.3);border-radius:4px;overflow:hidden}
.sc-card__pkg img{width:100%;height:100%;object-fit:cover}
.sc-card__fmt{position:absolute;top:10px;right:10px;font:600 9.5px var(--nl-mono);background: rgba(12,7,9,.7);color:var(--nl-sub);padding:3px 7px;border-radius:5px}
.sc-card__body{padding:14px 16px 16px}
.sc-card__title{font:600 15px/1.6 var(--nl-sans);margin:9px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:48px}
.sc-card__meta{display:flex;align-items:baseline;margin-top:7px;font:400 11.5px var(--nl-sans);color:var(--nl-sub)}
.sc-card__meta .sc-fanza{margin-left:auto;font:500 10.5px var(--nl-mono)}

/* ==== B-skin: TOP5 ==== */
/* 編集部評価TOP5 */
.sc-top5{display:grid;grid-template-columns:600px 1fr;gap:36px}
.sc-top5__feat{position:relative;border-radius:14px;overflow:hidden}
.sc-top5__feat::after{content:"";position:absolute;inset:auto 0 0 0;height:70%;background:linear-gradient(180deg,transparent, rgba(12,7,9,.95))}
.sc-top5__featbody{position:absolute;inset:auto 0 0 0;padding:0 20px 18px;z-index:1}
.sc-top5__rank{position:absolute;top:6px;left:14px;z-index:1;font:600 84px/1 var(--nl-num);color:transparent;-webkit-text-stroke:1.5px  rgba(224,50,78,.9)}
.sc-top5__row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--nl-line)}
.sc-top5__no{font:600 26px var(--nl-num);color:transparent;-webkit-text-stroke:1px  rgba(224,50,78,.8);width:38px;flex:none}

/* ==== B-skin: 記事タイポ・部品(将来分含む) ==== */
.sc-article{max-width:760px;margin:0 auto;padding:22px 16px 0}
.sc-article h1{font:900 30px/1.55 var(--nl-sans);letter-spacing:-.01em;text-wrap:pretty}
.sc-breadcrumb{font:500 11px var(--nl-mono);color:var(--nl-sub)}

/* 結論ボックス(冒頭・三段判定) */
.sc-verdict{border:1px solid  rgba(224,50,78,.5);background: #1E1216;border-radius:14px;padding:24px 26px;margin:22px 0}
.sc-verdict__head{display:flex;align-items:baseline;font:600 10px var(--nl-mono);letter-spacing:.22em;color:var(--nl-crim)}
.sc-verdict__head small{margin-left:auto;letter-spacing:0;color:var(--nl-sub)}
.sc-verdict__quote{font:900 18px/1.5 var(--nl-sans)}
.sc-verdict__cta{display:flex;align-items:center;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--nl-line)}
/* 三段判定メーター(スルー/セール待ち/買い) */
.sc-meter{display:flex;border:1px solid  rgba(245,234,230,.14);border-radius:999px;overflow:hidden;max-width:340px}
.sc-meter span{flex:1;text-align:center;font:500 11px var(--nl-sans);padding:7px 0;color:var(--nl-skip)}
.sc-meter span+span{border-left:1px solid  rgba(245,234,230,.12)}
.sc-meter .is-wait{color:var(--nl-wait)}
.sc-meter .is-active{background:var(--nl-crim);color: #FFF4F1;font-weight:800;border-color:var(--nl-crim)}
/* 固定4軸メーター */
.sc-axes{display:grid;grid-template-columns:1fr 1fr;gap:9px 24px;max-width:420px}
.sc-axis__head{display:flex;justify-content:space-between;font:500 10.5px var(--nl-sans);color:var(--nl-sub)}
.sc-axis__head b{font:600 10.5px var(--nl-num);color:var(--nl-crim)}
.sc-axis__bar{height:5px;background: rgba(245,234,230,.1);border-radius:999px;margin-top:4px;overflow:hidden}
.sc-axis__fill{height:100%;background:var(--nl-crim)} /* width%はインラインで */

/* 作品情報表 */
.sc-spec{display:flex;gap:22px}
.sc-spec__pkg{width:190px;flex:none;border:1px solid var(--nl-line);border-radius:8px;overflow:hidden}
.sc-spec table{flex:1;border-collapse:collapse;width:auto}
.sc-spec th{font:500 11px var(--nl-mono);color:var(--nl-sub);text-align:left;width:106px;padding:9px 16px 9px 0;border-bottom:1px solid var(--nl-line);vertical-align:top}
.sc-spec td{font:400 13px var(--nl-sans);padding:9px 0;border-bottom:1px solid var(--nl-line)}

/* サンプルギャラリー(720×480・ビューア巡回+サムネ切替) */
.sc-gallery__viewer{position:relative;aspect-ratio:3/2;border-radius:12px;overflow:hidden;background:var(--nl-surface-2)}
.sc-gallery__thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:8px}
.sc-gallery__thumbs button{aspect-ratio:3/2;border:1px solid var(--nl-line);border-radius:6px;overflow:hidden;padding:0;background:var(--nl-surface-2);cursor:pointer}
.sc-gallery__thumbs button img{width:100%;height:100%;object-fit:cover;display:block}
.sc-gallery__thumbs button.is-active{border:2px solid var(--nl-crim)}

/* 本文の読み味(＋/−リスト・刺さる人) */
.sc-pros li,.sc-cons li{list-style:none;display:flex;gap:12px;padding:6px 0;font:400 14.5px/1.9 var(--nl-sans)}
.sc-pros li::before{content:"＋";color:var(--nl-crim);font-weight:700}
.sc-cons li{color: #E3D2CF}
.sc-cons li::before{content:"−";color:var(--nl-sub);font-weight:700}
.sc-fitbox{display:grid;grid-template-columns:1fr 1fr;border:1px solid  rgba(245,234,230,.12);border-radius:12px;overflow:hidden;margin-top:26px}
.sc-fitbox>div{padding:18px 20px}
.sc-fitbox>div+div{border-left:1px solid  rgba(245,234,230,.12)}

/* 価格と取扱店(FANZA主導+併売) */
.sc-price-row{display:grid;grid-template-columns:90px 1fr auto auto;gap:18px;align-items:center;border:1px solid var(--nl-line);border-radius:12px;padding:12px 18px;margin-top:8px}
.sc-price-row--main{background: #221219;border-color: rgba(224,50,78,.45);padding:15px 18px;margin-top:0}
.sc-price-row--main .sc-price{font-size:24px}

/* ==== B-skin: サイドバーW群 ==== */
.sc-widget{background:var(--nl-surface);border:1px solid var(--nl-line);border-radius:12px;padding:16px 18px;margin-bottom:16px}
.sc-widget__title{font:900 14px var(--nl-sans);margin:0 0 6px}
.sc-widget__row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--nl-line);font:500 11.5px var(--nl-sans)}
.sc-widget__row .sc-score{margin-left:auto;font-size:12px}
.sc-widget__thumb{width:62px;flex:none;aspect-ratio:3/2;border-radius:5px;overflow:hidden}
.sc-widget__no{font:600 13px var(--nl-num);color:var(--nl-crim);width:22px;flex:none}
.sc-widget--policy{border-color: rgba(224,50,78,.35)} /* W5採点について */
.sc-widget--policy .sc-count{font:600 24px var(--nl-num);color:var(--nl-crim)}
.sc-tagcloud{display:flex;flex-wrap:wrap;gap:7px}
.sc-tagcloud a{border:1px solid  rgba(245,234,230,.16);border-radius:999px;padding:6px 12px;color:var(--nl-ink);font:500 11px var(--nl-sans)}
.sc-tagcloud a:hover{border-color:var(--nl-crim);color:var(--nl-crim)}

/* ================================================================
   B-SKIN ADAPTER v2 (案まんま化・2026-08-13)
   ================================================================ */
/* Cocoonのリスト・ページネーションは案のDOMに置換済みのため隠す */
.sc-home ~ .list, .sc-home ~ .pagination,
.sc-listing ~ .list, .sc-listing ~ .pagination { display: none !important; }
/* 旧セール大カード枠(開催中のセール)はトップでは帯に置換 */
body.sc-skin.home .widget:has(.sc-dmm-sale-item),
body.sc-skin.home .sc-dmm-sale-wrapper { display: none !important; }
/* Cocoonの新着記事ウィジェットはW1と重複するため隠す */
body.sc-skin .widget_new_entries { display: none !important; }

/* ヒーロー(器) */
body.sc-skin .sc-bhero { margin: 0; border-radius: 14px; }
body.sc-skin .sc-bhero__body .sc-kicker { color: var(--nl-crim); font: 600 10px var(--nl-mono); letter-spacing: .22em; }
body.sc-skin .sc-bhero__meta { display: flex; align-items: baseline; gap: 12px; margin-top: 10px; }
body.sc-skin .sc-bhero__meta .sc-score { font-size: 26px; }
body.sc-skin .sc-bhero__rvcount { font: 500 11px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-bhero__cta { display: flex; align-items: center; gap: 14px; margin-top: 16px; flex-wrap: wrap; }
body.sc-skin .sc-bhero__sub a { display: block; height: 100%; overflow: hidden; }
body.sc-skin .sc-bhero__meta .sc-card-chips { position: static !important; display: flex; gap: 6px; }

/* セール帯(器) */
body.sc-skin .sc-sale { border-radius: 12px; margin: 8px 0 26px; flex-wrap: wrap; }
body.sc-skin .sc-sale__head { display: flex; align-items: baseline; gap: 8px; font: 900 14px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-sale__head .sc-kicker { color: var(--nl-crim); font: 600 10px var(--nl-mono); letter-spacing: .18em; }
body.sc-skin .sc-sale__item { text-decoration: none; }
body.sc-skin .sc-sale__item b { font: 600 12px var(--nl-sans); }
body.sc-skin .sc-sale__meta { font: 500 10px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-sale__more { color: var(--nl-crim); font-weight: 700; text-decoration: none; }

/* セクション見出し */
body.sc-skin .sc-secthead { display: flex; align-items: baseline; gap: 14px; margin: 40px 0 18px; font: 900 21px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-secthead .sc-kicker { color: var(--nl-crim); font: 600 10px var(--nl-mono); letter-spacing: .22em; }
body.sc-skin .sc-secthead .sc-more { margin-left: auto; font: 500 12px var(--nl-sans); color: var(--nl-sub); text-decoration: none; }
body.sc-skin .sc-secthead .sc-more:hover { color: var(--nl-crim); }
body.sc-skin .sc-secthead__note { font: 500 10px var(--nl-mono); color: var(--nl-sub); }

/* カード内の巡回フレーム(sc-card__media でも効かせる) */
body.sc-skin .sc-card__media { display: block; }
body.sc-skin .sc-card__media img.sc-card-frame { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .35s ease; }
body.sc-skin .sc-card__media img.sc-card-frame.sc-frame-on { opacity: 1; }
body.sc-skin .sc-card__title a { color: var(--nl-ink); text-decoration: none; }
body.sc-skin .sc-card__body .sc-card-chips { position: static !important; display: flex; gap: 6px; }
body.sc-skin .sc-card__media .sc-card__score,
body.sc-skin .sc-card__media .sc-card__fmt,
body.sc-skin .sc-card__media .sc-card__pkg { z-index: 3; }

/* TOP5(器) */
body.sc-skin .sc-top5__feat { display: block; aspect-ratio: 3/2; }
body.sc-skin .sc-top5__feat > img { width: 100%; height: 100%; object-fit: cover; }
body.sc-skin .sc-top5__featbody { display: flex; align-items: baseline; gap: 12px; }
body.sc-skin .sc-top5__ttl { font: 700 15px/1.5 var(--nl-sans); color: var(--nl-ink); flex: 1; }
body.sc-skin .sc-top5__cnt { font: 500 10px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-top5__row { text-decoration: none; }
body.sc-skin .sc-top5__rowttl { flex: 1; font: 500 13px/1.6 var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-top5__row .sc-score { font-size: 15px; }

/* プロモ3枠 */
body.sc-skin .sc-promo { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 34px 0 10px; }
body.sc-skin .sc-promo__box { display: flex; flex-direction: column; gap: 6px; background: var(--nl-surface); border: 1px solid var(--nl-line); border-radius: 12px; padding: 18px 20px; text-decoration: none; transition: .2s; }
body.sc-skin .sc-promo__box:hover { border-color: var(--nl-crim); transform: translateY(-3px); }
body.sc-skin .sc-promo__box .sc-kicker { color: var(--nl-crim); font: 600 9.5px var(--nl-mono); letter-spacing: .2em; }
body.sc-skin .sc-promo__box b { font: 900 15px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-promo__box span:last-child { font: 400 11.5px var(--nl-sans); color: var(--nl-sub); }

/* 一覧・タグヒーロー */
body.sc-skin .sc-taghero .sc-taghero__count { font: 500 12px var(--nl-mono); color: var(--nl-sub); margin-left: 10px; }
body.sc-skin .sc-listing .sc-grid { margin-top: 22px; }
body.sc-skin .sc-pager a, body.sc-skin .sc-pager span { text-decoration: none; }
body.sc-skin .sc-pager .is-current { background: var(--nl-crim); color: #FFF4F1; border-color: var(--nl-crim); font-weight: 700; }

/* サイドバーW群(器) */
body.sc-skin .sc-widget__row { text-decoration: none; }
body.sc-skin .sc-widget__ttl { flex: 1; color: var(--nl-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body.sc-skin .sc-widget__thumb img { width: 100%; height: 100%; object-fit: cover; }
body.sc-skin .sc-widget__unit { font: 500 11px var(--nl-sans); color: var(--nl-sub); margin-left: 6px; }
body.sc-skin .sc-widget__note { font: 400 11px/1.8 var(--nl-sans); color: var(--nl-sub); margin: 8px 0 0; }
body.sc-skin .sc-tagcloud a { text-decoration: none; }
body.sc-skin .sc-tagcloud a small { color: var(--nl-sub); }
/* 既存の広告ウィジェットも器を揃える */
body.sc-skin .widget-sidebar { background: var(--nl-surface); border: 1px solid var(--nl-line); border-radius: 12px; padding: 16px 18px; margin-bottom: 16px; }
body.sc-skin .widget-sidebar-title { font: 900 14px var(--nl-sans) !important; color: var(--nl-ink) !important; border: 0 !important; padding: 0 !important; margin: 0 0 10px !important; background: none !important; }

/* 記事は本文幅760(案2b) */
body.sc-onecol .main, body.sc-onecol #main { max-width: 792px !important; }
body.sc-onecol .article h1 { font: 900 30px/1.55 var(--nl-sans) !important; letter-spacing: -.01em; }

/* 固定ページ(案2e相当の器をCocoon DOMへ) */
body.sc-skin.page .article { max-width: 792px; margin: 0 auto; }
body.sc-skin.page .article h1 { font: 900 23px var(--nl-sans) !important; }
body.sc-skin.page .entry-content h2 { display: flex; align-items: center; gap: 9px; font: 700 14px var(--nl-sans) !important; margin: 22px 0 8px !important; background: none !important; padding: 0 !important; }
body.sc-skin.page .entry-content h2::before { content: ""; width: 14px; height: 2px; background: var(--nl-crim); }
body.sc-skin.page .entry-content h2::after { display: none !important; }

/* SP調整 */
@media (max-width: 768px) {
  body.sc-skin .sc-bhero__grid { grid-template-columns: 1fr; }
  body.sc-skin .sc-bhero__sub { display: none; }
  body.sc-skin .sc-bhero__body { padding: 0 16px 20px; }
  body.sc-skin .sc-bhero__title { font-size: 24px; line-height: 1.35; }
  body.sc-skin .sc-sale { padding: 12px 16px; gap: 10px; }
  body.sc-skin .sc-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  body.sc-skin .sc-top5 { grid-template-columns: 1fr; gap: 14px; }
  body.sc-skin .sc-situ { grid-template-columns: 1fr 1fr; }
  body.sc-skin .sc-promo { grid-template-columns: 1fr; }
  body.sc-skin .sc-card__title { font-size: 12.5px; min-height: 40px; }
}

/* ==== B-skin fix: a要素のリンク色規則(body.sc-skin a)がボタン文字を食う問題 ==== */
body.sc-skin a.sc-btn { color: #FFF4F1 !important; }
body.sc-skin a.sc-btn--ghost { color: var(--nl-ink) !important; }
body.sc-skin a.sc-btn--ghost:hover { color: var(--nl-crim) !important; }
/* 旧「開催中のセール」箱はトップでは帯へ置換済みのため確実に隠す */
body.sc-skin.home .widget_sc_sale_strip { display: none !important; }

/* ==== B-skin fix: TOP5の列配分(メインカラム実幅に適合)と行タイトルの折返し ==== */
body.sc-skin .sc-top5 { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 24px; }
body.sc-skin .sc-top5__rowttl { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* ==== B-skin fix: トップ1ページ目はCocoonのページ送りも出さない(すべて見る→へ一本化) ==== */
.sc-home ~ .pagination, .sc-home ~ .pagination-next { display: none !important; }

/* ==== B-skin 詰め: トップ(1ページ目)はサイドバー無しのフル幅(案2a) ==== */
body.sc-skin.home:not(.paged) #sidebar,
body.sc-skin.home:not(.paged) .sidebar { display: none !important; }
body.sc-skin.home:not(.paged) .main,
body.sc-skin.home:not(.paged) #main { width: 100% !important; max-width: none !important; flex: 1 1 100% !important; }
/* 旧セール箱は全域で撤去(トップ=帯 / 一覧=グリッドに譲る) */
body.sc-skin .widget_sc_sale_strip { display: none !important; }
/* 広告表記の帯はスキンに調和させつつ可読を維持 */
body.sc-skin #sc-footer-ad-notice {
  background: #0C0709 !important;
  color: var(--nl-sub) !important;
  border-top: 1px solid var(--nl-line) !important;
}
/* Cocoonフッターは案の4カラムへ置換 */
/* #footer自体は残し、広告表記以外の子だけ隠す(移設スクリプトが表記を#footerへ入れるため) */
body.sc-skin #footer > *:not(#sc-footer-ad-notice) { display: none !important; }
body.sc-skin #footer { background: #0C0709 !important; padding: 0 !important; }
body.sc-skin .sc-footer { background: #0C0709; border-top: 1px solid var(--nl-line); padding: 44px 52px 28px; }
body.sc-skin .sc-footer__grid { max-width: 1256px; margin: 0 auto; display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 28px; }
body.sc-skin .sc-footer__brand b { font: 900 20px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-footer__brand .sc-dot { color: var(--nl-crim); }
body.sc-skin .sc-footer__brand p { font: 400 11.5px/1.9 var(--nl-sans); color: var(--nl-sub); margin: 10px 0 0; }
body.sc-skin .sc-footer__18 { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; border: 1.5px solid var(--nl-crim); color: var(--nl-crim); font: 700 12px var(--nl-num); margin-top: 12px; }
body.sc-skin .sc-footer h4 { font: 600 10px var(--nl-mono); letter-spacing: .2em; color: var(--nl-sub); margin: 0 0 10px; }
body.sc-skin .sc-footer ul { list-style: none; margin: 0; padding: 0; }
body.sc-skin .sc-footer li a { display: block; padding: 4px 0; font: 400 12px var(--nl-sans); color: var(--nl-ink); text-decoration: none; }
body.sc-skin .sc-footer li a:hover { color: var(--nl-crim); }
body.sc-skin .sc-footer__copy { max-width: 1256px; margin: 26px auto 0; padding-top: 16px; border-top: 1px solid var(--nl-line); font: 500 10px var(--nl-mono); color: var(--nl-sub); display: flex; justify-content: space-between; }
/* ヘッダー検索窓(案2a): #header-container-in のフレックス末尾に静的配置 */
body.sc-skin .sc-hsearch { margin-left: 18px; flex: none; }
body.sc-skin .sc-hsearch input { width: 220px; background: #1A1014; border: 1px solid rgba(245,234,230,.14); border-radius: 999px; color: var(--nl-ink); font: 400 11.5px var(--nl-sans); padding: 9px 16px; box-sizing: border-box; }
@media (max-width: 1023px) { body.sc-skin .sc-hsearch { display: none; } }
@media (max-width: 768px) {
  body.sc-skin .sc-footer { padding: 30px 16px 20px; }
  body.sc-skin .sc-footer__grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  body.sc-skin .sc-footer__copy { flex-direction: column; gap: 4px; }
}

/* ==== B-skin 詳細詰め(2026-08-13 第3ラウンド) ==== */
/* ヒーロー: 巡回画像を枠に厳格拘束(height:auto系の後勝ちを無効化)+インセット除去 */
body.sc-skin .sc-bhero { padding: 0 !important; margin: 0 !important; }
body.sc-skin .sc-bhero .sc-cycle { position: absolute !important; inset: 0 !important; }
body.sc-skin .sc-bhero .sc-cycle img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 30%;
  margin: 0 !important;
}
body.sc-skin .sc-bhero__sub img { height: 100% !important; object-fit: cover !important; margin: 0 !important; }
/* ヒーローを収める器(ウィジェット枠)の余白をゼロに */
body.sc-skin .widget_sc_hero { margin: 0 !important; padding: 0 !important; background: none !important; border: none !important; }
/* ヒーローmetaの女優・カテゴリ */
body.sc-skin .sc-bhero__actress { font: 700 13px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-bhero__cat { font: 500 11px var(--nl-mono); color: var(--nl-sub); }
/* 一覧フィルタピル行 */
body.sc-skin .sc-filterrow { margin: 20px 0 0; }
body.sc-skin .sc-filter a { display: inline-block; font: 500 12px var(--nl-sans); padding: 8px 18px; color: var(--nl-sub); text-decoration: none; }
body.sc-skin .sc-filter a + a { border-left: 1px solid rgba(245,234,230,.12); }
body.sc-skin .sc-filter a.is-active { background: var(--nl-crim); color: #FFF4F1; font-weight: 700; }
/* 記事パンくず(案2b) */
body.sc-skin .sc-breadcrumb { max-width: 760px; margin: 14px auto 0; padding: 0 16px; }
body.sc-skin .sc-breadcrumb a { color: var(--nl-sub); text-decoration: none; }
body.sc-skin .sc-breadcrumb a:hover { color: var(--nl-crim); }
body.sc-skin .sc-breadcrumb span { color: var(--nl-ink); }
/* Cocoon既定のパンくず(記事下)は重複するため非表示 */
body.sc-onecol .breadcrumb { display: none !important; }
/* 記事h2: 案2bのトーン(極太+紅の短バー) */
body.sc-onecol .entry-content h2 {
  font: 900 19px/1.6 var(--nl-sans) !important;
  color: var(--nl-ink) !important;
  background: none !important;
  border: 0 !important;
  padding: 0 0 0 14px !important;
  margin: 40px 0 16px !important;
  position: relative !important;
}
body.sc-onecol .entry-content h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: .32em;
  bottom: .32em;
  width: 3px;
  background: var(--nl-crim);
  border-radius: 2px;
}
body.sc-onecol .entry-content h2::after { display: none !important; }

/* ==== B-skin 詳細詰め第4R ==== */
/* トップ(1頁目)はサイドバーが無いため、SP下部メニューのサイドバーボタンを出さない */
body.sc-skin.home:not(.paged) .mobile-menu-buttons .sidebar-menu-button { display: none !important; }
/* シチュ格子へのページ内遷移をなめらかに */
html { scroll-behavior: smooth; }
.sc-situ-wrap { scroll-margin-top: 70px; }

/* ================================================================
   B-SKIN PIXEL-FAITHFUL LAYER(キャンバス実測値・2026-08-13 第4R)
   ================================================================ */
/* --- ヘッダー(60pxバー・ロゴ22px+9px紅ドット+タグライン・ナビ13px/22gap) --- */
body.sc-skin #header-container-in { height: 60px !important; padding: 0 52px !important; border-bottom: 1px solid rgba(245,234,230,.08) !important; align-items: center !important; gap: 24px !important; }
body.sc-skin #header, body.sc-skin #header-in { height: auto !important; }
body.sc-skin .site-name-text { font: 900 22px/1 'Zen Kaku Gothic New', sans-serif !important; letter-spacing: .02em !important; color: #F5EAE6 !important; display: inline-flex !important; align-items: baseline !important; gap: 8px !important; }
body.sc-skin .sc-logo-dot { width: 9px; height: 9px; border-radius: 50%; background: #E0324E; display: inline-block; flex: none; }
body.sc-skin .sc-logo-tagline { font: 500 9px 'Zen Kaku Gothic New', sans-serif; letter-spacing: .2em; color: #A88F92; }
body.sc-skin #navi { margin-left: 8px !important; }
body.sc-skin #navi-in .menu-pc { display: flex !important; gap: 22px !important; }
body.sc-skin #navi-in .menu-pc > li { margin: 0 !important; }
body.sc-skin #navi-in .menu-pc > li > a { padding: 6px 0 !important; height: auto !important; line-height: 1 !important; }
body.sc-skin #navi-in .menu-pc .item-label { font: 500 13px 'Zen Kaku Gothic New', sans-serif !important; color: #F5EAE6 !important; }
body.sc-skin #navi-in .menu-pc > li > a:hover .item-label { color: #E0324E !important; }
body.sc-skin .sc-hsearch input { height: 34px; min-width: 190px; padding: 0 16px; font: 400 12px 'Zen Kaku Gothic New', sans-serif; }

/* --- ヒーローmeta(スコア44px Oswald・女優12.5・帯11・FANZA mono11.5) --- */
body.sc-skin .sc-bhero__kickrow { display: flex; align-items: baseline; gap: 14px; }
body.sc-skin .sc-bhero__kickrow .sc-kicker { font: 600 10px ui-monospace, Menlo, monospace; letter-spacing: .22em; color: #E0324E; }
body.sc-skin .sc-bhero__revno { font: 500 10px ui-monospace, Menlo, monospace; letter-spacing: .14em; color: #A88F92; }
body.sc-skin .sc-bhero__meta { display: flex; align-items: center; gap: 18px; margin-top: 16px; }
body.sc-skin .sc-bhero__score { display: flex; align-items: baseline; gap: 5px; }
body.sc-skin .sc-bhero__scorenum { font: 600 44px/1 'Oswald', sans-serif; color: #E0324E; }
body.sc-skin .sc-bhero__scoreof { font: 500 12px 'Oswald', sans-serif; color: #A88F92; }
body.sc-skin .sc-bhero__actress { font: 500 12.5px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; }
body.sc-skin .sc-bhero__cat { font: 500 11px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; }
body.sc-skin .sc-bhero__rvcount { font: 500 11.5px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-bhero__cta { gap: 12px; margin-top: 20px; }
body.sc-skin .sc-bhero__stamp { font: 500 10.5px ui-monospace, Menlo, monospace; color: #A88F92; margin-left: 6px; }
body.sc-skin .sc-bhero__off { color: #FFC24B; font-weight: 700; }
body.sc-skin a.sc-btn--ghost { border-color: rgba(245,234,230,.35) !important; color: #F5EAE6 !important; font: 500 13px 'Zen Kaku Gothic New', sans-serif !important; padding: 12px 24px !important; }
body.sc-skin a.sc-btn--ghost:hover { border-color: #E0324E !important; color: #E0324E !important; }

/* --- セール帯(縦積みラベル・案の item 構成) --- */
body.sc-skin .sc-sale { padding: 16px 52px; background: #1A0E13; }
body.sc-skin .sc-sale__head { display: block; min-width: 96px; }
body.sc-skin .sc-sale__head .sc-kicker { display: block; font: 600 10px ui-monospace, Menlo, monospace; letter-spacing: .22em; color: #E0324E; }
body.sc-skin .sc-sale__head b { display: block; font: 900 15px 'Zen Kaku Gothic New', sans-serif; margin-top: 2px; color: #F5EAE6; }
body.sc-skin .sc-sale__item { background: #120C0E; border: 1px solid rgba(245,234,230,.1); border-radius: 10px; padding: 10px 16px; gap: 12px; }
body.sc-skin .sc-sale__off { font: 600 17px 'Oswald', sans-serif; color: #FFC24B; }
body.sc-skin .sc-sale__item > b { font: 500 12px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; max-width: 200px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.sc-skin .sc-sale__item del { font: 500 11px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-sale__item del::after { content: " →"; }
body.sc-skin .sc-sale__meta { font: 500 10px ui-monospace, Menlo, monospace; }
body.sc-skin .sc-sale__more { font: 500 12px 'Zen Kaku Gothic New', sans-serif; }

/* --- セクション見出し(24px・行間隔46px) --- */
body.sc-skin .sc-secthead { font: 900 24px 'Zen Kaku Gothic New', sans-serif; letter-spacing: -.01em; gap: 14px; margin: 46px 0 22px; }
body.sc-skin .sc-home > .sc-secthead:first-child { margin-top: 40px; }

/* --- カード(タグはモノ体テキスト・チップ行 gap8) --- */
body.sc-skin .sc-card__body .sc-card-chips,
body.sc-skin .sc-card__body { }
body.sc-skin .sc-card__tag { font: 500 10px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-card__title { font: 600 15px/1.6 'Zen Kaku Gothic New', sans-serif; }

/* --- シチュタイルの矢印 --- */
body.sc-skin .sc-situ__arrow { position: absolute; right: 13px; bottom: 11px; color: #E0324E; font-weight: 700; z-index: 1; }

/* --- プロモ(18px・第3枠ゴールド) --- */
body.sc-skin .sc-promo__box { padding: 22px 24px; border-color: rgba(245,234,230,.12); }
body.sc-skin .sc-promo__box .sc-kicker { font: 600 10px ui-monospace, Menlo, monospace; letter-spacing: .22em; color: #E0324E; }
body.sc-skin .sc-promo__box b { font: 900 18px 'Zen Kaku Gothic New', sans-serif; margin-top: 8px; }
body.sc-skin .sc-promo__box span:last-child { font: 400 12px/1.8 'Zen Kaku Gothic New', sans-serif; margin-top: 6px; }
body.sc-skin .sc-promo__box--gold .sc-kicker { color: #FFC24B; }
body.sc-skin .sc-promo__box--gold:hover { border-color: #FFC24B !important; }

/* --- フッター(案の3ブロック+コピーライト行) --- */
body.sc-skin .sc-footer { background: #120C0E; border-top: 1px solid rgba(245,234,230,.08); padding: 30px 52px 22px; }
body.sc-skin .sc-footer__row { display: flex; align-items: flex-start; gap: 44px; max-width: 1256px; margin: 0 auto; }
body.sc-skin .sc-footer__brand { flex: 1.3; }
body.sc-skin .sc-footer__logo { font: 900 17px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; display: inline-flex; align-items: baseline; gap: 7px; }
body.sc-skin .sc-footer__dot { width: 7px; height: 7px; border-radius: 50%; background: #E0324E; display: inline-block; }
body.sc-skin .sc-footer__brand p { font: 400 11px/1.9 'Zen Kaku Gothic New', sans-serif; color: #A88F92; margin: 9px 0 0; }
body.sc-skin .sc-footer__links { flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 18px; font: 500 12px 'Zen Kaku Gothic New', sans-serif; }
body.sc-skin .sc-footer__links a { color: #F5EAE6; text-decoration: none; }
body.sc-skin .sc-footer__links a.is-sub { color: #A88F92; }
body.sc-skin .sc-footer__links a:hover { color: #E0324E; }
body.sc-skin .sc-footer__r18 { display: flex; gap: 12px; align-items: flex-start; flex: .9; }
body.sc-skin .sc-footer__r18badge { width: 50px; height: 50px; border: 2px solid #F5EAE6; border-radius: 10px; display: grid; place-items: center; font: 800 14px 'Oswald', sans-serif; color: #F5EAE6; flex: none; }
body.sc-skin .sc-footer__r18note { font: 400 11px/1.8 'Zen Kaku Gothic New', sans-serif; color: #A88F92; }
body.sc-skin .sc-footer__copy { max-width: 1256px; margin: 22px auto 0; padding-top: 14px; border-top: 1px solid rgba(245,234,230,.07); font: 500 10.5px ui-monospace, Menlo, monospace; color: #6F5A5E; display: flex; justify-content: space-between; }

/* --- タグヒーロー(パンくず・説明・関連タグ) --- */
body.sc-skin .sc-taghero { padding: 26px 0 22px; border-bottom: 1px solid rgba(245,234,230,.1); }
body.sc-skin .sc-taghero__bc { font: 500 9.5px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-taghero__row { display: flex; align-items: baseline; gap: 10px; margin-top: 8px; }
body.sc-skin .sc-taghero h1 { font: 900 30px 'Zen Kaku Gothic New', sans-serif !important; letter-spacing: -.01em; display: inline; margin: 0 !important; }
body.sc-skin .sc-taghero__count { font: 500 10px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-taghero__desc { font: 400 11.5px/1.8 'Zen Kaku Gothic New', sans-serif; color: #A88F92; margin-top: 6px; max-width: 640px; }
body.sc-skin .sc-taghero__tags { margin-top: 10px; }
body.sc-skin .sc-taghero__tags a { font: 500 10px 'Zen Kaku Gothic New', sans-serif; padding: 4px 11px; color: #F5EAE6; }

/* --- W5採点について --- */
body.sc-skin .sc-widget--policy .sc-widget__note { font: 400 11px/1.85 'Zen Kaku Gothic New', sans-serif; margin-top: 8px; }
body.sc-skin .sc-widget__countrow { display: flex; align-items: baseline; gap: 8px; margin-top: 10px; }
body.sc-skin .sc-widget--policy .sc-count { font: 600 24px 'Oswald', sans-serif; color: #E0324E; }
body.sc-skin .sc-widget__unit { font: 500 10.5px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; }
body.sc-skin .sc-widget__unit a { color: #E0324E; text-decoration: none; }

/* --- 記事h2(案2b: 900 22px・バー無し) --- */
body.sc-onecol .entry-content h2 { font: 900 22px/1.6 'Zen Kaku Gothic New', sans-serif !important; padding: 0 !important; margin: 40px 0 16px !important; }
body.sc-onecol .entry-content h2::before { display: none !important; }

/* --- SPヘッダー(ロゴ17px) --- */
@media (max-width: 1023px) {
  body.sc-skin #header-container-in { height: 52px !important; padding: 0 16px !important; }
  body.sc-skin .site-name-text { font-size: 17px !important; }
  body.sc-skin .sc-logo-tagline { display: none; }
}

/* ==== B-skin fix: 旧ロゴ装飾との二重ドット解消・ナビ左寄せ(案はロゴ隣接) ==== */
body.sc-skin .site-name-text::after { display: none !important; content: none !important; }
body.sc-skin #navi { margin-right: auto !important; }

/* ==== B-skin 第5R: リファレンス駆動の詰め ==== */
/* TOP5行: サムネ+副行 */
body.sc-skin .sc-top5__rowthumb { width: 56px; flex: none; aspect-ratio: 3/2; border-radius: 5px; overflow: hidden; }
body.sc-skin .sc-top5__rowthumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.sc-skin .sc-top5__rowmain { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
body.sc-skin .sc-top5__rowsub { font: 500 10px ui-monospace, Menlo, monospace; color: #A88F92; }
/* タグヒーロー: kicker・関連ラベル */
body.sc-skin .sc-taghero__row .sc-kicker { font: 600 10px ui-monospace, Menlo, monospace; letter-spacing: .22em; color: #E0324E; }
body.sc-skin .sc-taghero__rel { font: 500 10px ui-monospace, Menlo, monospace; color: #A88F92; margin-right: 8px; }
body.sc-skin .sc-taghero__tags { display: flex; align-items: center; margin-top: 10px; }
/* フィルタ行+ソート */
body.sc-skin .sc-filterrow { display: flex; align-items: center; justify-content: space-between; margin: 20px 0 0; }
body.sc-skin .sc-sort { font: 500 11.5px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; border: 1px solid rgba(245,234,230,.16); border-radius: 999px; padding: 8px 16px; text-decoration: none; }
body.sc-skin .sc-sort:hover { color: #E0324E; border-color: #E0324E; }
/* サイドバー: W1副行・W4セール行・スタンプ */
body.sc-skin .sc-widget__main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
body.sc-skin .sc-widget__sub { font: 500 10px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-widget__stamp { float: right; font: 500 9.5px ui-monospace, Menlo, monospace; color: #A88F92; font-weight: 400; }
body.sc-skin .sc-widget__salerow { display: block; padding: 8px 0; border-bottom: 1px solid rgba(245,234,230,.1); text-decoration: none; }
body.sc-skin .sc-widget__salettl { display: block; font: 500 11.5px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; }
body.sc-skin .sc-widget__saleprice { display: block; font: 500 10.5px ui-monospace, Menlo, monospace; color: #A88F92; margin-top: 2px; }
body.sc-skin .sc-widget__saleprice b { color: #FFC24B; }
body.sc-skin .sc-widget__salemore { display: block; font: 500 11px 'Zen Kaku Gothic New', sans-serif; color: #E0324E; padding: 10px 0 4px; text-decoration: none; }
/* 記事: この作品の周辺 */
body.sc-skin .sc-around { max-width: 760px; margin: 40px auto 0; padding: 0 16px; }
body.sc-skin .sc-around__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
body.sc-skin .sc-around__box { display: flex; flex-direction: column; gap: 6px; background: #1C1115; border: 1px solid rgba(245,234,230,.12); border-radius: 12px; padding: 18px 20px; text-decoration: none; transition: .2s; }
body.sc-skin .sc-around__box:hover { border-color: #E0324E; }
body.sc-skin .sc-around__box .sc-kicker { font: 600 10px ui-monospace, Menlo, monospace; letter-spacing: .22em; color: #E0324E; }
body.sc-skin .sc-around__box b { font: 900 15px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; }
body.sc-skin .sc-around__box span:last-child { font: 400 11.5px/1.8 'Zen Kaku Gothic New', sans-serif; color: #A88F92; }
/* 記事: 回遊ゾーン3箱 */
body.sc-skin .sc-explore { max-width: 1256px; margin: 44px auto 0; padding: 0 16px 40px; }
body.sc-skin .sc-explore__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
body.sc-skin .sc-explore__box { background: #1C1115; border: 1px solid rgba(245,234,230,.1); border-radius: 12px; padding: 16px 18px; }
body.sc-skin .sc-explore__box h3 { font: 900 14px 'Zen Kaku Gothic New', sans-serif !important; color: #F5EAE6; margin: 0 0 6px !important; background: none !important; padding: 0 !important; border: 0 !important; }
body.sc-skin .sc-explore__row { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid rgba(245,234,230,.1); text-decoration: none; font: 500 11.5px 'Zen Kaku Gothic New', sans-serif; }
body.sc-skin .sc-explore__rowttl { flex: 1; min-width: 0; color: #F5EAE6; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
body.sc-skin .sc-explore__salerow { display: block; padding: 8px 0; border-bottom: 1px solid rgba(245,234,230,.1); text-decoration: none; }
body.sc-skin .sc-explore__salerow > span:first-child { display: block; font: 500 11.5px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; }
body.sc-skin .sc-explore__saleoff { display: block; font: 500 10.5px ui-monospace, Menlo, monospace; color: #A88F92; margin-top: 2px; }
body.sc-skin .sc-explore__saleoff b { color: #FFC24B; }
body.sc-skin .sc-explore__policy { font: 400 10.5px/1.8 'Zen Kaku Gothic New', sans-serif; color: #A88F92; margin: 10px 0 0; }
body.sc-skin .sc-explore__policy b { font-family: 'Oswald', sans-serif; color: #E0324E; }
body.sc-skin .sc-explore__policy a { color: #E0324E; text-decoration: none; }
/* sticky価格 */
body.sc-skin .sc-sticky__price { font: 700 18px 'Oswald', sans-serif; color: #FFC24B; margin-left: auto; }
body.sc-skin .sc-sticky .sc-btn { flex: none; }
@media (max-width: 768px) {
  body.sc-skin .sc-around__grid { grid-template-columns: 1fr; }
  body.sc-skin .sc-explore__grid { grid-template-columns: 1fr; }
}

/* ==== B-skin fix: セール速報帯は1行厳守(案)。タイトル省略で幅を吸収 ==== */
body.sc-skin .sc-sale { flex-wrap: nowrap !important; overflow: hidden; }
body.sc-skin .sc-sale__head { flex: none; }
body.sc-skin .sc-sale__item { flex: 0 1 auto; min-width: 0; }
body.sc-skin .sc-sale__item > b { flex: 0 1 auto; min-width: 0; }
body.sc-skin .sc-sale__item > div { min-width: 0; }
body.sc-skin .sc-sale__meta { flex: none; margin-left: auto; }
/* 3枠目は詰まったら自然に省略されるよう、item末尾から縮む */
@media (max-width: 1100px) {
  body.sc-skin .sc-sale__item:nth-of-type(3) { display: none; }
}
@media (max-width: 900px) {
  body.sc-skin .sc-sale__item:nth-of-type(2) { display: none; }
}

/* ==== B-skin fix: ヘッダー幅をコンテンツ系(1256+52x2)へ整合・ナビ縦中央 ==== */
body.sc-skin #header-container-in { max-width: 1360px !important; width: 100% !important; margin: 0 auto !important; }
body.sc-skin #navi-in .menu-pc { align-items: center !important; height: 60px; }
/* ==== B-skin fix: セール帯→新着の余白を案の46pxへ(実測103px→46px) ==== */
body.sc-skin .sc-sale { margin-bottom: 0 !important; }
body.sc-skin.home .sc-home > .sc-secthead:first-child { margin-top: 10px !important; }
/* ==== B-skin fix: 小サムネの縦長化(カードのインセット・W1) ==== */
body.sc-skin .sc-card__pkg { display: block !important; width: 42px !important; aspect-ratio: 3/4 !important; height: auto !important; }
body.sc-skin .sc-card__pkg img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; }
body.sc-skin .sc-widget__thumb { width: 46px !important; aspect-ratio: 3/4 !important; border-radius: 5px; }

/* ==== B-skin: VR作品の横長サンプルはズームクロップで被写体を大きく(Yu指示) ==== */
body.sc-skin .sc-card--vr .sc-card__media img.sc-card-frame { transform: scale(1.7); transform-origin: center 42%; }
body.sc-skin .sc-card--vr:hover .sc-card__media img.sc-card-frame { transform: scale(1.78); }
body.sc-skin .sc-bhero--vr .sc-cycle img { transform: scale(1.55); transform-origin: center 40%; }
body.sc-skin .sc-bhero--vr .sc-bhero__sub img { transform: scale(1.6); transform-origin: center 40%; }

/* ==== B-skin: 三段判定ピル(買い/セール待ち/スルー・公開データの固定式) ==== */
body.sc-skin .sc-card__chiprow { display: flex; align-items: center; gap: 8px; }
body.sc-skin .sc-card__verdict { font: 700 10px 'Zen Kaku Gothic New', sans-serif; padding: 3px 10px; border-radius: 999px; }
body.sc-skin .sc-bhero__verdict { font: 800 12px 'Zen Kaku Gothic New', sans-serif; padding: 6px 15px; border-radius: 999px; }
body.sc-skin .sc-card__verdict.is-buy, body.sc-skin .sc-bhero__verdict.is-buy { background: #E0324E; color: #FFF4F1; }
body.sc-skin .sc-card__verdict.is-wait, body.sc-skin .sc-bhero__verdict.is-wait { background: rgba(201,160,106,.16); color: #C9A06A; border: 1px solid rgba(201,160,106,.45); }
body.sc-skin .sc-card__verdict.is-skip, body.sc-skin .sc-bhero__verdict.is-skip { background: rgba(122,106,110,.16); color: #A89A9E; border: 1px solid rgba(122,106,110,.4); }

/* ==== B-skin: TOP5サムネの磨き(行=縦長パッケージ・01大判=VRズーム) ==== */
body.sc-skin .sc-top5__rowthumb { width: 40px !important; aspect-ratio: 3/4 !important; }
body.sc-skin .sc-top5__feat--vr img { transform: scale(1.55); transform-origin: center 40%; }
body.sc-skin .sc-top5__feat { background: #241318; }

/* ==== B-skin fix: 縦長画像はcontain・単色地(ぼかし無し)で全体を見せる ==== */
body.sc-skin .sc-card__media img.sc-card-frame.is-portrait { object-fit: contain !important; background: #1A0E13; }
body.sc-skin .sc-bhero .sc-cycle img.is-portrait { object-fit: contain !important; background: #0C0709; transform: none !important; }
/* 一覧でもCocoonのページ送りは出さない(案はsc-pagerのみ) */
.sc-listing ~ .pagination, .sc-listing ~ .pagination-next { display: none !important; }
/* W1サムネをひと回り大きく・枠付きで(綺麗に) */
body.sc-skin .sc-widget__thumb { width: 50px !important; border: 1px solid rgba(245,234,230,.14); }

/* ==== B-skin: 評価記事テンプレ部品(案2b・attr駆動) ==== */
body.sc-skin .sc-secthead--article { display: flex; align-items: baseline; gap: 12px; margin: 40px 0 16px; font: 900 22px 'Zen Kaku Gothic New', sans-serif; }
body.sc-skin .sc-verdict__meterrow { display: flex; align-items: center; gap: 14px; margin-top: 14px; }
body.sc-skin .sc-verdict__meternote { font: 500 10px ui-monospace, Menlo, monospace; color: #A88F92; }
body.sc-skin .sc-meter .is-buy.is-active { background: #E0324E; color: #FFF4F1; font-weight: 800; }
body.sc-skin .sc-meter .is-wait.is-active { background: rgba(201,160,106,.25); color: #C9A06A; font-weight: 800; }
body.sc-skin .sc-meter .is-skip.is-active { background: rgba(122,106,110,.3); color: #CFC3C6; font-weight: 800; }
body.sc-skin .sc-verdict__grid { display: grid; grid-template-columns: auto 1fr; gap: 36px; margin-top: 18px; align-items: center; }
body.sc-skin .sc-verdict__score { display: flex; align-items: baseline; gap: 5px; }
body.sc-skin .sc-verdict__scorenum { font: 600 46px/1 'Oswald', sans-serif; color: #E0324E; }
body.sc-skin .sc-verdict__scoreof { font: 500 12px 'Oswald', sans-serif; color: #A88F92; }
body.sc-skin .sc-verdict__fanza { font: 500 11px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; margin-top: 7px; }
body.sc-skin .sc-verdict__cta { display: flex; align-items: center; gap: 14px; margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(245,234,230,.1); flex-wrap: wrap; }
body.sc-skin .sc-verdict__price { display: flex; align-items: baseline; gap: 8px; }
body.sc-skin .sc-verdict__price del { font: 400 12px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; }
body.sc-skin .sc-verdict__off { font: 700 11px 'Zen Kaku Gothic New', sans-serif; color: #FFC24B; }
body.sc-skin .sc-verdict__quote { font: 900 18px/1.5 'Zen Kaku Gothic New', sans-serif; margin: 10px 0 0; color: #F5EAE6; }
body.sc-skin .sc-verdict__head { display: flex; align-items: baseline; font: 600 10px ui-monospace, Menlo, monospace; letter-spacing: .22em; color: #E0324E; }
body.sc-skin .sc-verdict__head small { margin-left: auto; letter-spacing: 0; color: #A88F92; }
body.sc-skin .sc-spec__pkg { display: block; }
body.sc-skin .sc-spec__pkg img { width: 100%; height: auto; display: block; }
body.sc-skin .sc-fitbox h4 { font: 700 12.5px 'Zen Kaku Gothic New', sans-serif !important; color: #E0324E !important; margin: 0 0 8px !important; background: none !important; padding: 0 !important; }
body.sc-skin .sc-fitbox ul { list-style: none; margin: 0; padding: 0; }
body.sc-skin .sc-fitbox li { font: 400 12.5px/1.9 'Zen Kaku Gothic New', sans-serif; color: #E3D2CF; padding: 3px 0; }
body.sc-skin .sc-fitbox li::before { content: "・"; color: #A88F92; }
body.sc-skin .sc-price-row__store { font: 700 13px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; }
body.sc-skin .sc-price-row__sale { font: 500 11px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; }
body.sc-skin .sc-price-row__sale b { color: #FFC24B; }
body.sc-skin .sc-price-note { font: 500 10.5px ui-monospace, Menlo, monospace; color: #A88F92; margin: 8px 0 0; }
/* 記事サイドバー復帰に伴う後始末(1カラム規則はsingleでは使わない) */
body.sc-skin.single .sc-breadcrumb { max-width: none; padding: 0; margin: 14px 0 0; }
body.sc-skin.single .sc-around, body.sc-skin.single .sc-explore { max-width: none; padding-left: 0; padding-right: 0; }
body.sc-skin.single .sc-explore__grid { grid-template-columns: 1fr; }
body.sc-skin.single .sc-around__grid { grid-template-columns: 1fr 1fr; }

/* ==== B-skin fix: ナビリンクの縦センター(liの高さ規則を強制的に整える) ==== */
body.sc-skin #navi-in .menu-pc > li { display: flex !important; align-items: center !important; height: 60px !important; margin: 0 !important; float: none !important; }
body.sc-skin #navi-in .menu-pc > li > a { display: flex !important; align-items: center !important; height: 100% !important; padding: 0 !important; }
body.sc-skin #navi-in .menu-pc .caption-wrap { display: flex; align-items: center; }

/* ==== B-skin fix: 縦長画像は帯なしで「ぴったり」= 上端合わせcover(顔優先) ==== */
body.sc-skin .sc-card__media img.sc-card-frame.is-portrait { object-fit: cover !important; object-position: center top !important; background: none; }
body.sc-skin .sc-bhero .sc-cycle img.is-portrait { object-fit: cover !important; object-position: center 18% !important; background: none; }

/* ==== B-skin fix: 縦長画像は「人が綺麗に映る」拡大クロップ(顔位置狙い+軽ズーム) ==== */
body.sc-skin .sc-card__media img.sc-card-frame.is-portrait {
  object-fit: cover !important;
  object-position: center 26% !important;
  transform: scale(1.22);
  transform-origin: center 30%;
}
body.sc-skin .sc-card--vr .sc-card__media img.sc-card-frame.is-portrait { transform: scale(1.4); }
body.sc-skin .sc-bhero .sc-cycle img.is-portrait {
  object-fit: cover !important;
  object-position: center 22% !important;
  transform: scale(1.15) !important;
  transform-origin: center 26%;
}

/* ==== B-skin: TOP5大判・巡回中の縦長も顔位置クロップ ==== */
body.sc-skin .sc-top5__feat img.is-portrait { object-fit: cover !important; object-position: center 22% !important; }
body.sc-skin .sc-card__media img.sc-card-frame.is-portrait:not(.sc-frame-on) { object-position: center 26% !important; }

/* ==== B-skin fix: カード媒体は全imgを絶対配置フィルに統一(白帯contain化の根治) ==== */
body.sc-skin .sc-card__media { position: relative !important; overflow: hidden; }
body.sc-skin .sc-card__media > img:not(.sc-card-inset) {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  margin: 0 !important;
}
body.sc-skin .sc-card__media > img.is-portrait:not(.sc-card-frame) {
  object-position: center 24% !important;
  transform: scale(1.18);
  transform-origin: center 28%;
}

/* ==== B-skin: 記事ページの2b忠実化 ==== */
body.sc-skin.single .article .eye-catch-wrap,
body.sc-skin.single .article .eye-catch,
body.sc-skin.single .article .eye-catch-caption { display: none !important; }
body.sc-skin.single .article .date-tags-area,
body.sc-skin.single .article .author-info,
body.sc-skin.single .post-date, body.sc-skin.single .post-update { display: none !important; }
body.sc-skin.single .sc-sale { display: none !important; }
body.sc-skin .sc-ameta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; font: 500 11px ui-monospace, Menlo, monospace; color: #A88F92; margin: 2px 0 18px; }
body.sc-skin .sc-ameta__no { letter-spacing: .08em; }
body.sc-skin .sc-ameta__std { color: #E0324E; text-decoration: none; }
body.sc-skin .sc-ameta__pill { font: 700 10px 'Zen Kaku Gothic New', sans-serif; color: #F5EAE6; border: 1px solid rgba(245,234,230,.22); border-radius: 999px; padding: 3px 11px; text-decoration: none; }
body.sc-skin .sc-ameta__pill:hover { border-color: #E0324E; color: #E0324E; }
body.sc-skin .sc-hmeta { margin-left: 18px; font: 500 10.5px ui-monospace, Menlo, monospace; color: #A88F92; flex: none; }
body.sc-skin .sc-hmeta a { color: #E0324E; text-decoration: none; }
body.sc-skin.single .article h1.entry-title { font: 900 30px/1.55 'Zen Kaku Gothic New', sans-serif !important; letter-spacing: -.01em !important; }

/* ==== B-skin 第10R: 記事部品を2b原寸へ ==== */
/* 作品情報表: 見出しセルはモノ体グレー・縞なし・罫のみ(案) */
body.sc-skin .sc-spec table { border-collapse: collapse !important; background: none !important; }
body.sc-skin .sc-spec tr, body.sc-skin .sc-spec th, body.sc-skin .sc-spec td { background: none !important; border: 0 !important; }
body.sc-skin .sc-spec th {
  font: 500 11px ui-monospace, Menlo, monospace !important;
  color: #A88F92 !important;
  text-align: left !important;
  width: 106px !important;
  padding: 9px 16px 9px 0 !important;
  border-bottom: 1px solid rgba(245,234,230,.1) !important;
  vertical-align: top !important;
}
body.sc-skin .sc-spec td {
  font: 400 13px 'Zen Kaku Gothic New', sans-serif !important;
  color: #F5EAE6 !important;
  padding: 9px 0 !important;
  border-bottom: 1px solid rgba(245,234,230,.1) !important;
}
body.sc-skin .sc-spec__pkg { width: 190px; flex: none; border: 1px solid rgba(245,234,230,.1); border-radius: 8px; overflow: hidden; }
/* 結論ボックス: 判定ピル+引用の段・スタンプ右寄せ */
body.sc-skin .sc-verdict__pill { font: 800 12px 'Zen Kaku Gothic New', sans-serif; padding: 5px 14px; border-radius: 999px; margin-right: 12px; vertical-align: 2px; }
body.sc-skin .sc-verdict__pill.is-buy { background: #E0324E; color: #FFF4F1; }
body.sc-skin .sc-verdict__pill.is-wait { background: rgba(201,160,106,.16); color: #C9A06A; border: 1px solid rgba(201,160,106,.45); }
body.sc-skin .sc-verdict__pill.is-skip { background: rgba(122,106,110,.16); color: #A89A9E; border: 1px solid rgba(122,106,110,.4); }
body.sc-skin .sc-verdict__cta .sc-stamp { margin-left: auto; }
/* 良かった点/惜しい点: Cocoonのリスト装飾を殺して案のタイポへ */
body.sc-skin .sc-pros, body.sc-skin .sc-cons { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.sc-skin .sc-pros li, body.sc-skin .sc-cons li {
  list-style: none !important;
  display: flex !important;
  gap: 12px !important;
  padding: 6px 0 !important;
  margin: 0 !important;
  font: 400 14.5px/1.9 'Zen Kaku Gothic New', sans-serif !important;
  border: 0 !important;
  background: none !important;
}
/* 刺さる/向かない: 見出しをモノ体kickerに */
body.sc-skin .sc-fitbox h4 { font: 600 10px ui-monospace, Menlo, monospace !important; letter-spacing: .22em !important; color: #E0324E !important; }
/* sticky: スコア */
body.sc-skin .sc-sticky__score { font: 700 15px 'Oswald', sans-serif; color: #E0324E; margin-left: 10px; }

/* ==== B-skin: 記事末のCocoon前後ナビは出さない(案2bに無い) ==== */
body.sc-skin.single .pager-post-navi, body.sc-skin.single .comment-respond { display: none !important; }

/* ==== B-skin 第12R: 作品情報パッケージの縦長表示・LINKミニカード ==== */
body.sc-skin .sc-spec__pkg { aspect-ratio: 3/4 !important; height: auto !important; display: block; background: #241318; }
body.sc-skin .sc-spec__pkg img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; }
/* ジャケット合成(横長pl)は右パネル=表紙をクロップ(サイト既定のジャケット処理) */
body.sc-skin .sc-spec__pkg.is-jacket img { object-position: right center !important; }
body.sc-skin .sc-spec__pkg.is-poster img { object-fit: contain !important; background: #241318; }
body.sc-skin .sc-around__card { max-width: 300px; margin-top: 16px; }
body.sc-skin .sc-sticky__actress { font: 500 12px 'Zen Kaku Gothic New', sans-serif; color: #A88F92; margin-left: 10px; }

/* ================================================================
   2026-08-16 TSUME LAYER — ヒーロー行膨張の根治・旧部品の残骸除去・
   SPフェイスフル(canvas 01/03/05 モバイルアートボード準拠)
   ================================================================ */

/* -- ヒーロー: サブ列(縦長画像の内在高さ)がグリッド行を膨張させ、
      メタ+CTAが620pxクリップの外へ追い出される退行の根治 -- */
body.sc-skin .sc-bhero__grid { grid-template-rows: 100%; }
body.sc-skin .sc-bhero__grid > * { min-height: 0; }
body.sc-skin .sc-bhero__sub { overflow: hidden; }

/* -- 旧部品の残骸除去(canvas非掲載・B-skin一律) -- */
body.sc-skin .sns-follow { display: none !important; }
body.sc-skin .breadcrumb.sbp-main-bottom { display: none !important; }
body.sc-skin #sidebar .widget:not(.sc-widget) { display: none !important; }
body.sc-skin .archive-title { display: none !important; }

/* -- 固定ページ(canvas 07-09): 版面と文書タイポ -- */
body.sc-skin.page .article { max-width: 860px; margin: 0 auto; }
body.sc-skin.page .entry-content { font-size: 14.5px; line-height: 2.05; color: var(--nl-ink); }
body.sc-skin.page .entry-content h2 { font: 900 19px/1.5 var(--nl-sans); margin: 40px 0 14px; }
body.sc-skin.page .entry-content a { color: var(--nl-crim); }
body.sc-skin.page .date-tags, body.sc-skin.page .entry-date { color: var(--nl-sub); }

/* -- お問い合わせ(canvas 09): CF7をB-skin化 -- */
body.sc-skin .wpcf7 { max-width: 720px; }
body.sc-skin .wpcf7 label { display: block; font: 700 12px var(--nl-sans); color: var(--nl-sub); margin: 18px 0 6px; }
body.sc-skin .wpcf7 input[type="text"],
body.sc-skin .wpcf7 input[type="email"],
body.sc-skin .wpcf7 textarea {
  width: 100%; background: #170D11; border: 1px solid var(--nl-line); border-radius: 10px;
  color: var(--nl-ink); padding: 13px 15px; font: 500 14px var(--nl-sans); box-sizing: border-box;
}
body.sc-skin .wpcf7 input:focus, body.sc-skin .wpcf7 textarea:focus { border-color: var(--nl-crim); outline: none; }
body.sc-skin .wpcf7 input[type="submit"], body.sc-skin .wpcf7 button[type="submit"] {
  display: block; width: 100%; margin-top: 22px; background: var(--nl-crim); color: #FFF4F1;
  font: 700 14.5px var(--nl-sans); padding: 15px 28px; border-radius: 999px; border: 0; cursor: pointer;
}
body.sc-skin .wpcf7 input[type="submit"]:hover { background: var(--nl-crim-hi); }
body.sc-skin .wpcf7 .wpcf7-spinner { display: block; margin: 8px auto; }

/* -- 記事内 dmm_item の価格帯が動画上端に重なる詰め -- */
body.sc-skin .sc-dmm-media-price { font: 500 11px var(--nl-mono); padding: 6px 10px; }

/* ================================================================
   SPフェイスフル層(≤768px)
   ================================================================ */
@media (max-width: 768px) {

  /* ---- ヘッダー(canvas 01: ハンバーガー+ロゴ+検索ピル) ---- */
  body.sc-skin #header { padding: 0; }
  body.sc-skin #header-container-in { position: relative; display: flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 58px; }
  body.sc-skin .site-name-text { font-size: 19px !important; }
  body.sc-skin .sc-logo-tagline { display: none !important; }
  body.sc-skin .sc-mnav {
    position: absolute; left: 14px; top: 50%; transform: translateY(-50%);
    width: 34px; height: 34px; display: flex; flex-direction: column; justify-content: center; gap: 5px; cursor: pointer;
  }
  body.sc-skin .sc-mnav i { display: block; width: 20px; height: 2px; background: var(--nl-ink); border-radius: 2px; margin: 0 auto; }
  body.sc-skin .sc-msearch {
    position: absolute; right: 14px; top: 50%; transform: translateY(-50%);
    font: 700 11px var(--nl-sans); color: var(--nl-ink); border: 1px solid rgba(245,234,230,.35);
    border-radius: 999px; padding: 7px 14px; cursor: pointer;
  }

  /* Cocoonのフッター固定メニュー: バーは消し、内包パネルは生かす */
  body.sc-skin .mobile-footer-menu-buttons { visibility: hidden; height: 0; min-height: 0; padding: 0; margin: 0; border: 0; overflow: visible; }
  body.sc-skin .mobile-footer-menu-buttons .menu-content { visibility: visible; }

  /* スライドインパネルのB-skin化 */
  body.sc-skin .menu-content { background: #1C1115; color: var(--nl-ink); }
  body.sc-skin .navi-menu-content a { color: var(--nl-ink); font: 700 14px var(--nl-sans); border-bottom: 1px solid rgba(245,234,230,.08); }
  body.sc-skin .menu-close-button { color: var(--nl-sub); }
  body.sc-skin .search-menu-content .search-edit { background: #170D11; border: 1px solid var(--nl-line); color: var(--nl-ink); border-radius: 10px; }
  body.sc-skin .search-menu-content .search-submit { background: var(--nl-crim); color: #FFF4F1; border-radius: 10px; }

  /* ---- ヒーロー(canvas 01) ---- */
  body.sc-skin .sc-bhero { height: auto; border-radius: 0; }
  body.sc-skin .sc-bhero__grid { display: block; height: auto; }
  body.sc-skin .sc-bhero__sub { display: none; }
  body.sc-skin .sc-bhero__main { position: relative; height: 400px; }
  body.sc-skin .sc-bhero__shade { height: 46%; }
  body.sc-skin .sc-bhero__body { position: static; inset: auto; padding: 16px 16px 20px; background: #0C0709; }
  body.sc-skin .sc-bhero__title { font-size: 21px; line-height: 1.42; margin: 8px 0 0; }
  body.sc-skin .sc-bhero__kickrow { gap: 10px; }
  body.sc-skin .sc-bhero__meta { flex-wrap: wrap; gap: 8px 14px; height: auto; margin-top: 12px; }
  body.sc-skin .sc-bhero__scorenum { font-size: 30px; }
  body.sc-skin .sc-bhero__cta { display: flex; flex-wrap: wrap; align-items: center; margin-top: 16px; }
  body.sc-skin .sc-bhero__cta a.sc-btn { flex: 1 1 100%; text-align: center; font-size: 14.5px; padding: 15px 20px; }
  body.sc-skin .sc-bhero__stamp { margin: 8px auto 0; }

  /* ---- セール速報帯(canvas 01: 縦積み行) ---- */
  body.sc-skin .sc-sale { flex-wrap: wrap; gap: 10px; padding: 14px 16px; }
  body.sc-skin .sc-sale__head { width: 100%; display: flex; align-items: baseline; gap: 10px; }
  body.sc-skin .sc-sale__item { width: 100%; box-sizing: border-box; flex-wrap: wrap; gap: 8px 10px; }
  body.sc-skin .sc-sale__meta { margin: 0; width: 100%; text-align: left; display: flex; justify-content: space-between; align-items: center; }
  body.sc-skin .sc-sale__meta br { display: none; }

  /* ---- セクション共通 ---- */
  body.sc-skin .sc-home section, body.sc-skin .sc-situ-wrap, body.sc-skin .sc-top5-wrap { padding-left: 16px; padding-right: 16px; }
  body.sc-skin .sc-secthead { font-size: 19px; flex-wrap: wrap; }

  /* ---- 新着レビュー: 1列大カード(canvas 01) ---- */
  body.sc-skin .sc-home .sc-grid { grid-template-columns: 1fr; gap: 16px; }

  /* ---- 一覧(タグ・カテゴリ): 行型カード(canvas 05) ---- */
  body.sc-skin.archive .sc-grid { grid-template-columns: 1fr; gap: 12px; }
  body.sc-skin.archive .sc-card { display: grid; grid-template-columns: 138px 1fr; }
  body.sc-skin.archive .sc-card__media { aspect-ratio: auto; height: 100%; min-height: 108px; }
  body.sc-skin.archive .sc-card__body { padding: 10px 12px; }
  body.sc-skin.archive .sc-card__body .sc-card__ttl { font-size: 13.5px; line-height: 1.5; }

  /* ---- TOP5: featとrowsを縦積み(canvas 01) ---- */
  body.sc-skin .sc-top5 { display: block; }
  body.sc-skin .sc-top5__feat { display: block; margin-bottom: 14px; }
  body.sc-skin .sc-top5__rows { width: auto; }
  body.sc-skin .sc-top5__row { padding: 12px 4px; }
  body.sc-skin .sc-top5__rowsub { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

  /* ---- シチュ・プロモ ---- */
  body.sc-skin .sc-situ { grid-template-columns: 1fr 1fr; gap: 10px; }
  body.sc-skin .sc-situ__tile { height: 86px; }
  body.sc-skin .sc-situ__label { font-size: 15px; left: 12px; bottom: 9px; }
  body.sc-skin .sc-promo { display: grid; grid-template-columns: 1fr; gap: 12px; padding: 0 16px; }

  /* ---- フッター(canvas 01: 中央寄せ縦積み) ---- */
  body.sc-skin .sc-footer__row { flex-direction: column; align-items: center; gap: 20px; text-align: center; padding: 0 16px; }
  body.sc-skin .sc-footer__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 18px; }
  body.sc-skin .sc-footer__r18 { display: flex; align-items: center; justify-content: center; gap: 12px; }
  body.sc-skin .sc-footer__copy { flex-direction: column; gap: 4px; align-items: center; text-align: center; }

  /* ---- 記事(canvas 03) ---- */
  body.sc-skin.single h1.entry-title { font-size: 21px; line-height: 1.55; }
  body.sc-skin .sc-ameta { flex-wrap: wrap; gap: 6px 12px; font-size: 11px; }
  body.sc-skin .sc-verdict__grid { grid-template-columns: 1fr; gap: 16px; }
  body.sc-skin .sc-verdict__scorenum { font-size: 40px; }
  body.sc-skin .sc-verdict__meterrow { flex-wrap: wrap; gap: 8px; }
  body.sc-skin .sc-meter { width: 100%; display: flex; }
  body.sc-skin .sc-meter > span { flex: 1; text-align: center; }
  body.sc-skin .sc-verdict__cta { flex-wrap: wrap; gap: 10px; }
  body.sc-skin .sc-verdict__cta a.sc-btn { flex: 1 1 100%; text-align: center; }
  body.sc-skin .sc-fitbox { grid-template-columns: 1fr; gap: 10px; }
  body.sc-skin .sc-spec { flex-direction: column; }
  body.sc-skin .sc-spec__pkg { width: 200px; margin: 0 auto 12px; }
  body.sc-skin .sc-price-row { flex-wrap: wrap; gap: 8px 12px; }
  body.sc-skin .sc-around__grid, body.sc-skin .sc-around { grid-template-columns: 1fr; }

  /* 下部固定CTA(canvas 03: 価格+ボタンのみ) */
  body.sc-skin .sc-sticky { padding: 10px 14px; gap: 10px; }
  body.sc-skin .sc-sticky__title, body.sc-skin .sc-sticky__actress, body.sc-skin .sc-sticky__score { display: none; }
  body.sc-skin .sc-sticky .sc-btn { flex: 1; text-align: center; }
}

/* -- TSUME追補: スライドインの開状態を自前定義(Cocoonの開閉transformが
      バー不可視化と競合するため)+CocoonキーカラーのピンクをCF7から排除 -- */
@media (max-width: 768px) {
  body.sc-skin #navi-menu-input:checked ~ #navi-menu-content {
    transform: none !important; position: fixed; top: 0; bottom: 0; left: 0;
    width: min(320px, 86vw); height: 100vh !important; overflow-y: auto;
    z-index: 9999; background: #1C1115; box-shadow: 8px 0 40px rgba(0,0,0,.55);
    padding: 18px 0; visibility: visible;
  }
  body.sc-skin #search-menu-input:checked ~ #search-menu-content {
    transform: none !important; position: fixed; top: 0 !important; bottom: auto !important; left: 0; right: 0;
    height: auto !important; min-height: 92px; z-index: 9999; background: #1C1115;
    border-bottom: 1px solid rgba(224,50,78,.35); padding: 18px 16px; visibility: visible;
  }
  body.sc-skin .navi-menu-content .menu-drawer a { color: #F5EAE6; }
  body.sc-skin .navi-menu-content li { border-bottom: 1px solid rgba(245,234,230,.08); }
}
body.sc-skin .wpcf7 input[type="submit"], body.sc-skin .wpcf7 button[type="submit"] {
  background: var(--nl-crim) !important; color: #FFF4F1 !important; border: 0 !important;
}
body.sc-skin .wpcf7 input[type="submit"]:hover { background: var(--nl-crim-hi) !important; }

/* -- TSUME追補2: モバイル検索は自前トップシート(Cocoon検索パネルの座標系が
      フッターバー配下で解決されないため独立実装) -- */
body.sc-skin .sc-mssheet {
  position: fixed; top: 0; left: 0; right: 0; z-index: 9999;
  background: #1C1115; border-bottom: 1px solid rgba(224,50,78,.35);
  padding: 16px; box-shadow: 0 10px 40px rgba(0,0,0,.5);
}
body.sc-skin .sc-mssheet.is-off { display: none; }
body.sc-skin .sc-mssheet form { display: flex; gap: 10px; }
body.sc-skin .sc-mssheet input[type="search"] {
  flex: 1; background: #170D11; border: 1px solid var(--nl-line); border-radius: 999px;
  color: var(--nl-ink); padding: 12px 18px; font: 500 14px var(--nl-sans); min-width: 0;
}
body.sc-skin .sc-mssheet input[type="search"]:focus { border-color: var(--nl-crim); outline: none; }
body.sc-skin .sc-mssheet .sc-btn { padding: 12px 22px; font-size: 13px; }

/* -- 固定ページの制定スタンプ(canvas 07 下端) -- */
body.sc-skin .sc-page-stamp { font: 500 10.5px var(--nl-mono); color: var(--nl-sub); margin-top: 44px; border-top: 1px solid var(--nl-line); padding-top: 16px; }

/* -- TSUME追補3: SPヒーロー本文をフロー化(絶対配置画像の下敷き解消)+
      セール帯SP1行の可読化(旧1段化規則の上書き) -- */
@media (max-width: 768px) {
  body.sc-skin .sc-bhero { aspect-ratio: auto !important; height: auto !important; overflow: visible; }
  body.sc-skin .sc-bhero__main { height: auto; }
  body.sc-skin .sc-bhero__main .sc-cycle { position: relative !important; inset: auto !important; height: 390px; display: block; overflow: hidden; }
  body.sc-skin .sc-bhero__shade { display: none; }
  body.sc-skin .sc-bhero__body { position: relative; z-index: 2; }
  body.sc-skin .sc-sale { flex-wrap: wrap !important; height: auto !important; overflow: visible !important; }
  body.sc-skin .sc-sale__head { width: 100% !important; }
  body.sc-skin .sc-sale__item { flex: 1 1 100% !important; width: auto !important; margin: 0 !important; justify-content: flex-start; }
  body.sc-skin .sc-sale__item > b { max-width: none; flex: 1; }
  body.sc-skin .sc-sale__meta { width: 100% !important; margin: 0 !important; }
}

/* -- TSUME追補4: 検索ピルのUA既定白地を排除 -- */
@media (max-width: 768px) {
  body.sc-skin .sc-msearch { background: transparent; -webkit-appearance: none; appearance: none; }
}

/* -- TSUME追補5: SP記事タイトルの原寸(canvas 03 ≈22px) -- */
@media (max-width: 768px) {
  body.sc-skin.single .article h1.entry-title, body.sc-skin.single h1.entry-title { font-size: 22px !important; line-height: 1.55 !important; }
}

/* -- TSUME追補6: 固定ページの h2>h3 階層正常化・著者行/ページ下部パンくず撤去 -- */
body.sc-skin.page .entry-content h3 { font: 800 15.5px/1.6 var(--nl-sans); color: var(--nl-ink); margin: 26px 0 10px; }
body.sc-skin .author-link, body.sc-skin .post-author { display: none !important; }
body.sc-skin .breadcrumb.pbp-main-bottom { display: none !important; }

/* ===== TYPE LAYER (matome) 20260816 =====
   まとめ型A「棚型」。視覚の正本 = _design-types-20260816/canvas-rev/round1.dc.html
   アートボード「まとめ型A 棚型 デスクトップ」/「まとめ型A 棚型 モバイル 390」。
   数値はキャンバスのインラインstyle実測値をそのまま移設(適応でなく複製)。
   既存規則は変更しない — この層は最後尾で上書き順を勝たせる。 */

/* -- 共通キッカー(mono 10px / ls .22em / クリムゾン) -- */
body.sc-skin .sc-mtm-kicker {
  font: 600 10px var(--nl-mono);
  letter-spacing: .22em;
  color: var(--nl-crim);
  flex: none;
}

/* -- 結論カプセル -- */
body.sc-skin .sc-mtm-lead {
  border: 1px solid rgba(224, 50, 78, .5);
  background: #1E1216;
  border-radius: 14px;
  padding: 20px 24px;
  margin: 22px 0 0;
}
body.sc-skin .sc-mtm-lead__head { display: flex; align-items: baseline; }
body.sc-skin .sc-mtm-lead__note {
  margin-left: auto;
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
  text-align: right;
}
body.sc-skin .sc-mtm-lead__body {
  font: 900 17px/1.8 var(--nl-sans);
  color: var(--nl-ink);
  margin: 12px 0 0;
  text-wrap: pretty;
}
body.sc-skin .sc-mtm-lead__stamp {
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
  margin: 10px 0 0;
}

/* -- ランキング見出し -- */
body.sc-skin .sc-mtm-rank__head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 36px 0 16px;
  flex-wrap: wrap;
}
body.sc-skin .sc-mtm-rank__label { font: 900 22px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-mtm-rank__note { font: 500 11px var(--nl-sans); color: var(--nl-sub); }

/* -- 順位数字(Oswald・塗りなし+ストローク) -- */
body.sc-skin .sc-mtm-rankno {
  font: 600 30px var(--nl-num);
  color: transparent;
  -webkit-text-stroke: 1px rgba(224, 50, 78, .8);
  line-height: 1;
}
body.sc-skin .sc-mtm-rankno--feat {
  position: absolute;
  top: 8px;
  left: 12px;
  z-index: 2;
  font-size: 64px;
  -webkit-text-stroke: 1.5px rgba(224, 50, 78, .9);
}

/* -- 判定チップ -- */
body.sc-skin .sc-mtm-chip {
  font: 700 9.5px var(--nl-sans);
  padding: 2px 10px;
  border-radius: 999px;
  border: 1px solid transparent;
  white-space: nowrap;
  flex: none;
}
body.sc-skin .sc-mtm-chip.is-buy  { background: var(--nl-crim); color: #FFF4F1; border-color: var(--nl-crim); }
body.sc-skin .sc-mtm-chip.is-wait { background: transparent; color: var(--nl-wait); border-color: rgba(201, 160, 106, .55); }
body.sc-skin .sc-mtm-chip.is-skip { background: transparent; color: var(--nl-skip); border-color: rgba(122, 106, 110, .55); }
body.sc-skin .sc-mtm-chip.is-hold {
  font: 500 9.5px var(--nl-mono);
  padding: 2px 9px;
  background: transparent;
  color: var(--nl-skip);
  border: 1px dashed rgba(122, 106, 110, .6);
}

/* -- ボタン(要素+クラスで body.sc-skin a に勝たせる) -- */
body.sc-skin a.sc-mtm-btn {
  display: inline-block;
  background: var(--nl-crim);
  color: #FFF4F1;
  font: 700 13px var(--nl-sans);
  padding: 11px 24px;
  border-radius: 999px;
  text-decoration: none;
  flex: none;
}
body.sc-skin a.sc-mtm-btn:hover { background: var(--nl-crim-hi); color: #FFF4F1; }
body.sc-skin a.sc-mtm-btn2 {
  display: inline-block;
  border: 1px solid rgba(245, 234, 230, .3);
  color: var(--nl-ink);
  font: 500 12px var(--nl-sans);
  padding: 10px 20px;
  border-radius: 999px;
  text-decoration: none;
  flex: none;
}
body.sc-skin a.sc-mtm-btn2:hover { border-color: rgba(245, 234, 230, .55); color: var(--nl-ink); }
body.sc-skin a.sc-mtm-btn2--sm { font-size: 11px; padding: 7px 15px; }
body.sc-skin .sc-mtm-btn__sp, body.sc-skin .sc-mtm-btn2__sp { display: none; }

/* -- フィーチャー(1位) -- */
body.sc-skin .sc-mtm-feat {
  display: grid;
  grid-template-columns: 230px 1fr;
  border: 1px solid rgba(224, 50, 78, .55);
  background: #1E1216;
  border-radius: 14px;
  overflow: hidden;
}
body.sc-skin .sc-mtm-feat__pkg {
  grid-column: 1;
  /* 明示行(grid-template-rows)を持たないグリッドでは -1 が暗黙行に解決されず
     1行目だけの配置になり、min-height がbody行を膨らませる。span で跨がせる */
  grid-row: 1 / span 2;
  position: relative;
  min-height: 300px;
  background:
    repeating-linear-gradient(45deg, rgba(245, 234, 230, .06) 0, rgba(245, 234, 230, .06) 8px, transparent 8px, transparent 16px)
    var(--nl-surface-2);
  overflow: hidden;
}
body.sc-skin .sc-mtm-feat__pkg .sc-mtm-pkg__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
body.sc-skin .sc-mtm-feat__body { grid-column: 2; grid-row: 1; padding: 20px 24px 0; min-width: 0; }
body.sc-skin .sc-mtm-feat__foot { grid-column: 2; grid-row: 2; padding: 0 24px 16px; min-width: 0; }
body.sc-skin .sc-mtm-feat__metarow { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
/* フィーチャーのチップは行型より大きい(canvas node 55: 800 12px / pad 5px 14px) */
body.sc-skin .sc-mtm-feat__metarow .sc-mtm-chip { font: 800 12px var(--nl-sans); padding: 5px 14px; }
body.sc-skin .sc-mtm-feat__metarow .sc-mtm-chip.is-hold { font: 500 12px var(--nl-mono); padding: 5px 13px; }
body.sc-skin .sc-mtm-feat__meta { font: 500 10px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-mtm-feat__title {
  font: 900 21px/1.5 var(--nl-sans);
  color: var(--nl-ink);
  margin: 11px 0 0;
  text-wrap: pretty;
}
body.sc-skin .sc-mtm-feat__actress { font: 400 12.5px var(--nl-sans); color: var(--nl-sub); margin: 5px 0 0; }
body.sc-skin .sc-mtm-feat__scorerow { display: flex; align-items: baseline; gap: 14px; margin: 12px 0 0; }
body.sc-skin .sc-mtm-feat__score { display: flex; align-items: baseline; gap: 5px; }
body.sc-skin .sc-mtm-feat__scorenum { font: 600 44px/1 var(--nl-num); color: var(--nl-crim); }
body.sc-skin .sc-mtm-feat__scoreof { font: 500 12px var(--nl-num); color: var(--nl-sub); }
body.sc-skin .sc-mtm-feat__fanza { font: 500 11px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-mtm-feat__read {
  font: 400 12.5px/1.85 var(--nl-sans);
  color: #E3D2CF;
  margin: 10px 0 0;
  text-wrap: pretty;
}
body.sc-skin .sc-mtm-feat__cta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 14px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid rgba(245, 234, 230, .1);
  flex-wrap: wrap;
}
body.sc-skin .sc-mtm-feat__pricebox { display: flex; align-items: baseline; gap: 7px; }
body.sc-skin .sc-mtm-feat__price { font: 700 20px var(--nl-num); color: var(--nl-gold); }
body.sc-skin .sc-mtm-feat__list { font: 400 11px var(--nl-sans); color: var(--nl-sub); }
body.sc-skin .sc-mtm-feat__off { font: 700 10.5px var(--nl-sans); color: var(--nl-gold); }
body.sc-skin .sc-mtm-feat__cta a.sc-mtm-btn2 { margin-left: auto; }
body.sc-skin .sc-mtm-feat__stamp { font: 500 10px var(--nl-mono); color: var(--nl-sub); margin: 10px 0 0; }

/* -- 行型(2位以下) -- */
body.sc-skin .sc-mtm-rank { margin: 6px 0 0; }
body.sc-skin .sc-mtm-row {
  display: grid;
  grid-template-columns: 44px 86px 1fr auto;
  gap: 18px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(245, 234, 230, .08);
  align-items: center;
}
body.sc-skin .sc-mtm-row__pkg {
  aspect-ratio: 3 / 4;
  position: relative;
  background:
    repeating-linear-gradient(45deg, rgba(245, 234, 230, .06) 0, rgba(245, 234, 230, .06) 6px, transparent 6px, transparent 12px)
    var(--nl-surface-2);
  border: 1px solid rgba(245, 234, 230, .12);
  border-radius: 6px;
  overflow: hidden;
}
body.sc-skin .sc-mtm-row__pkg .sc-mtm-pkg__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
body.sc-skin .sc-mtm-row__body { min-width: 0; }
body.sc-skin .sc-mtm-row__lead { font: 700 12px/1.5 var(--nl-sans); color: var(--nl-crim); }
body.sc-skin .sc-mtm-row__title { font: 700 15.5px/1.5 var(--nl-sans); color: var(--nl-ink); margin: 6px 0 0; }
body.sc-skin .sc-mtm-row__meta { display: flex; align-items: center; gap: 10px; margin: 7px 0 0; flex-wrap: wrap; }
body.sc-skin .sc-mtm-row__actress { font: 400 11.5px var(--nl-sans); color: var(--nl-sub); }
body.sc-skin .sc-mtm-row__score { font: 600 15px var(--nl-num); color: var(--nl-crim); }
body.sc-skin .sc-mtm-row__fanza { font: 500 10.5px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-mtm-row__buy { display: flex; flex-direction: column; gap: 9px; align-items: flex-end; }
body.sc-skin .sc-mtm-row__price { font: 600 16px var(--nl-num); color: var(--nl-ink); }
body.sc-skin .sc-mtm-row__btns { display: flex; gap: 8px; }
body.sc-skin .sc-mtm-row__btns a.sc-mtm-btn { font: 700 11px var(--nl-sans); padding: 7px 15px; }

/* -- 末尾スタンプ -- */
body.sc-skin .sc-mtm-stamp { font: 500 10px var(--nl-mono); color: var(--nl-sub); margin: 10px 0 0; }

/* -- 選び方の補足 -- */
body.sc-skin .sc-mtm-guide__head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 38px 0 8px;
  flex-wrap: wrap;
}
body.sc-skin .sc-mtm-guide__title { font: 900 22px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-mtm-note {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(245, 234, 230, .08);
}
body.sc-skin .sc-mtm-note__label { font: 700 13.5px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-mtm-note__body { font: 400 14px/1.9 var(--nl-sans); color: #E3D2CF; text-wrap: pretty; }

/* -- パッケージ画像の見せ方(既存 sc_get_package_art 準拠) -- */
body.sc-skin .sc-mtm-pkg__img.is-jacket { object-fit: cover; object-position: 100% 50%; background: #f2f2f2; }
body.sc-skin .sc-mtm-pkg__img.is-poster { object-fit: contain; object-position: 50% 50%; background: #000; }

/* ---------- まとめ型 SP(canvas「まとめ型A 棚型 モバイル 390」準拠) ---------- */
@media (max-width: 768px) {
  body.sc-skin .sc-mtm-kicker { font-size: 9px; letter-spacing: .2em; }

  body.sc-skin .sc-mtm-lead { border-radius: 12px; padding: 14px 15px; margin-top: 13px; }
  body.sc-skin .sc-mtm-lead__note { font-size: 8.5px; }
  body.sc-skin .sc-mtm-lead__body { font: 900 14px/1.8 var(--nl-sans); margin-top: 9px; }
  body.sc-skin .sc-mtm-lead__stamp { font-size: 8.5px; margin-top: 8px; }

  body.sc-skin .sc-mtm-rank__head { gap: 10px; margin: 22px 0 10px; }
  body.sc-skin .sc-mtm-rank__label { font-size: 17px; }
  body.sc-skin .sc-mtm-rank__note { font-size: 9px; }

  /* フィーチャー: 画像+要点を上段グリッド、読み+CTA+スタンプは全幅 */
  body.sc-skin .sc-mtm-feat { grid-template-columns: 118px 1fr; border-radius: 12px; }
  body.sc-skin .sc-mtm-feat__pkg { grid-row: 1; min-height: 158px; }
  body.sc-skin .sc-mtm-feat__body { padding: 12px 13px 10px; }
  body.sc-skin .sc-mtm-feat__foot { grid-column: 1 / -1; grid-row: 2; padding: 0 13px 13px; }
  body.sc-skin .sc-mtm-rankno--feat { top: 5px; left: 8px; font-size: 38px; -webkit-text-stroke: 1.2px rgba(224, 50, 78, .9); }
  body.sc-skin .sc-mtm-chip { font-size: 8.5px; padding: 2px 8px; }
  body.sc-skin .sc-mtm-chip.is-hold { font: 500 8.5px var(--nl-mono); padding: 2px 7px; }
  body.sc-skin .sc-mtm-feat__metarow .sc-mtm-chip { font: 800 10px var(--nl-sans); padding: 3px 11px; }
  body.sc-skin .sc-mtm-feat__metarow .sc-mtm-chip.is-hold { font: 500 10px var(--nl-mono); padding: 3px 10px; }
  body.sc-skin .sc-mtm-feat__meta { display: none; }
  body.sc-skin .sc-mtm-feat__title { font: 900 14px/1.55 var(--nl-sans); margin-top: 8px; }
  body.sc-skin .sc-mtm-feat__actress { font-size: 10.5px; margin-top: 3px; }
  body.sc-skin .sc-mtm-feat__scorerow { gap: 8px; margin-top: 7px; flex-wrap: wrap; }
  body.sc-skin .sc-mtm-feat__score { gap: 4px; }
  body.sc-skin .sc-mtm-feat__scorenum { font-size: 28px; }
  body.sc-skin .sc-mtm-feat__scoreof { font-size: 9px; }
  body.sc-skin .sc-mtm-feat__fanza { flex: 1 0 100%; margin-top: 5px; font-size: 9px; }
  body.sc-skin .sc-mtm-feat__read { font: 400 11.5px/1.8 var(--nl-sans); margin-top: 0; }
  body.sc-skin .sc-mtm-feat__cta { gap: 8px; margin-top: 11px; padding-top: 0; border-top: 0; }
  body.sc-skin .sc-mtm-feat__cta a.sc-mtm-btn {
    flex: 1 1 0;
    text-align: center;
    font: 700 12px var(--nl-sans);
    padding: 12px 0;
  }
  body.sc-skin .sc-mtm-feat__cta a.sc-mtm-btn2 {
    margin-left: 0;
    text-align: center;
    font: 500 11px var(--nl-sans);
    padding: 12px 14px;
  }
  body.sc-skin .sc-mtm-btn__pc, body.sc-skin .sc-mtm-btn2__pc { display: none; }
  body.sc-skin .sc-mtm-btn__sp, body.sc-skin .sc-mtm-btn2__sp { display: inline; }
  /* 価格は主ボタン内に入るため、取消線とOFF率だけをスタンプ手前に中央寄せで残す */
  body.sc-skin .sc-mtm-feat__pricebox {
    order: 3;
    flex: 1 0 100%;
    justify-content: center;
    gap: 6px;
    margin-top: 8px;
  }
  body.sc-skin .sc-mtm-feat__price { display: none; }
  body.sc-skin .sc-mtm-feat__list { font-size: 8.5px; }
  body.sc-skin .sc-mtm-feat__off { font-size: 8.5px; }
  body.sc-skin .sc-mtm-feat__stamp { font-size: 8.5px; margin-top: 2px; text-align: center; }

  /* 行型: 順位+サムネ+本文の3列。価格・ボタンは本文列の下段へ回す */
  body.sc-skin .sc-mtm-row {
    grid-template-columns: 30px 64px 1fr;
    gap: 10px;
    padding: 13px 0;
    align-items: start;
  }
  /* 行型の順位数字だけを縮める。--feat と同詳細度のため子孫で限定する
     (無指定だと後勝ちでフィーチャーの38pxを潰す) */
  body.sc-skin .sc-mtm-row .sc-mtm-rankno { font-size: 20px; }
  body.sc-skin .sc-mtm-row__pkg { border-radius: 5px; }
  body.sc-skin .sc-mtm-row__lead { font: 700 10.5px/1.5 var(--nl-sans); }
  body.sc-skin .sc-mtm-row__title { font: 700 12.5px/1.5 var(--nl-sans); margin-top: 4px; }
  body.sc-skin .sc-mtm-row__meta { gap: 7px; margin-top: 5px; }
  body.sc-skin .sc-mtm-row__actress { font-size: 10px; }
  body.sc-skin .sc-mtm-row__score { font-size: 12.5px; }
  body.sc-skin .sc-mtm-row__fanza { font-size: 9px; }
  body.sc-skin .sc-mtm-chip__sub { display: none; }
  body.sc-skin .sc-mtm-row__buy {
    grid-column: 3;
    grid-row: 2;
    flex-direction: row;
    align-items: center;
    gap: 7px;
    margin-top: 7px;
  }
  body.sc-skin .sc-mtm-row__price { font-size: 13px; }
  body.sc-skin .sc-mtm-row__btns { margin-left: auto; gap: 6px; }
  body.sc-skin .sc-mtm-row__btns a.sc-mtm-btn { font-size: 9.5px; padding: 5px 11px; }
  body.sc-skin .sc-mtm-row__btns a.sc-mtm-btn2--sm { font-size: 9.5px; padding: 5px 11px; }

  body.sc-skin .sc-mtm-stamp { font-size: 8.5px; margin-top: 8px; }

  body.sc-skin .sc-mtm-guide__head { gap: 10px; margin: 22px 0 6px; }
  body.sc-skin .sc-mtm-guide__title { font-size: 16px; }
  body.sc-skin .sc-mtm-note { grid-template-columns: 1fr; gap: 4px; padding: 10px 0; }
  body.sc-skin .sc-mtm-note__label { font-size: 12px; }
  body.sc-skin .sc-mtm-note__body { font: 400 12.5px/1.85 var(--nl-sans); }
}

/* ===== TYPE LAYER (guide) 20260816 =====
   ガイド型A「タイムライン」。視覚の正本 = _design-types-20260816/canvas-rev/round3.dc.html
   アートボード「ガイド型A タイムライン デスクトップ」/「ガイド型A タイムライン モバイル 390」。
   数値はキャンバスのインラインstyle実測値をそのまま移設(適応でなく複製)。
   既存規則は変更しない — この層は最後尾で上書き順を勝たせる。
   琥珀は #C9A06A(--nl-wait 転用)。金 --nl-gold は価格専用のまま使わない。 */

/* -- 器の文字色はトークンで確定させる(Cocoon側の継承色 #FAF8F7 を持ち込まない) -- */
body.sc-skin .sc-gd-lead,
body.sc-skin .sc-gd-lead__head,
body.sc-skin .sc-gd-jumps,
body.sc-skin .sc-gd-head,
body.sc-skin .sc-gd-req,
body.sc-skin .sc-gd-req__row,
body.sc-skin .sc-gd-req__l1,
body.sc-skin .sc-gd-req__l2,
body.sc-skin .sc-gd-steps,
body.sc-skin .sc-gd-step,
body.sc-skin .sc-gd-step__rail,
body.sc-skin .sc-gd-step__body,
body.sc-skin .sc-gd-step__titlerow,
body.sc-skin .sc-gd-step__shot,
body.sc-skin .sc-gd-cautions,
body.sc-skin .sc-gd-caution,
body.sc-skin .sc-gd-caution__head,
body.sc-skin .sc-gd-faq,
body.sc-skin .sc-gd-q,
body.sc-skin .sc-gd-q__head,
body.sc-skin .sc-gd-sub,
body.sc-skin .sc-gd-sub__head,
body.sc-skin .sc-gd-sub__ctarow { color: var(--nl-ink); }

/* -- 節見出し(KICKER + 題 + 補足) -- */
body.sc-skin .sc-gd-head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 36px 0 12px;
  flex-wrap: nowrap;
}
body.sc-skin .sc-gd-head--steps { margin: 38px 0 18px; }
body.sc-skin .sc-gd-head--caution { margin: 6px 0 12px; }
body.sc-skin .sc-gd-kicker {
  font: 600 10px var(--nl-mono);
  letter-spacing: .22em;
  color: var(--nl-crim);
  flex: none;
}
body.sc-skin .sc-gd-head--caution .sc-gd-kicker { color: var(--nl-wait); }
body.sc-skin .sc-gd-head__title { font: 900 22px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-gd-head__note { font: 500 11px var(--nl-sans); color: var(--nl-sub); }

/* -- 結論カプセル -- */
body.sc-skin .sc-gd-lead {
  border: 1px solid rgba(224, 50, 78, .5);
  background: #1E1216;
  border-radius: 14px;
  padding: 20px 24px;
  margin: 22px 0 0;
}
body.sc-skin .sc-gd-lead__head { display: flex; align-items: baseline; }
body.sc-skin .sc-gd-lead__note {
  margin-left: auto;
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
}
body.sc-skin .sc-gd-lead__body {
  font: 900 17px/1.8 var(--nl-sans);
  color: var(--nl-ink);
  margin: 12px 0 0;
  text-wrap: pretty;
}
body.sc-skin .sc-gd-jumps { display: flex; gap: 9px; margin: 13px 0 0; flex-wrap: wrap; }
body.sc-skin a.sc-gd-jump {
  display: inline-block;
  border: 1px solid rgba(224, 50, 78, .6);
  color: var(--nl-crim);
  font: 700 11.5px var(--nl-sans);
  padding: 7px 15px;
  border-radius: 999px;
  text-decoration: none;
}
body.sc-skin a.sc-gd-jump:hover { color: var(--nl-crim-hi); border-color: var(--nl-crim-hi); }
/* デスクトップは情報確認スタンプを見出し右に畳む(キャンバス準拠)。SPで別行に出す。 */
body.sc-skin .sc-gd-lead__stamp { display: none; }

/* -- REQUIRED 要件表 -- */
body.sc-skin .sc-gd-req__hrow {
  display: grid;
  grid-template-columns: 160px 1fr 160px 110px;
  gap: 14px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(245, 234, 230, .16);
  font: 600 10px var(--nl-mono);
  letter-spacing: .08em;
  color: var(--nl-sub);
}
body.sc-skin .sc-gd-req__row {
  display: grid;
  grid-template-columns: 160px 1fr 160px 110px;
  gap: 14px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(245, 234, 230, .08);
  align-items: baseline;
}
/* 行内ラッパを透過させ、4セルを親グリッドへ直接並べる(SPでは2段になる) */
body.sc-skin .sc-gd-req__l1,
body.sc-skin .sc-gd-req__l2 { display: contents; }
body.sc-skin .sc-gd-req__dev  { grid-column: 1; grid-row: 1; font: 700 13.5px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-gd-req__app  { grid-column: 2; grid-row: 1; font: 400 13px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-gd-req__qly  { grid-column: 3; grid-row: 1; font: 400 12px var(--nl-sans); color: #E3D2CF; }
body.sc-skin .sc-gd-req__size { grid-column: 4; grid-row: 1; font: 500 12px var(--nl-mono); color: var(--nl-ink); }
body.sc-skin .sc-gd-req__stamp {
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
  margin: 9px 0 0;
}

/* -- STEPS タイムライン -- */
body.sc-skin .sc-gd-step { display: grid; grid-template-columns: 56px 1fr; gap: 0 22px; }
body.sc-skin .sc-gd-step__rail { display: flex; flex-direction: column; align-items: center; }
body.sc-skin .sc-gd-step__no {
  width: 48px;
  height: 48px;
  border: 1.5px solid var(--nl-crim);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font: 600 20px var(--nl-num);
  color: var(--nl-crim);
  flex: 0 0 auto;
}
body.sc-skin .sc-gd-step__line {
  width: 2px;
  flex: 1 1 0%;
  background: rgba(224, 50, 78, .35);
  margin: 6px 0;
}
body.sc-skin .sc-gd-step__body { padding: 6px 0 32px; min-width: 0; }
body.sc-skin .sc-gd-step__titlerow { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
body.sc-skin .sc-gd-step__title { font: 900 18px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-gd-step__time { font: 500 10px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-gd-step__text {
  font: 400 14px/1.95 var(--nl-sans);
  color: var(--nl-ink);
  margin: 8px 0 0;
  text-wrap: pretty;
}
/* スクショ枠は任意 — shot 未指定なら要素ごと出ない(枠なしStepでも縦線が構造を保つ) */
body.sc-skin .sc-gd-step__shot {
  aspect-ratio: 16 / 9;
  border: 1px dashed rgba(245, 234, 230, .28);
  border-radius: 10px;
  background: #1A1013;
  display: grid;
  place-items: center;
  margin: 12px 0 0;
}
body.sc-skin .sc-gd-step__shotcap {
  font: 500 10px var(--nl-mono);
  color: rgba(245, 234, 230, .4);
}

/* -- CAUTION 注意ボックス(琥珀) -- */
body.sc-skin .sc-gd-caution {
  border: 1px solid rgba(201, 160, 106, .45);
  background: var(--nl-surface);
  border-radius: 12px;
  padding: 15px 18px;
  margin: 0 0 10px;
}
body.sc-skin .sc-gd-caution__head { display: flex; align-items: baseline; gap: 10px; }
body.sc-skin .sc-gd-caution__label {
  font: 600 10px var(--nl-mono);
  letter-spacing: .14em;
  color: var(--nl-wait);
  flex: none;
}
body.sc-skin .sc-gd-caution__title { font: 800 14px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-gd-caution__body {
  font: 400 12.5px/1.9 var(--nl-sans);
  color: #E3D2CF;
  margin: 7px 0 0;
  text-wrap: pretty;
}

/* -- FAQ(details/summary のネイティブ開閉・JS不使用) -- */
body.sc-skin .sc-gd-q {
  border: 1px solid rgba(245, 234, 230, .12);
  border-radius: 10px;
  margin: 0 0 8px;
  overflow: hidden;
}
body.sc-skin .sc-gd-q__head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  cursor: pointer;
  list-style: none;
}
body.sc-skin .sc-gd-q__head::-webkit-details-marker { display: none; }
body.sc-skin .sc-gd-q__mark { font: 600 14px var(--nl-num); color: var(--nl-crim); flex: none; }
body.sc-skin .sc-gd-q__title { font: 700 13.5px var(--nl-sans); color: var(--nl-ink); flex: 1; }
body.sc-skin .sc-gd-q__toggle { font: 500 14px var(--nl-mono); color: var(--nl-sub); flex: none; }
body.sc-skin .sc-gd-q__toggle::before { content: "＋"; }
body.sc-skin .sc-gd-q[open] .sc-gd-q__toggle::before { content: "−"; }
body.sc-skin .sc-gd-q__body {
  padding: 0 16px 14px 44px;
  font: 400 13px/1.9 var(--nl-sans);
  color: #E3D2CF;
  text-wrap: pretty;
}

/* -- SUBSCRIPTION 導線 -- */
body.sc-skin .sc-gd-sub {
  background: var(--nl-surface);
  border: 1px solid rgba(245, 234, 230, .12);
  border-radius: 12px;
  padding: 18px 20px;
  margin: 34px 0 0;
}
body.sc-skin .sc-gd-sub__head { display: flex; align-items: baseline; }
body.sc-skin .sc-gd-sub__note {
  margin-left: auto;
  font: 500 9.5px var(--nl-mono);
  color: var(--nl-sub);
}
body.sc-skin .sc-gd-sub__title { font: 900 16px var(--nl-sans); color: var(--nl-ink); margin: 9px 0 0; }
body.sc-skin .sc-gd-sub__body {
  font: 400 12.5px/1.9 var(--nl-sans);
  color: #E3D2CF;
  margin: 6px 0 0;
  text-wrap: pretty;
}
body.sc-skin .sc-gd-sub__ctarow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 13px 0 0;
  flex-wrap: wrap;
}
body.sc-skin a.sc-gd-sub__cta {
  display: inline-block;
  background: var(--nl-crim);
  color: #FFF4F1;
  font: 700 12.5px var(--nl-sans);
  padding: 11px 22px;
  border-radius: 999px;
  text-decoration: none;
}
body.sc-skin a.sc-gd-sub__cta:hover { background: var(--nl-crim-hi); color: #FFF4F1; }
body.sc-skin .sc-gd-sub__stamp { font: 500 10px var(--nl-mono); color: var(--nl-sub); }

/* -- SP(キャンバス「ガイド型A タイムライン モバイル 390」準拠) -- */
@media (max-width: 768px) {
  body.sc-skin .sc-gd-head { gap: 10px; margin: 22px 0 8px; }
  body.sc-skin .sc-gd-head--steps { margin: 22px 0 12px; }
  body.sc-skin .sc-gd-head--caution { margin: 4px 0 8px; }
  body.sc-skin .sc-gd-head--faq { margin: 20px 0 8px; }
  body.sc-skin .sc-gd-kicker { font-size: 9px; letter-spacing: .2em; }
  body.sc-skin .sc-gd-head__title { font-size: 16px; }
  body.sc-skin .sc-gd-head__note { font-size: 9px; }
  /* SPは REQUIRED/FAQ の補足を畳む(キャンバス モバイルは見出し2要素) */
  body.sc-skin .sc-gd-head--req .sc-gd-head__note,
  body.sc-skin .sc-gd-head--faq .sc-gd-head__note { display: none; }

  body.sc-skin .sc-gd-lead { border-radius: 12px; padding: 14px 15px; margin-top: 13px; }
  body.sc-skin .sc-gd-lead__note { font-size: 8.5px; }
  body.sc-skin .sc-gd-lead__notestamp { display: none; }
  body.sc-skin .sc-gd-lead__body { font: 900 14px/1.8 var(--nl-sans); margin-top: 9px; }
  body.sc-skin .sc-gd-jumps { gap: 7px; margin-top: 11px; }
  body.sc-skin a.sc-gd-jump { font: 700 10px var(--nl-sans); padding: 6px 12px; }
  body.sc-skin .sc-gd-lead__stamp {
    display: block;
    font: 500 8.5px var(--nl-mono);
    color: var(--nl-sub);
    margin: 9px 0 0;
  }

  body.sc-skin .sc-gd-req__hrow { display: none; }
  body.sc-skin .sc-gd-req__row {
    display: block;
    gap: normal;
    align-items: normal;
    padding: 10px 0;
    border-bottom: 1px solid rgba(245, 234, 230, .08);
  }
  body.sc-skin .sc-gd-req__l1 { display: flex; align-items: baseline; gap: 8px; }
  body.sc-skin .sc-gd-req__l2 {
    display: block;
    margin-top: 3px;
    font: 400 11px var(--nl-sans);
    color: var(--nl-sub);
  }
  body.sc-skin .sc-gd-req__dev { font: 700 12.5px var(--nl-sans); }
  body.sc-skin .sc-gd-req__size { margin-left: auto; font: 500 10px var(--nl-mono); color: var(--nl-ink); }
  body.sc-skin .sc-gd-req__app,
  body.sc-skin .sc-gd-req__qly { font: 400 11px var(--nl-sans); color: var(--nl-sub); }
  body.sc-skin .sc-gd-req__qly::before { content: " ・ "; }
  body.sc-skin .sc-gd-req__stamp { font-size: 8.5px; margin-top: 7px; }

  body.sc-skin .sc-gd-step { grid-template-columns: 44px 1fr; gap: 0 14px; }
  body.sc-skin .sc-gd-step__no { width: 38px; height: 38px; font-size: 16px; }
  body.sc-skin .sc-gd-step__line { margin: 5px 0; }
  body.sc-skin .sc-gd-step__body { padding: 4px 0 24px; }
  body.sc-skin .sc-gd-step__titlerow {
    display: block;
    gap: normal;
    align-items: normal;
    flex-wrap: nowrap;
    font: 900 14.5px/1.5 var(--nl-sans);
  }
  body.sc-skin .sc-gd-step__title { font: 900 14.5px/1.5 var(--nl-sans); }
  body.sc-skin .sc-gd-step__time { display: block; font-size: 8.5px; margin-top: 3px; }
  body.sc-skin .sc-gd-step__text { font: 400 12.5px/1.85 var(--nl-sans); margin-top: 6px; }
  body.sc-skin .sc-gd-step__shot { border-radius: 8px; margin-top: 9px; }
  body.sc-skin .sc-gd-step__shotcap { font-size: 8.5px; padding: 0 12px; text-align: center; }

  body.sc-skin .sc-gd-caution { border-radius: 10px; padding: 12px 13px; margin-bottom: 8px; }
  body.sc-skin .sc-gd-caution__head { gap: 8px; }
  body.sc-skin .sc-gd-caution__label { font-size: 9px; letter-spacing: normal; }
  body.sc-skin .sc-gd-caution__title { font-size: 12.5px; }
  body.sc-skin .sc-gd-caution__body { font: 400 11.5px/1.85 var(--nl-sans); margin-top: 5px; }

  body.sc-skin .sc-gd-q { border-radius: 9px; margin-bottom: 7px; }
  body.sc-skin .sc-gd-q__head { gap: 9px; padding: 11px 12px; }
  body.sc-skin .sc-gd-q__mark { font-size: 12px; }
  body.sc-skin .sc-gd-q__title { font: 700 12px/1.5 var(--nl-sans); }
  body.sc-skin .sc-gd-q__toggle { font-size: 12px; }
  body.sc-skin .sc-gd-q__body { padding: 0 12px 12px 33px; font: 400 11.5px/1.85 var(--nl-sans); }

  body.sc-skin .sc-gd-sub { border-radius: 10px; padding: 14px 15px; margin-top: 20px; }
  body.sc-skin .sc-gd-sub__note { display: none; }
  body.sc-skin .sc-gd-sub__title { font-size: 13.5px; margin-top: 7px; }
  body.sc-skin .sc-gd-sub__body { font: 400 11.5px/1.85 var(--nl-sans); margin-top: 5px; }
  body.sc-skin .sc-gd-sub__ctarow { display: block; margin-top: 0; }
  body.sc-skin a.sc-gd-sub__cta {
    display: block;
    text-align: center;
    font: 700 12px var(--nl-sans);
    padding: 12px 0;
    margin-top: 11px;
  }
  body.sc-skin .sc-gd-sub__stamp {
    display: block;
    font-size: 8.5px;
    margin-top: 8px;
    text-align: center;
  }
}

/* ===== FIX: まとめ型の順位数字の可読性 20260816 =====
   フィーチャーカードの順位数字(01)は塗りなし+クリムゾンのストロークのため、
   明るいジャケット実画像の上で沈む。数字が乗る左上にだけ局所スクリムを敷き、
   字体に暗いハローを添えて地から起こす。**位置・寸法・字送りは不変**
   (既存の .sc-mtm-rankno / --feat 規則は触らず、この層で足すだけ)。PC/SP共通。 */
body.sc-skin .sc-mtm-feat__pkg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 46%;
  height: 40%;
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(120% 100% at 0 0,
    rgba(12, 7, 9, .74) 0%, rgba(12, 7, 9, .44) 46%, rgba(12, 7, 9, 0) 100%);
}
body.sc-skin .sc-mtm-rankno--feat {
  text-shadow: 0 1px 3px rgba(12, 7, 9, .92), 0 0 12px rgba(12, 7, 9, .78);
}

/* ===== TYPE LAYER (goods) 20260816 =====
   グッズ紹介型A「v2踏襲」。視覚の正本 = _design-types-20260816/canvas-types.dc.html
   アートボード「グッズ型A v2踏襲 デスクトップ」/「グッズ型A v2踏襲 モバイル 390」。
   数値はキャンバスのインラインstyle実測値をそのまま移設(適応でなく複製)。
   既存規則は変更しない — この層は最後尾で上書き順を勝たせる。
   v2部品(sc-verdict/sc-spec/sc-price)の見た目を踏襲するが、
   ルートは sc-gds-* で分離し、既存レビュー記事の表示に一切触れない。 */

/* -- 器の文字色はトークンで確定させる(Cocoon側の継承色 #FAF8F7 を持ち込まない) -- */
body.sc-skin .sc-gds-verdict,
body.sc-skin .sc-gds-verdict__head,
body.sc-skin .sc-gds-verdict__quoterow,
body.sc-skin .sc-gds-verdict__grid,
body.sc-skin .sc-gds-verdict__scorecol,
body.sc-skin .sc-gds-axes,
body.sc-skin .sc-gds-axis,
body.sc-skin .sc-gds-axis__head,
body.sc-skin .sc-gds-verdict__ctarow,
body.sc-skin .sc-gds-secthead,
body.sc-skin .sc-gds-spec,
body.sc-skin .sc-gds-spec__media,
body.sc-skin .sc-gds-spec__table,
body.sc-skin .sc-gds-spec__row,
body.sc-skin .sc-gds-thumbs,
body.sc-skin .sc-gds-point,
body.sc-skin .sc-gds-fit,
body.sc-skin .sc-gds-fit__col,
body.sc-skin .sc-gds-prow {
  color: var(--nl-ink);
}

/* ---------- 結論カプセル(グッズ版) ---------- */
body.sc-skin .sc-gds-verdict {
  border: 1px solid rgba(224, 50, 78, .5);
  background: #1E1216;
  border-radius: 14px;
  padding: 24px 26px;
  margin-top: 22px;
}
body.sc-skin .sc-gds-verdict__head { display: flex; align-items: baseline; }
body.sc-skin .sc-gds-kicker {
  font: 600 10px var(--nl-mono);
  letter-spacing: .22em;
  color: var(--nl-crim);
}
body.sc-skin .sc-gds-verdict__label {
  margin-left: auto;
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
}
body.sc-skin .sc-gds-verdict__quoterow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 15px;
}
body.sc-skin .sc-gds-chip {
  flex: 0 0 auto;
  white-space: nowrap;
  font: 800 13px var(--nl-sans);
  padding: 6px 16px;
  border-radius: 999px;
  background: var(--nl-crim);
  color: #FFF4F1;
  border: 1px solid var(--nl-crim);
}
body.sc-skin .sc-gds-chip.is-wait {
  background: transparent;
  color: var(--nl-wait);
  border-color: var(--nl-wait);
}
body.sc-skin .sc-gds-chip.is-skip {
  background: transparent;
  color: var(--nl-skip);
  border-color: var(--nl-skip);
}
body.sc-skin .sc-gds-verdict__quote {
  font: 900 18px/1.5 var(--nl-sans);
  text-wrap: pretty;
}
body.sc-skin .sc-gds-verdict__grid {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 36px;
  margin-top: 18px;
  align-items: center;
}
body.sc-skin .sc-gds-score { display: flex; align-items: baseline; gap: 5px; }
body.sc-skin .sc-gds-score__num { font: 600 46px/1 var(--nl-num); color: var(--nl-crim); }
body.sc-skin .sc-gds-score__of { font: 500 12px var(--nl-num); color: var(--nl-sub); }
body.sc-skin .sc-gds-verdict__fanza {
  font: 500 11px var(--nl-sans);
  color: var(--nl-sub);
  margin-top: 7px;
}
body.sc-skin .sc-gds-axes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px 24px;
  max-width: 420px;
}
body.sc-skin .sc-gds-axis__head {
  display: flex;
  justify-content: space-between;
  font: 500 10.5px var(--nl-sans);
  color: var(--nl-sub);
}
body.sc-skin .sc-gds-axis__val { font-family: var(--nl-num); color: var(--nl-crim); }
body.sc-skin .sc-gds-axis__bar {
  height: 5px;
  background: rgba(245, 234, 230, .1);
  border-radius: 999px;
  margin-top: 4px;
  overflow: hidden;
}
body.sc-skin .sc-gds-axis__fill { height: 5px; background: var(--nl-crim); }
body.sc-skin .sc-gds-verdict__note {
  font: 400 12.5px/1.9 var(--nl-sans);
  color: #E3D2CF;
  margin-top: 16px;
  text-wrap: pretty;
}
body.sc-skin .sc-gds-verdict__ctarow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(245, 234, 230, .1);
}
body.sc-skin a.sc-gds-btn {
  display: inline-block;
  background: var(--nl-crim);
  color: #FFF4F1;
  font: 700 13px var(--nl-sans);
  padding: 12px 26px;
  border-radius: 999px;
  text-decoration: none;
}
body.sc-skin a.sc-gds-btn:hover { background: var(--nl-crim-hi); }
/* 価格のボタン内表示はSPアートボードのみ */
body.sc-skin .sc-gds-btn__price { display: none; }
body.sc-skin .sc-gds-verdict__pricegrp { display: flex; align-items: baseline; gap: 8px; }
body.sc-skin .sc-gds-price { font: 700 22px var(--nl-num); color: var(--nl-gold); }
body.sc-skin del.sc-gds-list { font: 400 12px var(--nl-sans); color: var(--nl-sub); }
body.sc-skin .sc-gds-off { font: 700 11px var(--nl-sans); color: var(--nl-gold); }
body.sc-skin .sc-gds-verdict__ctarow .sc-gds-stamp {
  margin-left: auto;
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
}
body.sc-skin .sc-gds-verdict__chipnote {
  font: 500 9.5px var(--nl-mono);
  color: rgba(245, 234, 230, .4);
  margin-top: 9px;
}

/* ---------- セクション見出し ---------- */
body.sc-skin .sc-gds-secthead {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 40px 0 16px;
}
body.sc-skin .sc-gds-secthead__title { font: 900 22px var(--nl-sans); }
body.sc-skin .sc-gds-secthead__note { font: 500 10.5px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-gds-sponly { display: none; }

/* ---------- DATA 商品情報 ---------- */
body.sc-skin .sc-gds-spec { display: flex; gap: 22px; }
body.sc-skin .sc-gds-spec__media { width: 260px; flex: 0 0 auto; }
/* 画像器: 高さ固定 + contain。1:1 / 16:9 / 3:4 を余白で吸収する */
body.sc-skin .sc-gds-frame {
  background: var(--nl-surface-2);
  border: 1px solid rgba(245, 234, 230, .1);
  border-radius: 8px;
  display: grid;
  place-items: center;
  padding: 10px;
  overflow: hidden;
}
body.sc-skin .sc-gds-frame--main { height: 300px; }
body.sc-skin .sc-gds-frame img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 5px;
  display: block;
}
body.sc-skin .sc-gds-thumbs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin-top: 6px;
}
body.sc-skin .sc-gds-frame--thumb {
  height: 56px;
  border-color: rgba(245, 234, 230, .12);
  border-radius: 5px;
  padding: 5px;
}
body.sc-skin .sc-gds-frame--thumb img { border-radius: 3px; }
body.sc-skin .sc-gds-frame--thumb.is-active { border-color: rgba(224, 50, 78, .55); }
body.sc-skin .sc-gds-frame--thumb[role="button"] { cursor: pointer; }
body.sc-skin .sc-gds-spec__medianote {
  font: 400 9.5px/1.7 var(--nl-mono);
  color: rgba(245, 234, 230, .38);
  margin-top: 7px;
}
body.sc-skin .sc-gds-spec__table { flex: 1 1 0%; }
body.sc-skin .sc-gds-spec__row {
  display: grid;
  grid-template-columns: 106px 1fr;
  gap: 16px;
  padding: 8.5px 0;
  border-bottom: 1px solid rgba(245, 234, 230, .08);
}
body.sc-skin .sc-gds-spec__k { font: 500 11px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-gds-spec__v { font: 400 13px var(--nl-sans); }
body.sc-skin .sc-gds-spec__stamp {
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
  margin-top: 9px;
}

/* ---------- REVIEW 良かった点 / 気になる点 ---------- */
body.sc-skin .sc-gds-secthead--cons { margin: 32px 0 12px; }
body.sc-skin .sc-gds-point {
  display: flex;
  gap: 12px;
  padding: 6px 0;
  font: 400 14.5px/1.9 var(--nl-sans);
}
body.sc-skin .sc-gds-point--con { color: #E3D2CF; }
body.sc-skin .sc-gds-point__mark { font-weight: 700; }
body.sc-skin .sc-gds-point--pro .sc-gds-point__mark { color: var(--nl-crim); }
body.sc-skin .sc-gds-point--con .sc-gds-point__mark { color: var(--nl-sub); }

/* ---------- 向く人 / 向かない人 ---------- */
body.sc-skin .sc-gds-fit {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid rgba(245, 234, 230, .12);
  border-radius: 12px;
  overflow: hidden;
  margin-top: 26px;
}
body.sc-skin .sc-gds-fit__col { padding: 18px 20px; }
body.sc-skin .sc-gds-fit__col--miss { border-left: 1px solid rgba(245, 234, 230, .12); }
body.sc-skin .sc-gds-fit__head {
  font: 600 10.5px var(--nl-mono);
  letter-spacing: .14em;
  color: var(--nl-crim);
  margin-bottom: 10px;
}
body.sc-skin .sc-gds-fit__col--miss .sc-gds-fit__head { color: var(--nl-sub); }
body.sc-skin .sc-gds-fit__item { font: 400 12.5px/1.9 var(--nl-sans); padding: 3px 0; }
body.sc-skin .sc-gds-fit__col--miss .sc-gds-fit__item { color: #E3D2CF; }

/* ---------- PRICE 価格と購入先 ---------- */
body.sc-skin .sc-gds-secthead + .sc-gds-prow--main { margin-top: 0; }
body.sc-skin .sc-gds-prow {
  display: grid;
  grid-template-columns: 110px 1fr auto auto;
  gap: 18px;
  align-items: center;
  border-radius: 12px;
}
body.sc-skin .sc-gds-prow--main {
  background: #221219;
  border: 1px solid rgba(224, 50, 78, .45);
  padding: 15px 18px;
}
body.sc-skin .sc-gds-prow--sub {
  border: 1px solid rgba(245, 234, 230, .1);
  padding: 12px 18px;
  margin-top: 8px;
}
body.sc-skin .sc-gds-prow--main .sc-gds-prow__store { font: 700 14px var(--nl-sans); }
body.sc-skin .sc-gds-prow--sub .sc-gds-prow__store { font: 600 13px var(--nl-sans); }
body.sc-skin .sc-gds-prow__off { font: 700 12px var(--nl-sans); color: var(--nl-gold); }
body.sc-skin .sc-gds-prow__list {
  font: 500 10.5px var(--nl-mono);
  color: var(--nl-sub);
  margin-left: 10px;
}
body.sc-skin .sc-gds-prow--sub .sc-gds-prow__sale { font: 500 10.5px var(--nl-mono); color: var(--nl-sub); }
body.sc-skin .sc-gds-prow--main .sc-gds-prow__price { font: 700 24px var(--nl-num); color: var(--nl-gold); }
body.sc-skin .sc-gds-prow--sub .sc-gds-prow__price { font: 600 16px var(--nl-num); }
body.sc-skin a.sc-gds-prow__btn {
  display: inline-block;
  background: var(--nl-crim);
  color: #FFF4F1;
  font: 700 12px var(--nl-sans);
  padding: 10px 20px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
}
body.sc-skin a.sc-gds-prow__btn:hover { background: var(--nl-crim-hi); }
body.sc-skin a.sc-gds-prow__btn--ghost {
  background: transparent;
  border: 1px solid rgba(245, 234, 230, .3);
  color: var(--nl-ink);
  font: 500 12px var(--nl-sans);
  padding: 9px 18px;
}
body.sc-skin a.sc-gds-prow__btn--ghost:hover { background: rgba(245, 234, 230, .06); }
body.sc-skin .sc-gds-price-note {
  font: 500 10.5px var(--nl-mono);
  color: var(--nl-sub);
  margin-top: 9px;
}

/* ---------- SP(canvas「グッズ型A v2踏襲 モバイル 390」準拠) ---------- */
@media (max-width: 767px) {
  body.sc-skin .sc-gds-verdict { border-radius: 12px; padding: 16px; margin-top: 13px; }
  /* SPアートボードは右肩ラベルと判定チップ注記を畳む(chrome を減らす設計) */
  body.sc-skin .sc-gds-verdict__label { display: none; }
  body.sc-skin .sc-gds-verdict__chipnote { display: none; }
  body.sc-skin .sc-gds-kicker { font-size: 9px; letter-spacing: .2em; }
  body.sc-skin .sc-gds-verdict__quoterow { gap: 10px; margin-top: 10px; }
  body.sc-skin .sc-gds-chip { font: 800 11px var(--nl-sans); padding: 4px 12px; }
  body.sc-skin .sc-gds-verdict__quote { font: 900 13.5px/1.6 var(--nl-sans); }

  /* スコア + 4軸を1列の横並びメーターへ */
  body.sc-skin .sc-gds-verdict__grid {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 12px;
  }
  body.sc-skin .sc-gds-verdict__scorecol { display: contents; }
  body.sc-skin .sc-gds-score { flex: 0 0 auto; gap: 4px; }
  body.sc-skin .sc-gds-score__num { font-size: 32px; }
  body.sc-skin .sc-gds-score__of { font-size: 10px; }
  body.sc-skin .sc-gds-axes {
    order: 2;
    flex: 1 1 0%;
    display: flex;
    flex-direction: column;
    gap: 5px;
    max-width: none;
  }
  body.sc-skin .sc-gds-axis { display: flex; align-items: center; gap: 7px; }
  body.sc-skin .sc-gds-axis__head {
    display: block;
    font: 500 9px var(--nl-sans);
    width: 58px;
    flex: 0 0 auto;
  }
  body.sc-skin .sc-gds-axis__val { display: none; }
  body.sc-skin .sc-gds-axis__bar { flex: 1 1 0%; height: 4px; margin-top: 0; }
  body.sc-skin .sc-gds-axis__fill { height: 4px; }
  /* FANZA公式値はメーター群の下へ回す(canvas SP #50) */
  body.sc-skin .sc-gds-verdict__fanza {
    order: 3;
    width: 100%;
    font: 500 9.5px var(--nl-mono);
    margin-top: 9px;
  }
  body.sc-skin .sc-gds-verdict__grid { flex-wrap: wrap; }
  body.sc-skin .sc-gds-verdict__note { font: 400 11.5px/1.85 var(--nl-sans); margin-top: 9px; }

  /* CTAは全幅・価格をボタン内へ。OFF/定価/取得スタンプは中央の1行に畳む */
  body.sc-skin .sc-gds-verdict__ctarow {
    display: block;
    text-align: center;
    margin-top: 12px;
    padding-top: 0;
    border-top: 0;
  }
  body.sc-skin a.sc-gds-btn {
    display: block;
    text-align: center;
    font: 700 12.5px var(--nl-sans);
    padding: 13px 0;
    margin-top: 12px;
  }
  body.sc-skin .sc-gds-btn__price { display: inline; margin-left: 6px; }
  body.sc-skin .sc-gds-verdict__pricegrp {
    display: inline;
    font: 500 8.5px var(--nl-mono);
    color: var(--nl-sub);
  }
  body.sc-skin .sc-gds-verdict__pricegrp .sc-gds-price { display: none; }
  body.sc-skin del.sc-gds-list { font-size: 10px; }
  body.sc-skin .sc-gds-off { font-size: 10px; margin-right: 6px; }
  body.sc-skin .sc-gds-verdict__ctarow .sc-gds-stamp {
    display: inline;
    margin-left: 0;
    font-size: 8.5px;
  }
  body.sc-skin .sc-gds-verdict__ctarow .sc-gds-stamp::before { content: " ・ "; }

  body.sc-skin .sc-gds-secthead { gap: 10px; margin: 22px 0 10px; }
  body.sc-skin .sc-gds-secthead__title { font-size: 17px; }
  /* SPは「良かった点 / 気になる点」の1見出しへ畳む */
  body.sc-skin .sc-gds-sponly { display: inline; }
  body.sc-skin .sc-gds-secthead--cons { display: none; }

  /* DATA: 画像器→サムネ→注記→表 の縦積み */
  body.sc-skin .sc-gds-spec { display: block; }
  body.sc-skin .sc-gds-spec__media { width: auto; }
  body.sc-skin .sc-gds-frame--main { height: 230px; }
  body.sc-skin .sc-gds-frame--thumb { height: 52px; }
  body.sc-skin .sc-gds-spec__medianote { font-size: 8.5px; margin-top: 6px; }
  body.sc-skin .sc-gds-spec__table { margin-top: 12px; }
  body.sc-skin .sc-gds-spec__row { grid-template-columns: 84px 1fr; gap: 12px; padding: 7px 0; }
  body.sc-skin .sc-gds-spec__k { font-size: 10px; }
  body.sc-skin .sc-gds-spec__v { font-size: 12px; }
  body.sc-skin .sc-gds-spec__stamp { font-size: 8.5px; margin-top: 7px; }

  body.sc-skin .sc-gds-point { gap: 9px; padding: 4px 0; font: 400 13px/1.8 var(--nl-sans); }

  body.sc-skin .sc-gds-fit { grid-template-columns: 1fr; border-radius: 10px; margin-top: 16px; }
  body.sc-skin .sc-gds-fit__col { padding: 13px 14px; }
  body.sc-skin .sc-gds-fit__col--miss { border-left: 0; border-top: 1px solid rgba(245, 234, 230, .12); }
  body.sc-skin .sc-gds-fit__head { font-size: 9.5px; margin-bottom: 7px; }
  body.sc-skin .sc-gds-fit__item { font: 400 11.5px/1.85 var(--nl-sans); padding: 2px 0; }

  /* PRICE: 1行flex・ボタンは畳む(主CTAはカプセル側にある) */
  body.sc-skin .sc-gds-prow {
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 10px;
  }
  body.sc-skin .sc-gds-prow--main { padding: 12px 14px; }
  body.sc-skin .sc-gds-prow--sub { padding: 11px 14px; margin-top: 7px; }
  body.sc-skin .sc-gds-prow--main .sc-gds-prow__store { font-size: 12px; }
  body.sc-skin .sc-gds-prow--sub .sc-gds-prow__store { font-size: 12px; }
  body.sc-skin .sc-gds-prow__sale { display: contents; }
  body.sc-skin .sc-gds-prow__off { font-size: 10px; }
  body.sc-skin .sc-gds-prow__saleword,
  body.sc-skin .sc-gds-prow__listword { display: none; }
  body.sc-skin .sc-gds-prow__list { order: 3; margin-left: 0; font-size: 10px; }
  body.sc-skin .sc-gds-prow__listval { text-decoration: line-through; }
  body.sc-skin .sc-gds-prow__price { margin-left: auto; }
  body.sc-skin .sc-gds-prow--main .sc-gds-prow__price { font-size: 18px; }
  body.sc-skin .sc-gds-prow--sub .sc-gds-prow__price { font-size: 14px; }
  body.sc-skin .sc-gds-prow--sub .sc-gds-prow__sale { font-size: 9px; }
  body.sc-skin a.sc-gds-prow__btn { display: none; }
  body.sc-skin .sc-gds-price-note { font-size: 9px; margin-top: 7px; }
}

/* ===== FIX: グッズ型のキャンバス照合ラウンド1 20260816 =====
   本番ライブ computed 実測 vs キャンバス実測の差分から、環境継承(Cocoon)由来の
   ズレと SP の指定漏れだけを潰す。キャンバスの数値そのものは変更しない。 */

/* (1) Cocoon が記事本文のブロック要素に足す下マージンを、部品では殺す。
   キャンバスの部品間隔は各部品の margin-top だけで決まる設計のため。 */
body.sc-skin .sc-gds-verdict,
body.sc-skin .sc-gds-spec,
body.sc-skin .sc-gds-point,
body.sc-skin .sc-gds-fit,
body.sc-skin .sc-gds-prow,
body.sc-skin .sc-gds-price-note,
body.sc-skin .sc-gds-verdict__note,
body.sc-skin .sc-gds-verdict__chipnote,
body.sc-skin .sc-gds-spec__row,
body.sc-skin .sc-gds-spec__stamp,
body.sc-skin .sc-gds-spec__medianote,
body.sc-skin .sc-gds-fit__item,
body.sc-skin .sc-gds-thumbs {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  /* (2) SPの価格行: キャンバスは OFF → 定価(del) → 取得スタンプ の順。
     inline のままだと DOM 順(定価→OFF)で出てしまうため inline-flex で並べ替える。 */
  body.sc-skin .sc-gds-verdict__pricegrp {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
  }
  body.sc-skin .sc-gds-off { order: -1; margin: 0; font: 700 8.5px var(--nl-mono); }
  body.sc-skin del.sc-gds-list { font: 500 8.5px var(--nl-mono); }

  /* (3) SPの軸ラベルは値を畳むので両端揃えにしない(canvas #31) */
  body.sc-skin .sc-gds-axis__head { justify-content: normal; }

  /* (4) 向く人/向かない人は SP では単純な縦積み(canvas #143 は block) */
  body.sc-skin .sc-gds-fit { display: block; }

  /* (5) PRICE行の定価は SP では sans 400 10px(canvas #164) */
  body.sc-skin .sc-gds-prow__list { font: 400 10px var(--nl-sans); }
}

/* ===== FIX: グッズ型 画像器の contain が効かない件 20260816 =====
   実測: 高さ固定の器(.sc-gds-frame)に place-items:center だけを置くと、
   グリッド行が内在高さで解決されるため子の max-height:100% が効かず、
   1:1 や 3:4 の画像が器の外へはみ出す(overflow:hidden で切れて「余白で吸収」にならない)。
   DESIGN-SPEC §6b と同じ処方 — 親に grid-template-rows:100% を与えて行を確定させ、
   子の min-height:0 で縮小を許す。 */
body.sc-skin .sc-gds-frame {
  grid-template-rows: 100%;
  grid-template-columns: 100%;
}
body.sc-skin .sc-gds-frame img {
  min-height: 0;
  min-width: 0;
}

/* ===== TYPE LAYER (sale) 20260816 =====
   セール速報型A「ティッカー」+ 終了状態。視覚の正本 = _design-types-20260816/canvas-types.dc.html
   アートボード「セール速報A ティッカー デスクトップ」/「… モバイル 390」/
   「セール速報 終了状態 デスクトップ」。数値はキャンバスのインラインstyle実測値をそのまま移設。
   既存規則は変更しない — この層は最後尾で上書き順を勝たせる。
   ルートは sc-sl-* で分離し、既存のセール記事(旧様式・[dmm_item]直列)の表示に一切触れない。

   この型は自動公開ルートが毎日生成する記事の器なので、**件数でレイアウトが変わらないこと**を
   最優先にしている。行は単純ループで、grid の列定義とエリア名だけで PC/SP を作り分ける
   (行数に依存する :nth-child 系の規則を1つも置かない)。 */

/* -- 器の文字色はトークンで確定させる(Cocoon側の継承色を持ち込まない) -- */
body.sc-skin .sc-sl-bar,
body.sc-skin .sc-sl-bar__meta,
body.sc-skin .sc-sl-bar__side,
body.sc-skin .sc-sl-secthead,
body.sc-skin .sc-sl-row,
body.sc-skin .sc-sl-row__info,
body.sc-skin .sc-sl-row__price,
body.sc-skin .sc-sl-now,
body.sc-skin .sc-sl-now__main,
body.sc-skin .sc-sl-fc,
body.sc-skin .sc-sl-fc__body {
  color: var(--nl-ink);
}

/* ---------- キッカー(共通) ---------- */
body.sc-skin .sc-sl-kicker {
  display: block;
  font: 600 10px var(--nl-mono);
  letter-spacing: .22em;
  color: var(--nl-crim);
}
body.sc-skin .sc-sl-kicker--gold { color: var(--nl-gold); }

/* ---------- 期限バー(開催中) ---------- */
body.sc-skin .sc-sl-bar {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "kicker side"
    "name   side"
    "body   side"
    "meta   side";
  column-gap: 24px;
  align-items: center;
  background: #1A0E13;
  border: 1px solid rgba(224, 50, 78, .45);
  border-radius: 14px;
  padding: 18px 22px;
  /* 下マージンは 0 を明示する。Cocoon が本文直下の要素へ 28.8px を与えるため、
     margin-top だけ書くと行と行の間にキャンバスに無い余白が入る(2026-08-16 実測)。 */
  margin: 22px 0 0;
}
body.sc-skin .sc-sl-bar .sc-sl-kicker { grid-area: kicker; }
body.sc-skin .sc-sl-bar__name {
  grid-area: name;
  font: 900 24px/1.35 var(--nl-sans);
  margin-top: 6px;
  text-wrap: pretty;
}
body.sc-skin .sc-sl-bar__body {
  grid-area: body;
  font: 400 12.5px/1.85 var(--nl-sans);
  color: var(--nl-sub);
  margin-top: 7px;
  max-width: 460px;
  text-wrap: pretty;
}
body.sc-skin .sc-sl-bar__meta { grid-area: meta; }
body.sc-skin .sc-sl-bar__end {
  font: 500 11px var(--nl-mono);
  color: var(--nl-ink);
  margin-top: 8px;
}
body.sc-skin .sc-sl-bar__stamp {
  font: 500 10px var(--nl-mono);
  color: var(--nl-sub);
  margin-top: 3px;
}
body.sc-skin .sc-sl-bar__side {
  grid-area: side;
  align-self: center;
  text-align: right;
  border-left: 1px solid rgba(245, 234, 230, .12);
  padding-left: 24px;
}
body.sc-skin .sc-sl-bar__sidelabel {
  font: 600 10px var(--nl-mono);
  letter-spacing: .18em;
  color: var(--nl-sub);
}
/* 終了状態の「終了日時」 */
body.sc-skin .sc-sl-bar__sideval {
  font: 600 20px/1.2 var(--nl-num);
  color: var(--nl-sub);
  margin-top: 4px;
}
/* 開催中の「残り」— 金のOswald大書(価格専用色をここだけ期限に貸す=キャンバス準拠) */
body.sc-skin .sc-sl-bar__sideval--left {
  font: 600 38px/1.1 var(--nl-num);
  color: var(--nl-gold);
  margin-top: 2px;
}
body.sc-skin .sc-sl-bar__sidenote {
  font: 500 9.5px var(--nl-mono);
  color: var(--nl-sub);
  margin-top: 2px;
}

/* ---------- 期限バー(終了状態・6c) ---------- */
body.sc-skin .sc-sl-bar--ended {
  background: #1A1518;
  border-color: rgba(122, 106, 110, .55);
}
body.sc-skin .sc-sl-bar--ended .sc-sl-kicker { color: var(--nl-skip); }
body.sc-skin .sc-sl-bar--ended .sc-sl-bar__name { color: var(--nl-sub); }
body.sc-skin .sc-sl-bar--ended .sc-sl-bar__side { border-left-color: rgba(245, 234, 230, .1); }
body.sc-skin .sc-sl-bar--ended .sc-sl-bar__sidelabel { color: var(--nl-skip); }

/* ---------- 節見出し ---------- */
body.sc-skin .sc-sl-secthead {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 12px;
  margin: 34px 0 14px;
}
body.sc-skin .sc-sl-secthead .sc-sl-kicker { display: inline-block; }
body.sc-skin .sc-sl-secthead__title { font: 900 22px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-sl-secthead__note { font: 500 11px var(--nl-sans); color: var(--nl-sub); }

/* ---------- 対象作品の行(PC=均一rows) ---------- */
body.sc-skin .sc-sl-row {
  display: grid;
  grid-template-columns: 78px 1fr auto auto;
  grid-template-areas:
    "pkg info price btn"
    "pkg read price btn";
  column-gap: 18px;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid var(--nl-line);
  margin: 0;
}
body.sc-skin .sc-sl-row__pkg {
  grid-area: pkg;
  aspect-ratio: 3 / 4;
  background: repeating-linear-gradient(45deg, rgba(245, 234, 230, .06) 0 6px, transparent 6px 12px) var(--nl-surface-2);
  border: 1px solid rgba(245, 234, 230, .12);
  border-radius: 6px;
  overflow: hidden;
  /* 高さ固定の器に画像を収める処方(DESIGN-SPEC §6b と同じ — 行の内在膨張を止める) */
  display: grid;
  grid-template-rows: 100%;
  grid-template-columns: 100%;
}
body.sc-skin .sc-sl-row__img {
  display: block;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}
/* 見せ方は既存 sc_get_package_art 準拠(ジャケ合成=表を右クロップ / VRポスター=全体) */
body.sc-skin .sc-sl-row__img.is-jacket { object-fit: cover; object-position: 100% 50%; background: #f2f2f2; }
body.sc-skin .sc-sl-row__img.is-poster { object-fit: contain; object-position: 50% 50%; background: #000; }
body.sc-skin .sc-sl-row__info { grid-area: info; min-width: 0; }
body.sc-skin .sc-sl-row__badge { display: none; }
/* 作品名・読みは行数を固定する。FANZAの作品名は100字を超えることがあり、
   放っておくと行の高さが作品ごとにばらつく = 機械生成で見た目が崩れる。
   キャンバスの行(136.3px)はパッケージ(78×104)が決めているので、
   2行までに畳めば件数・作品を問わず同じ高さに収まる(2026-08-16 実測で165px→137pxへ収束)。
   なお本環境では computed の display が -webkit-box ではなく flow-root へ blockify される
   (design-v1.css の 2026-08-12 の注記と同じ現象)。clip 位置は padding box の端なので、
   **この2要素には padding を置かない** — 置くと3行目が余白へ食い込んで見える。 */
body.sc-skin .sc-sl-row__t {
  font: 700 15.5px/1.5 var(--nl-sans);
  color: var(--nl-ink);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
body.sc-skin .sc-sl-row__n { font: 400 11.5px var(--nl-sans); color: var(--nl-sub); margin-top: 4px; }
body.sc-skin .sc-sl-row__read {
  grid-area: read;
  min-width: 0;
  font: 500 11px var(--nl-mono);
  color: #E3D2CF;
  margin-top: 6px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
body.sc-skin .sc-sl-row__price {
  grid-area: price;
  display: grid;
  grid-template-columns: auto auto;
  justify-content: end;
  align-items: baseline;
  column-gap: 7px;
  text-align: right;
}
body.sc-skin .sc-sl-row__p { font: 700 22px var(--nl-num); color: var(--nl-gold); }
body.sc-skin .sc-sl-row__was { font: 400 11px var(--nl-sans); color: var(--nl-sub); }
body.sc-skin .sc-sl-row__off {
  grid-column: 1 / 3;
  justify-self: end;
  font: 700 10.5px var(--nl-sans);
  color: var(--nl-gold);
  margin-top: 2px;
}
body.sc-skin a.sc-sl-row__btn {
  grid-area: btn;
  align-self: center;
  display: inline-block;
  background: var(--nl-crim);
  color: #FFF4F1;
  font: 700 12px var(--nl-sans);
  padding: 10px 20px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
}
body.sc-skin a.sc-sl-row__btn:hover { background: var(--nl-crim-hi); color: #FFF4F1; }
body.sc-skin .sc-sl-row__btnlong { display: none; }

/* ---------- 末尾スタンプ ---------- */
body.sc-skin .sc-sl-note {
  font: 500 10.5px var(--nl-mono);
  color: var(--nl-sub);
  margin: 10px 0 0;
}
body.sc-skin .sc-sl-note--ended { margin: 8px 0 0; }

/* ---------- 終了状態: 現在開催中のセール ---------- */
body.sc-skin .sc-sl-now {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 18px;
  align-items: center;
  background: #1A0E13;
  border: 1px solid rgba(224, 50, 78, .4);
  border-radius: 12px;
  padding: 15px 18px;
  margin-bottom: 9px;
}
body.sc-skin .sc-sl-now__t { font: 800 15.5px var(--nl-sans); color: var(--nl-ink); }
body.sc-skin .sc-sl-now__meta { font: 500 10.5px var(--nl-mono); color: var(--nl-sub); margin-top: 4px; }
body.sc-skin a.sc-sl-now__read {
  display: inline-block;
  border: 1px solid rgba(245, 234, 230, .3);
  color: var(--nl-ink);
  font: 500 12px var(--nl-sans);
  padding: 9px 18px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
}
body.sc-skin a.sc-sl-now__read:hover { border-color: var(--nl-crim); color: var(--nl-crim); }
body.sc-skin a.sc-sl-now__btn {
  display: inline-block;
  background: var(--nl-crim);
  color: #FFF4F1;
  font: 700 12px var(--nl-sans);
  padding: 10px 20px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
}
body.sc-skin a.sc-sl-now__btn:hover { background: var(--nl-crim-hi); color: #FFF4F1; }

/* ---------- SALE FORECAST 誘導 ---------- */
body.sc-skin .sc-sl-fc {
  display: flex;
  align-items: center;
  gap: 18px;
  background: var(--nl-surface);
  border: 1px solid rgba(255, 194, 75, .35);
  border-radius: 12px;
  padding: 18px 20px;
  margin: 30px 0 0;
}
body.sc-skin .sc-sl-fc--ended { margin: 26px 0 0; }
body.sc-skin .sc-sl-fc__body { flex: 1; min-width: 0; }
body.sc-skin .sc-sl-fc__h { font: 900 17px var(--nl-sans); color: var(--nl-ink); margin-top: 7px; }
body.sc-skin .sc-sl-fc__b {
  font: 400 12px/1.85 var(--nl-sans);
  color: var(--nl-sub);
  margin-top: 5px;
  text-wrap: pretty;
}
body.sc-skin a.sc-sl-fc__btn {
  flex: none;
  display: inline-block;
  border: 1px solid rgba(245, 234, 230, .3);
  color: var(--nl-ink);
  font: 500 12px var(--nl-sans);
  padding: 10px 20px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
}
body.sc-skin a.sc-sl-fc__btn:hover { border-color: var(--nl-gold); color: var(--nl-gold); }
body.sc-skin .sc-sl-autonote {
  border-top: 1px solid var(--nl-line);
  margin: 26px 0 0;
  padding-top: 14px;
  font: 400 10.5px/1.85 var(--nl-mono);
  color: rgba(245, 234, 230, .42);
}

/* ---------- セール速報型 SP(canvas「セール速報A ティッカー モバイル 390」準拠) ---------- */
@media (max-width: 768px) {
  /* 期限バー: 見出し→セール名→(残り | 終了+スタンプ)の1列縦積み */
  body.sc-skin .sc-sl-bar {
    grid-template-areas:
      "kicker kicker"
      "name   name"
      "body   body"
      "side   meta";
    border-radius: 12px;
    padding: 14px 15px;
    margin: 13px 0 0;
  }
  body.sc-skin .sc-sl-bar .sc-sl-kicker { font-size: 9px; letter-spacing: .2em; }
  body.sc-skin .sc-sl-bar__name { font: 900 17px/1.4 var(--nl-sans); }
  body.sc-skin .sc-sl-bar__side,
  body.sc-skin .sc-sl-bar__meta {
    align-self: end;
    border-top: 1px solid rgba(245, 234, 230, .12);
    margin-top: 10px;
    padding-top: 10px;
  }
  body.sc-skin .sc-sl-bar__side {
    text-align: start;
    border-left: 0;
    padding-left: 0;
  }
  body.sc-skin .sc-sl-bar__meta { text-align: right; }
  body.sc-skin .sc-sl-bar__end { font-size: 10px; margin-top: 0; }
  body.sc-skin .sc-sl-bar__stamp { font-size: 8.5px; margin-top: 2px; }
  body.sc-skin .sc-sl-bar__sidelabel { font-size: 9px; letter-spacing: .16em; }
  body.sc-skin .sc-sl-bar__sideval--left { font-size: 28px; margin-top: 0; }
  body.sc-skin .sc-sl-bar__sidenote { display: none; }

  /* 終了状態は同一構造の1列縦積み(キャンバス6cの注記) */
  body.sc-skin .sc-sl-bar--ended {
    grid-template-areas:
      "kicker kicker"
      "name   name"
      "body   body"
      "side   side";
  }
  body.sc-skin .sc-sl-bar--ended .sc-sl-bar__sideval { font-size: 16px; margin-top: 2px; }

  body.sc-skin .sc-sl-secthead { gap: 10px; margin: 20px 0 10px; }
  body.sc-skin .sc-sl-secthead .sc-sl-kicker { font-size: 9px; letter-spacing: .2em; }
  body.sc-skin .sc-sl-secthead__title { font-size: 16px; }
  body.sc-skin .sc-sl-secthead__note {
    flex: 0 0 100%;
    font: 500 9px var(--nl-mono);
    margin-top: 4px;
  }

  /* 以降のコンパクト行: パッケージ56px・作品名/価格/読みの3段 */
  body.sc-skin .sc-sl-row {
    grid-template-columns: 56px 1fr auto;
    grid-template-areas:
      "pkg info  btn"
      "pkg price btn"
      "pkg read  btn";
    column-gap: 11px;
    padding: 12px 0;
  }
  body.sc-skin .sc-sl-row__pkg {
    border-radius: 5px;
    background-image: repeating-linear-gradient(45deg, rgba(245, 234, 230, .06) 0 5px, transparent 5px 10px);
  }
  body.sc-skin .sc-sl-row__t { font: 700 12.5px/1.5 var(--nl-sans); }
  body.sc-skin .sc-sl-row__n { display: none; }
  body.sc-skin .sc-sl-row__price {
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    gap: 6px;
    margin-top: 4px;
    text-align: start;
  }
  body.sc-skin .sc-sl-row__p { font-size: 16px; }
  body.sc-skin .sc-sl-row__was { font-size: 9.5px; }
  body.sc-skin .sc-sl-row__off { font-size: 9px; margin-top: 0; }
  body.sc-skin .sc-sl-row__read { font-size: 8.5px; color: var(--nl-sub); margin-top: 3px; }
  body.sc-skin a.sc-sl-row__btn { font-size: 10px; padding: 7px 12px; }

  /* 先頭アイテムだけ全幅フィーチャー(canvas 08) */
  body.sc-skin .sc-sl-row--feat {
    grid-template-columns: 104px 1fr;
    grid-template-areas:
      "pkg info"
      "pkg price"
      "read read"
      "btn  btn";
    column-gap: 12px;
    align-items: start;
    padding: 12px;
    border: 1px solid rgba(255, 194, 75, .35);
    border-radius: 12px;
    background: var(--nl-surface);
  }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__pkg { border-radius: 6px; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__badge {
    display: block;
    font: 600 8.5px var(--nl-mono);
    letter-spacing: .14em;
    color: var(--nl-gold);
  }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__t { font: 700 13.5px/1.5 var(--nl-sans); margin-top: 5px; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__n {
    display: block;
    font: 400 10px var(--nl-sans);
    color: var(--nl-sub);
    margin-top: 3px;
  }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__price { margin-top: 8px; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__p { font-size: 22px; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__was { font-size: 10px; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__off { font-size: 9.5px; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__read { font-size: 9.5px; color: #E3D2CF; margin-top: 12px; }
  body.sc-skin .sc-sl-row--feat a.sc-sl-row__btn {
    display: block;
    width: 100%;
    text-align: center;
    font: 700 12px var(--nl-sans);
    padding: 12px 0;
    margin-top: 10px;
  }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__btnshort { display: none; }
  body.sc-skin .sc-sl-row--feat .sc-sl-row__btnlong { display: inline; }

  body.sc-skin .sc-sl-note { font-size: 8.5px; margin: 8px 0 0; }
  body.sc-skin .sc-sl-note__pconly { display: none; }

  body.sc-skin .sc-sl-now { grid-template-columns: 1fr; gap: 10px; padding: 14px 15px; }
  body.sc-skin .sc-sl-now__t { font-size: 14px; }
  body.sc-skin a.sc-sl-now__read,
  body.sc-skin a.sc-sl-now__btn { display: block; text-align: center; }

  body.sc-skin .sc-sl-fc { display: block; border-radius: 10px; padding: 14px 15px; margin: 18px 0 0; }
  body.sc-skin .sc-sl-fc .sc-sl-kicker { font-size: 9px; letter-spacing: .2em; }
  body.sc-skin .sc-sl-fc__h { font-size: 14px; margin-top: 6px; }
  body.sc-skin .sc-sl-fc__b { font-size: 11.5px; margin-top: 5px; }
  body.sc-skin a.sc-sl-fc__btn {
    display: block;
    text-align: center;
    font-size: 11.5px;
    padding: 11px 0;
    margin-top: 11px;
  }
  body.sc-skin .sc-sl-autonote { margin: 18px 0 0; padding-top: 12px; font-size: 9.5px; }
}

/* ================================================================
   31. セール速報帯(.sc-sale)の価格が省略される問題(2026-08-17)
   ----------------------------------------------------------------
   症状: トップの帯で価格が「¥300 → ¥…」と切れて読めない。
         OFF率も「50%」「OFF」の2行に割れていた。
   原因: L2667 `body.sc-skin .sc-sale__item > b`(max-width:200px +
         white-space:nowrap + text-overflow:ellipsis)と L2799 の同セレクタ
         (flex:0 1 auto + min-width:0)は**作品名の <b> を想定した規則**だが、
         item の DOM は
           <a.sc-sale__item><span.sc-sale__off/><b>作品名</b><del>¥通常</del><b>¥セール</b></a>
         で <b> が2つあり、**セール価格の <b> にも当たっていた**。
         帯は L2796 で nowrap + overflow:hidden の1行厳守のため、幅が詰まると
         価格が押し潰される。実測 1070/1440/1800 で price sw=28 / cw=19。
   由来: 上記2規則はいずれも 2026-08-13 の B-skin リニューアル(1b43f8c /
         926388b)由来で、Xwrite 移行(2026-08-17)より前からの不具合。
         セレクタも DOM もテーマに依存せず site-core 内で完結するため、
         子テーマではなく本ファイルで直す。
   方針: 価格3点(OFF率・通常価格・セール価格)は読者にとって要の情報なので
         伸縮も省略もさせず、可変幅は作品名の <b> だけが負う。
   ================================================================ */
body.sc-skin .sc-sale__item > .sc-sale__off,
body.sc-skin .sc-sale__item > del,
body.sc-skin .sc-sale__item > b:last-of-type {
  flex: 0 0 auto;
  min-width: auto;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
}
/* セール価格は DESIGN-SPEC §2「--nl-gold(#FFC24B)は価格専用 / 数字は Oswald」に従う。
   従来は ink(#F5EAE6)+Zen Kaku で、金+Oswald は OFF率だけだった。
   Oswald は字幅が狭いので、可読性を上げつつ占有幅はむしろ減る。 */
body.sc-skin .sc-sale__item > b:last-of-type {
  font: 600 14px var(--nl-num);
  color: var(--nl-gold);
}
/* 幅の増減を一手に引き受けるのは作品名だけ。flex-basis:0 にして
   「余れば伸び、足りなければ真っ先に省略される」側に固定する。
   作品名は PHP 側で18文字+「…」に切ってあるので、ここでの省略は二重の保険。 */
body.sc-skin .sc-sale__item > b:first-of-type {
  flex: 1 1 0;
  min-width: 0;
  max-width: 200px;
}
