@charset "UTF-8";

html {
    font-size: 16px;
    -webkit-text-size-adjust:none;
    color:#2D2D2D;
}
@media screen and (max-width: 640px) {
}

body {
    background: #F03050;
	font-size:12px;
    font-family:'Noto Sans TC',Helvetica,Arial,"微軟正黑體","Microsoft JhengHei",sans-serif;
    min-height: 100vh;
}

img {
    position: relative;
    display: block;
    border: 0;
    width: 100%;
    height: auto;
}
.wrap {
    position: absolute;
    display: block;
    width: 100%;
}
.wrap .preload {
    display: none;
}
.symbol-m {
    display: none !important;
}
@media screen and (max-width: 1000px) {
    .symbol-m {
        display: block !important;
    }
    .symbol-pc {
        display: none !important;
    }
}
.wrap a {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
}

.wrap .footerBox {
    position: relative;
    display: block;
    width: 100%;
    padding: 3vw 0 3vw 0;
    background: #000;
    z-index: 2;
}

.wrap .footerBox .socialmedia {
    position: relative;
    display: block;
    width: 100%;
    font-size: 0;
    text-align: center;
    padding: 15px 0 15px 0;
}
.wrap .footerBox .socialmedia li {
    position: relative;
    display: inline-block;
    width: 8vw;
    max-width: 55px;
    margin: 0 10px 0 10px;
}
.wrap .footerBox .copyright {
    position: relative;
    display: block;
    text-align: center;
    font-size: 12px;
    padding: 15px 0 0 0;
    font-family:Helvetica,Arial,"微軟正黑體","Microsoft JhengHei",sans-serif;
    color: #fff;
}
.wrap .footerBox .copyright br {
    display: none;
}
@media screen and (max-width: 1000px) {
    .wrap .footerBox .socialmedia li {
        max-width: inherit;
        width: 13vw;
    }
    .wrap .footerBox .copyright br {
        display: block;
    }
}
.loading-page {
    position: fixed;
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    left: 0;
    top:0;
    background: rgba(0,0,0,1);
    z-index: 99999;
}
.loading-page.expand {
    display: flex;
}
.loading-page .loading-img {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 20%;
}
.loading-page .loading-img .p1 {
    position: absolute;
    width: 100%;
}
.loading-page .loading-img .p2 {
    position: absolute;
    width: 100%;
    background: #000;
}
.nav {
    position: fixed;
    right: 1vw;
    top:1vw;
    z-index: 99;
    display: block;
    padding: 0.5vw 1vw;
    background: #ED3957;
    border:2px solid #000;
    border-radius: 2vw;
    user-select: none;
}
.nav .nav-menu {
    position: relative;
    display: flex;
    font-size: 1.2vw;
    line-height: 150%;
    color: #000;
}
.nav .nav-menu .dot {
    padding: 0 1vw;
}
.nav .nav-menu li {
    position: relative;
    display: block;
    cursor: pointer;
}
.nav .nav-menu li:hover {
    color: #000;
}

@media screen and (max-width: 1000px) {
    .nav {
        display: none;
        right: 0;
        top:0;
        padding: 2vw;
        width: 100%;
        height: 100vh;
        background: rgba(0,0,0,0.97);
        border: 0px;
    }
    .nav.expand {
        display: block;
    }
    .nav .nav-menu {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-size: 6vw;
        width: 100%;
        height: 100%;
        padding: 0;
        margin: 0;
    }
    .nav .nav-menu .dot {
        display: none;
    }
    .nav .nav-menu li {
        display: block;
        width: 80%;
        margin: 0 auto;
        padding: 4vw;
    }
    .nav .nav-menu li span {
        display: block;
        color: #fff;
        text-align: center;
    }
    .nav .nav-menu li:first-child {
        border: 0px;
    }
    .nav + .burger-btn {
        position: fixed;
        display: block;
        width: 30px;
        height: 25px;
        right: 3vw;
        top:3vw;
        cursor: pointer;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        z-index: 999;
    }
    .nav + .burger-btn span {
        position: absolute;
        display: block;
        width: 80%;
        left: 10%;
        height: 2px;
        background: #fff;
        border-radius: 2px;
        -webkit-transition: -webkit-transform 0.3s ease;
        transition: transform 0.3s ease;
    }
    .nav + .burger-btn span:nth-child(1) {
        -webkit-transform: scale(1,1) translate(0,3px) rotate(0deg);
        transform: scale(1,1) translate(0,3px) rotate(0deg);
    }
    .nav + .burger-btn span:nth-child(2) {
        -webkit-transform: scale(1,1) translate(0,10px) rotate(0deg);
        transform: scale(1,1) translate(0,10px) rotate(0deg);
    }
    .nav + .burger-btn span:nth-child(3) {
        -webkit-transform: scale(1,1) translate(0,17px) rotate(0deg);
        transform: scale(1,1) translate(0,17px) rotate(0deg);
    }
    .nav.expand + .burger-btn span:nth-child(1) {
        -webkit-transform: scale(1,1) translate(0,10px) rotate(45deg);
        transform: scale(1,1) translate(0,10px) rotate(45deg);
    }
    .nav.expand + .burger-btn span:nth-child(2) {
        -webkit-transform: scale(0,1) translate(0,10px) rotate(0deg);
        transform: scale(0,1) translate(0,10px) rotate(0deg);
    }
    .nav.expand + .burger-btn span:nth-child(3) {
        -webkit-transform: scale(1,1) translate(0,10px) rotate(-45deg);
        transform: scale(1,1) translate(0,10px) rotate(-45deg);
    }
}
.main-logo {
    position: absolute;
    display: block;
    width: 10vw;
    left: 1vw;
    top:1vw;
    z-index: 9;
}

#snow {
    position: fixed;
    display: block;
    width: 100%;
    height: 100vh;
    left: 0;
    top:0;
    overflow: hidden;
    z-index: 3;
    pointer-events: none;
}
.snowflake {
    position: absolute;
    width: 50px;
    height: 50px;
    background: url(../images/snow.png) no-repeat center center;
    background-size: contain;
}
@media screen and (max-width: 1000px) {
    .snowflake {
        width: 20px;
        height: 20px;
    }
}
.kv-box {
    position: relative;
    display: block;
    width: 100%;
    height: 100vh;
    max-height: 56vw;
    overflow: hidden;
    user-select: none;
}
.kv-box .kv-pic {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
}
.kv-box .kv-title {
    position: absolute;
    display: block;
    width: 100%;
    height: 20vw;
    bottom:10vw;
}
.kv-box .kv-title .icon1 {
    position: absolute;
    display: block;
    width: 6%;
    left: 69%;
    top:30%;
}
.kv-box .kv-title .icon2 {
    position: absolute;
    display: block;
    width: 3.5%;
    left: 45%;
    top:47%;
}

.kv-box .countdown-box {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40%;
    bottom:2vw;
    left: 30%;
    background: #fff;
    border-radius: 1vw;
    border:2px solid #000;
    padding: 0.5vw 0 2vw 0;
}
.kv-box .countdown-box .countdown-n {
    position: relative;
    display: block;
    font-family:'Kanit';
    font-weight: 500;
    text-align: center;
    color: #231815;
}
.kv-box .countdown-box .countdown-n .t1 {
    position: relative;
    display: block;
    font-size: 4vw;
    line-height: 100%;
}
.kv-box .countdown-box .countdown-n .t2 {
    position: absolute;
    display: block;
    width: 100%;
    font-size: 1.5vw;
    line-height: 100%;
}
@media screen and (max-width: 1000px) {
    .kv-box {
        height: 100vh;
        max-height: 135vw;
    }
    .kv-box .kv-pic{
        width: 210%;
        height: 100%;
        left: -60%;
        top:20vw;
    }
    .kv-box .kv-title {
        width: 130%;
        height: auto;
        left: -15%;
        bottom:28vw;
    }
    .kv-box .countdown-box {
        width: 80%;
        bottom:5vw;
        left: 10%;
        border-radius: 3vw;
        padding: 1vw 0 7vw 0;
    }
    .kv-box .countdown-box .countdown-n .t1 {
        font-size: 10vw;
    }
    .kv-box .countdown-box .countdown-n .t2 {
        font-size: 4vw;
    }
}

.stage-container {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}

.muted-btn {
    position: fixed;
    display: block;
    right: 2vw;
    top:5vw;
    width: 40px;
    cursor: pointer;
    z-index: 4;
}
.muted-btn img:nth-child(2) {
    position: absolute;
    width: 100%;
    left: 0;
    top:0;
}
.muted-btn.current-muted img:nth-child(1) {
    opacity: 1;
}
.muted-btn.current-muted img:nth-child(2) {
    opacity: 0;
}
.muted-btn.current-unmuted img:nth-child(1) {
    opacity: 0;
}
.muted-btn.current-unmuted img:nth-child(2) {
    opacity: 1;
}
@media screen and (max-width: 1000px) {
    .muted-btn {
        width: 25px;
        right: 4vw;
        top:11vw;
        
    }
}

.popup {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    left: 0;
    top:0;
    z-index: 999;
    background: rgba(0,0,0,0.7);
    visibility: hidden;
    pointer-events: none;
}
.popup.expand {
    visibility: visible;
    pointer-events: auto;
}
.popup .popup-container {
    position: relative;
    display: block;
    width: 35vw;
    background: #006645;
    border-radius: 2vw;
    font-size: 1vw;
    border: 2px solid #231815;
}

.popup .close-btn {
    position: absolute;
    display: block;
    width: 3em;
    height: 3em;
    background: #2d2d2d;
    right: -1.5em;
    top:-1.5em;
    z-index: 999;
    border-radius: 50%;
    cursor: pointer;
}
.popup .close-btn::before {
    content: "";
    position: absolute;
    display: block;
    width: 2.4em;
    height: 0.2em;
    background: #fff;
    top:calc(50% - 0.1em);
    left: calc(50% - 1.2em);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.popup .close-btn::after {
    content: "";
    position: absolute;
    display: block;
    width: 2.4em;
    height: 0.2em;
    background: #fff;
    top:calc(50% - 0.1em);
    left: calc(50% - 1.2em);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.popup .close-btn:hover {
    background: #000;
}
.popup .popup-title {
    position: absolute;
    display: block;
    width: 20em;
    top:-3em;
    left: -3em;
}

@media screen and (max-width: 1000px) {
    .popup .popup-container {
        width: 85vw;
        font-size: 2.5vw;
    }
    .popup .popup-container::before {
        left: 1vw;
        top:1vw;
    }
    .popup .close-btn {
        width: 8vw;
        height: 8vw;
        right: -5vw;
        top:-5vw;
    }
    .popup .close-btn::before {
        width: 6vw;
        height: 0.5vw;
        top:calc(50% - 0.25vw);
        left: calc(50% - 3vw);
    }
    .popup .close-btn::after {
        width: 6vw;
        height: 0.5vw;
        top:calc(50% - 0.25vw);
        left: calc(50% - 3vw);
    }
}
.popup .rule-box {
    position: relative;
    display: block;
    width: 100%;
    padding: 3em;
}
.popup .rule-box ul {
    position: relative;
    display: block;
    width: 100%;
    overflow-y: scroll;
    max-height: 60vh;
}
.popup .rule-box ul li{
    position: relative;
    display: block;
    padding: 0 0 0 1em;
    color: #fff;
    line-height: 150%;
    font-size: 1em;
    margin-bottom: 0.5em;
}
.popup .rule-box ul li::before {
    content: "．";
    position: absolute;
    left: 0;
}
.popup .gameinfo-box {
    position: relative;
    display: block;
    width: 100%;
    max-height: 70vh;
    padding: 3em 1.5em;
    overflow-y: scroll;
}
.popup .gameinfo-box dl {
    position: relative;
    display: block;
    width: 100%;
    margin: 2em 0;
    padding: 1em 0;
    border-bottom: 1px solid rgba(255,255,255,0.5);
}
.popup .gameinfo-box dl dt{
    position: relative;
    display: block;
    color: #fff;
    line-height: 150%;
    font-size: 1.2em;
    margin-bottom: 0em;
    font-weight: 700;
    text-align: center;
    width: 100%;
}
.popup .gameinfo-box dl dd{
    position: relative;
    display: block;
    width: 100%;
    color: #fff;
    line-height: 150%;
    font-size: 1em;
    font-weight: 300;
    text-indent: 0;
    text-align: center;
    padding: 0.5em 0;
}
@media screen and (max-width: 1000px) {

}
.popup-form .popup-title {
    left: 8vw;
    top:-4vw;
}
@media screen and (max-width: 1000px) {
    .popup-form .popup-title {
        top:-10vw;
        left: 15vw;
    }
}
.popup-form .form-box {
    position: relative;
    display: block;
    width: 100%;
    padding: 3em 0 1em 0;
}
.popup-form .form-box #shareForm {
    position: relative;
    display: block;
    width: 100%;
}
.popup-form .form-box #shareForm ul {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    padding: 0 2em;
}
.popup-form .form-box #shareForm ul li {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin: 0 0 0.5em 0;
}
.popup-form .form-box #shareForm ul li .textbox {
    position: relative;
    display: block;
    width: 7em;
    font-size: 1.5em;
    line-height: 100%;
    color: #fff;
    background: #ED3957;
    border:2px solid #231815;
    border-radius: 1em;
    padding: 0.5em;
}
.popup-form .form-box #shareForm ul li input {
    position: relative;
    display: block;
    font-size: 1.5em;
    line-height: 100%;
    border:2px solid #231815;
    border-radius: 1em;
    padding: 0.5em;
    border:2px solid #231815; 
    width: 100%;
    flex-shrink: 0;
}
.popup-form .form-box #shareForm ul li.check-box {
    margin: 0 0 1em 0;
}
.popup-form .form-box #shareForm ul li.check-box input {
    width: 1.2em;
    height: 1.2em;
}
.popup-form .form-box #shareForm ul li.check-box span {
    position: relative;
    display: block;
    color: #fff;
    font-size: 0.9em;
    line-height: 120%;
    padding: 0 0 0 0.6em;
    text-indent: -0.4em;
}
.popup-form .form-box #shareForm ul li.check-box span a {
    display: inline;
    position: relative;
    width: auto;
    height: auto;
    text-decoration: underline;
}
.popup-form .form-box #shareForm ul li .textbox + input {
    width: calc(100% - 4em);
    margin: 0 0 0 -3em;
}
.popup-form .form-box #shareForm ul li select {
    position: relative;
    display: block;
    font-size: 1.5em;
    line-height: 100%;
    border:2px solid #231815;
    border-radius: 1em;
    padding: 0.5em;
    border:2px solid #231815; 
    width: 100%;
}
.popup-form .form-box #shareForm ul li .city-selector-set {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: calc(100% - 4em);
    margin: 0 0 0 -3em;
}
.popup-form .form-box #shareForm ul li .city-selector-set div {
    position: relative;
    display: block;
    width: 12.5em;
    flex-shrink: 0;
}
.popup-form .form-box .send-btn {
    position: relative;
    display: block;
    font-size: 2em;
    font-weight: 700;
    line-height: 100%;
    width: 8em;
    margin: 0.5em auto 1em auto;
    background: #F2CF43;
    border-radius: 4em;
    color: #231815;
    padding: 0.5em 1em;
    border:2px solid #231815;
    cursor: pointer;
    text-align: center;
}
.popup-form .form-box .send-btn:hover {
    background: #000;
    color: #fff;
}
.popup-open-gift .open-giftbox {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.popup-open-gift .open-giftbox .open-gift {
    position: relative;
    display: block;
    width: 18vw;
    height: 18vw;
}
.popup-open-gift .open-giftbox .open-gift[data-gift="1"] {
    background: url(../images/open_gift1.png) no-repeat center center;
    background-size: contain;
}
.popup-open-gift .open-giftbox .open-gift[data-gift="2"] {
    background: url(../images/open_gift2.png) no-repeat center center;
    background-size: contain;
}
.popup-open-gift .open-giftbox .open-gift[data-gift="3"] {
    background: url(../images/open_gift3.png) no-repeat center center;
    background-size: contain;
}
.popup-open-gift .open-giftbox .open-gift[data-gift="4"] {
    background: url(../images/open_gift4.png) no-repeat center center;
    background-size: contain;
}
.popup-open-gift .open-giftbox .open-gift[data-gift="5"] {
    background: url(../images/open_gift5.png) no-repeat center center;
    background-size: contain;
}
.popup-open-gift .open-btn {
    position: relative;
    display: block;
    font-size: 2vw;
    font-weight: 700;
    line-height: 100%;
    width: 18vw;
    margin: 2vw auto;
    background: #F2CF43;
    border-radius: 6vw;
    color: #231815;
    padding: 1vw 2vw;
    border:2px solid #231815;
    cursor: pointer;
    text-align: center;
}
.popup-open-gift .open-btn:hover {
    background: #000;
    color: #fff;
}
@media screen and (max-width: 1000px) {
    .popup-open-gift .open-giftbox .open-gift {
        width: 35vw;
        height: 35vw;
    }
    .popup-open-gift .open-btn {
        font-size: 5vw;
        width: 45vw;
        margin: 5vw auto;
        border-radius: 8vw;
        padding: 2vw 5vw;
    }
}
.popup-wait .textbox{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: #fff;
    font-size: 1.5em;
    line-height: 100%;
    padding: 3em 0;
}
.popup-sended .textbox{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: #fff;
    font-size: 1.5em;
    line-height: 100%;
    padding: 3em 0;
}
.popup-promo .promo-box{
    position: relative;
    display: block;
    width: 30vw;
    height: 45vw;
    background: url(../images/popup_promo_bg.png) no-repeat center center;
    background-size: contain;
}
.popup-promo .promo-box .imgbox{
    position: relative;
    display: block;
    width: 40%;
    margin: 15vw auto 0 auto;
    border:2px solid #231815;
    border-radius: 2vw;
    overflow: hidden;
}
.popup-promo .promo-box .textbox {
    position: relative;
    display: block;
    width: 80%;
    margin: 1vw auto 0 auto;
    color: #fff;
}
.popup-promo .promo-box .textbox .t1 {
    position: relative;
    display: block;
    font-size: 1.5vw;
    line-height: 100%;
    padding: 0 0 1vw 0;
}
.popup-promo .promo-box .textbox .t1::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    bottom: 0;
    height: 2px;
    background: #ED3957;
}
.popup-promo .promo-box .textbox .t1::after {
    content: "";
    position: absolute;
    display: block;
    width: 6px;
    height: 6px;
    bottom: -2px;
    right: 0;
    border-radius: 50%;
    background: #ED3957;
    box-sizing: border-box;
}
.popup-promo .promo-box .textbox .t2 {
    position: relative;
    display: block;
    font-size: 0.8vw;
    line-height: 130%;
    padding: 0.5vw 0 0 0;
}
.popup-promo .count-box {
    position: absolute;
    display: block;
    width: 100%;
    bottom: 3vw;
    text-align: center;
}
.popup-promo .count-box span {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    font-size: 1vw;
    line-height: 150%;
}
.popup-promo .count-box .count-text {
    background: #fff;
    color: #000;
    width: 2.2vw;
    height: 2.2vw;
    border-radius: 50%;
    line-height: 2vw;
    font-size: 1.8vw;
}
@media screen and (max-width: 1000px) {
    .popup-promo .promo-box{
        width: 75vw;
        height: 120vw;
    }
    .popup-promo .promo-box .imgbox{
        width: 40%;
        margin: 40vw auto 0 auto;
        border-radius: 8vw;
    }
    .popup-promo .promo-box .textbox {
        width: 80%;
        margin: 3vw auto 0 auto;
    }
    .popup-promo .promo-box .textbox .t1 {
        font-size: 3.5vw;
        padding: 0 0 3vw 0;
    }
    .popup-promo .promo-box .textbox .t1::before {
        height: 2px;
    }
    .popup-promo .promo-box .textbox .t1::after {
        width: 6px;
        height: 6px;
        bottom: -2px;
    }
    .popup-promo .promo-box .textbox .t2 {
        font-size: 2.5vw;
        padding: 3vw 0 0 0;
    }
    .popup-promo .count-box {
        bottom: 9vw;
    }
    .popup-promo .count-box span {
        font-size: 3vw;
    }
    .popup-promo .count-box .count-text {
        width: 5vw;
        height: 5vw;
        line-height: 5vw;
        font-size: 3vw;
    }
}
.finish-box {
    position: relative;
    display: block;
    width: 35vw;
}
.finish-box .btnbox {
    position: absolute;
    display: flex;
    bottom: 2vw;
    background: #F2CF43;
    border:2px solid #231815;
    border-radius: 4vw;
    padding: 0.5vw 1vw;
    justify-content: center;
    align-items: center;
    width: 22vw;
    left: calc(50% - 11vw);
}
.finish-box .btnbox .textbox {
    position: relative;
    display: block;
    color: #231815;
    font-size: 2vw;
    line-height: 100%;
}
.finish-box .btnbox .btn {
    position: relative;
    display: block;
    width: 2.5vw;
    margin: 0 0.3vw;
    cursor: pointer;
}
.finish-box .btnbox .btn:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
@media screen and (max-width: 1000px) {
    .finish-box {
        width: 75vw;
    }
    .finish-box .btnbox {
        bottom: 3vw;
        border-radius: 8vw;
        padding: 2vw 5vw;
        width: 60vw;
        left: calc(50% - 30vw);
    }
    .finish-box .btnbox .textbox {
        font-size: 4vw;
    }
    .finish-box .btnbox .btn {
        width: 6vw;
        margin: 0 1vw;
        cursor: pointer;
    }
}
.miss-box {
    position: relative;
    display: block;
    width: 35vw;
}
@media screen and (max-width: 1000px) {
    .miss-box {
        width: 75vw;
    }
}
.timeup-box {
    position: relative;
    display: block;
    width: 35vw;
}

.timeup-box .replay-btn {
    position:absolute;
    display: block;
    font-size: 2vw;
    font-weight: 700;
    line-height: 100%;
    width: 15vw;
    bottom: 3vw;
    left: calc(50% - 7.5vw);
    background: #F2CF43;
    border-radius: 6vw;
    color: #231815;
    padding: 1vw 2vw;
    border:2px solid #231815;
    cursor: pointer;
    text-align: center;
}
.timeup-box .replay-btn:hover {
    background: #000;
    color: #fff;
}
@media screen and (max-width: 1000px) {
    .timeup-box {
        width: 70vw;
    }
    .timeup-box .replay-btn {
        font-size: 5vw;
        width: 35vw;
        bottom: 5vw;
        left: calc(50% - 17.5vw);
        border-radius: 8vw;
        padding: 2vw 5vw;
    }
}
.article-title {
    position: relative;
    display: block;
    width: 72%;
    margin: 0 auto;
    padding: 5vw 0 0 0;
    z-index: 5;
}
.article-title .icon1 {
    position: absolute;
    display: block;
    width: 10%;
    left: 80%;
    top:35%;
}
.article-box {
    position: relative;
    display: block;
    width: 100%;
    padding: 7vw 0;
}

.article-box::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    left: 0;
    top:3.5vw;
    background: #231815;
}
.swiper-article {
    position: relative;
    display: block;
    width: 95%;
    margin: 0 auto 5vw auto;
}
.article-slider {
    position: relative;
    display: block;
    width: 100%;
}
.article-slider li {
    position: relative;
    display: block;
    width: 100%;
}
.article-slider li .item {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 19vw;
    margin: 0 auto;
}
.article-slider li .item::before{
    content: "";
    position: absolute;
    display: block;
    width: 5vw;
    height: 5vw;
    background: url(../images/article_symbol.png) no-repeat center center;
    background-size: contain;
    top:-4.5vw;
    left: calc(50% - 1.5vw);
}
.article-slider li .item .imgbox {
    position: relative;
    display: block;
    width: 95%;
    padding: 1vw;
    border-radius: 1vw 1vw 0 0;
    border:2px solid #231815;
    background: #ED3957;
}
.article-slider li .item .imgbox img {
    position: relative;
    display: block;
    border-radius: 1vw;
    border:2px solid #231815;
}
.article-slider li .item1 .imgbox::after,
.article-slider li .item4 .imgbox::after,
.article-slider li .item7 .imgbox::after,
.article-slider li .item10 .imgbox::after{
    content: "";
    position: absolute;
    display: block;
    width: 3vw;
    height: 3vw;
    background: url(../images/article_icon1.png) no-repeat center center;
    background-size: contain;
    left: -1vw;
    top:-1vw;
}
.article-slider li .item2 .textbox::after,
.article-slider li .item5 .textbox::after,
.article-slider li .item8 .textbox::after,
.article-slider li .item11 .textbox::after{
    content: "";
    position: absolute;
    display: block;
    width: 3vw;
    height: 3vw;
    background: url(../images/article_icon2.png) no-repeat center center;
    background-size: contain;
    right: -1vw;
    top:-1vw;
}
.article-slider li .item .textbox {
    position: relative;
    display: block;
    width: 100%;
    padding: 1.2vw 0.8vw;
    border-radius: 1vw;
    border:2px solid #231815;
    margin-top: -3px;
    background: #006645;
}
.article-slider li .item .textbox span {
    position: relative;
    display: block;
    font-size: 1.3vw;
    line-height: 150%;
    color: #fff;
    min-height: 10vw;
}
.article-slider li .item .textbox .more-btn {
    position: absolute;
    display: inline-block;
    background: #FFC3BC;
    border:2px solid #231815;
    font-family:'Kanit';
    font-weight: 500;
    text-align: center;
    color: #231815;
    font-size: 1.5vw;
    line-height: 100%;
    padding: 0.5vw 1vw;
    border-radius: 2vw;
    bottom: -1.5vw;
    right: 1vw;
}
.article-slider li .item:hover .textbox .more-btn {
    background: #231815;
    color: #fff;
}
.slider-ui {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 95%;
    margin: 0 auto;
}
.slider-left {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 4vw;
    height: 4vw;
    border-radius: 50%;
    border:2px solid #231815;
    background: #006645;
    cursor: pointer;
}
.slider-left:hover {
    background: #231815;
}
.slider-left::before {
    content: "<";
    position: relative;
    display: block;
    color: #fff;
    font-family:Arial;
    font-weight: 500;
    text-align: center;
    font-size: 3vw;
    line-height: 100%;
}
.slider-right {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 4vw;
    height: 4vw;
    border-radius: 50%;
    border:2px solid #231815;
    background: #006645;
    cursor: pointer;
}
.slider-right:hover {
    background: #231815;
}
.slider-right::before {
    content: ">";
    position: relative;
    display: block;
    color: #fff;
    font-family:Arial;
    font-weight: 500;
    text-align: center;
    font-size: 3vw;
    line-height: 100%;
}
.slider-btn-list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    bottom:auto!important;
    width: auto!important;
}
.slider-btn-list .swiper-pagination-bullet {
    display: block;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
    font-size: 0;
    margin: 0 6px !important;
    cursor: pointer;
    opacity: 1;
}
.slider-btn-list .swiper-pagination-bullet-active {
    background: #333;
}
@media screen and (max-width: 1000px) {
    .slider-left {
        width: 8vw;
        height: 8vw;
    }
    .slider-left::before {
        font-size: 5vw;
    }
    .slider-right {
        width: 8vw;
        height: 8vw;
    }
    .slider-right::before {
        font-size: 5vw;
    }
    .slider-btn-list .swiper-pagination-bullet {
        width: 15px;
        height: 15px;
        margin: 0 4px !important;
    }
}
@media screen and (max-width: 1000px) {
    .article-title {
        width: 90%;
        padding: 8vw 0 0 0;
    }
    .article-box {
        padding: 12vw 0 8vw 0;
    }
    .article-box::before {
        top:5vw;
    }
    .article-slider {
        margin: 0 auto 8vw auto;
    }
    .article-slider li .item {
        width: 40vw;
    }
    .article-slider li .item::before{
        width: 10vw;
        height: 10vw;
        top:-9vw;
        left: calc(50% - 3vw);
    }
    .article-slider li .item .imgbox {
        padding: 2vw;
        border-radius: 2vw 2vw 0 0;
    }
    .article-slider li .item .imgbox img {
        border-radius: 2vw;
    }
    .article-slider li .item1 .imgbox::after,
    .article-slider li .item4 .imgbox::after,
    .article-slider li .item7 .imgbox::after,
    .article-slider li .item10 .imgbox::after{
        width: 6vw;
        height: 6vw;
        left: -2vw;
        top:-2vw;
    }
    .article-slider li .item2 .textbox::after,
    .article-slider li .item5 .textbox::after,
    .article-slider li .item8 .textbox::after,
    .article-slider li .item11 .textbox::after{
        width: 6vw;
        height: 6vw;
        right: -2vw;
        top:-2vw;
    }
    .article-slider li .item .textbox {
        padding: 3vw 1.5vw;
        border-radius: 2vw;
    }
    .article-slider li .item .textbox span {
        font-size: 3vw;
        min-height: 25vw;
    }
    .article-slider li .item .textbox .more-btn {
        font-size: 3.5vw;
        padding: 1vw 2vw;
        border-radius: 4vw;
        bottom: -3vw;
        right: 2vw;
    }
}
.game-title {
    position: relative;
    display: block;
    width: 70%;
    margin: -2vw auto 0 auto;
    padding: 3vw 0 0 0;
    z-index: 5;
    pointer-events: none;
}
.game-title .icon1 {
    position: absolute;
    display: block;
    width: 9%;
    left: 85%;
    top:40%;
}
.game-box {
    position: relative;
    display: block;
    width: 100%;
    height: 50vw;
    margin: -4vw 0 2vw 0;
    border-top:2px solid #231815;
    border-bottom:2px solid #231815;
    overflow: hidden;
    background: #000;
}
.game-box.game-playing {
    cursor: none;
    cursor: url(../images/cursor_finger.png),auto;
    cursor: url(../images/cursor_finger.png),pointer;
    cursor: url(../images/cursor_finger.png),default;
}
.swiper-game {
    position: relative;
    display: block;
    width: 67vw;
    margin:  0 auto;
    height: 100%;
}
.swiper-game .game-countdown-box {
    position: absolute;
    display: block;
    width: 20vw;
    height: 12vw;
    background: url(../images/game_countdown_bg.png) no-repeat center center;
    background-size: contain;
    z-index: 2;
    left: calc(50% - 45vw);
    top:1vw;
    pointer-events: none;
}
.swiper-game .game-countdown-box .textbox {
    position: absolute;
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    color: #000;
    top:0.5vw;
}
.swiper-game .game-countdown-box .textbox .t1,
.swiper-game .game-countdown-box .textbox .t2{
    position: relative;
    display: block;
    font-size: 2vw;
    font-weight: 900;
    line-height: 100%;
}
.swiper-game .game-countdown-box .textbox .sec-text{
    position: relative;
    display: block;
    font-size: 4vw;
    font-weight: 900;
    line-height: 100%;
    margin: 0 0.5vw;
    top:-0.5vw;
}
.game-slider {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.game-slider li {
    position: relative;
    display: block;
    width: 67vw;
    height: 100%;
}
.game-slider li.slide1 {
    width: 30vw;
}
.game-slider li.slide2 {
    width: 67vw;
}
.game-slider li.slide3 {
    width: 30vw;
}
.game-slider li .item {
    position: absolute;
    display: block;
    width: 67vw;
    height: 100%;
}
.game-slider li.slide1 .item {
    right: 0;
}
.game-slider li.slide2 .item {
    left: calc(50% - 33.5vw);
}
.game-slider li.slide3 .item {
    left: 0;
}
.game-slider li .item .map {
    position: absolute;
    display: block;
    width: calc(100% + 1px);
    left: -0.5px;
}
.game-slider li .item .map.map-cover {
    pointer-events: none;
    z-index: 3;
}
.game-slider li .item .gift-btn {
    position: absolute;
    display: none;
    z-index: 2;
}
.game-slider li .item .gift-btn[data-order="1"],
.game-slider li .item .gift-btn[data-order="2"],
.game-slider li .item .gift-btn[data-order="3"],
.game-slider li .item .gift-btn[data-order="4"],
.game-slider li .item .gift-btn[data-order="5"],
.game-slider li .item .gift-btn[data-order="6"],
.game-slider li .item .gift-btn[data-order="7"]{
    display: block;
}
.game-slider li .item .gift-btn1 {
    width: 5vw;
    top:63%;
    right: 87%;
}
.game-slider li .item .gift-btn2 {
    width: 5vw;
    top:29%;
    right: 57%;
}
.game-slider li .item .gift-btn3 {
    width: 5vw;
    top:85%;
    right: 48%;
}
.game-slider li .item .gift-btn4 {
    width: 3vw;
    top:53%;
    right: 35%;
}
.game-slider li .item .gift-btn5 {
    width: 4vw;
    top:55%;
    right: 9%;
}
.game-slider li .item .gift-btn6 {
    width: 5vw;
    top:11%;
    left: 4%;
}
.game-slider li .item .gift-btn7 {
    width: 3.5vw;
    top:80%;
    left: 5%;
}
.game-slider li .item .gift-btn8 {
    width: 5vw;
    top:40%;
    left: 30%;
}
.game-slider li .item .gift-btn9 {
    width: 4vw;
    top:91%;
    left: 77%;
}
.game-slider li .item .gift-btn10 {
    width: 4vw;
    top:53%;
    left: 90%;
}
.game-slider li .item .gift-btn11 {
    width: 5vw;
    top:75%;
    left: 4%;
}
.game-slider li .item .gift-btn12 {
    width: 6vw;
    top:5%;
    left: 60%;
}
.game-slider li .item .gift-btn13 {
    width: 4vw;
    top:83%;
    left: 63%;
}
.game-slider li .item .gift-btn14 {
    width: 4vw;
    top:53%;
    left: 83%;
}
@media screen and (max-width: 1000px) {
    .game-title {
        width: 80%;
    }
    .game-title .icon1 {
        width: 13%;
        left: 80%;
        top:35%;
    }
    .game-box {
        height: 120vw;
        margin: -14vw 0 2vw 0;
    }
    .swiper-game {
        width: 100vw;
    }
    .game-slider li.slide1 {
        width: 210vw;
    }
    .game-slider li.slide2 {
        width: 160vw;
    }
    .game-slider li.slide3 {
        width: 210vw;
    }
    .game-slider li .item {
        width: 160vw;
    }
    .game-slider li.slide1 .item {
        right: 0;
    }
    .game-slider li.slide2 .item {
        left: calc(50% - 80vw);
    }
    .game-slider li.slide3 .item {
        left: 0;
    }
    .game-slider li .item .gift-btn1 {
        width: 12vw;
    }
    .game-slider li .item .gift-btn2 {
        width: 12vw;
    }
    .game-slider li .item .gift-btn3 {
        width: 12vw;
    }
    .game-slider li .item .gift-btn4 {
        width: 7vw;
    }
    .game-slider li .item .gift-btn5 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn6 {
        width: 12vw;
    }
    .game-slider li .item .gift-btn7 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn8 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn9 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn10 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn11 {
        width: 12vw;
    }
    .game-slider li .item .gift-btn12 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn13 {
        width: 10vw;
    }
    .game-slider li .item .gift-btn14 {
        width: 10vw;
    }
}
.game-intro {
    position: absolute;
    display: none;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.8);
    z-index: 3;
}
.game-intro.expand {
    display: block;
}
.game-intro .textbox {
    position: relative;
    display: block;
    width: 40%;
    margin: 5vw auto 0 auto;
    border:2px solid #231815;
    background: #FFC3BC;
    border-radius: 2vw;
    padding: 2vw 2vw 4vw 2vw;
}
.game-intro .textbox p {
    position: relative;
    display: block;
    font-size: 1.3vw;
    line-height: 150%;
    color: #000;
    font-weight: 700;
}
.game-intro .textbox p span.red {
    color: #F03653;
}
.game-intro .textbox .rule-btn {
    position: absolute;
    display: inline-block;
    font-size: 2vw;
    font-weight: 700;
    line-height: 100%;
    bottom: -2vw;
    left: 3vw;
    background: #006645;
    border-radius: 4vw;
    color: #fff;
    padding: 1vw 2vw;
    border:2px solid #231815;
    cursor: pointer;
}
.game-intro .textbox .rule-btn:hover {
    background: #000;
}
.game-intro .textbox .winner-btn {
    position: absolute;
    display: inline-block;
    font-size: 2vw;
    font-weight: 700;
    line-height: 100%;
    bottom: -2vw;
    right: 3vw;
    background: #ED3957;
    border-radius: 4vw;
    color: #fff;
    padding: 1vw 2vw;
    border:2px solid #231815;
    cursor: pointer;
}
.game-intro .textbox .winner-btn:hover {
    background: #000;
}
.game-intro .intro-gift {
    position: relative;
    display: block;
    width: 18vw;
    margin: 4vw auto 0 auto;
}
.game-intro .join-btn {
    position: relative;
    display: block;
    font-size: 2vw;
    font-weight: 700;
    line-height: 100%;
    width: 15vw;
    margin: 0 auto;
    background: #F2CF43;
    border-radius: 4vw;
    color: #231815;
    padding: 1vw 2vw;
    border:2px solid #231815;
    cursor: pointer;
    text-align: center;
}
.game-intro .join-btn:hover {
    /*background: #000;
    color: #fff;*/
}
@media screen and (max-width: 1000px) {
    .game-intro .textbox {
        width: 80%;
        margin: 18vw auto 5vw auto;
        border-radius: 5vw;
        padding: 3vw 3vw 8vw 3vw;
    }
    .game-intro .textbox p {
        font-size: 3.5vw;
        line-height: 150%;
    }
    .game-intro .textbox .rule-btn {
        font-size: 4vw;
        bottom: -3vw;
        left: 3vw;
        border-radius: 8vw;
        padding: 2vw 5vw;
    }
    .game-intro .textbox .winner-btn {
        font-size: 4vw;
        bottom: -3vw;
        right: 3vw;
        border-radius: 8vw;
        padding: 2vw 5vw;
    }
    .game-intro .intro-gift {
        width: 35vw;
    }
    .game-intro .join-btn {
        font-size: 5vw;
        width: 35vw;
        border-radius: 8vw;
        padding: 3vw 5vw;
    }
}
.game-ready {
    position: absolute;
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.8);
    z-index: 3;
}
.game-ready.expand {
    display: flex;
}
.game-ready .ready-gift {
    position: relative;
    display: block;
    width: 18vw;
    margin: 0 auto;
}
.game-ready .play-btn {
    position: relative;
    display: block;
    font-size: 2vw;
    font-weight: 700;
    line-height: 100%;
    width: 15vw;
    margin: 0 auto;
    background: #F2CF43;
    border-radius: 4vw;
    color: #231815;
    padding: 1vw 2vw;
    border:2px solid #231815;
    cursor: pointer;
    text-align: center;
}
.game-ready .play-btn:hover {
    background: #000;
    color: #fff;
}
.game-ready .note-text {
    position: relative;
    display: block;
    font-size: 1.5vw;
    line-height: 100%;
    text-align: center;
    color:#fff;
    padding: 1vw 0;
}
.game-ready .ready-arrow-left {
    position: absolute;
    display: block;
    width: 12vw;
    left: 3vw;
    bottom: 5vw;
}
.game-ready .ready-arrow-right {
    position: absolute;
    display: block;
    width: 12vw;
    right: 3vw;
    bottom: 5vw;
}
.game-ready .ready-finger{
    position: absolute;
    display: block;
    width: 6vw;
    left: calc(50% - 2vw);
    top:calc(50% + 11vw);
}
@media screen and (max-width: 1000px) {
    .game-ready .ready-gift {
        width: 35vw;
    }
    .game-ready .play-btn {
        font-size: 5vw;
        width: 35vw;
        border-radius: 8vw;
        padding: 3vw 5vw;
    }
    .game-ready .note-text {
        font-size: 3vw;
        padding: 3vw 0;
    }
    .game-ready .ready-arrow-left {
        width:20vw;;
    }
    .game-ready .ready-arrow-right {
        width: 20vw;
    }
    .game-ready .ready-finger{
        width: 12vw;
        left: calc(50% - 6vw);
        top:calc(50% + 25vw);
    }
}
.award-title {
    position: relative;
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 3vw 0 0 0;
    z-index: 5;
}
.award-title .icon1 {
    position: absolute;
    display: block;
    width: 8%;
    left: 60%;
    top:19%;
}
.award-box {
    position: relative;
    display: block;
    width: 100%;
    margin: 5vw 0 0 0;
    padding: 2vw 0 0 0;
    background: url(../images/award_bg.png) no-repeat center top;
    background-size: contain;
}
.swiper-award {
    position: relative;
    display: block;
    width: 90%;
    margin: 5vw auto 7vw auto;
    overflow: hidden;
}
.award-slider {
    position: relative;
    display: block;
    width: 100%;
}
.award-slider li {
    position: relative;
    display: block;
    width: 100%;
}
.award-slider li .item {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 10vw;
    margin: 0 auto;
}
.award-slider li .item .imgbox {
    position: relative;
    display: block;
    width: 9vw;
    height: 9vw;
    margin: 0 auto;
    border-radius: 50%;
    overflow: hidden;
    border:2px solid #231815;
}
.award-slider li .item .textbox {
    position: relative;
    display: block;
}
.award-slider li .item .textbox span {
    position: relative;
    display: block;
    text-align: center;
    color: #fff;
    font-size: 0.8vw;
    line-height: 150%;
}
@media screen and (max-width: 1000px) {
    .award-title {
        width: 75%;
        padding: 5vw 0 0 0;
    }
    .award-title .icon1 {
        width: 12%;
        left: 75%;
        top:40%;
    }
    .award-box {
        margin: 5vw 0 0 0;
        padding: 25vw 0 0 0;
        background: url(../images/award_bg_m.png) no-repeat center top;
        background-size: contain;
        height: 130vw;
    }
    .swiper-award {
        margin-bottom: 25vw;
    }
    .award-slider {
        width: 90%;
        height: 85vw;
        margin: 0 auto 0 auto;
    }
    .award-slider li .item {
        width: 42vw;
    }
    .award-slider li .item .imgbox {
        width: 42vw;
        height: 42vw;
    }
    .award-slider li .item .textbox span {
        font-size: 3.5vw;
    }
}

.sponsor-title {
    position: relative;
    display: block;
    width: 40%;
    margin: 0 auto;
    padding: 8vw 0 0 0;
    z-index: 5;
}
.sponsor-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin: 2vw auto 8vw auto;
}
.sponsor-list li {
    position: relative;
    display: block;
    width: calc(100% / 8 - 4vw);
    margin: 1vw 2vw;
}
@media screen and (max-width: 1000px) {
    .sponsor-title {
        width: 60%;
    }
    .sponsor-list li {
        width: calc(100% / 4 - 4vw);
        margin: 2vw 2vw;
    }
}

.wrap a{z-index: 1;}