@charset "UTF-8";
:root {
	/* 黒系 */
	--sumi: #050403;
	--sumi-2: #0b0a08;

	/* 和紙・テキスト */
	--washi: #f5ead1;
	--text-dark: #17110b;

	/* グレー系 */
	--muted: #afa58f;
	--muted-2: #827764;

	/* 金 */
	--gold: #c9a861;
	--gold-2: #f4d58a;

	/* 赤 */
	--red: #b84332;
	--red-2: #ee6a55;

	/* 青 */
	--blue: #142a58;
	--blue-2: #7aa7ff;

	/* 緑 */
	--aomidori: #1e4b44;
	--koke: #6c7650;

	/* ボーダー */
	--border: rgba(201,168,97,0.34);
	--border-soft: rgba(245,234,209,0.10);

	/* 影 */
	--shadow: rgba(0,0,0,0.38);

	/* カード系（透過は別枠で持つ） */
	--card: rgba(18, 14, 10, 0.78);
	--card-2: rgba(30, 24, 17, 0.72);
}



/* =========================================================
TENMON-ARK LP Block 01
トップブロック｜問いを、中心へ。
Founder紹介リンク専用 / 個人情報非表示 / カウントダウンなし
修正版：個人 9,800円→6,800円 / Pro 39,800円→29,800円
========================================================= */
    #tenmon-lp-hero-center-v6 {

      position: relative;
      min-height: 840px;
      overflow: hidden;
      display: grid;
      place-items: center;
      color: var(--washi);
      background:
        radial-gradient(circle at 50% 20%, rgba(244,213,138,0.16), transparent 33%),
        radial-gradient(circle at 16% 36%, rgba(20,42,88,0.36), transparent 36%),
        radial-gradient(circle at 84% 70%, rgba(184,67,50,0.18), transparent 36%),
        radial-gradient(circle at 50% 90%, rgba(30,75,68,0.18), transparent 42%),
        linear-gradient(180deg, var(--sumi) 0%, #120e0a 48%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      letter-spacing: 0.04em;
      box-sizing: border-box;
      isolation: isolate;
	  padding-top: 55px;
    }

    #tenmon-lp-hero-center-v6 * {
      box-sizing: border-box;
    }

    #tenmon-lp-hero-center-v6::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: 0.14;
      pointer-events: none;
      background-image:
        radial-gradient(rgba(245,234,209,0.18) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.14) 1px, transparent 1px);
      background-size: 42px 42px, 78px 78px;
      background-position: 0 0, 22px 34px;
      mix-blend-mode: screen;
      z-index: 0;
    }

    #tenmon-lp-hero-center-v6::after {
      content: "";
      position: absolute;
      inset: -10%;
      background:
        radial-gradient(ellipse at 50% 50%, transparent 0%, transparent 34%, rgba(5,4,3,0.34) 70%),
        linear-gradient(90deg, rgba(5,4,3,0.72), transparent 25%, transparent 75%, rgba(5,4,3,0.72));
      pointer-events: none;
      z-index: 1;
    }

    #tenmon-lp-hero-center-v6 .tm-hero-visual {
      position: absolute;
      inset: 0;
      bottom: auto;
      margin-top: 63px;
      z-index: 2;
      pointer-events: none;
    }

    #tenmon-lp-hero-center-v6 .tm-futomani-field {
      position: absolute;
      left: 50%;
      top: 50%;
      width: min(720px, 92vw);
      height: min(720px, 92vw);
      transform: translate(-50%, 150px);
      border-radius: 50%;
      opacity: 0.92;
    }

    #tenmon-lp-hero-center-v6 .tm-futomani-field::before,
    #tenmon-lp-hero-center-v6 .tm-futomani-field::after {
      content: "";
      position: absolute;
      border-radius: 50%;
    }

    #tenmon-lp-hero-center-v6 .tm-futomani-field::before {
      inset: 0;
      border: 1px solid rgba(201,168,97,0.42);
      box-shadow:
        0 0 90px rgba(201,168,97,0.14),
        inset 0 0 100px rgba(201,168,97,0.08);
      animation: tmHeroBreathV6 9s ease-in-out infinite;
    }

    #tenmon-lp-hero-center-v6 .tm-futomani-field::after {
      inset: 10%;
      border: 1px solid rgba(201,168,97,0.18);
      box-shadow:
        inset 0 0 80px rgba(20,42,88,0.32),
        0 0 80px rgba(184,67,50,0.08);
      animation: tmHeroBreathInnerV6 7s ease-in-out infinite;
    }

    @keyframes tmHeroBreathV6 {
      0%, 100% { transform: scale(1); opacity: 0.62; }
      50% { transform: scale(1.035); opacity: 1; }
    }

    @keyframes tmHeroBreathInnerV6 {
      0%, 100% { transform: scale(0.98); opacity: 0.55; }
      50% { transform: scale(1.02); opacity: 0.9; }
    }

    #tenmon-lp-hero-center-v6 .tm-kanagi-grid {
      position: absolute;
      left: 50%;
      top: 50%;
      width: min(420px, 68vw);
      height: min(420px, 68vw);
      transform: translate(-50%, -50%);
      opacity: 0.20;
      background:
        linear-gradient(rgba(201,168,97,0.55) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201,168,97,0.55) 1px, transparent 1px),
        linear-gradient(45deg, transparent 49.6%, rgba(201,168,97,0.35) 50%, transparent 50.4%),
        linear-gradient(-45deg, transparent 49.6%, rgba(201,168,97,0.35) 50%, transparent 50.4%);
      background-size: 25% 25%, 25% 25%, 100% 100%, 100% 100%;
      border: 1px solid rgba(201,168,97,0.42);
      animation: tmKanagiFloatV6 12s ease-in-out infinite;
    }

    @keyframes tmKanagiFloatV6 {
      0%, 100% { transform: translate(-50%, -50%) rotate(0deg) scale(1); }
      50% { transform: translate(-50%, -50%) rotate(0.8deg) scale(1.025); }
    }

    #tenmon-lp-hero-center-v6 .tm-spiral-ring {
      position: absolute;
      left: 50%;
      top: 50%;
      width: min(590px, 86vw);
      height: min(590px, 86vw);
      transform: translate(-50%, -50%);
      border-radius: 50%;
      animation: tmRotateSlowV6 48s linear infinite;
    }

    #tenmon-lp-hero-center-v6 .tm-spiral-ring span {
      position: absolute;
      left: 50%;
      top: 50%;
      color: rgba(245,234,209,0.36);
      font-size: 13px;
      letter-spacing: 0.18em;
      text-shadow: 0 0 18px rgba(244,213,138,0.22);
      transform-origin: 0 0;
      white-space: nowrap;
    }

    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(1)  { transform: rotate(0deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(2)  { transform: rotate(30deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(3)  { transform: rotate(60deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(4)  { transform: rotate(90deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(5)  { transform: rotate(120deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(6)  { transform: rotate(150deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(7)  { transform: rotate(180deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(8)  { transform: rotate(210deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(9)  { transform: rotate(240deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(10) { transform: rotate(270deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(11) { transform: rotate(300deg) translateX(255px) rotate(90deg); }
    #tenmon-lp-hero-center-v6 .tm-spiral-ring span:nth-child(12) { transform: rotate(330deg) translateX(255px) rotate(90deg); }

    @keyframes tmRotateSlowV6 {
      from { transform: translate(-50%, -50%) rotate(0deg); }
      to { transform: translate(-50%, -50%) rotate(360deg); }
    }

    #tenmon-lp-hero-center-v6 .tm-cross-x,
    #tenmon-lp-hero-center-v6 .tm-cross-y,
    #tenmon-lp-hero-center-v6 .tm-cross-d1,
    #tenmon-lp-hero-center-v6 .tm-cross-d2 {
      position: absolute;
      left: 50%;
      top: 50%;
      height: 1px;
      transform-origin: center;
      background: linear-gradient(90deg, transparent, rgba(244,213,138,0.56), transparent);
    }

    #tenmon-lp-hero-center-v6 .tm-cross-x {
      width: min(680px, 92vw);
      transform: translate(-50%, -50%);
    }

    #tenmon-lp-hero-center-v6 .tm-cross-y {
      width: min(680px, 92vw);
      transform: translate(-50%, -50%) rotate(90deg);
    }

    #tenmon-lp-hero-center-v6 .tm-cross-d1 {
      width: min(540px, 82vw);
      opacity: 0.38;
      transform: translate(-50%, -50%) rotate(45deg);
    }

    #tenmon-lp-hero-center-v6 .tm-cross-d2 {
      width: min(540px, 82vw);
      opacity: 0.38;
      transform: translate(-50%, -50%) rotate(-45deg);
    }

    #tenmon-lp-hero-center-v6 .tm-ark-core {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 46px;
      height: 46px;
      transform: translate(-50%, -50%);
      border-radius: 50%;
      background:
        radial-gradient(circle, #ffd0bd 0%, var(--red-2) 28%, var(--red) 62%, rgba(184,67,50,0.15) 100%);
      box-shadow:
        0 0 28px rgba(238,106,85,0.95),
        0 0 90px rgba(238,106,85,0.44),
        0 0 150px rgba(201,168,97,0.18);
      animation: tmCorePulseV6 3.2s ease-in-out infinite;
    }

    #tenmon-lp-hero-center-v6 .tm-ark-core::before {
      content: "";
      position: absolute;
      inset: -18px;
      border-radius: 50%;
      border: 1px solid rgba(238,106,85,0.55);
      animation: tmCoreWaveV6 3.2s ease-in-out infinite;
    }

    @keyframes tmCorePulseV6 {
      0%, 100% { transform: translate(-50%, -50%) scale(0.96); }
      50% { transform: translate(-50%, -50%) scale(1.08); }
    }

    @keyframes tmCoreWaveV6 {
      0%, 100% { opacity: 0.28; transform: scale(0.9); }
      50% { opacity: 0.88; transform: scale(1.18); }
    }

    #tenmon-lp-hero-center-v6 .tm-phase {
      position: absolute;
      color: rgba(245,234,209,0.68);
      font-size: 13px;
      letter-spacing: 0.25em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-lp-hero-center-v6 .tm-phase.top {
      top: 10%;
      left: 50%;
      transform: translateX(-50%);
    }

    #tenmon-lp-hero-center-v6 .tm-phase.right {
      right: 9%;
      top: 50%;
      transform: translateY(-50%);
      writing-mode: vertical-rl;
    }

    #tenmon-lp-hero-center-v6 .tm-phase.bottom {
      bottom: 10%;
      left: 50%;
      transform: translateX(-50%);
    }

    #tenmon-lp-hero-center-v6 .tm-phase.left {
      left: 9%;
      top: 50%;
      transform: translateY(-50%);
      writing-mode: vertical-rl;
    }

    #tenmon-lp-hero-center-v6 .tm-vertical-copy {
      position: absolute;
      z-index: 4;
      top: 90px;
      bottom: 90px;
      writing-mode: vertical-rl;
      color: rgba(245,234,209,0.76);
      font-size: clamp(13px, 1.22vw, 16px);
      line-height: 2.15;
      letter-spacing: 0.16em;
      pointer-events: none;
    }

    #tenmon-lp-hero-center-v6 .tm-vertical-copy.left {
      left: max(18px, 4.6vw);
    }

    #tenmon-lp-hero-center-v6 .tm-vertical-copy.right {
      right: max(18px, 4.6vw);
    }

    #tenmon-lp-hero-center-v6 .tm-hero-content {
      position: relative;
      z-index: 6;
      width: min(940px, calc(100% - 32px));
      margin: 0 auto;
      text-align: center;
      padding: 34px 0 20px;
    }

    #tenmon-lp-hero-center-v6 .tm-ark-seal {
      width: 86px;
      height: 86px;
      margin: 0 auto 28px;
      position: relative;
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.58);
      background: rgba(5,4,3,0.44);
      box-shadow:
        0 0 40px rgba(201,168,97,0.18),
        inset 0 0 34px rgba(201,168,97,0.08);
    }

    #tenmon-lp-hero-center-v6 .tm-ark-seal::before {
      content: "";
      position: absolute;
      inset: 14px;
      border-radius: 50%;
      border: 1px solid var(--border);
    }

    #tenmon-lp-hero-center-v6 .tm-ark-seal::after {
      content: "ゝ";
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -53%);
      color: var(--red-2);
      font-size: 36px;
      text-shadow: 0 0 24px rgba(238,106,85,0.9);
    }

    #tenmon-lp-hero-center-v6 .tm-kicker {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 13px;
      margin-bottom: 18px;
      color: var(--gold-2);
      font-size: 12px;
      letter-spacing: 0.22em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      text-transform: uppercase;
    }

    #tenmon-lp-hero-center-v6 .tm-kicker::before,
    #tenmon-lp-hero-center-v6 .tm-kicker::after {
      content: "";
      width: 42px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-lp-hero-center-v6 h1 {
      margin: 0;
      font-size: clamp(38px, 7.2vw, 86px);
      line-height: 1.18;
      font-weight: 500;
      letter-spacing: 0.065em;
      text-shadow:
        0 8px 34px rgba(0,0,0,0.78),
        0 0 42px rgba(201,168,97,0.16);
    }

    #tenmon-lp-hero-center-v6 h1 .gold {
      color: var(--gold-2);
    }

    #tenmon-lp-hero-center-v6 .tm-hero-lead {
      margin: 26px auto 0;
      max-width: 790px;
      color: rgba(245,234,209,0.86);
      font-size: clamp(15px, 2.2vw, 21px);
      line-height: 2.08;
      text-shadow: 0 8px 28px rgba(0,0,0,0.62);
    }

    #tenmon-lp-hero-center-v6 .tm-hero-lead .mark {
      color: var(--gold-2);
    }

    #tenmon-lp-hero-center-v6 .tm-tags {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 8px;
      margin: 28px auto 0;
    }

    #tenmon-lp-hero-center-v6 .tm-tags span {
      padding: 7px 12px;
      border: 1px solid rgba(245,234,209,0.14);
      color: rgba(245,234,209,0.72);
      background: rgba(5,4,3,0.34);
      font-size: 12px;
      letter-spacing: 0.1em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-lp-hero-center-v6 .tm-price-strip {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: stretch;
      gap: 12px;
      margin: 34px auto 0;
    }

    #tenmon-lp-hero-center-v6 .tm-price-box {
      min-width: 240px;
      padding: 14px 16px 15px;
      border: 1px solid rgba(245,234,209,0.15);
      background: rgba(5,4,3,0.55);
      box-shadow: 0 20px 70px rgba(0,0,0,0.28);
      position: relative;
      overflow: hidden;
    }

    #tenmon-lp-hero-center-v6 .tm-price-box.highlight {
      border-color: rgba(201,168,97,0.80);
      background:
        radial-gradient(circle at 50% 0%, rgba(244,213,138,0.14), transparent 48%),
        rgba(201,168,97,0.12);
    }

    #tenmon-lp-hero-center-v6 .tm-price-box.highlight::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 2px;
      background: linear-gradient(90deg, transparent, var(--gold-2), transparent);
    }

    #tenmon-lp-hero-center-v6 .tm-price-tag {
      display: block;
      color: var(--muted);
      font-size: 11px;
      line-height: 1.4;
      letter-spacing: 0.18em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      margin-bottom: 6px;
    }

    #tenmon-lp-hero-center-v6 .tm-price-box.highlight .tm-price-tag {
      color: var(--gold-2);
    }

    #tenmon-lp-hero-center-v6 .tm-old-price {
      display: inline-block;
      color: rgba(245,234,209,0.48);
      font-size: 13px;
      line-height: 1.3;
      text-decoration: line-through;
      text-decoration-thickness: 1px;
      text-decoration-color: rgba(238,106,85,0.90);
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      margin-bottom: 3px;
    }

    #tenmon-lp-hero-center-v6 .tm-new-price {
      display: block;
      color: var(--washi);
      font-size: 22px;
      line-height: 1.35;
      font-weight: 800;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      letter-spacing: 0.02em;
    }

    #tenmon-lp-hero-center-v6 .tm-price-box.highlight .tm-new-price {
      color: var(--gold-2);
      text-shadow: 0 0 20px rgba(244,213,138,0.18);
    }

    #tenmon-lp-hero-center-v6 .tm-discount-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-top: 7px;
      padding: 3px 9px;
      color: #ffd8c8;
      background: rgba(184,67,50,0.16);
      border: 1px solid rgba(238,106,85,0.36);
      font-size: 10px;
      line-height: 1.45;
      letter-spacing: 0.10em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-lp-hero-center-v6 .tm-price-meta {
      display: block;
      font-size: 10px;
      letter-spacing: 0.10em;
      color: #9d9586;
      font-style: normal;
      margin-top: 6px;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-lp-hero-center-v6 .tm-price-box.highlight .tm-price-meta {
      color: var(--gold-2);
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 12px;
      padding: 14px 18px;
      min-width: 160px;
      position: relative;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider::before,
    #tenmon-lp-hero-center-v6 .tm-price-divider::after {
      content: "";
      position: absolute;
      left: 50%;
      width: 1px;
      height: 40px;
      background: linear-gradient(180deg, transparent, rgba(201,168,97,0.40), transparent);
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider::before {
      top: 0;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider::after {
      bottom: 0;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider-inner {
      width: 60px;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider-inner svg {
      animation: tmSealPulseV6 6s ease-in-out infinite;
    }

    @keyframes tmSealPulseV6 {
      0%, 100% { opacity: 0.85; transform: scale(1); }
      50% { opacity: 1; transform: scale(1.04); }
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider-text {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 2px;
      text-align: center;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider-label {
      font-size: 10px;
      letter-spacing: 0.32em;
      color: var(--gold-2);
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      font-weight: 600;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider-main {
      font-size: 24px;
      color: var(--washi);
      font-weight: 800;
      letter-spacing: 0.02em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      line-height: 1;
    }

    #tenmon-lp-hero-center-v6 .tm-price-divider-sub {
      font-size: 10px;
      color: var(--muted);
      letter-spacing: 0.10em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }






#tm-bonus{max-width:860px;margin:0 auto;padding:72px 20px 0px;color:#e8e2d4;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;}
#tm-bonus .tmb-kicker{text-align:center;font-size:13px;letter-spacing:.28em;color:#c9a861;
  text-transform:uppercase;margin-bottom:14px;}
#tm-bonus h2{text-align:center;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;
  font-weight:500;font-size:clamp(26px,4.2vw,38px);line-height:1.5;margin:0 0 10px;color:#f2ecdc;}
#tm-bonus h2 .tmb-gold{color:#f4d58a;}
#tm-bonus .tmb-lead{text-align:center;font-size:16px;line-height:2;color:#cfc8b6;
  max-width:640px;margin:18px auto 24px;}
#tm-bonus .tmb-lead .tmb-mark{color:#f4d58a;border-bottom:1px solid rgba(201,168,97,.5);padding-bottom:1px;}

/* --- 特典カード（tm-price-box 準拠） --- */
#tm-bonus .tmb-cards{display:flex;gap:28px;justify-content:center;align-items:stretch;flex-wrap:wrap;}
#tm-bonus .tmb-card{flex:1 1 340px;max-width:440px;position:relative;padding:34px 28px 28px;
  background:linear-gradient(160deg,rgba(201,168,97,.10),rgba(201,168,97,.03));
  border:1px solid rgba(201,168,97,.38);border-radius:10px;text-align:center;}
#tm-bonus .tmb-card.highlight{border-color:rgba(244,213,138,.65);
  box-shadow:0 0 42px rgba(201,168,97,.13);}
#tm-bonus .tmb-tag{display:inline-block;font-size:13px;letter-spacing:.14em;color:#0d0f14;
  background:linear-gradient(90deg,#f4d58a,#c9a861);padding:5px 16px;border-radius:999px;
  position:absolute;top:-15px;left:50%;transform:translateX(-50%);white-space:nowrap;font-weight:600;}
#tm-bonus .tmb-plan{font-size:14px;letter-spacing:.18em;color:#c9a861;margin:6px 0 14px;}
#tm-bonus .tmb-name{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:23px;
  line-height:1.6;color:#f2ecdc;margin:0 0 14px;}
#tm-bonus .tmb-worth{font-size:15px;color:#cfc8b6;margin-bottom:14px;}
#tm-bonus .tmb-worth strong{color:#f4d58a;font-size:19px;}
#tm-bonus .tmb-badge{display:inline-block;font-size:14px;color:#f4d58a;
  border:1px solid rgba(244,213,138,.55);border-radius:999px;padding:6px 18px;margin-bottom:16px;}
#tm-bonus .tmb-meta{font-size:14.5px;line-height:1.9;color:#a99f88;font-style:normal;}

/* --- 円環モチーフ（本体LPの「正」円環に整合） --- */
#tm-bonus .tmb-seal{width:60px;height:60px;margin:0 auto 34px;display:block;}

/* --- 比較表（tm-year-table 準拠） --- */
#tm-bonus .tmb-compare{margin:52px auto 0;max-width:640px;}
#tm-bonus .tmb-compare-tag{display:block;text-align:center;font-size:15px;color:#f4d58a;
  letter-spacing:.1em;margin-bottom:16px;}
#tm-bonus table{width:100%;border-collapse:collapse;font-size:16px;}
#tm-bonus th,#tm-bonus td{padding:14px 12px;border-bottom:1px solid rgba(201,168,97,.22);
  text-align:left;line-height:1.7;}
#tm-bonus th{color:#cfc8b6;font-weight:500;width:38%;}
#tm-bonus td small{color:#8d8977;font-size:13px;display:block;}
#tm-bonus td strong{color:#f4d58a;font-weight:600;}
#tm-bonus .tmb-note{margin-top:34px;text-align:center;font-size:12.5px;line-height:2;color:#8d8977;}

    #tm-bonus .tm-bonus-btn {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
      display: block;
      margin: 0px auto;
      width: 200px;
      text-align: center;
      min-height: 58px;
      padding: 15px 32px;
      border-radius: 2px;
      text-decoration: none;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-weight: 850;
      letter-spacing: 0.09em;
      line-height: 1.35;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
    }

    #tm-bonus .tm-bonus-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 22px 58px var(--shadow);
    }


@media (max-width:720px){
  #tm-bonus{padding:56px 16px 0px;}
  #tm-bonus .tmb-cards{gap:34px;}
}









    #tenmon-lp-hero-center-v6 .tm-year {
      position: relative;
      padding: 26px 22px;
      border: 0.5px solid rgba(201,168,97,0.22);
      background: rgba(11,10,8,0.8);
      text-align: center;
      width: min(780px, 100%);
      margin: 34px auto;
    }

    #tenmon-lp-hero-center-v6 .tm-year-tag {
      display: inline-block;
      background: var(--gold);
      color: var(--text-dark);
      margin-top: 10px;
      padding: 7px 10px;
      font-weight: 600;
    }

    #tenmon-lp-hero-center-v6 .tm-year-table {
      margin: 10px auto 0px;
      width: min(480px, 100%);
    }

    #tenmon-lp-hero-center-v6 .tm-year-table th {
      font-weight: 800;
      vertical-align: middle;
      text-align: left;
      color: var(--gold);
    }

    #tenmon-lp-hero-center-v6 .tm-year-table td {
      font-weight: 800;
      vertical-align: middle;
      text-align: left;
    }

    #tenmon-lp-hero-center-v6 .tm-year-table td small {
      font-size: 12px;
    }
    #tenmon-lp-hero-center-v6 .tm-year-table td strong {
      padding: 0px 7px;
      font-size: 24px;
      color: rgba(184,67,50,1);
    }


    #tenmon-lp-hero-center-v6 .tm-buttons {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 34px;
    }

    #tenmon-lp-hero-center-v6 .tm-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 58px;
      padding: 15px 32px;
      border-radius: 2px;
      text-decoration: none;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-weight: 850;
      letter-spacing: 0.09em;
      line-height: 1.35;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
    }

    #tenmon-lp-hero-center-v6 .tm-btn.primary {
      color: var(--text-dark);
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      border: 1px solid var(--gold-2);
      box-shadow: 0 18px 48px rgba(201,168,97,0.30);
    }

    #tenmon-lp-hero-center-v6 .tm-btn.secondary {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
    }

    #tenmon-lp-hero-center-v6 .tm-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 22px 58px var(--shadow);
    }

    #tenmon-lp-hero-center-v6 .tm-note {
      margin-top: 18px;
      color: rgba(245,234,209,0.68);
      font-size: 13px;
      line-height: 1.85;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-lp-hero-center-v6 .tm-ref-box {
      display: none;
      margin: 18px auto 0;
      width: fit-content;
      max-width: min(680px, calc(100% - 32px));
      padding: 10px 16px;
      border: 1px solid rgba(108,118,80,0.5);
      background: rgba(108,118,80,0.14);
      color: #bccb8e;
      font-size: 13px;
      line-height: 1.8;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      letter-spacing: 0.05em;
    }

    #tenmon-lp-hero-center-v6 .tm-floating-stamp {
      position: absolute;
      z-index: 6;
      right: max(22px, 5.4vw);
      bottom: 70px;
      width: 132px;
      height: 132px;
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.48);
      display: grid;
      place-items: center;
      text-align: center;
      color: var(--gold-2);
      background: rgba(5,4,3,0.46);
      font-size: 13px;
      line-height: 1.8;
      letter-spacing: 0.12em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      box-shadow: 0 0 44px rgba(201,168,97,0.13);
      pointer-events: none;
    }

    #tenmon-lp-hero-center-v6 .tm-floating-stamp::before {
      content: "";
      position: absolute;
      inset: 9px;
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.25);
    }

    @media (prefers-reduced-motion: reduce) {
      #tenmon-lp-hero-center-v6 .tm-price-divider-inner svg {
        animation: none;
      }
    }

    @media (max-width: 840px) {
      #tenmon-lp-hero-center-v6 {
        min-height: 800px;
        padding: 64px 0 78px;
      }

      #tenmon-lp-hero-center-v6 .tm-vertical-copy,
      #tenmon-lp-hero-center-v6 .tm-phase,
      #tenmon-lp-hero-center-v6 .tm-spiral-ring {
        display: none;
      }

      #tenmon-lp-hero-center-v6 .tm-futomani-field {
        top: 45%;
        width: 94vw;
        height: 94vw;
        opacity: 0.70;
      }

      #tenmon-lp-hero-center-v6 .tm-kanagi-grid {
        width: 70vw;
        height: 70vw;
      }

      #tenmon-lp-hero-center-v6 h1 {
        font-size: clamp(40px, 12vw, 58px);
      }

      #tenmon-lp-hero-center-v6 .tm-hero-lead {
        font-size: 15px;
        line-height: 2;
      }

      #tenmon-lp-hero-center-v6 .tm-price-box,
      #tenmon-lp-hero-center-v6 .tm-btn {
        width: 100%;
      }

      #tenmon-lp-hero-center-v6 .tm-price-divider {
        flex-direction: row;
        gap: 16px;
        padding: 16px;
        min-width: 0;
        width: 100%;
      }

      #tenmon-lp-hero-center-v6 .tm-price-divider::before,
      #tenmon-lp-hero-center-v6 .tm-price-divider::after {
        display: none;
      }

      #tenmon-lp-hero-center-v6 .tm-price-divider-text {
        align-items: flex-start;
      }

      #tenmon-lp-hero-center-v6 .tm-year {
        padding: 10px;
      }

      #tenmon-lp-hero-center-v6 .tm-year-table th {
        display: block;
        width: 100%;
        text-align: center;
      }

      #tenmon-lp-hero-center-v6 .tm-year-table td {
        display: block;
        width: 100%;
        text-align: center;
      }










      #tenmon-lp-hero-center-v6 .tm-floating-stamp {
        position: relative;
        right: auto;
        bottom: auto;
        margin: 28px auto 0;
        width: 112px;
        height: 112px;
      }

      #tenmon-lp-hero-center-v6 .tm-kicker {
        font-size: 11px;
        letter-spacing: 0.15em;
      }

      #tenmon-lp-hero-center-v6 .tm-kicker::before,
      #tenmon-lp-hero-center-v6 .tm-kicker::after {
        width: 24px;
      }
    }





























/* =========================================================
追加　20260526
========================================================= */


.life-ai-section {
  padding: 80px 20px;
  background: radial-gradient(circle at 50% 20%, rgba(244,213,138,0.16), transparent 33%), radial-gradient(circle at 16% 36%, rgba(20,42,88,0.36), transparent 36%), radial-gradient(circle at 84% 70%, rgba(184,67,50,0.18), transparent 36%), radial-gradient(circle at 50% 90%, rgba(30,75,68,0.18), transparent 42%), linear-gradient(180deg, var(--sumi) 0%, #120e0a 48%, var(--sumi) 100%);
  color: #2b2118;
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
}

.life-ai-inner {
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
}

.life-ai-inner .tm-title {
  text-align: center;
  margin: 0 auto 34px;
}
.life-ai-inner .tm-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 auto 14px;
}
.life-ai-inner .tm-divider-line {
  display: block;
  width: 62px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}
.life-ai-inner .tm-divider-dot {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 18px rgba(244, 213, 138, 0.36);
}


.life-ai-inner .tm-kicker {
  display: inline-block;
  position: relative;
  padding-left: 22px;
  color: var(--gold-2);
  font-size: 12px;
  letter-spacing: 0.28em;
  font-weight: 700;
  text-transform: uppercase;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
}



.life-ai-title {
  margin: 0;
  font-size: clamp(26px, 3.8vw, 40px);
  line-height: 1.45;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: var(--washi);
}

.life-ai-title span {
  display: inline-block;
}
.life-ai-title strong {
  color: var(--gold-2);
  font-weight: normal;
}


.life-ai-lead {
  max-width: 820px;
  margin: 28px auto 0;
  font-size: 16px;
  line-height: 2;
  color: var(--muted);
  text-align: left;
}



.life-ai-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 46px;
}

.life-ai-card {
      padding: 26px 22px;
      border: 0.5px solid rgba(201,168,97,0.22);
      background: rgba(11,10,8,0.5);
      text-align: center;
      position: relative;
}

.life-ai-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-bottom: 20px;
  border-radius: 50%;
  background: #b9873b;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
}

.life-ai-card h3 {
  margin: 0 0 12px;
  font-size: 21px;
  color: var(--gold-2);
}

.life-ai-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.9;
  color: var(--muted);
}

.sp-only {
  display: none;
}

@media (max-width: 768px) {
  .life-ai-section {
    padding: 64px 18px;
  }

  .life-ai-lead {
    font-size: 15px;
  }

  .life-ai-cards {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .sp-only {
    display: block;
  }
}



/* =========================================================
TENMON-ARK LP Block 02 + 03
2. できることブロック｜天聞アークで何ができるか
3. 体験デモブロック｜ゲストチャット
天聞アーク統一デザイン版
修正版：スタートボタン押下時に message が空にならないよう修正
========================================================= */
    #tenmon-lp-benefit-chat-v2 {

      position: relative;
      overflow: hidden;
      color: var(--washi);
      background:
        radial-gradient(ellipse at 50% 0%, rgba(201,168,97,0.08), transparent 48%),
        radial-gradient(circle at 12% 34%, rgba(20,42,88,0.22), transparent 36%),
        radial-gradient(circle at 88% 72%, rgba(184,67,50,0.12), transparent 36%),
        linear-gradient(180deg, #0a0907 0%, var(--sumi-2) 46%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      line-height: 1.95;
      letter-spacing: 0.025em;
    }

    #tenmon-lp-benefit-chat-v2 * {
      box-sizing: border-box;
    }

    #tenmon-lp-benefit-chat-v2::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: 0.10;
      pointer-events: none;
      background-image:
        radial-gradient(rgba(245,234,209,0.18) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.14) 1px, transparent 1px);
      background-size: 42px 42px, 78px 78px;
      background-position: 0 0, 22px 34px;
      mix-blend-mode: screen;
    }

    #tenmon-lp-benefit-chat-v2 .tm-wrap {
      width: min(1080px, calc(100% - 32px));
      margin: 0 auto;
      position: relative;
      z-index: 2;
    }

    #tenmon-lp-benefit-chat-v2 .tm-section {
      padding: 72px 0;
      position: relative;
    }

    #tenmon-lp-benefit-chat-v2 .tm-section-title {
      text-align: center;
      margin-bottom: 42px;
    }

    #tenmon-lp-benefit-chat-v2 .tm-divider {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      margin-bottom: 12px;
    }

    #tenmon-lp-benefit-chat-v2 .tm-divider-line {
      width: 60px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-lp-benefit-chat-v2 .tm-divider-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gold);
    }

    #tenmon-lp-benefit-chat-v2 .tm-kicker-v {
      display: inline-block;
      position: relative;
      padding-left: 22px;
      color: var(--gold-2);
      font-size: 12px;
      letter-spacing: 0.28em;
      font-weight: 700;
      text-transform: uppercase;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-lp-benefit-chat-v2 .tm-kicker-v::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: 15px;
      height: 1px;
      background: var(--gold);
    }

    #tenmon-lp-benefit-chat-v2 .tm-section-title h2 {
      margin: 16px 0 12px;
      font-size: clamp(26px, 3.8vw, 40px);
      line-height: 1.45;
      font-weight: 500;
      letter-spacing: 0.06em;
    }

    #tenmon-lp-benefit-chat-v2 .tm-section-title h2 .gold {
      color: var(--gold-2);
    }

    #tenmon-lp-benefit-chat-v2 .tm-section-title p {
      margin: 0 auto;
      max-width: 760px;
      color: var(--muted);
      font-size: 15px;
      line-height: 2.05;
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 18px;
      max-width: 940px;
      margin: 0 auto;
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-item {
      display: grid;
      grid-template-columns: 44px 1fr;
      gap: 18px;
      align-items: start;
      padding: 24px;
      border: 1px solid var(--border-soft);
      background: rgba(11,10,8,0.45);
      transition: all .25s ease;
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-item:hover {
      border-color: var(--border);
      background: rgba(201,168,97,0.045);
      transform: translateY(-2px);
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-mark {
      width: 36px;
      height: 36px;
      border: 1px solid var(--gold);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      box-shadow: 0 0 22px rgba(201,168,97,0.12);
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-mark-inner {
      width: 12px;
      height: 12px;
      border-radius: 50%;
      background: var(--red);
      box-shadow: 0 0 18px rgba(238,106,85,0.55);
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-item h3 {
      margin: 0 0 6px;
      font-size: 16px;
      font-weight: 500;
      color: var(--gold-2);
      line-height: 1.55;
      letter-spacing: 0.04em;
    }

    #tenmon-lp-benefit-chat-v2 .tm-benefit-item p {
      margin: 0;
      font-size: 14px;
      color: var(--muted);
      line-height: 1.95;
    }

    #tenmon-lp-benefit-chat-v2 .tm-buttons {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 32px;
    }

    #tenmon-lp-benefit-chat-v2 .tm-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 54px;
      padding: 14px 28px;
      border-radius: 2px;
      text-decoration: none;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-weight: 800;
      letter-spacing: 0.08em;
      line-height: 1.35;
      transition: all .22s ease;
    }

    #tenmon-lp-benefit-chat-v2 .tm-btn.primary {
      color: var(--text-dark);
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      border: 1px solid var(--gold-2);
      box-shadow: 0 14px 38px rgba(201,168,97,0.28);
    }

    #tenmon-lp-benefit-chat-v2 .tm-btn.secondary {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
    }

    #tenmon-lp-benefit-chat-v2 .tm-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 18px 48px rgba(0,0,0,0.35);
    }

    /* =========================================================
       Chat Shell
    ========================================================= */

    #tenmon-lp-benefit-chat-v2 .tm-demo-shell {
      max-width: 980px;
      margin: 0 auto;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.10), transparent 42%),
        linear-gradient(180deg, rgba(20,17,13,0.72), rgba(5,4,3,0.88));
      box-shadow: 0 28px 80px rgba(0,0,0,0.45);
      position: relative;
      overflow: hidden;
    }

    #tenmon-lp-benefit-chat-v2 .tm-demo-shell::before {
      content: "";
      position: absolute;
      left: 50%;
      top: 40px;
      width: 420px;
      height: 420px;
      transform: translateX(-50%);
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.12);
      pointer-events: none;
    }

    #tenmon-lp-benefit-chat-v2 .tm-demo-shell::after {
      content: "";
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(rgba(201,168,97,0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201,168,97,0.05) 1px, transparent 1px);
      background-size: 64px 64px;
      opacity: 0.35;
      pointer-events: none;
    }

    #tenmon-lp-benefit-chat-v2 .tm-demo-inner {
      position: relative;
      z-index: 2;
      padding: 30px;
    }

    /* =========================================================
       Guest Chat
    ========================================================= */

    #tenmon-ark-guest-chat {
      max-width: 860px;
      margin: 0 auto;
      border: 1px solid rgba(201,168,97,0.42);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.10), transparent 36%),
        linear-gradient(180deg, rgba(5,4,3,0.88), rgba(11,10,8,0.96));
      color: var(--washi);
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", "Yu Gothic", sans-serif;
      overflow: hidden;
      box-shadow:
        0 22px 64px rgba(0,0,0,0.42),
        inset 0 0 60px rgba(201,168,97,0.035);
      border-radius: 0;
      position: relative;
    }

    #tenmon-ark-guest-chat .tgc-header {
      position: relative;
      background:
        linear-gradient(90deg, rgba(5,4,3,0.96), rgba(20,17,13,0.90), rgba(5,4,3,0.96));
      padding: 18px 22px;
      border-bottom: 1px solid var(--border);
      z-index: 1;
    }

    #tenmon-ark-guest-chat .tgc-header-inner {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 10px 18px;
    }

    #tenmon-ark-guest-chat .tgc-logo {
      color: var(--gold-2);
      font-size: 18px;
      font-weight: 800;
      letter-spacing: 0.12em;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    #tenmon-ark-guest-chat .tgc-logo::before {
      content: "ゝ";
      width: 34px;
      height: 34px;
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.56);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--red-2);
      font-family: "Yu Mincho", "Noto Serif JP", serif;
      font-size: 22px;
      text-shadow: 0 0 18px rgba(238,106,85,0.7);
    }

    #tenmon-ark-guest-chat .tgc-subtitle {
      grid-column: 1 / -1;
      color: var(--muted);
      font-size: 12px;
      letter-spacing: 0.08em;
      line-height: 1.7;
    }

    #tenmon-ark-guest-chat .tgc-remaining {
      justify-self: end;
      font-size: 12px;
      color: var(--gold-2);
      background: rgba(201,168,97,0.10);
      padding: 7px 12px;
      border: 1px solid var(--border);
      border-radius: 999px;
      white-space: nowrap;
    }

    #tenmon-ark-guest-chat .tgc-messages {
      position: relative;
      padding: 24px;
      height: 430px;
      overflow-y: auto;
      scroll-behavior: smooth;
      z-index: 1;
      background:
        radial-gradient(circle at 50% 12%, rgba(201,168,97,0.05), transparent 36%),
        rgba(5,4,3,0.26);
    }

    #tenmon-ark-guest-chat .tgc-messages::-webkit-scrollbar {
      width: 6px;
    }

    #tenmon-ark-guest-chat .tgc-messages::-webkit-scrollbar-thumb {
      background: rgba(201,168,97,0.32);
      border-radius: 999px;
    }

    #tenmon-ark-guest-chat .tgc-message {
      margin-bottom: 16px;
      display: flex;
    }

    #tenmon-ark-guest-chat .tgc-message.tgc-user {
      justify-content: flex-end;
    }

    #tenmon-ark-guest-chat .tgc-message-content {
      max-width: 86%;
      padding: 15px 18px;
      line-height: 1.8;
      font-size: 14px;
      border-radius: 0;
      position: relative;
    }

    #tenmon-ark-guest-chat .tgc-message.tgc-user .tgc-message-content {
      background: rgba(201,168,97,0.12);
      border: 1px solid rgba(201,168,97,0.28);
      color: var(--washi);
      border-left: 3px solid var(--gold);
    }

    #tenmon-ark-guest-chat .tgc-message.tgc-assistant .tgc-message-content {
      background: rgba(245,234,209,0.045);
      border: 1px solid var(--border-soft);
      color: rgba(245,234,209,0.92);
      border-left: 3px solid var(--red-2);
    }

    #tenmon-ark-guest-chat .tgc-message-content p {
      margin: 0 0 0.8em 0;
    }

    #tenmon-ark-guest-chat .tgc-message-content p:last-child {
      margin-bottom: 0;
    }

    #tenmon-ark-guest-chat .tgc-message-content strong {
      color: var(--gold-2);
      font-weight: 700;
    }

    #tenmon-ark-guest-chat .tgc-start-buttons {
      padding: 0 24px 22px;
      position: relative;
      z-index: 2;
      background: rgba(5,4,3,0.42);
    }

    #tenmon-ark-guest-chat .tgc-start-hint {
      color: var(--muted);
      font-size: 13px;
      margin-bottom: 12px;
      text-align: center;
      letter-spacing: 0.04em;
    }

    #tenmon-ark-guest-chat .tgc-button-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }

    #tenmon-ark-guest-chat .tgc-start-btn {
      padding: 13px 14px;
      background: rgba(245,234,209,0.04);
      border: 1px solid rgba(201,168,97,0.28);
      color: var(--washi);
      cursor: pointer;
      text-align: left;
      font-size: 13px;
      line-height: 1.55;
      transition: all 0.22s ease;
      font-family: inherit;
      border-radius: 0;
      letter-spacing: 0.03em;
    }

    #tenmon-ark-guest-chat .tgc-start-btn:hover {
      background: rgba(201,168,97,0.12);
      border-color: rgba(201,168,97,0.68);
      transform: translateY(-1px);
    }

    #tenmon-ark-guest-chat .tgc-input-area {
      display: flex;
      padding: 18px 22px;
      gap: 10px;
      border-top: 1px solid rgba(201,168,97,0.28);
      background: rgba(5,4,3,0.72);
      position: relative;
      z-index: 2;
    }

    #tenmon-ark-guest-chat .tgc-input-area input {
      flex: 1;
      padding: 14px 15px;
      border: 1px solid var(--border);
      background: rgba(245,234,209,0.045);
      color: var(--washi);
      font-size: 14px;
      font-family: inherit;
      outline: none;
      border-radius: 0;
    }

    #tenmon-ark-guest-chat .tgc-input-area input:focus {
      border-color: var(--gold);
      background: rgba(245,234,209,0.07);
      box-shadow: 0 0 0 1px rgba(201,168,97,0.16);
    }

    #tenmon-ark-guest-chat .tgc-input-area input::placeholder {
      color: rgba(245,234,209,0.42);
    }

    #tenmon-ark-guest-chat .tgc-input-area button {
      padding: 14px 22px;
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      color: var(--text-dark);
      border: 1px solid var(--gold-2);
      cursor: pointer;
      font-weight: 800;
      font-family: inherit;
      transition: all 0.22s ease;
      border-radius: 0;
      letter-spacing: 0.08em;
      white-space: nowrap;
    }

    #tenmon-ark-guest-chat .tgc-input-area button:hover:not(:disabled) {
      transform: translateY(-1px);
      box-shadow: 0 12px 28px rgba(201,168,97,0.22);
    }

    #tenmon-ark-guest-chat .tgc-input-area button:disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }

    #tenmon-ark-guest-chat .tgc-footer {
      padding: 24px;
      text-align: center;
      background: linear-gradient(180deg, rgba(201,168,97,0.08), rgba(184,67,50,0.06));
      border-top: 1px solid rgba(201,168,97,0.28);
    }

    #tenmon-ark-guest-chat .tgc-footer p {
      margin: 0 0 8px 0;
      color: var(--washi);
      line-height: 1.8;
    }

    #tenmon-ark-guest-chat .tgc-cta-btn {
      display: inline-block;
      margin-top: 12px;
      padding: 13px 26px;
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      color: var(--text-dark);
      text-decoration: none;
      font-weight: 800;
      transition: all 0.22s ease;
      box-shadow: 0 12px 28px rgba(201,168,97,0.22);
      border: 1px solid var(--gold-2);
    }

    #tenmon-ark-guest-chat .tgc-cta-btn:hover {
      transform: translateY(-2px);
    }

    #tenmon-ark-guest-chat .tgc-loading {
      display: inline-block;
      color: var(--gold-2);
    }

    #tenmon-ark-guest-chat .tgc-loading::after {
      content: "...";
      animation: tgcDots 1.5s steps(4, end) infinite;
    }

    @keyframes tgcDots {
      0%, 20% { content: "."; }
      40% { content: ".."; }
      60%, 100% { content: "..."; }
    }

    #tenmon-lp-benefit-chat-v2 .tm-chat-note {
      max-width: 800px;
      margin: 18px auto 0;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.9;
      text-align: center;
    }

    @media (max-width: 720px) {
      #tenmon-lp-benefit-chat-v2 .tm-section {
        padding: 56px 0;
      }

      #tenmon-lp-benefit-chat-v2 .tm-benefit-grid {
        grid-template-columns: 1fr;
      }

      #tenmon-lp-benefit-chat-v2 .tm-benefit-item {
        grid-template-columns: 38px 1fr;
        padding: 20px;
      }

      #tenmon-lp-benefit-chat-v2 .tm-demo-inner {
        padding: 20px;
      }

      #tenmon-ark-guest-chat {
        margin: 0;
      }

      #tenmon-ark-guest-chat .tgc-header-inner {
        grid-template-columns: 1fr;
      }

      #tenmon-ark-guest-chat .tgc-remaining {
        justify-self: start;
      }

      #tenmon-ark-guest-chat .tgc-subtitle {
        display: block;
      }

      #tenmon-ark-guest-chat .tgc-messages {
        padding: 16px;
        height: 370px;
      }

      #tenmon-ark-guest-chat .tgc-message-content {
        max-width: 96%;
        padding: 13px 15px;
        font-size: 13px;
      }

      #tenmon-ark-guest-chat .tgc-button-grid {
        grid-template-columns: 1fr;
      }

      #tenmon-ark-guest-chat .tgc-input-area {
        padding: 14px;
        flex-direction: column;
      }

      #tenmon-ark-guest-chat .tgc-input-area button {
        width: 100%;
      }

      #tenmon-lp-benefit-chat-v2 .tm-btn {
        width: 100%;
      }
    }

/* =========================================================
TENMON-ARK LP Section
Founder Invitation / Origin Story / For You
Scoped HTML + CSS for Peraichi Full Width Embed
========================================================= */

    #tenmon-ark-referral-story-section {
      position: relative;
      width: 100%;
      overflow: hidden;
      color: var(--washi);
      background:
        radial-gradient(circle at 14% 8%, rgba(20, 42, 88, 0.28), transparent 34%),
        radial-gradient(circle at 86% 28%, rgba(184, 67, 50, 0.13), transparent 30%),
        radial-gradient(circle at 50% 0%, rgba(201, 168, 97, 0.10), transparent 44%),
        linear-gradient(180deg, var(--sumi) 0%, #0b0907 48%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      line-height: 1.95;
      letter-spacing: 0.025em;
      box-sizing: border-box;
    }

    #tenmon-ark-referral-story-section,
    #tenmon-ark-referral-story-section * {
      box-sizing: border-box;
    }

    #tenmon-ark-referral-story-section::before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      opacity: 0.08;
      background-image:
        radial-gradient(rgba(245,234,209,0.22) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.16) 1px, transparent 1px);
      background-size: 44px 44px, 84px 84px;
      background-position: 0 0, 24px 32px;
      mix-blend-mode: screen;
    }

    #tenmon-ark-referral-story-section .tm-wrap {
      position: relative;
      z-index: 2;
      width: min(1080px, calc(100% - 36px));
      margin: 0 auto;
    }

    #tenmon-ark-referral-story-section .tm-section {
      position: relative;
      padding: 76px 0;
    }

    #tenmon-ark-referral-story-section .tm-section.tm-compact {
      padding: 64px 0;
    }

    #tenmon-ark-referral-story-section .tm-title {
      text-align: center;
      margin: 0 auto 34px;
    }

    #tenmon-ark-referral-story-section .tm-divider {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      margin: 0 auto 14px;
    }

    #tenmon-ark-referral-story-section .tm-divider-line {
      display: block;
      width: 62px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-ark-referral-story-section .tm-divider-dot {
      display: block;
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gold-2);
      box-shadow: 0 0 18px rgba(244, 213, 138, 0.36);
    }

    #tenmon-ark-referral-story-section .tm-kicker {
      display: inline-block;
      color: var(--gold-2);
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-size: 12px;
      line-height: 1.4;
      letter-spacing: 0.26em;
      font-weight: 700;
      text-transform: uppercase;
    }

    #tenmon-ark-referral-story-section h2 {
      margin: 15px 0 12px;
      color: var(--washi);
      font-size: clamp(26px, 3.4vw, 40px);
      line-height: 1.5;
      font-weight: 500;
      letter-spacing: 0.06em;
    }

    #tenmon-ark-referral-story-section h2 .tm-gold {
      color: var(--gold-2);
    }

    #tenmon-ark-referral-story-section .tm-title p {
      max-width: 820px;
      margin: 0 auto;
      color: var(--muted);
      font-size: 15px;
      line-height: 2.1;
    }

    #tenmon-ark-referral-story-section .tm-shell {
      position: relative;
      max-width: 980px;
      margin: 0 auto;
      padding: 38px 34px;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.12), transparent 42%),
        radial-gradient(circle at 12% 100%, rgba(20,42,88,0.16), transparent 36%),
        linear-gradient(180deg, rgba(20,17,13,0.90), rgba(5,4,3,0.94));
      box-shadow: 0 26px 80px var(--shadow);
      overflow: hidden;
    }

    #tenmon-ark-referral-story-section .tm-shell::before {
      content: "";
      position: absolute;
      left: 50%;
      top: -210px;
      width: 560px;
      height: 560px;
      transform: translateX(-50%);
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.13);
      pointer-events: none;
    }

    #tenmon-ark-referral-story-section .tm-shell::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: -150px;
      width: 360px;
      height: 360px;
      transform: translateX(-50%);
      border-radius: 50%;
      background: radial-gradient(circle, rgba(201,168,97,0.08), transparent 62%);
      pointer-events: none;
    }

    #tenmon-ark-referral-story-section .tm-shell > * {
      position: relative;
      z-index: 2;
    }

    #tenmon-ark-referral-story-section .tm-invitation-box {
      max-width: 840px;
      margin: 0 auto;
      padding: 34px 32px;
      border: 1px solid var(--border-soft);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.08), transparent 42%),
        linear-gradient(180deg, rgba(245,234,209,0.035), rgba(5,4,3,0.24));
      box-shadow: 0 18px 54px rgba(0,0,0,0.18);
    }

    #tenmon-ark-referral-story-section .tm-invitation-box p {
      margin: 0 0 22px;
      color: var(--washi);
      font-size: 16px;
      line-height: 2.2;
    }

    #tenmon-ark-referral-story-section .tm-invitation-box p:last-child {
      margin-bottom: 0;
    }

    #tenmon-ark-referral-story-section .tm-invitation-box .tm-gold-text {
      color: var(--gold-2);
    }

    #tenmon-ark-referral-story-section .tm-steps {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
      margin-top: 28px;
    }

    #tenmon-ark-referral-story-section .tm-step {
      padding: 24px 18px;
      text-align: center;
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.07), transparent 38%),
        rgba(5,4,3,0.42);
      border: 1px solid var(--border-soft);
    }

    #tenmon-ark-referral-story-section .tm-step-num {
      width: 42px;
      height: 42px;
      margin: 0 auto 13px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold-2);
      border: 1px solid var(--gold);
      border-radius: 50%;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      font-size: 17px;
      line-height: 1;
      box-shadow: 0 0 20px rgba(201,168,97,0.14);
    }

    #tenmon-ark-referral-story-section .tm-step h3 {
      margin: 0 0 7px;
      color: var(--gold-2);
      font-size: 16px;
      font-weight: 500;
      line-height: 1.6;
    }

    #tenmon-ark-referral-story-section .tm-step p {
      margin: 0;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.85;
    }

    #tenmon-ark-referral-story-section .tm-buttons {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 32px;
    }

    #tenmon-ark-referral-story-section .tm-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 54px;
      padding: 14px 28px;
      text-decoration: none;
      border-radius: 2px;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-size: 14px;
      font-weight: 800;
      line-height: 1.35;
      letter-spacing: 0.08em;
      transition: transform 0.22s ease, box-shadow 0.22s ease, opacity 0.22s ease;
    }

    #tenmon-ark-referral-story-section .tm-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 18px 44px rgba(0,0,0,0.35);
      opacity: 0.96;
    }

    #tenmon-ark-referral-story-section .tm-btn-primary {
      color: var(--text-dark);
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      border: 1px solid var(--gold-2);
      box-shadow: 0 14px 36px rgba(201,168,97,0.24);
    }

    #tenmon-ark-referral-story-section .tm-btn-secondary {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
    }

    #tenmon-ark-referral-story-section .tm-note {
      max-width: 760px;
      margin: 18px auto 0;
      text-align: center;
      color: #8f846f;
      font-size: 12px;
      line-height: 2;
    }

    #tenmon-ark-referral-story-section .tm-story-box {
      max-width: 840px;
      margin: 0 auto;
      padding: 36px 34px;
      border: 1px solid var(--border-soft);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.08), transparent 42%),
        linear-gradient(180deg, rgba(245,234,209,0.035), rgba(5,4,3,0.24));
      box-shadow: 0 18px 54px rgba(0,0,0,0.18);
    }

    #tenmon-ark-referral-story-section .tm-story-box p {
      margin: 0 0 23px;
      color: var(--washi);
      font-size: 16px;
      line-height: 2.25;
    }

    #tenmon-ark-referral-story-section .tm-story-box p:last-child {
      margin-bottom: 0;
    }

    #tenmon-ark-referral-story-section .tm-story-box .tm-gold-text {
      color: var(--gold-2);
    }

    #tenmon-ark-referral-story-section .tm-story-box .tm-quiet {
      color: var(--muted);
    }

    #tenmon-ark-referral-story-section .tm-for-you {
      border-top: 1px solid var(--border-soft);
      border-bottom: 1px solid var(--border-soft);
      background:
        radial-gradient(circle at 50% 0%, rgba(20,42,88,0.16), transparent 44%),
        linear-gradient(180deg, rgba(20,42,88,0.08), transparent);
    }

    #tenmon-ark-referral-story-section .tm-for-list {
      max-width: 860px;
      margin: 0 auto;
      border-top: 1px solid rgba(245,234,209,0.09);
    }

    #tenmon-ark-referral-story-section .tm-for-item {
      display: grid;
      grid-template-columns: 38px 1fr;
      gap: 18px;
      padding: 23px 0;
      border-bottom: 1px solid rgba(245,234,209,0.09);
    }

    #tenmon-ark-referral-story-section .tm-mark {
      color: var(--gold-2);
      font-size: 24px;
      line-height: 1.4;
      text-align: center;
      text-shadow: 0 0 18px rgba(201,168,97,0.26);
    }

    #tenmon-ark-referral-story-section .tm-for-item p {
      margin: 0;
      color: var(--washi);
      font-size: 16px;
      line-height: 2;
    }

    #tenmon-ark-referral-story-section .tm-for-item small {
      display: block;
      margin-top: 5px;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.85;
    }

    @media (max-width: 780px) {
      #tenmon-ark-referral-story-section .tm-wrap {
        width: min(100% - 28px, 1080px);
      }

      #tenmon-ark-referral-story-section .tm-section {
        padding: 58px 0;
      }

      #tenmon-ark-referral-story-section .tm-section.tm-compact {
        padding: 54px 0;
      }

      #tenmon-ark-referral-story-section .tm-shell,
      #tenmon-ark-referral-story-section .tm-story-box,
      #tenmon-ark-referral-story-section .tm-invitation-box {
        padding: 26px 20px;
      }

      #tenmon-ark-referral-story-section .tm-steps {
        grid-template-columns: 1fr;
      }

      #tenmon-ark-referral-story-section h2 {
        font-size: clamp(24px, 7vw, 32px);
      }

      #tenmon-ark-referral-story-section .tm-title p {
        font-size: 14px;
      }

      #tenmon-ark-referral-story-section .tm-story-box p,
      #tenmon-ark-referral-story-section .tm-invitation-box p {
        font-size: 15px;
        line-height: 2.1;
      }

      #tenmon-ark-referral-story-section .tm-for-item {
        grid-template-columns: 30px 1fr;
        gap: 13px;
      }

      #tenmon-ark-referral-story-section .tm-for-item p {
        font-size: 15px;
      }

      #tenmon-ark-referral-story-section .tm-buttons {
        flex-direction: column;
      }

      #tenmon-ark-referral-story-section .tm-btn {
        width: 100%;
      }
    }




/* =========================================================
TENMON-ARK 料金哲学ブロック + 今のタイミング訴求ブロック
プランブロックの直前に配置
========================================================= */
    #tm-pricing-philosophy {
      background:
        radial-gradient(ellipse at 50% 0%, rgba(20,42,88,0.18), transparent 50%),
        radial-gradient(circle at 18% 60%, rgba(201,168,97,0.06), transparent 38%),
        linear-gradient(180deg, var(--sumi) 0%, #0a0907 50%, var(--sumi) 100%);
      border-top: 1px solid rgba(245,234,209,0.08);
      border-bottom: 1px solid rgba(245,234,209,0.08);
      position: relative;
      overflow: hidden;
    }

    #tm-pricing-philosophy::before {
      content: "";
      position: absolute;
      left: 50%;
      top: 40px;
      width: 380px;
      height: 380px;
      margin-left: -190px;
      border: 1px solid rgba(201,168,97,0.10);
      border-radius: 50%;
      pointer-events: none;
    }

    #tm-pricing-philosophy::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 100px;
      width: 260px;
      height: 260px;
      margin-left: -130px;
      border: 1px solid rgba(201,168,97,0.05);
      border-radius: 50%;
      pointer-events: none;
    }

    #tm-pricing-philosophy .tm-wrap {
      max-width: 880px;
      margin: 0 auto;
      padding: 0 24px;
      position: relative;
      z-index: 2;
    }

    #tm-pricing-philosophy .tm-philosophy-seal {
      width: 56px;
      height: 56px;
      margin: 0 auto 28px;
      position: relative;
      animation: tmSealBreathe 6s ease-in-out infinite;
    }

    @keyframes tmSealBreathe {
      0%, 100% { opacity: 0.85; transform: scale(1); }
      50% { opacity: 1; transform: scale(1.04); }
    }

    #tm-pricing-philosophy .tm-philosophy-seal::before {
      content: "";
      position: absolute;
      inset: 0;
      border: 1px solid var(--gold);
      border-radius: 50%;
    }

    #tm-pricing-philosophy .tm-philosophy-seal::after {
      content: "質";
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold-2);
      font-size: 22px;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
      font-weight: 500;
    }

    #tm-pricing-philosophy .tm-philosophy-kicker {
      display: block;
      text-align: center;
      color: var(--gold-2);
      font-size: 11px;
      letter-spacing: 0.36em;
      font-weight: 600;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
      margin-bottom: 18px;
    }

    #tm-pricing-philosophy h2 {
      text-align: center;
      font-size: clamp(24px, 3.4vw, 36px);
      line-height: 1.55;
      font-weight: 500;
      letter-spacing: 0.06em;
      margin: 0 0 36px;
      color: var(--washi);
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    }

    #tm-pricing-philosophy h2 .gold {
      color: var(--gold-2);
    }

    #tm-pricing-philosophy .tm-philosophy-body {
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
      line-height: 2.2;
      letter-spacing: 0.04em;
    }

    #tm-pricing-philosophy .tm-philosophy-body p {
      color: #d9d2bf;
      font-size: 16px;
      margin: 0 0 24px;
    }

    #tm-pricing-philosophy .tm-philosophy-body p:last-child {
      margin-bottom: 0;
    }

    #tm-pricing-philosophy .tm-philosophy-body .gold {
      color: var(--gold-2);
      font-weight: 500;
    }

    #tm-pricing-philosophy .tm-philosophy-body em {
      font-style: normal;
      color: var(--gold-2);
      font-weight: 500;
    }

    #tm-pricing-philosophy .tm-philosophy-divider {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      margin: 36px 0;
    }

    #tm-pricing-philosophy .tm-philosophy-divider-line {
      width: 60px;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(201,168,97,0.6), transparent);
    }

    #tm-pricing-philosophy .tm-philosophy-divider-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gold);
    }

    #tm-pricing-philosophy .tm-philosophy-points {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      margin: 40px 0;
    }

    #tm-pricing-philosophy .tm-philosophy-point {
      padding: 26px 22px;
      border: 0.5px solid rgba(201,168,97,0.22);
      background: rgba(11,10,8,0.5);
      text-align: center;
      position: relative;
    }

    #tm-pricing-philosophy .tm-philosophy-point::before {
      content: "";
      position: absolute;
      top: 0;
      left: 50%;
      width: 36px;
      height: 1px;
      background: var(--gold);
      transform: translateX(-50%);
    }

    #tm-pricing-philosophy .tm-philosophy-point-mark {
      display: inline-flex;
      width: 38px;
      height: 38px;
      align-items: center;
      justify-content: center;
      margin: 0 auto 14px;
      border: 1px solid var(--gold);
      border-radius: 50%;
      color: var(--gold-2);
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
      font-size: 16px;
    }

    #tm-pricing-philosophy .tm-philosophy-point strong {
      display: block;
      color: var(--gold-2);
      font-size: 15px;
      font-weight: 500;
      letter-spacing: 0.08em;
      margin-bottom: 10px;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    }

    #tm-pricing-philosophy .tm-philosophy-point p {
      margin: 0;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.95;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
      letter-spacing: 0.02em;
    }

    #tm-pricing-philosophy .tm-philosophy-conclusion {
      max-width: 720px;
      margin: 40px auto 0;
      padding: 28px 32px;
      border-left: 2px solid var(--gold);
      background: linear-gradient(135deg, rgba(201,168,97,0.06), rgba(11,10,8,0.4));
    }

    #tm-pricing-philosophy .tm-philosophy-conclusion p {
      margin: 0;
      color: var(--washi);
      font-size: 16px;
      line-height: 2.15;
      letter-spacing: 0.05em;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    }

    #tm-pricing-philosophy .tm-philosophy-conclusion p strong {
      color: var(--gold-2);
      font-weight: 500;
    }

    @media (max-width: 720px) {
      #tm-pricing-philosophy .tm-philosophy-points {
        grid-template-columns: 1fr;
      }

      #tm-pricing-philosophy::before,
      #tm-pricing-philosophy::after {
        display: none;
      }

      #tm-pricing-philosophy h2 {
        font-size: 22px;
      }

      #tm-pricing-philosophy .tm-philosophy-body p {
        font-size: 15px;
      }
    }

/* =========================================================
TENMON-ARK 「今のタイミング」訴求ブロック
料金哲学ブロックの直後 / プランブロックの直前に配置
========================================================= */
#tm-timing-moment {
	background: linear-gradient(180deg, rgba(5,4,3,0.92) 0%, rgba(11,10,8,0.86) 100%);
	border-top: 1px solid rgba(245,234,209,0.08);
	border-bottom: 1px solid rgba(245,234,209,0.08);
	padding: 60px 0;
	position: relative;
	overflow: hidden;
	font-family: 'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;
	color: var(--washi);
}

.tm-container {
	max-width: 760px;
	margin: 0 auto;
	padding: 0 24px;
	text-align: center;
	position: relative;
	z-index: 2;
}

.tm-label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	background: rgba(184,67,50,0.10);
	border: 0.5px solid rgba(216,94,74,0.36);
	color: var(--red-2);
	font-family: -apple-system,'Hiragino Sans',sans-serif;
	font-size: 11px;
	letter-spacing: 0.24em;
	font-weight: 600;
	margin-bottom: 24px;
}

.tm-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--red-2);
	box-shadow: 0 0 12px var(--red-2);
	animation: tmPulseDot 2s ease-in-out infinite;
}

.tm-title {
	font-size: clamp(22px,3.2vw,30px);
	line-height: 1.7;
	font-weight: 500;
	letter-spacing: 0.06em;
	margin: 0 0 28px;
}

.tm-accent {
	color: var(--gold-2);
}

.tm-lead {
	color: #c8c2b3;
	font-size: 15px;
	line-height: 2.2;
	letter-spacing: 0.04em;
	margin-bottom: 32px;
}

.tm-timing-pillars {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 16px;
	max-width: 680px;
	margin: 0 auto 32px;
}

.tm-card {
	padding: 22px 14px;
	border: 0.5px solid rgba(201,168,97,0.24);
	background: rgba(11,10,8,0.5);
}

.tm-kanji {
	color: var(--gold-2);
	font-size: 20px;
	font-family: 'Yu Mincho',serif;
	margin-bottom: 10px;
}

.tm-card strong {
	display: block;
	color: var(--washi);
	font-size: 13px;
	letter-spacing: 0.08em;
	margin-bottom: 6px;
}

.tm-card span {
	color: var(--muted);
	font-size: 12px;
	line-height: 1.85;
}

.tm-note {
	color: var(--muted);
	font-size: 13px;
	line-height: 1.95;
	letter-spacing: 0.04em;
}

/* animation */
@keyframes tmPulseDot {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.5; transform: scale(0.85); }
}

/* responsive */
@media (max-width: 720px) {
	.tm-timing-pillars {
		grid-template-columns: 1fr;
	}
}





















/* ============ scope: #tm-benefit-kougi (tmk-) ============ */
#tm-benefit-kougi{
  --tmk-ink:#0e0c15;
  --tmk-ink2:#181226;
  --tmk-gold:#cfa85c;
  --tmk-gold2:#e9c97c;
  --tmk-shu:#d9483b;            /* 朱 = LIVEのみに使用 */
  --tmk-paper:#f3edde;
  --tmk-mute:#b7ae99;
  --tmk-line:rgba(207,168,92,.26);
  position:relative;
  overflow:hidden;
  padding:96px 20px 104px;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(20,42,88,0.18), transparent 50%), radial-gradient(circle at 18% 60%, rgba(201,168,97,0.06), transparent 38%), linear-gradient(180deg, var(--sumi) 0%, #0a0907 50%, var(--sumi) 100%);
  color:var(--tmk-paper);
}
#tm-benefit-kougi *{box-sizing:border-box;margin:0;padding:0;}
#tm-benefit-kougi img{display:block;max-width:100%;}
#tm-benefit-kougi .tmk-wrap{max-width:1080px;margin:0 auto;position:relative;z-index:1;}

/* --- 見出し部（LP共通言語: 線・点・線 ＋ 英字kicker） --- */
#tm-benefit-kougi .tmk-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:18px;}
#tm-benefit-kougi .tmk-divider i{display:block;height:1px;width:64px;background:linear-gradient(90deg,transparent,var(--tmk-gold));}
#tm-benefit-kougi .tmk-divider i:last-child{background:linear-gradient(90deg,var(--tmk-gold),transparent);}
#tm-benefit-kougi .tmk-divider b{width:6px;height:6px;border-radius:50%;background:var(--tmk-gold);box-shadow:0 0 10px rgba(233,201,124,.8);}
#tm-benefit-kougi .tmk-kicker{
  display:block;text-align:center;
  font-size:12px;letter-spacing:.32em;color:var(--tmk-gold);
  text-transform:uppercase;margin-bottom:22px;
}
#tm-benefit-kougi h2{
  font-family:'Shippori Mincho','Hiragino Mincho ProN','Yu Mincho','Noto Serif JP',serif;
  font-weight:600;text-align:center;
  font-size:clamp(26px,4.6vw,44px);line-height:1.55;letter-spacing:.06em;
}
#tm-benefit-kougi h2 .tmk-goldtxt{
  background:linear-gradient(115deg,#b98f3e 0%,var(--tmk-gold2) 45%,#a87f34 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
#tm-benefit-kougi .tmk-lead{
  max-width:720px;margin:22px auto 0;text-align:center;
  font-size:15px;line-height:2;color:var(--tmk-mute);
}
#tm-benefit-kougi .tmk-lead em{font-style:normal;color:var(--tmk-paper);}

/* --- ステージ：LIVEカード × アーカイブ束 --- */
#tm-benefit-kougi .tmk-stage{
  display:grid;grid-template-columns:1.35fr 1fr;gap:28px;
  align-items:stretch;margin:56px 0 0;
}
#tm-benefit-kougi .tmk-livecard{
  position:relative;border-radius:16px;overflow:hidden;
  border:1px solid var(--tmk-line);
  background:#000;
  box-shadow:0 24px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(0,0,0,.4) inset;
}
#tm-benefit-kougi .tmk-livecard img{width:100%;height:100%;min-height:280px;object-fit:cover;opacity:.92;}
#tm-benefit-kougi .tmk-livecard::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,12,21,.15) 0%,transparent 40%,rgba(14,12,21,.85) 100%);
}
#tm-benefit-kougi .tmk-livebadge{
  position:absolute;top:16px;left:16px;z-index:2;
  display:inline-flex;align-items:center;gap:8px;
  background:var(--tmk-shu);color:#fff;
  font-size:12px;font-weight:700;letter-spacing:.22em;
  padding:7px 14px 7px 12px;border-radius:999px;
  box-shadow:0 6px 18px rgba(217,72,59,.45);
}
#tm-benefit-kougi .tmk-livedot{position:relative;width:8px;height:8px;border-radius:50%;background:#fff;}
#tm-benefit-kougi .tmk-livedot::after{
  content:"";position:absolute;inset:-6px;border-radius:50%;
  border:2px solid rgba(255,255,255,.75);
  animation:tmkPulse 1.6s ease-out infinite;
}
@keyframes tmkPulse{0%{transform:scale(.5);opacity:1}100%{transform:scale(1.5);opacity:0}}
#tm-benefit-kougi .tmk-livemeta{
  position:absolute;left:16px;right:16px;bottom:14px;z-index:2;
  display:flex;flex-wrap:wrap;gap:8px 18px;align-items:baseline;
}
#tm-benefit-kougi .tmk-livetime{
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
  font-size:clamp(26px,3.4vw,36px);letter-spacing:.04em;color:#fff;
}
#tm-benefit-kougi .tmk-livetime small{font-size:.5em;color:var(--tmk-gold2);letter-spacing:.18em;margin-left:6px;}
#tm-benefit-kougi .tmk-livesub{font-size:12.5px;color:rgba(243,237,222,.85);letter-spacing:.06em;}
#tm-benefit-kougi .tmk-livesub b{color:var(--tmk-gold2);font-weight:700;font-size:13.5px;}

#tm-benefit-kougi .tmk-archstack{position:relative;display:flex;flex-direction:column;justify-content:flex-end;}
#tm-benefit-kougi .tmk-arch{
  position:relative;border-radius:12px;overflow:hidden;
  border:1px solid var(--tmk-line);background:#000;
  box-shadow:0 14px 34px rgba(0,0,0,.45);
}
#tm-benefit-kougi .tmk-arch img{width:100%;height:110px;object-fit:cover;opacity:.85;}
#tm-benefit-kougi .tmk-arch + .tmk-arch{margin-top:14px;}
#tm-benefit-kougi .tmk-arch span{
  position:absolute;left:12px;bottom:10px;
  font-size:12px;letter-spacing:.08em;color:#fff;
  text-shadow:0 1px 6px rgba(0,0,0,.8);
}
#tm-benefit-kougi .tmk-arch::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(14,12,21,.8));}
#tm-benefit-kougi .tmk-archtag{
  align-self:flex-start;margin-bottom:14px;
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid var(--tmk-line);border-radius:999px;
  padding:8px 16px;font-size:12.5px;letter-spacing:.14em;color:var(--tmk-gold2);
  background:rgba(207,168,92,.08);
}
#tm-benefit-kougi .tmk-archtag::before{content:"▶";font-size:9px;}

/* --- 特典二枚札 --- */
#tm-benefit-kougi .tmk-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px;}
#tm-benefit-kougi .tmk-card{
  position:relative;border:1px solid var(--tmk-line);border-radius:14px;
  padding:30px 28px 28px;background:rgba(243,237,222,.03);
}
#tm-benefit-kougi .tmk-card .tmk-mark{
  width:44px;height:44px;border-radius:50%;
  border:1px solid var(--tmk-gold);color:var(--tmk-gold2);
  display:flex;align-items:center;justify-content:center;
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
  font-size:19px;margin-bottom:16px;background:rgba(207,168,92,.06);
}
#tm-benefit-kougi .tmk-card h3{
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
  font-size:20px;letter-spacing:.06em;color:var(--tmk-paper);margin-bottom:6px;
}
#tm-benefit-kougi .tmk-card .tmk-cardsub{font-size:12px;letter-spacing:.2em;color:var(--tmk-gold);margin-bottom:14px;}
#tm-benefit-kougi .tmk-card p{font-size:14px;line-height:1.95;color:var(--tmk-mute);}
#tm-benefit-kougi .tmk-card p em{font-style:normal;color:var(--tmk-paper);}
#tm-benefit-kougi .tmk-specs{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
#tm-benefit-kougi .tmk-specs li{
  list-style:none;font-size:12px;letter-spacing:.06em;color:var(--tmk-gold2);
  border:1px solid var(--tmk-line);border-radius:999px;padding:5px 12px;
  background:rgba(207,168,92,.06);
}
#tm-benefit-kougi .tmk-planchip{
  display:inline-block;font-size:11px;letter-spacing:.16em;font-weight:600;
  padding:5px 14px;border-radius:999px;margin-bottom:14px;
  border:1px solid var(--tmk-line);color:var(--tmk-gold2);background:rgba(207,168,92,.08);
}

/* --- Proカード（青系＝LPのPro識別色に対応） --- */
#tm-benefit-kougi .tmk-card.tmk-cardpro{
  border-color:rgba(146,170,235,.5);
  background:linear-gradient(150deg,rgba(146,170,235,.11),rgba(146,170,235,.03));
}
#tm-benefit-kougi .tmk-cardpro .tmk-mark{border-color:#8fa8ea;color:#cfdaf8;background:rgba(146,170,235,.08);}
#tm-benefit-kougi .tmk-cardpro .tmk-cardsub{color:#8fa8ea;}
#tm-benefit-kougi .tmk-cardpro p em{color:#cfdaf8;}
#tm-benefit-kougi .tmk-cardpro .tmk-planchip{border-color:rgba(146,170,235,.5);color:#cfdaf8;background:rgba(146,170,235,.1);}
#tm-benefit-kougi .tmk-cardpro .tmk-specs li{border-color:rgba(146,170,235,.45);color:#cfdaf8;background:rgba(146,170,235,.08);}
#tm-benefit-kougi .tmk-formula + .tmk-formula{margin-top:14px;}
#tm-benefit-kougi .tmk-formula .tmk-totalpro{border-color:#8fa8ea;background:rgba(146,170,235,.15);color:#cfdaf8;}

/* --- 価値の帯（実質価値の朱印風シール） --- */
#tm-benefit-kougi .tmk-value{
  position:relative;margin-top:56px;border-radius:16px;
  border:1px solid rgba(233,201,124,.5);
  background:linear-gradient(120deg,rgba(207,168,92,.14),rgba(207,168,92,.05) 45%,rgba(207,168,92,.16));
  padding:34px 30px;overflow:hidden;
}
#tm-benefit-kougi .tmk-value::before{
  content:"";position:absolute;top:0;bottom:0;width:120px;
  background:linear-gradient(100deg,transparent,rgba(255,240,200,.22),transparent);
  animation:tmkSheen 6s ease-in-out infinite;
}
@keyframes tmkSheen{0%,55%{left:-160px}85%,100%{left:110%}}
#tm-benefit-kougi .tmk-value .tmk-vhead{
  font-size:12px;letter-spacing:.3em;color:var(--tmk-gold);margin-bottom:14px;text-align:center;
}
#tm-benefit-kougi .tmk-formula{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
}
#tm-benefit-kougi .tmk-formula .tmk-f{
  border:1px solid var(--tmk-line);border-radius:10px;padding:12px 18px;
  font-size:15px;letter-spacing:.05em;color:var(--tmk-paper);background:rgba(14,12,21,.45);
}
#tm-benefit-kougi .tmk-formula .tmk-op{color:var(--tmk-gold2);font-size:20px;}
#tm-benefit-kougi .tmk-formula .tmk-total{
  border:1px solid var(--tmk-gold2);
  background:rgba(207,168,92,.14);
  font-size:17px;color:var(--tmk-gold2);
}
#tm-benefit-kougi .tmk-anchor{
  margin-top:18px;text-align:center;font-size:13.5px;line-height:2;color:var(--tmk-mute);
}
#tm-benefit-kougi .tmk-anchor strong{color:var(--tmk-paper);font-weight:600;}
#tm-benefit-kougi .tmk-anchor .tmk-zero{
  color:var(--tmk-gold2);
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
  font-size:1.25em;letter-spacing:.04em;
}

/* --- 講師帯 --- */
#tm-benefit-kougi .tmk-teacher{
  display:flex;gap:26px;align-items:center;margin-top:56px;
  border-top:1px solid var(--tmk-line);border-bottom:1px solid var(--tmk-line);
  padding:30px 6px;
}
#tm-benefit-kougi .tmk-teacher img{
  width:112px;height:112px;object-fit:cover;border-radius:50%;
  border:2px solid var(--tmk-gold);box-shadow:0 10px 28px rgba(0,0,0,.5);flex:none;
}
#tm-benefit-kougi .tmk-teacher .tmk-trole{font-size:11.5px;letter-spacing:.26em;color:var(--tmk-gold);margin-bottom:6px;}
#tm-benefit-kougi .tmk-teacher h4{
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
  font-size:22px;letter-spacing:.08em;color:var(--tmk-paper);margin-bottom:10px;
}
#tm-benefit-kougi .tmk-teacher h4 small{font-size:12px;color:var(--tmk-mute);margin-left:10px;letter-spacing:.14em;}
#tm-benefit-kougi .tmk-teacher p{font-size:13.5px;line-height:1.95;color:var(--tmk-mute);}
#tm-benefit-kougi .tmk-teacher p em{font-style:normal;color:var(--tmk-paper);}


#tm-benefit-kougi .tmk-teacher .tmk-tbody > p{margin:0 0 .7em}
#tm-benefit-kougi .tmk-teacher .tmk-tbody > p:last-child{margin-bottom:0}
#tm-benefit-kougi .tmk-teacher h4 small{display:inline-block;margin-left:.6em;font-weight:400;opacity:.72;letter-spacing:.08em}
#tm-benefit-kougi .tmk-teacher .tmk-tclose{padding-top:.55em;border-top:1px solid rgba(201,168,97,.22)}


/* --- 主題札 --- */
#tm-benefit-kougi .tmk-topics{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:34px;}
#tm-benefit-kougi .tmk-topics span{
  font-size:13px;letter-spacing:.12em;color:var(--tmk-paper);
  border:1px solid var(--tmk-line);border-radius:4px;padding:8px 16px;
  background:rgba(243,237,222,.03);
  font-family:'Shippori Mincho','Hiragino Mincho ProN',serif;
}

/* --- CTA --- */
#tm-benefit-kougi .tmk-ctaarea{text-align:center;margin-top:52px;}
#tm-benefit-kougi .tmk-cta{
  display:inline-flex;align-items:center;gap:10px;
  padding:18px 44px;border-radius:999px;text-decoration:none;
  font-size:15.5px;letter-spacing:.1em;font-weight:600;color:#1a1408;
  background:linear-gradient(120deg,#b98f3e,var(--tmk-gold2) 50%,#b98f3e);
  box-shadow:0 14px 36px rgba(207,168,92,.35);
  transition:transform .25s ease, box-shadow .25s ease;
}
#tm-benefit-kougi .tmk-cta:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(207,168,92,.45);}
#tm-benefit-kougi .tmk-cta i{font-style:normal;transition:transform .25s ease;}
#tm-benefit-kougi .tmk-cta:hover i{transform:translateX(4px);}
#tm-benefit-kougi .tmk-note{
  margin-top:22px;text-align:center;font-size:11.5px;line-height:1.9;color:rgba(183,174,153,.75);
}

/* --- reveal（軽量・GSAP不使用） --- */
#tm-benefit-kougi .tmk-rv{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease;}
#tm-benefit-kougi .tmk-rv.tmk-in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  #tm-benefit-kougi .tmk-rv{opacity:1;transform:none;transition:none;}
  #tm-benefit-kougi .tmk-livedot::after,
  #tm-benefit-kougi .tmk-value::before{animation:none;}
}

/* --- responsive --- */
@media (max-width:900px){
  #tm-benefit-kougi{padding:72px 18px 84px;}
  #tm-benefit-kougi .tmk-stage{grid-template-columns:1fr;}
  #tm-benefit-kougi .tmk-archstack{flex-direction:row;gap:12px;align-items:stretch;flex-wrap:wrap;}
  #tm-benefit-kougi .tmk-archtag{width:100%;justify-content:center;margin-bottom:2px;}
  #tm-benefit-kougi .tmk-arch{flex:1 1 30%;}
  #tm-benefit-kougi .tmk-arch + .tmk-arch{margin-top:0;}
  #tm-benefit-kougi .tmk-arch img{height:84px;}
  #tm-benefit-kougi .tmk-cards{grid-template-columns:1fr;}
  #tm-benefit-kougi .tmk-teacher{flex-direction:column;text-align:center;}
  #tm-benefit-kougi .tmk-teacher p{text-align:left;}
}










/* =========================================================
TENMON-ARK LP プランブロック v5(復元版)
個人会員プラン + Proプラン + 比較表 + 安心要素 + 返金 + 個別相談
========================================================= */
    #tenmon-plan-v5 {
      position: relative;
      overflow: hidden;
      width: 100%;
      color: var(--washi);
      background:
        radial-gradient(circle at 12% 12%, rgba(20,42,88,0.24), transparent 34%),
        radial-gradient(circle at 86% 56%, rgba(184,67,50,0.12), transparent 34%),
        radial-gradient(ellipse at 50% 0%, rgba(201,168,97,0.08), transparent 48%),
        linear-gradient(180deg, var(--sumi) 0%, var(--sumi-2) 48%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      line-height: 1.95;
      letter-spacing: 0.025em;
      box-sizing: border-box;
    }

    #tenmon-plan-v5, #tenmon-plan-v5 * { box-sizing: border-box; }

    #tenmon-plan-v5::before {
      content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0.09;
      background-image:
        radial-gradient(rgba(245,234,209,0.18) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.14) 1px, transparent 1px);
      background-size: 42px 42px, 78px 78px;
      background-position: 0 0, 22px 34px;
      mix-blend-mode: screen;
    }

    #tenmon-plan-v5 .v5-wrap {
      position: relative; z-index: 2;
      width: min(1080px, calc(100% - 32px));
      margin: 0 auto;
    }

    #tenmon-plan-v5 .v5-section {
      position: relative; padding: 76px 0;
    }

    #tenmon-plan-v5 .v5-title {
      text-align: center; margin: 0 auto 42px;
    }

    #tenmon-plan-v5 .v5-divider {
      display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 12px;
    }

    #tenmon-plan-v5 .v5-line {
      width: 60px; height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-plan-v5 .v5-dot {
      width: 6px; height: 6px; border-radius: 50%;
      background: var(--gold);
      box-shadow: 0 0 18px rgba(244,213,138,0.25);
    }

    #tenmon-plan-v5 .v5-kicker {
      display: inline-block; position: relative; padding-left: 22px;
      color: var(--gold-2); font-size: 12px;
      letter-spacing: 0.28em; font-weight: 700;
      text-transform: uppercase;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-plan-v5 .v5-kicker::before {
      content: ""; position: absolute; left: 0; top: 50%;
      width: 15px; height: 1px; background: var(--gold);
    }

    #tenmon-plan-v5 h2 {
      margin: 16px 0 12px;
      color: var(--washi);
      font-size: clamp(26px, 3.8vw, 40px);
      line-height: 1.45; font-weight: 500; letter-spacing: 0.06em;
    }

    #tenmon-plan-v5 .v5-title p {
      margin: 0 auto; max-width: 780px;
      color: var(--muted);
      font-size: 15px; line-height: 2.05;
    }

    #tenmon-plan-v5 .v5-plan-grid {
      display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 24px; max-width: 900px; margin: 0 auto;
      align-items: stretch;
    }

    #tenmon-plan-v5 .v5-plan-card {
      position: relative; overflow: hidden;
      padding: 34px 30px;
      border: 1px solid var(--border-soft);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.08), transparent 38%),
        rgba(20,17,13,0.62);
      box-shadow: 0 18px 54px rgba(0,0,0,0.22);
    }

    #tenmon-plan-v5 .v5-plan-card.v5-recommended {
      border-color: var(--gold);
      background:
        radial-gradient(circle at 50% 0%, rgba(244,213,138,0.12), transparent 42%),
        linear-gradient(180deg, rgba(201,168,97,0.13), rgba(11,10,8,0.52));
      box-shadow: 0 22px 70px rgba(0,0,0,0.36), 0 0 44px rgba(201,168,97,0.08);
    }

    #tenmon-plan-v5 .v5-plan-card.v5-pro {
      border-color: rgba(122,167,255,0.5);
      background:
        radial-gradient(circle at 50% 0%, rgba(122,167,255,0.08), transparent 42%),
        linear-gradient(180deg, rgba(20,42,88,0.15), rgba(11,10,8,0.52));
    }

    #tenmon-plan-v5 .v5-label {
      display: inline-flex; padding: 6px 14px; margin-bottom: 14px;
      background: var(--red); color: #fff;
      font-size: 11px; font-weight: 800; letter-spacing: 0.10em;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-plan-v5 .v5-label.v5-blue {
      background: var(--blue);
    }

    #tenmon-plan-v5 .v5-plan-card h3 {
      margin: 0 0 14px;
      color: var(--gold-2);
      font-size: 22px; line-height: 1.55;
      font-weight: 500; letter-spacing: 0.04em;
    }

    #tenmon-plan-v5 .v5-plan-card p {
      margin: 0; color: var(--muted);
      font-size: 14px; line-height: 2;
    }

    #tenmon-plan-v5 .v5-price {
      margin: 22px 0 6px;
      color: var(--gold-2);
      font-size: 38px; font-weight: 500;
      line-height: 1.1; letter-spacing: 0.02em;
    }

    #tenmon-plan-v5 .v5-pro .v5-price {
      color: var(--blue-2);
    }

    #tenmon-plan-v5 .v5-price small {
      color: var(--muted);
      font-size: 15px; font-weight: 400;
    }

    #tenmon-plan-v5 .v5-strike {
      display: inline-block; font-size: 14px; color: #888279;
      text-decoration: line-through;
      text-decoration-color: rgba(238,106,85,0.7);
      margin-bottom: 4px; font-weight: 400;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-plan-v5 .v5-subprice {
      color: var(--muted);
      font-size: 13px; margin-bottom: 18px;
      letter-spacing: 0.05em;
    }

    #tenmon-plan-v5 .v5-saving {
      display: inline-block; padding: 3px 12px;
      background: rgba(179,73,56,0.14);
      border: 0.5px solid rgba(216,94,74,0.4);
      color: var(--red-2);
      font-size: 12px; font-weight: 600; letter-spacing: 0.05em;
      border-radius: 2px; margin-bottom: 6px;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-plan-v5 .v5-list {
      margin: 20px 0 0; padding: 0; list-style: none;
    }

    #tenmon-plan-v5 .v5-list li {
      position: relative; padding-left: 24px; margin: 11px 0;
      color: var(--washi);
      font-size: 14px; line-height: 1.9;
    }

    #tenmon-plan-v5 .v5-list li::before {
      content: "—"; position: absolute; left: 0; top: 0;
      color: var(--gold);
    }

    #tenmon-plan-v5 .v5-buttons.pc {
      /*
      display: flex; justify-content: center; flex-wrap: wrap;
      gap: 14px; margin-top: 28px;
      */
      max-width: 900px;
      margin: 18px auto 0px;
    }

    #tenmon-plan-v5 .v5-buttons.sp {
      display: none;
    }


    #tenmon-plan-v5 .v5-year {
      position: relative;
      padding: 26px 22px;
      border: 0.5px solid rgba(201,168,97,0.22);
      background: rgba(11,10,8,0.8);
      text-align: center;
      width: min(780px, 100%);
      margin: 34px auto;
    }

    #tenmon-plan-v5 .v5-year-tag {
      display: inline-block;
      background: var(--gold);
      color: var(--text-dark);
      margin-top: 10px;
      padding: 7px 10px;
      font-weight: 600;
    }

    #tenmon-plan-v5 .v5-year-table {
      margin: 10px auto 0px;
      width: min(480px, 100%);
    }

    #tenmon-plan-v5 .v5-year-table th {
      font-weight: 800;
      vertical-align: middle;
      text-align: left;
      color: var(--gold);
    }

    #tenmon-plan-v5 .v5-year-table td {
      font-weight: 800;
      vertical-align: middle;
      text-align: left;
    }

    #tenmon-plan-v5 .v5-year-table td small {
      font-size: 12px;
    }
    #tenmon-plan-v5 .v5-year-table td strong {
      padding: 0px 7px;
      font-size: 24px;
      color: rgba(184,67,50,1);
    }















    #tenmon-plan-v5 .v5-btn {
      display: inline-flex; align-items: center; justify-content: center;
      min-height: 54px; padding: 14px 28px;
      border-radius: 2px; text-decoration: none;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-weight: 800; letter-spacing: 0.08em;
      line-height: 1.35; transition: all .22s ease;
    }

    #tenmon-plan-v5 .v5-btn.v5-primary {
      color: var(--text-dark);
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      border: 1px solid var(--gold-2);
      box-shadow: 0 14px 38px rgba(201,168,97,0.28);
    }

    #tenmon-plan-v5 .v5-btn.v5-secondary {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
    }

    #tenmon-plan-v5 .v5-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 18px 48px rgba(0,0,0,0.35);
    }

    #tenmon-plan-v5 .v5-assurance {
      display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 22px; max-width: 920px; margin: 48px auto 0;
    }

    #tenmon-plan-v5 .v5-assurance-item {
      padding: 24px 16px;
      border: 1px solid var(--border-soft);
      background: rgba(11,10,8,0.42);
      text-align: center;
    }

    #tenmon-plan-v5 .v5-assurance-mark {
      width: 38px; height: 38px; margin: 0 auto 12px;
      border: 1px solid var(--gold); border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      color: var(--gold-2); font-size: 16px;
    }

    #tenmon-plan-v5 .v5-assurance-item strong {
      display: block; margin-bottom: 6px;
      color: var(--washi);
      font-size: 14px; letter-spacing: 0.05em;
    }

    #tenmon-plan-v5 .v5-assurance-item span {
      display: block; color: var(--muted);
      font-size: 12px; line-height: 1.7;
    }

    #tenmon-plan-v5 .v5-refund {
      display: grid; grid-template-columns: 48px 1fr;
      gap: 20px; align-items: flex-start;
      max-width: 900px; margin: 32px auto 0;
      padding: 24px 28px;
      background: linear-gradient(135deg, rgba(179,73,56,0.06), rgba(11,10,8,0.4));
      border: 0.5px solid rgba(216,94,74,0.32);
      border-left: 2px solid var(--red-2);
    }

    #tenmon-plan-v5 .v5-refund-mark {
      width: 40px; height: 40px;
      display: flex; align-items: center; justify-content: center;
      background: rgba(179,73,56,0.12);
      border: 0.5px solid rgba(216,94,74,0.4);
      border-radius: 50%; color: var(--red-2);
      flex-shrink: 0; font-weight: 800; font-size: 18px;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-plan-v5 .v5-refund strong {
      display: block; color: var(--red-2);
      font-size: 14px; font-weight: 600;
      letter-spacing: 0.1em; margin-bottom: 8px;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif;
    }

    #tenmon-plan-v5 .v5-refund p {
      margin: 0; color: #c8c2b3;
      font-size: 14px; line-height: 1.95; letter-spacing: 0.02em;
    }

    #tenmon-plan-v5 .v5-emphasis {
      color: var(--gold-2); font-weight: 500;
    }

    #tenmon-plan-v5 .v5-note {
      max-width: 880px; margin: 18px auto 0;
      color: var(--muted);
      font-size: 12px; line-height: 2; text-align: center;
    }

    #tenmon-plan-v5 .v5-business-box {
      max-width: 920px; margin: 46px auto 0;
      padding: 32px 28px;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 50% 0%, rgba(122,167,255,0.08), transparent 42%),
        linear-gradient(180deg, rgba(20,42,88,0.14), rgba(5,4,3,0.40));
      text-align: center;
    }

    #tenmon-plan-v5 .v5-business-box h3 {
      margin: 0 0 12px;
      color: var(--blue-2);
      font-size: 21px; line-height: 1.55;
      font-weight: 500; letter-spacing: 0.05em;
    }

    #tenmon-plan-v5 .v5-business-box p {
      margin: 0 auto; max-width: 760px;
      color: var(--muted);
      font-size: 14px; line-height: 2;
    }

    @media (max-width: 900px) {
      #tenmon-plan-v5 .v5-plan-grid,
      #tenmon-plan-v5 .v5-assurance {
        grid-template-columns: 1fr;
      }
      #tenmon-plan-v5 .v5-plan-card.v5-recommended {
        transform: none;
      }
      #tenmon-plan-v5 .v5-buttons.pc {
        display: none;
      }
      #tenmon-plan-v5 .v5-buttons.sp {
        display: block;
      }

    }

    @media (max-width: 720px) {
      #tenmon-plan-v5 .v5-section { padding: 56px 0; }
      #tenmon-plan-v5 .v5-btn { width: 100%; }
      #tenmon-plan-v5 .v5-refund {
        grid-template-columns: 1fr; gap: 12px; padding: 20px;
      }
      #tenmon-plan-v5 .v5-refund-mark { margin: 0 auto; }
      #tenmon-plan-v5 .v5-refund strong,
      #tenmon-plan-v5 .v5-refund p { text-align: center; }

      #tenmon-plan-v5 .v5-year {
        padding: 10px;
      }

      #tenmon-plan-v5 .v5-year-table th {
        display: block;
        width: 100%;
        text-align: center;
      }

      #tenmon-plan-v5 .v5-year-table td {
        display: block;
        width: 100%;
        text-align: center;
      }


    }



/****20260926追加***/
    #tenmon-learning-v5 {
      position: relative;
      overflow: hidden;
      width: 100%;
      color: var(--washi);
      background:
        radial-gradient(circle at 12% 12%, rgba(20,42,88,0.24), transparent 34%),
        radial-gradient(circle at 86% 56%, rgba(184,67,50,0.12), transparent 34%),
        radial-gradient(ellipse at 50% 0%, rgba(201,168,97,0.08), transparent 48%),
        linear-gradient(180deg, var(--sumi) 0%, var(--sumi-2) 48%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      line-height: 1.95;
      letter-spacing: 0.025em;
      box-sizing: border-box;
    }

    #tenmon-learning-v5, #tenmon-learning-v5 * { box-sizing: border-box; }

    #tenmon-learning-v5::before {
      content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0.09;
      background-image:
        radial-gradient(rgba(245,234,209,0.18) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.14) 1px, transparent 1px);
      background-size: 42px 42px, 78px 78px;
      background-position: 0 0, 22px 34px;
      mix-blend-mode: screen;
    }

    #tenmon-learning-v5 .v5-wrap {
      position: relative; z-index: 2;
      width: min(1080px, calc(100% - 32px));
      margin: 0 auto;
    }

    #tenmon-learning-v5 .v5-section {
      position: relative; padding: 76px 0;
    }

    #tenmon-learning-v5 .v5-title {
      text-align: center; margin: 0 auto 42px;
    }

    #tenmon-learning-v5 .v5-divider {
      display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 12px;
    }

    #tenmon-learning-v5 .v5-line {
      width: 60px; height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-learning-v5 .v5-dot {
      width: 6px; height: 6px; border-radius: 50%;
      background: var(--gold);
      box-shadow: 0 0 18px rgba(244,213,138,0.25);
    }

    #tenmon-learning-v5 .v5-kicker {
      display: inline-block; position: relative; padding-left: 22px;
      color: var(--gold-2); font-size: 12px;
      letter-spacing: 0.28em; font-weight: 700;
      text-transform: uppercase;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-learning-v5 .v5-kicker::before {
      content: ""; position: absolute; left: 0; top: 50%;
      width: 15px; height: 1px; background: var(--gold);
    }

    #tenmon-learning-v5 h2 {
      margin: 16px 0 12px;
      color: var(--washi);
      font-size: clamp(26px, 3.8vw, 40px);
      line-height: 1.45; font-weight: 500; letter-spacing: 0.06em;
    }

    #tenmon-learning-v5 .v5-title p {
      margin: 0 auto; max-width: 780px;
      color: var(--muted);
      font-size: 15px; line-height: 2.05;
      margin-bottom:34px;
    }


    #tenmon-learning-v5 .v5-btn {
      display: inline-flex; align-items: center; justify-content: center;
      min-height: 54px; padding: 14px 28px;
      border-radius: 2px; text-decoration: none;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-weight: 800; letter-spacing: 0.08em;
      line-height: 1.35; transition: all .22s ease;
      width:100%;
      margin: 0px auto;
      max-width: 900px;
    }

    #tenmon-learning-v5 .v5-btn.v5-primary {
      color: var(--text-dark);
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      border: 1px solid var(--gold-2);
      box-shadow: 0 14px 38px rgba(201,168,97,0.28);
    }

    #tenmon-learning-v5 .v5-btn.v5-secondary {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
    }

    #tenmon-learning-v5 .v5-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 18px 48px rgba(0,0,0,0.35);
    }















    
/* =========================================================
TENMON-ARK LP Block 09
他のAIサービスとの違い + 申込前の最終後押し
完全スコープCSS版 / 単独ブロック対応
========================================================= */
    #tenmon-why-difference-v2 {
      position: relative;
      overflow: hidden;
      color: var(--washi);
      background:
        radial-gradient(circle at 18% 18%, rgba(20,42,88,0.24), transparent 34%),
        radial-gradient(circle at 84% 62%, rgba(184,67,50,0.12), transparent 34%),
        radial-gradient(ellipse at 50% 0%, rgba(201,168,97,0.10), transparent 48%),
        linear-gradient(180deg, var(--sumi) 0%, var(--sumi-2) 48%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      line-height: 1.95;
      letter-spacing: 0.025em;
      box-sizing: border-box;
      padding: 86px 0;
      isolation: isolate;
    }

    #tenmon-why-difference-v2,
    #tenmon-why-difference-v2 * {
      box-sizing: border-box;
    }

    #tenmon-why-difference-v2::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: 0.09;
      pointer-events: none;
      background-image:
        radial-gradient(rgba(245,234,209,0.18) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.14) 1px, transparent 1px);
      background-size: 42px 42px, 78px 78px;
      background-position: 0 0, 22px 34px;
      mix-blend-mode: screen;
      z-index: 0;
    }

    #tenmon-why-difference-v2::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 46%;
      width: min(660px, 92vw);
      height: min(660px, 92vw);
      transform: translate(-50%, -50%);
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.12);
      box-shadow:
        0 0 90px rgba(201,168,97,0.06),
        inset 0 0 90px rgba(201,168,97,0.035);
      pointer-events: none;
      z-index: 0;
    }

    #tenmon-why-difference-v2 .twd-wrap {
      width: min(1080px, calc(100% - 32px));
      margin: 0 auto;
      position: relative;
      z-index: 2;
    }

    #tenmon-why-difference-v2 .twd-title {
      text-align: center;
      margin: 0 auto 44px;
    }

    #tenmon-why-difference-v2 .twd-divider {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      margin: 0 0 14px;
    }

    #tenmon-why-difference-v2 .twd-line {
      width: 62px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-why-difference-v2 .twd-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gold-2);
      box-shadow: 0 0 18px rgba(244,213,138,0.32);
    }

    #tenmon-why-difference-v2 .twd-kicker {
      display: inline-block;
      position: relative;
      padding-left: 22px;
      color: var(--gold-2);
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-size: 12px;
      line-height: 1.4;
      letter-spacing: 0.28em;
      font-weight: 700;
      text-transform: uppercase;
    }

    #tenmon-why-difference-v2 .twd-kicker::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: 15px;
      height: 1px;
      background: var(--gold);
    }

    #tenmon-why-difference-v2 h2 {
      margin: 16px 0 13px;
      color: var(--washi);
      font-size: clamp(27px, 4vw, 44px);
      line-height: 1.48;
      font-weight: 500;
      letter-spacing: 0.06em;
      text-shadow: 0 8px 34px rgba(0,0,0,0.55);
    }

    #tenmon-why-difference-v2 h2 .twd-gold {
      color: var(--gold-2);
    }

    #tenmon-why-difference-v2 .twd-title p {
      margin: 0 auto;
      max-width: 780px;
      color: var(--muted);
      font-size: 15px;
      line-height: 2.05;
    }

    #tenmon-why-difference-v2 .twd-core-message {
      max-width: 840px;
      margin: 0 auto 42px;
      padding: 30px 30px;
      text-align: center;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.10), transparent 42%),
        linear-gradient(180deg, rgba(20,17,13,0.74), rgba(5,4,3,0.72));
      box-shadow: 0 22px 64px rgba(0,0,0,0.30);
      position: relative;
      overflow: hidden;
    }

    #tenmon-why-difference-v2 .twd-core-message::before {
      content: "";
      position: absolute;
      left: 50%;
      top: -220px;
      width: 440px;
      height: 440px;
      transform: translateX(-50%);
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.10);
      pointer-events: none;
    }

    #tenmon-why-difference-v2 .twd-core-message p {
      position: relative;
      z-index: 2;
      margin: 0;
      color: var(--washi);
      font-size: 16px;
      line-height: 2.15;
      letter-spacing: 0.04em;
    }

    #tenmon-why-difference-v2 .twd-core-message strong {
      color: var(--gold-2);
      font-weight: 500;
    }

    #tenmon-why-difference-v2 .twd-diff-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 22px;
      max-width: 920px;
      margin: 0 auto 50px;
    }

    #tenmon-why-difference-v2 .twd-diff-card {
      position: relative;
      overflow: hidden;
      padding: 30px;
      border: 1px solid var(--border-soft);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.07), transparent 38%),
        linear-gradient(180deg, rgba(20,17,13,0.64), rgba(5,4,3,0.54));
      box-shadow: 0 18px 54px rgba(0,0,0,0.20);
    }

    #tenmon-why-difference-v2 .twd-diff-card::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(201,168,97,0.44), transparent);
    }

    #tenmon-why-difference-v2 .twd-diff-head {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 16px;
      margin-bottom: 22px;
    }

    #tenmon-why-difference-v2 .twd-pill {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 34px;
      padding: 7px 16px;
      color: var(--muted);
      border: 1px solid rgba(245,234,209,0.14);
      background: rgba(5,4,3,0.42);
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-size: 11px;
      line-height: 1.4;
      font-weight: 700;
      letter-spacing: 0.18em;
      text-align: center;
      text-transform: uppercase;
    }

    #tenmon-why-difference-v2 .twd-pill.twd-pill-gold {
      color: var(--gold-2);
      border-color: rgba(201,168,97,0.52);
      background:
        radial-gradient(circle at 50% 0%, rgba(244,213,138,0.12), transparent 55%),
        rgba(201,168,97,0.08);
      box-shadow: 0 0 28px rgba(201,168,97,0.08);
    }

    #tenmon-why-difference-v2 .twd-vs {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      border: 1px solid var(--gold);
      color: var(--gold-2);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
      box-shadow: 0 0 22px rgba(201,168,97,0.14);
      background: rgba(5,4,3,0.42);
    }

    #tenmon-why-difference-v2 .twd-diff-content {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }

    #tenmon-why-difference-v2 .twd-side {
      padding: 18px 20px;
      border-left: 2px solid rgba(245,234,209,0.13);
      background: rgba(5,4,3,0.20);
    }

    #tenmon-why-difference-v2 .twd-side strong {
      display: block;
      margin-bottom: 8px;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.6;
      font-weight: 500;
      letter-spacing: 0.06em;
    }

    #tenmon-why-difference-v2 .twd-side p {
      margin: 0;
      color: var(--muted-2);
      font-size: 13px;
      line-height: 1.9;
      letter-spacing: 0.02em;
    }

    #tenmon-why-difference-v2 .twd-side.twd-side-gold {
      border-left-color: var(--gold);
      background:
        linear-gradient(180deg, rgba(201,168,97,0.06), rgba(5,4,3,0.20));
    }

    #tenmon-why-difference-v2 .twd-side.twd-side-gold strong {
      color: var(--gold-2);
    }

    #tenmon-why-difference-v2 .twd-side.twd-side-gold p {
      color: rgba(245,234,209,0.88);
    }

    #tenmon-why-difference-v2 .twd-final {
      position: relative;
      overflow: hidden;
      max-width: 820px;
      margin: 0 auto;
      padding: 48px 38px;
      text-align: center;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 50% 0%, rgba(244,213,138,0.11), transparent 38%),
        linear-gradient(180deg, rgba(20,17,13,0.82), rgba(5,4,3,0.88));
      box-shadow: 0 28px 78px rgba(0,0,0,0.36);
    }

    #tenmon-why-difference-v2 .twd-final::before {
      content: "";
      position: absolute;
      left: 50%;
      top: -210px;
      width: 480px;
      height: 480px;
      transform: translateX(-50%);
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.11);
      pointer-events: none;
    }

    #tenmon-why-difference-v2 .twd-final > * {
      position: relative;
      z-index: 2;
    }

    #tenmon-why-difference-v2 .twd-seal {
      width: 66px;
      height: 66px;
      margin: 0 auto 22px;
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.62);
      background:
        radial-gradient(circle, rgba(244,213,138,0.24), rgba(201,168,97,0.08) 46%, rgba(5,4,3,0.3) 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold-2);
      font-size: 21px;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
      box-shadow:
        0 0 36px rgba(201,168,97,0.14),
        inset 0 0 28px rgba(201,168,97,0.06);
      animation: twdSealBreath 6s ease-in-out infinite;
    }

    @keyframes twdSealBreath {
      0%, 100% { opacity: 0.86; transform: scale(1); }
      50% { opacity: 1; transform: scale(1.045); }
    }

    #tenmon-why-difference-v2 .twd-final h3 {
      margin: 0 0 26px;
      color: var(--gold-2);
      font-size: clamp(21px, 3vw, 28px);
      line-height: 1.6;
      font-weight: 500;
      letter-spacing: 0.08em;
    }

    #tenmon-why-difference-v2 .twd-final-list {
      display: grid;
      gap: 0;
      max-width: 660px;
      margin: 0 auto 32px;
      text-align: left;
      border-top: 1px solid rgba(245,234,209,0.08);
    }

    #tenmon-why-difference-v2 .twd-final-item {
      display: grid;
      grid-template-columns: 34px 1fr;
      gap: 12px;
      align-items: start;
      padding: 16px 0;
      border-bottom: 1px solid rgba(245,234,209,0.08);
    }

    #tenmon-why-difference-v2 .twd-final-mark {
      color: var(--gold-2);
      font-size: 18px;
      line-height: 1.6;
      text-align: center;
      text-shadow: 0 0 18px rgba(201,168,97,0.16);
    }

    #tenmon-why-difference-v2 .twd-final-item span:last-child {
      color: var(--washi);
      font-size: 15px;
      line-height: 1.9;
      letter-spacing: 0.02em;
    }

    #tenmon-why-difference-v2 .twd-final-cta-text {
      margin: 0 auto 30px;
      color: var(--washi);
      font-size: 17px;
      line-height: 1.95;
      letter-spacing: 0.04em;
      text-align: center;
    }

    #tenmon-why-difference-v2 .twd-final-cta-text strong {
      color: var(--gold-2);
      font-weight: 500;
    }

    #tenmon-why-difference-v2 .twd-buttons {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 28px;
    }

    #tenmon-why-difference-v2 .twd-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 56px;
      padding: 14px 30px;
      border-radius: 2px;
      text-decoration: none;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
      font-size: 14px;
      font-weight: 800;
      letter-spacing: 0.08em;
      line-height: 1.35;
      transition: transform .22s ease, box-shadow .22s ease, opacity .22s ease;
    }

    #tenmon-why-difference-v2 .twd-btn-primary {
      color: var(--text-dark);
      background: linear-gradient(135deg, var(--gold-2), var(--gold));
      border: 1px solid var(--gold-2);
      box-shadow: 0 14px 38px rgba(201,168,97,0.28);
    }

    #tenmon-why-difference-v2 .twd-btn-secondary {
      color: var(--washi);
      background: rgba(5,4,3,0.34);
      border: 1px solid rgba(201,168,97,0.62);
    }

    #tenmon-why-difference-v2 .twd-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 18px 48px rgba(0,0,0,0.35);
      opacity: 0.96;
    }

    @media (max-width: 820px) {
      #tenmon-why-difference-v2 {
        padding: 64px 0;
      }

      #tenmon-why-difference-v2 .twd-core-message,
      #tenmon-why-difference-v2 .twd-diff-card,
      #tenmon-why-difference-v2 .twd-final {
        padding: 28px 20px;
      }

      #tenmon-why-difference-v2 .twd-diff-head {
        grid-template-columns: 1fr;
        gap: 10px;
      }

      #tenmon-why-difference-v2 .twd-vs {
        margin: 0 auto;
      }

      #tenmon-why-difference-v2 .twd-diff-content {
        grid-template-columns: 1fr;
        gap: 14px;
      }

      #tenmon-why-difference-v2 .twd-side {
        padding: 16px;
      }

      #tenmon-why-difference-v2 .twd-final-list {
        margin-bottom: 28px;
      }

      #tenmon-why-difference-v2 .twd-buttons {
        flex-direction: column;
      }

      #tenmon-why-difference-v2 .twd-btn {
        width: 100%;
      }
    }

/* =========================================================
TENMON-ARK LP Block 10 + 11 + 12
10. 注意事項・AI免責
11. FAQ
12. 最終CTA
返金方針明示 / 法務リンク / 固定CTA / ref内部保存対応
========================================================= */
    #tenmon-lp-legal-faq-cta-v2 {

      position: relative;
      overflow: hidden;
      color: var(--washi);
      background:
        radial-gradient(circle at 12% 20%, rgba(20,42,88,0.22), transparent 36%),
        radial-gradient(circle at 88% 62%, rgba(184,67,50,0.12), transparent 36%),
        radial-gradient(ellipse at 50% 0%, rgba(201,168,97,0.08), transparent 48%),
        linear-gradient(180deg, var(--sumi) 0%, var(--sumi-2) 45%, var(--sumi) 100%);
      font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS Mincho", serif;
      line-height: 1.95;
      letter-spacing: 0.025em;
    }

    #tenmon-lp-legal-faq-cta-v2 * {
      box-sizing: border-box;
    }

    #tenmon-lp-legal-faq-cta-v2::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: 0.10;
      pointer-events: none;
      background-image:
        radial-gradient(rgba(245,234,209,0.18) 1px, transparent 1px),
        radial-gradient(rgba(201,168,97,0.14) 1px, transparent 1px);
      background-size: 42px 42px, 78px 78px;
      background-position: 0 0, 22px 34px;
      mix-blend-mode: screen;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-wrap {
      width: min(1080px, calc(100% - 32px));
      margin: 0 auto;
      position: relative;
      z-index: 2;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-section {
      padding: 76px 0;
      position: relative;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-section.compact {
      padding: 58px 0;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-section-title {
      text-align: center;
      margin-bottom: 42px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-divider {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      margin-bottom: 12px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-divider-line {
      width: 60px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold), transparent);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-divider-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gold);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-kicker-v {
      display: inline-block;
      position: relative;
      padding-left: 22px;
      color: var(--gold-2);
      font-size: 12px;
      letter-spacing: 0.28em;
      font-weight: 700;
      text-transform: uppercase;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-kicker-v::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: 15px;
      height: 1px;
      background: var(--gold);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-section-title h2 {
      margin: 16px 0 12px;
      font-size: clamp(26px, 3.8vw, 40px);
      line-height: 1.45;
      font-weight: 500;
      letter-spacing: 0.06em;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-section-title h2 .gold {
      color: var(--gold-2);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-section-title p {
      margin: 0 auto;
      max-width: 760px;
      color: var(--muted);
      font-size: 15px;
      line-height: 2.05;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-card {
      position: relative;
      padding: 30px 28px;
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.08), transparent 36%),
        rgba(20,17,13,0.62);
      border: 1px solid var(--border-soft);
      box-shadow: 0 18px 54px rgba(0,0,0,0.22);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-list {
      margin: 0;
      padding: 0;
      list-style: none;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-list li {
      position: relative;
      padding-left: 24px;
      margin: 12px 0;
      color: var(--washi);
      font-size: 14px;
      line-height: 1.95;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-list li::before {
      content: "—";
      position: absolute;
      left: 0;
      top: 0;
      color: var(--gold);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-note {
      max-width: 860px;
      margin: 18px auto 0;
      color: var(--muted);
      font-size: 12px;
      line-height: 2;
      text-align: center;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-buttons {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 32px;
    }

 

    /* =========================================================
       10. 注意事項・AI免責
    ========================================================= */

    #tenmon-lp-legal-faq-cta-v2 .tm-legal-section {
      background:
        radial-gradient(circle at 50% 0%, rgba(184,67,50,0.12), transparent 42%),
        linear-gradient(180deg, rgba(11,10,8,0.62), rgba(5,4,3,0.72));
      border-top: 1px solid var(--border-soft);
      border-bottom: 1px solid var(--border-soft);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-legal-shell {
      max-width: 960px;
      margin: 0 auto;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 50% 0%, rgba(201,168,97,0.10), transparent 40%),
        linear-gradient(180deg, rgba(20,17,13,0.70), rgba(5,4,3,0.86));
      box-shadow: 0 28px 80px var(--shadow);
      position: relative;
      overflow: hidden;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-legal-shell::before {
      content: "";
      position: absolute;
      left: 50%;
      top: -170px;
      width: 520px;
      height: 520px;
      transform: translateX(-50%);
      border-radius: 50%;
      border: 1px solid rgba(201,168,97,0.12);
      pointer-events: none;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-legal-inner {
      position: relative;
      z-index: 2;
      padding: 34px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-legal-alert {
      padding: 18px 20px;
      margin-bottom: 22px;
      border: 1px solid rgba(184,67,50,0.36);
      background: rgba(184,67,50,0.08);
      color: rgba(245,234,209,0.90);
      font-size: 14px;
      line-height: 1.95;
      font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-legal-alert strong {
      color: var(--red-2);
      font-weight: 800;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-policy-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 26px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-policy-item {
      padding: 20px 16px;
      border: 1px solid var(--border-soft);
      background: rgba(5,4,3,0.36);
      text-align: center;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-policy-mark {
      width: 36px;
      height: 36px;
      margin: 0 auto 12px;
      border: 1px solid var(--gold);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold-2);
      font-size: 15px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-policy-item h3 {
      margin: 0 0 8px;
      color: var(--gold-2);
      font-size: 15px;
      font-weight: 500;
      line-height: 1.5;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-policy-item p {
      margin: 0;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.8;
    }

    /* =========================================================
       Promise
    ========================================================= */

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-section {
      background:
        linear-gradient(180deg, rgba(11,10,8,0.60), rgba(20,17,13,0.40));
      border-top: 0.5px solid rgba(245,234,209,0.08);
      border-bottom: 0.5px solid rgba(245,234,209,0.08);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-wrap {
      max-width: 760px;
      margin: 0 auto;
      text-align: center;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-seal {
      width: 56px;
      height: 56px;
      margin: 0 auto 24px;
      position: relative;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-seal::before {
      content: "";
      position: absolute;
      inset: 0;
      border: 1px solid var(--gold);
      border-radius: 50%;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-seal::after {
      content: "正";
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold-2);
      font-size: 22px;
      font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-title {
      font-size: clamp(22px, 3vw, 30px);
      line-height: 1.6;
      font-weight: 500;
      letter-spacing: 0.08em;
      margin: 0 0 24px;
      color: var(--washi);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-lead {
      color: #c8c2b3;
      font-size: 16px;
      line-height: 2.1;
      letter-spacing: 0.04em;
      margin: 0 0 36px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      margin-top: 32px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-item {
      padding: 20px 16px;
      border: 0.5px solid rgba(201,168,97,0.20);
      background: rgba(11,10,8,0.50);
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-item strong {
      display: block;
      color: var(--gold-2);
      font-size: 14px;
      font-weight: 500;
      letter-spacing: 0.10em;
      margin-bottom: 8px;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-promise-item p {
      margin: 0;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.8;
    }

    /* =========================================================
       FAQ
    ========================================================= */

    #tenmon-lp-legal-faq-cta-v2 .tm-faq-wrap {
      max-width: 900px;
      margin: 0 auto;
    }

    #tenmon-lp-legal-faq-cta-v2 details {
      padding: 20px 22px;
      border: 1px solid var(--border-soft);
      background: rgba(11,10,8,0.44);
      transition: all .22s ease;
    }

    #tenmon-lp-legal-faq-cta-v2 details + details {
      margin-top: 12px;
    }

    #tenmon-lp-legal-faq-cta-v2 details[open] {
      border-color: var(--border);
      background: rgba(201,168,97,0.045);
    }

    #tenmon-lp-legal-faq-cta-v2 summary {
      cursor: pointer;
      color: var(--washi);
      font-weight: 600;
      font-size: 15px;
      line-height: 1.7;
      letter-spacing: 0.04em;
      list-style: none;
      position: relative;
      padding-right: 28px;
    }

    #tenmon-lp-legal-faq-cta-v2 summary::-webkit-details-marker {
      display: none;
    }

    #tenmon-lp-legal-faq-cta-v2 summary::after {
      content: "+";
      position: absolute;
      right: 0;
      top: 0;
      color: var(--gold-2);
      font-size: 20px;
      line-height: 1.4;
      font-weight: 400;
    }

    #tenmon-lp-legal-faq-cta-v2 details[open] summary::after {
      content: "−";
    }

    #tenmon-lp-legal-faq-cta-v2 details p {
      margin: 14px 0 0;
      color: var(--muted);
      font-size: 14px;
      line-height: 2;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-faq-important {
      border-left: 2px solid var(--gold) !important;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-faq-important summary {
      color: var(--gold-2) !important;
    }

    #tenmon-lp-legal-faq-cta-v2 .tm-faq-emphasis {
      display: inline-block;
      padding: 6px 12px;
      background: rgba(201,168,97,0.12);
      border: 0.5px solid rgba(201,168,97,0.40);
      color: var(--gold-2);
      font-weight: 600;
      letter-spacing: 0.05em;
      border-radius: 2px;
      margin-bottom: 4px;
    }


