@import url("https://fonts.googleapis.com/css?family=Noto+Sans+TC:300,400,500,700,900&display=swap");
html {
    font-family:
        "Noto Sans TC", "Microsoft JhengHei", Arial, Helvetica, sans-serif,
        monospace;
    overflow-x: hidden;
    min-height: 100vh;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
html * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    font-family:
        "Noto Sans TC", "Microsoft JhengHei", Arial, Helvetica, sans-serif,
        monospace;
    outline: none;
}
html.no-scroll {
    overflow: hidden;
}
html body {
    margin: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}
html img {
    max-width: 100%;
    width: 100%;
}
html .d {
    display: block;
}
html .d.inline {
    display: inline;
}
html .d.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media screen and (max-width: 800px) {
    html .d {
        display: none;
    }
    html .d.inline {
        display: none;
    }
    html .d.flex {
        display: none;
    }
}
html .m {
    display: none;
}
html .m.inline {
    display: none;
}
html .m.flex {
    display: none;
}
@media screen and (max-width: 800px) {
    html .m {
        display: block;
    }
    html .m.inline {
        display: inline;
    }
    html .m.flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
html .slick-slide img.d {
    display: block;
}
html .slick-slide img.d.inline {
    display: inline;
}
html .slick-slide img.d.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media screen and (max-width: 800px) {
    html .slick-slide img.d {
        display: none;
    }
    html .slick-slide img.d.inline {
        display: none;
    }
    html .slick-slide img.d.flex {
        display: none;
    }
}
html .slick-slide img.m {
    display: none;
}
html .slick-slide img.m.inline {
    display: none;
}
html .slick-slide img.m.flex {
    display: none;
}
@media screen and (max-width: 800px) {
    html .slick-slide img.m {
        display: block;
    }
    html .slick-slide img.m.inline {
        display: inline;
    }
    html .slick-slide img.m.flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.slick-slider {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list,
.slick-slider {
    position: relative;
    display: block;
}

.slick-list {
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:after,
.slick-track:before {
    display: table;
    content: "";
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

.fadeIn {
    opacity: 0;
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.fadeIn.animate {
    opacity: 1;
}

.fadeInUp {
    opacity: 0;
    -webkit-transform: translateY(60px);
    -ms-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.fadeInUp.animate {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.fadeInDown {
    opacity: 0;
    -webkit-transform: translateY(-60px);
    -ms-transform: translateY(-60px);
    transform: translateY(-60px);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.fadeInDown.animate {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.fadeInLeft {
    opacity: 0;
    -webkit-transform: translateX(60px);
    -ms-transform: translateX(60px);
    transform: translateX(60px);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.fadeInLeft.animate {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

.fadeInRight {
    opacity: 0;
    -webkit-transform: translateX(-60px);
    -ms-transform: translateX(-60px);
    transform: translateX(-60px);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.fadeInRight.animate {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

.shrinkIn {
    opacity: 0;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 500ms;
    transition-duration: 500ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.shrinkIn.animate {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.popIn {
    opacity: 0;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 500ms;
    transition-duration: 500ms;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.popIn.animate {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

body {
    padding-top: 4.2vw;
}
@media screen and (max-width: 800px) {
    body {
        padding-top: 14.2vw;
    }
}

header {
    position: fixed;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    z-index: 10;
    width: 100%;
    height: 4.95vw;
    padding-left: 18.49vw;
    padding-right: 19.01vw;
    background-image: url("../assets/header-bg-d.png");
    background-size: cover;
    background-position: center center;
}
@media screen and (max-width: 800px) {
    header {
        height: 15.47vw;
        padding-left: 24.27vw;
        padding-right: 0;
        background-image: url("../assets/header-bg-m.png");
    }
}
header .logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
header .logo img {
    width: auto;
    margin-top: -12px;
}
header nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media screen and (max-width: 800px) {
    header nav {
        position: fixed;
        top: 14.13vw;
        left: 0;
        width: 100%;
        height: 65.07vw;
        background-image: url("../assets/header-nav-bg-m.png");
        background-size: cover;
        background-position: center center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
        transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
    }
    header nav.active {
        opacity: 1;
        visibility: visible;
    }
}
header nav .button {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
@media screen and (max-width: 800px) {
    header nav .button {
        margin: 0 auto;
        display: block;
        width: 56vw;
        height: auto;
    }
}
header nav .button img {
    height: 100%;
    width: auto;
}
@media screen and (max-width: 800px) {
    header nav .button img {
        height: auto;
        width: 100%;
    }
}
header .menu-toggler {
    position: relative;
    height: 15.47vw;
    width: 15.47vw;
    position: relative;
    right: 0;
    top: 0;
    cursor: pointer;
}
header .menu-toggler.active .close {
    opacity: 1;
}
header .menu-toggler.active .open {
    opacity: 0;
}
header .menu-toggler .open,
header .menu-toggler .close {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
    transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
}
header .menu-toggler .open {
    opacity: 1;
}
header .menu-toggler .close {
    opacity: 0;
}

.fixed-link {
    position: fixed;
    width: 4.9vw;
    right: 0;
    bottom: calc(50vh - 7.03vw);
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
    transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
}
.fixed-link.show {
    opacity: 1;
    visibility: visible;
}
@media screen and (max-width: 800px) {
    .fixed-link {
        bottom: 0;
        right: 50%;
        -webkit-transform: translateX(50%);
        -ms-transform: translateX(50%);
        transform: translateX(50%);
        width: 52vw;
    }
}

.to-top {
    width: 4.9vw;
    position: fixed;
    right: 0;
    bottom: 2.34vw;
    cursor: pointer;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
    transition: all 100ms cubic-bezier(0.68, 0, 0.265, 1);
}
.to-top.show {
    opacity: 1;
    visibility: visible;
}
@media screen and (max-width: 800px) {
    .to-top {
        bottom: 0;
        width: 15.2vw;
    }
}

#section1 {
    position: relative;
    z-index: 1;
}
#section1.loaded .fig {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
#section1 .fig {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: all 1200ms ease-in-out;
    transition: all 1200ms ease-in-out;
    opacity: 0;
    -webkit-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    transform: translateY(4vw);
}
@media screen and (max-width: 800px) {
    #section1 .fig {
        -webkit-transform: translateY(8vw);
        -ms-transform: translateY(8vw);
        transform: translateY(8vw);
    }
}

.common-bg {
    background-image: url("../assets/common-bg-d.png");
    background-size: 100% auto;
    background-position: center top;
    background-attachment: fixed;
    margin-top: -1.4vw;
    position: relative;
    z-index: 2;
}
@media screen and (max-width: 800px) {
    .common-bg {
        background-image: url("../assets/common-bg-m.png");
        margin-top: -2.8vw;
    }
}

#section2 {
    height: 42.71vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
@media screen and (max-width: 800px) {
    #section2 {
        height: 88vw;
    }
}
#section2 .title {
    width: 33.18vw;
}
@media screen and (max-width: 800px) {
    #section2 .title {
        width: 85.33vw;
    }
}
#section2 .video-wrap {
    width: 48.44vw;
    margin-top: 1.41vw;
    position: relative;
}
@media screen and (max-width: 800px) {
    #section2 .video-wrap {
        width: 100vw;
        margin-top: 0;
    }
}
#section2 .video-wrap iframe {
    width: 42.6vw;
    height: auto;
    aspect-ratio: 16/9;
    position: absolute;
    top: 2.65vw;
    left: 2.9vw;
    border-radius: 0.5vw;
}
@media screen and (max-width: 800px) {
    #section2 .video-wrap iframe {
        width: 78.8vw;
        left: 10.4vw;
        top: 5.7vw;
        border-radius: 1vw;
    }
}

.common-section {
    position: relative;
    padding: 1vw 0;
}
@media screen and (max-width: 800px) {
    .common-section {
        padding: 0;
        padding-top: 8vw;
    }
}
.common-section .flex-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 12.5vw;
    z-index: 1;
}
@media screen and (max-width: 800px) {
    .common-section .flex-title {
        display: block;
        position: relative;
        height: 27.73vw;
    }
}
.common-section .flex-title img {
    width: auto;
    height: 100%;
}
@media screen and (max-width: 800px) {
    .common-section .flex-title img.poa {
        position: absolute;
        top: 0;
        left: 0;
    }
}
.common-section .common-fig {
    position: absolute;
    top: 11vw;
    left: 0;
    width: 100vw;
}
@media screen and (max-width: 800px) {
    .common-section .common-fig {
        top: 24.5vw;
    }
}
.common-section .slider-wrap {
    width: 56.25vw;
    margin: 0 auto;
    position: relative;
}
@media screen and (max-width: 800px) {
    .common-section .slider-wrap {
        width: 100vw;
    }
}
.common-section .slider-wrap .slider-nav {
    position: absolute;
    top: 50%;
    width: 2.6vw;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
}
.common-section .slider-wrap .slider-nav.prev {
    left: -1.4vw;
}
.common-section .slider-wrap .slider-nav.next {
    right: -3vw;
}
@media screen and (max-width: 800px) {
    .common-section .slider-wrap .slider-nav {
        width: 6.67vw;
    }
    .common-section .slider-wrap .slider-nav.prev {
        left: 0;
    }
    .common-section .slider-wrap .slider-nav.next {
        right: 0;
    }
}
.common-section .slider-wrap .slide {
    position: relative;
}
.common-section .slider-wrap .slide .note {
    position: absolute;
    bottom: 2.4vw;
    left: 0;
    width: 100%;
    font-size: 0.68vw;
    font-weight: 500;
    color: #c8dad8;
    padding-left: 2.2vw;
    padding-right: 1vw;
    line-height: 1.25em;
    word-break: break-all;
    text-align: justify;
}
@media screen and (max-width: 800px) {
    .common-section .slider-wrap .slide .note {
        bottom: 9vw;
        font-size: 3.2vw;
        padding-left: 4.6vw;
        padding-right: 4.6vw;
    }
    .common-section .slider-wrap .slide .note.sp {
        line-height: 1.1em;
        left: -1vw;
    }
}
.common-section .slider-wrap .slide .note span.highlight {
    font-size: 0.78vw;
    color: #f5d276;
}
@media screen and (max-width: 800px) {
    .common-section .slider-wrap .slide .note span.highlight {
        font-size: 3.73vw;
    }
}
.common-section .slider-wrap img.boat {
    width: 11.93vw;
    position: absolute;
    top: 11vw;
    left: 21vw;
    -webkit-animation-name: boatFloat;
    animation-name: boatFloat;
    -webkit-animation-duration: 4s;
    animation-duration: 4s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}
@media screen and (max-width: 800px) {
    .common-section .slider-wrap img.boat {
        width: 45.07vw;
        top: 84vw;
        left: 6.13vw;
        -webkit-animation-name: boatFloatMobile;
        animation-name: boatFloatMobile;
    }
}
@-webkit-keyframes boatFloat {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        -webkit-transform: translate(1vw, -0.5vw);
        transform: translate(1vw, -0.5vw);
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}
@keyframes boatFloat {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        -webkit-transform: translate(1vw, -0.5vw);
        transform: translate(1vw, -0.5vw);
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}
@-webkit-keyframes boatFloatMobile {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        -webkit-transform: translate(3vw, -1.5vw);
        transform: translate(3vw, -1.5vw);
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}
@keyframes boatFloatMobile {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        -webkit-transform: translate(3vw, -1.5vw);
        transform: translate(3vw, -1.5vw);
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

#section6 {
    padding-top: 2vw;
    padding-bottom: 5vw;
}
@media screen and (max-width: 800px) {
    #section6 {
        padding-top: 4vw;
        padding-bottom: 10vw;
    }
}
#section6 .table-wrap {
    width: 54.79vw;
    margin: 0 auto;
    position: relative;
}
@media screen and (max-width: 800px) {
    #section6 .table-wrap {
        width: 100vw;
    }
}
#section6 .table-wrap .contents {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#section6 .table-wrap .t1 {
    font-size: 1.04vw;
    color: #f5d276;
    position: absolute;
    left: 1.04vw;
}
#section6 .table-wrap .t1.n1 {
    top: 6.67vw;
}
#section6 .table-wrap .t1.n2 {
    top: 10.47vw;
}
#section6 .table-wrap .t1.n3 {
    top: 10.47vw;
    left: 19.74vw;
}
#section6 .table-wrap .t1.n4 {
    top: 10.47vw;
    left: 39.53vw;
}
#section6 .table-wrap .t1.n5 {
    top: 15.05vw;
}
#section6 .table-wrap .t1.n6 {
    top: 20.31vw;
}
#section6 .table-wrap .t1.n7 {
    top: 23.8vw;
}
#section6 .table-wrap .t2 {
    font-size: 1.46vw;
    font-weight: bold;
    color: #f5d276;
    position: absolute;
    top: 5.68vw;
    left: 6.3vw;
    line-height: 1.2em;
}
#section6 .table-wrap .t2 span {
    color: #a3cbca;
}
#section6 .table-wrap .t3 {
    position: absolute;
    font-size: 1.04vw;
    font-weight: bold;
    color: #c6c7c8;
}
#section6 .table-wrap .t3.n1 {
    top: 10.47vw;
    left: 6.3vw;
}
#section6 .table-wrap .t3.n2 {
    top: 10.47vw;
    left: 28.54vw;
}
#section6 .table-wrap .t3.n3 {
    top: 10.47vw;
    left: 47.24vw;
}
#section6 .table-wrap .t3.n4 {
    top: 23.8vw;
    left: 6.3vw;
}
#section6 .table-wrap .t4 {
    position: absolute;
    font-size: 1.04vw;
    color: #f5d276;
}
#section6 .table-wrap .t4.n1 {
    top: 12.97vw;
    left: 7.14vw;
}
#section6 .table-wrap .t4.n2 {
    top: 14.95vw;
    left: 7.14vw;
}
#section6 .table-wrap .t4.n3 {
    top: 16.98vw;
    left: 7.14vw;
}
#section6 .table-wrap .t4.n4 {
    top: 19.59vw;
    left: 7.14vw;
}
#section6 .table-wrap .t4.n5 {
    top: 19.59vw;
    left: 27.29vw;
}
#section6 .table-wrap .t4.n6 {
    top: 21.15vw;
    left: 7.14vw;
}
#section6 .table-wrap .t4.n7 {
    top: 21.15vw;
    left: 27.29vw;
}
#section6 .table-wrap .t4 span {
    color: #c6c7c8;
}
#section6 .table-wrap .note {
    position: absolute;
    font-size: 0.68vw;
    color: #c8dad8;
    bottom: 0.8vw;
    left: 1vw;
    padding-right: 1vw;
    line-height: 1.1em;
    text-align: justify;
}
#section6 .table-wrap .note span {
    font-size: 0.78vw;
    color: #f5d276;
}
#section6 .buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 5.21vw;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 1.98vw;
}
@media screen and (max-width: 800px) {
    #section6 .buttons {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: auto;
        margin-top: 4.8vw;
    }
}
#section6 .buttons img {
    height: 100%;
    width: auto;
    cursor: pointer;
}

#section7 {
    padding-top: 0vw;
    padding-bottom: 5vw;
}
#section7 .btn-section {
    display: flex;
    gap: 32px 80px;
    margin-top: 24px;
    justify-content: center;
    align-items: center;
    color: #fff;
}
#section7 .btn-text {
    display: flex;
    align-items: center;
    justify-content: center;
}
#section7 .strong {
    font-size: 32px;
    font-weight: 700;
    margin: 0 4px 0 0;
    color: #f6d176;
}
#section7 .btn-link {
    max-width: 280px;
    margin: 8px auto;
    display: block;
    width: 100%;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(#e5b35c, #7d5e28);
    text-align: center;
    text-decoration: none;
    padding: 8px 24px;
    border-radius: 32px;
    transition: box-shadow 0.3s;
}
#section7 .btn-link:hover {
    box-shadow: 0px 15px 10px -5px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 800px) {
    #section7 {
        padding-top: 4vw;
        padding-bottom: 10vw;
    }
    .btn-section {
        flex-direction: column;
    }
}

.footer {
    position: relative;
    color: #313e54;
    background: #f2f2f2;
    padding: 40px 0px 0;
    font-weight: bold;
    --background-rainbow: linear-gradient(
        90deg,
        #df1c4b 0%,
        #f41f5e 15%,
        #f96585 25%,
        #f8613c 40%,
        #b495cd 50%,
        #ceabf9 60%,
        #797df2 75%,
        #489cf6 85%,
        #6f59ed 100%
    );
}
.footer .text-blue {
    color: #005598;
}
.footer .base-wrapper {
    padding: 0 16px;
}
.footer img {
    width: initial;
}
.footer .base-link {
    text-decoration: underline;
    color: blue;
    overflow-wrap: break-word;
    word-break: break-all;
}
.footer .footer-highlight {
    color: #005598;
}
.footer::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 16px;
    top: 0;
    background: var(--background-rainbow);
}
.footer .footer-head {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 24px;
}
.footer .footer-company-name {
    font-size: 22px;
    margin: 16px 0;
}
.footer .footer-company-desc {
    font-size: 14px;
}
.footer .footer-head-contact {
    display: flex;
    flex-direction: column;
    gap: 16px;
    font-weight: 700;
}
.footer .footer-head-phone {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.footer .footer-head-phone-number {
    font-size: 30px;
    color: #021d3a;
    text-decoration: none;
}
.footer .footer-social-media {
    padding: 0px;
    margin: 0px;
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 16px;
}
.footer .footer-social-media-item {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    color: #fff;
    transition: 0.3s ease all;
    background: #021d3a;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    font-size: 22px;
}
.footer .footer-social-media-item[title="youtube"]:hover {
    background: red;
}
.footer .footer-social-media-item[title="粉絲團"]:hover {
    background: #1877f2;
}
.footer .footer-social-media-item[title="Line"]:hover {
    background: #06c755;
}
.footer .footer-warning {
    position: relative;
    padding: 24px 0 0;
}
.footer .footer-warning::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    top: -2px;
    background: var(--background-rainbow);
}
.footer .footer-warning ul {
    padding: 0px;
    margin: 0px;
    list-style: none;
    font-size: 15px;
}
.footer .footer-warning ul li {
    margin-bottom: 16px;
    line-height: 1.5;
}
.footer .footer-copyright-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: -moz-max-content;
    width: max-content;
    font-size: 12px;
    border: solid 1px #50ffcf;
    margin: auto;
    padding: 4px 32px;
    border-radius: 30px;
    background: linear-gradient(
        90deg,
        rgba(75, 153, 255, 0.4) 0%,
        rgba(214, 125, 255, 0.5) 100%
    );
    line-height: 1.2rem;
}
.footer .footer-bottom-contact {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12px;
    color: #fff;
    background-color: #021d3a;
    padding: 16px 0 80px;
    margin: 40px 0 0;
}
.footer .footer-bottom-contact::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 4px;
    top: -4px;
    background: var(--background-rainbow);
}
@media screen and (max-width: 1199px) {
    .footer .footer-head img {
        margin: auto;
    }
}
@media screen and (min-width: 768px) {
    .footer .footer-bottom-contact {
        padding: 16px 0;
    }
}
@media screen and (min-width: 769px) {
    .footer .footer-head {
        flex-direction: row;
        justify-content: space-evenly;
    }
    .footer .footer-social-media {
        order: -1;
    }
}
@media screen and (min-width: 1200px) {
    .footer .footer-head {
        text-align: left;
        justify-content: space-between;
    }
    .footer .footer-head-contact {
        flex-direction: row;
        align-self: flex-end;
    }
    .footer .footer-head-phone {
        flex-direction: row;
        align-items: center;
    }
}
