.roulette-header {
    padding: 36px 0 18px;
    text-align: center;
}

.roulette-header__ttl {
    font-size: 2.16rem;
    font-weight: 500;
}

.roulette-header__point {
    display: inline-block;
    margin: 27px 0 0;
    font-size: 6.3rem;
    font-weight: 500;
    font-family: 'Josefin Sans', sans-serif;
    background: linear-gradient(0deg, #69C0AF, #576BF5);
    background: -webkit-linear-gradient(0deg, #69C0AF, #576BF5);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.roulette-body {
    margin: auto;
    padding: 0 27px 36px;
    box-sizing: border-box;
}

#roulette-box {
    position: relative;
    margin: auto;
    width: 270px;
    height: 270px;
    border-radius: 50%;
    border: 2px solid #ccc;
}

#roulette-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#roulette-pin {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 108px;
    height: 108px;
    background: #fff;
    border-radius: 50%;
    border: 2px solid #ccc;
}

#roulette-pin::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    right: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 9px 45px 9px;
    border-color: transparent transparent #B7BAC2 transparent;
}

#roulette-pin::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 24px;
    height: 24px;
    background: #8e93a0;
    border-radius: 50%;
    box-shadow: 0 2px 2px rgba(0, 0, 0, .18);
}

#next {
    margin: 36px auto 0;
    width: 108px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    font-size: 1.62rem;
    color: #fff;
    background: #576BF5;
    border-radius: 4px;
    box-shadow: 0 3px 9px rgba(0, 0, 0, .18);
    display: none;
}

#roulette__btn {
    margin: 36px auto 0;
    width: 108px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    font-size: 1.62rem;
    color: #fff;
    background: #576BF5;
    border-radius: 4px;
    box-shadow: 0 3px 9px rgba(0, 0, 0, .18);
}

#roulette__btn.none__btn {
    background: #8e93a0;
    box-shadow: none;
}

.roulette-01 {
    animation: rotate-01 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-02 {
    animation: rotate-02 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-03 {
    animation: rotate-03 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-04 {
    animation: rotate-04 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-05 {
    animation: rotate-05 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-06 {
    animation: rotate-06 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-07 {
    animation: rotate-07 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-08 {
    animation: rotate-08 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

.roulette-09 {
    animation: rotate-09 12s cubic-bezier(0.19, 1, 0.22, 1) forwards;
}

@keyframes rotate-01 {
    100% {
        transform: rotate(1842deg);
    }
}

@keyframes rotate-02 {
    100% {
        transform: rotate(1868deg);
    }
}

@keyframes rotate-03 {
    100% {
        transform: rotate(1908deg);
    }
}

@keyframes rotate-04 {
    100% {
        transform: rotate(1938deg);
    }
}

@keyframes rotate-05 {
    100% {
        transform: rotate(1980deg);
    }
}

@keyframes rotate-06 {
    100% {
        transform: rotate(2026deg);
    }
}

@keyframes rotate-07 {
    100% {
        transform: rotate(2056deg);
    }
}

@keyframes rotate-08 {
    100% {
        transform: rotate(2086deg);
    }
}

@keyframes rotate-09 {
    100% {
        transform: rotate(2115deg);
    }
}

@keyframes rotate-10 {
    100% {
        transform: rotate(2155deg);
    }
}

#filter {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    z-index: 99;
    display: none;
}