/* $Reset
--------------------------------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote {
    margin: 0;
    padding: 0
}

fieldset,img {
    border: 0
}

address,caption,cite,code,dfn,em,var {
    font-style: normal;
    font-weight: 400
}

ol,ul {
    list-style: none
}

q:before,q:after {
    content: ''
}

abbr,acronym {
    border: 0
}

a {
    background: transparent;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    line-height: 1em;
    display: inline-block
}

a:active {
    outline: 0
}

input,textarea,button,select,option {
    border: 0;
    margin: 0;
    outline: none;
    padding: 0;
    font-size: 1.2rem;
    font-family: 'Noto Sans TC','Open Sans','Arial','Microsoft JhengHei','Apple LiGothic Medium',sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none
}

select::-ms-expand {
    display: none
}

input::-moz-placeholder,textarea::-moz-placeholder {
    color: #ccc
}

input:-ms-input-placeholder,textarea:-ms-input-placeholder {
    color: #ccc
}

input::-webkit-input-placeholder,textarea::-webkit-input-placeholder {
    color: #ccc
}

/* $font
--------------------------------------------------------------------------------------*/
/* cwTeXYen (Chinese Traditional) http://www.google.com/fonts/earlyaccess */
@font-face {
    font-family: 'cwTeXHei';
    font-style: normal;
    font-weight: 500;
    src: url(//fonts.gstatic.com/ea/cwtexhei/v3/cwTeXHei-zhonly.eot);
    src: url(//fonts.gstatic.com/ea/cwtexhei/v3/cwTeXHei-zhonly.eot?#iefix) format('embedded-opentype'), url(//fonts.gstatic.com/ea/cwtexhei/v3/cwTeXHei-zhonly.woff2) format('woff2'), url(//fonts.gstatic.com/ea/cwtexhei/v3/cwTeXHei-zhonly.woff) format('woff'), url(//fonts.gstatic.com/ea/cwtexhei/v3/cwTeXHei-zhonly.ttf) format('truetype');
}

/* Noto Sans TC (Chinese_traditional) http://www.google.com/fonts/earlyaccess */
@font-face {
    font-family: 'Noto Sans TC';
    font-style: normal;
    font-weight: 100;
    src: url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Thin.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Thin.woff) format('woff'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Thin.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans TC';
    font-style: normal;
    font-weight: 300;
    src: url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Light.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Light.woff) format('woff'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Light.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans TC';
    font-style: normal;
    font-weight: 400;
    src: url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Regular.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Regular.woff) format('woff'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Regular.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans TC';
    font-style: normal;
    font-weight: 500;
    src: url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Medium.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Medium.woff) format('woff'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Medium.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans TC';
    font-style: normal;
    font-weight: 700;
    src: url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Bold.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Bold.woff) format('woff'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Bold.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans TC';
    font-style: normal;
    font-weight: 900;
    src: url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Black.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Black.woff) format('woff'), url(//fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Black.otf) format('opentype');
}

:before ,:after {
    font-family: 'Font Awesome 5 Free','Linearicons-Free',"微軟正黑體";
}

/* $body,html
--------------------------------------------------------------------------------------*/
html,body {
    width: 100%;
    height: 100%;
    font-family: "微軟正黑體","新細明體","蘋果儷黑體", Arial, Helvetica, sans-serif;
    position: relative;
}

/* body{ display: flex; flex-direction: column; min-height: 100%; } */
body {
    min-height: 100%;
}

/* $共用
--------------------------------------------------------------------------------------*/
/* loading */
.loading {
    width: 100vw;
    height: 100%;
    min-height: 100vh;
    position: fixed;
    left: 0;
    top: 0;
    background-color: rgba(0,0,0,0.9);
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: center;
}

.loading-circle circle {
    -webkit-animation: c1_2 9s linear infinite,c1_3 4.5s infinite;
    -moz-animation: c1_2 9s linear infinite,c1_3 4.5s infinite;
    animation: c1_2 9s linear infinite,c1_3 4.5s infinite;
}

.loading.fade {
    opacity: 0;
    z-index: -1;
    pointer-events: none;
}

/*loading 控制粗細*/
@-webkit-keyframes c1_2 {
    0% {
        stroke-width: 0;
    }

    10% {
        stroke-width: 8;
    }

    75% {
        stroke-width: 8;
    }

    90% {
        stroke-width: 0;
    }

    100% {
        stroke-width: 0;
    }
}

/*loading 動態*/
@-webkit-keyframes c1_3 {
    0% {
        stroke-dasharray: 104,156;
        stroke-dashoffset: -52;
    }

    16% {
        stroke-dasharray: 1,156;
        stroke-dashoffset: -52;
    }

    16.01% {
        stroke-dasharray: 1,156;
        stroke-dashoffset: -208;
    }

    33% {
        stroke-dasharray: 104,52;
        stroke-dashoffset: -104;
    }

    33.01% {
        stroke-dasharray: 104,52;
        stroke-dashoffset: -104;
    }

    49% {
        stroke-dasharray: 1,156;
        stroke-dashoffset: -104;
    }

    49.01% {
        stroke-dasharray: 1,156;
        stroke-dashoffset: 52;
    }

    66% {
        stroke-dasharray: 104,52;
        stroke-dashoffset: 156;
    }

    66.01% {
        stroke-dasharray: 104,52;
        stroke-dashoffset: 156;
    }

    82% {
        stroke-dasharray: 1,156;
        stroke-dashoffset: 156;
    }

    82.01% {
        stroke-dasharray: 1,156;
        stroke-dashoffset: 156;
    }

    99.99% {
        stroke-dasharray: 104,52;
        stroke-dashoffset: 256;
    }
}

/* end loading */
/*----清除浮動----*/
.clearfix:before,.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;}

/*----清除浮動----*/
/* IMAGE REPLACE */
.imageReplace {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

/* float */
.floatL {
    float: left;
}

.floatR {
    float: right;
}

/* button reset */
button {
    font-family: "微軟正黑體","新細明體","蘋果儷黑體", Arial, Helvetica, sans-serif;
    border: none;
}

/* input reset */
input {
    font-family: "微軟正黑體","新細明體","蘋果儷黑體", Arial, Helvetica, sans-serif;
    border: none;
}

/* select reset */
select {
    font-family: "微軟正黑體","新細明體","蘋果儷黑體", Arial, Helvetica, sans-serif;
}

h1 {
    font-size: 1.8em;
    line-height: 1.5em;
}

h2 {
    font-size: 1.4em;
    line-height: 1.5em;
}

h3 {
    font-size: 1.2em;
    line-height: 1.5em;
}

h4 {
    font-size: 0.8em;
    line-height: 1.5em;
}

a {
    font-size: 1em;
}

.t-purple {
    color: #8081FF;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 16px;
}

.container:after {
    content: "";
    display: block;
    clear: both;
}

.page-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 16px;
}

.page-container:after {
    content: "";
    display: block;
    clear: both;
}

.box {
    margin: 40px 0;
}

.row {
    display: flex;
    flex-wrap: wrap;
}

.row-center {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 1em;
}

.col {
    padding: 0.6em;
    box-sizing: border-box;
}

.col-1-2 {
    width: calc(100%/2);
    padding: 0.6em;
    box-sizing: border-box;
}

.col-1-3 {
    width: calc(100%/3);
    padding: 0.6em;
    box-sizing: border-box;
}

.col-1-4 {
    width: calc(100%/4);
    padding: 0.6em;
    box-sizing: border-box;
}

.center_block {
    min-height: 70vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.bg-gray {
    background-color: #eeeef5;
}

.bg-purple {
    background-color: #F5F2FF;
}

.line {
    width: 100%;
    border-top: 2px dotted #8081ff;
    margin: 12px 8px 0 8px;
}

.gray-line {
    width: 100%;
    border-top: 4px dotted #9696AD;
}

/* 解決iframe造成footer有空隙的code */
iframe {
    display: none;
}

/*----------*\
    header
\*----------*/
.hide {
    transform: translate(0,-100%);
}

header {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    transition: all .8s cubic-bezier(.23,1,.32,1);
    box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.16);
}

.header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100px;
    width: 100%;
    margin: 0 auto;
    max-width: 1200px;
}

.header-container .logo {
    width: auto;
    height: 28px;
}

.header-container .logo img {
    width: auto;
    height: 100%;
    margin-top: -4px;
}

nav {
    width: 100%;
    font-weight: 900;
}

.mainMenu {
    display: flex;
    color: #000;
    width: 100%;
    justify-content: center;
}

.mainMenu > li {
    margin: 0 1em;
    padding: 40px 0;
}

.mainMenu > li:hover {
    color: #8081ff;
}

.mainMenu > li:hover > a:after {
    width: 100%;
}

.mainMenu > li > a:hover {
    color: #8081ff;
}

.mainMenu > li > a:after {
    content: '';
    width: 0;
    height: 2px;
    background: #8081ff;
    display: block;
    transform: translateY(6px);
    transition: all .6s cubic-bezier(.23,1,.32,1);
}

.mainMenu > li:hover .subMenu {
    height: 60px;
}

.m-otherMenu {
    display: none;
}

.otherMenu {
    width: 70%;
    display: flex;
    justify-content: flex-end;
    font-weight: 900;
}

.otherMenu .login {
    display: flex;
}

.otherMenu .login li {
    color: #000;
    padding: 0 .5em;
}

.otherMenu .login li a:hover {
    color: #8081ff;
}

.m-login {
    display: none;
}

.otherMenu .account {
    display: flex;
}

.otherMenu .account li {
    color: #000;
    padding: 0 .5em;
}

.otherMenu .account li a:hover {
    color: #8081ff;
}

.subMenu {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: #48484e;
    transform: translateY(99%);
    height: 0;
    transition: all .2s cubic-bezier(.23,1,.32,1);
    overflow: hidden;
}

.subMenu ul {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.subMenu ul > li {
    margin: 0 20px;
}

.subMenu ul > li a {
    padding: 10px 15px;
    color: #fff;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,0);
    transition: all .6s cubic-bezier(.23,1,.32,1);
}

.subMenu ul > li a:hover {
    border: 1px solid #fff;
    border-radius: 8px;
}

.navCheck {
    display: none;
    font-size: 0;
    opacity: 0;
    pointer-events: none;
}

.a-center a {
    color: #cf7ffa;
}

.a-card a {
    color: #e60012;
}

.a-center a:hover,.a-card a:hover,.a-center a:hover:before,.a-card a:hover:before {
    color: #8081ff;
}

.a-center a:before,.a-card a:before {
    display: inline-block;
    margin: 0 8px;
    font-weight: 900;
}

.a-center a:before {
    content: '\f007';
    color: #cf7ffa;
}

.a-card a:before {
    content: '\f09d';
    color: #e60012;
}

/*----------*\
  end header
\*----------*/
/*----------*\
   每頁共用
\*----------*/
.main {
    flex-grow: 1;
}

.back {
    position: absolute;
    color: #fff;
    height: 60px;
    line-height: 60px;
    padding-left: 16px;
}

.back:before {
    content: '\f104';
    font-weight: 900;
    padding-right: 8px;
    font-size: 1.4em;
}

.back:hover {
    color: #48484e;
}

.back_text {
    display: inline-block;
}

.page_title {
    background: -webkit-linear-gradient(left,#cf7ffa,#8081ff);
    background: -o-linear-gradient(right,#cf7ffa,#8081ff);
    background: -moz-linear-gradient(right,#cf7ffa,#8081ff);
    background: linear-gradient(to right,#cf7ffa,#8081ff);
    color: #fff;
    text-align: center;
    height: 60px;
}

.page_title h1 {
    line-height: 60px;
}

.BU_page_title {
    background-color: #A77BCA;
    color: #fff;
    text-align: center;
    height: 60px;
}

.BU_page_title h1 {
    line-height: 60px;
}

/* slick */
.event-slick .slick-track {
    transform: none!important;
}

/* btn */
.btn-box {
    display: flex;
    justify-content: center;
    margin: 2em 0;
}

.code_block .btn-box .btn-style {
    padding: 8px 0;
}

.btn-style {
    position: relative;
    display: inline-block;
    width: calc(100%/2);
    max-width: 300px;
    font-weight: bold;
    font-size: 1.2em;
    text-align: center;
    outline: 0;
    cursor: pointer;
    border-radius: 8px;
    color: #fff;
    transition: all .4s;
    background: #8081ff;
    margin-right: 8px;
    padding: 16px 0;
}

.btn-style:hover {
    background: #cf7ffa;
}

.btn-style:last-child {
    margin-right: 0;
}

.btn-style.btn-lightpurple {
    background: #9696ad;
    color: #fff;
    margin-right: 8px;
}

.btn-style.btn-lightpurple:hover {
    background: #cf7ffa;
    color: #fff;
    margin-right: 8px;
}

.btn-style.btn-gray {
    background: #9696ad;
    color: #fff;
    margin-left: 8px;
}

.btn-purple {
    width: 100%;
    background: #8081ff;
    color: #fff;
    border-radius: 8px;
    text-align: center;
    font-size: 1em;
    padding: 1em 0;
}

.btn-purple:hover {
    background: #cf7ffa;
    color: #fff;
}

.btn-style button {
    width: 100%;
    color: inherit;
    margin: 0;
    cursor: pointer;
    font-weight: bold;
    border-radius: 8px;
    background: transparent;
    font-size: 1.2em;
}

.btn-style button:disabled {
    background: #9696ad;
    border-color: transparent;
}

.btn-style.save:after {
    content: '\f019';
    font-weight: 900;
    padding-left: .4em;
}

.binding .btn-box {
    flex-wrap: wrap;
    justify-content: start;
}

.binding .btn-style {
    width: calc(100%/4 - 8px);
    margin: 4px;
}

.binding .btn-style:before {
    content: '\f055';
    font-weight: bold;
    color: #fff;
    margin-right: .4em;
}

/* 勾選樣式 */
.check-style ~.btn-box .btn-style {
    padding: 0;
}

.check-style ~.btn-box .btn-style button:disabled {
    padding: 16px 0;
}

.check-style ~.btn-box .btn-style button {
    padding: 16px 0;
}

/* barcode */
.barcode {
    width: 60%;
    display: inline-block;
    padding-top: 31.2%;
    margin: 0 auto;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url('../images/barcode.jpg');
}

/* tab */
.tab_block {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 2em;
}

.card_tab {
    display: inline-block;
    border-radius: 8px;
    border: 2px solid #8081ff;
    color: #8081ff;
    font-weight: 900;
    text-align: center;
    padding: 12px 16px;
    margin: 0 .4em;
}

.card_tab:hover {
    color: #fff;
    background-color: #cf7ffa;
    border: 2px solid #cf7ffa;
}

.event_tab_block {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 2em;
}

.event_tab {
    width: 160px;
    display: block;
    padding: 10px 15px;
    border-radius: 8px;
    text-decoration: none;
    text-align: center;
    margin: 0 10px;
    border: 1px solid #8081ff;
    color: #8081ff;
}

.event_tab:hover,.event_tab.current {
    background: #8081ff;
    border: 1px solid #8081ff;
    color: #fff;
}

.event_left {
    width: 100%;
}

.event_right {
    width: 100%;
    margin-left: 1em;
}

.event_right .btn-style {
    width: 100%;
    background-color: #CF7FFA;
    border-radius: 0;
    margin-bottom: 1em;
}

.event_block {
    width: 100%;
}

.event_block .event-item {
    margin-bottom: 1em;
}

/*----------*\
 end 每頁共用
\*----------*/
/*----------*\
    popup
\*----------*/
/* 公告 */
.popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,.8);
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: scale(0);
    transition: all .2s;
    transition-timing-function: cubic-bezier(.41,.2,.83,.67);
}

.popup.on {
    transform: scale(1);
    transition: all .4s;
    transition-timing-function: cubic-bezier(.19,1.27,.64,1.08);
}

/* 驗證碼錯誤 */
/* 當驗證錯誤3次時，打開跳出視窗 */
/* .code_error_popup{display: none;} */
/* ----------------------------- */
.popup .code_block .close {
    position: absolute;
    text-align: center;
    margin-bottom: -4em;
    top: 0;
    right: 0;
    width: 2.5rem;
    height: 2.5rem;
    cursor: pointer;
    transform: translate(0%,-120%);
    transition: all .3s;
    border: 2px solid #8081ff;
    border-radius: 50px;
}

.popup .code_block .close:before,.popup .close:after {
    position: absolute;
    content: '';
    width: 80%;
    height: 2px;
    display: block;
    background: #8081ff;
    top: 50%;
    left: 10%;
    transform: rotate(-45deg);
}

.popup .code_block .close:after {
    transform: rotate(45deg);
}

.code_block {
    position: relative;
    width: 90vw;
    max-width: 900px;
    padding: .4em;
    background-color: #fff;
    border-radius: 8px;
}

.code {
    text-align: center;
    padding: 2em;
    margin: .4em;
    border-radius: 8px;
    border: 1px solid #8081ff;
}

.code-title {
    display: inline-block;
    color: #8081ff;
    border-radius: 8px;
    margin: 0 auto;
    height: 40px;
    text-align: center;
}

/* 刪除卡片 */
/* 刪除卡片時，跳出視窗 */
/* .delete_card_popup{display: none;} */
/* 註冊 */
/* 已存在會員時，跳出視窗 */
/* .ID_popup{display: none;} */
.ID {
    text-align: left;
    padding: 1em;
    margin: .4em;
    border-radius: 8px;
    border: 1px solid #8081ff;
}

.ID-title {
    color: #8081ff;
    padding: 1em 0;
}

.ID-description {
    text-align: left;
    line-height: 1.8em;
}

/*----------*\
  end popup
\*----------*/
/*----------*\
    footer
\*----------*/
footer {
    position: relative;
}

.footer {
    width: 100%;
    background-color: #f3f3f3;
    display: flex;
    padding: 32px 0;
}

.m-footer_global {
    display: none;
}

.footer_global {
    width: 900px;
    display: flex;
    justify-content: center;
    padding-bottom: .4em;
}

.info_block {
    width: calc(100%/2);
    display: flex;
    justify-content: center;
    border-right: 1px solid #e9c1ff;
}

.info_title {
    font-size: 1.2em;
    font-weight: 900;
    line-height: 1.2em;
    padding-bottom: .4em;
}

.info_block ol li {
    padding-top: .4em;
}

.info_block ol li:hover {
    color: #8081ff;
}

.copyright_block {
    width: 100%;
    padding: 0 2em;
    text-align: center;
}

.copyright {
    text-align: center;
    font-size: 10px;
}

.info-menu {
    display: flex;
    width: 100%;
    justify-content: center;
}

.info-menu li {
    padding: 0 8px 8px 8px;
}

.info-item:hover {
    color: #8081ff;
}

/* TOP- */
.btn-top {
    position: fixed;
    right: 0;
    bottom: 8vh;
    cursor: pointer;
    z-index: 999;
}

.btn-top img {
    width: auto;
    height: 60px;
}

/* ---end --- */
/*----------*\
  end footer
\*----------*/
/* $Mobile
--------------------------------------------------------------------------------------*/
/* --- Large devices (tablets) (phones)--- */
@media( max-width: 1199.98px ) {
    html,body {
        width: 100%;
        font-size: 16px;
        -webkit-text-size-adjust: none;
    }

    input,textarea,button,select,option {
        border: 0;
        margin: 0;
        outline: none;
        padding: 0;
        font-size: .9rem;
    }

    h1 {
        font-size: 1.4em;
    }

    h2 {
        font-size: 1.2em;
    }

    h3 {
        font-size: 1em;
    }

    h4 {
        font-size: 0.8em;
    }

    .box {
        margin: 16px 0;
    }

    .row {
        display: block;
    }

    .col-1-2 {
        width: 100%;
        padding: 0.6em 0;
    }

    .col-1-3 {
        width: 100%;
        padding: 0.2em;
    }

    .col-1-4 {
        width: calc(100%/2);
        padding: 0.2em;
    }

    .center_block {
        margin: 40px 0;
    }

    /*----------*\
   m-header
\*----------*/
    .hide {
        transform: none;
    }

    .header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: 60px;
        width: 100%;
        margin: 0 auto;
        max-width: 1200px;
    }

    .header-container {
        padding: 0 16px;
    }

    .header-container .logo {
        height: 20px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }

    nav {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 0;
        overflow: hidden;
        transition: height 1s;
        transform: translateY(0);
        background: rgba(0,0,0,0.8);
        margin-top: 60px;
    }

    .mainMenu {
        min-height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding: 8px 0 32px 0;
        width: 100%;
        text-align: center;
        background-color: #fff;
        position: absolute;
        left: 0;
    }

    .mainMenu > li {
        margin-bottom: 1em;
        padding: 0;
    }

    .mainMenu > li > a {
        width: 100%;
        font-weight: 900;
        color: #8081ff;
        padding: 8px 0;
        border-bottom: 1px solid #8081ff;
    }

    .mainMenu > li > a.m-btn {
        border-radius: 8px;
        border: solid 1px #8081ff;
        color: #8081ff;
        width: 100%;
        padding: 1em 0;
    }

    .mainMenu > li > a:hover {
        color: #8081ff;
    }

    .mainMenu > li > a:after {
        content: '';
        width: 0;
        height: 2px;
        background: rgba(0,0,0,0);
        display: block;
        transform: translateY(0px);
        transition: all .6s;
    }

    .mainMenu > li:hover .subMenu {
        transition: all .4s cubic-bezier(.23,1,.32,1);
        height: auto;
    }

    .otherMenu {
        display: none;
    }

    .m-otherMenu {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        margin: 0 ;
    }

    .m-otherMenu .account {
        display: flex;
        align-items: center;
    }

    .subMenu {
        position: relative;
        transform: translateY(0);
        height: auto;
        border-radius: 0 0 8px 8px;
        padding: 0px;
        background: rgba(0,0,0,0);
    }

    .subMenu ul {
        flex-direction: column;
        margin: 0;
    }

    .subMenu ul > li {
        margin: 0;
    }

    .subMenu ul > li a {
        display: flex;
        justify-content: center;
        color: #000;
    }

    .a-center a,.a-card a {
        font-size: .5em
    }

    .a-center a:before,.a-card a:before {
        font-size: 3.6em;
        margin: 8px 0 8px 16px;
    }

    .m-login {
        display: flex;
        justify-content: center;
        margin-bottom: 1em;
    }

    .m-login li {
        padding: 4px;
    }

    .navToggle {
        width: 40px;
    }

    .navToggle span ,.navToggle span:before ,.navToggle span:after {
        display: block;
        width: 100%;
        background: #000;
        height: 2px;
        border-radius: 2px;
    }

    .navToggle span {
        position: relative;
        top: 50%;
        transform: translateY(-50%);
    }

    .navToggle span:before ,.navToggle span:after {
        content: '';
        position: absolute;
    }

    .navToggle span:before {
        top: -8px;
    }

    .navToggle span:after {
        bottom: -8px;
    }

    .navToggle.navToggle01 span {
        transition: background .3s .6s;
    }

    .navToggle.navToggle01 span:before {
        transition: transform .1s .3s ,top .3s .7s;
    }

    .navToggle.navToggle01 span:after {
        transition: transform .1s .3s ,bottom .3s .7s;
    }

    .navCheck:checked ~ .navToggle.navToggle01 span {
        background: none;
        transition: background .3s .6s;
    }

    .navCheck:checked ~ .navToggle.navToggle01 span:before {
        top: 0;
        transform: rotate(135deg);
        transition: top .2s .1s,transform .2s .6s;
    }

    .navCheck:checked ~ .navToggle.navToggle01 span:after {
        bottom: 0;
        transform: rotate(225deg);
        transition: bottom .2s .1s,transform .2s .6s;
    }

    .navCheck:checked ~ nav {
        height: calc(100vh - 60px);
        overflow: auto;
        width: 100%;
        z-index: 999;
    }

    /*----------*\
 end m-header
\*----------*/
    .back {
        font-size: 1.4em;
    }

    .back_text {
        display: none;
    }

    .card_tab {
        padding: 12px 4px;
    }

    .event_tab_block {
        flex-direction: column;
    }

    .event_tab {
        width: 100%;
        display: block;
        padding: 8px 0;
        border-radius: 8px;
        text-decoration: none;
        text-align: center;
        margin: 4px 0;
        border: 1px solid #8081ff;
        color: #8081ff;
    }

    .event_tab:hover,.event_tab.current {
        background: #8081ff;
        border: 1px solid #8081ff;
        color: #fff;
    }

    .event_right {
        margin-left: 0;
    }

    .barcode {
        width: 100%;
        padding-top: 52%;
    }

    .binding .btn-style {
        width: 100%;
        margin: 8px 40px;
    }

    /*----------*\
    m-popup
\*----------*/
    .notice {
        display: inline-flex;
        flex-direction: column;
        padding: 16px 0 16px 16px;
        box-sizing: border-box;
    }

    .n-title {
        display: inline-block;
        padding: 0;
        margin: 0 auto;
        font-size: 1.8em;
    }

    .n-description {
        padding: 8px;
        line-height: 1.8em;
        text-align: justify;
        font-size: 1em;
        color: #fff;
    }

    .popup {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(0,0,0,.8);
        z-index: 100;
        display: flex;
        justify-content: center;
        align-items: center;
        transform: scale(0);
        transition: all .2s;
        transition-timing-function: cubic-bezier(.41,.2,.83,.67);
    }

    .popup.on {
        transform: scale(1);
        transition: all .4s;
        transition-timing-function: cubic-bezier(.19,1.27,.64,1.08);
    }

    .popup .notic_block {
        position: relative;
        width: 90vw;
        max-width: 800px;
        padding: 4px;
    }

    .popup .notic_block .close:before,.popup .close:after {
        position: absolute;
        content: '';
        width: 80%;
        height: 2px;
        display: block;
        background: #8081ff;
        top: 50%;
        left: 10%;
        transform: rotate(-45deg);
    }

    .popup .notic_block .close:after {
        transform: rotate(45deg);
    }

    .popup .code_block .close:before,.popup .close:after {
        position: absolute;
        content: '';
        width: 80%;
        height: 2px;
        display: block;
        background: #8081ff;
        top: 50%;
        left: 10%;
        transform: rotate(-45deg);
    }

    .popup .code_block .close:after {
        transform: rotate(45deg);
    }

    .popup .code_block .close {
        top: 105%;
        left: 44%;
        transform: translate(0%,0%);
    }

    /*----------*\
 end m-popup
\*----------*/
    /*----------*\
   m-footer
\*----------*/
    .footer {
        margin: 0;
    }

    .footer_global {
        display: none;
    }

    .m-footer_global {
        width: 100%;
        display: inline-block;
        margin: 0 auto;
    }

    .info_block {
        width: 100%;
        border: none;
    }

    .info_block h3 {
        text-align: center;
        padding: 4px 0;
    }

    .info_block ol li {
        padding-left: 0;
        line-height: 1.5em;
    }

    .copyright_block {
        width: 100%;
        padding: 0;
    }

    .serve-menu {
        width: 100%;
        display: inline-flex;
    }

    .serve-menu .btn {
        /* background-color: #8081ff; */
        width: calc(100%/2);
        padding: 8px 22px;
        margin: 4px;
        border-radius: 8px;
        border: 1px solid #000;
        text-align: center;
        color: #000;
        font-weight: 900;
    }

    .info-menu {
        width: 100%;
        flex-wrap: wrap;
        display: inline-flex;
        justify-content: center;
    }

    .info-menu li {
        padding: 0 4px 12px 0;
        font-size: 14px;
    }

    .info-item {
        display: inline-block;
        padding: 20px 8px;
        font-weight: 900;
    }

    .copyright {
        display: none;
    }

    .m-copyright {
        width: 100%;
        display: inline-block;
        font-size: 10px;
        text-align: center;
        line-height: 1.8em;
    }

    /* TOP-btn */
    .btn-top {
        position: fixed;
        right: 0;
        bottom: 4vh;
        cursor: pointer;
        z-index: 999;
    }

    .btn-top img {
        width: auto;
        height: 40px;
    }

    /* ---end TOP-btn--- */
    /*----------*\
  end m-footer
\*----------*/
}

/* -----------------------iphone 5---------------------------- */
@media( max-width: 325px ) {
    /* font */ .page_title h1 {
        font-size: 1.2em;
    }

    /* 選單右上icon */
    .a-center a:before, .a-card a:before {
        margin: 8px 0 8px 8px;
    }

    /* 表格共用設定 */
    input,textarea,select,option {
        border: 0;
        margin: 0;
        outline: none;
        padding: 0;
        font-size: .6rem;
    }

    button {
        font-size: 1em;
    }

    .input_container {
        padding: 0 16px;
    }

    /* 按鈕 */
    .btn-box {
        flex-direction: column;
    }

    .btn-style {
        width: 100%;
        margin: 4px 0;
        font-size: 1em
    }
}
