@keyframes sparkle {
    0% {
        transform: scale(0.5) rotate(0deg);
        text-shadow: 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 10px rgba(128,255,255,1), 0 0 20px rgba(64,128,255,1), 0 0 30px rgba(128,255,255,1)
    }
    15% {
        transform: scale(1) rotate(10deg);
        text-shadow:4px 4px 0px rgba(0,0,0,0.2), 0px 0px 10px rgba(128,255,255,1), 0 0 20px rgba(64,128,255,1), 0 0 30px rgba(128,255,255,1)
    }
    30% {
        transform: scale(0.5) rotate(20deg);
    }
    100% {
        transform: scale(0) rotate(0deg);
    }
}

@keyframes tail {
    0% { width: 0; }
    15% { width: 500px; }
    30% { width: 0; }
    100% { width: 0; }
}

@keyframes shining {
    0% { width: 0; }
    25% { width: 30px; }
    50% { width: 0; }
    100% { width: 0; }
}

@keyframes shooting {
    0% { transform: translateX(0); }
    30% { transform: translateX(1700px); }
    100% { transform: translateX(1700px); }
}

@keyframes logo_ani {
    0% {
        transform:scale(1);
        text-shadow:0px 0px 0px rgba(0,0,0,0), 0px 0px 0px rgba(128,255,255,0), 0 0 0px rgba(64,128,255,0), 0 0 0px rgba(128,255,255,0);
    }
    10% {
        transform:scale(1);
        text-shadow:0px 0px 0px rgba(0,0,0,0), 0px 0px 0px rgba(128,255,255,0), 0 0 0px rgba(64,128,255,0), 0 0 0px rgba(128,255,255,0);
    }
    15% {
        text-shadow:4px 4px 0px rgba(0,0,0,0.2), 0px 0px 10px rgba(128,255,255,1), 0 0 20px rgba(64,128,255,1), 0 0 30px rgba(128,255,255,1), 0 0 50px rgba(128,255,255,1);
        -ms-text-shadow:4px 4px 0px rgba(0,0,0,0.2), 0px 0px 10px rgba(128,255,255,1), 0 0 20px rgba(64,128,255,1), 0 0 30px rgba(128,255,255,1)
    }
    25% {
        text-shadow:0px 0px 0px rgba(0,0,0,0), 0px 0px 0px rgba(128,255,255,0), 0 0 0px rgba(64,128,255,0), 0 0 0px rgba(128,255,255,0);
        -ms-text-shadow:0px 0px 0px rgba(0,0,0,0), 0px 0px 0px rgba(128,255,255,0), 0 0 0px rgba(64,128,255,0), 0 0 0px rgba(128,255,255,0);
    }
    100% {
        text-shadow:0px 0px 0px rgba(0,0,0,0), 0px 0px 0px rgba(128,255,255,0), 0 0 0px rgba(64,128,255,0), 0 0 0px rgba(128,255,255,0);
        -ms-text-shadow:0px 0px 0px rgba(0,0,0,0), 0px 0px 0px rgba(128,255,255,0), 0 0 0px rgba(64,128,255,0), 0 0 0px rgba(128,255,255,0);
    }
}

@keyframes star-ani {
    0% {
        opacity:0;
        transform:scale(0) rotate(0) translate3d(0, 0, 0);
    }
    5% {
        opacity:1;
        transform:scale(1) rotate(0) translate3d(-540px, 540px, 0);
        -ms-transform:scale(1) rotate(0) translate3d(-540px, 540px, 0);
    }
    30% {
        opacity:0;
        transform:scale(1) rotate(0) translate3d(-1080px, 1080px, 0);
        -ms-transform:scale(1) rotate(0) translate3d(-1080px, 1080px, 0);
    }
    100% {
        opacity:0;
        transform:scale(1) rotate(0) translate3d(-1080px, 1080px, 0);
        -ms-transform:scale(1) rotate(0) translate3d(-1080px, 1080px, 0);
    }
}

@keyframes shooting-ani {
    0% { }
    5% { transform:scale(1) rotate(-45deg) translate(0px, 0px); }
    90% { transform:scale(0.5) rotate(-45deg) translate(0px, -1px); }
    100% { transform:scale(0.5) rotate(-45deg) translate(0px, -1px); }
}

@keyframes dotAni {
    0% {
        opacity: 0;
    }
    25% {
        opacity: 0.5;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0.5;
    }
    100% {
        opacity: 0;
    }
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
        -ms-transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
        transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
        -ms-transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
        transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
    }
}

@-ms-keyframes spin {
    100% {
        -webkit-transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
        -ms-transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
        transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
    }
    0% {
        -webkit-transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
        -ms-transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
        transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
    }
}

@keyframes spin {
    100% {
        -webkit-transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
        -ms-transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
        transform: rotateY(1800deg) rotateX(720deg) rotateZ(0deg);
    }
    0% {
        -webkit-transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
        -ms-transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
        transform: rotateY(0deg) rotateX(0deg) rotateZ(0deg);
    }
}

@-webkit-keyframes spinShadow {
    0% {
        transform: rotate(0deg) scale(1.2, 1.2) translateX(0px);
    }
    50% {
        transform: rotate(-180deg) scale(1, 0.9) translateX(5px);
    }
    75% {
        transform: rotate(-270deg) scale(1, 1) translateX(3px);
    }
    100% {
        transform: rotate(-360deg) scale(1.2, 1.2) translateX(0px);
    }
}

@keyframes spinShadow {
    0% {
        transform: rotate(0deg) scale(1.2, 1.2) translateX(0px);
    }
    50% {
        transform: rotate(-180deg) scale(1, 0.9) translateX(5px);
    }
    75% {
        transform: rotate(-270deg) scale(1, 1) translateX(3px);
    }
    100% {
        transform: rotate(-360deg) scale(1.2, 1.2) translateX(0px);
    }
}

@-webkit-keyframes move1 {
    0% {
        opacity:1;
        -webkit-transform: rotateZ(0deg) rotateY(0deg) translateZ(99.5px);
        transform: rotateZ(0deg) rotateX(0deg) rotateY(0deg) translateZ(99.5px);
    }
    50% {
        opacity:0;
        -webkit-transform: rotateZ(0deg) rotateY(0deg) translateZ(0px);
        transform: rotateZ(0deg) rotateX(0deg) rotateY(0deg) translateZ(0px);
    }
    100%{
        opacity:1;
        -webkit-transform: rotateZ(0deg) rotateY(0deg) translateZ(0px);
        transform: rotateZ(0deg) rotateX(0deg) rotateY(0deg) translateZ(0px);
    }
}

@keyframes move1 {
    0% {
        opacity:1;
        -webkit-transform: rotateZ(0deg) rotateY(0deg) translateZ(99.5px);
        transform: rotateZ(0deg) rotateX(0deg) rotateY(0deg) translateZ(99.5px);
    }
    50% {
        opacity:0;
        -webkit-transform: rotateZ(0deg) rotateY(0deg) translateZ(0px);
        transform: rotateZ(0deg) rotateX(0deg) rotateY(0deg) translateZ(0px);
    }
    100%{
        opacity:1;
        -webkit-transform: rotateZ(0deg) rotateY(0deg) translateZ(0px);
        transform: rotateZ(0deg) rotateX(0deg) rotateY(0deg) translateZ(0px);
    }
}

/* for Chrome and Chrome */
@-webkit-keyframes animate1 {
    0% {
        -webkit-transform: perspective(1200px) rotateX(0deg) rotateY(90deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: perspective(1200px) rotateX(360deg) rotateY(450deg) rotateZ(0deg);
    }
}

@-webkit-keyframes animate2 {
    0% {
        -webkit-transform: perspective(1200px) rotateX(0deg) rotateY(270deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: perspective(1200px) rotateX(360deg) rotateY(630deg) rotateZ(0deg);
    }
}

@-webkit-keyframes animate3 {
    0% {
        -webkit-transform: perspective(1200px) rotateX(90deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: perspective(1200px) rotateX(450deg) rotateY(0deg) rotateZ(-360deg);
    }
}

@-webkit-keyframes animate4 {
    0% {
        -webkit-transform: perspective(1200px) rotateX(-90deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: perspective(1200px) rotateX(270deg) rotateY(0deg) rotateZ(360deg);
    }
}

@-webkit-keyframes animate5 {
    0% {
        -webkit-transform: perspective(1200px) rotateX(0deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: perspective(1200px) rotateX(360deg) rotateY(360deg) rotateZ(0deg);
    }
}

@-webkit-keyframes animate6 {
    0% {
        -webkit-transform: perspective(1200px) rotateX(0deg) rotateY(180deg) rotateZ(0deg);
    }
    100% {
        -webkit-transform: perspective(1200px) rotateX(360deg) rotateY(540deg) rotateZ(0deg);
    }
}

/* for Firefox and IE10 */
@keyframes animate0 {
    0% {
        transform: perspective(1200px) rotateX(0deg) rotateY(90deg) rotateZ(0deg);
    }
    100% {
        transform: perspective(1200px) rotateX(360deg) rotateY(450deg) rotateZ(0deg);
    }
}

@keyframes animate1 {
    0% {
        transform: perspective(1200px) rotateX(0deg) rotateY(90deg) rotateZ(0deg)
    }
    100% {
        transform: perspective(1200px) rotateX(360deg) rotateY(450deg) rotateZ(0deg);
    }
}

@keyframes animate2 {
    0% {
        transform: perspective(1200px) rotateX(0deg) rotateY(270deg) rotateZ(0deg);
    }
    100% {
        transform: perspective(1200px) rotateX(360deg) rotateY(630deg) rotateZ(0deg);
    }
}

@keyframes animate3 {
    0% {
        transform: perspective(1200px) rotateX(90deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        transform: perspective(1200px) rotateX(450deg) rotateY(0deg) rotateZ(-360deg);
    }
}

@keyframes animate4 {
    0% {
        transform: perspective(1200px) rotateX(-90deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        transform: perspective(1200px) rotateX(270deg) rotateY(0deg) rotateZ(360deg);
    }
}

@keyframes animate5 {
    0% {
        transform: perspective(1200px) rotateX(0deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        transform: perspective(1200px) rotateX(360deg) rotateY(360deg) rotateZ(0deg);
    }
}

@keyframes animate6 {
    0% {
        transform: perspective(1200px) rotateX(0deg) rotateY(180deg) rotateZ(0deg);
    }
    100% {
        transform: perspective(1200px) rotateX(360deg) rotateY(540deg) rotateZ(0deg);
    }
}