        @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
        html { scroll-behavior: smooth; }
        body { font-family: 'Noto Sans JP', sans-serif; }
        .hero-glow { background-image: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(124, 58, 237, 0.3), transparent); }
        .bg-dot-pattern { background-image: radial-gradient(circle, rgba(0, 0, 0, 0.05) 1px, transparent 1px); background-size: 20px 20px; }
        @keyframes orbit {
          from { transform: rotate(0deg) translateX(160px) rotate(0deg); }
          to   { transform: rotate(360deg) translateX(160px) rotate(-360deg); }
        }
        @keyframes orbit-reverse {
          from { transform: rotate(0deg) translateX(240px) rotate(0deg); }
          to   { transform: rotate(-360deg) translateX(240px) rotate(360deg); }
        }
        @keyframes pulse-glow {
          0%, 100% { box-shadow: 0 0 20px rgba(56, 189, 248, 0.3), 0 0 40px rgba(56, 189, 248, 0.2); }
          50% { box-shadow: 0 0 40px rgba(56, 189, 248, 0.5), 0 0 80px rgba(56, 189, 248, 0.4); }
        }
        .animate-orbit-1 { animation: orbit 25s linear infinite; }
        .animate-orbit-2 { animation: orbit-reverse 35s linear infinite; }
        .animate-pulse-glow { animation: pulse-glow 4s ease-in-out infinite; }