/*CatalogueLL*/
@font-face{
    font-family: 'CatalogueLL';
    src: url('../fonts/CatalogueLL-Light.woff2') format('woff2');
    font-weight: 200;
    font-style: normal;
}
@font-face{
    font-family: 'CatalogueLL';
    src: url('../fonts/CatalogueLL-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}
@font-face{
    font-family: 'CatalogueLL';
    src: url('../fonts/CatalogueLL-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}
/*american-grotesk*/
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-thin.woff2') format('woff2');
    font-weight: 100;
    font-style: normal;
}
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-light.woff2') format('woff2');
    font-weight: 200;
    font-style: normal;
}
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
}
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-heavy.woff2') format('woff2');
    font-weight: 800;
    font-style: normal;
}
@font-face{
    font-family: 'american-grotesk';
    src: url('../fonts/american-grotesk-black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
}
/*方正粗黑宋體*/
@font-face{
    font-family: 'founder-bold-black-Song-dynasty';
    src: url('../fonts/founder-bold-black-Song-dynasty.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

*{
    margin: 0;
    padding: 0;
    font-family: "Noto Sans TC", sans-serif;
    letter-spacing: 1px;
}

.wrapper{
    width: 100%;
    margin: auto;
    position: relative;
}
/*通用標題與內文*/
.title{
    width: 100%;
    margin: 100px auto 30px;
    text-align: left;
}
/*標題置中版本*/
.title.center{
    text-align: center;
}
.title h2{
    font-size: 36px;
    line-height: 46px;
    font-weight: 700;
}
.title h2 span{
    font-family: "CatalogueLL", sans-serif;
    font-weight: 400;
}
.title h2 span.highlight{
    font-family: "Noto Sans TC", sans-serif;
    color: #ff0000;
    font-weight: 700;
}
/*主區塊*/
main{
    max-width: 1200px;
    width: 100%;
    margin: 30px auto;
}
main p{
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
}
main p span{
    font-weight: 600;
}
input{
    display: none;
}

/*logo分割線*/
.logo-hr{
    max-width: 1280px;
    width: 100%;
    margin: 70px auto 250px;
    position: relative;
}
.logo-hr img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 120px;
    margin: auto;
    z-index: 5;
    background-color: #fff;
    padding: 10px;
}
.logo-hr span{
    position: absolute;
    top: 60px;
    width: 100%;
    height: 2px;
    border-radius: 10px;
    background-color: #000000;
}

header{
    width: 100%;
}
/*logo nav*/
header .logo{
    width: 100%;
    padding: 5px 0;
    background-color: #fff;
    display: flex;
    justify-content: center;
}
header .logo a{
    max-width: 250px;
    margin: auto;
    text-align: center;
}
header .logo a img{
    width: 100%;
}
/*banner*/
header .banner{
    width: 100%;
    margin: auto;
}
header .banner .content{
    position: relative;
    background: url(../image/web-banner.jpg);
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    width: 100%;
    height: 1080px;
    display: flex;
    justify-content: center;
    align-items: center;
}
header .banner .content .item{
    margin: 400px auto 0;
    text-align: center;
}
header .banner .content .item h1{
    font-family: "founder-bold-black-Song-dynasty", sans-serif;
    color: #fff;
    font-size: 65px;
    font-weight: 500;
}
header .banner .content .item h1 span{
    font-family: "Noto Sans TC", sans-serif;
    font-size: 0.8em;
    font-weight: 400;
}
header .banner .content .sub-logo{
    position: absolute;
    top: 50px;
    right: 50px;
    width: 120px;
}
nav{
    width: 100%;
    position: sticky;
    top: 0;
    margin: auto;
    padding: 20px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    z-index: 999;
}
nav a{
    color: #000000;
    border: 1px solid #000000;
    padding: 7px 100px;
    margin: 0 15px;
    font-size: 26px;
    font-weight: 600;
    text-decoration: none;
    transition: 0.4s;
}
nav a:hover{
    background-color: #ce780f;
    border: 1px solid #ce780f;
    color: #ffffff;
    transition: 0.4s;
}

/*版型1 2欄圖文介紹*/
.intro{
    width: 100%;
    margin: auto;
}
.intro .content{
    display: flex;
    justify-content: center;
    align-items: center;
}
.intro .content .textbox{
    width: 90%;
    margin: auto 10px;
}
.textbox-m{
    display: none;
}
.txt-deco{
    font-weight: 400;
}
.intro .content .textbox .title{
    margin: 0 0 80px 0;
}
.intro .content .textbox p{
    width: 95%;
}
.intro .content .imgbox{
    width: 90%;
    margin: auto 10px;
}
.imgbox2{
    display: none;
}
.intro .content .imgbox img{
    width: 100%;
}
.txt-deco-m{
    display: none;
}

/*版型2 商品牆*/
.product-wall{
    width: 100%;
    margin: 100px auto 0;
}
.product-wall-m{
    display: none;
}
.product-wall .content{
    width: 100%;
    margin: auto;
    display: grid;
    grid-template-rows: repeat(2 , 1fr);
    grid-template-columns: repeat(2 , 1fr);
    gap: 10px;
}
.product-wall .content .item:nth-child(1){
    width: 100%;
    grid-row: 1/3;
    grid-column: 1/2;
}
.product-wall .content .item:nth-child(2){
    width: 55%;
    grid-row: 1/2;
    grid-column: 2/3;
    margin: auto;
}
.product-wall .content .item:nth-child(3){
    width: 55%;
    grid-row: 2/3;
    grid-column: 2/3;
    margin: auto;
}
.product-wall .content .item img{
    width: 100%;
}
.product-wall .content .item p{
    text-align: center;
    margin: 10px 0 0; 
}

/*如果商品只有一個版本*/
.product-wall.one .content .item:nth-child(2){
    width: 55%;
    grid-row: 1/3;
    grid-column: 2/3;
    margin: auto;
}

/*深底白字功能*/
.product-wall .content .item .imgbox{
    position: relative;
}
/*與modal區塊通用設定*/
.bg{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0 , 0 , 0 , 0.5);
    visibility: hidden;
    opacity: 0;
    transition: 0.4s;
    display: flex;
    justify-content: center;
    align-items: center;
}
.imgbox:hover .bg{
    visibility: visible;
    opacity: 1;
    transition: 0.4s;
}
.product-wall .content .item .imgbox a{
    color: #fff;
    font-size: 22px;
    font-weight: 400;
    text-align: center;
    text-decoration: none;
    transition: 0.4s;
}
.product-wall .content .item .imgbox .bg a:hover{
    color: #ffae4c;
    transition: 0.4s;
}
/*手機版用，電腦關閉*/
.ctrl-m .ctrl-icon{
    display: none;
}

/*版型3 上下圖文介紹*/
.intro2{
    width: 100%;
    margin: auto;
}
.intro2 .content{
    width: 100%;
}
.intro2 .content h3{
    color: #000000;
    font-size: 26px;
    font-weight: 600;
    margin: auto auto 30px auto;
}
.intro2 .content article{
    text-align: left;
    margin: 100px auto;
}
.intro2 .content .item{
    display: flex;
    justify-content: center;
    align-items: center;
}
.intro2 .content .item3{
    display: none;
}
.intro2 .content .item .textbox{
    width: 90%;
    margin: auto 10px;
}
.intro2 .content .item .textbox p{
    width: 95%;
}
.intro2 .content .item .imgbox{
    width: 90%;
    margin: auto 10px;
}
.intro2 .content .item .imgbox img{
    width: 100%;
}

/*版型4 輪播牆*/
.diary{
    width: 100%;
    margin: auto;
}
.diary iframe{
    width: 100%;
    height: 650px;
    margin: 50px auto;
}

/*版型5 會員專屬商品區*/
.member-shop{
    width: 100%;
    margin: auto;
}
.member-shop .content{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.member-shop .content .imgbox{
    width: 40%;
    margin: auto 20px auto 0;
}
.member-shop .content .imgbox img{
    width: 100%;
}
.member-shop .content .textbox{
    width: 60%;
    margin: auto 20px auto 60px;
}
.member-shop .content .textbox h3{
    font-size: 36px;
    font-weight: 700;
    line-height: 46px;
    margin: auto auto 40px auto;
}
.member-shop .content .textbox h3.special{
    font-size: 26px;
    line-height: 36px;
}
.member-shop .content .textbox h3 span{
    color: #ff0000;
}
.member-shop .content .textbox h4{
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    margin: auto auto 40px auto;
}
.member-shop .content .textbox button{
    color: #fff;
    background-color: #183528;
    margin: 10px auto;
    padding: 5px 20px;
    border: 0;
    font-size: 22px;
    font-weight: 400;
    transition: 0.4s;
}
.member-shop .content .textbox button:hover{
    background-color: #ce780f;
    transition: 0.4s;
}

/*modal setting*/
.modal .modal-header{
    border: none;
}
.modal .modal-title{
    font-size: 28px !important;
    text-align: center;
    margin: auto;
    transform: translateX(70px);
    font-weight: 700;
}
.modal#product2 .modal-title , .modal#product3 .modal-title , .modal#product5 .modal-title{
    transform: translateX(30px);
}
.modal .modal-title span{
    color: #ff0000;
}
/*modal 產品排列1*/
.modal .modal-body .product{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.modal .modal-body .product .imgbox{
    position: relative;
    margin: 10px;
    width: 30%;
}
.modal .modal-body .product .imgbox img{
    width: 100%;
}
.modal .modal-body .product .imgbox .bg{
    opacity: 1;
    visibility: visible;
}
.modal .modal-body .product .imgbox .bg a{
    position: absolute;
    top: 120px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    text-decoration: none;
    font-size: 18px;
    font-weight: 400;
    color: #fff;  
    transition: 0.4s;  
}
.modal .modal-body .product .imgbox .bg a:hover{
    color: #ffae4c;
    transition: 0.4s;
}
/*modal 產品排列2*/
.modal .modal-body .product2{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.modal .modal-body .product2 .imgbox{
    margin: auto;
    width: 50%;
}
.modal .modal-body .product2 .imgbox img{
    width: 100%;
}
.modal .modal-body .product2 .imgbox a{
    display: inline-block;
    width: 100%;
    padding: 5px 0;
    margin: 20px auto 0;
    text-align: center;
    text-decoration: none;
    font-size: 20px;
    font-weight: 400;
    color: #000000; 
    border: 1px solid #000000; 
    transition: 0.4s;  
}
.modal .modal-body .product2 .imgbox a:hover{
    color: #ffffff;
    background-color: #ce780f;
    border: 1px solid #ce780f;
    transition: 0.4s;
}
.modal .modal-body .product2 .imgbox p{
    width: 100%;
    margin: 50px auto;
    font-weight: 600;
    text-align: center;
    font-size: 18px;
}
.modal .modal-body .item{
    margin: 30px auto;
}
.modal .modal-body .item p{
    width: 95%;
    margin: auto;
    font-weight: 600;
    font-size: 18px;
}

.fixicon{
    width: 150px;
    position: fixed;
    bottom: 50px;
    right: 0;
    z-index: 1000;
}
.fixicon img{
    width: 100%;
    cursor: pointer;
    transition: 0.4s;
}
.fixicon img:hover{
    transform: scale(1.1);
    transition: 0.4s;
}
ol , ul {
    padding: 0 50px !important;
}
ul li , ol li{
    font-size: 18px;
    font-weight: 600;
}
ol li ul{
    list-style: disc;
    padding: 0px 0px 0  20px!important;
}
li a{
    color: #001eff;
    text-decoration: none;
}
.tab{
    display: block;
    margin: 30px 0;
}

footer{
    padding: 50px 0;
}

@media(max-width: 550px){
    /*通用標題-RWD*/
    .title{
        width: 100%;
        margin: 80px auto 30px;
    }
    .title h2{
        font-size: 20px;
        line-height: 28px;
    }
    main {
        width: 90%;
    }
    main p{
        font-size: 16px;
        line-height: 22px;
    }
    nav{
        padding: 20px 10px;
    }
    nav a{
        padding: 5px;
        margin: auto 5px;
        font-size: 16px;
    }

    /* 右邊浮標 */
    .fixicon{
        width: 100px;
    }

    /*logo nav-RWD*/
    header .logo a{
        max-width: 180px;
    }
    header .banner .content{
        height: 460px;
    }
    header .banner .content .item{
        margin: 80px auto 0;
    }
    header .banner .content .item h1{
        font-size: 26px;
    }
    header .banner .content .sub-logo {
        top: 20px;
        right: 20px;
        width: 56px;
    }


    /*版型2 商品牆-RWD*/
    .product-wall .content .item:nth-child(1){
        width: 100%;
        grid-row: 1/2;
        grid-column: 1/3;
    }
    .product-wall .content .item:nth-child(2){
        width: 100%;
        grid-row: 2/3;
        grid-column: 1/2;
    }
    .product-wall .content .item:nth-child(3){
        width: 100%;
    }

    /*如果商品只有一個版本*/
    .product-wall.one .content .item:nth-child(2){
        width: 55%;
        grid-row: 2/3;
        grid-column: 1/3;
    }


   /* 版型1 2欄圖文介紹 */
    .intro .content{
        flex-wrap: wrap;
    }
    .intro .content .textbox{
        width: 100%;
        margin: auto;
    }
    .intro .content .imgbox{
        width: 100%;
        margin: auto;
    }
    .intro .content .textbox p{
        width: 100%;
    }
    .intro .content .textbox .title {
        margin: 0 0 20px 0;
    }
    .txt-deco{
        display: none;
    }
    .textbox-m{
        display: inline-block;
    }

    /*logo分割線*/
    .logo-hr{
        margin: 30px auto 150px;
    }
    .logo-hr img{
        width: 70px;
    }
    .logo-hr span{
        top: 30px;
    }

   /* 版型2 商品牆 */
   .product-wall-deco{
        display: none;
   }
   .product-wall-m{
        display: block;
        margin: 100px auto 20px;
   }
    .product-wall .content{
        grid-template-rows: repeat(1, 1fr);
    }
    .product-wall .imgbox,.product-wall .imgbox img{
        width: 100%;
        margin: auto;
    }
    .product-wall-m .content .title {
        width: 100%;
        margin: 20px auto;
    }
    .product-wall .content .item p{
        font-size: 14px;
    }

    /*手機版專用展開功能*/
    .product-wall .content .item .imgbox input:checked + .bg{
        visibility: visible;
        opacity: 1;
        transition: 0.4s;
    }
    .product-wall .content .item .imgbox .bg a{
        font-size: 18px;
    }
    
    /*通用按鈕設定*/
    .ctrl-m{
        width: 100%;
        margin: 10px auto;
        border: none;
        padding: 3px 0;
        background-color: #fff;
        text-align: center;
        box-shadow: 0 0 7px #b2b2b2;
    }
    .ctrl-m .ctrl-icon{
        display: initial;
        width: 50px;
        transform: rotate(0deg);
        transition: 0.4s;
    }
     .ctrl-m.rotated .ctrl-icon{
        transform: rotate(45deg);
        transition: 0.4s;
    }
    

    /* 版型3 上下圖文介紹 */
    .intro2 .content .item .textbox{
        width: 100%;
        margin: auto;
    }
    .intro2 .content h3{
        font-size: 18px;
    }
    .intro2 .content .item .textbox p{
        width: 100%;
    }
    .intro2 .content .item .imgbox{
        width: 100%;
        margin: auto;
    }
    .intro2 .content article{
        margin: 20px auto 30px;
    }
    .intro2 .content .item{
        flex-wrap: wrap;
        flex-direction: column-reverse;
        gap: 36px;
    }
    .intro2 .content .item2{
        flex-direction: column;
    }
    .intro2 .content .item3{
        display: flex;
        flex-direction: column;
        margin: 20px 0 0;
    }
    .imgbox2{
        display: block;
    }
    .word-pc{
        display: none;
    }

    /*版型4 輪播牆*/
    .diary iframe{
        height: 260px;
        margin: 50px auto 0;
    }

    /* 版型5 會員專屬商品區 */
    .member-shop .content{
        flex-wrap: wrap;
    }
    .member-shop .content .imgbox,.member-shop .content .textbox{
        width: 100%;
        margin: auto;
    }
    .member-shop .content .textbox h3{
        font-size: 20px;
        margin: 20px auto;
        line-height: 28px;
    }
    .member-shop .content .textbox h3.special{
        font-size: 18px;
        line-height: 28px;
    }
    .member-shop .content .textbox h4{
        font-size: 18px;
        margin: auto auto 20px auto;
    }
    .member-shop .content .textbox button{
        width: 100%;
        font-size: 16px;
        padding: 5px;
    }
    .br{
        display: none;
    }
    
    /* Modal */
    .modal .modal-title {
        font-size: 20px !important;
        line-height: 28px !important;
        transform: translateX(0px);
    }
    .modal#product2 .modal-title, .modal#product3 .modal-title, .modal#product5 .modal-title{
        transform: translateX(0px);
    }
    .modal .modal-body .item p {
        font-size: 16px;
    }
    .modal .modal-body .product{
        gap: 10px;
    }
    .modal .modal-body .product .imgbox .bg a{
        top: 70px;
        font-size: 14px;
    }
    .modal .modal-body .product .imgbox{
        width: 40%;
        margin: 0;
    }
    .modal .modal-body .product2 .imgbox{
        width: 90%;
    }
    .modal .modal-body .product2 .imgbox a{
        font-size: 18px;
    }
    .br{
        display: block;
    }
    ol, ul {
        padding: 0 20px !important;
    }
    ul li,ol li{
        font-size: 16px !important;
    }
}


/*back to top*/
/* #btn-back-to-top{
    position: fixed;
    bottom: 30px;
    right: 230px;
    font-size: 36px;
    display: none;
    border: 0px;
    color: #000000;
    background: none;
    opacity: 0.5;
    transition: 0.6s;
    z-index: 99;
}
#btn-back-to-top:hover{
    opacity: 1;
    transition: 0.6s;
    transform: translateY(-5px);
} */

