/* Basic */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap');
:root {
    --black: #111111;
    --white: #FFFFFF;
    --dark_gray: #505050;
    --gray: #7B7973;
    --light_gray: #A6A6A6;
    --main: #272B2C;
    --trans_blue: rgba(39, 43, 44,0.7);
    --light_blue: #5EF2FC;
    --transparent: rgba(0,0,0,0);
    --font_size_xxs: 10px;
    --font_size_xs: 12px;
    --font_size_sm: 14px;
    --font_size_md: 16px;
    --font_size_lg: 18px;
    --font_size_xl: 20px;
    --font_size_xxl: 24px;
    --font_size_title: 26px;
    --font_family_noto_serif: "Noto Serif TC", serif;
    --font_family_noto_sans: "Noto Sans TC", sans-serif;
}

html, body {
    padding: 0px;
    margin: 0px;
    overflow-x: hidden;
    background: var(--main);
    font-weight: 400;
}

html {
    overflow-y: hidden;
}

img {
    width: 100%;
    height: auto;
}

img.bg {
    object-fit: cover !important;
}

a {
    cursor: pointer;
    text-decoration: none;
    color: var(--white);
}

button {
    background: rgba(0, 0, 0, 0);
    border: 0px;
    cursor: pointer;
    padding: 0px;
    margin: 0px;
}

.ssBtnDefault {
    display: none;
}

a.scale:hover,
button.scale:hover {
    transform: scale(1.15);
    transition: all 1s ease;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

.cus_row {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

::-webkit-scrollbar {
    width: 6px;
    background: rgb(255 255 255 / 60%);
}

::-webkit-scrollbar-thumb {
    border-radius: 0px;
    background: var(--black);
}
.swiper-pagination {
    height: 40px;
    top: auto !important;
    bottom: 0.5% !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-pagination-bullet {
    width: 16px;
    height: 16px;
    content: url(/official/images/all/all_pagination_btn.png);
    margin: 0px 1vw !important;
    opacity: 0.9;
}

.swiper-pagination-bullet-active {
    width: 26px;
    height: 26px;
    content: url(/official/images/all/all_pagination_btn_active.png);
    background: var(--transparent);
}

@keyframes s1_ch {
    0% {
        opacity: 0;
        left: -35%;
    }
    
    100% {
        opacity: 1;
        left: 3.5%;
    }
}
.animation_s1_ch {
    animation: s1_ch 2s ease forwards;
}

@keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }
    
    25%, 75% {
        opacity: 0;
    }
}
.animation_flash {
    animation: flash 1.5s ease forwards;
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(50px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
.animation_fadeInUp {
    animation: fadeInUp 1.5s ease-out forwards;
}

@keyframes fadeInUp_translateX50 {
    0% {
        opacity: 0;
        transform: translateY(50px) translateX(-50%);
    }

    100% {
        opacity: 1;
        transform: translateY(0) translateX(-50%);
    }
}
.animation_fadeInUp_translateX50 {
    animation: fadeInUp_translateX50 1.5s ease-out forwards;
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(-40px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
.animation_fadeInRight {
    animation: fadeInRight 1.5s ease-out forwards;
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(40px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
.animation_fadeInLeft {
    animation: fadeInLeft 1.5s ease-out forwards;
}

@keyframes zoomIn_translateX50 {
    0% {
        opacity: 0.6;
        transform: scale(0.6) translateX(-50%);
    }

    100% {
        opacity: 1;
        transform: scale(1) translateX(-50%);
    }
}
.animation_zoomIn_translateX50 {
    animation: zoomIn_translateX50 1.8s ease-out forwards;
}

@keyframes zoomIn_translateY50 {
    0% {
        opacity: 0.8;
        transform: scale(0.8) translateY(-50%);
    }

    100% {
        opacity: 1;
        transform: scale(1) translateY(-50%);
    }
}
.animation_zoomIn_translateY50 {
    animation: zoomIn_translateY50 2s ease-out forwards;
}

@keyframes float_1 {
    0% {
        transform: translateY(0px);
    }
    
    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}
.animation_float_1 {
    animation: float_1 3s ease-in-out infinite;
}

@keyframes float_2 {
    0% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(-5px, -15px);
    }

    100% {
        transform: translate(0, 0);
    }
}
.animation_float_2 {
    animation: float_2 4s ease-in-out infinite;
}

@keyframes float_3 {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(15px);
    }

    100% {
        transform: translateY(0);
    }
}
.animation_float_3 {
    animation: float_3 2.5s ease-in-out infinite;
}

.animation_delay_300 {
    animation-delay: 0.3s;
}

.animation_delay_500 {
    animation-delay: 0.5s;
}

.animation_delay_800 {
    animation-delay: 0.8s;
}

.animation_delay_1000 {
    animation-delay: 1s;
}

.animation_delay_1500 {
    animation-delay: 1.5s;
}

.animation_delay_2000 {
    animation-delay: 2s;
}



/* Section Setting */
.all {
    margin: 0;
    padding: 0;
    position: relative;
    overflow: hidden;
}

section {
    width: 100%;
    position: absolute;
    left: 0%;
    z-index: 10;
}

#s1 {
    height: calc(100vw * 0.58);
    top: 0px;
}

#s2 {
    height: calc(100vw * 0.6);
    top: calc(100vw * 0.58);
}

#s3 {
    height: calc(100vw * 0.55);
    top: calc(100vw * (0.58 + 0.6));
}

#s4 {
    height: calc(100vw * 0.59);
    top: calc(100vw * (0.58 + 0.6 + 0.55));
}

#s5 {
    height: calc(100vw * 0.575);
    top: calc(100vw * (0.58 + 0.6 + 0.55 + 0.59));
}

#s6 {
    height: calc(100vw * 0.51);
    top: calc(100vw * (0.58 + 0.6 + 0.55 + 0.59 + 0.575));
}



/* Popup */
.popup {
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.7);
    position: fixed;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.popup .content {
    width: 25%;
    position: relative;
    z-index: 10;
    overflow-x: hidden;
}

.popup button.close {
    width: 8%;
    position: absolute;
    right: 3%;
    top: 0%;
    display: inline-block;
    z-index: 12;
}

.popup button.close:hover {
    transform: rotate(360deg);
    transition: all 1s ease;
}

.popup.video .content {
    width: 1100px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    padding-top: 3%;
}

.popup.video .content iframe {
    width: 800px;
    height: 450px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-51%, -45%);
}

.popup.video .content video {
    position: absolute;
    width: 67%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -46%);
}

.popup.top_ad {
    display: flex;
}

.popup.top_ad .content {
    width: 50%;
}

.popup.top_ad a.click {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0%;
    bottom: 0%;
    cursor: pointer;
    z-index: 11;
}


/* Main */
nav {
    width: 8%;
    position: fixed;
    right: 2%;
    top: 21%;
    z-index: 101;
}

nav img.bg {
    object-fit: cover;
}

nav .content {
    width: 75%;
    height: 76%;
    position: absolute;
    left: 50%;
    bottom: 13%;
    transform: translateX(-48%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

nav .content a,
nav .content button {
    width: 80%;
}

nav .content img.qrcode {
    width: 70%;
    margin-bottom: 5px;
}

nav .content a img,
nav .content button img,
nav button.top img.bg {
    object-fit: cover;
}

nav button.top {
    width: 54%;
    height: 5%;
    position: absolute;
    left: 50%;
    bottom: 7.5%;
    transform: translateX(-47%);
}

.fixed_bottom {
    width: 100%;
    height: 70px;
    background: rgba(0, 0, 0, 0.4);
    position: fixed;
    bottom: 0%;
    z-index: 99;
    transition: all 0.5s ease;
}

.fixed_bottom .row {
    width: 100%;
    position: absolute;
    bottom: 0%;
    left: 0%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fixed_bottom .row a,
.fixed_bottom .row button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin: 1vw 2.5vw;
}

.fixed_bottom .row a:hover div,
.fixed_bottom .row button:hover div {
    color: var(--light_blue);
}

.fixed_bottom .row a .outer,
.fixed_bottom .row button .outer {
    display: inline-block;
    border: 1px solid var(--white);
    transform: rotate(45deg);
    margin: 10px;
}

.fixed_bottom .row a .inner,
.fixed_bottom .row button .inner {
    width: 8px;
    height: 8px;
    margin: 3px;
    background: var(--white);
    transform: rotate(90deg);
}

.fixed_bottom .row a span,
.fixed_bottom .row button span,
.fixed_bottom .row .line {
    color: var(--white);
    font-size: 1vw;
    font-weight: 500;
    font-family: var(--font_family_noto_serif);
    white-space: nowrap;
}

.fixed_bottom .row a:hover div.outer,
.fixed_bottom .row button:hover div.outer {
    border: 1px solid var(--light_blue);
}

.fixed_bottom .row a:hover div.inner,
.fixed_bottom .row button:hover div.inner {
    background: var(--light_blue);
}

.fixed_bottom .row a:hover span,
.fixed_bottom .row button:hover span {
    color: var(--light_blue);
}

.fixed_bottom .row_deco_left {
    height: 100%;
    width: auto;
    position: absolute;
    bottom: 0%;
    left: 0%;
    z-index: 100;
}

.fixed_bottom .row_deco_right {
    height: 100%;
    width: auto;
    position: absolute;
    bottom: 0%;
    right: 0%;
    z-index: 100;
}

#s1 header.pc {
    width: 100%;
    height: 60px;
    background: var(--trans_blue);
    position: absolute;
    left: 0%;
    top: 0%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 30px;
    box-sizing: border-box;
    z-index: 12;
}

#s1 header.pc img.icon {
    width: 80%;
}

#s1 header.pc .content {
    display: flex;
}

#s1 header.pc a {
    height: 80%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px 14px;
}

#s1 header.pc a img {
    width: 30px;
    padding-right: 4px;
}

#s1 img.title {
    width: 21%;
    position: absolute;
    left: 63%;
    top: 28%;
}

#s1 button.play {
    width: 3.8%;
    position: absolute;
    left: 76%;
    top: 27%;
}

#s1 .box {
    width: 30%;
    position: absolute;
    top: 64%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 12;
}

#s1 .box .icon {
    width: 18%;
    position: absolute;
    top: 50%;
    left: 4%;
    transform: translateY(-50%);
}

#s1 .box img.qrcode {
    width: 18%;
    position: absolute;
    top: 50%;
    left: 23.5%;
    transform: translateY(-50%);
}

#s1 .box a.banner {
    width: 55%;
    position: absolute;
    top: 50%;
    left: 43%;
    transform: translateY(-50%);
}

#s2 img.deco {
    width: 10%;
    position: absolute;
    top: 80%;
    left: 36%;
    z-index: 10;
}

#s2 .news {
    width: 40%;
    height: 47.5%;
    position: absolute;
    right: 16.8%;
    bottom: 11%;
}

#s2 .news .cus_row {
    width: 90%;
    justify-content: space-between;
}

#s2 .news .cus_row.head {
    width: 100%;
    position: absolute;
    left: 0%;
    top: 0%;
}

#s2 .news .head button {
    width: 24%;
}

#s2 .news .head button img {
    object-fit: cover;
}

#s2 .news .content {
    width: 100%;
    min-height: 250px;
    position: absolute;
    top: 23%;
    left: 0%;
}

#s2 .news .content .body {
    width: 96%;
    padding: 2.5% 2%;
    border-radius: 10px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#s2 .news .content .body img {
    width: 16%;
    z-index: 12;
}

#s2 .news .content .body img.row_bg {
    height: 60%;
    width: auto;
    display: none;
    position: absolute;
    right: 0%;
    z-index: 10;
}

#s2 .news .content .body .text {
    width: 78%;
    font-size: var(--font_size_md);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 10px;
    z-index: 12;
}

#s2 .news .content .body .text .title {
    color: var(--gray);
    font-weight: 600;
    width: 78%;
}

#s2 .news .content .body .text .date {
    color: var(--light_gray);
}

#s2 .news .back_to_news {
    width: 25%;
    margin-top: 6px;
    position: absolute;
    right: 2%;
    bottom: 5%;
}

#s2 .news .back_to_news img {
    object-fit: cover;
}

#s2 .news .pagination {
    width: 60%;
    padding: 6px;
    margin: 6px 0px;
    position: absolute;
    bottom: 5%;
    left: 7%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box;
    border-radius: 6px;
}

#s2 .news .pagination .page-btn {
    width: 0.55vw;
    height: 0.55vw;
    background: url('/official/images/all/all_pagination_btn.png') no-repeat center;
    background-size: cover;
    margin: 0px 0.6vw;
}

#s2 .news .pagination .page-btn.active {
    width: 1vw;
    height: 1vw;
    background: url('/official/images/all/all_pagination_btn_active.png') no-repeat center;
    background-size: cover;
}

#s2 .news .pagination button.prev,
#s2 .news .pagination button.next {
    width: 6.5%;
    margin: 0px 0.6vw;
}

#s2 .fb {
    width: 18%;
    height: 53%;
    position: absolute;
    left: 18%;
    top: 39%;
}

#s3 img {
    width: 35%;
    position: absolute;
    top: 14%;
    left: 32%;
    transform: translateX(-50%);
}

#s3 p {
    color: var(--dark_gray);
    position: absolute;
    top: 34%;
    left: 59%;
    text-align: center;
    line-height: 1.8;
    font-size: 1.2rem;
}

.deco.pc {
    will-change: transform, opacity;
}

#s4 button {
    width: 8%;
    position: absolute;
    z-index: 11;
}

#s4 button:nth-child(1) {
    left: 26%;
    top: 28%;
}

#s4 button:nth-child(2) {
    left: 26%;
    top: 43%;
}

#s4 button:nth-child(3) {
    left: 18%;
    top: 35.5%;
}

#s4 button:nth-child(4) {
    left: 18%;
    top: 50.5%;
}

#s4 button:nth-child(5) {
    left: 26%;
    top: 58%;
}

#s4 button:nth-child(6) {
    left: 18%;
    top: 66%;
}

#s4 img.ch {
    width: 45%;
    position: absolute;
    right: 18%;
    top: 54%;
    transform: translateY(-50%);
    z-index: 10;
}

#s5 .content {
    width: 53%;
    position: absolute;
    left: 50%;
    top: 28%;
    transform: translateX(-50%);
}

#s5 .content iframe {
    width: 49vw;
    height: 26vw;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -52%);
}

#s6 .content {
    width: 54.5%;
    position: absolute;
    right: 14%;
    top: 10%;
}

#s6 .content .mySwiper2 {
    width: 100%;
    position: relative;
    padding-bottom: 15%;
    padding-top: 10%;
    padding-left: 1%;
    padding-right: 1%;
}

#s6 .content .mySwiper2 .swiper-slide {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#s6 .content .mySwiper2 .swiper-slide img {
    height: auto;
    width: 75%;
}

#s6 .content .mySwiper2 .swiper-slide {
    filter: brightness(0.6);
    transform: scale(0.85);
    padding-top: 6%;
    padding-bottom: 6%;
}

#s6 .content .mySwiper2 .swiper-slide.swiper-slide-active {
    filter: brightness(1);
    transform: scale(1);
    background: url('/official/images/five/all_s6_slide_bg.png') no-repeat center;
    background-size: cover;
}

#s6 .content .box {
    width: 100%;
    height: 40px;
    position: absolute;
    left: 0%;
    bottom: 0%;
    z-index: 11;
}

#s6 .content .box button.prev,
#s6 .content .box button.next {
    width: 40px;
    position: absolute;
}

#s6 .content .box button.prev {
    left: 0%;
    margin-left: 12%;
}

#s6 .content .box button.next {
    right: 0%;
    margin-right: 12%;
}

#s6 img.ch {
    width: 20%;
    position: absolute;
    left: 10%;
    bottom: 0%;
}


/* Footer */
footer .top {
    position: relative;
}

footer .top .box {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

footer .top .box .cus_row {
    color: var(--white);
}

footer .top .box .cus_row:nth-child(1) {
    margin-bottom: 14px;
}

footer .top .box .cus_row:nth-child(2) {
    justify-content: space-evenly;
}

footer .top .box img.icon {
    width: 20%;
    padding-right: 10px;
}

footer .top .box .text .line {
    font-size: var(--font_size_sm);
    display: flex;
    white-space: nowrap;
    padding-bottom: 8px;
}

footer .top .box a {
    font-size: var(--font_size_sm);
}

footer .bottom {
    background: var(--main);
    color: var(--white);
    height: 90px;
    padding-bottom: 70px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 15;
}

footer .bottom .ican, footer .bottom .logo, footer .bottom .age-0 {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px 8px;
}

footer .bottom .ican {
    flex-direction: column;
}

footer .bottom .ican span {
    padding-left: 4px;
    font-size: var(--font_size_xs);
    text-align: center;
}

footer .bottom .ican img {
    width: 6.5rem;
}

footer .bottom .logo img {
    width: 9.5rem;
}

footer .bottom .age-0 img {
    width: 2.5rem;
}

footer .bottom .age-0 ol {
    font-size: var(--font_size_xxs);
    padding-left: 18px;
}



@media (max-width: 1600px) {
    /* Popup */
    .popup.video .content {
        width: 900px;
    }

    .popup.video .content iframe {
        width: 650px;
        height: 366px;
    }
}



@media (max-width: 1200px) {
    /* Footer */
    footer .bottom,footer .bottom .ican {
        flex-direction: column;
    }

    footer .bottom .ican, footer .bottom .logo, footer .bottom .age-0 {
        padding: 10px 10px;
    }

    footer .bottom .ican img {
        width: 7rem;
    }
    
    footer .bottom .logo img {
        width: 10rem;
    }

    footer .bottom .age-0 ol {
        width: 70%;
        padding-left: 30px;
    }
}



@media (max-width: 1024px) {
    /* Basic */
    .pc {
        display: none !important;
    }
    
    .sp {
        display: block;
    }
    
    a.scale:hover, button.scale:hover {
        transform: scale(1);
    }



    /* Section Setting */
    #s1 {
        height: calc(100vw * 1.8);
        top: 0px;
    }

    #s2 {
        height: calc(100vw * 2.6);
        top: calc(100vw * 1.8);
    }

    #s3 {
        height: calc(100vw * 1.1);
        top: calc(100vw * (1.8 + 2.6));
    }

    #s4 {
        height: calc(100vw * 1.85);
        top: calc(100vw * (1.8 + 2.6 + 1.1));
    }

    #s5 {
        height: calc(100vw * 1);
        top: calc(100vw * (1.8 + 2.6 + 1.1 + 1.85));
    }

    #s6 {
        height: calc(100vw * 0.85);
        top: calc(100vw * (1.8 + 2.6 + 1.1 + 1.85 + 1));
    }



    /* Popup */
    .popup.video .content {
        width: 780px;
        padding-top: 5%;
    }

    .popup.video .content iframe {
        width: 560px;
        height: 315px;
        transform: translate(-51%, -44.5%);
    }

    .popup button.close {
        width: 9%;
    }

    .popup.top_ad .content {
        width: 90%;
    }



    /* Main */
    .fixed_bottom .row {
        height: 70px;
        top: 50%;
        transform: translateY(-50%);
    }

    .fixed_bottom .row a,
    .fixed_bottom .row button {
        margin: 2vw 2.5vw;
    }

    .fixed_bottom .row a .outer,
    .fixed_bottom .row button .outer {
        margin: 4px;
    }

    .fixed_bottom .row a .inner,
    .fixed_bottom .row button .inner {
        width: 3px;
        height: 3px;
        margin: 1.5px;
    }

    .fixed_bottom .row a span,
    .fixed_bottom .row button span,
    .fixed_bottom .row .line {
        font-size: 3vw;
    }

    #s1 header.sp {
        width: 100%;
        height: 60px;
        background: var(--trans_blue);
        position: absolute;
        left: 0%;
        top: 0%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0px 20px;
        box-sizing: border-box;
    }

    #s1 header.sp button {
        width: 4%;
    }

    #s1 ul.anchor.sp {
        width: 100%;
        background: var(--trans_blue);
        list-style: none;
        padding: 0%;
        margin: 0%;
        position: absolute;
        left: 50%;
        top: 60px;
        transform: translateX(-50%);
        display: none;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        z-index: 50;
    }

    #s1 ul.anchor.sp.active {
        display: flex;
    }

    #s1 ul.anchor.sp li {
        width: 140px;
        padding: 6px 0px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
    }

    #s1 ul.anchor.sp li img {
        width: 30px;
        height: auto;
    }

    #s1 ul.anchor.sp li div {
        color: var(--white);
        font-size: var(--font_size_xl);
        font-weight: 500;
        white-space: nowrap;
    }

    #s1 img.title {
        width: 75%;
        left: 50%;
        top: 48%;
        transform: translateX(-50%);
    }

    #s1 button.play {
        width: 11%;
        left: 77%;
        top: 44%;
    }

    #s1 .box {
        width: 70%;
        top: 58%;
    }

    #s1 .box a.banner {
        width: 50%;
        position: absolute;
        top: 51%;
        left: 42%;
        transform: translateY(-50%);
    }

    #s1 .box a.download {
        width: 34%;
        position: absolute;
        top: 28%;
        left: 5%;
        transform: translateY(-50%);
    }

        #s1 .box a.apk {
        width: 28%;
        position: absolute;
        top: 69%;
        left: 11%;
        transform: translateY(-50%);
    }

    #s2 .fb {
        width: 49%;
        height: 36%;
        position: absolute;
        left: 50%;
        top: 26%;
        transform: translateX(-50%);
    }

    #s2 .news {
        width: 80%;
        height: 25%;
        position: absolute;
        left: 50%;
        bottom: 2.5%;
        transform: translateX(-50%);
    }

    #s2 .news .content {
        width: 90%;
        top: 23%;
        left: 50%;
        transform: translateX(-50%);
    }

    #s2 .news .content .body .text {
        font-size: 1.5rem;
    }

    #s2 .news .content .body .text .title.long {
        font-size: 1.2rem;
    }

    #s2 .news .pagination {
        width: 35%;
        padding: 2px;
        margin: 0px 0px 4px 0px;
        border-radius: 4px;
        bottom: 13%;
        left: 8%;
        justify-content: center;
    }

    #s2 .news .pagination .page-btn {
        width: 2vw;
        height: 2vw;
        margin: 0px 1vw;
    }

    #s2 .news .pagination .page-btn.active {
        width: 3vw;
        height: 3vw;
    }

    #s2 .news .pagination button.prev,
    #s2 .news .pagination button.next {
        width: 14%;
    }

    #s2 .news .back_to_news {
        right: auto;
        left: 63%;
        bottom: 14%;
    }

    #s3 p {
        width: 90%;
        top: 26%;
        left: 50%;
        font-size: 1.8rem;
        transform: translateX(-50%);
    }

    #s3 img.deco_right {
        width: 22%;
        left: 82%;
        top: 68%;
    }

    #s3 img.deco_left {
        width: 20%;
        left: 14%;
        top: 60%;
    }

    #s4 img.ch {
        width: 85%;
        right: auto;
        left: 50%;
        top: 17%;
        transform: translateX(-53%);
    }

    #s4 button {
        width: 20%;
    }

    #s4 button:nth-child(1) {
        left: 13%;
        top: 57%;
    }
    
    #s4 button:nth-child(2) {
        left: 36%;
        top: 57%;
    }
    
    #s4 button:nth-child(3) {
        left: 24.5%;
        top: 69%;
    }
    
    #s4 button:nth-child(4) {
        left: 47%;
        top: 69%;
    }
    
    #s4 button:nth-child(5) {
        left: 58%;
        top: 57%;
    }
    
    #s4 button:nth-child(6) {
        left: 70%;
        top: 69%;
    }

    #s5 .content {
        width: 80%;
    }

    #s5 .content iframe {
        width: 72vw;
        height: 40vw;
        transform: translate(-50%, -50%);
    }

    #s6 .content {
        width: 100%;
        position: absolute;
        top: 24%;
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }

    #s6 .content .box {
        bottom: 13%;
    }

    .swiper-pagination {
        bottom: 10% !important;
    }

    #s6 .content .mySwiper2 {
        padding-bottom: 20%;
    }

    #s6 .content .mySwiper2 .swiper-slide img {
        width: 72%;
    }

    #s6 .content .mySwiper2 .swiper-slide {
        transform: scale(1.1);
        padding-top: 5%;
        padding-bottom: 5%;
    }

    #s6 .content .mySwiper2 .swiper-slide.swiper-slide-active {
        transform: scale(1.3);
    }

    #s6 .content .box button.prev,
    #s6 .content .box button.next {
        width: 55px;
    }

    #s6 .content .box button.prev {
        margin-left: 20%;
    }
    
    #s6 .content .box button.next {
        margin-right: 20%;
    }

    .swiper-pagination-bullet {
        width: 20px;
        height: 20px;
    }

    .swiper-pagination-bullet-active {
        width: 30px;
        height: 30px;
    }

    /* Footer */
    footer .bottom {
        height: 300px;
    }
}



@media (max-width: 820px) {
    /* Main */
    #s2 .news .content .body .text {
        font-size: 1.2rem;
    }

    #s2 .news .content .body .text .title.long {
        font-size: 0.9rem;
    }

    #s3 p {
        font-size: 1.55rem;
    }
}



@media (max-width: 576px) {
    /* Popup */
    .popup.video .content {
        width: 460px;
        padding-top: 8%;
    }

    .popup.video .content iframe {
        width: 350px;
        height: 192px;
    }

    .popup.video button.close {
        width: 9%;
        right: 10%;
        top: -1%;
    }

    /* Main */
    #s1 header.sp button {
        width: 8%;
    }

    #s2 .fb {
        width: 65%;
        height: 42%;
        top: 23%;
    }

    #s2 .news .content .body .text {
        font-size: 0.7rem;
    }

    #s2 .news .content .body .text .title.long {
        font-size: 0.5rem;
    }

    #s3 img.deco_right {
        left: 83%;
        top: 80%;
    }

    #s3 img.deco_left {
        top: 60%;
    }

    #s3 p {
        font-size: 0.9rem;
    }

    #s6 .content .mySwiper2 .swiper-slide {
        transform: scale(1);
    }

    #s6 .content .mySwiper2 .swiper-slide.swiper-slide-active {
        transform: scale(1.2);
    }

    .swiper-pagination {
        bottom: 13% !important;
    }

    #s6 .content .box {
        bottom: 11%;
    }

    #s6 .content .box button.prev,
    #s6 .content .box button.next {
        width: 26px;
    }

    .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
    }

    .swiper-pagination-bullet-active {
        width: 20px;
        height: 20px;
    }

    /* Footer */
    footer .top .box .text .line,
    footer .top .box a {
        font-size: var(--font_size_xxs);
    }
}



@media (max-width: 380px) {
    /* Footer */
    footer .top .box .text .line,
    footer .top .box a {
        font-size: 10px;
    }
}