@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+TC:wght@100..900&family=Noto+Serif+TC:wght@200..900&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');

/* 隱藏內容 */
.me_tp_features,.box_link,.tp_links,.path p,.path p a { display: none;}


/*捲軸*/
::-webkit-scrollbar { width: 7px; }

::-webkit-scrollbar-track-piece,
::-webkit-scrollbar {
  background: var(--ColorMain2);
}

::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #909090;
}

#content_main {margin-top: unset;}
@media screen and (max-width: 1024px){
}  
@media screen and (max-width: 768px){
}         
@media screen and (max-width: 450px) {
}
.edit_part { padding: 0;}

/*首頁BANNER*/
.BannerHome02 { height: auto;}
.BannerHome02 .swiperBan02 { position: static; margin: 0;}
.BannerHome02 .swiperBan02 .swiper-slide img { height: auto;}
/* 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);}
@media (max-width:1400px) { 
	.BannerHome02 { height: auto;}
}
@media (max-width:1024px) { 
	.BannerHome02 { height: auto;}
}
@media (max-width:768px) { 
	.BannerHome02 { height: auto;}
}

/*測邊浮動按鈕*/
.info_fix_links a {  margin-bottom: 11px; background: rgb(68, 127, 116); width: 55px;  height: 55px;  border-radius: 6px;}
.info_fix_links a:hover { background: #414141;}
.info_fix_links img { width: 55%;}
.info_fix {display:none;} 


/*預設解除背景輪播*/

.bannerindex { position:relative; height:auto;}
.swiper-banner { position:static; margin:0; height:auto;} 
/* .swiper-slide img { height:auto;} */
@media screen and (max-width: 768px) {
.bannerindex { padding:0; margin:0;}
}
/* = = = Index banner = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */

@media screen and (max-width: 768px) {
/* 行動裝置相容性調整 大圖調整 */
.swiper-slide img { animation-fill-mode: none; -webkit-animation-fill-mode: none;}
#bottom_menu {display: none;}
}


.main_part {
    max-width: 1500px;
    padding: 140px 20px;
}
@media screen and (max-width: 1024px) {
.main_part {  padding: 50px 20px;  }
}


/* = = = 內頁大圖 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
.banner {  
    background-position: center center !important; 
    background-size: cover !important; 
    height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 100px;
    box-sizing: border-box;
    display: none;
}

.banner h5 { 
    position: relative;
    font-size: clamp(20px, 1.563dvw, 30px);
    font-weight: 400;
    color: #fff;
    margin: 0;
    line-height: 1.2;
    font-family: "Noto Sans TC";
    letter-spacing: 2px;
    opacity: 0;
    transform: translateY(40px);
    animation: bannerText 1.2s ease forwards;
    text-align: center;
}

.banner h5::before {
    display: block;
    font-size: clamp(18px, 1.302dvw, 25px);
    font-family: "Noto Serif TC";
    font-weight: 500;
    letter-spacing: 1px;
    color: #fff;
    margin-bottom: 8px;
    line-height: 1;
}

@keyframes bannerText {
    0%{
        opacity: 0;
        transform: translateY(40px);
    }

    100%{
        opacity: 1;
        transform: translateY(0);
    }
}

.banner.banF h5::before {content: "Product";}
.article_a .banner h5::before {content: "Project";}
.article_b .banner h5::before {content: "News";}


.banner.banA {}
.banner.banB {}
.banner.banC {}
.banner.banD {}
.banner.banE {}
.banner.banF {background: url() no-repeat;}

@media screen and (max-width: 1024px) {
	.banner{  padding-top: 30px;}
}


/*HEADER區塊*/

.header_area { 
    position: fixed; 
    width: 100%; 
    top: 0; 
    left: 0;
    padding: 0; 
    background: #fff; 
    height: 90px;
    transition: background-color .8s cubic-bezier(0.4, 0, 0.2, 1),box-shadow .8s cubic-bezier(0.4, 0, 0.2, 1);
}
.header_area.sticky{ background: #fff;}
.navigation {grid-template-columns: 1fr;}
.main_header_area .container { max-width: 1600px;}



/*第一層*/
.stellarnav > ul { display: flex; justify-content: flex-end; gap: 10px; margin: 25px 0;}
.stellarnav > ul > li { display: flex; align-items: center;}
.stellarnav > ul > li > a { color: #434343; margin: 0 14px;}
.stellarnav > ul > li > a:hover  { color: #000;}
.stellarnav > ul > li.has-sub > a {  padding-right: 0;}
.stellarnav > ul > li:last-child > a {display: none;}


/*主選單箭頭*/
.stellarnav li.has-sub > a:after {display: none;}

/*第二層*/
.stellarnav ul ul{ background: #fff; top: 55px;}
.stellarnav li a{  color: #1c1c1c; padding: 10px; transition: all 0.5s ease; font-size: 14px;}
.stellarnav li.has-sub li a:hover{ background: #fff; color: #333; padding-left: 18px;}
.stellarnav li li {border: unset;}

/* NEWS下拉選單隱藏 */
.stellarnav .news_classes li {
    display: none !important;
}

@media screen and (max-width: 1024px) {
.stellarnav > ul { justify-content: center; margin: 10px 0; }
.header_area.sticky {position: fixed; height: 90px;}
.header_area {position: relative; height: 160px;}
.nav-header { padding: 20px 0 0;}
.header_area.sticky .nav-header { padding: 0; padding-left: 25px; } 
.header_area.sticky .stellarnav > ul { margin: 25px 0;}
}

@media screen and (max-width: 768px) {
.pageIndex .header_area { position: relative; opacity: 1;}
.main_header_area .container { max-width: 100%;}
.header_area.sticky:before { background: transparent; display: none;}
.header_area.sticky {position: fixed;}
.header_area { height: 90px;}
.header_area.sticky .navigation { grid-template-columns: 1fr; justify-items: center;  display: grid;}
.header_area.sticky .nav-header { padding: 12px 0 0; padding-left: 0; }
.header_area.sticky .nav-header:before { position: relative;    height: 65px;}
.nav-header { padding: 20px 0 0; max-width: 110px;}
.header_area.sticky .stellarnav > ul { margin: 0; margin-right: 0;}
.footer_menu {    justify-content: center;}
	
/*menu*/
.stellarnav .menu-toggle{ padding: 33px 33px !important;}
.stellarnav .menu-toggle:after{  color: #fef7e4; margin-top: 10px;display: none;}
.stellarnav .menu-toggle span.bars span {  width: 37px; height: 1px; border-radius: 6px; margin: 0 auto 7px;}
.header_area.sticky .stellarnav .menu-toggle span.bars span { background: #000;}
.stellarnav.mobile > ul > li:last-child {
    display: none;
}

	
/*區塊*/
.stellarnav > ul { margin-top: 0;}
.stellarnav.mobile.right > ul, .stellarnav.mobile.left > ul { 
    background: #ebebeb;
    backdrop-filter: saturate(93%) blur(3px); 
    max-width: 320px;
    right: 0;
    left: unset;
}
.stellarnav.mobile { right: 0; left: unset;}	

/*close*/
.stellarnav.mobile.right .close-menu, .stellarnav.mobile.left .close-menu { background: transparent;color: var(--ColorMain2);}
.stellarnav .icon-close:before, .stellarnav .icon-close:after{    border-bottom: solid 1px #333;}
.stellarnav a.dd-toggle .icon-plus:before, .stellarnav a.dd-toggle .icon-plus:after { border-bottom: solid 1px #333;}
.stellarnav .icon-close { margin-right: 5px;}

/*第一層*/
.stellarnav.mobile > ul > li > a b {font-style: normal;color: #333;}
.stellarnav.mobile > ul > li { padding: 0 0 15px; margin: 15px; border-bottom: 1px #ababab solid;}
.stellarnav > ul > li:before{display:none;}
.stellarnav ul ul {top: 0;}
.stellarnav.mobile li a {border-bottom: none;  color: #666;}

/*第二層*/
.stellarnav.mobile ul { background: transparent;}
.stellarnav.mobile ul ul { margin: 0px 40px 15px 15px;}
.stellarnav li.has-sub li { background: transparent;  border: unset;}

}

/* footer */

.footer { background:#fff; padding: 0;}
.footer .center{ max-width: 1200px; width: 90%; margin: 0 auto; position: relative; }

.footer_info { 
    padding:0; 
    grid-template-columns: 1fr; 
    text-align: left; 
    width: fit-content; 
    margin: 0 auto;
}

.footer_info li{ padding:6px 0;}
.footer_info li p, .footer_info li p a{ 
    color:#000; 
    font-size:14px; 
    line-height: 260%;
    font-family: "Raleway", "Noto Sans TC", sans-serif;
}
.footer_info li p {
    display: flex;
    align-items: center; 
    margin: 0;
}
.footer_info li p:before {
    display: inline-block;
    width: 45px; 
    flex-shrink: 0;
}


.footer_info li h6 {justify-content: center;}
.footer_info li h6 strong, .footer_info li h6 b { color: #434343;}
.footer_info li h6 strong { font-size: clamp(18px, 1.198dvw, 23px);  letter-spacing: 2px;}
.footer_info li h6 b { font-size:clamp(18px, 1.198dvw, 23px); letter-spacing: 2px;}
.copy {display: none;}
.footer_menu {display: none;}
.footer_info li h6 {display: none;}
.footer_info li p a, .footer_info li p span, .footer_info li p {display: none;}

@media screen and (max-width: 1400px){
}

@media screen and (max-width: 1024px){
    .footer_info { padding-right: 0;    padding-left: 0;}
}

@media screen and (max-width: 768px){
    .footer_info{  display: none; flex-direction: column; }
    .footer_info li p, .footer_info li p a{ text-align: left; }
    .footer_info li+li { margin-top: 0;  text-align: left; }
}


/* = = = 文章 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */

/*文章管理*/
h5.blog_le_t {
    font-size: 18px;
    font-weight: 400;
    font-family: noto sans tc;
    letter-spacing: 0;
    color: #333;
}

/*側邊標題隱藏*/
.blog_le .accordion {display: none;}
.accordion li .link a {
    cursor: pointer;
    display: block;
    padding: 15px 10px;
    color:  #555;
    font-size: 14px;
    font-weight: 700;
    position: relative;
}
.accordion li:hover .link a {
    cursor: pointer;
    display: block;
    padding: 15px 10px;
    color:  #a7a7a7;
    font-size: 14px;
    font-weight: 700;
    position: relative;
}
.blog_le .accordion > li:hover, .blog_le .accordion > li.on_this_category {background: #fee99f !important;}  
.blog_le .accordion > li:hover .link a, .blog_le .accordion > li.on_this_category .link a {
    color: #555 !important;
}
a.news_menu_toggle i {display: none;}

/*圖片隱藏*/
.blog_list_le {display: none;}

/*右側文章排版*/

.subbox_item {
    border-bottom: 1px solid #ddd;
    margin-bottom: 40px;
}
.blog_subbox {
    padding: 5px;
    display: flex ;
    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

/*標題*/
.blog_list_ri h5 {
    font-weight: 500;
    font-size: 20px;
    color: #000;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
}
/*時間*/
.blog_list_ri em {
    font-size: 14px;
    color: #7b7b7b;
    font-style: normal;
    display: block;
}
/*內文*/
.blog_list_ri p {
    font-size: 15px;
    color: #000;
    line-height: 130%;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    word-break: break-all;
}
.subbox_item a {
    position: relative;
    grid-gap: 20px;
    display: flex;
    width: 90%;
    margin: auto;
}

 .subbox_item a:before {
    content: 'READ MORE';
    position: absolute;
    z-index: 19;
    bottom: 10px;
    right: 10px;
    opacity: 0;
    font-size: 15px;
    color: #000;
    transition: all .6s;
}
.subbox_item a:after {background: #ffffff7d; border: unset;}

/*文章*/
/*文章內頁*/
h4.blog_category_title {
    color: #000;
    font-size: 30px;
    padding: 10px 0;
    margin-bottom: 20px;
    font-weight: 500;
}
.blog_box_edit * {
    line-height: 150%;
    color:  #000;
}
/*文章圖片*/
.articel_mainPic img {
    display: block;
    max-width: 50%;}
/*分享文字*/
.toShareNews {
    font-size: 1em;
    background-color: transparent;
    color:  #a1a1a1;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}
/*文章按鈕*/
.blog_back {width: 80%; margin: 0 auto;}
.blog_back a.article_btn_back { background:#8f8f8f; color: #fff;}
.blog_back a.article_btn_prev, .blog_back a.article_btn_next {  background: #e3e3e3;  color: #000f;}

/*相關文章*/
.news_related { padding: 25px 15px; background: transparent; display: none;}
.news_related h6 span:before { content: '相關文章'; font-size: 24px;  color: #555;}

.news_related_list li a {
    display: block;
    padding: 4px;
    height: 100%;
    transition: all 0.3s ease; /* 平滑過渡 */
}
.news_related_list li a p {
    font-size: 15px;
    color: #000;
    line-height: 2;
}
/*按鈕*/
.lastPage {
    font-size: 16px;
    color: #fff;
    background: #191919;
    padding: 10px 20px;
    display: block;
    margin: 40px auto;
    width: 130px;
    text-align: center;
}
/*首頁-文章管理*/
.module_i_news li a:after {    
    content: '';
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 8;
    background: #ffffff96;
    opacity: 0;
    border: 1px #d7d7d7 solid;
}

/*首頁-文章顯示*/
 .module_i_news li:nth-child(n+5) { display:none !important;}

/*標題*/
.module_i_news .title_i_box h4 { font-size: 32px; color: #000;}

/*文章標題*/
.i_blog_ri h5 {
    font-weight: 500;
    font-size: 20px;
    color: #000;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
}
/*時間*/
    .i_blog_ri em {
    font-size: 14px;
    color: #858585;
    font-style: normal;
    display: block;
    margin: 7px 0;
}  
 /*內文*/
 .i_blog_ri p {
    font-size: 15px;
    color: #000;
    line-height: 130%;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    word-break: break-all;
}  
.module_i_news .animated-arrow {background: linear-gradient(to right, #7a4f2a, #a45b1e);}


/* 時間移到標題旁邊 */
.blog_list_ri {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.blog_list_ri h5,
.blog_list_ri em {
    display: inline-block;
    font-size: 20px;      
    color: #222;       
    font-weight: 500;    
    font-style: normal;  
    margin: 0;  
}

.blog_list_ri h5::after {
    content: "/";
    margin: 0 6px;    
    color: #999999;    
    font-weight: normal;  
}

.blog_list_ri p {
    flex-basis: 100%;
    margin-top: 8px;    
}


@media screen and (max-width: 1024px) {
.module_i_news ul {grid-template-columns: 1fr 1fr;}
}
@media screen and (max-width: 1000px) {
.module_i_news .title_i_box h6 {font-size: 50px;}
}
@media screen and (max-width: 768px) {	
.module_i_news ul, .blog_subbox { grid-template-columns: 1fr;}
.module_i_news .title_i_box h4 { font-size: 30px;}  
}

/* = = = 購物車 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */

/* 商品下拉超過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;}

/*--首頁、外層 共同設定---------------------------------------*/

.products-list { display: grid; gap: 10px; grid-template-columns: repeat(4,1fr);}
.products-list::before { content:none;}
.products-list .item { width: 100%;}
.Prods_path {display: none;}
.ProdFilter_ .FilterBtn {display: none;}

/*--首頁區塊---------------------------------------*/

.prod_part { width: 100%;}

/*英文標題*/
.prod_part .i_prod_tit h2 { display: none; color: #8E8B82;}

/*中文*/
.prod_part .i_prod_tit span { 
    position: relative; 
    color: #3F4049; 
    font-weight: 600; 
}
.prod_part .i_prod_tit span::before {
    content: "PRODUCT";
    position: absolute;
    top: -45px;
    left: -60%;
    width: 100%;
    text-align: center;
    font-size: 60px;
    color: #8E8B82;
    letter-spacing: 3px;
    text-shadow: none;
    transform: translateX(-50%);
    z-index: -1;
}

/*--購物車/外層---------------------------------------*/

/*購物車側邊浮動*/
.info_fix_links a.info_fix_default.info_fix_shop { display: none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {display: none;}

/*外層版面*/
.Prods_Wrap .Prods_lists dl.State { height: 150px;}
dl.State .MoreDets a {background: #A3A3A5;}
.Prods_lists li:hover .MoreDets a { background: #1E549F; transition: .5s;}
dl.State .price {display: none;}
.Prods_lists ul { grid-template-columns: repeat(4, 1fr);}
dl.State h5 { font-family: noto sans tc; font-weight: 500; color: #3b3b3b;}


/*側邊選單*/
.Prods_Menulists li a:hover { background: #1E549F; color: #fff;}
.Prods_Menulists > ul > li.active > a { background: #1E549F;}

/*--購物車/內層---------------------------------------*/
.sidebarBtn .sp_price { color: #eb3a3a;}
.sidebarBtn .Pd_Line_Boxed:hover { background: #1E549F;}

/*相關推薦*/
.prod_related h6 span:before { font-size: 20px; color: #333;}
.lastPage { background: #1E549F;}
.related_list { margin: 40px auto;}
.prod_related { padding: 40px 5%; margin: auto; }


/*--RWD---------------------------------------*/

@media screen and (max-width: 1024px) { 
    .Prods_lists ul { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));}
}

/* = = = 相簿 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */

.show-list {grid-template-columns: repeat(4, 1fr);}
.show-list .show_pic .overlay{
    display:none ;
}
.show-list .show_pic img{
    width:100%;
    display:block;
    transition:transform .8s ease;
}

.show-list .item:hover .show_pic img{
    transform:scale(1.08);
}
.subalbum-menu h2 {
  color: #222;
}
.other_album {display: none;}

.album_info_page .main_part{
   max-width: 100%;
}

.album_info_page .show_content{
    max-width: 1500px;
}
.album_logo{
    max-width: 1500px;
    padding: 0 10px;
    margin: auto;
}
.album_logo img{
    width: clamp(150px,85vw, 600px);
    max-width: fit-content;
    max-height: 245px;
    object-fit: contain;
    /* object-fit: scale-down; */
    object-position: left;
}
.blog_page{
     /* 基準不變：14px - 40px */
    --f_base: clamp(0.88rem, 2vw, 2.5rem); 

    /* 優化後的比例系統：讓層級更明顯 */
    --s-xs: 0.75;
    --s-sm: 0.88; 
    --s-md: 1.13; 
    --s-lg: 1.50;
    --s-xl: 1.80;
}
.blog_page .blog_le_t{
    display: none;
}
.blog_page .banner{
    display: block;
    background-color: #ffff;
    height: 350px;
    min-height: unset;
    margin:  0 0 -8vw;
}
.blog_page .banner h5{
    text-align: center;
    font-size: clamp(1.13rem, calc(var(--f_base) * var(--s-md)), 1.63rem);
    word-break: break-word;
    color: #605E5E;
    letter-spacing: 0.1em;
    font-family: 'Inter';
    font-weight: bold;
}
.article_a .banner h5::before{
    display: none;
}
.article_a .banner h5::after{
    content: "消息";
    text-align: center;
    font-size: clamp(1.13rem, calc(var(--f_base) * var(--s-md)), 1.63rem);
    word-break: break-word;
    color: #605E5E;
    letter-spacing: 0.1em;
    font-family: 'Inter';
    margin: 0 0 0 10px;
    font-weight: bold;
}

@media screen and (max-width: 1024px){
    .blog_page .banner{height: unset;margin:30px 0;}
}  

@media screen and (max-width: 650px){
    .album_logo{text-align: center;}
    .album_logo img{width: clamp(150px,90vw, 600px);}
}
