@charset "utf-8";

/*
關於CSS設定說明
CSS屬性是會繼承的，而且還是由上往下繼承。
同樣元素設定16px 後 12px 再 15px 最後會以最後設定的15px為準
但是有兩種情況除外:
1.絕對路徑命名. 如: .xx .yy .zz p {設定值;}
2.important.  如: .xx p {設定值 !important;}

CSS3選取器語法 :nth-child(n) 

*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@200..900&display=swap');

body {
    font-family: "Noto Serif TC", serif;
}

/* 開場動畫 */
.bannerindex::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: transparent;
    backdrop-filter: grayscale(0) blur(7px);
    z-index: 1000000000000010000000;
    animation: action-bg 4.3s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    pointer-events: none;
}

.bannerindex::after {
    content: "";
    display: block;
    background-image: url(https://pic03.eapple.com.tw/elfgreat/logo.png );
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 5%;
    height: 0;
    padding-bottom: 100%;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 100000000000001000000000;
    transform: translate(-50%, -50%);
    pointer-events: none;
    animation: action-logo 3s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
}


.swiper-wrapper {
    transform: scale(0.8);
    animation: action-banner 3s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
}

@keyframes action-bg {
    0% {
        backdrop-filter: grayscale(0) blur(7px);
    }

    100% {
        backdrop-filter: grayscale(0) blur(0px);
    }
}


@keyframes action-banner {
    0% {
        transform: scale(1.2);
    }

    100% {
        transform: scale(1);
    }

}

@keyframes action-logo {
    0% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}


@media screen and (max-width: 1200px) {
    .bannerindex::after {
        width: 7%;
        top: 40%;
    }
}

@media screen and (max-width: 1024px) {
    .bannerindex::after {
        width: 7%;
        top: 30%;
    }
}


@media screen and (max-width: 768px) {
    .bannerindex::after {
        width: 10%;
        top: 22%;
    }
}


@media screen and (max-width: 500px) {
    .bannerindex::after {
        width: 15%;
        top: 13%;
    }
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/*反白顏色*/
::-moz-selection {
    background-color: #ebe5d5;
    color: #fff;
}

::selection {
    background-color: #ebe5d5;
    color: #fff;
}

body {
    overflow: overlay;
    overflow-x: hidden;
}


/* ★★★滾動條 ↓↓↓↓↓↓↓↓↓↓↓↓ */
/* 捲軸寬度及高度 */
::-webkit-scrollbar {
    width: 3px;
    height: 0px;
}

/* 滑桿顏色 */
::-webkit-scrollbar-thumb {
    background: #281900;
}

/* 軌道背景底色 */
::-webkit-scrollbar-track {
    background: #ebe5d5;
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/* 頁面的麵包屑 首頁/頁面名稱/ */
.path {
    display: none;
}

#page {
    background-color: #fff;
    position: relative;
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/*電腦LOGO
.nav-brand {}
*/


.pageIndex .nav-brand {
    opacity: 0;
    transition: all 0.5s cubic-bezier(0.73, 0.08, 0.11, 0.99);
    animation: logo_down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 3.5s;
}

@keyframes logo_down {
    0% {
        opacity: 0;
        top: -100px;
    }

    100% {
        opacity: 1;
        top: 0;
    }
}


/*手機LOGO
.nav-brand-m {}
*/


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/*因為偽元素，所以要加的*/
.swiper-slide:before,
.swiper-slide:after {
    content: "";
    position: absolute;
    z-index: 999;
    pointer-events: none;
}

/*before+after依樣要寫的內容拆出來寫一起，要寫在個別下方也可以*/
/*第一張大圖的偽元素*/


.pageIndex .swiper-slide:nth-child(1):after {
    background: url(https://pic03.eapple.com.tw/elfgreat/banner_ac1.png);
    background-size: contain;
    background-repeat: no-repeat;
    top: 40%;
    left: 12%;
    width: 65%;
    height: 40% !important;
    background-position: left;
    padding-bottom: calc(100% / 2 * 0.18);
}


/*第二張大圖的偽元素*/

.pageIndex .swiper-slide:nth-child(2):after {
    background: url(https://pic03.eapple.com.tw/elfgreat/banner_ac2.png);
    background-size: contain;
    background-repeat: no-repeat;
    top: 40%;
    left: 12%;
    width: 65%;
    height: 35% !important;
    background-position: left;
    padding-bottom: calc(100% / 2 * 0.18);
}



.pageIndex .swiper-slide.swiper-slide-active:nth-child(1):after {
    animation: slide-top 2s 0.3s both;
}

.pageIndex .swiper-slide.swiper-slide-active:nth-child(2):after {
    animation: slide-left 2s 0.3s both;
}

/*文字出現特效*/
@keyframes slide-left {
    0% {
        -webkit-transform: translateX(-5%);
        /* 一開始的位置 在X-100(最下方)*/
        transform: translateX(-5%);
        opacity: 0;
        /*透明度0*/
    }

    100% {
        -webkit-transform: translateX(0);
        /* 跑到最後終止的位置 在X-0(最上方)*/
        transform: translateX(0);
        opacity: 1;
        /*透明度顯示*/
    }
}

@keyframes slide-top {
    0% {
        -webkit-transform: translateY(-20%);
        /* 一開始的位置 在Y-100(最下方)*/
        transform: translateY(-20%);
        opacity: 0;
        /*透明度0*/
    }

    100% {
        -webkit-transform: translateY(0);
        /* 跑到最後終止的位置 在Y-0(最上方)*/
        transform: translateY(0);
        opacity: 1;
        /*透明度顯示*/
    }
}

/*上下浮動*/
@keyframes jump {
    0% {
        -webkit-transform: translateY(5%);
        transform: translateY(5%);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes run01 {
    0% {
        background-position-x: 200px;
    }

    100% {
        background-position-x: -30px;
    }
}

.pageIndex #page .swiper-slide img {
    height: auto;
    transform: scale(1);
    animation: banner-img 2.8s forwards;
    animation-delay: 3s;
}

@keyframes banner-img {
    0% {
        opacity: 0.5;
        transform: scale(1.2);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}


/*上方選單解除滑動固定
.header_area.sticky { position:relative;}
*/
.header_area {
    background: linear-gradient(to left, #9f7f60b8, #ede6d800);
    backdrop-filter: blur(10px);
    position: fixed;
    top: 0;
    width: 100%;
    transition: all .5s;
    padding: 0;
}

.header_area.sticky {
    background: transparent;
}

.pageIndex .header_area {
    backdrop-filter: none;
    transition: all .5s;
}

.pageIndex .header_area.sticky {
    backdrop-filter: blur(10px);
}

.header_area.sticky {
    background: linear-gradient(to left, #917058c4, #ede6d800);
}

.main_header_area .container {
    max-width: none;
    width: 95%;
}

.header_area::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgb(117 103 64 / 23%);
    position: absolute;
    bottom: 0;
    opacity: 0;
    transform: scale(0, 1);
    transition: all 0.85s cubic-bezier(0.73, 0.08, 0.11, 0.99);
}

.header_area.sticky::before {
    transform: scale(1);
    opacity: 1;
    transition: all 0.85s cubic-bezier(0.73, 0.08, 0.11, 0.99);
}

.header_area.sticky:hover:before {
    transition: all 0.85s cubic-bezier(0.73, 0.08, 0.11, 0.99);
}


.navigation {
    grid-template-columns: 95px 1fr;
    align-items: center;
    height: 110px;
}

.nav-header {
    grid-row: 1 / span 1;
}

/*上方選單右邊設定 臉書/LINE/電話/信箱
.tp_links a:before {寬高大小設定}
.tp_links a.me_tp_fb {}
.tp_links a.me_tp_fb:before {背景換圖/建議.SVG}
.tp_links a.me_tp_line {}
.tp_links a.me_tp_line:before {背景換圖/建議.SVG}
.tp_links a.me_tp_call {}
.tp_links a.me_tp_call:before {背景換圖/建議.SVG}
.tp_links a.me_tp_mail {}
.tp_links a.me_tp_mail:before {背景換圖/建議.SVG}
*/
.me_tp_features {
    display: none;
}

.info_fix_links {
    display: block !important;
}

.info_fix>span {
    display: none;
}

.info_fix_links a {
    background: #9f7f60ab;
}

.info_fix_links a:hover {
    background: #7b6650;
}

/*第一層*/
.stellarnav {
    width: 96%;
}

.stellarnav>ul>li {
    position: relative;
}


.stellarnav>ul>li>a {
    color: #ffffff;
    transition: color 0.4s ease, letter-spacing 0.4s ease;
    font-size: 16px;
    padding: 0 12px;
    letter-spacing: 0.1rem;
}


.header_area.sticky .stellarnav>ul>li>a {
    color: #e7dbcd;
}

.stellarnav>ul>li:before {
    content: "";
    position: absolute;
    width: 30px;
    height: 30px;
    border-radius: 500px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.4s ease-out;
    background: linear-gradient(0deg, #b7c1ab42, #ffffff00);
    filter: blur(5px);
}

.stellarnav>ul>li:hover:before {
    transform: translate(-50%, -50%) scale(1.5);
}

/*下拉線條箭頭*/
.stellarnav li.has-sub>a:after {
    display: none;
}



.pageIndex .stellarnav>ul>li {
    opacity: 0;
}

.pageIndex .stellarnav>ul>li:nth-of-type(1) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 2.2s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(2) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 2.5s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(3) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 2.8s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(4) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 3s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(5) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 3.2s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(6) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 3.4s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(7) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 3.6s;
}

.pageIndex .stellarnav>ul>li:nth-of-type(8) {
    animation: down 1.5s cubic-bezier(0.73, 0.08, 0.11, 0.99) forwards;
    animation-delay: 3.8s;
}

@keyframes down {
    0% {
        opacity: 0;
        transform: translate(0, -20px);
    }

    100% {
        opacity: 1;
        transform: translate(0, 0);
    }
}


/*第二層*/
.stellarnav ul ul {
    background: #1a1a1aad;
    backdrop-filter: blur(5px);
}

.stellarnav li li {
    border: none;
}

.stellarnav li li>a,
.stellarnav li li.has-sub>a {
    padding: 10px 15px;
    transition: all 0.3s;
    color: #e5e5e5;
}

.stellarnav li li:hover>a,
.stellarnav li li.has-sub:hover>a {
    background: #a67c52;
    padding-left: 18px;
}

/*下拉第二層箭頭
.stellarnav li li.has-sub > a:after {
    position: absolute;
    top: 38%;
    right: 5px;
    height: 7px;
    width: 7px;
    display: block;
    border-style: solid;
    border-width: 0 1px 1px 0;
    border-color: transparent var(--MainCOlor) var(--MainCOlor) transparent;
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
}
*/


/* 商品下拉超過30個變大 */
.stellarnav.desktop li.bigMenu>ul {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    left: 0;
    width: 100%;
    position: fixed;
    padding: 20px;
}

.stellarnav.desktop li.bigMenu ul ul {
    top: 100%;
    left: 0;
    width: 100%;
    background: #efefef;
    height: auto;
    max-height: 300px;
    overflow: auto;
}

.stellarnav.desktop li.bigMenu ul ul li {
    margin: 0;
}

.stellarnav.hasBigMenu li.bigMenu li.has-sub>a:after {
    border-left: 6px solid transparent;
    border-bottom: unset;
    border-right: 6px solid transparent;
    border-top: 6px solid #898989;
    right: 5px;
}

/* 主分類超過30個但次分類直接顯示 
.stellarnav.desktop li.bigMenu>ul{grid-gap: 10px;}
.stellarnav.desktop li.bigMenu li{border: 0;}
.stellarnav.desktop li.bigMenu>ul>li>a{border: 1px solid #ddd;}
.stellarnav.desktop li.bigMenu ul ul{display: block !important; position: relative; top: 0; background: unset; border: 0;}
.stellarnav.desktop li.bigMenu ul ul li{border: 0;}
 主分類超過30個但次分類直接顯示-結束 */

/* 商品下拉超過30個--結束 */


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/* footer */

.footer {
    background: #e7dbcd;
    padding: 60px 0 0;
}

.footer .center {
    width: 90%;
    max-width: 1500px;
}

.footer_logo {
    max-width: 200px;
}

.footer_logo>a {
    display: block;
    margin: 0 auto;
}

.box_link {
    display: none;
}

.footer_info {
    padding-right: 0;
}

.footer_info li {
    padding: 0;
}

.footer_info li:nth-child(1) {
    position: relative;
    display: flex;
    flex-direction: column;
}

.footer_info ul {
    display: grid;
    grid-template-columns: 600px 1fr;
}

/*.footer_info li:nth-child(2){display: none;}*/
.footer_info li p,
.footer_info li p a {
    color: #504023;
    line-height: 2.2;
}

.footer_menu {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.footer_menu a {
    padding: 7px;
    color: #504023;
    letter-spacing: 1px;
    background: #f0f0f000;
    border: 1px #50402354 solid;
    text-align: left;
    margin: 0 6px 10px 0;
}


.footer_menu a:hover {
    background: #9e836e;
    color: #ffffff;
}

.footer_info li p.taxid {
    display: none;
}

/* 名稱修改 */
.footer_info li p.tel:before {
    content: '電 話｜';
}

.footer_info li p.add:before {
    content: '公 司｜';
}

.footer_info li p.tel2:before {
    content: '電 話｜';
}

.footer_info li p.line:before {
    content: 'Line ID |';
}

.footer_info li p.mail:before {
    content: '信 箱｜';
}

.footer_info li p.fax:before {
    content: '傳 真｜';
}

.footer_info li p.add2:before {
    content: '營業時間｜';
}

/* 順序修改 */


.copy,
.copy a {
    color: #281901;
    transition: all .5s;
    font-size: 13px;
    letter-spacing: 1px;
}

.copy {
    padding: 30px 0;
    border-top: 1px solid rgb(81 65 36 / 34%);
    max-width: 1500px;
    width: 90%;
    margin: 40px auto 0;
}

.copy a:hover {
    color: #281900;
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */



/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/*預設購物車版面 產品分類選單在左側 商品內頁詳細介紹下表單更改樣式 by shint at 2025.12.18  */
.product_page .main_part {
    max-width: 1500px;
}

.product_page .show_content,
.product_info_page .show_content {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    width: 100%;
}

ul.page {
    width: 100%;
}

.ProdFilter_Item_Show {
    width: 100%;
}

.Prods_Menulists {
    width: 100%;
    padding: 0;
}

.Prods_Wrap {
    width: calc(100% - 270px);
}

/* 篩選器-左手邊 / 產品分類-上面
.ProdFilter_ { order: 2;}
.Prods_Menulists { order: 1;}
.Prods_Wrap { order: 3;}
.ProdFilter_ { width: 250px; letter-spacing: 1px;}
.ProdFilter_ li { width: 100%;}
.ProdFilter_ li > a { background: #f3f3f3; border: none; border-bottom: 3px #ddd solid;}
.ProdFilter_ dl { position: static; width: 100%; display: block;}
*/

/* 產品分類-左手邊 / 篩選器-上面 */

.ProdFilter_ {
    order: 1;
    margin-bottom: 25px;
}

.Prods_Menulists {
    order: 2;
}

.Prods_Wrap {
    order: 3;
}

.Prods_Menulists {
    width: 250px;
    letter-spacing: 1px;
}

.Prods_Menulists ul {}

.Prods_Menulists>ul>li {
    width: 100%;
    flex-wrap: wrap;
}

.Prods_Menulists ul ul {
    position: static;
    border: none;
}

.Prods_Menulists ul li ul li {}

.Prods_Menulists li.has-sub.open>a {
    background: #f0f0f0;
}

.product_info_page .half_box {
    width: 100%;
    float: none;
    padding-right: 0;
}

.product_info_page .half_box li.btn_blankTop {
    margin-top: 50px;
    justify-content: space-between;
    display: flex;
}

.product_info_page .half_box li.btn_blankTop input {
    width: calc(50% - 10px);
    background-image: none;
    padding: 0;
    text-align: center;
}

@media screen and (max-width: 1300px) {
    .footer_info ul {
        grid-template-columns: inherit;
    }

}

@media screen and (max-width: 1024px) {
    .product_main {
        display: block;
        width: 100%;
    }

    .sidebarBtn {
        display: block;
        width: 100%;
    }
}

@media screen and (max-width: 980px) {}

@media screen and (max-width: 768px) {
    .navigation {
        height: auto;
    }

    .header_area {
        background: #e7dbcd;
        position: relative;
    }

    .nav-header {
        max-width: 100px;
    }

    .Prods_Wrap {
        width: 100%;
        margin-top: 20px;
    }

    .ProdFilter_ {
        width: 100%;
    }

    .Prods_Menulists {
        opacity: 0;
        display: none;
    }

    .stellarnav.mobile.right .close-menu,
    .stellarnav.mobile.left .close-menu {
        background: #e7dbcd;
    }

    .stellarnav.mobile.right>ul,
    .stellarnav.mobile.left>ul {
        background: #130c06b5;
        border-right: 1px #eeeeee73 solid;
    }

    .stellarnav.mobile>ul>li {
        border-bottom: 1px #dddddd00 solid;
    }

    .stellarnav .menu-toggle span.bars span {
        background: #271b01;
        ;
    }

    .stellarnav .menu-toggle:after {
        color: #271b01;
    }
}

@media screen and (max-width: 600px) {}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

/* 2025.12.26 中間放大*/
.BannerHome02 .swiper-slide-active img {
    transform: scale(1);
}

.BannerHome02 .swiperBan02 .swiper-slide img {
    transition: transform 5s ease-out;
    will-change: transform;
    transform: scale(1);
}

.BannerHome02 .swiperBan02 .swiper-slide-active img {
    transform: scale(1.06);
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */




/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*內頁BANNER 設定*/
.banner {}

.banner h5 {}

.banner.banA {}

.banner.banB {}

.banner.banC {}

.banner.banD {}

.banner.banE {}

.banner.banblog {}

.banner.banDesign {
    background-color: #333;
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*文章設定*/
/*一排呈現
.subbox_item { width:100%;}
*/


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*相本分類全版面 ( 限制最寬2000px
.work_page .main_part { max-width:2000px;}
.work_page .show_content { padding:0; width:100%;}
.work_page .show-list .item { width:33%; display:inline-block; float:none; margin:0; padding:0;}
@media screen and (max-width: 768px) {
.work_page .show-list .item { width:49%;}
}
@media screen and (max-width: 570px) {
.work_page .show-list .item { width:100%;}
}
.work_page .show-list .item a { max-width:100%;}
.work_page .show-list .show_pic { height:auto; line-height:0;}
.work_page .show-list .show_pic img { max-width:100%; max-height:100%;}
.work_page .show-list .show_name { position:absolute; top:50%; right:10%; width:80%; height:auto; line-height:160%; font-size: 20px; color: #FFFFFF !important; border: solid 1px #fff; text-align: center; margin: -20px 0 0 -120px; padding:5px 20px; transition:all ease-in .3s; opacity:0;}
.work_page .show-list .item:hover .show_name {opacity:1;}
*/


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*相本列表
.work_info_page .main_part { max-width:2000px;}
.work_info_page .show_content { padding:0; width:100%;}
.work_info_page .subalbum-menu { text-align:center;}
.work_info_page .subalbum-menu h2 { float:none;}
.work_info_page .pic-list .item { margin:0; padding:10px; width:49%; float:none; display:inline-block;}
@media screen and (max-width: 768px) {
.work_info_page .pic-list .item { width:100%;}
}
.work_info_page .pic-list .show_pic { height:auto; line-height:0;}
.work_info_page .pic-list .show_pic img { max-width:100%; max-height:100%;}
.work_info_page .pic-list .item a { max-width:100%; pointer-events: none; cursor: default; } 取消連結被點擊效果
*/


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */





@media screen and (max-width: 768px) {

    /* 開啟手機板下方按鈕所需設定 */
    #bottom_menu {}

    .footer.with_shopping_mode {
        padding: 30px 0 70px;
    }

    #to_top {
        bottom: 60px;
    }
}

@media screen and (max-width: 600px) {}