/* =========================================================
   Black × Pink theme override
   元LPの黒ベース・構成・フォントはそのまま、差し色にピンクを足す
   ========================================================= */

:root {
  --bp-pink: #ff5c9e;
  --bp-pink-soft: #ff9dc6;
  --bp-pink-deep: #d62f74;
  --bp-grad: linear-gradient(100deg, #ff4f97 0%, #ff7db4 55%, #ffa9d0 100%);
  --bp-glow: 0 0 18px rgba(255, 92, 158, 0.45);

  /* 元の変数のうちベージュだけ淡いピンクへ */
  --beige: #fbe7f0;
}

/* ---------- 黒ベースにピンクの光を足す ---------- */
.elementor .center-wrapper {
  background-color: var(--black);
  background-image:
    radial-gradient(70% 40% at 85% 8%, rgba(255, 92, 158, 0.22), transparent 70%),
    radial-gradient(60% 35% at 5% 45%, rgba(255, 92, 158, 0.16), transparent 70%),
    radial-gradient(70% 40% at 95% 80%, rgba(255, 92, 158, 0.14), transparent 70%);
  box-shadow: 10px 10px 30px rgba(255, 92, 158, 0.18);
}

/* 見出し: 縁取りをピンクに（塗りの強調部分は元のまま） */
.elementor .heading {
  -webkit-text-stroke-color: var(--bp-pink);
  stroke: var(--bp-pink);
}
.elementor .heading-in {
  -webkit-text-stroke-color: var(--bp-pink);
  stroke: var(--bp-pink);
}
.elementor .h2-jp {
  color: var(--bp-pink-soft);
}

/* 区切り線 */
.elementor .line {
  background-color: var(--bp-pink) !important;
  mix-blend-mode: normal;
  box-shadow: var(--bp-glow);
}

/* 白い枠線 → ピンクの枠線 */
.elementor .border-white {
  border-color: var(--bp-pink);
}
.elementor img.border-white {
  box-shadow: 0 0 20px rgba(255, 92, 158, 0.25);
}

/* ---------- ボタン ---------- */
.elementor .main-btn .elementor-button,
.elementor-199 .elementor-element.elementor-element-572cbda .elementor-button,
.elementor-199 .elementor-element.elementor-element-10eca01 .elementor-button,
.elementor-199 .elementor-element.elementor-element-8a06a50 .elementor-button,
.elementor-484 .elementor-element.elementor-element-38776fc2 .elementor-button {
  background: var(--bp-grad) !important;
  color: #fff !important;
  fill: #fff !important;
  box-shadow: 0 8px 24px rgba(255, 79, 151, 0.35);
  transition: filter 0.3s, transform 0.3s;
}
.elementor .main-btn .elementor-button:hover,
.elementor-199 .elementor-element.elementor-element-572cbda .elementor-button:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
}
.elementor .main-btn .elementor-button svg,
.elementor-199 .elementor-element.elementor-element-572cbda .elementor-button svg,
.elementor-199 .elementor-element.elementor-element-10eca01 .elementor-button svg,
.elementor-199 .elementor-element.elementor-element-8a06a50 .elementor-button svg {
  fill: #fff;
  color: #fff;
}

/* 画面下固定のLINEボタン（緑 → ピンク、回るネオン線もピンクに） */
.elementor-199 .elementor-element.elementor-element-dfad9a0 .elementor-button {
  background: var(--bp-grad);
  color: #fff;
  fill: #fff;
}
@media (max-width: 767px) {
  .sticky .black-btn {
    background:
      var(--bp-grad) padding-box,
      conic-gradient(
          from var(--neon-angle),
          transparent 0%,
          transparent 72%,
          rgba(255, 255, 255, 0.35) 78%,
          #fff 84%,
          #fff 88%,
          rgba(255, 255, 255, 0.35) 94%,
          transparent 100%
        )
        border-box;
    box-shadow:
      0 0 12px rgba(255, 92, 158, 0.55),
      inset 0 0 4px rgba(255, 255, 255, 0.25);
  }
}

/* ---------- About ---------- */
.elementor .e-e050d38-d8839d7 {
  color: var(--bp-pink-deep);
}
.elementor .e-0c0962c-5fdff68 {
  border-color: var(--bp-pink);
  border-block-end-width: 2px;
}
.elementor .e-4f7ee80-a8ce61b strong {
  color: var(--bp-pink-deep);
}

/* ---------- Creator（スライダー） ---------- */
.elementor-199 .e-n-carousel .swiper-slide > .e-con {
  border-color: var(--bp-pink) !important;
  box-shadow: 0 0 30px rgba(255, 92, 158, 0.18);
}
.elementor-199 .e-n-carousel .swiper-slide .elementor-widget-heading:last-child .elementor-heading-title {
  -webkit-text-stroke-color: var(--bp-pink) !important;
  stroke: var(--bp-pink) !important;
}
.elementor-199 .e-n-carousel .swiper-slide .elementor-widget-divider {
  --divider-color: var(--bp-pink) !important;
}
.elementor .elementor-element-cd49f14 .elementor-swiper-button,
.elementor .elementor-element-cd49f14 .elementor-swiper-button svg,
.elementor .elementor-element-cd49f14 .elementor-swiper-button svg path {
  color: var(--bp-pink);
  fill: var(--bp-pink);
}
.elementor .elementor-element-cd49f14 .swiper-pagination-bullet {
  background: var(--bp-pink);
  opacity: 0.4;
}
.elementor .elementor-element-cd49f14 .swiper-pagination-bullet-active {
  background: var(--bp-pink);
  opacity: 1;
}

/* ---------- News ---------- */
.elementor .border-black-right {
  border-color: var(--bp-pink);
}
.elementor p.bg-black.color-white {
  background: var(--bp-grad);
}

/* ---------- Pass ---------- */
.elementor .pass-item-p {
  color: var(--bp-pink-soft);
}
.elementor .pass-item-white {
  box-shadow: 0 0 20px rgba(255, 92, 158, 0.2);
}
.elementor .e-b050826-1eee3b4 {
  color: var(--bp-pink-soft);
}

/* ---------- Entry ---------- */
.elementor .entry-i {
  color: var(--bp-pink);
}
.elementor .entry-i svg path {
  fill: currentColor;
}
.elementor .entry-icon-wrapepr {
  border-inline-start: 2px solid var(--bp-pink);
  padding-block: 6px;
}

/* ---------- Flow ---------- */
.elementor .flow-number {
  color: var(--bp-pink);
  filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.9));
}
.elementor .flow-number-line {
  background: var(--bp-pink);
}
.elementor .flow-img-black {
  background: linear-gradient(140deg, var(--bp-pink) 0%, #7a1442 100%);
}
.elementor .flow-icon {
  color: var(--bp-pink);
}
.elementor .flow-pass-p {
  border-color: var(--bp-pink);
}
.elementor .border-black {
  border-color: var(--bp-pink);
}
.elementor .e-b6c2e4c-33aed89 strong {
  color: var(--bp-pink-deep);
}

/* ---------- Notice / Privacy / Footer ---------- */
.elementor .notice-icon {
  color: var(--bp-pink);
}
.elementor .e-c92f57d-f5c8558 a {
  color: var(--bp-pink-soft);
}
.elementor .e-c26c449-c607e08 {
  border-color: var(--bp-pink);
}

/* ---------- ヘッダー / PC背景 / メニュー ---------- */
.elementor .e-f00e42a {
  background-color: rgba(255, 92, 158, 0.16) !important;
}
.elementor .e-ce6c4d6-2e3ba87 {
  background-color: #ffe0ec;
  background-blend-mode: multiply;
}
.elementor-484 .elementor-element.elementor-element-a5beab1:not(.elementor-motion-effects-element-type-background) {
  background-color: #ffe0ec;
  background-blend-mode: multiply;
}
.elementor-199 .elementor-element.elementor-element-011301f .elementor-nav-menu--main .elementor-item:hover {
  color: var(--bp-pink-deep);
}
