#wrap { background: url(../img/bg.png) no-repeat; min-height: 100vh; background-position-x: center; background-position-y: bottom; background-size: cover; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 25rem;}
#wrap .img_wrap { text-align: center; }
#wrap .img_wrap img { width: 80%; max-width: 35rem;}


.loader {
  color: #333;
  display: inline-block;
  position: relative;
  font-size: 2rem;
  box-sizing: border-box;
}
.loader::after {
  content: '';  
  width: 3px;
  height: 3px;
  background: currentColor;
  position: absolute;
  bottom: 5px;
  right: -7px;
  box-sizing: border-box;
  animation: animloader 1.5s linear infinite;
}

@keyframes animloader {
  0% {
    box-shadow: 10px 0 rgba(51, 51, 51, 0), 20px 0 rgba(51, 51, 51, 0);
  }
  50% {
    box-shadow: 10px 0 rgba(51, 51, 51, 1), 20px 0 rgba(51, 51, 51, 0);
  }
  100% {
    box-shadow: 10px 0 rgba(51, 51, 51, 1), 20px 0 rgba(51, 51, 51, 1);
  }
}