@charset "UTF-8";
body {
    font-family: "微軟正黑體", "Malgun Gothic", Dotum, Tahoma, sans-serif;
    background-color: #FFF;
    color: #000;
}

body{
    overflow-y: scroll;
    overflow-x: hidden;
}

img{
    max-width: 100%;
}

ul,li,a{
    text-decoration: none;
    list-style: none;
    padding: 0px;
}


/* 側欄選單 */
aside{
    position: fixed;
    right: 0px;
    top: 30vh;
    width: 276px;
    height: 280px;
    z-index: 999;
}
aside{
    transform: translateX(0%);
    transition: .6s all;
}
aside.on{
    transform: translateX(120%);
    transition: .6s all;
}
aside ul a li{
    filter: brightness(100%);
    width: 276px;
    height: 54px;
    margin-bottom: 10px;

}

aside ul a li:hover,
.arrow:hover{
    filter: brightness(150%);

}
aside ul a:nth-of-type(1) li{
    position: relative;
    background-image: url('../images/aside_1.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/aside_2.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/aside_3.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/aside_4.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
    margin-bottom: 60px;
}
aside ul a:nth-of-type(5) li{
    position: relative;
    height: 78px;
    background-image: url('../images/aside_5.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}





.arrow{
    position: fixed;
    width: 71px;
    height: 56px;
    right: 0px;
    top: calc(30vh - 80px);
    background-image: url('../images/aside_arrow_off.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: 0.6s all;
    z-index: 100;
}
.arrow.on{
    background-image: url('../images/aside_arrow_on.png');
    transition: .6s all;
}






main, .section1{
    position: relative;
    min-height: 100vh;
    background-color: #000;
    overflow: hidden;
}


main{
    background:url('../images/main_bg.png') no-repeat center center;
    background-size: cover;
    min-height: 1050px;
    z-index: 1;
}
/* 
main::before{
    content:'';
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background:url('../images/main_bg_char.png') no-repeat center center;
    background-size: cover;

} */

.container div{
    position: relative;    
}
main .bg_char{
    position:absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    background:url('../images/main_bg_char.png') no-repeat center center;
    background-size: cover;
    animation-fill-mode: backwards;
}
main .title{
    top: 24vh;
    float: left;
}

main .title img,
main .title .bt{
    animation-fill-mode: backwards
}

main .bt{
    height: 59px;   
    transition: .3s all;
}
main .bt:hover{
    transition: .3s all;
    filter: brightness(130%);
}

main .bt a{
    position: absolute;
    width: 100%;
    height: 100%;
}
main .bt:nth-of-type(1){
    background:url('../images/main_btn_1.png') no-repeat center center;
    background-size: contain;
}
main .bt:nth-of-type(2){
    background:url('../images/main_btn_2.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;
}
main .main_btn:hover,
main .main_btn:active{
    filter: brightness(150%) drop-shadow(0px 0px 20px rgba(255, 182, 243,.8));
    transition: 0.3s all;
}
main .main_btn{
    position: relative;
    width: 145px;
    height: 151px;
    left: -8%;
    top: calc(65vh);
    background-color: unset;
    border: unset;
    background-image: url(../images/main_play_btn.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: 0.3s all;
}
.modal {
    position: fixed;
    top: 0px;
    width: 80vw;
    max-width: 100vw;
    margin: auto;
    overflow: hidden;
}
.modal.in .modal-dialog {
    width: 100%;
    margin-top: 8%
}
.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%;
}
/* section1 */
.section1{
    margin-top: -48px;
    height: initial;
    background-image: url('../images/section1_bg.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 0;
    padding-bottom: 200px;
}
.section1 .title{
    margin-top: 60px;
}
.section1 .container{
    text-align: center;
    
}
.section1 .info{
    position: relative;
    margin-top: 100px;
}
.section1 .comp_1{
    margin-top: 180px;
}

.section1 .comp_2{
    margin-top: 200px;
}
.section1 .comp_3{
    margin-top: 350px;
}
.section1 .comp_3 img{
    position: relative;
    z-index: 1;
}
.section1 .comp_3 .btn{
    position: relative;
    width: 357px;
    max-width: 60%;
    height: 92px;
    margin: auto;
    margin-top: 50px;
    background: url('../images/section3_btn.png') no-repeat center center;
    background-size: contain;
    transition: .3s all;
}
.section1 .comp_3 .btn:hover{
    filter: brightness(150%);
    transition: .3s all;
}
.section1 .comp_2:before{
    content: '';
    position: absolute;
    left: -33%;
    bottom: -60px;
    width: 395px;
    max-width: 100%;
    height: 740px;
    background: url('../images/section1_char.png') no-repeat center center;
    background-size: contain;
    z-index: 0;
}
.section1 .comp_2:after{
    content: '';
    position: absolute;
    right: -36%;
    bottom: -70px;
    width: 431px;
    max-width: 100%;
    height: 773px;
    background: url('../images/section2_char.png') no-repeat center center;
    background-size: contain;
    z-index: 0;
}

.section1 .comp_3:before{
    content: '';
    position: absolute;
    left: -35%;
    bottom: -165px;
    width: 476px;
    max-width: 100%;
    height: 723px;
    background: url('../images/section3_char.png') no-repeat center center;
    background-size: contain;
    z-index: 0;
}
.section1 .comp_3:after{
    content: '';
    position: absolute;
    right: -30%;
    bottom: 125px;
    width: 385px;
    max-width: 100%;
    height: 754px;
    background: url('../images/section3_char2.png') no-repeat center 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: 1200px){
    .section3 .info .content .wrapper{
        height: 68%;
    }
}


@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%;
    }    
    .section3 .info .content{
        background-image: unset;
    }
    .section3 .info .content .wrapper{
        width: 100%;

    }
    .section3 .info .content .wrapper{
        padding: 15px;
        box-shadow: 0px 0px 15px #afd6e2;
    }
    .section4 .container .tab-content .tab-content{
        left: -100px;
        width: calc(100% + 100px);
    }

}
@media screen and (max-width: 767px){
    .section1 .info .content::after,
    .section3 .info .content::after{
        content: unset;
    }
    .section1 .comp_1::before,
    .section1 .comp_2::before,
    .section1 .comp_3::before,
    .section1 .comp_3::after,
    .section1 .comp_2::after{
        display: none;
    }

}
@media screen and (max-width: 991px){
    .container {
        width: 100vw;
    }   
}


@media (max-width:1200px) {
    .footer .container{
        width: 100%;
    }
}


@media (max-width: 480px){
    .home img{
        width: 170px;
        transform: translate(-45px,5px);
    }
    .fb{
        display: none;
    }    
    main{
        min-height: 100vh;
    }
    main .title{
        top: 40vh;
        position: absolute;
        left: 50%;
        transform: translate(-50%);
        width: 100%;
    }
    .section1{
        padding-bottom: 150px;
    }
    .section1 .comp_1{
        margin-top: 100px;
    }
    .section1 .comp_2{
        margin-top: 100px;
    }
    .section1 .comp_3{
        margin-top: 200px;
    }
    main .bg_char{
        background: url(../images/main_bg_char.png) no-repeat 77% center;
        background-size: cover;
    }
    main .main_btn{
        left: 50%;
        top: calc(100vh - 140px);        
        transform: translateX(-50%);
        width: 100px;
        height: 100px;
    }
    .modal.in .modal-dialog{
        margin-top: 100px;
    }
    .modal .btn{
        width: 50px;
        height: 50px;
        top: -50px;
        right: 10px;
    }
    .modal .btn::before,
    .modal .btn::after{
        width: 50px;
    }

    .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);
    }





}

