.cursorCircle {
  height: 66.875vw;
  left: 0;
  position: fixed;
  top: 0;
  width: 66.875vw;
  opacity: 0;
  -webkit-transition: opacity 0.3s 0s ease-out;
  -moz-transition: opacity 0.3s 0s ease-out;
  -o-transition: opacity 0.3s 0s ease-out;
  transition: opacity 0.3s 0s ease-out;
}
.cursorCircle.show {
  opacity: 1;
}
.cursorCircle.show.animate .innerCircle {
  animation: backgroundCircle 16s infinite;
}
.cursorCircle .innerCircle {
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 100%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  -moz-transform: translate3d(-50%, -50%, 0);
  -o-transform: translate3d(-50%, -50%, 0);
  -ms-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  background: radial-gradient(rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 70%);
  opacity: 0;
}
@media all and (max-width: 1080px) {
  .cursorCircle {
    height: 99.071vw;
    left: 0;
    position: fixed;
    top: 0;
    width: 99.071vw;
  }
}
@media all and (max-width: 580px) {
  .cursorCircle {
    height: 98.274vw;
    left: 0;
    position: fixed;
    top: 0;
    width: 98.274vw;
  }
}
@keyframes backgroundCircle {
  0% {
    -webkit-transform: translate3d(-50%, -50%, 0);
    -moz-transform: translate3d(-50%, -50%, 0);
    -o-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    opacity: 0.3;
  }
  20% {
    -webkit-transform: translate3d(-10%, -30%, 0);
    -moz-transform: translate3d(-10%, -30%, 0);
    -o-transform: translate3d(-10%, -30%, 0);
    -ms-transform: translate3d(-10%, -30%, 0);
    transform: translate3d(-10%, -30%, 0);
    opacity: 0.3;
  }
  40% {
    -webkit-transform: translate3d(10%, -10%, 0);
    -moz-transform: translate3d(10%, -10%, 0);
    -o-transform: translate3d(10%, -10%, 0);
    -ms-transform: translate3d(10%, -10%, 0);
    transform: translate3d(10%, -10%, 0);
    opacity: 0.5;
  }
  60% {
    -webkit-transform: translate3d(30%, 20%, 0);
    -moz-transform: translate3d(30%, 20%, 0);
    -o-transform: translate3d(30%, 20%, 0);
    -ms-transform: translate3d(30%, 20%, 0);
    transform: translate3d(30%, 20%, 0);
    opacity: 0.2;
  }
  80% {
    -webkit-transform: translate3d(-30%, -10%, 0);
    -moz-transform: translate3d(-30%, -10%, 0);
    -o-transform: translate3d(-30%, -10%, 0);
    -ms-transform: translate3d(-30%, -10%, 0);
    transform: translate3d(-30%, -10%, 0);
    opacity: 0.4;
  }
  100% {
    -webkit-transform: translate3d(-50%, -50%, 0);
    -moz-transform: translate3d(-50%, -50%, 0);
    -o-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    opacity: 0.3;
  }
}
