/* css reset */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

    blockquote:before, blockquote:after,
    q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* 全頁共用設定 */
* {
    font-family: 'Noto Sans TC', -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft JhengHei", Roboto, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.5;
    /* outline:1px solid red; */
}

ol, ul, li {
    list-style: none;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

img {
    /* max-width:100%; */
    /* height:auto; */
    /* display:block; */
    -o-object-fit: cover;
    object-fit: cover;
}

a, a:hover, a:visited, a:link, a:active {
    text-decoration: none;
    outline: none;
    /* display: block; */
}

.bg-center {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* fonts */
.textH1-1 {
    font-size: 2.25em;
    /* 36px */
    line-height: 1.2;
}

@media (max-width: 1199.98px) {
    .textH1-1 {
        font-size: 2em;
        /* 32px */
    }
}

@media (max-width: 575.98px) {
    .textH1-1 {
        font-size: 1.75em;
        /* 28px */
    }
}

.textH1-2 {
    font-size: 2.25em;
    /* 36px */
    line-height: 1.2;
}

@media (max-width: 1199.98px) {
    .textH1-2 {
        font-size: 1.75em;
        /* 28px */
    }
}

@media (max-width: 575.98px) {
    .textH1-2 {
        font-size: 1em;
        /* 16px */
    }
}

.textH1-3 {
    font-size: 2.25em;
    /* 36px */
    line-height: 1.2;
}

@media (max-width: 1699.98px) {
    .textH1-3 {
        font-size: 1.75em;
        /* 28px */
    }
}

@media (max-width: 1499.98px) {
    .textH1-3 {
        font-size: 1.5em;
        /* 24px */
    }
}

@media (max-width: 1299.98px) {
    .textH1-3 {
        font-size: 1.125em;
        /* 18px */
    }
}

@media (max-width: 1199.98px) {
    .textH1-3 {
        font-size: 1.75em;
        /* 28px */
    }
}

@media (max-width: 991.98px) {
    .textH1-3 {
        font-size: 1em;
        /* 16px */
    }
}

.textH2-1 {
    font-size: 1.75em;
    /* 28px */
    line-height: 1.2;
}

@media (max-width: 1199.98px) {
    .textH2-1 {
        font-size: 1.125em;
        /* 18px */
    }
}

@media (max-width: 575.98px) {
    .textH2-1 {
        font-size: 1em;
        /* 16px */
    }
}

.textH3-1 {
    font-size: 1.5em;
    /* 24px */
    line-height: 1.2;
}

.textH4-1 {
    font-size: 1.25em;
    /* 20px */
    line-height: 1.2;
}

.textH4-2 {
    font-size: 1.25em;
    /* 20px */
    line-height: 1.2;
}

@media (max-width: 1199.98px) {
    .textH4-2 {
        font-size: 1.125em;
        /* 18px */
    }
}

@media (max-width: 575.98px) {
    .textH4-2 {
        font-size: 0.875em;
        /* 14px */
    }
}

/* colors */
.color-1 {
    color: #f1deff;
}

.color-2 {
    color: #d9c3fc;
}

.color-3 {
    color: #3a006f;
}

.color-4 {
    color: #ed5883;
}

.color-5 {
    color: #ed1e79;
}

.color-6 {
    color: #ffd2d2;
}

.color-7 {
    color: #333333;
}

.color-8 {
    color: #f5f5f5;
}

.color-9 {
    color: #FFFF6F;
}

/* background colors */
.bgColor-1 {
    background-color: #f1deff;
}

.bgColor-2 {
    background-color: #d9c3fc;
}

.bgColor-3 {
    background-color: #3a006f;
}

.bgColor-4 {
    background-color: #ed5883;
}

.bgColor-5 {
    background-color: #ed1e79;
}

.bgColor-6 {
    background-color: #ffd2d2;
}

.bgColor-7 {
    background-color: #333333;
}

.bgColor-8 {
    background-color: #f5f5f5;
}

.bgColor-8-trans50 {
    background-color: rgba(255, 255, 255, 0.5);
}

.bgColor-8-trans80 {
    background-color: rgba(255, 255, 255, 0.8);
}

.bgColor-9 {
    background-color: #FFE66F;
}

/* font-weight */
.fontWeight-200 {
    font-weight: 200;
}

.fontWeight-300 {
    font-weight: 300;
}

.fontWeight-400 {
    font-weight: 400;
}

.fontWeight-500 {
    font-weight: 500;
}

.fontWeight-600 {
    font-weight: 600;
}

.fontWeight-700 {
    font-weight: 700;
}

.fontWeight-900 {
    font-weight: 900;
}

/* line-height */
.lineHeight-1 {
    line-height: 1.2;
}

.lineHeight-2 {
    line-height: 1.4;
}

.lineHeight-3 {
    line-height: 1.8;
}

.lineHeight-4 {
    line-height: 2;
}

/* letter-spacing */
.letterSpacing-05 {
    letter-spacing: 0.5px;
}

.letterSpacing-10 {
    letter-spacing: 1px;
}

.letterSpacing-20 {
    letter-spacing: 2px;
}

.letterSpacing-30 {
    letter-spacing: 3px;
}
/* LINE客服設定 */
@media (min-width: 1200px) {
    .letterSpacing-n15 {
        letter-spacing: -1.5px;
    }
}

/* Border-radius */
.borderRadius-1 {
    border-radius: 16px;
}

.borderRadius-2 {
    border-radius: 16px;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .borderRadius-2 {
        border-radius: 12px;
    }
}

@media (max-width: 575.98px) {
    .borderRadius-2 {
        border-radius: 8px;
    }
}

.borderRadius-3 {
    border-radius: 32px;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .borderRadius-3 {
        border-radius: 30px;
    }
}

@media (max-width: 575.98px) {
    .borderRadius-3 {
        border-radius: 16px;
    }
}
/* 電話客服-彈窗 */
.borderRadius-4 {
    border-radius: 72px;
}

.borderRadius-4-top {
    border-radius: 72px 72px 0 0;
}

.borderRadius-4-bottom {
    border-radius: 0 0 72px 72px;
}
/* LINE客服-內層 */
.borderRadius-5 {
    border-radius: 30px 0px 30px 0px;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .borderRadius-5 {
        border-radius: 28px 0px 28px 0px;
    }
}

@media (max-width: 575.98px) {
    .borderRadius-5 {
        border-radius: 20px 0px 20px 0px;
    }
}

/* spacing */
.m-6 {
    margin-top: 64px !important;
    margin-bottom: 64px !important;
    margin-left: 64px !important;
    margin-right: 64px !important;
}

.mt-6 {
    margin-top: 64px !important;
}

.mb-6 {
    margin-bottom: 64px !important;
}

.mr-6 {
    margin-left: 64px !important;
}

.ml-6 {
    margin-right: 64px !important;
}

.mx-6 {
    margin-left: 64px !important;
    margin-right: 64px !important;
}

.my-6 {
    margin-top: 64px !important;
    margin-bottom: 64px !important;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .m-sm-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .mt-sm-6 {
        margin-top: 64px !important;
    }

    .mb-sm-6 {
        margin-bottom: 64px !important;
    }

    .mr-sm-6 {
        margin-left: 64px !important;
    }

    .ml-sm-6 {
        margin-right: 64px !important;
    }

    .mx-sm-6 {
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .my-sm-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .m-md-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .mt-md-6 {
        margin-top: 64px !important;
    }

    .mb-md-6 {
        margin-bottom: 64px !important;
    }

    .mr-md-6 {
        margin-left: 64px !important;
    }

    .ml-md-6 {
        margin-right: 64px !important;
    }

    .mx-md-6 {
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .my-md-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .m-lg-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .mt-lg-6 {
        margin-top: 64px !important;
    }

    .mb-lg-6 {
        margin-bottom: 64px !important;
    }

    .mr-lg-6 {
        margin-left: 64px !important;
    }

    .ml-lg-6 {
        margin-right: 64px !important;
    }

    .mx-lg-6 {
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .my-lg-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
    }
}

@media (min-width: 1200px) {
    .m-xl-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .mt-xl-6 {
        margin-top: 64px !important;
    }

    .mb-xl-6 {
        margin-bottom: 64px !important;
    }

    .mr-xl-6 {
        margin-left: 64px !important;
    }

    .ml-xl-6 {
        margin-right: 64px !important;
    }

    .mx-xl-6 {
        margin-left: 64px !important;
        margin-right: 64px !important;
    }

    .my-xl-6 {
        margin-top: 64px !important;
        margin-bottom: 64px !important;
    }
}

.m-7 {
    margin-top: 72px !important;
    margin-bottom: 72px !important;
    margin-left: 72px !important;
    margin-right: 72px !important;
}

.mt-7 {
    margin-top: 72px !important;
}

.mb-7 {
    margin-bottom: 72px !important;
}

.mr-7 {
    margin-left: 72px !important;
}

.ml-7 {
    margin-right: 72px !important;
}

.mx-7 {
    margin-left: 72px !important;
    margin-right: 72px !important;
}

.my-7 {
    margin-top: 72px !important;
    margin-bottom: 72px !important;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .m-sm-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .mt-sm-7 {
        margin-top: 72px !important;
    }

    .mb-sm-7 {
        margin-bottom: 72px !important;
    }

    .mr-sm-7 {
        margin-left: 72px !important;
    }

    .ml-sm-7 {
        margin-right: 72px !important;
    }

    .mx-sm-7 {
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .my-sm-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .m-md-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .mt-md-7 {
        margin-top: 72px !important;
    }

    .mb-md-7 {
        margin-bottom: 72px !important;
    }

    .mr-md-7 {
        margin-left: 72px !important;
    }

    .ml-md-7 {
        margin-right: 72px !important;
    }

    .mx-md-7 {
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .my-md-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .m-lg-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .mt-lg-7 {
        margin-top: 72px !important;
    }

    .mb-lg-7 {
        margin-bottom: 72px !important;
    }

    .mr-lg-7 {
        margin-left: 72px !important;
    }

    .ml-lg-7 {
        margin-right: 72px !important;
    }

    .mx-lg-7 {
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .my-lg-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
    }
}

@media (min-width: 1200px) {
    .m-xl-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .mt-xl-7 {
        margin-top: 72px !important;
    }

    .mb-xl-7 {
        margin-bottom: 72px !important;
    }

    .mr-xl-7 {
        margin-left: 72px !important;
    }

    .ml-xl-7 {
        margin-right: 72px !important;
    }

    .mx-xl-7 {
        margin-left: 72px !important;
        margin-right: 72px !important;
    }

    .my-xl-7 {
        margin-top: 72px !important;
        margin-bottom: 72px !important;
    }
}

.m-8 {
    margin-top: 96px !important;
    margin-bottom: 96px !important;
    margin-left: 96px !important;
    margin-right: 96px !important;
}

.mt-8 {
    margin-top: 96px !important;
}

.mb-8 {
    margin-bottom: 96px !important;
}

.mr-8 {
    margin-left: 96px !important;
}

.ml-8 {
    margin-right: 96px !important;
}

.mx-8 {
    margin-left: 96px !important;
    margin-right: 96px !important;
}

.my-8 {
    margin-top: 96px !important;
    margin-bottom: 96px !important;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .m-sm-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .mt-sm-8 {
        margin-top: 96px !important;
    }

    .mb-sm-8 {
        margin-bottom: 96px !important;
    }

    .mr-sm-8 {
        margin-left: 96px !important;
    }

    .ml-sm-8 {
        margin-right: 96px !important;
    }

    .mx-sm-8 {
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .my-sm-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .m-md-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .mt-md-8 {
        margin-top: 96px !important;
    }

    .mb-md-8 {
        margin-bottom: 96px !important;
    }

    .mr-md-8 {
        margin-left: 96px !important;
    }

    .ml-md-8 {
        margin-right: 96px !important;
    }

    .mx-md-8 {
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .my-md-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .m-lg-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .mt-lg-8 {
        margin-top: 96px !important;
    }

    .mb-lg-8 {
        margin-bottom: 96px !important;
    }

    .mr-lg-8 {
        margin-left: 96px !important;
    }

    .ml-lg-8 {
        margin-right: 96px !important;
    }

    .mx-lg-8 {
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .my-lg-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
    }
}

@media (min-width: 1200px) {
    .m-xl-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .mt-xl-8 {
        margin-top: 96px !important;
    }

    .mb-xl-8 {
        margin-bottom: 96px !important;
    }

    .mr-xl-8 {
        margin-left: 96px !important;
    }

    .ml-xl-8 {
        margin-right: 96px !important;
    }

    .mx-xl-8 {
        margin-left: 96px !important;
        margin-right: 96px !important;
    }

    .my-xl-8 {
        margin-top: 96px !important;
        margin-bottom: 96px !important;
    }
}

/* padding */
.p-6 {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
    padding-left: 64px !important;
    padding-right: 64px !important;
}

.pt-6 {
    padding-top: 64px !important;
}

.pb-6 {
    padding-bottom: 64px !important;
}

.pr-6 {
    padding-left: 64px !important;
}

.pl-6 {
    padding-right: 64px !important;
}

.px-6 {
    padding-left: 64px !important;
    padding-right: 64px !important;
}

.py-6 {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .p-sm-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .pt-sm-6 {
        padding-top: 64px !important;
    }

    .pb-sm-6 {
        padding-bottom: 64px !important;
    }

    .pr-sm-6 {
        padding-left: 64px !important;
    }

    .pl-sm-6 {
        padding-right: 64px !important;
    }

    .px-sm-6 {
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .py-sm-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .p-md-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .pt-md-6 {
        padding-top: 64px !important;
    }

    .pb-md-6 {
        padding-bottom: 64px !important;
    }

    .pr-md-6 {
        padding-left: 64px !important;
    }

    .pl-md-6 {
        padding-right: 64px !important;
    }

    .px-md-6 {
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .py-md-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .p-lg-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .pt-lg-6 {
        padding-top: 64px !important;
    }

    .pb-lg-6 {
        padding-bottom: 64px !important;
    }

    .pr-lg-6 {
        padding-left: 64px !important;
    }

    .pl-lg-6 {
        padding-right: 64px !important;
    }

    .px-lg-6 {
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .py-lg-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }
}

@media (min-width: 1200px) {
    .p-xl-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .pt-xl-6 {
        padding-top: 64px !important;
    }

    .pb-xl-6 {
        padding-bottom: 64px !important;
    }

    .pr-xl-6 {
        padding-left: 64px !important;
    }

    .pl-xl-6 {
        padding-right: 64px !important;
    }

    .px-xl-6 {
        padding-left: 64px !important;
        padding-right: 64px !important;
    }

    .py-xl-6 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }
}

.p-7 {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
    padding-left: 72px !important;
    padding-right: 72px !important;
}

.pt-7 {
    padding-top: 72px !important;
}

.pb-7 {
    padding-bottom: 72px !important;
}

.pr-7 {
    padding-left: 72px !important;
}

.pl-7 {
    padding-right: 72px !important;
}

.px-7 {
    padding-left: 72px !important;
    padding-right: 72px !important;
}

.py-7 {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .p-sm-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .pt-sm-7 {
        padding-top: 72px !important;
    }

    .pb-sm-7 {
        padding-bottom: 72px !important;
    }

    .pr-sm-7 {
        padding-left: 72px !important;
    }

    .pl-sm-7 {
        padding-right: 72px !important;
    }

    .px-sm-7 {
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .py-sm-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .p-md-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .pt-md-7 {
        padding-top: 72px !important;
    }

    .pb-md-7 {
        padding-bottom: 72px !important;
    }

    .pr-md-7 {
        padding-left: 72px !important;
    }

    .pl-md-7 {
        padding-right: 72px !important;
    }

    .px-md-7 {
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .my-md-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .p-lg-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .pt-lg-7 {
        padding-top: 72px !important;
    }

    .pb-lg-7 {
        padding-bottom: 72px !important;
    }

    .pr-lg-7 {
        padding-left: 72px !important;
    }

    .pl-lg-7 {
        padding-right: 72px !important;
    }

    .px-lg-7 {
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .py-lg-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }
}

@media (min-width: 1200px) {
    .p-xl-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .pt-xl-7 {
        padding-top: 72px !important;
    }

    .pb-xl-7 {
        padding-bottom: 72px !important;
    }

    .pr-xl-7 {
        padding-left: 72px !important;
    }

    .pl-xl-7 {
        padding-right: 72px !important;
    }

    .px-xl-7 {
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .py-xl-7 {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }
}

.p-8 {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
    padding-left: 96px !important;
    padding-right: 96px !important;
}

.pt-8 {
    padding-top: 96px !important;
}

.pb-8 {
    padding-bottom: 96px !important;
}

.pr-8 {
    padding-left: 96px !important;
}

.pl-8 {
    padding-right: 96px !important;
}

.px-8 {
    padding-left: 96px !important;
    padding-right: 96px !important;
}

.py-8 {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .p-sm-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .pt-sm-8 {
        padding-top: 96px !important;
    }

    .pb-sm-8 {
        padding-bottom: 96px !important;
    }

    .pr-sm-8 {
        padding-left: 96px !important;
    }

    .pl-sm-8 {
        padding-right: 96px !important;
    }

    .px-sm-8 {
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .py-sm-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .p-md-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .pt-md-8 {
        padding-top: 96px !important;
    }

    .pb-md-8 {
        padding-bottom: 96px !important;
    }

    .pr-md-8 {
        padding-left: 96px !important;
    }

    .pl-md-8 {
        padding-right: 96px !important;
    }

    .px-md-8 {
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .py-md-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .p-lg-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .pt-lg-8 {
        padding-top: 96px !important;
    }

    .pb-lg-8 {
        padding-bottom: 96px !important;
    }

    .pr-lg-8 {
        padding-left: 96px !important;
    }

    .pl-lg-8 {
        padding-right: 96px !important;
    }

    .px-lg-8 {
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .py-lg-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }
}

@media (min-width: 1200px) {
    .p-xl-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .pt-xl-8 {
        padding-top: 96px !important;
    }

    .pb-xl-8 {
        padding-bottom: 96px !important;
    }

    .pr-xl-8 {
        padding-left: 96px !important;
    }

    .pl-xl-8 {
        padding-right: 96px !important;
    }

    .px-xl-8 {
        padding-left: 96px !important;
        padding-right: 96px !important;
    }

    .py-xl-8 {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }
}

/* buttons */
.btn-1 {
    color: #3a006f;
    background-color: #DCB5FF;
}

    .btn-1:hover {
        color: #f5f5f5;
        background-color: #3a006f;
    }

/* 頁面元件設定 */
.faqBg {
    background-color: rgba(241, 222, 255, 1);
    background-image: url("../img/faq_pd_bg_pc.png");
    background-size: cover;
    background-position: top;
    background-repeat: repeat;
}

/* 頁面大標題 */
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .img-faqTitle {
        width: 70%;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .img-faqTitle {
        width: 75%;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .img-faqTitle {
        width: 90%;
    }
}

@media (max-width: 575.98px) {
    .img-faqTitle {
        width: 90%;
    }
}

/* 常見問題選單 margin-bottom 設定 */
@media (max-width: 640px) {
    .mb-typeMenu {
        margin-bottom: 48px;
    }
}

@media (max-width: 480px) {
    .mb-typeMenu {
        margin-bottom: 24px;
    }
}

/* 問題列表收合效果樣式 */
/* Style the buttons that are used to open and close the accordion panel */
.accordion {
    cursor: pointer;
    width: 100%;
    text-align: left;
    border: none;
    outline: none;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
/* .active, .accordion:hover {
    background-color: #ccc;
} */

/* Style the accordion panel. Note: hidden by default */
.panel {
    display: none;
    overflow: hidden;
}

.accordion:after {
    content: '＋';
    font-size: 36px;
    color: #FFE66F;
    float: right;
    margin-left: 5px;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .accordion:after {
        font-size: 26px;
    }
}

@media (max-width: 575.98px) {
    .accordion:after {
        font-size: 20px;
    }
}

.faqbtn .active:after {
    content: "－";
    font-size: 36px;
    color: #FFE66F;
    float: right;
    margin-left: 5px;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .faqbtn .active:after {
        font-size: 26px;
    }
}

@media (max-width: 575.98px) {
    .faqbtn .active:after {
        font-size: 20px;
    }
}

button:focus {
    outline: none;
}

/* 或由專人為您服務 */
/* 共用設定 */
.contactMethod {
    width: 23%;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .contactMethod {
        width: 48%;
    }
}

@media (max-width: 575.98px) {
    .contactMethod {
        width: 100%;
    }
}

/* hover效果：跳動 */
@media (min-width: 992px) {
    .contactMethod:hover {
        -webkit-transition: -webkit-transform .2s, -webkit-box-shadow .2s;
        transition: -webkit-transform .2s, -webkit-box-shadow .2s;
        -o-transition: transform .2s, box-shadow .2s;
        transition: transform .2s, box-shadow .2s;
        transition: transform .2s, box-shadow .2s, -webkit-transform .2s, -webkit-box-shadow .2s;
        -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
        transform: translateY(-8px);
    }
}

.contactMethod-icon {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .contactMethod-icon {
        width: 15%;
    }
}

@media (max-width: 575.98px) {
    .contactMethod-icon {
        width: 15%;
    }
}

/* LINE 客服 */
.contactMethod-line {
    background-image: url("../img/faq_pd_3_2_bg_pc.png");
    background-size: cover !important;
    background-position: center;
    background-repeat: no-repeat;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .contactMethod-line {
        background-image: url("../img/faq_pd_3_2_bg_pad.png");
    }
}

@media (max-width: 575.98px) {
    .contactMethod-line {
        background-image: url("../img/faq_pd_3_2_bg_mobile.png");
    }
}

/* 電話客服 */
.contactMethod-tel {
    background-image: url("../img/faq_pd_3_3_bg_pc.png");
    background-size: cover !important;
    background-position: center;
    background-repeat: no-repeat;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .contactMethod-tel {
        background-image: url("../img/faq_pd_3_3_bg_pad.png");
    }
}

@media (max-width: 575.98px) {
    .contactMethod-tel {
        background-image: url("../img/faq_pd_3_3_bg_mobile.png");
    }
}

/* 電話客服-彈窗設定 */
.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}

.contactMethod-tel-card {
    width: 25%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media (min-width: 1300px) and (max-width: 1599.98px) {
    .contactMethod-tel-card {
        width: 30%;
    }
}

@media (min-width: 1200px) and (max-width: 1299.98px) {
    .contactMethod-tel-card {
        width: 35%;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .contactMethod-tel-card {
        width: 40%;
    }
}

@media (min-width: 576px) and (max-width: 991.98px) {
    .contactMethod-tel-card {
        width: 70%;
    }
}

@media (max-width: 575.98px) {
    .contactMethod-tel-card {
        width: 90%;
    }
}

.closeModal:hover, .closeModal:focus {
    cursor: pointer;
}

.img-contactMethod-tel-kid {
    position: absolute;
    top: 0;
    right: -12%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media (min-width: 1200px) and (max-width: 1599.98px) {
    .img-contactMethod-tel-kid {
        right: -8%;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .img-contactMethod-tel-kid {
        width: 32%;
    }
}

@media (min-width: 576px) and (max-width: 991.98px) {
    .img-contactMethod-tel-kid {
        width: 30%;
        right: -10%;
    }
}

@media (max-width: 575.98px) {
    .img-contactMethod-tel-kid {
        width: 30%;
        right: -10%;
    }
}

/* 聯絡我們 */
.contactMethod-site {
    background-image: url("../img/faq_pd_3_4_bg_pc.png");
    background-size: cover !important;
    background-position: center;
    background-repeat: no-repeat;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .contactMethod-site {
        background-image: url("../img/faq_pd_3_4_bg_pad.png");
    }
}

@media (max-width: 575.98px) {
    .contactMethod-site {
        background-image: url("../img/faq_pd_3_4_bg_mobile.png");
    }
}

/* 客服信箱 */
.contactMethod-email {
    background-image: url("../img/faq_pd_3_5_bg_pc.png");
    background-size: cover !important;
    background-position: center;
    background-repeat: no-repeat;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
    .contactMethod-email {
        background-image: url("../img/faq_pd_3_5_bg_pad.png");
    }
}

@media (max-width: 575.98px) {
    .contactMethod-email {
        background-image: url("../img/faq_pd_3_5_bg_mobile.png");
    }
}
