/* ===== fx.css v2 : 先進的モーション（常時オン・はっきり） ===== */

/* スクロール進捗バー */
#fxprog{position:fixed;top:0;left:0;height:3px;width:0;z-index:9999;
  background:linear-gradient(120deg,#8b7bff,#6a78ff 45%,#46e3d2);
  box-shadow:0 0 12px rgba(106,120,255,.8)}

/* カーソル追従グロー（はっきり目・通常合成で明暗どちらでも見える） */
#fxglow{position:fixed;left:-400px;top:-400px;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(150,165,255,.30),rgba(70,227,210,.10),transparent 72%);
  pointer-events:none;transform:translate(-50%,-50%);z-index:2;opacity:0;transition:opacity .4s}

/* ヒーローのニューラルネット canvas */
#fxneural{position:absolute;inset:0;z-index:1;pointer-events:none}
.hero .hero-in,.hero .wrap{position:relative;z-index:5}

/* 3Dチルト用 */
.cards.four{perspective:1100px}
.cards.four .c,.themecard,.scell{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s,border-color .25s;
  transform-style:preserve-3d;will-change:transform}
.cards.four .c:hover{box-shadow:0 32px 70px rgba(50,36,140,.30);border-color:rgba(106,120,255,.5)}

/* マグネティック・ボタン */
.btn-w,.btn-o,.btn{transition:transform .18s cubic-bezier(.2,.8,.2,1)}

/* スクランブル中は少し発光 */
.fx-scrambling{filter:drop-shadow(0 0 12px rgba(120,140,255,.6))}

/* 発光グラデ・ライン（任意ユーティリティ） */
.fxglowline{height:2px;width:100%;border-radius:2px;background:linear-gradient(120deg,#8b7bff,#6a78ff,#46e3d2);
  box-shadow:0 0 16px rgba(106,120,255,.7);animation:fxgl 3s ease-in-out infinite}
@keyframes fxgl{50%{opacity:.55;box-shadow:0 0 26px rgba(70,227,210,.8)}}
