body {



    margin: 0;



    color: #00ff99;



    font-family: sans-serif;



    overflow-x: hidden;



    background-image: url("Abandoned-Laboratory3.jpg");



    background-size: cover;



    background-position: center;



    background-attachment: fixed;



    background-color: black;



}



/* TOP画面 */



.hero {



    height: 100vh;



    display: flex;



    flex-direction: column;



    justify-content: center;



    align-items: center;



    text-align: center;



    background: rgba(0, 0, 0, 0.6);



}



.hero h1 {



    font-size: 4rem;



    letter-spacing: 10px;



    margin-bottom: 30px;



}



button {



    padding: 15px 40px;



    font-size: 1.2rem;



    background: transparent;



    color: #00ff99;



    border: 2px solid #00ff99;



    cursor: pointer;



    transition: 0.3s;



}



button:hover {



    background: #00ff99;



    color: black;



}



/* STORY */



.story {



    width: 80%;



    max-width: 900px;



    margin: auto;



    padding: 100px 0;



}



.story h2 {



    font-size: 2.5rem;



    margin-bottom: 50px;



}



#typing {



    width: 100%;



    font-size: 1.3rem;



    line-height: 2.2;



    white-space: pre-line;



}



/* 最初は非表示 */



.hidden {



    opacity: 0;



}

.info {



    margin-bottom: 40px;



    font-size: 1.2rem;



    line-height: 2;



    letter-spacing: 3px;



    text-align: center;



    color: #c8ffd8;

}

/* ノイズ */



.noise {



    position: fixed;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    background-image: url("https://www.transparenttextures.com/patterns/asfalt-dark.png");



    opacity: 0.08;



    pointer-events: none;



    z-index: 999;



}



/* 赤フラッシュ */



.flash {



    position: fixed;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    background: red;



    opacity: 0;



    pointer-events: none;



    z-index: 1000;



}



/* ENTERボタン脈動 */



button {



    animation: pulse 2s infinite;



}



@keyframes pulse {



    0% {



        box-shadow: 0 0 5px #00ff99;



    }



    50% {



        box-shadow: 0 0 25px #00ff99;



    }



    100% {



        box-shadow: 0 0 5px #00ff99;



    }



}



/* 赤グラデ */



body::before {



    content: "";



    position: fixed;



    top: 0;



    left: 0;



    width: 100%;



    height: 100%;



    background: radial-gradient(circle, rgba(255,0,0,0.15) 0%, rgba(0,0,0,0.7) 70%);



    pointer-events: none;



}



/* 最後のメッセージ */



.last-message {



    margin-top: 100px;



    font-size: 2rem;



    text-align: center;



    color: red;



    opacity: 0;



    transition: 2s;



}



