@charset "utf-8";

body              { margin: 0; background: #000; color: #fff; font-size: 16px;
                    -webkit-font-smoothing: antialiased;
                    -moz-osx-font-smoothing: grayscale;
                    font-family: 'Roboto','Helvetica Neue',Helvetica, Arial,'Apple LiGothic Medium','STHeiti Light','微軟正黑體','Microsoft JhengHei',sans-serif;
                  }
a, 
a:visited, 
a:active, 
a:hover           { text-decoration: none; blr:expression(this.onFocus=this.blur()); cursor: pointer;}

a                 { outline: none; /* for Firefox Chrome */ behavior:expression(this.onFocus=this.blur()); /* for IE */} 
a:focus           { -moz-outline-style: none; outline: none; } /* for Firefox Chrome */

a:link            { text-decoration: none;}
a:visited         { text-decoration: none;}
a:hover           { text-decoration: none;}
input, 
textarea,         { font-family: 'Roboto','Helvetica Neue',Helvetica, Arial,'Apple LiGothic Medium','STHeiti Light','微軟正黑體','Microsoft JhengHei',sans-serif;}
input:focus, 
textarea:focus    { outline: none;}

@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,700,900');

@font-face {
    font-family: 'ROGFont';
    src: url("../fonts/rogfonts-regular.otf");
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Xolonium';
    src: url('../fonts/xolonium.otf'),
         url('../fonts/xolonium.otf') format('embedded-opentype'),
         url("../fonts/xolonium.ttf") format("opentype"),
         url("../fonts/xolonium.eot");
    font-weight: normal;
    font-style: normal;
}




/* ---------- scrollUp ------- */

#scrollUp {
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 45px;
    height: 45px;
    text-align: center;
    cursor: pointer;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border: 2px solid #63caff;
    opacity: 0;
}

#scrollUp.hd-show {
    opacity: 1;
}

#scrollUp svg {
    display: block;
    position: absolute;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 5px;
    left: 0;
    fill: #63caff;
    -webkit-transform: rotateZ(270deg);
    -moz-transform: rotateZ(270deg);
    -ms-transform: rotateZ(270deg);
    -o-transform: rotateZ(270deg);
    transform: rotateZ(270deg);
}

#scrollUp:hover {
    background-color: #63caff;
}

#scrollUp:hover svg {
    fill: #000;
}





/*-------------main----------------*/

#game-main{
    background: #000;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
#game-main .inner{
    min-width: 750px;
    position: relative;
}
#game-main .room img{
    display: block;
    width: 100%;
}
#game-main .rog{
    position: absolute;
    left: 4.5%;
    top: 4.5%;
    width: 8%;
    height: auto;
}
#game-main .rog img{
    display: block;
    width: 100%;
}
#game-main .intel{
    position: absolute;
    right: 2.5%;
    top: 5%;
    width: 8%;
    height: auto;
}
#game-main .intel img{
    display: block;
    width: 100%;
}
#game-main .link{
    position: absolute;
    cursor: pointer;
}
#game-main .link img{
    display: block;
    width: 100%;
    opacity: 0;
}
#game-main .link:hover img{
    111animation: glow 0.5s infinite;
    111opacity: 1;
    opacity: 1;
}
@-webkit-keyframes glow {
    0% {
    opacity: 0;
    }
    50% {
    opacity: 1;
    }
    100% {
    opacity: 0;
    }
}

#game-main .link:after{
    position: absolute;
    content: '';
    display: block;
    width: 24px;
    height: 22px;
    background-image: url(../img/btn-hint.png);
    right: 20px;
    top: 20px;
}
#game-main .link.screenpad{
    width: 16.66%;
    left: 13.28%;
    top: 28.98%;
    111background: rgba(255,255,255,0.5);
}
#game-main .link.productvideo{
    width: 19.79%;
    left: 67.55%;
    top: 62.59%;
    111background: rgba(255,255,255,0.5);
}
#game-main .link.productvideo:after{
    right: 10px;
    top: 35px;
}
#game-main .link:hover:after{
    animation: poke 0.6s infinite;
}
@-webkit-keyframes poke {
    0% {
    opacity: 1;
    }
    50% {
    opacity: 0.5;
    }
    100% {
    opacity: 1;
    }
}

@media screen and (max-width: 768px) {    
#game-main .link:after{
    right: 0px;
    top: 0px;
}
#game-main .link.productvideo:after{
    right: 0px;
    top: 10px;
}
}



#game-main .control{
    position: absolute;
    width: 350px;
    height: 150px;
    bottom: 0;
    left: 0;
}
#game-main .control .nav a{
    display: block;
    height: 50px;
    color: #fff;
    position: relative;
}
#game-main .control .nav a span{
    display: block;
    height: 100%;
    line-height: 50px;
    font-family: "Xolonium", sans-serif;
    font-size: 1em;
    background-image: url(../img/arrow-right-light.png);
    background-position: calc(100% - 10px) center;
    background-repeat: no-repeat;
    background-size: 25px auto;
    box-sizing: border-box;
    padding: 0 30px 0 15px;
    position: relative;
    z-index: 1;
}
#game-main .control .nav a:hover span{
}
#game-main .control .nav a:after{
    display: block;
    content: '';
    position: absolute;
    left: -100%;
    top: 0;
    width: 100%;
    height: 100%;
    background: red;
    z-index: 0;
    background: linear-gradient(to right, #c31985 0%, #621ac1 100%);
    transition: all 0.3s;
}
#game-main .control .nav a:hover:after{
    left: 0;
}



#game-main .social{
    display: flex;
    padding-left: 12px;
    margin-top: 10px;
}
#game-main .social a{
    display: block;
    width: 30px;
    height: 30px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: all 0.3s;
    margin-right: 5px;
    border: 1px solid transparent;
}
#game-main .social a:hover{
    border-color: #ae1ca6;
}
#game-main .social a.facebook{
    background-image: url(../img/share-fb.png);
}
#game-main .social a.twitter{
    background-image: url(../img/share-twitter.png);
}
#game-main .social a.instagram{
    background-image: url(../img/share-ig.png);
}
#game-main .social a.youtube{
    background-image: url(../img/share-youtube.png);
}

@media screen and (min-width: 1600px) {    
#game-main .control{
    width: 500px;
    height: 250px;
}
#game-main .control .nav a{
    height: 70px;
}
#game-main .control .nav a span{
    line-height: 70px;
    font-size: 1.3em;
    background-position: calc(100% - 20px) center;
    background-size: 30px auto;
    padding: 0 55px 0 25px;
}
#game-main .social{
    padding-left: 30px;
    margin-top: 20px;
}
#game-main .social a{
    width: 50px;
    height: 50px;
    margin-right: 10px;
}
}

@media screen and (max-width: 600px) {    
#game-main .control{
    width: 270px;
    height: 120px;
    /*position: fixed;
    bottom: auto;
    top: 280px;*/
}
#game-main .control .nav a{
    height: 30px;
}
#game-main .control .nav a span{
    line-height: 30px;
    font-size: 0.8em;
    background-size: 15px auto;
    padding: 0 20px 0 10px;
}
}


/*--------------------shop-------------------------*/

#game-shop{
    padding: 13vh 0;
    background: #000 url(../img/shop-bg.jpg) center no-repeat;
    background-size: cover;
    min-height: 50vh;
}
#game-shop h2{
    text-align: center;
    font-size: 3em;
    color: #fff;
    font-weight: bold;
    line-height: 1em;
    font-family: "Xolonium", sans-serif;
    position: relative;
    margin: 0;
    padding: 0;
}
#game-shop h2 span{
}
#game-shop h2:after{
    content: '';
    display: block;
    position: absolute;
    width: 400px;
    bottom: 4px;
    left: calc(50% - 200px);
    height: 2px;
    background: linear-gradient(to right, rgba(240,81,255,0) 0%, rgba(240,81,255,1) 20%, rgba(178,205,255,1) 50%, rgba(240,81,255,1) 80%, rgba(240,81,255,0) 100%);
}
#game-shop .inner{
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 40px;
    box-sizing: border-box;
}
#game-shop .list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 100px;
}
#game-shop .list a{
    display: block;
    width: 170px;
    margin: 0 10px 20px 10px;
    padding: 10px;
    border: 1px solid #931aa2;
    box-sizing: border-box;
    transition: all 0.3s;
    cursor: pointer;
}
#game-shop .list a:hover{
    border-color: #ff3bb7;
}
#game-shop .list a span{
    display: block;
    width: 100%;
    background: #fff;
}
#game-shop .list a img{
    display: block;
    width: 100%;
}


@media screen and (max-width: 768px) {    
#game-shop{
    padding: 8vh 0;
    min-height: auto;
}
#game-shop .inner{
    padding: 0 20px;
}
#game-shop h2{
    font-size: 1.8em;
}
#game-shop h2:after{
    width: 300px;
    bottom: 2px;
    left: calc(50% - 150px);
}
#game-shop .list{
    margin-top: 50px;
}
#game-shop .list a{
    width: 100px;
    margin: 0 5px 10px 5px;
    padding: 5px;
}
}




/*--------------------list-------------------------*/

#game-list{
}
#game-list .item{
    position: relative;
    background: #000;
    overflow: hidden;
}
#game-list .item .image{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
}
#game-list .item .image img{
    width: 100%;
    display: block;
}
#game-list .item .inner{
    position: relative;
    z-index: 1;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    111background: rgba(255,255,255,0.2);
    min-height: 37.5vw;
    padding: 30px 40px;
    box-sizing: border-box;
}
#game-list .item .inner .text{
    111background: rgba(255,255,255,0.2);
    width: 40%;
}
#game-list .item.retrograde .inner{
    justify-content: flex-end;
}

#game-list .item h3{
    font-family: "ROGFont", "Xolonium", sans-serif;
    color: #fb0000;
    font-size: 1.6em;
    font-weight: normal;
    line-height: 1em;
    margin: 0 0 10px 0;
}
#game-list .item h2{
    font-family: "Xolonium", sans-serif;
    color: #fff;
    font-size: 2.6em;
    font-weight: normal;
    line-height: 1em;
    margin: 0 0 20px 0;
}
#game-list .item p{
    line-height: 1.4em;
    margin: 0 0 40px 0;
}


.action a{
    display: inline-block;
    height: 40px;
    line-height: 40px;
    min-width: 150px;
    font-family: "Xolonium", sans-serif;
    font-size: 1em;
    box-sizing: border-box;
    position: relative;
    background: linear-gradient(to right, #c31985 0%, #621ac1 100%);
    transition: all 0.3s;
    margin-right: 10px;
    margin-bottom: 10px;
    cursor: pointer;
    border: 1px solid #000;
    color: #fff;
}
.action a:hover{
    border-color: #fff;
}
.action a span{
    display: block;
    height: 100%;
    background-image: url(../img/arrow-right-light.png);
    background-position: calc(100% - 10px) center;
    background-repeat: no-repeat;
    background-size: 20px auto;
    box-sizing: border-box;
    padding: 0 45px 0 15px;
}
.action a.buy span{
    background-image: url(../img/cart.png);
}



@media screen and (max-width: 1400px) {    
#game-list .item .image img{
    width: 130%;
    margin-left: -15%;
}
#game-list .item .inner{
    min-height: calc(37.5vw * 1.3);
}
#game-list .item .inner .text{
    width: 45%;
}
}


@media screen and (max-width: 1200px) {    
#game-list .item .image img{
    width: 150%;
    margin-left: -25%;
}
#game-list .item .inner{
    min-height: calc(37.5vw * 1.5);
}
#game-list .item .inner .text{
    width: 45%;
}
#game-list .item h3{
    font-size: 1.2em;
}
#game-list .item h2{
    font-size: 2em;
}
#game-list .item p{
    font-size: 0.9em;
    margin-bottom: 20px;
}
}




@media screen and (max-width: 950px) {    
#game-list .item{
    margin-bottom: 30px;
}
#game-list .item .image{
    position: relative;
    left: auto;
    top: auto;
}
#game-list .item .image img{
    width: 170%;
    margin-left: -70%;
}
#game-list .item.retrograde .image img{
    margin-left: -10%;
}
#game-list .item .inner{
    min-height: auto;
}
#game-list .item .inner .text{
    width: 100%;
}
}


@media screen and (max-width: 500px) {    
#game-list .item .inner{
    padding: 20px 20px;
}
#game-list .item h3{
    font-size: 1em;
}
#game-list .item h2{
    font-size: 1.4em;
}
#game-list .action a{
    height: 30px;
    line-height: 30px;
    font-size: 0.8em;
}
#game-list .action a span{
    background-size: 15px auto;
    padding: 0 35px 0 10px;
}
}



/*--------------------footer-------------------------*/

#game-footer{
    margin-top: 20px;
}
#game-footer .inner{
    max-width: 1400px;
    margin: 0 auto;
    padding: 10px 40px;
    box-sizing: border-box;
    border-top: 1px solid #333;
    display: flex;
    justify-content: flex-end;
}
#game-footer .inner p{
    color: #999;
    font-size: 0.9em;
    margin-right: 50px;
}
#game-footer .inner p:last-child{
    margin-right: 0;
}
#game-footer .inner a{
    color: #999;
    font-size: 0.9em;
    margin-right: 50px;
    display: inline-block;
    transition: all 0.2s;
}
#game-footer .inner a:last-child{
    margin-right: 0;
}
#game-footer .inner a:hover{
    color: #fd0000;
}

@media screen and (max-width: 768px) {    
#game-footer .inner{
    display: block;
    text-align: center;
}
#game-footer .inner p{
    margin-right: 0px;
}
#game-footer .inner a{
    margin-right: 10px;
    margin-left: 10px;
}
}

@media screen and (max-width: 400px) {    
#game-footer .inner{
    padding: 10px 10px;
}
#game-footer .inner p{
    font-size: 0.8em;
}
}




/*--------------------pop-------------------------*/

#game-pop{
    position: relative;
    z-index: 100;
}
#game-pop .pop-wrapper{
}
#game-pop .pop-wrapper .content{
    background: rgba(0,0,0,0.7);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}
#game-pop .pop-screenpad{
    display: none;
}
#game-pop .pop-screenpad.active{
    display: block;
}
#game-pop .pop-video{
    display: none;
}
#game-pop .pop-video.active{
    display: block;
}

#game-pop .box-screenpad{
    display: none;
}
#game-pop .box-screenpad.active{
    display: block;
}
#game-pop .box-video{
    display: none;
}
#game-pop .box-video.active{
    display: block;
}

#game-pop .inner{
    max-width: 1300px;
    111min-height: 70vh;
    width: 90%;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
}
#game-pop .inner h2{
    position: absolute;
    left: 0;
    top: 10px;
    width: 100%;
    text-align: center;
    font-size: 3em;
    font-family: "Xolonium", sans-serif;
    margin: 0;
}
#game-pop .inner .box{
    margin: 60px;
    padding: 8px;
    background: linear-gradient(to right, #2e68f7 0%, #b71e9c 100%);
}
#game-pop .inner .box .box-inner{
    111min-height: calc(70vh - 150px);
    background: #000;
    padding: 20px;
}
#game-pop .inner .close{
    width: 60px;
    height: 60px;
    display: block;
    position: absolute;
    right: 5px;
    top: 100px;
    background: linear-gradient(to right, #b71e9c 0%, #7716c5 100%);
    transition: all 0.2s;
    z-index: 3;
}
#game-pop .inner .close:hover{
    right: 0;
}
#game-pop .inner .close span{
    width: 100%;
    height: 100%;
    display: block;
    background: url(../img/close.png) center no-repeat;
    background-size: 70%;
}
#game-pop .inner .arrow{
    width: 80px;
    height: 100px;
    display: block;
    position: absolute;
    left: -30px;
    top: calc(50% - 50px);
    background: url(../img/frame-arrow.png) center no-repeat;
    background-size: 100%;
    opacity: 0.7;
    transition: all 0.1s;
}
#game-pop .inner .arrow:hover{
    opacity: 1;
}
#game-pop .inner .arrow.btn-next{
    left: auto;
    right: -30px;
    transform: rotate(180deg);
}

#game-pop .inner .corner span{
    width: 60px;
    height: 60px;
    display: block;
    position: absolute;
    background: url(../img/frame-corner.png) center no-repeat;
    background-size: 100%;
}
#game-pop .inner .corner span.left-top{
    left: 20px;
    top: 20px;
}
#game-pop .inner .corner span.right-top{
    right: 20px;
    top: 20px;
    transform: rotate(90deg);
}
#game-pop .inner .corner span.left-bottom{
    left: 20px;
    bottom: 20px;
    transform: rotate(-90deg);
}
#game-pop .inner .corner span.right-bottom{
    right: 20px;
    bottom: 20px;
    transform: rotate(180deg);
}


#game-pop .inner .box .box-inner .box-screenpad .row{
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}
#game-pop .inner .box .box-inner .box-screenpad .text{
    padding: 20px 20px 20px 50px;
    width: 50%;
    box-sizing: border-box;
}
#game-pop .inner .box .box-inner .box-screenpad .text h3{
    font-family: "ROGFont", "Xolonium", sans-serif;
    color: #fff;
    font-size: 2.5em;
    font-weight: normal;
    line-height: 1em;
    margin: 0 0 30px 0;
}
#game-pop .inner .box .box-inner .box-screenpad .text p{
    line-height: 1.4em;
    margin: 0 0 30px 0;
}
#game-pop .inner .box .box-inner .box-screenpad .image{
    box-sizing: border-box;
    width: 50%;
}
#game-pop .inner .box .box-inner .box-screenpad .image img{
    width: 100%;
}



#game-pop .inner .box .box-inner .box-video .row{
    display: flex;
    align-items: center;
}
#game-pop .inner .box .box-inner .box-video .image{
    margin: 0 auto;
}
#game-pop .inner .box .box-inner .box-video .image img{
    max-width: 100%;
    display: block;
    opacity: 1;
    transition: all 0.3s;
}
#game-pop .inner .box .box-inner .box-video .image a{
    position: relative;
    display: block;
}
#game-pop .inner .box .box-inner .box-video .image a:after{
    content: '';
    display: block;
    position: absolute;
    left: calc(50% - 40px);
    top: calc(50% - 40px);
    width: 80px;
    height: 80px;
    background: #fff;
    border-radius: 50%;
    background: url(../img/play.png) center no-repeat;
    background-size: 100%;
}
#game-pop .inner .box .box-inner .box-video .image a:hover img{
    opacity: 0.7;
}

@media screen and (max-width: 1024px) {    
#game-pop .inner{
    width: 100%;
}
#game-pop .inner h2{
    font-size: 2em;
    top: 20px;
}
#game-pop .inner .arrow{
    width: 60px;
    height: 75px;
    left: 0px;
    top: calc(50% - 37px);
}
#game-pop .inner .arrow.btn-next{
    left: auto;
    right: 0px;
}
#game-pop .inner .box{
    margin: 50px;
    padding: 6px;
}
#game-pop .inner .box .box-inner{
    padding: 10px;
}
#game-pop .inner .close{
    width: 40px;
    height: 40px;
    right: 10px;
    top: 100px;
}
#game-pop .inner .close:hover{
    right: 10px;
}
#game-pop .inner .box .box-inner .box-screenpad .text h3{
    font-size: 1.5em;
    margin-bottom: 15px;
}
}

@media screen and (max-width: 768px) {    
#game-pop .inner h2{
    font-size: 1.5em;
    top: 25px;
}
#game-pop .inner .box .box-inner .box-screenpad .row{
    display: block;
}
#game-pop .inner .box .box-inner .box-screenpad .text{
    padding: 20px;
    width: 100%;
}
#game-pop .inner .box .box-inner .box-screenpad .text h3{
    font-size: 1.2em;
}
#game-pop .inner .box .box-inner .box-screenpad .image{
    max-width: 80%;
    margin: 0 auto;
}
}

@media screen and (max-width: 600px) {    
#game-pop .inner .box{
    margin: 20px 30px;
    padding: 4px;
}
#game-pop .inner .box .box-inner{
    padding: 10px;
}
#game-pop .inner h2{
    font-size: 1em;
    top: 5px;
}
#game-pop .inner .close{
    width: 40px;
    height: 40px;
    right: 30px;
    top: 20px;
}
#game-pop .inner .close:hover{
    right: 30px;
}
#game-pop .inner .corner{
    display: none;
}
#game-pop .inner .arrow{
    width: 40px;
    height: 50px;
    top: calc(50% - 25px);
}
#game-pop .action a{
    font-size: 0.8em;
    height: 30px;
    line-height: 30px;
    min-width: auto;
    margin-right: 3px;
}
#game-pop .action a span {
    background-size: 10px auto;
    padding: 0 25px 0 5px;
}
#game-pop .inner .box .box-inner .box-screenpad .text h3{
    font-size: 1em;
    margin-bottom: 8px;
}
#game-pop .inner .box .box-inner .box-screenpad .text{
    padding: 10px;
}
#game-pop .inner .box .box-inner .box-screenpad .text p{
    font-size: 0.8em;
    margin-bottom: 10px;
}
}


@media screen and (max-width: 400px) {    
#game-pop .inner .box .box-inner .box-video .image a:after{
    left: calc(50% - 30px);
    top: calc(50% - 30px);
    width: 60px;
    height: 60px;
}
}


