.loader-wrap {
	position: fixed;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #EAE9E6;/*★背景カラー*/
	z-index: 10000;
	/*background-image: url(../img/loading.svg);*/
	background-size: 100px;
	background-repeat: no-repeat;
	background-position: center center;
}

/*LCP対策 loader-wrap を上に被せるが、速やかに外す */
.loader-wrap {
  transition: opacity 0.5s ease;
  opacity: 1;
  pointer-events: none;
}
.loader-wrap.hidden {
  opacity: 0;
  pointer-events: none;
}

/*ローディングイメージを変える場合、以下を変える*/

.loader {
  width: 10vw;
  height: 1px;
  display: inline-block;
  position: relative;
  background: #C2C2C2;
  overflow: hidden;
}
@media screen and (max-width: 549px) {
  .loader {
    width: 50vw;
  }
}
.loader::after {
  content: '';  
  box-sizing: border-box;
  width: 0;
  height: 4.8px;
  background:#3D3D3D;
  position: absolute;
  top: 0;
  left: 0;
  animation: animFw 5s linear infinite;
}

@keyframes animFw {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}