@charset "UTF-8";
/* CSS Document */
@import url(../css/public/reset.css);
@import url(../css/public/font-awesome-4.7.0/font-awesome.min.css);
@import url(../css/public/rwdgrid.css);
@import url(../css/public/textEditor.css);
@import url(../css/public/contentbuilder.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600&display=swap");

.pageBox .pageList.number a.firstBtn::before, .pageBox .pageList.number a.firstBtn::after, .pageBox .pageList.number a.lastBtn::before, .pageBox .pageList.number a.lastBtn::after, .pageBox .pageList a.prevBtn::after, .pageBox .pageList a.nextBtn::after, .pageBox .pageList a.prevBtn::before, .pageBox .pageList a.nextBtn::before, .classBox a, .classBox span, .privacyArea, footer .languageBox .languageList, footer .languageBox .languageCurrent::before, footer .languageBox .languageCurrent, footer .languageBox .earth img, footer .languageBox, footer .socialBox a::after, .slideMenuArea .moduleClose::after, .slideMenuArea .moduleClose::before, .slideMenuArea .moduleClose, .slideMenuArea .desktop .bottomBox .languageBox .languageList, .slideMenuArea .desktop .bottomBox .languageBox .languageCurrent, .slideMenuArea .desktop .bottomBox .languageBox, .slideMenuArea .desktop .bottomBox .socialList a::after, .slideMenuArea .mobile .socialBox a::after, .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a::before, .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a::after, .slideMenuArea .mobile .funcBox .languageBox .languageList, .slideMenuTrigger.close .line::before, .slideMenuTrigger.close .line::after, .slideMenuTrigger.close .line, .slideMenuTrigger.close, .sidemenu .loginBox, .sidemenu .headerCartBox, .sidemenu .slideMenuTrigger, header .languageBox .languageList, header .languageBox .languageCurrent, header .languageBox, header .rightList::after, header .menu > li a::after, header .menu > li a, .loadingArea, .moduleMask, .moduleBox.cart .cartList .del, .moduleBox.privacy .customList .topBox .trigger label span::before, .moduleBox.privacy .customList .topBox .trigger label span, .moduleBox.privacy .customList .topBox .subtitle, .moduleBox.privacy .customList .topBox::before, .moduleBox.privacy .btnBox .btn.textLink::before, .moduleBox .moduleClose::after, .moduleBox .moduleClose::before, .moduleBox .moduleClose, .btnBox .btn.animation::after, button, a, .formBox .columnCheckBox .columnCheckLabel .columnCheck::after, .formBox .columnCheckBox .columnCheckLabel .columnCheck::before {
    transition: all 0.5s;
}

.formBox.changePassword {
    max-width: 640px;
    margin: 0 auto;
}

.formBox .formList {
    -ms-flex-align: start;
    align-items: flex-start;
    color: #2f2f2f;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 16px;
    margin-left: -10px;
    margin-right: -10px;
    position: relative;
}

.formBox .formList_white .white {
    position: relative;
    z-index: 5;
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin: 5px 10px;
    padding: 5px 20px;
    border-radius: 5px;
    background: #f3f2f2;
}

@media (max-width: 480px) {
    .formBox .formList_white .white {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 10px;
    }
}

.formBox .formList_white .white:has(.columnArea) {
    display: block;
    padding: 20px;
}

@media (max-width: 480px) {
    .formBox .formList_white .white:has(.columnArea) {
        padding: 10px;
    }
}

.formBox .formList_white .columnInput {
    border: 1px solid transparent;
    -ms-flex: 1;
    flex: 1;
    width: initial;
}

@media (max-width: 480px) {
    .formBox .formList_white .columnInput {
        -ms-flex: auto;
        flex: auto;
        width: 100%;
    }
}

.formBox .formList_white .columnArea {
    border: 1px solid transparent;
    height: 80px;
    margin-top: 10px;
}

.formBox .formList_white .columnTitle {
    position: relative;
    color: #2b455c;
    margin-bottom: 0;
    max-width: 100px;
    width: 100%;
}

@media (max-width: 480px) {
    .formBox .formList_white .columnTitle {
        padding-bottom: 10px;
    }

        .formBox .formList_white .columnTitle::after {
            content: "";
            position: absolute;
            left: 0;
            bottom: 0;
            display: block;
            width: 45px;
            height: 1px;
            background: #2b455c;
        }
}

.formBox .formList_white .columnTitle.withCheckBox {
    width: 100%;
}

.formBox .formList_white .columnTitle.requireStyle::before {
    content: "*";
    color: #2b455c;
    font-size: 18px;
    font-weight: 700;
    position: absolute;
    top: 3px;
    left: 0;
    z-index: 1;
}

.formBox .formList_white .btnBox {
    margin-top: 25px;
}

.formBox .formList_white .btn {
    margin: 0 auto;
}

.formBox .formRow {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.formBox .formColumn {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 15px 10px;
    position: relative;
}

    .formBox .formColumn.select {
        position: relative;
    }

        .formBox .formColumn.select::before {
            content: "";
            width: 8px;
            height: 8px;
            border-right: 2px solid #626262;
            border-bottom: 2px solid #626262;
            pointer-events: none;
            position: absolute;
            bottom: 35px;
            right: 20px;
            z-index: 1;
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
        }

    .formBox .formColumn.selectBill::before {
        bottom: 21px;
    }

    .formBox .formColumn.pt0 {
        padding-top: 0;
    }

    .formBox .formColumn.pb0 {
        padding-bottom: 0;
    }

@media (max-width: 1180px) {
    .formBox .formColumn {
        padding: 10px;
    }
}

@media (max-width: 640px) {
    .formBox .formCheck .white {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 10px;
    }
}

@media (max-width: 640px) {
    .formBox .formCheck .columnTitle {
        width: 100%;
        max-width: 100%;
        margin-bottom: 10px;
    }
}

.formBox .formCheck .columnInput {
    max-width: 100%;
    margin-right: auto;
}

@media (max-width: 640px) {
    .formBox .formCheck .columnInput {
        max-width: 50%;
    }
}

@media (max-width: 390px) {
    .formBox .formCheck .columnInput {
        max-width: 100%;
    }
}

.formBox .formCheck .checkImg {
    padding: 15px 0;
}

    .formBox .formCheck .checkImg img {
        display: block;
        width: 100%;
    }

@media (max-width: 768px) {
    .formBox .formCheck .checkImg {
        width: 160px;
    }
}

@media (max-width: 640px) {
    .formBox .formCheck .checkImg {
        max-width: 50%;
    }
}

@media (max-width: 390px) {
    .formBox .formCheck .checkImg {
        width: 100%;
        max-width: 160px;
    }
}

.formBox .columnTitle {
    width: 100%;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.02rem;
    line-height: 1.25;
    margin-bottom: 12px;
    position: relative;
}

    .formBox .columnTitle.withCheckBox {
        width: auto;
    }

        .formBox .columnTitle.withCheckBox + .columnCheckBox {
            margin-left: 10px;
            margin-bottom: 12px;
        }

    .formBox .columnTitle.requireStyle {
        padding-left: 10px;
    }

        .formBox .columnTitle.requireStyle::before {
            content: "*";
            color: #f00;
            font-size: 18px;
            font-weight: 700;
            position: absolute;
            top: 3px;
            left: 0;
            z-index: 1;
        }

.formBox .columnCheckBox {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -5px;
}

    .formBox .columnCheckBox .columnCheckLabel {
        -ms-flex-align: center;
        align-items: center;
        cursor: pointer;
        display: -ms-flexbox;
        display: flex;
        padding: 2px 5px;
    }

        .formBox .columnCheckBox .columnCheckLabel .columnCheck {
            width: 16px;
            height: 16px;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            border-radius: 0;
            background: transparent;
            border: none;
            cursor: pointer;
            display: inline-block;
            margin: 0;
            outline: 0;
            position: relative;
        }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck::before {
                content: "";
                width: 100%;
                height: 100%;
                background-color: transparent;
                border-radius: 50%;
                border: 1px solid #cecece;
                display: inline-block;
                position: absolute;
                top: 50%;
                left: 50%;
                z-index: 1;
                -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck::after {
                content: "";
                width: 50%;
                height: 50%;
                background-color: #333;
                border-radius: 50%;
                display: inline-block;
                opacity: 0;
                position: absolute;
                top: 50%;
                left: 50%;
                z-index: 2;
                -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck:checked::after {
                opacity: 1;
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck:disabled::before {
                background-color: #e5e5e5 !important;
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck:disabled::after {
                background-color: #b5b5b5 !important;
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck:disabled + span {
                color: #737373 !important;
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck.square::before, .formBox .columnCheckBox .columnCheckLabel .columnCheck.square::after {
                border-radius: 0;
            }

            .formBox .columnCheckBox .columnCheckLabel .columnCheck.error::before {
                border-color: #2b455c;
            }

    .formBox .columnCheckBox .columnCheckBoxTitle {
        display: inline-block;
        font-size: 15px;
        line-height: 1;
        letter-spacing: 0.02rem;
        margin-left: 4px;
    }

.formBox .columnSelect {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    font-size: 16px;
    font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    outline: none;
    padding: 5px 25px 5px 10px;
    margin: 0;
}

    .formBox .columnSelect:disabled {
        background-color: #e5e5e5 !important;
        color: #737373 !important;
    }

.formBox .columnInput {
    padding: 5px 10px;
}

    .formBox .columnInput::-webkit-input-placeholder {
        color: #a6a6a6;
    }

    .formBox .columnInput::-moz-placeholder {
        color: #a6a6a6;
    }

    .formBox .columnInput:-ms-input-placeholder {
        color: #a6a6a6;
    }

    .formBox .columnInput::-ms-input-placeholder {
        color: #a6a6a6;
    }

    .formBox .columnInput::placeholder {
        color: #a6a6a6;
    }

    .formBox .columnInput:disabled {
        background-color: #e5e5e5 !important;
        color: #737373 !important;
    }

.formBox .columnArea {
    height: 0px;
    padding: 10px;
}

@media (max-width: 1180px) {
    .formBox .columnArea {
        height: 120px;
        padding: 5px 10px;
    }
}

.formBox .columnInput,
.formBox .columnSelect,
.formBox .columnArea {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 3px;
    color: #737373;
    font-weight: 500;
}

.formBox .columnInput,
.formBox .columnSelect {
    height: 50px;
}

.formBox .btnBox {
    width: 100%;
}

.formBox .noteTxt {
    width: 100%;
    color: #999;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.02rem;
    margin-top: 10px;
}

    .formBox .noteTxt.red {
        color: #f00;
    }

@media (max-width: 1180px) {
    .formBox .noteTxt {
        font-size: 14px;
    }
}

.formBox .error {
    border-color: #f00 !important;
}

@-webkit-keyframes textSlideRightAnimation {
    0% {
        opacity: 0;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes textSlideRightAnimation {
    0% {
        opacity: 0;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes textSlideDownAnimation {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes textSlideDownAnimation {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes textSlideUpAnimation {
    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes textSlideUpAnimation {
    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes rotate {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotate {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

body {
    background-color: #fff;
    font-size: 14px;
    font-family: "Oswald", "Noto Sans Tc", sans-serif;
}

    body.overflow, body.popwinOverflow, body.loadingOverflow {
        overflow: hidden;
    }

    body.errorPage .mainArea {
        width: 100%;
        height: calc(100vh - 500px);
        min-height: 300px;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

        body.errorPage .mainArea .top {
            max-width: 380px;
            color: #2b455c;
            font-size: 28px;
            font-weight: 500;
            line-height: 1.5;
            margin: 0 auto;
        }

        body.errorPage .mainArea .menuBox {
            width: 100%;
        }

            body.errorPage .mainArea .menuBox .menu {
                max-width: 1800px;
                margin: 0 auto;
                display: -ms-flexbox;
                display: flex;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                -ms-flex-pack: center;
                justify-content: center;
            }

            body.errorPage .mainArea .menuBox li {
                padding-right: 15px;
                font-size: 25px;
            }

        body.errorPage .mainArea a {
            color: #33526d;
        }

@media (min-width: 1201px) {
    body.errorPage .mainArea a:hover {
        color: #436c90;
    }
}

@media (max-width: 768px) {
    body.errorPage .mainArea {
        height: 50vh;
        min-height: 350px;
    }

        body.errorPage .mainArea .top {
            font-size: 24px;
        }
}

body:not(.WebSiteHome, .aboutArea, .memberPage) .mainArea {
    background: url(../images/recommend/white-bg.png);
}

body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt {
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 1440px;
}

    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox {
        text-align: left;
    }

        body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleTw {
            color: #fff;
            line-height: 1;
            font-size: 93px;
            font-weight: 700;
            margin-bottom: 10px;
        }

@media (max-width: 1180px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleTw {
        font-size: 70px;
    }
}

@media (max-width: 640px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleTw {
        font-size: 54px;
    }
}

@media (max-width: 480px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleTw {
        font-size: 42px;
    }
}

body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleEn {
    font-size: 52px;
    font-weight: 500;
    color: #fff;
    text-transform: capitalize;
}

@media (max-width: 1180px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleEn {
        font-size: 40px;
    }
}

@media (max-width: 640px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Txt .titleBox .titleEn {
        font-size: 32px;
    }
}

@media (max-width: 768px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Img {
        padding-bottom: 56.25%;
    }
}

@media (max-width: 480px) {
    body:not(.WebSiteHome, .aboutArea, .memberPage) .bannerArea .bannerItem .Img {
        padding-bottom: 100%;
    }
}

body.memberPage .outerWrap {
    background: url(../images/recommend/white-bg.png);
}

address {
    font-style: normal;
}

a {
    color: #2b455c;
    cursor: pointer;
}

    a:hover {
        color: #2b455c;
    }

input[type=text],
input[type=date],
input[type=number],
input[type=password],
textarea,
button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    font-size: 16px;
    font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    outline: none;
    padding: 0;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
    width: 100%;
    text-align: center;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

button {
    cursor: pointer;
}

select {
    cursor: pointer;
}

textarea {
    resize: vertical;
}

input[type=file],
input[type=file]::-webkit-file-upload-button { /* chromes and blink button */
    cursor: pointer;
}

/*共用樣式*/
.countBox .count_minus, .countBox .count_plus {
    position: relative;
}

    .countBox .count_minus::after, .countBox .count_plus::after {
        content: "";
        background-image: url(../images/light_yellow.png);
        background-size: contain;
        background-repeat: no-repeat;
        position: absolute;
        display: block;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 20px;
        height: 20px;
        -webkit-filter: grayscale(1);
        filter: grayscale(1);
        opacity: 0;
    }

@-webkit-keyframes click {
    50% {
        width: 50px;
        height: 50px;
        opacity: 1;
    }

    80% {
        opacity: 0;
        width: 70px;
        height: 70px;
    }
}

@keyframes click {
    50% {
        width: 50px;
        height: 50px;
        opacity: 1;
    }

    80% {
        opacity: 0;
        width: 70px;
        height: 70px;
    }
}

.countBox .count_minus.active::after, .countBox .count_plus.active::after {
    -webkit-animation: click 0.5s ease-in-out forwards;
    animation: click 0.5s ease-in-out forwards;
}

div.titan {
    display: none;
}

[class*=col-] {
    float: left;
}

.col-1 {
    width: 100%;
}

.col-2 {
    width: 50%;
}

.col-3 {
    width: 33.33%;
}

.col-4 {
    width: 25%;
}

.col-5 {
    width: 20%;
}

@media (max-width: 480px) {
    .col-1, .col-2, .col-3, .col-4, .col-5 {
        float: none;
        width: 100%;
    }
}

.btnBox.flex {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 -6px;
}

    .btnBox.flex .btn {
        -ms-flex: 1;
        flex: 1;
        margin: 0 6px;
    }

@media (max-width: 390px) {
    .btnBox.flex {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

        .btnBox.flex .btn {
            -ms-flex: auto;
            flex: auto;
            margin: 3px 5px;
        }
}

.btnBox.single.center {
    text-align: center;
}

.btnBox.single .btn {
    width: 100%;
    max-width: 200px;
}

@media (max-width: 480px) {
    .btnBox.single .btn {
        max-width: 100%;
    }
}

.btnBox.full .btn {
    width: 100%;
}

.btnBox .btn {
    display: -ms-flexbox;
    display: flex;
    max-width: 260px;
    line-height: 1;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.02rem;
    padding: 25px;
    border-radius: 5px;
    position: relative;
    text-align: center;
    z-index: 1;
}

@media (max-width: 480px) {
    .btnBox .btn {
        font-size: 14px;
    }
}

@media (max-width: 390px) {
    .btnBox .btn {
        padding: 15px;
    }
}

.btnBox .btn span {
    display: block;
    margin: 0 5px;
}

.btnBox .btn .arrow img {
    display: block;
    width: 10px;
    height: 16px;
    margin-top: 1px;
}

.btnBox .btn_cookie {
    max-width: 225px;
    font-size: 16px;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid #fff;
    background-color: #2b455c;
    color: #fff;
}

    .btnBox .btn_cookie::after, .btnBox .btn_cookie::before {
        content: url(../images/deco/cookie.png);
        display: block;
    }

    .btnBox .btn_cookie span {
        margin: 0 auto;
    }

@media (min-width: 1201px) {
    .btnBox .btn_cookie:hover {
        border-color: #436c90;
        background-color: #1b2b39;
    }
}

.btnBox .btn_color_main {
    border: 1px solid #23384b;
    background-color: #2b455c;
    color: #fff;
}

    .btnBox .btn_color_main .arrow {
        margin-left: auto;
    }

@media (min-width: 1201px) {
    .btnBox .btn_color_main:hover {
        border-color: #131e28;
        background-color: #1b2b39;
    }
}

.btnBox .btn_color_yellow {
    background-color: #d69f42;
    color: #fff;
}

    .btnBox .btn_color_yellow .arrow {
        margin-left: auto;
    }

@media (min-width: 1201px) {
    .btnBox .btn_color_yellow:hover {
        background-color: #bc8529;
    }
}

.btnBox .btn_color_white {
    border: 1px solid #2b455c;
    background-color: #fff;
    color: #2b455c;
}

@media (min-width: 1201px) {
    .btnBox .btn_color_white:hover {
        border-color: #23384b;
        background-color: #2b455c;
        color: #fff;
    }
}

.btnBox .btn_color_gray {
    border: 1px solid #bebebe;
    background-color: #cbcbcb;
    color: #fff;
}

@media (min-width: 1201px) {
    .btnBox .btn_color_gray:hover {
        border-color: #9e9e9e;
        background-color: #ababab;
    }
}

.btnBox .btn_rtol {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

    .btnBox .btn_rtol .arrow {
        margin-left: 0;
        margin-right: auto;
    }

        .btnBox .btn_rtol .arrow img {
            -webkit-transform: scaleX(-1);
            transform: scaleX(-1);
        }

.btnBox .btn_color_darkgray {
    border: 1px solid #8d8d8d;
    background-color: #9a9a9a;
    color: #fff;
}

    .btnBox .btn_color_darkgray .arrow {
        margin-left: auto;
    }

@media (min-width: 1201px) {
    .btnBox .btn_color_darkgray:hover {
        border-color: #6d6d6d;
        background-color: #7a7a7a;
    }
}

.btnBox .btn.animation::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
    width: 0;
    height: 100%;
    background-color: #1b2b39;
}

@media (min-width: 1201px) {
    .btnBox .btn.animation:hover {
        border-color: #1b2b39;
    }

        .btnBox .btn.animation:hover::after {
            width: 100%;
            left: 0;
            right: auto;
        }
}

.outerWrap {
    padding-top: 80px;
    position: relative;
}

@media (max-width: 1180px) {
    .outerWrap {
        padding-top: 68px;
        padding-bottom: calc(55px + env(safe-area-inset-bottom));
    }
}

@media (max-width: 640px) {
    .outerWrap {
        padding-top: 60px;
    }
}

.wrap {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

/*module*/
.moduleBox {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1005;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding-left: 20px;
    padding-right: 20px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition-property: top, opacity, visibility;
    transition-duration: 0.5s;
    transition-timing-function: ease-in-out;
    /*洽詢車&購物車*/
    /*訂單查詢*/
    /*搜尋*/
    /*聯絡我們*/
    /*提醒使用cookie彈窗*/
}

@media (max-width: 640px) {
    .moduleBox {
        -ms-flex-align: center;
        align-items: center;
    }
}

.moduleBox.show {
    opacity: 1;
    visibility: visible;
}

    .moduleBox.show .moduleWrap {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

.moduleBox .moduleWrap {
    position: relative;
    width: 100%;
    max-width: 960px;
    background-color: #fff;
    pointer-events: auto;
    padding-top: 60px;
    margin-top: 21vh;
    margin-left: 60px;
    margin-right: 60px;
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    transition: all 0.5s;
}

@media (max-width: 640px) {
    .moduleBox .moduleWrap {
        margin-left: 0;
        margin-right: 0;
        margin-top: 0;
    }
}

.moduleBox .moduleTitle {
    color: #fff;
    font-weight: 400;
    font-size: 20px;
    letter-spacing: 0.05em;
    padding-bottom: 10px;
    text-align: center;
}

.moduleBox .titleBox .moduleTitle {
    font-size: 65px;
    color: #fff;
}

@media (max-width: 768px) {
    .moduleBox .titleBox .moduleTitle {
        font-size: 38px;
        line-height: 1;
    }
}

.moduleBox .titleBox .secTitle {
    font-size: 20px;
    color: #fff;
    letter-spacing: 1.8px;
}

.moduleBox .moduleContent {
    width: 100%;
    max-height: calc(90vh - 200px);
    overflow-y: auto;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
}

    .moduleBox .moduleContent::-webkit-scrollbar-track {
        box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.15);
        background-color: rgba(241, 241, 241, 0.25);
    }

    .moduleBox .moduleContent::-webkit-scrollbar {
        width: 5px;
        height: 5px;
        background-color: rgba(241, 241, 241, 0.25);
    }

    .moduleBox .moduleContent::-webkit-scrollbar-thumb {
        background: #23384b;
    }

.moduleBox .moduleClose {
    width: 120px;
    height: 120px;
    background: none;
    background: url(../images/close.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-color: #fff;
    border: 10px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    right: -35px;
    top: -40px;
    z-index: 6;
}

@media (max-width: 640px) {
    .moduleBox .moduleClose {
        width: 90px;
        height: 90px;
        right: -15px;
        top: -40px;
    }
}

.moduleBox .moduleClose::before, .moduleBox .moduleClose::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -15px;
    margin-top: -0.5px;
    width: 30px;
    height: 1px;
    background-color: #2b455c;
}

.moduleBox .moduleClose::before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.moduleBox .moduleClose::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.moduleBox .moduleClose:hover {
    background-color: #d69f42;
    border: 10px solid #d69f42;
    -webkit-transform: rotate(45deg) scale(0.95);
    transform: rotate(45deg) scale(0.95);
}

    .moduleBox .moduleClose:hover::before {
        -webkit-transform: rotate(-20deg);
        transform: rotate(-20deg);
    }

    .moduleBox .moduleClose:hover::after {
        -webkit-transform: rotate(-70deg);
        transform: rotate(-70deg);
    }

.moduleBox.privacy .moduleWrap {
    max-width: 700px;
    padding-top: 50px;
    position: relative;
    z-index: 1004;
}

.moduleBox.privacy .moduleTitle {
    font-size: 20px;
    font-weight: 600;
    padding-bottom: 15px;
    text-align: left;
    color: #000;
}

@media (max-width: 640px) {
    .moduleBox.privacy .moduleTitle {
        font-size: 18px;
        padding-bottom: 10px;
    }
}

.moduleBox.privacy .settingBox + .settingBox {
    margin-top: 25px;
}

.moduleBox.privacy .text {
    font-size: 15px;
    line-height: 1.35;
}

@media (max-width: 640px) {
    .moduleBox.privacy .text {
        font-size: 14px;
    }
}

.moduleBox.privacy .btnBox {
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 20px;
}

    .moduleBox.privacy .btnBox .btn:not(.textLink) {
        padding: 15px;
    }

    .moduleBox.privacy .btnBox .btn.textLink {
        display: inline-block;
        font-size: 15px;
        font-weight: 500;
        position: relative;
    }

        .moduleBox.privacy .btnBox .btn.textLink::before {
            content: "";
            width: 0;
            height: 1px;
            background-color: #2b455c;
            position: absolute;
            bottom: -3px;
            left: 50%;
        }

@media (min-width: 1201px) {
    .moduleBox.privacy .btnBox .btn.textLink:hover::before {
        width: 100%;
        left: 0;
    }
}

.moduleBox.privacy .customList .customItem:not(:last-child) {
    padding-bottom: 10px;
}

.moduleBox.privacy .customList .topBox {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 15px;
    position: relative;
}

    .moduleBox.privacy .customList .topBox::before {
        content: "";
        width: 9px;
        height: 9px;
        border-right: 1px solid #000;
        border-bottom: 1px solid #000;
        pointer-events: none;
        position: absolute;
        top: 50%;
        right: 0;
        z-index: 1;
        -webkit-transform: translateY(-80%) rotate(-45deg);
        transform: translateY(-80%) rotate(-45deg);
    }

    .moduleBox.privacy .customList .topBox.open::before {
        -webkit-transform: translateY(-100%) rotate(45deg);
        transform: translateY(-100%) rotate(45deg);
    }

    .moduleBox.privacy .customList .topBox .subtitle {
        width: 100%;
        cursor: pointer;
        font-size: 16px;
        font-weight: 500;
        line-height: 1;
        padding: 10px 20px 10px 0;
    }

    .moduleBox.privacy .customList .topBox .trigger {
        font-size: 15px;
        line-height: 1;
        position: absolute;
        top: 50%;
        right: 20px;
        z-index: 2;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

        .moduleBox.privacy .customList .topBox .trigger .alwaysOn {
            color: #2b455c;
            font-size: 15px;
            font-weight: 500;
            display: inline-block;
            line-height: 1.35;
            padding-bottom: 3px;
        }

        .moduleBox.privacy .customList .topBox .trigger label {
            cursor: pointer;
            display: inline-block;
        }

            .moduleBox.privacy .customList .topBox .trigger label[for=cookie_necessary] {
                cursor: not-allowed;
            }

            .moduleBox.privacy .customList .topBox .trigger label input[type=checkbox] {
                -webkit-appearance: none;
                -moz-appearance: none;
                appearance: none;
                border: none;
                outline: none;
                opacity: 0;
                width: 100%;
                height: 100%;
                margin: auto;
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
            }

                .moduleBox.privacy .customList .topBox .trigger label input[type=checkbox]:checked + span {
                    background-color: #48749b;
                }

                    .moduleBox.privacy .customList .topBox .trigger label input[type=checkbox]:checked + span::before {
                        background-color: #33526d;
                        -webkit-transform: translate(75%, -50%);
                        transform: translate(75%, -50%);
                    }

            .moduleBox.privacy .customList .topBox .trigger label span {
                width: 38px;
                height: 14px;
                border-radius: 30px;
                background-color: #d9d9d9;
                display: block;
                margin-left: auto;
                position: relative;
            }

                .moduleBox.privacy .customList .topBox .trigger label span::before {
                    content: "";
                    width: 21px;
                    height: 21px;
                    border-radius: 50%;
                    background-color: #b5b5b5;
                    position: absolute;
                    top: 50%;
                    left: 0;
                    z-index: 1;
                    -webkit-transform: translateY(-50%);
                    transform: translateY(-50%);
                }

@media (min-width: 1201px) {
    .moduleBox.privacy .customList .topBox:hover .subtitle {
        color: #2b455c;
    }
}

@media (max-width: 640px) {
    .moduleBox.privacy .customList .topBox {
        margin-bottom: 5px;
    }
}

.moduleBox.privacy .customList .text {
    background-color: #e1e1e1;
    padding: 18px 15px;
}

@media (max-width: 640px) {
    .moduleBox.privacy .customList .text {
        padding: 15px 12px;
    }
}

.moduleBox.cart .moduleWrap {
    background: #2b455c;
    max-width: 1195px;
}

.moduleBox.cart .moduleContent {
    padding-left: 110px;
    padding-right: 110px;
}

@media (max-width: 860px) {
    .moduleBox.cart .moduleContent {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 360px) {
    .moduleBox.cart .moduleContent {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.moduleBox.cart .titleBox {
    position: relative;
    margin-bottom: 45px;
}

    .moduleBox.cart .titleBox .moduleTitle {
        line-height: 1;
    }

.moduleBox.cart .text {
    color: #373737;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-align: center;
}

    .moduleBox.cart .text b {
        padding-left: 4px;
        padding-right: 4px;
        font-weight: 400;
        font-size: 18px;
        color: #2b455c;
    }

.moduleBox.cart .cartBox {
    position: relative;
    border-top: 2px solid #2b455c;
    padding-bottom: 15px;
    margin-bottom: 50px;
}

@media (max-width: 1080px) {
    .moduleBox.cart .cartBox {
        padding-bottom: 0;
    }
}

.moduleBox.cart .cartBox::before, .moduleBox.cart .cartBox::after {
    position: absolute;
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: url(../images/index-feature/line.png);
    background-repeat: repeat-x;
    pointer-events: none;
}

.moduleBox.cart .cartBox::before {
    top: 0;
    background-position: 0 0;
}

.moduleBox.cart .cartBox::after {
    bottom: 0;
    background-position: 0 100%;
}

.moduleBox.cart .cartList .cartItem {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0;
}

    .moduleBox.cart .cartList .cartItem:not(:first-child) {
        border-top: 1px dotted #ccc;
    }

@media (max-width: 640px) {
    .moduleBox.cart .cartList .cartItem {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .cartItem {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.moduleBox.cart .cartList .Img {
    width: 30%;
}

@media (max-width: 640px) {
    .moduleBox.cart .cartList .Img {
        width: 30%;
    }
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .Img {
        width: 40%;
    }
}

.moduleBox.cart .cartList .Img img {
    width: 100%;
    display: block;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.moduleBox.cart .cartList .right {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 15px;
    padding-right: 0;
    margin-left: auto;
    -ms-flex: 1;
    flex: 1;
    max-width: 670px;
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .right {
        -ms-flex-pack: end;
        justify-content: flex-end;
        -ms-flex: auto;
        flex: auto;
    }
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .right {
        -ms-flex-pack: center;
        justify-content: center;
        padding: 15px 0;
    }
}

.moduleBox.cart .cartList .Txt {
    max-width: 355px;
    min-width: 20%;
    margin-right: auto;
    position: relative;
}

@media (max-width: 1080px) {
    .moduleBox.cart .cartList .Txt {
        margin-left: 0;
        -ms-flex: 1;
        flex: 1;
        max-width: 195px;
    }
}

@media (max-width: 640px) {
    .moduleBox.cart .cartList .Txt {
        margin-left: auto;
        margin-right: 0;
        margin-bottom: 15px;
        padding-right: 0;
        min-width: initial;
        text-align: right;
    }
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .Txt {
        text-align: center;
        margin-left: 0;
    }
}

.moduleBox.cart .cartList .title {
    min-width: 0;
    -ms-flex: 1;
    flex: 1;
    padding-right: 5px;
    margin-bottom: 10px;
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .title {
        padding-right: 0;
    }
}

.moduleBox.cart .cartList .title a {
    color: #fff;
    display: block;
    font-size: 20px;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 360px) {
    .moduleBox.cart .cartList .title a {
        font-size: 18px;
    }
}

@media (min-width: 1201px) {
    .moduleBox.cart .cartList .title a:hover {
        color: #cccccc;
    }
}

.moduleBox.cart .cartList .text {
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    letter-spacing: 0.5px;
    line-height: 1.5;
    margin-bottom: 35px;
}

@media (max-width: 1080px) {
    .moduleBox.cart .cartList .text {
        display: none;
    }
}

.moduleBox.cart .cartList .countBox {
    max-width: 295px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    border-radius: 25px;
    padding: 0 12px;
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .countBox {
        max-width: 145px;
        margin: 0 auto;
    }
}

.moduleBox.cart .cartList .countBox .count {
    margin: 0 auto;
    max-width: calc(100% - 75px);
}

    .moduleBox.cart .cartList .countBox .count input {
        font-size: 20px;
        color: #2b455c;
        font-weight: 400;
        line-height: 1;
    }

.moduleBox.cart .cartList .countBox .count_minus, .moduleBox.cart .cartList .countBox .count_plus {
    cursor: pointer;
    padding: 13px;
    transition: all 0.2s ease;
}

@media (min-width: 1201px) {
    .moduleBox.cart .cartList .countBox .count_minus:hover, .moduleBox.cart .cartList .countBox .count_plus:hover {
        color: #3b5f7f;
    }
}

.moduleBox.cart .cartList .priceBox {
    color: #fff;
    text-align: right;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

@media (max-width: 640px) {
    .moduleBox.cart .cartList .priceBox {
        width: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}

@media (max-width: 480px) {
    .moduleBox.cart .cartList .priceBox {
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.moduleBox.cart .cartList .priceBox .price {
    font-size: 32px;
    line-height: 1;
}

@media (max-width: 640px) {
    .moduleBox.cart .cartList .priceBox .price {
        margin-right: 15px;
        margin-bottom: 0;
    }
}

.moduleBox.cart .cartList .priceBox .size {
    font-size: 20px;
    margin: 0 5px;
}

@media (max-width: 640px) {
    .moduleBox.cart .cartList .priceBox .size {
        display: block;
        margin-top: 5px;
    }
}

.moduleBox.cart .cartList .priceBox .priceItem {
    line-height: 1.2;
    letter-spacing: 0.5px;
}

.moduleBox.cart .cartList .priceBox .priceItemOriginal, .moduleBox.cart .cartList .priceBox .priceItemSelling, .moduleBox.cart .cartList .priceBox .priceItemDefault {
    font-size: 16px;
}

    .moduleBox.cart .cartList .priceBox .priceItemOriginal span, .moduleBox.cart .cartList .priceBox .priceItemSelling span, .moduleBox.cart .cartList .priceBox .priceItemDefault span {
        display: inline-block;
        font-size: 40px;
    }

@media (max-width: 960px) {
    .moduleBox.cart .cartList .priceBox .priceItemOriginal span, .moduleBox.cart .cartList .priceBox .priceItemSelling span, .moduleBox.cart .cartList .priceBox .priceItemDefault span {
        font-size: 32px;
    }
}

.moduleBox.cart .cartList .priceBox .priceItemOriginal span:first-child, .moduleBox.cart .cartList .priceBox .priceItemSelling span:first-child, .moduleBox.cart .cartList .priceBox .priceItemDefault span:first-child {
    margin-right: 3px;
}

.moduleBox.cart .cartList .priceBox .priceItemOriginal {
    color: #bbb;
    text-decoration: line-through;
    line-height: 1;
}

@media (max-width: 640px) {
    .moduleBox.cart .cartList .priceBox .priceItemOriginal {
        margin-top: 15px;
        margin-right: 5px;
    }
}

.moduleBox.cart .cartList .priceBox .priceItemOriginal span {
    position: relative;
    font-size: 20px;
}

@media (max-width: 960px) {
    .moduleBox.cart .cartList .priceBox .priceItemOriginal span {
        font-size: 16px;
    }
}

.moduleBox.cart .cartList .priceBox .priceItemOriginal span::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #9f9f9f;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
}

.moduleBox.cart .cartList .priceBox .priceItem .txt {
    margin-top: 15px;
    font-size: 16px;
}

@media (max-width: 960px) {
    .moduleBox.cart .cartList .priceBox .priceItem .txt {
        margin-top: 0;
        display: none;
    }
}

.moduleBox.cart .cartList .spec {
    color: #6a6a6a;
    font-size: 14px;
    margin-bottom: 3px;
}

.moduleBox.cart .cartList .num {
    color: #6a6a6a;
    font-size: 14px;
    line-height: 1;
}

.moduleBox.cart .cartList .del {
    width: 35px;
    height: 35px;
    border: none;
    background-color: #eee;
    border-radius: 50%;
    color: #5f5f5f;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (min-width: 1201px) {
    .moduleBox.cart .cartList .del:hover {
        background-color: #2b455c;
        color: #fff;
    }
}

.moduleBox.cart .cartList .del svg {
    width: 15px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
}

.moduleBox.orderCheck .moduleWrap {
    max-width: 480px;
}

.moduleBox.search .moduleWrap {
    padding-top: 0;
    max-width: 1195px;
    background: #2b455c;
}

.moduleBox.search .moduleTitle {
    position: relative;
    padding: 0 35px;
    margin-left: -35px;
}

    .moduleBox.search .moduleTitle::after {
        content: "";
        position: absolute;
        display: block;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1px;
        height: 100%;
        background: #fff;
    }

@media (max-width: 640px) {
    .moduleBox.search .moduleTitle {
        padding: 0;
        margin-left: 0;
    }

        .moduleBox.search .moduleTitle::after {
            width: 75px;
            height: 1px;
            bottom: -10px;
            left: 0;
            right: initial;
            top: initial;
            -webkit-transform: none;
            transform: none;
        }
}

.moduleBox.search .moduleContent {
    position: relative;
    max-width: 725px;
    margin: 20vh auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 640px) {
    .moduleBox.search .moduleContent {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.moduleBox.search .moduleContent::after {
    position: absolute;
    content: "";
    display: inline-block;
    width: calc(100% - 60px);
    height: 100%;
    bottom: 50px;
    opacity: 0.5;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: url(../images/index-feature/line.png);
    background-repeat: repeat-x;
    background-position: 0 100%;
    pointer-events: none;
}

.moduleBox.search .searchBox {
    width: 100%;
    margin: 30px 0;
    position: relative;
}

    .moduleBox.search .searchBox input {
        -ms-flex: 1;
        flex: 1;
        width: 100%;
        display: block;
        padding: 12px 55px 12px 15px;
        color: #fff;
    }

        .moduleBox.search .searchBox input::-webkit-input-placeholder {
            color: #9ea6af;
        }

        .moduleBox.search .searchBox input::-moz-placeholder {
            color: #9ea6af;
        }

        .moduleBox.search .searchBox input:-ms-input-placeholder {
            color: #9ea6af;
        }

        .moduleBox.search .searchBox input::-ms-input-placeholder {
            color: #9ea6af;
        }

        .moduleBox.search .searchBox input::placeholder {
            color: #9ea6af;
        }

@media (max-width: 640px) {
    .moduleBox.search .searchBox input {
        padding-left: 0;
    }
}

.moduleBox.search .searchBox button {
    width: 50px;
    height: 50px;
    color: #fff;
    display: block;
    font-size: 16px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 50px;
    position: absolute;
    border-radius: 50%;
    top: 50%;
    right: 0;
    z-index: 1;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
    padding-top: 3px;
}

    .moduleBox.search .searchBox button img {
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

@media (min-width: 1201px) {
    .moduleBox.search .searchBox button:hover {
        background-color: #1b2b39;
    }
}

.moduleBox.contact .moduleWrap {
    padding-top: 0;
    max-width: 1195px;
    background: #2b455c;
}

.moduleBox.contact .moduleContent {
    position: relative;
    margin: 50px 0;
    padding-left: 170px;
    padding-right: 170px;
    max-height: calc(90vh - 300px);
}

@media (max-width: 1280px) {
    .moduleBox.contact .moduleContent {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 360px) {
    .moduleBox.contact .moduleContent {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.moduleBox.contact .titleBox {
    margin-bottom: 10px;
}

.moduleBox.contact .moduleTitle {
    position: relative;
    line-height: 1;
}

.moduleBox.contact .noteBox {
    font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
}

    .moduleBox.contact .noteBox .note {
        color: #ffffff;
        font-weight: 300;
        letter-spacing: 1.2px;
        line-height: 1.8;
    }

    .moduleBox.contact .noteBox .title {
        font-weight: 500;
    }

        .moduleBox.contact .noteBox .title::after {
            content: url(../images/clock.png);
            display: inline-block;
            vertical-align: middle;
            margin: 5px 0 0 5px;
        }

    .moduleBox.contact .noteBox p {
        margin-bottom: 15px;
    }

.moduleBox.cookie .moduleWrap {
    max-width: 480px;
}

.moduleBox.cookie .text {
    font-size: 14px;
    letter-spacing: 0.5px;
    line-height: 1.6;
}

.moduleBox.coupon .moduleWrap {
    max-width: 1190px;
    background: #fff;
    padding-top: 50px;
}

.moduleBox.coupon .moduleContent {
    max-height: calc(90vh - 320px);
    padding-left: 90px;
    padding-right: 90px;
}

    .moduleBox.coupon .moduleContent::-webkit-scrollbar-track {
        box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.15);
        background-color: rgba(241, 241, 241, 0.25);
    }

    .moduleBox.coupon .moduleContent::-webkit-scrollbar {
        width: 5px;
        height: 5px;
        background-color: rgba(241, 241, 241, 0.25);
    }

    .moduleBox.coupon .moduleContent::-webkit-scrollbar-thumb {
        background: #d1942d;
    }

@media (max-width: 1280px) {
    .moduleBox.coupon .moduleContent {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 768px) {
    .moduleBox.coupon .moduleContent {
        padding-left: 10px;
        padding-right: 10px;
    }
}

.moduleBox.coupon .moduleTitle {
    line-height: 1;
    color: #2b455c;
}

.moduleBox.coupon .secTitle {
    color: #2b455c;
}

.moduleBox.coupon .couponList {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 40px;
}

.moduleBox.coupon .couponitem {
    width: 33.3333333333%;
}

@media (max-width: 1180px) {
    .moduleBox.coupon .couponitem {
        width: 50%;
    }
}

@media (max-width: 560px) {
    .moduleBox.coupon .couponitem {
        width: 100%;
    }
}

.moduleBox.coupon .couponitem.used .payBtnStyle {
    background: #929292;
    color: #fff;
    border: 2px solid #929292;
}

@media (min-width: 1201px) {
    .moduleBox.coupon .couponitem.used .payBtnStyle:hover {
        background: #797979;
        border: 2px solid #797979;
    }
}

.moduleBox.coupon .couponitem.used .Img img:nth-child(1) {
    opacity: 0;
}

.moduleBox.coupon .couponitem.wasUsed .Img, .moduleBox.coupon .couponitem.invalid .Img {
    pointer-events: none;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    opacity: 0.4;
}

.moduleBox.coupon .couponitem .item {
    position: relative;
    margin: 0 auto 25px;
}

@media (max-width: 860px) {
    .moduleBox.coupon .couponitem .item {
        padding: 0 10px;
    }
}

@media (max-width: 768px) {
    .moduleBox.coupon .couponitem .item {
        padding: 5px;
    }
}

.moduleBox.coupon .couponitem .sticker {
    position: absolute;
    right: 15%;
    top: 23%;
    z-index: 5;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    text-align: center;
    overflow: hidden;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}

    .moduleBox.coupon .couponitem .sticker::after {
        content: "";
        position: absolute;
        display: block;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        border-radius: 50%;
        width: 90%;
        height: 90%;
    }

    .moduleBox.coupon .couponitem .sticker .txt {
        width: 83%;
        display: block;
        margin-top: 28px;
        margin-left: 7px;
        -webkit-transform: rotate(-25deg);
        transform: rotate(-25deg);
        -webkit-transform-origin: center;
        transform-origin: center;
    }

.moduleBox.coupon .couponitem .stickerInvalid {
    background: #fff;
}

    .moduleBox.coupon .couponitem .stickerInvalid::after {
        border: 1px solid #797979;
    }

    .moduleBox.coupon .couponitem .stickerInvalid .txt {
        color: #797979;
        border-top: 1px solid #797979;
        border-bottom: 1px solid #797979;
    }

.moduleBox.coupon .couponitem .stickerWasUsed {
    background: #2b455c;
}

    .moduleBox.coupon .couponitem .stickerWasUsed::after {
        border: 1px solid #fff;
    }

    .moduleBox.coupon .couponitem .stickerWasUsed .txt {
        color: #fff;
        border-top: 1px solid #fff;
        border-bottom: 1px solid #fff;
    }

.moduleBox.coupon .couponitem .ticket {
    position: relative;
    z-index: 1;
}

.moduleBox.coupon .couponitem .Txt {
    position: absolute;
    z-index: 5;
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 175px;
    padding: 0 20px;
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
}

@media (max-width: 1180px) {
    .moduleBox.coupon .couponitem .Txt {
        padding: 0 10px;
    }
}

@media (max-width: 860px) {
    .moduleBox.coupon .couponitem .Txt {
        max-width: 150px;
    }
}

.moduleBox.coupon .couponitem .Txt .title {
    width: 100%;
    font-size: 15px;
    font-weight: 400;
    border-bottom: 1px solid #fff;
    margin-bottom: 5px;
}

@media (max-width: 860px) {
    .moduleBox.coupon .couponitem .Txt .title {
        font-size: 12px;
    }
}

.moduleBox.coupon .couponitem .Txt .title .price {
    font-size: 30px;
    font-weight: 400;
    margin-left: 10px;
    letter-spacing: 1.5px;
}

@media (max-width: 860px) {
    .moduleBox.coupon .couponitem .Txt .title .price {
        font-size: 18px;
    }
}

.moduleBox.coupon .couponitem .Txt .note {
    font-size: 12px;
    padding: 0 0 10px;
    letter-spacing: 1.5px;
}

.moduleBox.coupon .couponitem .Txt .date {
    width: 100%;
    font-size: 12px;
    letter-spacing: 1.5px;
    color: #6f6f6f;
    background: #fff;
    border-radius: 10px;
    margin: 0 5px 10px;
}

.moduleBox.coupon .couponitem .Img {
    position: relative;
    z-index: 0;
    max-width: 285px;
    margin: 0 auto;
}

    .moduleBox.coupon .couponitem .Img img {
        width: 100%;
        display: block;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

        .moduleBox.coupon .couponitem .Img img:nth-child(1) {
            position: relative;
            z-index: 1;
        }

        .moduleBox.coupon .couponitem .Img img:nth-child(2) {
            position: absolute;
            z-index: 0;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        }

.moduleBox.coupon .couponitem .button {
    text-align: center;
    margin-top: 20px;
}

.moduleMask {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1003;
    background-color: rgba(0, 0, 0, 0.7);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

    .moduleMask.show {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

/*loading*/
.loadingArea {
    width: 100%;
    height: 100vh;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999;
}

    .loadingArea .loadLogo {
        width: 190px;
    }

        .loadingArea .loadLogo img {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px);
            transition: all 1s ease;
            width: 100%;
            display: block;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
        }

    .loadingArea.show {
        opacity: 1;
        pointer-events: auto;
    }

        .loadingArea.show .loadLogo img {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0);
        }

    .loadingArea.hide {
        opacity: 0;
    }

/*header*/
header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 100;
    background-color: #fff;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    /*menu*/
}

    header .wrap {
        position: relative;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        max-width: 1780px;
        padding: 12.5px 20px;
    }

@media (max-width: 1180px) {
    header .wrap {
        padding: 11.5px 20px;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

@media (max-width: 640px) {
    header .wrap {
        padding: 7.5px 20px;
    }
}

header .logo {
    width: 190px;
}

    header .logo a {
        display: block;
    }

    header .logo img {
        width: 100%;
        display: block;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

@media (max-width: 1280px) {
    header .logo {
        margin-right: auto;
    }
}

@media (max-width: 1180px) {
    header .logo {
        width: 133px;
    }
}

@media (max-width: 360px) {
    header .logo {
        width: 100px;
    }
}

header .menuBox {
    -ms-flex: 1;
    flex: 1;
}

@media (max-width: 1280px) {
    header .menuBox {
        display: none;
    }
}

header .menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-right: 25px;
}

@media (max-width: 1680px) {
    header .menu {
        padding-right: 0;
    }
}

header .menu > li {
    position: relative;
    display: inline-block;
}

    header .menu > li a {
        position: relative;
        display: block;
        color: #2b455c;
        font-size: 17px;
        font-weight: 500;
        padding: 10px 25px;
    }

        header .menu > li a::after {
            content: "";
            z-index: -1;
            position: absolute;
            bottom: 10px;
            right: 20%;
            display: block;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background-color: #d69f42;
            opacity: 0;
        }

        header .menu > li a.current, header .menu > li a:hover {
            color: #436c90;
        }

            header .menu > li a.current::after, header .menu > li a:hover::after {
                -webkit-transform: scale(2.5);
                transform: scale(2.5);
                opacity: 0.5;
            }

@media (max-width: 1880px) {
    header .menu > li a {
        padding: 10px 15px;
    }
}

@media (max-width: 960px) {
    header .menu > li a {
        padding: 10px;
    }
}

header .menu .submenu {
    width: 150px;
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 99;
    text-align: center;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

    header .menu .submenu a {
        border-bottom: 1px solid #dadada;
        background-color: #fff;
        color: #666;
        padding: 10px;
    }

        header .menu .submenu a::after {
            display: none;
        }

        header .menu .submenu a.current, header .menu .submenu a:hover {
            color: #fff;
            background-color: #2b455c;
        }

header .rightBox {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 15px 0 50px;
}

@media (max-width: 1880px) {
    header .rightBox {
        padding: 0 15px;
    }
}

@media (max-width: 1280px) {
    header .rightBox {
        margin-right: -15px;
    }
}

header .rightList {
    position: relative;
    padding: 10px 30px;
}

@media (max-width: 1660px) {
    header .rightList {
        padding: 10px 18px;
    }
}

@media (max-width: 1440px) {
    header .rightList {
        padding: 10px 15px;
    }
}

@media (max-width: 390px) {
    header .rightList {
        padding: 10px;
    }
}

header .rightList::before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1px;
    height: 32px;
    background: rgba(134, 134, 135, 0.2);
}

@media (max-width: 480px) {
    header .rightList::before {
        display: none;
    }
}

header .rightList:first-of-type::before {
    display: none;
}

header .rightList::after {
    content: "";
    z-index: -1;
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #d69f42;
    opacity: 0;
}

@media (min-width: 1201px) {
    header .rightList:hover::after {
        -webkit-transform: translate(-50%, -50%) scale(5);
        transform: translate(-50%, -50%) scale(5);
        opacity: 0.5;
    }
}

header .loginBox {
    position: relative;
    z-index: 1;
}

    header .loginBox img {
        display: block;
    }

@media (max-width: 1440px) {
    header .loginBox img {
        width: 17px;
    }
}

header .loginBox .submenu {
    position: absolute;
    left: 50%;
    margin-left: -80px;
    top: 130%;
    width: 160px;
    padding-top: 10px;
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s;
}

    header .loginBox .submenu a {
        display: block;
        text-align: center;
        padding: 10px;
        background-color: #fff;
    }

        header .loginBox .submenu a:not(:last-child) {
            border-bottom: 1px solid #eee;
        }

header .loginBox:hover .submenu {
    top: 100%;
    opacity: 1;
    pointer-events: auto;
}

@media (max-width: 1180px) {
    header .headerSearchBox {
        display: none;
    }
}

header .headerSearchBox a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

header .headerSearchBox img {
    display: block;
}

@media (max-width: 1440px) {
    header .headerSearchBox img {
        width: 17px;
        height: 17px;
    }
}

header .headerSearchBox .text {
    font-size: 17px;
    font-weight: 500;
    margin-left: 10px;
}

@media (max-width: 1440px) {
    header .headerSearchBox .text {
        display: none;
    }
}

header .searchBox {
    display: -ms-flexbox;
    display: flex;
}

    header .searchBox input {
        width: 100%;
        height: 45px;
        padding: 0 15px;
        border: none;
        font-family: "微軟正黑體";
        background-color: #fafafa;
    }

    header .searchBox a {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        display: block;
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: 17px;
        font-weight: 500;
        color: #fff;
        text-align: center;
        background-color: #2b455c;
    }

header .languageBox {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

    header .languageBox .earth img {
        display: block;
    }

@media (max-width: 1440px) {
    header .languageBox .earth img {
        width: 17px;
    }
}

header .languageBox .languageCurrent {
    position: relative;
    padding: 0 10px 0 8px;
    font-size: 17px;
    color: #2b455c;
    font-family: "Oswald", sans-serif, "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    font-weight: 500;
    cursor: pointer;
}

    header .languageBox .languageCurrent::before {
        content: "";
        width: 7px;
        height: 7px;
        border-right: 2px solid #2b455c;
        border-bottom: 2px solid #2b455c;
        position: absolute;
        top: 50%;
        right: 0;
        z-index: 1;
        -webkit-transform: translate(100%, -50%) rotate(45deg);
        transform: translate(100%, -50%) rotate(45deg);
    }

header .languageBox .languageList {
    width: 100%;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
}

    header .languageBox .languageList.show {
        opacity: 1;
        pointer-events: auto;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    header .languageBox .languageList li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.1);
    }

    header .languageBox .languageList li a {
        display: block;
        font-size: 17px;
        font-family: "Oswald", sans-serif, "Noto Sans TC", "Microsoft JhengHei", sans-serif;
        line-height: 1;
        letter-spacing: 0.5px;
        padding: 10px 10px;
        text-align: center;
    }

        header .languageBox .languageList li a:hover, header .languageBox .languageList li a.current {
            background-color: #2b455c;
            color: #fff;
        }

@media (max-width: 480px) {
    header .languageBox {
        display: none;
    }
}

@media (max-width: 480px) {
    header .headerCartBox::before {
        content: "";
        position: absolute;
        display: block;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1px;
        height: 32px;
        background: rgba(134, 134, 135, 0.2);
    }
}

header .headerCartBox a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

header .headerCartBox span, header .headerCartBox img {
    display: block;
    margin-right: 12px;
}

@media (max-width: 1440px) {
    header .headerCartBox img {
        width: 17px;
    }
}

@media (max-width: 1180px) {
    header .headerCartBox img {
        margin-right: 8px;
    }
}

header .headerCartBox .text {
    font-size: 17px;
    font-weight: 500;
}

@media (max-width: 1440px) {
    header .headerCartBox .text {
        display: none;
    }
}

header .headerCartBox .num {
    position: relative;
    font-size: 13px;
    font-family: "Oswald", sans-serif;
    font-weight: 500;
    color: #2b455c;
    text-align: center;
    padding-top: 5px;
    width: 30px;
    height: 30px;
    background: #f1b553;
    border-radius: 50%;
}

@media (max-width: 1180px) {
    header .headerCartBox .num {
        margin-right: 0;
    }
}

header .contactBtn {
    margin-left: 10px;
}

@media (max-width: 1440px) {
    header .contactBtn {
        margin-left: 0;
    }
}

@media (max-width: 1280px) {
    header .contactBtn {
        display: none;
    }
}

header .contactBtn a {
    background: #ececec;
    font-size: 17px;
    font-weight: 500;
    padding: 10px 30px;
    border-radius: 25px;
    border: 1px solid #2b455c;
}

@media (min-width: 1201px) {
    header .contactBtn a:hover {
        background: #2b455c;
        color: #fff;
    }
}

@media (max-width: 1660px) {
    header .contactBtn a {
        padding: 10px 18px;
    }
}

header .slideMenuTrigger {
    position: relative;
    width: 35px;
    height: 35px;
    border-radius: 5px;
    background: #2b455c;
    cursor: pointer;
}

@media (min-width: 1181px) {
    header .slideMenuTrigger {
        display: none;
    }
}

header .slideMenuTrigger span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: -0.5px;
    width: 18px;
    height: 2px;
    background-color: #fff;
    transition: all 0.5s;
}

    header .slideMenuTrigger span:before, header .slideMenuTrigger span:after {
        content: "";
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #fff;
        transition: all 0.5s;
    }

    header .slideMenuTrigger span:before {
        top: -7px;
    }

    header .slideMenuTrigger span:after {
        bottom: -7px;
    }

header .slideMenuTrigger.show span {
    background-color: transparent;
}

    header .slideMenuTrigger.show span:before {
        top: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    header .slideMenuTrigger.show span:after {
        bottom: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

/*sidemenu*/
.sidemenu {
    position: fixed;
    z-index: 6;
    right: 0;
    top: 320px;
    background-color: #2b455c;
    padding: 25px 10px;
    border-radius: 15px 0 0 15px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

@media (max-width: 1180px) {
    .sidemenu {
        display: none;
    }
}

.sidemenu .slideMenuTrigger {
    position: relative;
    display: block;
    padding: 20px 25px;
    cursor: pointer;
}

    .sidemenu .slideMenuTrigger::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        display: block;
        width: 25px;
        height: 1px;
        background: #fff;
        opacity: 0.3;
    }

@media (max-width: 1180px) {
    .sidemenu .slideMenuTrigger {
        padding: 15px 10px;
    }
}

@media (min-width: 1201px) {
    .sidemenu .slideMenuTrigger:hover {
        background: #1b2b39;
    }
}

.sidemenu .slideMenuTrigger span {
    position: relative;
    display: block;
    width: 3px;
    height: 24px;
    margin-left: 6px;
    background-color: #fff;
    transition: all 0.5s;
}

    .sidemenu .slideMenuTrigger span::before {
        content: "";
        position: absolute;
        left: 8px;
        width: 3px;
        height: 100%;
        background-color: #fff;
        transition: all 0.5s;
    }

.sidemenu .slideMenuTrigger.show span {
    margin-left: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

    .sidemenu .slideMenuTrigger.show span:before {
        left: 0;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }

.sidemenu .slideMenuTrigger .text {
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    margin-top: 15px;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
}

@media (max-width: 1180px) {
    .sidemenu .slideMenuTrigger .text {
        margin-top: 8px;
    }
}

.sidemenu .headerCartBox {
    position: relative;
}

    .sidemenu .headerCartBox::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        display: block;
        width: 25px;
        height: 1px;
        background: #fff;
        opacity: 0.3;
    }

@media (min-width: 1201px) {
    .sidemenu .headerCartBox:hover {
        background: #1b2b39;
    }
}

.sidemenu .headerCartBox a {
    display: block;
    padding: 20px 25px;
}

@media (max-width: 1180px) {
    .sidemenu .headerCartBox a {
        padding: 15px 10px;
    }
}

.sidemenu .headerCartBox span, .sidemenu .headerCartBox img {
    display: block;
    margin: 0 auto;
}

.sidemenu .headerCartBox img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    margin-bottom: 10px;
}

@media (max-width: 1180px) {
    .sidemenu .headerCartBox img {
        margin-bottom: 8px;
    }
}

.sidemenu .headerCartBox .num {
    position: relative;
    font-size: 13px;
    font-family: "Oswald", sans-serif;
    font-weight: 500;
    color: #2b455c;
    text-align: center;
    padding-top: 2px;
    width: 25px;
    height: 25px;
    background: #f1b553;
    border-radius: 50%;
}

.sidemenu .loginBox {
    position: relative;
    z-index: 1;
    padding: 20px 25px;
}

@media (max-width: 1180px) {
    .sidemenu .loginBox {
        padding: 15px 10px;
    }
}

@media (min-width: 1201px) {
    .sidemenu .loginBox:hover {
        background: #1b2b39;
    }
}

.sidemenu .loginBox img {
    display: block;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.sidemenu .loginBox .text, .sidemenu .loginBox img {
    margin: 0 auto;
}

.sidemenu .loginBox .text {
    display: block;
    font-size: 16px;
    font-weight: 500;
    margin-top: 15px;
    color: #fff;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
}

@media (max-width: 1180px) {
    .sidemenu .loginBox .text {
        margin-top: 8px;
    }
}

.sidemenu .loginBox .submenu {
    position: absolute;
    left: 50%;
    margin-left: -80px;
    top: 130%;
    width: 160px;
    padding-top: 10px;
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s;
}

    .sidemenu .loginBox .submenu a {
        display: block;
        text-align: center;
        padding: 10px;
        background-color: #fff;
    }

        .sidemenu .loginBox .submenu a:not(:last-child) {
            border-bottom: 1px solid #eee;
        }

.sidemenu .loginBox:hover .submenu {
    top: 100%;
    opacity: 1;
    pointer-events: auto;
}

/*slideMenu*/
.slideMenuTrigger.close {
    width: 50px;
    height: 45px;
    -ms-flex-align: center;
    align-items: center;
    background-color: #2b455c;
    border: 1px solid #2b455c;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: auto;
    position: relative;
}

    .slideMenuTrigger.close .line {
        width: 50%;
        height: 1px;
        background-color: #fff;
        display: inline-block;
        margin: auto;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
    }

        .slideMenuTrigger.close .line::before, .slideMenuTrigger.close .line::after {
            content: "";
            width: 100%;
            height: 2px;
            background-color: #fff;
            position: absolute;
            z-index: 1;
        }

        .slideMenuTrigger.close .line::before {
            top: 0;
            left: 0;
            -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
        }

        .slideMenuTrigger.close .line::after {
            bottom: 0;
            right: 0;
            -webkit-transform: translateY(8px);
            transform: translateY(8px);
        }

    .slideMenuTrigger.close .line {
        background-color: transparent;
    }

        .slideMenuTrigger.close .line::before {
            top: 0;
            left: 0;
            -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
        }

        .slideMenuTrigger.close .line::after {
            bottom: 0;
            right: 0;
            -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
        }

@media (min-width: 1201px) {
    .slideMenuTrigger.close:hover {
        background-color: #fff;
    }

        .slideMenuTrigger.close:hover span::before, .slideMenuTrigger.close:hover span::after {
            background-color: #2b455c;
        }
}

.slideMenuArea {
    width: 100%;
    max-width: 100vw;
    height: 100vh;
    opacity: 0;
    background-color: #ececec;
    overflow-x: hidden;
    padding-top: 68px;
    pointer-events: none;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    transition: all 0.6s ease-in-out;
    -webkit-overflow-scrolling: touch;
}

    .slideMenuArea::-webkit-scrollbar-track {
        box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.15);
        background-color: #fff;
    }

    .slideMenuArea::-webkit-scrollbar {
        width: 5px;
        height: 5px;
        background-color: #fff;
    }

    .slideMenuArea::-webkit-scrollbar-thumb {
        background: #2b455c;
    }

@media (min-width: 1181px) {
    .slideMenuArea {
        background-color: #2b455c;
        padding-bottom: 0;
        z-index: 101;
    }
}

@media (max-width: 640px) {
    .slideMenuArea {
        padding-top: 60px;
    }
}

.slideMenuArea.show {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

    .slideMenuArea.show .topBox {
        -webkit-animation: textSlideRightAnimation 0.5s 0.6s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 0.6s ease-in-out both;
    }

    .slideMenuArea.show .funcBox {
        -webkit-animation: textSlideRightAnimation 0.5s 0.9s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 0.9s ease-in-out both;
    }

    .slideMenuArea.show .menuBox {
        -webkit-animation: textSlideRightAnimation 0.5s 1.2s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 1.2s ease-in-out both;
    }

        .slideMenuArea.show .menuBox .nav li.dropDown.open .submenu {
            -webkit-animation: textSlideDownAnimation 0.3s 0.15s ease-in-out both;
            animation: textSlideDownAnimation 0.3s 0.15s ease-in-out both;
        }

    .slideMenuArea.show .contactBtn {
        -webkit-animation: textSlideRightAnimation 0.5s 1.5s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 1.5s ease-in-out both;
    }

    .slideMenuArea.show .socialBox {
        -webkit-animation: textSlideRightAnimation 0.5s 1.5s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 1.5s ease-in-out both;
    }

    .slideMenuArea.show .decoBox .deco-1 {
        -webkit-animation: textSlideRightAnimation 0.5s 1.7s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 1.7s ease-in-out both;
    }

    .slideMenuArea.show .decoBox .deco-3 {
        -webkit-animation: textSlideRightAnimation 0.5s 1.9s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 1.9s ease-in-out both;
    }

    .slideMenuArea.show .decoBox .deco-4 {
        -webkit-animation: textSlideRightAnimation 0.5s 2.1s ease-in-out both;
        animation: textSlideRightAnimation 0.5s 2.1s ease-in-out both;
    }

.slideMenuArea .wrap {
    position: relative;
}

@media (min-width: 1181px) {
    .slideMenuArea .wrap {
        max-width: 1725px;
        margin: 6vh auto 50px;
        padding: 80px 160px;
        background: #f3b751;
        border-radius: 25px;
    }
}

@media (max-width: 1860px) {
    .slideMenuArea .wrap {
        padding: 70px;
        max-width: 85vw;
    }
}

@media (max-width: 1280px) {
    .slideMenuArea .wrap {
        max-width: 90vw;
    }
}

@media (max-width: 1180px) {
    .slideMenuArea .wrap {
        max-width: initial;
        padding: 0 20px;
        height: 100%;
    }
}

.slideMenuArea .decoBox {
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 25px;
    z-index: 0;
    pointer-events: none;
}

@media (max-width: 1180px) {
    .slideMenuArea .decoBox {
        z-index: -1;
    }
}

.slideMenuArea .decoBox .deco-1 {
    position: absolute;
    top: 0;
    left: -2vw;
    width: 280px;
}

@media (max-width: 420px) {
    .slideMenuArea .decoBox .deco-1 {
        width: 40vw;
    }
}

.slideMenuArea .decoBox .deco-3 {
    position: absolute;
    bottom: 0;
    right: -6vw;
    width: 350px;
}

@media (max-width: 420px) {
    .slideMenuArea .decoBox .deco-3 {
        width: 70vw;
    }
}

.slideMenuArea .decoBox .deco-4 {
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 6vw;
    width: 205px;
}

@media (max-width: 420px) {
    .slideMenuArea .decoBox .deco-4 {
        width: 35vw;
    }
}

.slideMenuArea .decoBox .deco-cookie {
    position: absolute;
    z-index: -1;
    width: 18px;
}

    .slideMenuArea .decoBox .deco-cookie:nth-of-type(4) {
        top: 25px;
        left: 25px;
    }

    .slideMenuArea .decoBox .deco-cookie:nth-of-type(5) {
        top: 25px;
        right: 25px;
    }

    .slideMenuArea .decoBox .deco-cookie:nth-of-type(6) {
        bottom: 25px;
        left: 25px;
    }

    .slideMenuArea .decoBox .deco-cookie:nth-of-type(7) {
        bottom: 25px;
        right: 25px;
    }

@media (min-width: 1181px) {
    .slideMenuArea .decoBox .mobile {
        display: none;
    }
}

@media (max-width: 1180px) {
    .slideMenuArea .decoBox .desktop {
        display: none;
    }
}

@media (min-width: 1181px) {
    .slideMenuArea .mobile {
        display: none;
    }
}

.slideMenuArea .mobile .topBox {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 30px 0 15px;
}

    .slideMenuArea .mobile .topBox .slideMenuLogo {
        width: 135px;
    }

        .slideMenuArea .mobile .topBox .slideMenuLogo img {
            width: 100%;
            display: block;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
        }

.slideMenuArea .mobile .bottom {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 25px;
}

@media (max-width: 480px) {
    .slideMenuArea .mobile .bottom {
        margin-top: 10px;
    }
}

.slideMenuArea .mobile .funcBox {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 15px 0;
    margin: 0 -10px;
}

    .slideMenuArea .mobile .funcBox .languageBox {
        -ms-flex: 1;
        flex: 1;
        margin-bottom: 10px;
        padding: 0 10px;
        position: relative;
    }

        .slideMenuArea .mobile .funcBox .languageBox .languageCurrent {
            border-bottom: 1px solid #ccc;
            color: #232323;
            cursor: pointer;
            padding-top: 5px;
            padding-bottom: 14px;
            padding-right: 15px;
            position: relative;
        }

            .slideMenuArea .mobile .funcBox .languageBox .languageCurrent::before {
                content: "";
                width: 7px;
                height: 7px;
                border-right: 1px solid #232323;
                border-bottom: 1px solid #232323;
                position: absolute;
                top: 50%;
                right: 10px;
                z-index: 1;
                -webkit-transform: translate(100%, -100%) rotate(45deg);
                transform: translate(100%, -100%) rotate(45deg);
            }

        .slideMenuArea .mobile .funcBox .languageBox .languageList {
            width: calc(100% - 20px);
            background-color: #fff;
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
            opacity: 0;
            pointer-events: none;
            position: absolute;
            top: 100%;
            left: 50%;
            z-index: 1;
            -webkit-transform: translate(-50%, -5px);
            transform: translate(-50%, -5px);
        }

            .slideMenuArea .mobile .funcBox .languageBox .languageList.show {
                opacity: 1;
                pointer-events: auto;
                -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
            }

            .slideMenuArea .mobile .funcBox .languageBox .languageList li:not(:first-child) {
                border-top: 1px solid rgba(0, 0, 0, 0.1);
            }

            .slideMenuArea .mobile .funcBox .languageBox .languageList li a {
                display: block;
                font-size: 14px;
                line-height: 1;
                letter-spacing: 0.5px;
                padding: 10px 10px;
                text-align: center;
            }

                .slideMenuArea .mobile .funcBox .languageBox .languageList li a:hover, .slideMenuArea .mobile .funcBox .languageBox .languageList li a.current {
                    background-color: #2b455c;
                    color: #fff;
                }

    .slideMenuArea .mobile .funcBox .searchBox {
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex: 1;
        flex: 1;
        padding: 10px 15px;
        border: 1px solid #000;
        border-radius: 25px;
        background: #fff;
    }

        .slideMenuArea .mobile .funcBox .searchBox input {
            width: 100%;
            font-size: 17px;
            line-height: 1;
            font-weight: 500;
            color: #2b455c;
        }

            .slideMenuArea .mobile .funcBox .searchBox input::-webkit-input-placeholder {
                color: #2b455c;
            }

            .slideMenuArea .mobile .funcBox .searchBox input::-moz-placeholder {
                color: #2b455c;
            }

            .slideMenuArea .mobile .funcBox .searchBox input:-ms-input-placeholder {
                color: #2b455c;
            }

            .slideMenuArea .mobile .funcBox .searchBox input::-ms-input-placeholder {
                color: #2b455c;
            }

            .slideMenuArea .mobile .funcBox .searchBox input::placeholder {
                color: #2b455c;
            }

        .slideMenuArea .mobile .funcBox .searchBox button {
            width: 20px;
            height: 20px;
            display: block;
            text-align: center;
            margin-right: 30px;
        }

            .slideMenuArea .mobile .funcBox .searchBox button img {
                display: block;
                width: 100%;
            }

.slideMenuArea .mobile .menuBox {
    width: 100%;
    padding: 15px 0;
}

    .slideMenuArea .mobile .menuBox .nav > li {
        position: relative;
    }

        .slideMenuArea .mobile .menuBox .nav > li.dropDown > span {
            cursor: pointer;
        }

            .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a::before, .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a::after {
                content: "";
                width: 12px;
                height: 1px;
                background-color: #2b455c;
                position: absolute;
                top: 50%;
                right: 5px;
                -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
                z-index: 1;
            }

            .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a::after {
                -webkit-transform: translate(-50%, 0) rotate(90deg);
                transform: translate(-50%, 0) rotate(90deg);
            }

            .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a.current::before, .slideMenuArea .mobile .menuBox .nav > li.dropDown > span > a.current::after {
                background-color: #2b455c;
            }

        .slideMenuArea .mobile .menuBox .nav > li.dropDown.open > span > a::after {
            -webkit-transform: translate(-50%, 0) rotate(0);
            transform: translate(-50%, 0) rotate(0);
        }

        .slideMenuArea .mobile .menuBox .nav > li.dropDown.open .submenu {
            display: block;
        }

        .slideMenuArea .mobile .menuBox .nav > li a {
            color: #2b455c;
            display: block;
            font-size: 20px;
            line-height: 1;
            letter-spacing: 0px;
            padding: 15px 30px 15px 0;
            position: relative;
        }

            .slideMenuArea .mobile .menuBox .nav > li a.current {
                color: #2b455c;
            }

@media (min-width: 1201px) {
    .slideMenuArea .mobile .menuBox .nav > li a:hover {
        color: #2b455c;
    }
}

.slideMenuArea .mobile .menuBox .nav .submenu {
    width: 100%;
    display: none;
    padding: 0 10px 10px;
}

    .slideMenuArea .mobile .menuBox .nav .submenu li {
        padding: 5px 0;
    }

        .slideMenuArea .mobile .menuBox .nav .submenu li a {
            color: #2b455c;
            font-size: 15px;
            font-weight: 500;
            padding: 5px 0;
        }

            .slideMenuArea .mobile .menuBox .nav .submenu li a.current {
                color: #2b455c;
            }

@media (min-width: 1201px) {
    .slideMenuArea .mobile .menuBox .nav .submenu li a:hover {
        color: #2b455c;
    }
}

.slideMenuArea .mobile .socialBox {
    -ms-flex-align: center;
    align-items: center;
    padding: 15px 0;
}

    .slideMenuArea .mobile .socialBox .socialList {
        display: -ms-flexbox;
        display: flex;
    }

    .slideMenuArea .mobile .socialBox li:nth-child(2) a {
        padding-top: 4px;
    }

    .slideMenuArea .mobile .socialBox li:nth-child(3) a {
        padding-top: 1px;
    }

    .slideMenuArea .mobile .socialBox a {
        position: relative;
        display: block;
        width: 45px;
        height: 45px;
        background: #d69f42;
        color: #fff;
        font-size: 25px;
        text-align: center;
        padding-top: 2px;
        margin-right: 15px;
        border-radius: 50%;
    }

@media (max-width: 480px) {
    .slideMenuArea .mobile .socialBox a {
        margin-right: 10px;
    }
}

.slideMenuArea .mobile .socialBox a::after {
    content: "";
    position: absolute;
    display: block;
    background-image: url(../images/light_yellow.png);
    background-position: center;
    background-size: cover;
    width: 140%;
    height: 140%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale(0.6);
    transform: translate(-50%, -50%) scale(0.6);
}

.slideMenuArea .mobile .socialBox a svg {
    width: 23px;
    height: 23px;
    fill: #d69f42;
}

@media (min-width: 1201px) {
    .slideMenuArea .mobile .socialBox a:hover::after {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
    }
}

.slideMenuArea .mobile .contactBtn a {
    display: block;
    background: #ececec;
    font-size: 17px;
    font-weight: 500;
    padding: 10px 30px;
    margin-right: 20px;
    border-radius: 25px;
    border: 1px solid #2b455c;
}

@media (min-width: 1201px) {
    .slideMenuArea .mobile .contactBtn a:hover {
        background: #2b455c;
        color: #fff;
    }
}

@media (max-width: 1280px) {
    .slideMenuArea .mobile .contactBtn a {
        padding: 5px 18px;
    }
}

@media (max-width: 480px) {
    .slideMenuArea .mobile .contactBtn a {
        margin-right: 10px;
    }
}

.slideMenuArea .desktop {
    position: relative;
    display: -ms-flexbox;
    display: flex;
}

@media (max-width: 1180px) {
    .slideMenuArea .desktop {
        display: none;
    }
}

.slideMenuArea .desktop .left {
    margin-right: auto;
}

.slideMenuArea .desktop .right {
    -ms-flex: 1;
    flex: 1;
    max-width: 1010px;
    height: 71vh;
    padding-left: 20px;
    overflow-y: scroll;
}

    .slideMenuArea .desktop .right::-webkit-scrollbar-track {
        box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.15);
        background-color: rgba(255, 255, 255, 0.35);
    }

    .slideMenuArea .desktop .right::-webkit-scrollbar {
        width: 5px;
        height: 5px;
        background-color: rgba(255, 255, 255, 0.35);
    }

    .slideMenuArea .desktop .right::-webkit-scrollbar-thumb {
        background: #d1942d;
    }

.slideMenuArea .desktop .logo {
    max-width: 205px;
    margin-bottom: 55px;
}

    .slideMenuArea .desktop .logo img {
        width: 100%;
        display: block;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

.slideMenuArea .desktop .contactInfo {
    position: relative;
}

.slideMenuArea .desktop .infoTitle {
    font-size: 18px;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
    color: #fff;
}

.slideMenuArea .desktop .infoList {
    margin: 2px -10px;
    margin-right: 0;
}

    .slideMenuArea .desktop .infoList li {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 0;
        padding: 0 13px 1px;
        color: #fff;
        font-size: 16px;
    }

        .slideMenuArea .desktop .infoList li.clock, .slideMenuArea .desktop .infoList li.custom {
            font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
        }

        .slideMenuArea .desktop .infoList li a, .slideMenuArea .desktop .infoList li span {
            position: relative;
            color: #fff;
            margin-left: 10px;
            letter-spacing: 1px;
        }

@media (min-width: 1201px) {
    .slideMenuArea .desktop .infoList li a:hover {
        color: #2A455C;
    }
}

.slideMenuArea .desktop .infoList img {
    display: inline-block;
    width: 17px;
    margin-right: 11px;
}

.slideMenuArea .desktop .menuCartBox {
    margin-top: 40px;
}

@media (min-width: 1201px) {
    .slideMenuArea .desktop .menuCartBox:hover a {
        background: #2b455c;
    }

    .slideMenuArea .desktop .menuCartBox:hover .num {
        border: 1px solid #fff;
    }
}

.slideMenuArea .desktop .menuCartBox a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 265px;
    padding: 18px 0;
    border-radius: 5px;
    border: 2px solid rgba(255, 255, 255, 0.5);
    transition: all 0.2s ease-in-out;
}

.slideMenuArea .desktop .menuCartBox span, .slideMenuArea .desktop .menuCartBox img {
    display: block;
}

.slideMenuArea .desktop .menuCartBox img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.slideMenuArea .desktop .menuCartBox .text {
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    color: #fff;
    letter-spacing: 1px;
    margin: 0 14px;
}

.slideMenuArea .desktop .menuCartBox .num {
    position: relative;
    font-size: 13px;
    font-family: "Oswald", sans-serif;
    font-weight: 500;
    color: #fff;
    text-align: center;
    padding-top: 5px;
    width: 30px;
    height: 30px;
    background: #2b455c;
    border-radius: 50%;
    line-height: 1.5;
    border: 1px solid transparent;
    transition: all 0.2s ease-in-out;
}

.slideMenuArea .desktop .loginBox {
    margin-top: 15px;
}

@media (min-width: 1201px) {
    .slideMenuArea .desktop .loginBox:hover a {
        background: #2b455c;
    }

    .slideMenuArea .desktop .loginBox:hover .num {
        border: 1px solid #fff;
    }
}

.slideMenuArea .desktop .loginBox a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 265px;
    padding: 18px 0;
    border-radius: 5px;
    border: 2px solid rgba(255, 255, 255, 0.5);
    transition: all 0.2s ease-in-out;
}

.slideMenuArea .desktop .loginBox span, .slideMenuArea .desktop .loginBox img {
    display: block;
}

.slideMenuArea .desktop .loginBox img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

    .slideMenuArea .desktop .loginBox img.arrow {
        padding: 8px;
    }

.slideMenuArea .desktop .loginBox .text {
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    color: #fff;
    letter-spacing: 1.5px;
    margin: 0 18px 0 13px;
}

.slideMenuArea .desktop .loginBox .num {
    position: relative;
    font-size: 13px;
    font-family: "Oswald", sans-serif;
    font-weight: 500;
    color: #fff;
    text-align: center;
    padding-top: 5px;
    width: 30px;
    height: 30px;
    background: #2b455c;
    border-radius: 50%;
    line-height: 1.5;
    border: 1px solid transparent;
    transition: all 0.2s ease-in-out;
}

.slideMenuArea .desktop .bottomBox {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    margin: 45px 0 10px;
}

@media (max-width: 1180px) {
    .slideMenuArea .desktop .bottomBox {
        margin-top: 20px;
    }
}

.slideMenuArea .desktop .bottomBox .socialList {
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
}

    .slideMenuArea .desktop .bottomBox .socialList li:nth-child(2) a {
        padding-top: 4px;
    }

    .slideMenuArea .desktop .bottomBox .socialList li:nth-child(3) a {
        padding-top: 1px;
    }

    .slideMenuArea .desktop .bottomBox .socialList a {
        position: relative;
        display: block;
        width: 45px;
        height: 45px;
        background: #fff;
        color: #d69f42;
        font-size: 25px;
        text-align: center;
        padding-top: 2px;
        margin-right: 20px;
        border-radius: 50%;
    }

@media (max-width: 1180px) {
    .slideMenuArea .desktop .bottomBox .socialList a {
        margin-right: 10px;
    }
}

.slideMenuArea .desktop .bottomBox .socialList a::after {
    content: "";
    position: absolute;
    display: block;
    background-image: url(../images/light.png);
    background-position: center;
    background-size: cover;
    width: 140%;
    height: 140%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale(0.6);
    transform: translate(-50%, -50%) scale(0.6);
}

.slideMenuArea .desktop .bottomBox .socialList a svg {
    width: 23px;
    height: 23px;
    fill: #d69f42;
}

@media (min-width: 1201px) {
    .slideMenuArea .desktop .bottomBox .socialList a:hover::after {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
    }
}

.slideMenuArea .desktop .bottomBox .languageBox {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 10px;
}

    .slideMenuArea .desktop .bottomBox .languageBox .earth img {
        display: block;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

@media (max-width: 1440px) {
    .slideMenuArea .desktop .bottomBox .languageBox .earth img {
        width: 17px;
    }
}

.slideMenuArea .desktop .bottomBox .languageBox .languageCurrent {
    position: relative;
    padding: 0 10px 0 8px;
    font-size: 17px;
    color: #fff;
    font-family: "Oswald", sans-serif, "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    font-weight: 500;
    cursor: pointer;
}

    .slideMenuArea .desktop .bottomBox .languageBox .languageCurrent::before {
        content: "";
        width: 7px;
        height: 7px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        position: absolute;
        top: 50%;
        right: 0;
        z-index: 1;
        -webkit-transform: translate(100%, -50%) rotate(45deg);
        transform: translate(100%, -50%) rotate(45deg);
    }

.slideMenuArea .desktop .bottomBox .languageBox .languageList {
    width: 100%;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
}

    .slideMenuArea .desktop .bottomBox .languageBox .languageList.show {
        opacity: 1;
        pointer-events: auto;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    .slideMenuArea .desktop .bottomBox .languageBox .languageList li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.1);
    }

    .slideMenuArea .desktop .bottomBox .languageBox .languageList li a {
        display: block;
        font-size: 17px;
        font-family: "Oswald", sans-serif, "Noto Sans TC", "Microsoft JhengHei", sans-serif;
        line-height: 1;
        letter-spacing: 0.5px;
        padding: 10px 10px;
        text-align: center;
    }

        .slideMenuArea .desktop .bottomBox .languageBox .languageList li a:hover, .slideMenuArea .desktop .bottomBox .languageBox .languageList li a.current {
            background-color: #2b455c;
            color: #fff;
        }

.slideMenuArea .desktop .nav > li {
    padding-bottom: 55px;
}

.slideMenuArea .desktop .nav .mainLink {
    display: block;
    font-size: 35px;
    font-weight: 500;
    color: #fff;
    line-height: 1;
    letter-spacing: 1.5px;
    padding-bottom: 27px;
    border-bottom: 1px solid #fae2b9;
}

.slideMenuArea .desktop .nav .submenu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: 2px solid #fae2b9;
}

    .slideMenuArea .desktop .nav .submenu a {
        display: block;
        font-size: 20px;
        color: #fff4e1;
        padding: 15px 0;
        margin-right: 50px;
    }

        .slideMenuArea .desktop .nav .submenu a::after {
            content: url(../images/deco/arrow.png);
            display: inline-block;
            padding: 5px 0;
            margin-left: 15px;
            transition: all 0.5s ease-in-out;
        }

@media (min-width: 1201px) {
    .slideMenuArea .desktop .nav .submenu a:hover {
        color: #fff;
    }
}

.slideMenuArea .moduleClose {
    position: absolute;
    right: -220px;
    top: 50%;
    z-index: 1;
    width: 120px;
    height: 120px;
    background: none;
    background: url(../images/close.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-color: #fff;
    border: 10px solid #fff;
    border-radius: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
}

@media (max-width: 1860px) {
    .slideMenuArea .moduleClose {
        right: -135px;
    }
}

@media (max-width: 1280px) {
    .slideMenuArea .moduleClose {
        right: -130px;
    }
}

@media (max-width: 1180px) {
    .slideMenuArea .moduleClose {
        display: none;
    }
}

.slideMenuArea .moduleClose::before, .slideMenuArea .moduleClose::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -15px;
    margin-top: -0.5px;
    width: 30px;
    height: 1px;
    background-color: #2b455c;
}

.slideMenuArea .moduleClose::before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.slideMenuArea .moduleClose::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.slideMenuArea .moduleClose:hover {
    background: url(../images/close_white.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-color: #2b455c;
    border: 10px solid #2b455c;
    -webkit-transform: translateY(-50%) rotate(45deg) scale(1.5);
    transform: translateY(-50%) rotate(45deg) scale(1.5);
}

@media (max-width: 1280px) {
    .slideMenuArea .moduleClose:hover {
        -webkit-transform: translateY(-50%) rotate(45deg);
        transform: translateY(-50%) rotate(45deg);
    }
}

.slideMenuArea .moduleClose:hover::before {
    -webkit-transform: rotate(-20deg);
    transform: rotate(-20deg);
    background: #fff;
}

.slideMenuArea .moduleClose:hover::after {
    -webkit-transform: rotate(-70deg);
    transform: rotate(-70deg);
    background: #fff;
}

.slideMenuMask {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 98;
    background-color: rgba(0, 0, 0, 0.7);
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s;
}

    .slideMenuMask.show {
        opacity: 1;
        pointer-events: auto;
    }

/*手機menu*/
.m_menu {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 50;
    display: block;
    width: 100%;
    box-shadow: 0 2px 5px rgba(126, 126, 126, 0.68);
    /*手機menu內容*/
}

@media (min-width: 1181px) {
    .m_menu {
        display: none;
    }
}

.m_menu .mask {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    display: none;
    background-color: rgba(0, 0, 0, 0.6);
    width: 100%;
    height: 100%;
    padding-bottom: 60px;
}

.m_menu .m_logo {
    float: left;
    margin-left: 70px;
}

    .m_menu .m_logo img {
        display: block;
        width: 150px;
        padding-top: 8px;
    }

.m_menu .controlBox {
    position: relative;
    z-index: 99;
    height: 60px;
    background-color: #fff;
}

    .m_menu .controlBox a.main {
        position: absolute;
        left: 0;
        top: 0;
        width: 60px;
        height: 60px;
    }

        .m_menu .controlBox a.main span {
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
            margin-top: -0.5px;
            width: 26px;
            height: 1px;
            background-color: #111;
            transition: all 0.5s;
        }

            .m_menu .controlBox a.main span:before, .m_menu .controlBox a.main span:after {
                content: "";
                position: absolute;
                left: 0;
                width: 100%;
                height: 1px;
                background-color: #111;
                transition: all 0.5s;
            }

            .m_menu .controlBox a.main span:before {
                top: -7px;
            }

            .m_menu .controlBox a.main span:after {
                bottom: -7px;
            }

        .m_menu .controlBox a.main.show span {
            background-color: transparent;
        }

            .m_menu .controlBox a.main.show span:before {
                top: 0;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
            }

            .m_menu .controlBox a.main.show span:after {
                bottom: 0;
                -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
            }

    .m_menu .controlBox .btn_cart {
        display: inline-block;
        vertical-align: middle;
    }

    .m_menu .controlBox .right {
        float: right;
        line-height: 60px;
        margin-right: 10px;
    }

        .m_menu .controlBox .right a {
            position: relative;
            display: inline-block;
            vertical-align: middle;
            margin-left: 8px;
            font-size: 13px;
            color: #fff;
        }

            .m_menu .controlBox .right a em {
                display: none;
            }

        .m_menu .controlBox .right i {
            display: inline-block;
            vertical-align: middle;
            width: 30px;
            height: 30px;
            line-height: 30px;
            font-size: 20px;
            color: #fff;
            text-align: center;
            border-radius: 100%;
            background: #799A1B;
        }

        .m_menu .controlBox .right b {
            position: absolute;
            top: 6px;
            right: -5px;
            display: block;
            border-radius: 5px;
            line-height: normal;
            padding: 3px 5px;
            font-size: 13px;
            color: #fff;
            background-color: #C40000;
        }

    .m_menu .controlBox .language:hover .submenu {
        display: block;
    }

.m_menu .hideBox {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 11;
    display: none;
    width: 100%;
    padding: 60px 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#650e13+0,b2181b+100 */
    background: rgb(101, 14, 19);
    /* Old browsers */
    /* FF3.6+ */
    /* Chrome,Safari4+ */
    /* Chrome10+,Safari5.1+ */
    /* Opera 11.10+ */
    /* IE10+ */
    background: linear-gradient(to bottom, rgb(101, 14, 19) 0%, rgb(178, 24, 27) 100%);
    /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#650e13", endColorstr="#b2181b", GradientType=0);
    /* IE6-9 */
}

    .m_menu .hideBox .sp {
        display: none;
        padding: 10px;
        font-size: 13px;
        color: #fff;
        background-color: #c80303;
    }

.m_menu .searchBox_m {
    padding: 20px 0;
    text-align: center;
}

    .m_menu .searchBox_m input[type=text] {
        display: inline-block;
        vertical-align: middle;
        width: 200px;
        height: 30px;
        border: 1px solid #ccc;
    }

    .m_menu .searchBox_m a {
        display: inline-block;
        vertical-align: middle;
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 15px;
        text-align: center;
        color: #fff;
        background-color: #9cc720;
    }

.m_menu .m_trans {
    text-align: center;
    padding-top: 30px;
}

    .m_menu .m_trans > a {
        display: inline-block;
        padding: 8px 15px;
        border: 1px solid #fff;
        color: #fff;
    }

        .m_menu .m_trans > a i {
            margin-left: 5px;
        }

.m_menu .loginBox {
    padding: 30px 0;
    text-align: center;
}

    .m_menu .loginBox a {
        display: inline-block;
        margin: 0 3px;
        font-size: 15px;
        color: #fff;
    }

        .m_menu .loginBox a i {
            margin-right: 3px;
        }

    .m_menu .loginBox .submenu {
        margin-top: 10px;
        color: #ccc;
    }

        .m_menu .loginBox .submenu span {
            margin: 0 5px;
        }

.m_menu .mfun {
    padding: 30px 0;
    text-align: center;
}

    .m_menu .mfun a {
        display: inline-block;
        margin: 0 1px;
        width: 35px;
        height: 35px;
        line-height: 35px;
        border-radius: 50%;
        font-size: 20px;
        color: #fff;
        text-align: center;
        background-color: #b21d26;
    }

.m_menu .nav li {
    border-top: 1px solid #af6568;
}

.m_menu .nav a {
    position: relative;
    display: block;
    padding: 20px 10px;
    font-size: 15px;
    color: #fff;
    text-align: center;
}

    .m_menu .nav a:hover {
        background-color: #d12127;
    }

    .m_menu .nav a i {
        position: absolute;
        right: 10px;
        top: 50%;
        display: block;
        margin-top: -7px;
    }

.m_menu .nav .dropDown > a::after {
    content: "\f107";
    position: absolute;
    right: 10px;
    top: 20px;
    font-family: FontAwesome;
}

.m_menu .nav .submenu {
    display: none;
}

    .m_menu .nav .submenu a {
        padding: 10px 20px;
    }

        .m_menu .nav .submenu a:hover {
            background-color: #999;
        }

/*banner*/
.bannerArea {
    clear: both;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

    .bannerArea .wrap {
        max-width: 100%;
        padding: 0;
    }

    .bannerArea .bannerItem {
        position: relative;
    }

        .bannerArea .bannerItem .Txt {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: column;
            flex-direction: column;
            -ms-flex-pack: center;
            justify-content: center;
            padding: 0 20px;
            z-index: 2;
            width: 100%;
            height: 100%;
            margin: auto;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
        }

        .bannerArea .bannerItem .Img {
            position: relative;
            z-index: 1;
        }

            .bannerArea .bannerItem .Img img {
                width: 100%;
                display: block;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
            }

@media (max-width: 768px) {
    .bannerArea .bannerItem .Img img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        margin: auto;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }
}

.bannerArea .bannerLink {
    display: block;
    z-index: 3;
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

/*文字跑馬燈*/
.marqueeArea {
    padding: 15px 0;
    background-color: rgb(6, 21, 64);
}

    .marqueeArea h2 {
        float: left;
        margin-right: 20px;
        font-weight: 400;
        font-size: 15px;
        color: #fff;
    }

@media (max-width: 640px) {
    .marqueeArea h2 {
        display: none;
    }
}

.marqueeArea h2 em {
    margin-left: 5px;
}

.marqueeArea .marqueeBox {
    max-height: 30px;
    overflow: hidden;
}

    .marqueeArea .marqueeBox .marqueeTxtList {
        overflow: hidden;
    }

    .marqueeArea .marqueeBox .marqueeTxtItem {
        line-height: 20px;
    }

        .marqueeArea .marqueeBox .marqueeTxtItem .item {
            display: -ms-flexbox;
            display: flex;
        }

        .marqueeArea .marqueeBox .marqueeTxtItem .date {
            display: inline-block;
            vertical-align: top;
            margin-right: 10px;
            font-size: 13px;
            color: #dbdbdb;
        }

@media (max-width: 640px) {
    .marqueeArea .marqueeBox .marqueeTxtItem .date {
        display: none;
    }
}

.marqueeArea .marqueeBox .marqueeTxtItem .title {
    color: #fff;
    font-size: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

    .marqueeArea .marqueeBox .marqueeTxtItem .title a {
        color: #fff;
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

@media (min-width: 1201px) {
    .marqueeArea .marqueeBox .marqueeTxtItem .title a:hover {
        color: #2b455c;
    }
}

/*footer*/
footer {
    background-color: #d69f42;
    padding: 80px 0 35px;
}

@media (max-width: 768px) {
    footer {
        padding: 55px 0 35px;
    }
}

footer .wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

footer .left {
    width: 380px;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

@media (max-width: 1180px) {
    footer .left {
        max-width: 380px;
        width: initial;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}

@media (max-width: 768px) {
    footer .left {
        max-width: 100%;
        border-right: transparent;
    }
}

footer .right {
    display: -ms-flexbox;
    display: flex;
    width: calc(100% - 380px);
    padding-left: 90px;
}

@media (max-width: 1180px) {
    footer .right {
        padding-left: 45px;
    }

        footer .right .languageBox {
            display: none;
        }
}

@media (max-width: 768px) {
    footer .right {
        width: 100%;
        padding-left: 0;
        padding-top: 20px;
    }
}

footer .bottom {
    width: 100%;
    margin-top: 50px;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
}

@media (max-width: 768px) {
    footer .bottom {
        border-top: transparent;
        margin-top: 0;
    }
}

footer .contactInfo {
    position: relative;
}

    footer .contactInfo .languageBox {
        display: none;
    }

@media (max-width: 1180px) {
    footer .contactInfo .languageBox {
        position: absolute;
        top: 2px;
        right: 15px;
        display: -ms-flexbox;
        display: flex;
    }
}

@media (max-width: 768px) {
    footer .contactInfo .languageBox {
        right: 0;
    }
}

footer .footerTitle {
    font-size: 18px;
    color: #fff;
    padding-bottom: 20px;
}

@media (max-width: 768px) {
    footer .footerTitleRight {
        border-bottom: 1px solid #f3b751;
    }
}

footer .infoList {
    margin: 2px -10px;
    margin-right: 0;
}

    footer .infoList li {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 0;
        padding: 5px 10px;
        color: #fff;
        font-size: 16px;
    }

        footer .infoList li a, footer .infoList li span {
            position: relative;
            color: #fff;
            margin-left: 10px;
            letter-spacing: 1px;
        }

@media (min-width: 1201px) {
    footer .infoList li a:hover {
        color: #2A455C;
    }
}

footer .infoList img {
    display: inline-block;
    width: 17px;
    margin-right: 5px;
}

footer .socialBox {
    width: 100%;
    -ms-flex-align: center;
    align-items: center;
    margin: 45px 0 10px;
}

@media (max-width: 1180px) {
    footer .socialBox {
        margin-top: 20px;
    }
}

footer .socialBox .socialList {
    display: -ms-flexbox;
    display: flex;
}

footer .socialBox li:nth-child(2) a {
    padding-top: 4px;
}

footer .socialBox li:nth-child(3) a {
    padding-top: 1px;
}

footer .socialBox a {
    position: relative;
    display: block;
    width: 45px;
    height: 45px;
    background: #fff;
    color: #d69f42;
    font-size: 25px;
    text-align: center;
    padding-top: 2px;
    margin-right: 20px;
    border-radius: 50%;
}

@media (max-width: 1180px) {
    footer .socialBox a {
        margin-right: 10px;
    }
}

footer .socialBox a::after {
    content: "";
    position: absolute;
    display: block;
    background-image: url(../images/light.png);
    background-position: center;
    background-size: cover;
    width: 140%;
    height: 140%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale(0.6);
    transform: translate(-50%, -50%) scale(0.6);
}

footer .socialBox a svg {
    width: 23px;
    height: 23px;
    fill: #d69f42;
}

@media (min-width: 1201px) {
    footer .socialBox a:hover::after {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
    }
}

footer .menuBox {
    width: calc(100% - 80px);
}

@media (max-width: 1180px) {
    footer .menuBox {
        width: 100%;
    }
}

footer .menuList {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 620px;
}

@media (max-width: 1180px) {
    footer .menuList {
        max-width: initial;
    }
}

footer .menuList .menutitle {
    font-weight: 500;
    font-size: 18px;
    color: #fff;
    line-height: 1;
    width: 100%;
    display: block;
}

footer .menuList .dropdown {
    margin-top: 20px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    min-width: 170px;
}

footer .menuList .secmenu {
    margin-top: 20px;
}

    footer .menuList .secmenu > li {
        margin-bottom: 10px;
    }

    footer .menuList .secmenu,
    footer .menuList .secmenu a {
        color: #fff;
        font-size: 17px;
    }

@media (min-width: 1201px) {
    footer .menuList a:hover {
        color: #2A455C;
    }
}

@media (max-width: 768px) {
    footer .menuList .dropdown {
        width: 100%;
        margin-top: 0;
        border-bottom: 1px solid #f3b751;
    }

        footer .menuList .dropdown span {
            position: relative;
        }

            footer .menuList .dropdown span > a {
                padding: 20px 0;
            }

                footer .menuList .dropdown span > a::before, footer .menuList .dropdown span > a::after {
                    content: "";
                    width: 15px;
                    height: 2px;
                    background-color: #fff;
                    position: absolute;
                    top: 50%;
                    right: 5px;
                    -webkit-transform: translate(-50%, 0);
                    transform: translate(-50%, 0);
                    z-index: 1;
                    transition: all 0.5s;
                }

                footer .menuList .dropdown span > a::after {
                    -webkit-transform: translate(-50%, 0) rotate(90deg);
                    transform: translate(-50%, 0) rotate(90deg);
                }

                footer .menuList .dropdown span > a.current::before, footer .menuList .dropdown span > a.current::after {
                    background-color: #fff;
                }

        footer .menuList .dropdown .secmenu {
            margin-top: 0px;
        }

        footer .menuList .dropdown.open > span > a::after {
            -webkit-transform: translate(-50%, 0) rotate(0);
            transform: translate(-50%, 0) rotate(0);
        }

        footer .menuList .dropdown.open .secmenu {
            display: block;
            -webkit-animation: textSlideDownAnimation 0.3s 0.15s ease-in-out both;
            animation: textSlideDownAnimation 0.3s 0.15s ease-in-out both;
        }

    footer .menuList .secmenu {
        display: none;
    }
}

footer .languageBox {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    width: 80px;
    height: 21px;
}

    footer .languageBox .earth img {
        display: block;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

@media (min-width: 1201px) {
    footer .languageBox:hover .earth img {
        -webkit-filter: none;
        filter: none;
    }

    footer .languageBox:hover .languageCurrent {
        color: #2A455C;
    }

        footer .languageBox:hover .languageCurrent::before {
            border-right: 2px solid #2A455C;
            border-bottom: 2px solid #2A455C;
        }
}

footer .languageBox .languageCurrent {
    position: relative;
    padding: 0 10px 0 8px;
    font-size: 17px;
    color: #fff;
    font-family: "Oswald", sans-serif, "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    font-weight: 500;
    cursor: pointer;
}

    footer .languageBox .languageCurrent::before {
        content: "";
        width: 7px;
        height: 7px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        position: absolute;
        top: 50%;
        right: 0;
        z-index: 1;
        -webkit-transform: translate(100%, -50%) rotate(45deg);
        transform: translate(100%, -50%) rotate(45deg);
    }

footer .languageBox .languageList {
    width: 100%;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
}

    footer .languageBox .languageList.show {
        opacity: 1;
        pointer-events: auto;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    footer .languageBox .languageList li:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, 0.1);
    }

    footer .languageBox .languageList li a {
        display: block;
        font-size: 17px;
        font-family: "Oswald", sans-serif, "Noto Sans TC", "Microsoft JhengHei", sans-serif;
        line-height: 1;
        letter-spacing: 0.5px;
        padding: 10px 10px;
        text-align: center;
    }

        footer .languageBox .languageList li a:hover, footer .languageBox .languageList li a.current {
            background-color: #2b455c;
            color: #fff;
        }

footer .copyrightBox {
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 35px -5px 0;
    position: relative;
}

    footer .copyrightBox .copyright {
        letter-spacing: 1px;
        font-size: 16px;
        padding: 5px;
        margin-right: auto;
    }

    footer .copyrightBox .ibestLink {
        padding: 5px;
    }

        footer .copyrightBox .ibestLink a {
            color: #fff;
            font-size: 16px;
        }

@media (min-width: 1201px) {
    footer .copyrightBox .ibestLink a:hover {
        color: #2b455c;
    }
}

@media (max-width: 1024px) {
    footer .copyrightBox {
        -ms-flex-order: 2;
        order: 2;
        margin-bottom: 10px;
    }
}

.privacyArea {
    width: 100%;
    max-width: 760px;
    background-color: rgba(0, 0, 0, 0.8);
    box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.1);
    padding: 30px 0;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 50;
}

    .privacyArea.check {
        opacity: 0;
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }

    .privacyArea .wrap {
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .privacyArea .text {
        width: 100%;
        color: #fff;
        font-size: 14px;
        line-height: 1.5;
        letter-spacing: 0.5px;
        text-align: center;
    }

        .privacyArea .text a {
            color: #2b455c;
            display: inline-block;
            margin-top: 8px;
            text-decoration: underline;
        }

            .privacyArea .text a:hover {
                color: #2b455c;
            }

    .privacyArea .btnBox {
        width: 100%;
        max-width: 360px;
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 25px;
    }

@media (max-width: 480px) {
    .privacyArea .btnBox {
        max-width: 100%;
    }
}

.translateIbest {
    display: inline-block;
    vertical-align: middle;
}

    .translateIbest .design {
        /*網頁設計‧愛貝斯*/
        display: block;
        line-height: 22px;
        font-size: 9pt;
        color: #000;
    }

        .translateIbest .design a {
            /*網頁設計‧愛貝斯*/
            color: #000;
            text-decoration: none;
        }

            .translateIbest .design a:hover {
                text-decoration: underline;
            }

/*手機快捷選單*/
.fixedQuickLink {
    width: 100%;
    background-color: #23384b;
    padding-bottom: env(safe-area-inset-bottom);
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 10;
}

@media (min-width: 1181px) {
    .fixedQuickLink {
        display: none;
    }
}

.fixedQuickLink ul {
    display: -ms-flexbox;
    display: flex;
}

.fixedQuickLink li {
    -ms-flex: 1;
    flex: 1;
}

    .fixedQuickLink li:not(:last-child) {
        border-right: 1px solid rgba(255, 255, 255, 0.1);
    }

.fixedQuickLink a, .fixedQuickLink button {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 55px;
    font-size: 13px;
    color: #fff;
}

.fixedQuickLink i {
    margin-bottom: 5px;
}

/*後台預覽模式*/
.adminPreviewArea {
    max-width: 320px;
    border: 4px solid #ffe2e2;
    border-radius: 5px;
    background: #fdc9c9;
    color: #000;
    padding: 20px;
    position: fixed;
    top: 15px;
    right: 0;
    z-index: 99999;
}

    .adminPreviewArea button {
        text-decoration: underline;
    }

/*後台登入模式*/
.adminLoginArea {
    width: 100%;
    background-color: rgba(180, 0, 0, 0.85);
    color: #fff;
    font-size: 15px;
    line-height: 1;
    letter-spacing: 0.5px;
    padding-bottom: env(safe-area-inset-bottom);
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 99999;
    text-align: center;
}

    .adminLoginArea p {
        padding: 20px 15px;
    }

/*booking*/
.bookingArea {
    margin-top: -85px;
    position: relative;
    z-index: 2;
}

@media (max-width: 960px) {
    .bookingArea {
        margin-top: 0;
    }
}

.bookingArea .wrap {
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    background-color: #fff;
}

@media (max-width: 960px) {
    .bookingArea .wrap {
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 15px 20px;
    }
}

.bookingArea .title {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex: 3;
    flex: 3;
    font-size: 15px;
    border-right: 1px solid #e6e6e6;
}

@media (max-width: 960px) {
    .bookingArea .title {
        display: none;
    }
}

.bookingArea .title i {
    margin-right: 15px;
    font-size: 20px;
}

.bookingArea .bookingList {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 6;
    flex: 6;
    padding: 20px;
}

@media (max-width: 960px) {
    .bookingArea .bookingList {
        -ms-flex: 1;
        flex: 1;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0;
    }
}

@media (max-width: 960px) {
    .bookingArea .bookingList li {
        margin-bottom: 15px;
    }
}

.bookingArea .bookingList li:not(:first-child) {
    margin-left: 10px;
}

@media (max-width: 960px) {
    .bookingArea .bookingList li:not(:first-child) {
        margin-left: 0;
    }
}

.bookingArea .btn {
    -ms-flex: 3;
    flex: 3;
}

    .bookingArea .btn button {
        width: 100%;
        height: 100%;
        background-color: #2b455c;
        color: #fff;
        font-size: 16px;
        letter-spacing: 0.2rem;
    }

@media (min-width: 1201px) {
    .bookingArea .btn button:hover {
        background-color: #000;
    }
}

@media (max-width: 960px) {
    .bookingArea .btn {
        -ms-flex: 1;
        flex: 1;
    }

        .bookingArea .btn button {
            padding: 12px;
        }
}

.bookingArea input,
.bookingArea select {
    height: 45px;
    padding: 5px 10px;
    border: 1px solid #e6e6e6;
    font-size: 16px;
    font-family: "微軟正黑體";
}

@media (max-width: 960px) {
    .bookingArea input,
    .bookingArea select {
        width: 100%;
    }
}

/*********內頁**********/
.mainArea {
    padding-bottom: 30px;
}

@media (max-width: 768px) {
    .mainArea {
        padding-top: 30px;
    }
}

.mainArea .contentBox {
    clear: both;
}

.titleBox {
    position: relative;
    margin-bottom: 30px;
    text-align: center;
}

    .titleBox .titleTw {
        font-weight: 700;
        font-size: 70px;
        color: #2b455c;
    }

@media (max-width: 860px) {
    .titleBox .titleTw {
        font-size: 50px;
    }
}

@media (max-width: 390px) {
    .titleBox .titleTw {
        font-size: 35px;
    }
}

.titleBox .titleEn {
    font-weight: 300;
    font-size: 38px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

@media (max-width: 390px) {
    .titleBox .titleEn {
        font-size: 28px;
    }
}

/*bread*/
.bread {
    border-bottom: 1px solid #e5e5e5;
    background-color: #fff;
    margin-bottom: 50px;
    padding: 20px 0;
}

    .bread .wrap {
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center;
    }

        .bread .wrap a, .bread .wrap span {
            display: inline-block;
            font-size: 14px;
            line-height: 1;
            letter-spacing: 0.5px;
        }

        .bread .wrap a {
            color: #a9a9a9;
        }

            .bread .wrap a:hover {
                color: #2b455c;
            }

        .bread .wrap span {
            color: #666;
        }

            .bread .wrap a + a,
            .bread .wrap span + span,
            .bread .wrap span + a,
            .bread .wrap a + span {
                position: relative;
            }

    .bread.arrow .wrap a + a,
    .bread.arrow .wrap span + span,
    .bread.arrow .wrap span + a,
    .bread.arrow .wrap a + span {
        padding-left: 25px;
    }

        .bread.arrow .wrap a + a::before,
        .bread.arrow .wrap span + span::before,
        .bread.arrow .wrap span + a::before,
        .bread.arrow .wrap a + span::before {
            content: "";
            width: 7px;
            height: 7px;
            border-right: 1px solid #a9a9a9;
            border-bottom: 1px solid #a9a9a9;
            position: absolute;
            top: 50%;
            left: 7px;
            z-index: 1;
            -webkit-transform: translateY(-50%) rotate(-45deg);
            transform: translateY(-50%) rotate(-45deg);
        }

    .bread.verticalLine .wrap a + a,
    .bread.verticalLine .wrap span + span,
    .bread.verticalLine .wrap span + a,
    .bread.verticalLine .wrap a + span {
        padding-left: 20px;
    }

        .bread.verticalLine .wrap a + a::before,
        .bread.verticalLine .wrap span + span::before,
        .bread.verticalLine .wrap span + a::before,
        .bread.verticalLine .wrap a + span::before {
            content: "";
            width: 1px;
            height: 80%;
            background-color: #a9a9a9;
            position: absolute;
            top: 10%;
            left: 10px;
            z-index: 1;
        }

    .bread.horizontalLine .wrap a + a,
    .bread.horizontalLine .wrap span + span,
    .bread.horizontalLine .wrap span + a,
    .bread.horizontalLine .wrap a + span {
        padding-left: 25px;
    }

        .bread.horizontalLine .wrap a + a::before,
        .bread.horizontalLine .wrap span + span::before,
        .bread.horizontalLine .wrap span + a::before,
        .bread.horizontalLine .wrap a + span::before {
            content: "";
            width: 8px;
            height: 1px;
            background-color: #a9a9a9;
            position: absolute;
            top: 50%;
            left: 8px;
            z-index: 1;
        }

@media (max-width: 768px) {
    .bread {
        display: none;
    }
}

/*文章標題*/
.articleTitle {
    position: relative;
    color: #232323;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
    padding: 12px 0;
    letter-spacing: 1.5px;
}

    .articleTitle::after {
        position: absolute;
        content: "";
        display: inline-block;
        width: 100%;
        height: 100%;
        bottom: 0px;
        left: 0;
        background: url(../images/about/line.png);
        background-repeat: repeat-x;
        background-position: 0 100%;
    }

@media (max-width: 480px) {
    .articleTitle {
        font-size: 18px;
    }
}

/*側邊標題字*/
.sectionTitle {
    position: relative;
    color: #232323;
    font-size: 22px;
    font-weight: 500;
    padding: 15px 0 25px;
}

    .sectionTitle strong {
        display: block;
        position: relative;
        font-weight: 400;
    }

    .sectionTitle a {
        display: block;
        width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

table.breakpoint > tbody > tr > td.expand {
    background: url("../images/plus.png") no-repeat 5px center;
    cursor: pointer;
    padding-left: 40px;
}

@-webkit-keyframes aniSlideLeft {
    0% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
        opacity: 0;
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes aniSlideLeft {
    0% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
        opacity: 0;
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}
/*類別*/
.classBox {
    position: relative;
    z-index: 4;
}

    .classBox .classCurrent {
        background-color: #2b455c;
        color: #fff;
        cursor: pointer;
        font-size: 16px;
        letter-spacing: 1px;
        padding: 10px 30px 10px 10px;
        position: relative;
    }

        .classBox .classCurrent::before {
            content: "\f107";
            color: #fff;
            font-size: 15px;
            font-family: FontAwesome;
            line-height: 1;
            margin-top: -6px;
            position: absolute;
            right: 15px;
            top: 50%;
            z-index: 1;
        }

@media (min-width: 1024px) {
    .classBox .classCurrent {
        display: none;
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
    }
}

.classBox a, .classBox span {
    cursor: pointer;
}

.classBoxRow {
    margin-top: 40px;
    margin-bottom: 50px;
}

@media (min-width: 1024px) {
    .classBoxRow .classLink {
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        display: -ms-flexbox;
        display: flex;
    }

        .classBoxRow .classLink li {
            margin-bottom: 10px;
            margin-right: 35px;
        }

        .classBoxRow .classLink a, .classBoxRow .classLink span {
            background-color: #d69f42;
            border-radius: 5px;
            color: #fff;
            display: block;
            font-weight: 700;
            font-size: 23px;
            padding: 15px 30px;
            min-width: 260px;
            letter-spacing: 0.02rem;
            text-align: center;
        }

            .classBoxRow .classLink a.current, .classBoxRow .classLink a:hover, .classBoxRow .classLink span.current, .classBoxRow .classLink span:hover {
                background-color: #2b455c;
                color: #fff;
            }
}

.classBoxColumn {
    margin-bottom: 30px;
}

@media (min-width: 1024px) {
    .classBoxColumn {
        background: #fff;
        padding: 25px 15px;
        border-radius: 5px;
    }
}

.classBoxColumn .classLink .linkHasItems::before, .classBoxColumn .classLink .linkHasItems::after {
    content: "";
    width: 13px;
    height: 1px;
    background-color: #2f2f2f;
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    z-index: 1;
    transition: all 0.5s;
}

.classBoxColumn .classLink .linkHasItems::before {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.classBoxColumn .classLink .linkHasItems::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}

.classBoxColumn .classLink .linkHasItems.open {
    background-color: #2b455c;
    color: #fff;
}

    .classBoxColumn .classLink .linkHasItems.open::before, .classBoxColumn .classLink .linkHasItems.open::after {
        background-color: #2f2f2f;
    }

    .classBoxColumn .classLink .linkHasItems.open::after {
        -webkit-transform: translateY(-50%) rotate(0);
        transform: translateY(-50%) rotate(0);
    }

    .classBoxColumn .classLink .linkHasItems.open + ul {
        display: block;
    }

        .classBoxColumn .classLink .linkHasItems.open + ul > li {
            -webkit-animation: aniSlideLeft 0.5s 0.3s ease-out both;
            animation: aniSlideLeft 0.5s 0.3s ease-out both;
        }

            .classBoxColumn .classLink .linkHasItems.open + ul > li a, .classBoxColumn .classLink .linkHasItems.open + ul > li span {
                background-color: #f1f1f1;
                color: #2f2f2f;
            }

                .classBoxColumn .classLink .linkHasItems.open + ul > li a.current, .classBoxColumn .classLink .linkHasItems.open + ul > li a:hover, .classBoxColumn .classLink .linkHasItems.open + ul > li span.current, .classBoxColumn .classLink .linkHasItems.open + ul > li span:hover {
                    background-color: #e8e8e8;
                    color: #2b455c;
                }

                    .classBoxColumn .classLink .linkHasItems.open + ul > li a.current::before, .classBoxColumn .classLink .linkHasItems.open + ul > li a.current::after, .classBoxColumn .classLink .linkHasItems.open + ul > li a:hover::before, .classBoxColumn .classLink .linkHasItems.open + ul > li a:hover::after, .classBoxColumn .classLink .linkHasItems.open + ul > li span.current::before, .classBoxColumn .classLink .linkHasItems.open + ul > li span.current::after, .classBoxColumn .classLink .linkHasItems.open + ul > li span:hover::before, .classBoxColumn .classLink .linkHasItems.open + ul > li span:hover::after {
                        background-color: #2b455c;
                    }

@media (min-width: 1024px) {
    .classBoxColumn .classLink > li:not(:first-child) {
        border-top: 1px solid #ccc;
    }

    .classBoxColumn .classLink ul {
        display: none;
    }

        .classBoxColumn .classLink ul li:not(:first-child) {
            border-top: 1px solid #ccc;
        }

    .classBoxColumn .classLink a, .classBoxColumn .classLink span {
        color: #939393;
        display: block;
        line-height: 1.2;
        letter-spacing: 0.2rem;
        padding: 18px 15px;
        font-weight: 700;
        font-size: 22px;
        border-radius: 5px;
        position: relative;
    }
}

@media (min-width: 1024px) and (max-width: 1180px) {
    .classBoxColumn .classLink a, .classBoxColumn .classLink span {
        font-size: 18px;
        padding: 15px 10px;
    }
}

@media (min-width: 1024px) {
    .classBoxColumn .classLink a.current, .classBoxColumn .classLink a:hover, .classBoxColumn .classLink span.current, .classBoxColumn .classLink span:hover {
        padding: 18px 15px;
        background-color: #2b455c;
        color: #fff;
    }

        .classBoxColumn .classLink a.current::before, .classBoxColumn .classLink a.current::after, .classBoxColumn .classLink a:hover::before, .classBoxColumn .classLink a:hover::after, .classBoxColumn .classLink span.current::before, .classBoxColumn .classLink span.current::after, .classBoxColumn .classLink span:hover::before, .classBoxColumn .classLink span:hover::after {
            background-color: #fff;
        }
}

@media (min-width: 1024px) {
    .classBoxDeco .classLink a, .classBoxDeco .classLink span {
        position: relative;
        background-color: transparent;
        min-width: 140px;
        color: #939393;
    }

        .classBoxDeco .classLink a::after, .classBoxDeco .classLink span::after {
            content: url(../images/deco/cookie.png);
            position: absolute;
            display: block;
            left: 0px;
            top: 50%;
            opacity: 0;
            transition: all 0.5s ease-in-out;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
        }

        .classBoxDeco .classLink a.current, .classBoxDeco .classLink a:hover, .classBoxDeco .classLink span.current, .classBoxDeco .classLink span:hover {
            background-color: transparent;
            color: #2b455c;
        }

            .classBoxDeco .classLink a.current::after, .classBoxDeco .classLink a:hover::after, .classBoxDeco .classLink span.current::after, .classBoxDeco .classLink span:hover::after {
                opacity: 1;
                left: 15px;
                -webkit-transform: translateY(-50%) rotate(90deg);
                transform: translateY(-50%) rotate(90deg);
            }
}

@media (max-width: 1023px) {
    .classBoxRow .classLink, .classBoxColumn .classLink {
        width: 100%;
        background-color: #fff;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1;
    }

        .classBoxRow .classLink.open, .classBoxColumn .classLink.open {
            display: block;
        }

        .classBoxRow .classLink > li:not(:first-child), .classBoxColumn .classLink > li:not(:first-child) {
            border-top: 1px solid #ccc;
        }

        .classBoxRow .classLink > li > a.current, .classBoxRow .classLink > li span.current, .classBoxColumn .classLink > li > a.current, .classBoxColumn .classLink > li span.current {
            color: #2b455c;
        }

        .classBoxRow .classLink > li ul, .classBoxColumn .classLink > li ul {
            display: none;
        }

        .classBoxRow .classLink a, .classBoxRow .classLink span, .classBoxColumn .classLink a, .classBoxColumn .classLink span {
            color: #2f2f2f;
            background-color: #fff;
            display: block;
            padding: 14px 15px;
            position: relative;
        }
}

.pageBox .pageList {
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #cecece;
    padding: 40px 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

    .pageBox .pageList a {
        border: 1px solid #b47f27;
        color: #b47f27;
        display: block;
        font-size: 15px;
    }

        .pageBox .pageList a.lastBtn, .pageBox .pageList a.firstBtn {
            border: 1px solid transparent;
        }

        .pageBox .pageList a.prevBtn, .pageBox .pageList a.nextBtn {
            border: 1px solid transparent;
        }

            .pageBox .pageList a.prevBtn::before, .pageBox .pageList a.nextBtn::before {
                content: "";
                width: 10px;
                height: 10px;
                border-left: 1px solid #7e7e7e;
                border-bottom: 1px solid #7e7e7e;
                display: block;
                position: absolute;
            }

            .pageBox .pageList a.prevBtn::after, .pageBox .pageList a.nextBtn::after {
                content: "";
                position: absolute;
                top: 50%;
                -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
                display: block;
                width: 15px;
                height: 1px;
                background: #7e7e7e;
            }

@media (min-width: 461px) {
    .pageBox .pageList a.prevBtn {
        margin-right: 15px;
    }
}

.pageBox .pageList a.prevBtn::before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.pageBox .pageList a.prevBtn::after {
    right: 2px;
}

@media (min-width: 461px) {
    .pageBox .pageList a.nextBtn {
        margin-left: 15px;
    }
}

.pageBox .pageList a.nextBtn::before {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.pageBox .pageList a.nextBtn::after {
    left: 1px;
}

.pageBox .pageList a:hover {
    border: 1px solid #b47f27;
    background-color: #b47f27;
    color: #fff;
}

    .pageBox .pageList a:hover.prevBtn::before, .pageBox .pageList a:hover.nextBtn::before {
        border-left: 1px solid #fff;
        border-bottom: 1px solid #fff;
    }

    .pageBox .pageList a:hover.prevBtn::after, .pageBox .pageList a:hover.nextBtn::after {
        background: #fff;
    }

.pageBox .pageList.number {
    -ms-flex-pack: center;
    justify-content: center;
}

    .pageBox .pageList.number.oval a {
        width: 50px;
    }

    .pageBox .pageList.number li {
        margin: 5px;
    }

    .pageBox .pageList.number a {
        width: 30px;
        height: 30px;
        font-weight: 400;
        line-height: 28px;
        position: relative;
        text-align: center;
    }

        .pageBox .pageList.number a.prevBtn::before, .pageBox .pageList.number a.nextBtn::before {
            margin: auto;
            top: 0;
            bottom: 0;
        }

        .pageBox .pageList.number a.prevBtn::before {
            left: 5px;
            right: 0;
        }

        .pageBox .pageList.number a.nextBtn::before {
            left: 0;
            right: 5px;
        }

        .pageBox .pageList.number a.firstBtn::before, .pageBox .pageList.number a.firstBtn::after, .pageBox .pageList.number a.lastBtn::before, .pageBox .pageList.number a.lastBtn::after {
            content: "";
            width: 10px;
            height: 10px;
            border-left: 1px solid #7e7e7e;
            border-bottom: 1px solid #7e7e7e;
            display: block;
            margin: auto;
            position: absolute;
            top: 0;
            bottom: 0;
        }

        .pageBox .pageList.number a.firstBtn::before, .pageBox .pageList.number a.firstBtn::after {
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
        }

        .pageBox .pageList.number a.firstBtn::before {
            left: -2px;
            right: 0;
        }

        .pageBox .pageList.number a.firstBtn::after {
            left: 12px;
            right: 0;
        }

        .pageBox .pageList.number a.lastBtn::before, .pageBox .pageList.number a.lastBtn::after {
            -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
        }

        .pageBox .pageList.number a.lastBtn::before {
            left: 0;
            right: -2px;
        }

        .pageBox .pageList.number a.lastBtn::after {
            left: 0;
            right: 12px;
        }

        .pageBox .pageList.number a.current {
            border: 1px solid #b47f27;
            background-color: #b47f27;
            color: #fff;
        }

        .pageBox .pageList.number a:hover.firstBtn::before, .pageBox .pageList.number a:hover.firstBtn::after, .pageBox .pageList.number a:hover.lastBtn::before, .pageBox .pageList.number a:hover.lastBtn::after {
            border-left: 1px solid #fff;
            border-bottom: 1px solid #fff;
        }

        .pageBox .pageList.number a:hover.prevBtn::before {
            right: 6px;
        }

        .pageBox .pageList.number a:hover.prevBtn::after {
            right: 5px;
        }

        .pageBox .pageList.number a:hover.nextBtn::before {
            right: -3px;
        }

        .pageBox .pageList.number a:hover.nextBtn::after {
            left: 5px;
        }

.pageBox .pageList.prevnext li.prev {
    margin-right: auto;
}

.pageBox .pageList.prevnext li.next {
    margin-left: auto;
}

.pageBox .pageList.prevnext a {
    width: 180px;
    height: 45px;
    font-weight: 300;
    line-height: 43px;
    padding: 0 20px;
    position: relative;
}

    .pageBox .pageList.prevnext a.prevBtn::before, .pageBox .pageList.prevnext a.nextBtn::before {
        top: calc(50% - 5px);
    }

    .pageBox .pageList.prevnext a.prevBtn {
        text-align: right;
    }

        .pageBox .pageList.prevnext a.prevBtn::before {
            left: 15px;
        }

    .pageBox .pageList.prevnext a.nextBtn {
        margin-left: auto;
        text-align: left;
    }

        .pageBox .pageList.prevnext a.nextBtn::before {
            right: 15px;
        }

@media (max-width: 768px) {
    .pageBox .pageList.prevnext a {
        width: 125px;
        padding: 0 15px;
    }
}

@media (max-width: 640px) {
    .pageBox .pageList.prevnext li {
        width: calc(50% - 15px);
    }

    .pageBox .pageList.prevnext a {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .pageBox .pageList.prevnext li {
        width: calc(50% - 10px);
    }
}

.pageBox .pageList.prevnext.circle a {
    width: 45px;
    padding: 0;
}

    .pageBox .pageList.prevnext.circle a span {
        display: none;
    }

    .pageBox .pageList.prevnext.circle a.prevBtn::before {
        left: calc(50% - 3px);
    }

    .pageBox .pageList.prevnext.circle a.nextBtn::before {
        right: calc(50% - 3px);
    }

.pageBox .pageList.circle a {
    border-radius: 50%;
    overflow: hidden;
}

.pageBox .pageList.oval a {
    border-radius: 30px;
    overflow: hidden;
}

/*標籤*/
.tagBox {
    padding: 20px 0;
}

    .tagBox b {
        display: inline-block;
        margin-right: 10px;
    }

    .tagBox ul {
        display: inline-block;
    }

    .tagBox li {
        display: inline-block;
        margin-bottom: 5px;
    }

    .tagBox a {
        position: relative;
        display: block;
        margin: 0 3px;
        padding: 5px 10px;
        border: 1px solid #2b455c;
        font-size: 13px;
        color: #2b455c;
    }

        .tagBox a:hover {
            color: #fff;
            background-color: #2b455c;
        }

        .tagBox a.current {
            color: #fff;
            background-color: #2b455c;
        }

            .tagBox a.current:before {
                content: "\f00d";
                margin-right: 5px;
                font-family: FontAwesome;
                font-size: 12px;
            }

/*頁籤*/
.tab {
    border-top: 1px solid #d6d6d6;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px;
}

    .tab li {
        -ms-flex: 1;
        flex: 1;
    }

    .tab a {
        color: #333;
        display: block;
        line-height: 1;
        -ms-flex: 1;
        flex: 1;
        font-size: 16px;
        padding: 15px 10px;
        position: relative;
        z-index: 2;
        text-align: center;
    }

@media (max-width: 480px) {
    .tab a {
        font-size: 14px;
    }
}

.tab a.current {
    background-color: #2b455c;
    color: #fff;
}

/*頁籤內容*/
.tabContent {
    margin-top: -1px;
    padding: 20px 5px;
    border-top: 1px solid #d6d6d6;
}

    .tabContent .tabContentItem {
        display: none;
    }

.albumBox {
    width: 50%;
    margin-right: 30px;
}

@media (max-width: 767px) {
    .albumBox {
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
    }
}

.albumBox .albumList:not(.slick-slider) .albumItem:not(:first-child) {
    display: none;
}

.albumBox .albumList .albumItem {
    cursor: pointer;
}

    .albumBox .albumList .albumItem img {
        width: 100%;
        display: block;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

.albumBox .albumListMain .albumItem {
    height: 320px;
}

@media (max-width: 360px) {
    .albumBox .albumListMain .albumItem {
        height: 220px;
    }
}

.albumBox .albumListMain .albumItem img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.albumBox .albumListNav {
    margin: 15px -5px 0;
}

    .albumBox .albumListNav .albumItem {
        padding: 0 5px;
    }

/*側邊_menu*/
.side_menu {
    margin-bottom: 50px;
}

    .side_menu li {
        border-bottom: 1px solid #e1e1e1;
        position: relative;
    }

        .side_menu li > a {
            display: block;
            font-size: 14px;
            padding: 10px 15px;
        }

            .side_menu li > a.current {
                background-color: #8c8c8c;
                color: #fff;
            }

            .side_menu li > a b {
                color: #808080;
                font-size: 13px;
                font-weight: 400;
                margin-left: 10px;
            }

    .side_menu dl {
        padding-left: 25px;
    }

        .side_menu dl a {
            display: block;
            padding: 10px 15px;
            font-size: 14px;
        }

            .side_menu dl a.current {
                color: #000;
                text-decoration: underline;
            }

/*側邊_相簿*/
.side_album {
    margin-top: 30px;
    margin-bottom: 30px;
    margin-right: -10px;
}

    .side_album li {
        float: left;
        width: 33.33%;
        padding: 0 10px 10px 0;
    }

    .side_album a {
        display: block;
        box-shadow: 2px 2px 5px #c3c3c3;
    }

        .side_album a img {
            width: 100%;
            display: block;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
        }

/*側邊_線上訂房*/
.side_booking {
    margin-bottom: 30px;
}

    .side_booking a {
        display: block;
        border-radius: 4px;
        box-shadow: 0 1px 1px #8d2121;
        font-weight: bold;
        font-size: 25px;
        color: #fff;
        background-color: #f05b8f;
    }

        .side_booking a i {
            display: inline-block;
            font-size: 28px;
            padding: 10px 15px;
            margin-right: 15px;
            border-right: 1px solid #d33434;
            box-shadow: 1px 0 #f38a8a;
        }

        .side_booking a:hover {
            box-shadow: inset 0 3px 3px #8d2121;
        }

/*側邊_聯絡資訊*/
.side_contactInfo li {
    margin-bottom: 20px;
}

.side_contactInfo a {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    color: #414141;
}

.side_contactInfo i {
    display: inline-block;
    vertical-align: middle;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    margin-right: 8px;
    border: 2px solid #a5a5a5;
    border-radius: 50%;
    font-size: 20px;
    color: #a5a5a5;
    text-align: center;
}

.side_contactInfo b {
    display: inline-block;
    vertical-align: middle;
    font-weight: 400;
}

/*側邊_房型*/
.side_room {
    margin-bottom: 50px;
}

    .side_room .Img img {
        width: 100%;
        display: block;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

    .side_room .Txt {
        margin-top: 5px;
    }

        .side_room .Txt .title a {
            font-size: 16px;
            font-weight: 400;
        }

        .side_room .Txt .text {
            max-height: 100px;
            font-size: 13px;
            color: #858383;
            line-height: 1.8;
            overflow: hidden;
        }

/*側邊_其他相關訊息*/
.side_news {
    margin: 30px 0;
}

    .side_news .sideNewsList {
        margin-top: 20px;
    }

    .side_news .sideNewsItem {
        margin-bottom: 25px;
    }

    .side_news .Img {
        float: left;
        width: 60px;
        margin-right: 12px;
        overflow: hidden;
    }

        .side_news .Img img {
            display: block;
            height: 60px;
        }

    .side_news .Txt {
        overflow: hidden;
    }

        .side_news .Txt a {
            display: block;
            font-size: 14px;
            line-height: 1.5;
            font-weight: bold;
        }

            .side_news .Txt a:hover {
                text-decoration: underline;
            }

        .side_news .Txt b {
            display: block;
            margin-top: 5px;
            font-weight: 400;
            font-size: 12px;
            color: #999;
        }

/*社群分享*/
.sideShare {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px;
}

    .sideShare .shareList {
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
    }

        .sideShare .shareList .shareTitle {
            display: inline-block;
            font-size: 13px;
            font-weight: 400;
            color: #666;
        }

        .sideShare .shareList .shareItem a, .sideShare .shareList .shareItem button {
            color: #666;
            display: inline-block;
            font-size: 16px;
            line-height: 1;
            padding: 5px 6px;
            text-align: center;
        }

            .sideShare .shareList .shareItem a:hover, .sideShare .shareList .shareItem button:hover {
                opacity: 0.8;
            }

            .sideShare .shareList .shareItem a svg, .sideShare .shareList .shareItem button svg {
                width: 16px;
                height: 16px;
                display: inline-block;
                margin-top: -3px;
                vertical-align: middle;
            }

/*Hover效果1: 放大淡出*/
.imh_opacity {
    overflow: hidden;
}

    .imh_opacity img {
        transition: all 0.3s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

    .imh_opacity:hover img {
        -webkit-transform: scale(1.02);
        transform: scale(1.02);
    }

/*Hover效果1: 放大淡出Detail*/
.imh_detail {
    background-color: #000;
    overflow: hidden;
    position: relative;
}

    .imh_detail img {
        transition: all 0.3s linear;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

    .imh_detail a:before {
        content: "Details+";
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 99;
        margin-left: -45px;
        margin-top: -80px;
        display: block;
        padding: 10px 20px;
        font-size: 13px;
        color: #fff;
        border: 2px solid #fff;
        opacity: 0;
        transition: all 0.3s ease;
    }

    .imh_detail:hover a:before {
        opacity: 1;
        margin-top: -20px;
    }

    .imh_detail:hover img {
        opacity: 0.3;
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }

/*Hover效果1: 放大淡出zoom*/
.imh_zoom {
    background-color: #000;
    overflow: hidden;
    position: relative;
}

    .imh_zoom img {
        transition: all 0.3s linear;
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
    }

    .imh_zoom a:before {
        content: "\f002";
        display: block;
        position: absolute;
        left: 50%;
        top: -30px;
        margin-top: -20px;
        margin-left: -20px;
        z-index: 99;
        width: 40px;
        height: 40px;
        line-height: 40px;
        border-radius: 50%;
        font-size: 18px;
        color: #fff;
        font-family: FontAwesome;
        text-align: center;
        background-color: #000;
        transition: all 0.4s ease;
    }

    .imh_zoom:hover a:before {
        top: 50%;
    }

    .imh_zoom:hover img {
        opacity: 0.3;
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
