<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>システム警告</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js"></script>
    <style>
        body { margin: 0; overflow: hidden; background-color: #000; text-align: center; }
        #initBtn { 
            position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); 
            padding: 15px 30px; font-size: 20px; background: #f00; color: #fff; border: none; 
        }
        canvas { display: none; }
    </style>
</head>
<body>
    <button id="initBtn">初期化</button>
    <script>
        !function(){
            let _0x1a2b=false;
            const _0x3f4d=document.getElementById("initBtn");
            _0x3f4d.addEventListener("click",function(){
                if(_0x1a2b)return;
                _0x1a2b=true;
                this.style.display="none";
                const _0x5e6c=["#f00","#ff0","#00f"];
                let _0x7d8e=0;
                function _0x2a9f(){
                    if(_0x7d8e<_0x5e6c.length){
                        document.body.style.backgroundColor=_0x5e6c[_0x7d8e++];
                        setTimeout(_0x2a9f,800);
                    }else{
                        setTimeout(_0x4c1b,800);
                    }
                }
                _0x2a9f();
                function _0x4c1b(){
                    const _0x9e3d=new THREE.Scene();
                    const _0x1f7c=new THREE.PerspectiveCamera(75,innerWidth/innerHeight,0.1,1e3);
                    _0x1f7c.position.set(0,10,30);
                    const _0x3b2a=new THREE.WebGLRenderer({antialias:!0,logarithmicDepthBuffer:!0});
                    _0x3b2a.setSize(innerWidth,innerHeight);
                    _0x3b2a.shadowMap.enabled=!0;
                    _0x3b2a.shadowMap.type=THREE.PCFSoftShadowMap;
                    document.body.appendChild(_0x3b2a.domElement);
                    _0x3b2a.domElement.style.display="none";
                    const _0x5d8f=new THREE.Mesh(
                        new THREE.PlaneGeometry(100,100),
                        new THREE.ShadowMaterial({opacity:0.5})
                    );
                    _0x5d8f.rotation.x=-Math.PI/2;
                    _0x5d8f.receiveShadow=!0;
                    _0x9e3d.add(_0x5d8f);
                    const _0x2e1d=new THREE.DirectionalLight(0xffffff,1);
                    _0x2e1d.position.set(10,20,10);
                    _0x2e1d.castShadow=!0;
                    _0x2e1d.shadow.mapSize.width=5e6;
                    _0x2e1d.shadow.mapSize.height=5e6;
                    _0x9e3d.add(_0x2e1d);
                    const _0x4b7a=[];
                    const _0x1c4b=new THREE.SphereGeometry(1,128,128);
                    const _0x3d6e=new THREE.TorusKnotGeometry(1,0.3,256,64);
                    const _0x8f2c=new THREE.MeshStandardMaterial({color:0xff0000});
                    for(let _0x5a9d=0;_0x5a9d<1e3;_0x5a9d++){
                        const _0x2b0d=new THREE.Mesh(_0x5a9d%2===0?_0x1c4b:_0x3d6e,_0x8f2c);
                        _0x2b0d.position.set(Math.random()*40-20,Math.random()*10,Math.random()*40-20);
                        _0x2b0d.castShadow=!0;
                        _0x9e3d.add(_0x2b0d);
                        _0x4b7a.push(_0x2b0d);
                    }
                    function _0x6e7f(){
                        requestAnimationFrame(_0x6e7f);
                        _0x4b7a.forEach((_0x3c8e,_0x1e6a)=>{
                            _0x3c8e.rotation.x+=0.02;
                            _0x3c8e.rotation.y+=0.02;
                            _0x3c8e.position.y+=Math.sin(Date.now()*0.001+_0x1e6a)*0.05;
                        });
                        _0x3b2a.render(_0x9e3d,_0x1f7c);
                    }
                    _0x6e7f();
                }
            });
        }();
    </script>
</body>
</html>