@keyframes slow_wave {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(-4px);
  }
}

/* 鼠标上下移动动画 */
@keyframes mouseFadeInUp {
  0% {
    transform: translate(0px, 3px) !important;
  }

  50% {
    transform: translate(0px, -3px) !important;
  }

  100% {
    transform: translate(0px, 0px) !important;
  }
}

@keyframes spin {
  0% {
    transform: rotate(180deg);
  }
}

@keyframes nones {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes circle-opacity {
  0% {
    opacity: 0.8;
    transform: scale(1);
  }

  50% {
    opacity: 0.4;
    transform: scale(1.2);
  }

  98% {
    opacity: 0;
    transform: scale(1.2);
  }

  100% {
    opacity: 0;
    transform: scale(1);
  }
}

@-webkit-keyframes fadeIncustom1 {
  0% {
    top: 165px;
    left: 50%;
    opacity: 0.2;
  }

  100% {
    opacity: 1;
  }
}

@keyframes spinon {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* 上下跳动 */
@-webkit-keyframes buzz-out {
  0% {
    transform: translate3d(0, -5px, 0);
  }

  70% {
    transform: translate3d(0, 5px, 0);
  }

  100% {
    transform: translate3d(0, 0px, 0);
  }
}

/* 两球相撞 */
@keyframes crissCrossLeft {
  0% {
    left: -60px;
  }

  50% {
    left: 50%;
    width: 60px;
    height: 60px;
  }

  100% {
    left: 50%;
    width: 600px;
    height: 600px;
  }
}

@keyframes crissCrossRight {
  0% {
    right: -60px;
  }

  50% {
    right: 50%;
    width: 60px;
    height: 60px;
  }

  100% {
    right: 50%;
    width: 600px;
    height: 600px;
  }
}

@keyframes width-in-hor-left {
  0% {
    width: 0;
    transform-origin: 0 100%;
    opacity: 1;
  }

  100% {
    width: var(--ew);
    transform-origin: 0% 100%;
    opacity: 1;
  }
}

@keyframes explode {
  0% {
    width: 0px;
    height: 0px;
    margin-left: 0px;
    margin-top: 0px;
    background: rgba(42, 53, 80, 0.2);
  }

  100% {
    width: 400px;
    height: 400px;
    margin-left: -200px;
    margin-top: -200px;
    background: rgba(45, 72, 255, 0.8);
  }
}

@keyframes desplode {
  0% {
    width: 400px;
    height: 400px;
    margin-left: -200px;
    margin-top: -200px;
    background: rgba(45, 72, 255, 0.8);
  }

  100% {
    width: 0px;
    height: 0px;
    margin-left: 0px;
    margin-top: 0px;
    background: rgba(80, 91, 129, 0.6);
  }
}

@keyframes shake-vertical {

  0%,
  100% {
    transform: translateY(0);
  }

  25% {
    transform: translateY(var(--ey));
  }

  75% {
    transform: translateY(var(--sy));
  }
}

@keyframes fadeIn3 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, var(--sy), 0);
    transform: translate3d(0, var(--sy), 0);
    visibility: hidden;
  }

  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    visibility: visible;
  }
}

@keyframes fadeIn2 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(var(--sx), 0, 0);
    transform: translate3d(var(--sx), 0, 0);
    visibility: hidden;
  }

  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    visibility: visible;
  }
}

@keyframes fadeOut3 {
  0% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    visibility: visible;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, var(--ey), 0);
    transform: translate3d(0, var(--ey), 0);
    visibility: hidden;
  }
}

@keyframes fadeOut2 {
  0% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    visibility: visible;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(var(--ex), 0, 0);
    transform: translate3d(var(--ex), 0, 0);
    visibility: hidden;
  }
}

@keyframes slideIn2 {
  0% {
    -webkit-transform: translate3d(var(--sx), 0, 0);
    transform: translate3d(var(--sx), 0, 0);
    visibility: hidden;
  }

  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    visibility: visible;
  }
}

@keyframes slideOut2 {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(var(--ex), 0, 0);
    transform: translate3d(var(--ex), 0, 0);
    visibility: hidden;
  }
}

@keyframes ripple {
  0% {
    transform: scale(0.3);
    opacity: 0;
  }

  50% {
    transform: scale(1);
    opacity: 1;
  }

  100% {
    transform: scale(1.3);
    opacity: 0;
  }
}