/* 初始化 */
* {
    margin: 0;
    padding: 0;
}

body {
    /* 可视化高度100vh */
    height: 100vh;
}

.box {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url('images/君の名は.png') no-repeat;
    background-size: cover;
    background-position: center;
    /* 添加动画效果 */
    animation: zoom 5s linear infinite;
}

button {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    top: 50%;
    left: 50%;
    padding: 30px;
    border: 0;
    border-radius: 30px;
    font-size: 16px;
    font-family: 'Poppins', sans-serif;
    color: #fff;
    background-color: #9d86fb;
    transform: translateX(-50%);
    cursor: pointer;
    /* background-color: #14b7ee; */
    box-shadow: 0 0 3px rgba(255, 255, 255, 0.1);
    overflow: hidden;
    transition: all 0.5s;
}

button::before,
button::after {
    content: "";
    position: absolute;
    z-index: -2;

    width: 200px;
    height: 300px;
    background: conic-gradient(transparent, transparent, transparent, #14b7ee);

    animation: rotate 4s linear infinite;
}



button::after {
    background: conic-gradient(transparent, transparent, transparent, #7467ff);
    animation-delay: -2s;
}

button div {
    position: absolute;
    z-index: -1;
    inset: 3px;
    background-color: #7467ff;
    border-radius: 30px;

}

@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* 流行头部 */
span {
    position: absolute;
    top: 50%;
    right: 50%;
    width: 4px;
    height: 4px;
    background-color: #e9cdec;
    border-radius: 50%;
    /* 添加流行动画 */
    animation: poplurFall 3s linear infinite;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.1),
        0 0 0 3px rgba(255, 255, 255, 0.2),
        0 0 10px rgba(255, 255, 255, 0.5);

}

/* 流行尾部 */
span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%);
    width: 300px;
    height: 3px;
    background: linear-gradient(90deg, #14b7ee, #9d86fb, transparent);
}

span:nth-child(1) {
    top: 0;
    right: 0;
    animation-delay: 0s;
    animation-duration: 4s;
}

span:nth-child(2) {
    top: 0;
    right: 1200px;
    animation-delay: 0s;
    animation-duration: 4s;
}

span:nth-child(3) {
    top: 0;
    right: 800px;
    animation-delay: 1s;
    animation-duration: 5s;
}

span:nth-child(4) {
    top: 0;
    right: 600px;
    animation-delay: 2s;
    animation-duration: 6s;
}

span:nth-child(5) {
    top: 0;
    right: 400px;
    animation-delay: 3s;
    animation-duration: 4s;
}

span:nth-child(6) {
    top: 0;
    right: 200px;
    animation-delay: 2s;
    animation-duration: 5s;
}

span:nth-child(7) {
    top: 0;
    right: 100px;
    animation-delay: 2s;
    animation-duration: 5s;
}

span:nth-child(8) {
    top: 0;
    right: 50px;
    animation-delay: 2.5s;
    animation-duration: 5s;
}



span:nth-child(9) {
    top: 0;
    right: 0;
    animation-delay: 4s;
    animation-duration: 5s;
}

span:nth-child(10) {
    top: 0;
    right: 0;
    animation-delay: 5s;
    animation-duration: 5s;
}

span:nth-child(11) {
    top: 0;
    right: 1000px;
    animation-delay: 5s;
    animation-duration: 5s;
}

span:nth-child(12) {
    top: 0;
    right: 1100px;
    animation-delay: 5s;
    animation-duration: 5s;
}

span:nth-child(13) {
    top: 0;
    right: 1100px;
    animation-delay: 6s;
    animation-duration: 5s;
}

span:nth-child(14) {
    top: 0;
    right: 1100px;
    animation-delay: 7s;
    animation-duration: 5s;
}

span:nth-child(15) {
    top: 0;
    right: 1200px;
    animation-delay: 8s;
    animation-duration: 10s;
}

span:nth-child(16) {
    top: 0;
    right: 1200px;
    animation-delay: 8s;
    animation-duration: 10s;
}

span:nth-child(17) {
    top: 0;
    right: 1200px;
    animation-delay: 8s;
    animation-duration: 7s;
}

span:nth-child(18) {
    top: 0;
    right: 1200px;
    animation-delay: 8s;
    animation-duration: 5s;
}

/* 定义动画 */
/* 背景缩放动画 */
@keyframes zoom {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.1);
    }
}

/* 添加流星动画 */
@keyframes poplurFall {
    0% {
        transform: rotate(345deg) translateX(0);
        opacity: 0;
    }

    70% {
        opacity: 1;
    }

    100% {
        transform: rotate(315deg) translateX(-1000px);
        opacity: 0;
    }
}