/* 整體字型 */

:root {
    --fs-md: 21px;
    --fs-lg: 45px;
    --fs-xl: 100px;
    --fs-2xl: 115px;
    --fs-3xl: 165px;
    --fs-4xl: 260px;
}
.hidden {
    display: none;
}
/* @media all and (max-width: 1600px){
    :root {
        --fs-xl: 90px;
        --fs-2xl: 100px;
        --fs-3xl: 145px;
        --fs-4xl: 220px;
    }
} */
/* @media all and (max-width: 1600px){
    :root {
        --fs-xl: 75px;
        --fs-2xl: 85px;
        --fs-3xl: 125px;
        --fs-4xl: 200px;
    }
} */
@media all and (max-width: 1600px){
    :root {
        --fs-lg: 35px;
        --fs-xl: 60px;
        --fs-2xl: 70px;
        --fs-3xl: 100px;
        --fs-4xl: 160px;
    }
}
@media all and (max-width: 1280px){
    :root {
        --fs-lg: 20px;
        --fs-xl: 45px;
        --fs-2xl: 50px;
        --fs-3xl: 75px;
        --fs-4xl: 120px;
    }
    .hidden-md {
        display: none;
    }
    .block-md {
        display: block;
    }
}
@media all and (max-width: 767px){
    :root {
        --fs-md: 18px;
        --fs-lg: 20px;
        --fs-xl: 20px;
        --fs-2xl: 25px;
        --fs-3xl: 50px;
        --fs-4xl: 75px;
    }
    .hidden-sm {
        display: none;
    }
    .block-sm {
        display: block;
    }
}

*{
}

a {
    text-decoration: none;
    color: inherit;
}

/* font */
.serif-bold {
    font-family: 'Noto Serif TC', serif;
    font-weight: 600;
}
.serif-heavy {
    font-family: 'Noto Serif TC', serif;
    font-weight: 900;
}
.terminal {
    font-family: 'termina', Arial, sans-serif;
    font-weight: 700;
}

/* color */
:root {
    --color-green: #008F43;
    --color-green-op-0: #008F4300;
    --color-green-light: #EBF3E1;
    --color-black: #000000;
    --color-white: #FFFFFF;
    --color-gray-100: #FAFAFA;
    --color-gray-200: #F1F1F1;
    --color-gray-300: #ECECEC;
}

.bg-green { background-color: var(--color-green); }
.bg-green-light { background-color: var(--color-green-light); }
.bg-white { background-color: var(--color-white); }
.bg-gray-100 { background-color: var(--color-gray-100); }
.bg-gray-200 { background-color: var(--color-gray-200); }
.bg-gray-300 { background-color: var(--color-gray-300); }


/* 整體背景顏色 */

html,
body{
    margin: 0;
    height: 100%;
    -webkit-overflow-scrolling: touch;
    font-family: 'Noto Sans TC', Microsoft JhengHei, Arial, sans-serif;
    font-size: var(--fs-md);
}

#wrapper{
    width: 100%;
    position: relative;
    min-height: 100%;
    overflow: hidden;
}

#content{
    padding-bottom: 220px;
}

@media all and (max-width:795px){

    #content{
        padding-bottom: 240px;
        
    }

}

@media all and (max-width:767px){

    #content{
        padding-bottom: 260px;
        
    }

}

@media all and (max-width:649px){

    #content{
        padding-bottom: 360px;
        
    }

}

@media all and (max-width:599px){

    #content{
        padding-bottom: 365px;
        
    }

}


/* 整體寬度 */

.container-box{
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
    height: 100%;

}

@media all and (min-width:769px) and (max-width:950px){

    .container-box{
        max-width: 700px;
        width: 100%;

    }

}

/* ipad  768px */
@media all and (max-width: 768px){

    .container-box{
        max-width: 568px;
        width: 100%;

    }

}

@media all and (min-width:650px) and (max-width:767px){

    .container-box{
        max-width: 550px;
        width: 100%;

    }

}

@media all and (min-width:600px) and (max-width:649px){

    .container-box{
        max-width: 500px;
        width: 100%;

    }

}

@media all and (min-width:550px) and (max-width:599px){

    .container-box{
        max-width: 450px;
        width: 100%;

    }

}

@media all and (min-width:500px) and (max-width:549px){

    .container-box{
        max-width: 400px;
        width: 100%;

    }

}

@media all and (min-width:450px) and (max-width:499px){

    .container-box{
        max-width: 350px;
        width: 100%;

    }

}

/* iPhone 12 Pro Max 428px */
@media all and (min-width:428px) and (max-width:449px){

    .container-box{
        max-width: 340px;
        width: 100%;
        
    }

}

/* iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max 414px */
@media all and (min-width:414px) and (max-width:427px){

    .container-box{
        max-width: 330px;
        width: 100%;
        
    }

}

/* iphone 12 & iphone 12 Pro  390px */
@media all and (min-width:390px) and (max-width:413px){

    .container-box{
        max-width: 330px;
        width: 100%;
        
    }

}

/* iphone X  &  iphone 6/7/8  &  iPhone 11 Pro  375px*/
@media all and (min-width:375px) and (max-width:389px){

    .container-box{
        max-width: 300px;
        width: 100%;
       

    }

}

/* iphone 12 mini  360px*/
@media all and (min-width:360px) and (max-width:374px){

    .container-box{
        max-width: 300px;
        width: 100%;
       

    }

}

@media all and (min-width:321px) and (max-width:359px){

    .container-box{
        max-width: 290px;
        width: 100%;
        

    }
}

/* iphone 5/SE 320px*/
@media all and (max-width:320px){

    .container-box{
        max-width: 280px;
        width: 100%;
        

    }
}

/* 320px以下 */
@media all and (max-width:319px){

    .container-box{
        max-width: 250px;
        width: 100%;
        

    }
}


/* 各段落間的間距 - web pad */

section{
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 50px 0;

}

/* 各段落間的間距 - phone ( iPhone 12 Pro Max ) */
@media all and (max-width:428px){

    section{
        padding: 25px 0;

    }

}


/* h1規格 - web pad  */

h1{
    font-size: 60px;
    line-height: 75px;
    margin: 0;
    padding: 0;
    font-weight: bold;

}

/* h1規格 - phone ( iPhone 12 Pro Max ) */

@media all and (max-width: 428px){

    h1{
        font-size: 45px;
        line-height: 60px;
    
    }

}

/* h2規格 - phone ( iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max ) */

@media all and (max-width: 414px){

    h1{
        font-size: 40px;
        line-height: 50px;
    
    }

}


/* h2規格 - web pad  */

h2{
    font-size: 50px;
    line-height: 65px;
    margin: 0;
    padding: 0;

}

/* h2規格 - phone ( iPhone 12 Pro Max ) */

@media all and (max-width: 428px){

    h2{
        font-size: 30px;
        line-height: 40px;
    
    }

}

/* h2規格 - phone ( iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max ) */

@media all and (max-width: 414px){

    h2{
        font-size: 26px;
        line-height: 36px;
    
    }

}

/* h3規格 - web pad  */

h3{
    font-size: 35px;
    line-height: 45px;
    margin: 0;
    padding: 0;
    font-weight: bold;

}

/* h3規格 - phone ( iPhone 12 Pro Max )  */

@media all and (max-width: 428px){

    h3{
        font-size: 30px;
        line-height: 40px;
    
    }

}

/* h3規格 - phone ( iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max  )  */

@media all and (max-width: 414px){

    h3{
        font-size: 26px;
        line-height: 36px;
    
    }

}


/* h4規格 - web pad  */

h4{
    font-size: 21px;
    line-height: 35px;
    margin: 0;
    padding: 0;
    font-weight: bold;

}

/* h4規格 - phone ( iPhone 12 Pro Max )  */

@media all and (max-width: 428px){

    h4{
        font-size: 21px;
        line-height: 35px;
    }

}

/* h4規格 - phone ( iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max  )  */

@media all and (max-width: 414px){

    h4{
        font-size: 21px;
        line-height: 35px;
    }

}


/* p規格 - web pad  */

p{
    font-size: 21px;
    line-height: 30px;
    margin: 0;
    padding: 15px 0;
    font-weight: normal;
    text-align: justify;
    text-justify: inter-ideograph;

}

/* p規格 - phone ( iPhone 12 Pro Max )  */

@media all and (max-width: 428px){

    p{
        font-size: 20px;
        
    }

}

/* p規格 - phone ( iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max  )  */

@media all and (max-width: 414px){

    p{
        font-size: 18px;
        
    }

}


/* p-人物金句 規格 - web pad  */

p.quote-motto{
    font-size: 30px;
    line-height: 35px;
    padding: 0;
   
    
}

/* p-人物金句 規格 - phone  */

@media all and (min-width:429px) and (max-width: 768px){

    p.quote-motto{
        margin-bottom: 20px;
        text-align: left;

    }
    

}

@media all and (max-width: 428px){

    p.quote-motto{
        font-size: 23px;
        line-height: 33px;
        margin-bottom: 20px;
        
    }

}


/* p-人物頭銜 規格 - web pad  */

p.quote-name{
    font-size: 21px;
    line-height: 30px;
    color: #7D7D7D;
    padding: 0;
    text-align: right;
}

/* p-人物頭銜 規格 - phone  */

@media all and (min-width:429px) and (max-width: 768px){

    p.quote-name{
        text-align: center;
    }

}

/* p-人物頭銜 - phone ( iPhone 12 Pro Max )  */

@media all and (max-width: 428px){

    p.quote-name{
        font-size: 18px;
        line-height: 25px;
        text-align: center;
    }

}

/* p-人物頭銜 - phone ( iphone 6/7/8 plus  &  iPhone XS Max  &  iPhone 11 Pro Max  )  */

@media all and (max-width: 414px){

    p.quote-name{
        font-size: 15px;
        line-height: 25px;
        text-align: center;
    }

}


/* p-banner 規格 - web */

p.banner-title, p.banner-content{
    font-size: 21px;
    line-height: 30px;
    padding: 0;
    
}

/* p-banner 規格 - pad  */

@media all and (max-width: 768px) {

    p.banner-title, p.banner-content{
        line-height: 38px;
        text-align: center;
        
    }

}   

/* p-banner 規格 - phone ( iPhone 12 Pro Max )  */

@media all and (max-width: 428px){

    p.banner-title, p.banner-content{
        font-size: 20px;
        
    }

}


/* p-延伸閱讀 規格 - web pad  */

p.further-reading{
    font-size: 16px;
    line-height: 25px;
    color: #7D7D7D;
    padding: 0;
}

/* p-延伸閱讀 規格 - phone ( iPhone 12 Pro Max )  */

@media all and (max-width: 428px){

    p.further-reading{
        font-size: 15px;
    }

}


/* figure-圖說圖片 規格 */

figure {
    display: block;
    max-width: 880px;
    margin: auto;
}

/* figcaption-圖說 規格 - web pad  */

figcaption {
    font-size: 17px;
    line-height: 25px;
    color: #7D7D7D;
    text-align: justify;
    text-justify: inter-ideograph;
    margin-top: 5px;
    
}

/* figcaption-圖說 規格 - phone  */

@media all and (max-width:360px){
    figcaption {
        font-size: 15px;

    }
}

/* figcaption-輪播圖說 規格 */

figcaption.swiper-fig{
    margin-bottom: 10px;
}


/* span-製作群 規格 - web pad phone */

span.producer{
    font-size: 15px;
    line-height: 25px;
    color: #7D7D7D;
    display: block;

}


/* p-footer Coryright 規格 - web pad phone */

p.footer-coryright{
    font-size: 15px;
    line-height: 26px;
    color: #7D7D7D;
    padding: 0;

}

/* 圖片規格 */

img{
    display: block;
    width: 100%;
}
