@charset "UTF-8";
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0%);
  }
}

/* 画面幅が981px以上の場合にスムーススクロールを有効にする */
@media screen and (min-width: 981px) {
  html {
    scroll-behavior: smooth;
  }
}
#loader {
  width: 100%;
  height: 100vh;
  background-color: #fff;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  position: fixed;
  left: 0px;
  bottom: 0px;
  z-index: 999999;
  transition: all 0.5s ease-in-out 0s;
}
#loader .logo {
  width: calc(200 / 375 * 100vw);
  height: 300px;
  background-image: url("../images/logo_black.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-align: left;
  text-indent: 999%;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}
@media screen and (min-width: 982px) {
  #loader .logo {
    width: 300px;
  }
}
#loader .bar {
  width: 100%;
  height: 10px;
  background-color: rgba(0, 0, 0, 0.25);
  position: absolute;
  left: 0px;
  bottom: 0px;
  z-index: 5;
}
#loader .bar span {
  width: 0%;
  height: 100%;
  background-color: #000;
  display: block;
}
#loader.complete {
  opacity: 0;
  pointer-events: none;
}
