:root{
    --width-large: 1880px; /* for 1720px */
    --width-container: 1760px; /* for 1560px */
    --width-small: 1660px; /* for 1360px */
    --width-normalsize: 1560px; 
    --width-smallsize: 1360px;
    --width-xxsmall: 1300px; /* for 1000px */
    --body-color: #1F2837;
    --main-color: #EA1E49;
    --body-grey: #727272;
    --body-darkGrey: #2B2B2B;
    --font-regular: 'Metropolis-Regular';/* font-weight: 500 */
    --font: 'Metropolis-Medium';/* font-weight: 500 */
    --font-semibold: 'Metropolis-SemiBold';/* font-weight: 600 */
    --font-bold: 'Metropolis-Bold';/* font-weight: 700 */
    --font-black: 'Metropolis-Black'; /* font-weight: 900 */
}
@font-face {
    font-family: 'Metropolis-Regular';
    src: url("../fonts/regular/Metropolis-Regular.eot");
    src: url("../fonts/regular/Metropolis-Regular.eot") format('embedded-opentype'),
        url("../fonts/regular/Metropolis-Regular.woff2") format('woff2'),
        url("../fonts/regular/Metropolis-Regular.woff") format('woff'),
        url("../fonts/regular/Metropolis-Regular.ttf") format('truetype'),
        url("../fonts/regular/Metropolis-Regular.svg") format('svg');
}

@font-face {
    font-family: 'Metropolis-Medium';
    src: url("../fonts/medium/Metropolis-Medium.eot");
    src: url("../fonts/medium/Metropolis-Medium.eot") format('embedded-opentype'),
         url("../fonts/medium/Metropolis-Medium.otf") format('otf'),
         url("../fonts/medium/Metropolis-Medium.svg") format('svg'),
         url("../fonts/medium/Metropolis-Medium.woff") format('woff'),
         url("../fonts/medium/Metropolis-Medium.woff2") format('woff2'),
         url("../fonts/medium/Metropolis-Medium.ttf") format('truetype');
}
@font-face {
    font-family: 'Metropolis-Bold';
    src: url("../fonts/bold/Metropolis-Bold.eot");
    src: url("../fonts/bold/Metropolis-Bold.eot") format('embedded-opentype'),
         url("../fonts/bold/Metropolis-Bold.otf") format('otf'),
         url("../fonts/bold/Metropolis-Bold.svg") format('svg'),
         url("../fonts/bold/Metropolis-Bold.ttf") format('truetype'),
         url("../fonts/bold/Metropolis-Bold.woff") format('woff'),
         url("../fonts/bold/Metropolis-Bold.woff2") format('woff2');
}
@font-face {
    font-family: 'Metropolis-SemiBold';
    src: url("../fonts/semibold/Metropolis-SemiBold.eot");
    src: url("../fonts/semibold/Metropolis-SemiBold.eot") format('embedded-opentype'),
         url("../fonts/semibold/Metropolis-SemiBold.otf") format('otf'),
         url("../fonts/semibold/Metropolis-SemiBold.svg") format('svg'),
         url("../fonts/semibold/Metropolis-SemiBold.ttf") format('truetype'),
         url("../fonts/semibold/Metropolis-SemiBold.woff") format('woff'),
         url("../fonts/semibold/Metropolis-SemiBold.woff2") format('woff2');
}
@font-face {
    font-family: 'Metropolis-Black';
    src: url("../fonts/black/Metropolis-Black.eot");
    src: url("../fonts/black/Metropolis-Black.eot") format('embedded-opentype'),
         url("../fonts/black/Metropolis-Black.ttf") format('truetype'),
         url("../fonts/black/Metropolis-Black.otf") format('otf'),
         url("../fonts/black/Metropolis-Black.svg") format('svg'),
         url("../fonts/black/Metropolis-Black.woff") format('woff'),
         url("../fonts/black/Metropolis-Black.woff2") format('woff2');
}
/** font **/ 
body table,body table tr th,body table tr td,
body input,body button, body a,body div,
body textarea, body h4,
body select, body h5, body h6,body p {
    font-family: var(--font);
    line-height: 1.6;
}
body strong{
    font-family: var(--font-bold);
    font-weight: 400;
}
body h1,body .et_pb_column h1{
    font-family: var(--font-black);
    font-size: 90px;
    font-weight: 400;
    line-height: 1.1;
    padding-bottom: 0;
    letter-spacing: 4.5px;
    text-transform: uppercase;
    padding-bottom: 0;
}
body h2,body .et_pb_column h2{
    font-family: var(--font-bold);
    font-size: 72px;
    font-weight: 400;
    line-height: 1.3;
    text-transform: uppercase;
    padding-bottom: 0;
}
body h3,body .et_pb_column h3{
    font-family: var(--font-black);
    font-size: 55px;
    font-weight: 400;
    line-height: 1;
    padding-bottom: 0;
}
body h4,body .et_pb_column h4{
    font-family: var(--font-black);
    font-size: 46px;
    font-weight: 400;
    line-height: 1.2;
    padding-bottom: 0;
}
body h5,body .et_pb_column h5{
    font-family: var(--font-bold);
    font-size: 26px;
    font-weight: 400;
    line-height: 1.2;
    padding-bottom: 0;
}
body h6,body .et_pb_column h6{
    font-family: var(--font-bold);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 1px;
    padding-bottom: 0;
}
.et_pb_button{
    font-family: var(--font-bold);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}
body,body p,table td,table th{
    font-size: 18px;
    color: var(--body-color);
}
html:lang(zh-TW) body,html:lang(zh-TW) body table,
html:lang(zh-TW) body table tr th,
html:lang(zh-TW) body table tr td,
html:lang(zh-TW) body input,
html:lang(zh-TW) body button,
html:lang(zh-TW) body a,html:lang(zh-TW) body div,
html:lang(zh-TW) body textarea,html:lang(zh-TW) body h4,
html:lang(zh-TW) body select,html:lang(zh-TW) body h5,
html:lang(zh-TW) body h6,html:lang(zh-TW) body p,
html:lang(zh-TW) .et_pb_button,html:lang(zh-TW) body strong,
html:lang(zh-TW) body h6,html:lang(zh-TW) body .et_pb_column h6,
html:lang(zh-TW) body h5,html:lang(zh-TW) body .et_pb_column h5,
html:lang(zh-TW) body h4,html:lang(zh-TW) body .et_pb_column h4,
html:lang(zh-TW) body h3,html:lang(zh-TW) body .et_pb_column h3,
html:lang(zh-TW) body h2,html:lang(zh-TW) body .et_pb_column h2,
html:lang(zh-TW) body h1,html:lang(zh-TW) body .et_pb_column h1{
    font-family: "Noto Sans TC", sans-serif !important;
}
html:lang(zh-CN) body,html:lang(zh-CN) body table,
html:lang(zh-CN) body table tr th,
html:lang(zh-CN) body table tr td,
html:lang(zh-CN) body input,
html:lang(zh-CN) body button,
html:lang(zh-CN) body a,html:lang(zh-CN) body div,
html:lang(zh-CN) body textarea,html:lang(zh-CN) body h4,
html:lang(zh-CN) body select,html:lang(zh-CN) body h5,
html:lang(zh-CN) body h6,html:lang(zh-CN) body p,
html:lang(zh-CN) .et_pb_button,html:lang(zh-CN) body strong,
html:lang(zh-CN) body h6,html:lang(zh-CN) body .et_pb_column h6,
html:lang(zh-CN) body h5,html:lang(zh-CN) body .et_pb_column h5,
html:lang(zh-CN) body h4,html:lang(zh-CN) body .et_pb_column h4,
html:lang(zh-CN) body h3,html:lang(zh-CN) body .et_pb_column h3,
html:lang(zh-CN) body h2,html:lang(zh-CN) body .et_pb_column h2,
html:lang(zh-CN) body h1,html:lang(zh-CN) body .et_pb_column h1{
    
    font-family: "Noto Sans SC", sans-serif !important; 
}
body .en-text{
    font-family: var(--font) !important;
}
/** end of font **/ 

/** container **/ 
.normal-container,div.et_pb_row,.large-container,.small-container,body .container,
div.small-container.container{
    margin: 0 auto;
    width: 100%;
}
#main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
    max-width: var(--width-large);
    padding: 0 80px;
}
div.et_pb_row,.normal-container,div.et_pb_row.normal-container{
    max-width: var(--width-container);
    padding: 0 100px;
}
.small-container,div.small-container.container,div.et_pb_row.small-container{
    max-width: var(--width-small);
    padding: 0 150px;
}
.xxsmall-container,div.et_pb_row.xxsmall-container{
    max-width: var(--width-xxsmall);
    padding: 0 150px;
}
.fullwidth-container,div.et_pb_row.fullwidth-container{
    max-width: 100% !important;
    padding: 0 !important;
}

/** end of container **/ 

/** padding **/
body div.mt-80{
    margin-top: 80px;
}
body div.mt-60{
    margin-top: 60px;
}
body div.mt-40{
    margin-top: 40px;
}
body div.pt-40{
    padding-top: 40px;
}
body div.pb-40{
    padding-bottom: 40px;
}
body div.pt-60{
    padding-top: 60px;
}
body div.pb-60{
    padding-bottom: 60px;
}
body div.pt-200{
    padding-top: 200px;
}
body div.pb-200,body.single .post{
    padding-bottom: 200px;
}
body div.pt-100{
    padding-top: 100px;
}
body div.pb-100{
    padding-bottom: 100px;
}
body div.pt-120,body:not(.et-tb).single-post #main-content .container.small-container{
    padding-top: 120px;
}
body div.pb-120{
    padding-bottom: 120px;
}
body div.pt-0{
    padding-top: 0;
}
body div.pb-0{
    padding-bottom: 0;
}
body div.py-0{
    padding-top: 0;
    padding-bottom: 0;
} 
/** end of padding **/ 

/** Responsive **/
@media only screen and (max-width: 1600px){
    body h1,body .et_pb_column h1{
        font-size: 70px;
    }
    body h2,body .et_pb_column h2{
        font-size: 56px;
    }
    body h3,body .et_pb_column h3{
        font-size: 42px;
    }
    body h4,body .et_pb_column h4{
        font-size: 36px;
        padding-bottom: 0;
    }
    body h5,body .et_pb_column h5{
        font-size: 24px;
    }
    body h6,body .et_pb_column h6{
        font-size: 20px;
    }
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding-left: 50px;
        padding-right: 50px;
    }
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container{
        padding-left: 80px;
        padding-right: 80px;
    }
    .small-container,div.small-container.container,div.et_pb_row.small-container{
        padding-left: 100px;
        padding-right: 100px;
    }
    body div.pt-200{
        padding-top: 150px;
    }
    body div.pb-200,body.single .post{
        padding-bottom: 150px;
    }
    body div.pt-100{
        padding-top: 80px;
    }
    body div.pb-100{
        padding-bottom: 80px;
    }
    body div.pt-120,body:not(.et-tb).single-post #main-content .container.small-container{
        padding-top: 100px;
    }
    body div.pb-120{
        padding-bottom: 100px;
    }
}
@media only screen and (max-width: 1500px){
    body h1,body .et_pb_column h1{
        font-size: 60px;
    }
    body h2,body .et_pb_column h2{
        font-size: 46px;
    }
    body h3,body .et_pb_column h3{
        font-size: 38px;
    }
    body h4,body .et_pb_column h4{
        font-size: 30px;
        padding-bottom: 0;
    }
    body h5,body .et_pb_column h5{
        font-size: 24px;
    }
    body h6,body .et_pb_column h6{
        font-size: 20px;
    }
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding-left: 40px;
        padding-right: 40px;
    }
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container{
        padding-left: 70px;
        padding-right: 70px;
    }
    .small-container,div.small-container.container,div.et_pb_row.small-container{
        padding-left: 90px;
        padding-right: 90px;
    }
    body div.pt-200{
        padding-top: 120px;
    }
    body div.pb-200,body.single .post{
        padding-bottom: 120px;
    }
    body div.pt-100{
        padding-top: 60px;
    }
    body div.pb-100{
        padding-bottom: 60px;
    }
    body div.pt-120,body:not(.et-tb).single-post #main-content .container.small-container{
        padding-top: 90px;
    }
    body div.pb-120{
        padding-bottom: 90px;
    }
    .xxsmall-container, div.et_pb_row.xxsmall-container {
        padding: 0 120px;
    }
}
@media only screen and (max-width: 1400px){
    body div.pt-200{
        padding-top: 100px;
    }
    body div.pb-200,body.single .post{
        padding-bottom: 100px;
    }
    body div.pt-100{
        padding-top: 60px;
    }
    body div.pb-100{
        padding-bottom: 60px;
    }
    body div.pt-120,body:not(.et-tb).single-post #main-content .container.small-container{
        padding-top: 80px;
    }
    body div.pb-120{
        padding-bottom: 80px;
    }
    body h1,body .et_pb_column h1{
        font-size: 55px;
    }
    body h2,body .et_pb_column h2{
        font-size: 42px;
    }
    body h3,body .et_pb_column h3{
        font-size: 36px;
    }
    body h4,body .et_pb_column h4{
        font-size: 28px;
        padding-bottom: 0;
    }
    body h5,body .et_pb_column h5{
        font-size: 24px;
    }
    body h6,body .et_pb_column h6{
        font-size: 20px;
    }
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container{
        padding-left: 60px;
        padding-right: 60px;
    }
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding-left: 30px;
        padding-right: 30px;
    }
    
    .small-container,div.small-container.container,div.et_pb_row.small-container{
        padding-left: 80px;
        padding-right: 80px;
    }
}
@media only screen and (max-width: 1300px){
    body h1,body .et_pb_column h1{
        font-size: 50px;
    }
    body h2,body .et_pb_column h2{
        font-size: 36px;
    }
    body h3,body .et_pb_column h3{
        font-size: 30px;
    }
    body h4,body .et_pb_column h4{
        font-size: 28px;
        padding-bottom: 0;
    }
    
    body h5,body .et_pb_column h5{
        font-size: 22px;
    }
    body h6,body .et_pb_column h6{
        font-size: 20px;
    }
    .xxsmall-container, div.et_pb_row.xxsmall-container {
        padding: 0 100px;
    }
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container{
        padding-left: 50px;
        padding-right: 50px;
    }
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding-left: 20px;
        padding-right: 20px;
    }
    
    .small-container,div.small-container.container,div.et_pb_row.small-container{
        padding-left: 70px;
        padding-right: 70px;
    }
}
@media only screen and (max-width: 1200px){
    body h1,body .et_pb_column h1{
        font-size: 45px;
    }
    body h2,body .et_pb_column h2{
        font-size: 32px;
    }
    body h3,body .et_pb_column h3{
        font-size: 28px;
    }
    body h4,body .et_pb_column h4{
        font-size: 24px;
        padding-bottom: 0;
    }
    
    body h5,body .et_pb_column h5{
        font-size: 20px;
    }
    body h6,body .et_pb_column h6{
        font-size: 18px;
    }
    body div.mt-80 {
        margin-top: 50px;
    }
    body div.mt-60 {
        margin-top: 30px;
    }
    body div.pt-200{
        padding-top: 80px;
    }
    body div.pb-200,body.single .post{
        padding-bottom: 80px;
    }
    body div.pt-100{
        padding-top: 50px;
    }
    body div.pb-100{
        padding-bottom: 50px;
    }
    body div.pt-120,body:not(.et-tb).single-post #main-content .container.small-container{
        padding-top: 60px;
    }
    body div.pb-120{
        padding-bottom: 60px;
    }
    body, body p, table td, table th {
        font-size: 16px;
    }
    /* .xxsmall-container, div.et_pb_row.xxsmall-container {
        padding: 0 80px;
    } */
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container,
    .small-container,div.small-container.container,div.et_pb_row.small-container,
    .xxsmall-container, div.et_pb_row.xxsmall-container,
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media only screen and (max-width: 980px){
    body h1,body .et_pb_column h1{
        font-size: 32px;
    }
    body h2,body .et_pb_column h2{
        font-size: 30px;
    }
    body h3,body .et_pb_column h3{
        font-size: 28px;
    }
    body h4,body .et_pb_column h4{
        font-size: 22px;
        padding-bottom: 0;
    }
    body, body p, table td, table th {
        font-size: 16px;
    }
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container,
    .small-container,div.et_pb_row.small-container,div.small-container.container,
    .xxsmall-container, div.et_pb_row.xxsmall-container,
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding-left: 30px;
        padding-right: 30px;
    }
    body, body p, table td, table th {
        font-size: 16px;
    }
    body div.mt-60 {
        margin-top: 40px;
    }
    body div.pt-200,body div.pt-100,body div.pt-120,body:not(.et-tb).single-post #main-content .container.small-container{
        padding-top: 40px;
    }
    body div.pb-200,body div.pb-100,body div.pb-120,body.single .post{
        padding-bottom: 40px;
    }
    
}
@media only screen and (max-width: 768px){
    body, body p, table td, table th {
        font-size: 14px;
    }
    body div.pt-60{
        padding-top: 20px;
    }
    body div.pb-60 {
        padding-bottom: 20px;
    }
    body div.mt-60 {
        margin-top: 20px;
      }
    body h2, body .et_pb_column h2 {
        font-size: 32px;
    }
    body h3, body .et_pb_column h3 {
        font-size: 28px;
    }
    div.et_pb_row,.normal-container,div.et_pb_row.normal-container,
    .small-container,div.et_pb_row.small-container,div.small-container.container,
    .xxsmall-container, div.et_pb_row.xxsmall-container,
    #main-header .container,.large-container,header div.et_pb_row,div.et_pb_row.large-container,body div.container{
        padding: 0 20px;
    }
    
}