body.loading {
  overflow: hidden;
}

.loading-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  /* display: none; */
  /* 初期状態では非表示 */
  flex-direction: column;
}

.logo {
  width: 240px;
  opacity: 0;
  transform: scale(0.8);
  animation: fadeInZoom 2s ease-in-out forwards;
}

.logo-text {
  font-size: 1.5rem;
  opacity: 0;
  animation: fadeInText 2s ease-in-out 1.5s forwards;
  margin: 0;
}

@keyframes fadeInZoom {
  0% {
    opacity: 0;
    transform: scale(0.8);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes fadeInText {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}