/*:root{ --moving-grad: linear-gradient(-135deg, #af6d41, #ac9a81, #adc2b9, #d2e3de); }*/
:root {
  /* --moving-grad: linear-gradient(-135deg, #080107, #1e081c, #1d021b, #251824); */
  /* --moving-grad: linear-gradient(-135deg, #292328, #000, #1d021b, #000); */
  --moving-grad: linear-gradient(-135deg, #000, #000, #000, #000);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background-image: var(--moving-grad);
  background-size: 200% 200%;
  animation: gradientMove 6s ease infinite;
}

body.layer::before {
  z-index: 3;
}

.mainVisual {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  background: #000;
}

.image-layer::after {
  background-image: var(--moving-grad);
  background-size: 200% 200%;
  background-attachment: fixed;
  animation: gradientMove 6s ease infinite;
}

.image-layer {
  position: relative;
  width: 100%;
  height: 100vh;
  z-index: 2;
  pointer-events: none;


}

.image-layer::after {
  position: absolute;
  content: '';
  padding-bottom: 100%;
  -webkit-mask-image: url('../../common/imgs/mask-03a.webp');
  mask-image: url('../../common/imgs/mask-03a.webp');
  width: 100%;
  top: 100vh;
  left: 0;
  -webkit-mask-size: 100% auto;
  mask-size: 100% auto;
  -webkit-mask-position: center -100%;
  mask-position: center -100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;

}

.wrap-content {
  margin: 60vh auto 0;
}

.bottomArea {
  position: relative;
  z-index: 5;
}

@media (max-width: 768px) {
  .image-layer {
    -webkit-mask-size: 400% auto;
    mask-size: 400% auto;
    height: 100vh;
    margin: 20vh 0 0;
  }

  .image-layer::after {
    position: absolute;
    content: '';
    padding-bottom: 100%;
    -webkit-mask-image: url(../../common/imgs/mask-03a.webp);
    mask-image: url(../../common/imgs/mask-03a.webp);
    width: 100%;
    top: 70%;
    left: 0;
    -webkit-mask-size: 100% auto;
    mask-size: 100% auto;
    -webkit-mask-position: center -100%;
    mask-position: center -150%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    pointer-events: none;
    animation: unset;

  }

  .wrap-content {
    margin: 0 auto;
    padding-top: 0;
    background-image: var(--moving-grad);
    background-size: 400% 400%;
    background-attachment: fixed;
  }

  .bottomArea {
    font-size: 12px;
    line-height: 1.4rem;
    color: #fff;
  }

}

.wrap-bg02 {
  position: relative;
  z-index: 3;
}