.lp-cursor-glow{
  position: fixed;
  left: 0;
  top: 0;

  /* “点”として感じるサイズ */
  width: 40px;
  height: 40px;

  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 9999;

  /* 中心を「光！」に：白っぽい芯 → 赤い芯 → 透明 の3段 */
  background: radial-gradient(circle,
    rgba(255,255,255,0.95) 0%,
    rgba(255,255,255,0.35) 18%,
    rgba(255,60,60,0.55) 32%,
    rgba(214,0,0,0.15) 55%,
    rgba(214,0,0,0.00) 72%
  );

  /* ぼかしは小さく。中心の芯が残る程度 */
  filter: blur(1.2px);

  opacity: 0;
  transition: opacity .12s ease;
  will-change: transform;
}

.lp-cursor-glow.is-active{ opacity: 1; }

/* 外側：さりげない“膜”だけ。大きくしない */
.lp-cursor-glow::after{
  content:"";
  position:absolute;
  inset:-4px; /* ここが外側サイズ。-4〜-8で調整 */

background: radial-gradient(circle,
  rgba(255,255,255,0.9) 0%,
  rgba(255,255,255,0.25) 14%,
  rgba(255,60,60,0.45) 28%,
  rgba(214,0,0,0.12) 50%,
  rgba(214,0,0,0.00) 70%
);


  filter: blur(1.5px);
  pointer-events:none;
}

/* 黒背景で負けない：加算（効く環境だけ） */
@supports (mix-blend-mode: plus-lighter){
  .lp-cursor-glow{ mix-blend-mode: plus-lighter; }
}

/* モバイル・タッチはオフ */
@media (hover: none){
  .lp-cursor-glow{ display: none; }
}
@media (prefers-reduced-motion: reduce){
  .lp-cursor-glow{ display: none; }
}

