/* 全体リセット */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  font-family: Arial, sans-serif;
}

/* グラデーション背景 */
#background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #1f3134, #000b00, #1f3134);
  background-size: 200% 100%;
  animation: gradient-animation 120s linear infinite alternate; /* 動作 */
}

/* グラデーションのアニメーション */
@keyframes gradient-animation {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0 0;
  }
}

/* ローディング画面 */
.loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #171717;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.loading-line {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 4px;
  width: 0;
  background-color: #000;
  animation: loading-animation 2s linear forwards;
}

@keyframes loading-animation {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

/* ロゴのスタイル */
.logo-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 200px;
  height: 200px;
  background-image: url('logo.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 1s ease;
  pointer-events: none;
}
