@charset "UTF-8";
body {
    font-family: "微軟正黑體", "Malgun Gothic", Dotum, Tahoma, sans-serif;
    background-color: black;
    color: #fff;
    overflow-y: scroll;
    overflow-x: hidden;
}

img {
    max-width: 100%;
}

ul, li, a {
    text-decoration: none;
    list-style: none;
    padding: 0px;
    overflow: unset;
}

button, .btn-info, .btn-info.focus, .btn-info:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .btn-info:not(:disabled):not(.disabled):active:focus, .show > .btn-info.dropdown-toggle:focus, button:focus ,.btn-info:not(:disabled):not(.disabled).active{
    outline: unset;
    border: 0px;
    -webkit-box-shadow: unset;
    box-shadow: unset;
    background-color: unset;

}

audio::-webkit-media-controls-panel,
audio::-webkit-media-controls-mute-button,
audio::-webkit-media-controls-play-button,
audio::-webkit-media-controls-timeline-container,
audio::-webkit-media-controls-current-time-display,
audio::-webkit-media-controls-time-remaining-display,
audio::-webkit-media-controls-timeline,
audio::-webkit-media-controls-volume-slider-container,
audio::-webkit-media-controls-volume-slider,
audio::-webkit-media-controls-seek-back-button,
audio::-webkit-media-controls-seek-forward-button,
audio::-webkit-media-controls-fullscreen-button,
audio::-webkit-media-controls-rewind-button,
audio::-webkit-media-controls-return-to-realtime-button,
audio::-webkit-media-controls-toggle-closed-captions-button,
audio::-webkit-media-controls-panel {
  font-size: 12px;
  color: #fff;
}

audio::-webkit-media-controls-enclosure {
  background: none;
  border-radius: 10px;
  background-color: none;
}

audio::-webkit-media-controls-play-button,
audio::-webkit-media-controls-mute-button,
audio::-webkit-media-controls-fullscreen-volume-min-button,
audio::-webkit-media-controls-volume-slider,
audio::-webkit-media-controls-fullscreen-volume-slider,
audio::-webkit-media-controls-volume-slider-container {
  display: flex;
  background-color: transparent;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:focus, .nav-pills > li.active > a:hover {
  color: unset;
  background-color: unset;
}

.dropdown-toggle::after {
  content: unset;
}
.wow{
    animation-fill-mode: backwards;
}


@charset "UTF-8";
body {
    font-family: "微軟正黑體", "Malgun Gothic", Dotum, Tahoma, sans-serif;
    background-color: #FFF;
    color: #000;
}
.modal::-webkit-scrollbar {
    display: none;
}

main .bt a{
    position: absolute;
    width: 100%;
    height: 100%;
}

/* 側欄選單 */

.arrow{
    position: fixed;
    width: 19px;
    height: 315px;
    right: 5px;
    top: calc(30vh + 10px);
    background-image: url('../images/aside_arrow_off.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: 0.6s all;
    z-index: 1000;
    cursor: pointer;
}
.arrow.on{
    background-image: url('../images/aside_arrow_on.png');
    transition: .6s all;
}
aside{
    position: fixed;
    right: 20px;
    top: 30vh;
    width: 193px;
    height: 280px;
    z-index: 999;
    filter: drop-shadow(0px 0px 10px #000);
}
aside{
    transform: translateX(0%);
    transition: .6s all;
}
aside.on{
    transform: translateX(120%);
    transition: .6s all;
}
aside ul a li{
    filter: brightness(100%);
    width: 193px;
    height: 91px;
    margin-bottom: -30px;

}

aside ul a li:hover,
.arrow:hover{
    filter: brightness(150%);

}
aside ul a:nth-of-type(1) li{
    position: relative;
    background-image: url('../images/aside1.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
}
aside ul a:nth-of-type(2) li{
    position: relative;
    background-image: url('../images/aside2.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
}
aside ul a:nth-of-type(3) li{
    position: relative;
    background-image: url('../images/aside3.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
}
aside ul a:nth-of-type(4) li{
    position: relative;
    background-image: url('../images/aside4.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
}
aside ul a:nth-of-type(5) li{
    position: relative;
    background-image: url('../images/aside5.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

/* 固定選單 */
.fix_menu{
    position: absolute;
    top: calc(100vh - 100px);
    z-index: 999;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    text-align: center;
    
}
.fix_menu.fix{
    position: fixed;
    top: 80px;
}
.fix_menu .container{
    position: relative;
}
.fix_menu .container div{
    display: inline-block;
    width: 30%;
    cursor: pointer;
}
.fix_menu div{
    transition: .3s all;
}
.fix_menu div:hover{
    filter: brightness(120%);
}






body{
    background-color: #000;
}

main, .section1,.section2,.section3{
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    padding-bottom: 80px;
}


main{
    background:url('../images/main_bg.jpg') no-repeat center center;
    background-size: cover;
    min-height: calc(100vh - 50px);
    animation: main_bg 3s linear 0s 1;
}

@keyframes main_bg {
    0%,19%,20%,39%,40%,59%,60%,79%,80%{
        opacity: 0;
    }
    10%,30%,50%,70%,90%{
        opacity: 1;
    }
    0%,19%{
        background:url('../images/main_bg.jpg') no-repeat 80% 80%;
        background-size: 150%;
    }

    20%,39%{
        background:url('../images/main_bg.jpg') no-repeat 20% 90%;
        background-size: 150%;
    }
    40%,59%{
        background:url('../images/main_bg.jpg') no-repeat 0% 80%;
        background-size: 150%;
    }
    60%,79%{
        background:url('../images/main_bg.jpg') no-repeat 30% 0%;
        background-size: 150%;
    }
    80%{
        background:url('../images/main_bg.jpg') no-repeat center center;
        background-size: 100%;
    }
    
    
}

.container div{
    position: relative;    
    
}
main .bg_char{
    position:absolute;
    animation-fill-mode: backwards;
    margin-left: -50%;
    max-width: 150vw;
}
main .bg_char_1{    
    width: 1027px;
    height: 1236px;
    max-height: 100%;
    left: 70vw;
    top: 0%;
    margin-left: -514px;
    bottom: -5vh;
    background:url('../images/main_char.png') no-repeat center center;
    background-size: contain;
}

main .bg_char_txt{
    width: 389px;
    height: 91px;
    left: 115vw;
    top: 60vh;
    background:url('../images/main_txt.png') no-repeat center center;
    background-size: contain;
}
main .title{
    top: calc(50vh - 341px);
    display: inline-block;
    width: 582px;
    height: 683px;
    max-width: 100%;
    left: 66%;
    margin-left: -50%;
}

main .row {
    width: 500px;
    max-width: 100%;
    left: 43%;
    top: calc(50vh - 430px);
    margin-top: -50px;
    transform: translate(-50%);
    justify-content: center;
}
main .bt {
    padding: 0px;
    margin-left: -15px;
    margin-right: -15px;
    height: 91px;
    transition: .3s all;
    transition: .3s all ;
}
main .bt:hover{
    filter: brightness(120%);
}
main .bt:nth-of-type(1) {
    background: url(../images/main_btn1.png) no-repeat center center;
    background-size: contain;
}
main .bt:nth-of-type(2) {
    background: url(../images/main_btn2.png) no-repeat center center;
    background-size: contain;
}
main .bt:nth-of-type(3) {
    background: url(../images/main_btn3.png) no-repeat center center;
    background-size: contain;
}

main .main_btn:active,
main .main_btn:focus,
main .main_btn:active:hover,
main .main_btn:active,
main .main_btn:hover{
    border: unset;
    background-color: unset;
    outline: unset;
    background-image: url(../images/main_play.png);
}
main .main_btn:hover,
main .main_btn:active{
    filter: brightness(150%) drop-shadow(0px 0px 20px rgba(255, 17, 17, 0.8));
    transition: 0.3s all;
}
main .main_btn{
    position: relative;
    width: 97px;
    height: 99px;
    display: inline-block;
    left: 100%;
    margin-left: -45%;
    top: calc(32vh - 470px);
    background-color: unset;
    border: unset;
    background-image: url(../images/main_play.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: 0.3s all;
}
main .main_btn::after{
    content: '';
    position: absolute;
    left: -30px;
    top: -30px;
    width: 157px;
    height: 156px;
    background: url('../images/main_play_after.png') no-repeat center center;
    background-size: contain;
    animation: spin 10s linear 0s infinite;
}
@keyframes spin {
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(360deg);
    }
}

.modal {
    position: fixed;
    top: 0px;
    width: 80vw;
    max-width: 100vw;
    margin: auto;
    overflow: hidden;
}
.modal .modal-dialog {
    width: 100%;
    max-width: 80vw;
    margin-top: 80px;
    text-align: center;
    top: 5vh;
}
.modal-content{
    background-color: unset;
    box-shadow: unset;
    border: unset;
}
.modal .video_wrapper {
    position: relative;
    min-width: unset;
    height: 70vh;
    /* padding-bottom: 55%; */
}

.modal .btn {
    position: absolute;
    top: -80px;
    right: 0px;
    width: 80px;
    height: 80px;
    background: #0007;
}
.btn-default:hover {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad;
}
.modal .btn::before {
    content: '';
    position: absolute;
    width: 70px;
    height: 2px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%) rotate(45deg);
    background: #fff;
    transition: 0.6s all;

}
.modal .btn::after {
    content: '';
    position: absolute;
    width: 70px;
    height: 2px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%) rotate(-45deg);
    background: #fff;
    transition: 0.6s all;
}
.modal .btn:hover::before {
    transform: translate(-50%,-50%) rotate(-45deg);
    transition: 0.6s all;
    background: rgb(189, 7, 7);
}
.modal .btn:hover::after {
    transform: translate(-50%,-50%) rotate(45deg);
    transition: 0.6s all;
    background: rgb(189, 7, 7);
}
.modal .video_wrapper {
    position: relative;
    min-width: unset;
    height: 80vh;
    /* padding-bottom: 55%; */
}
.modal .video_wrapper iframe {
    width: 100%;
    height: 100%;
}

/* section */



.section1{
    margin-top: -75px;
    background: url('../images/section1_bg.png') no-repeat center top;
    background-size: cover;
    padding-top: 100px;
}

.section1::before{
    content: '';
    position: absolute;
    width: 156px;
    height: 72px;
    left: 50%;
    top: 0px;
    transform: translate(-50%,-10px);
    background: url('../images/sectoin1_before.png') no-repeat center center;
    background-size: contain;
    animation: arrow_down 1.5s ease-in-out 0s infinite;
    
}
@keyframes arrow_down {
    0%{
        transform: translate(-50%,-10px);
        opacity: 0;
    }
    20%{
        transform: translate(-50%,-10px);
        opacity: 1;
    }
    70%,100%{
        transform: translate(-50%,15px);
        opacity: 0;
    }
    
}


.section2{
    margin-top: -75px;
    background: url('../images/section2_bg.png') no-repeat center top;
    background-size: cover;
    padding-top: 100px;
}
.section2 .container::before{
    content: '';
    position: absolute;
    width: 527px;
    height: 693px;
    max-width: 100%;
    top: 20%;
    left: 15%;
    transform: translateX(-50%);
    background: url('../images/section2_char.png') no-repeat center;
    background-size: contain;
}

.section3{
    margin-top: -75px;
    background: url('../images/section3_bg.png') no-repeat center top;
    background-size: cover;
    padding-top: 100px;
}
.section3 .container .info{
    z-index: 1;
}
    
.section3 .container::before{
    content: '';
    position: absolute;
    width: 509px;
    height: 852px;
    max-width: 100%;
    top: 20%;
    left: 15%;
    transform: translateX(-50%);
    background: url('../images/section3_char1.png') no-repeat center;
    background-size: contain;
}
.section3 .container::after{
    content: '';
    position: absolute;
    width: 689px;
    height: 733px;
    max-width: 100%;
    top: 0%;
    right: 15%;
    transform: translateX(50%);
    background: url('../images/section3_char2.png') no-repeat center;
    background-size: contain;
    z-index: 0;
}




/* .footer */
.footer {
    text-align: center;
    background: #000;

    
}

.footer .container{
    position: relative;
    width:1200px;
    margin:auto;
    padding: 15px;
    vertical-align: middle;
    display: inline-block;
}

.footer li{
    display: inline-block;
    padding: 0px 15px;
    font-size: 12px;
    color: #fff;
    text-align: left;
    vertical-align: middle;
}
.footer li img{
    width: 100%;

}
.footer li:nth-of-type(1){
    width: 22%;
}
.footer li:nth-of-type(2){
    width: 20%;
}
.footer li:nth-of-type(3){
    width: 28%;
}
.footer li:nth-of-type(3) p{
    margin: 0%;
}
.footer li:nth-of-type(4){
    width: 30%;
    
}
.footer li:nth-of-type(4) img{
    display: inline-block;
    width: 20%;
    vertical-align: middle;
}
.footer li:nth-of-type(4) p{
    margin: 0px 0% 0% 2%;
    display: inline-block;
    width: 78%;
    vertical-align: middle;
}



@media screen and (max-width: 768px){
    .footer li:nth-of-type(1){
        width: 30%;
    }
    .footer li:nth-of-type(2){
        width: 28%;
        margin-right: 42%;   
    }
    .footer li:nth-of-type(3){
        width: 50%;
    }
    .footer li:nth-of-type(4){
        width: 50%;
    }
    .footer li:nth-of-type(4) img{
        width: 15%;
    }    
  

}
@media screen and (max-width: 768px){
    main{
        animation: main_bg_768 3s linear 0s 1 forwards;
    }
    @keyframes main_bg_768 {
        0%{
            background:url('../images/main_bg.jpg') no-repeat 50% center;
            opacity: 0;
        }
        100%{
            background:url('../images/main_bg.jpg') no-repeat 20% center;
            opacity: 1;
        }
        
    }
    main .row{
        position: absolute;
        top: unset;
        bottom: 150px;
        left: 50%;
    }
    
    .modal .btn{
        width: 30px;
        height: 30px;
        top: -30px;
        right: 10px;
    }
    .modal .btn::before,
    .modal .btn::after{
        width: 30px;
    }
    .modal.items .btn{
        width: 50px;
        height: 50px;
        top: -25px;
    }
    .fix_menu.fix{
        top: unset;
        bottom: 50px;
    }
 
    main .bg_char_txt{
        top: 0vh;
    }
    main .title{
        top: calc(60vh - 314px);
        left: 50%;
    }
    main .main_btn{
        top: calc(85vh - 530px);
        left: 85%;
    }

    .section2 .container::before,
    .section3 .container::before,
    .section3 .container::after{
        display: none;
    }
    .section1, .section2, .section3{
        min-height: unset;
    }
}


@media (max-width:1200px) {
    .footer .container{
        width: 100%;
    }
}


@media (max-width: 480px){
    main{
        height: 100vh;
    }
    main .bg_char_1{
        margin-left: -50%;
        left: 35%;
        top: unset;
        bottom:18vh;
    }
    .section1::before{
        width: 100px;
        top: -10px;
    }

    .footer li{
        margin-bottom: 15px;
    }
    .footer li:nth-of-type(1){
        width: 42%;
    }
    .footer li:nth-of-type(2){
        width: 40%;
        margin-right: 18%;   
    }
    .footer li:nth-of-type(3){
        width: 100%;
    }
    .footer li:nth-of-type(4){
        width: 100%;
    }
    .footer li:nth-of-type(4) img{
        width: 15%;
    }


    .fix_btn ul{
        transform: scale(.8) translate(-100px,5px);
    }





}


@media (max-width: 480px){
    main .bg_char_2{
        left: 80vw;
        bottom: 9vh;
        min-width: 80vw;
    }
    main .bg_char_4{
        left: 90vw;
        bottom: -20vh;
    }
    main .bg_char_3{
        left: 27vw;
        bottom: -43vh;
    }
    main .bg_char_txt{
        display: none;
    }
    main .title{
        left: 50%;
        top: calc(100vh - 550px);
    }
    main .main_btn {
        top: calc(95vh - 880px);
        left: 71%;
        max-width: 70px;
    }
    main .row{
        bottom: 100px;
        margin: 0px;
    }
    main .main_btn::after{
        width: 140px;
    }
    .fb {
        display: none;
    }
}