@charset "utf-8";
:root {
    --brand-navy: #171239;
    --brand-navy-soft: #28234f;
    --brand-gold: #b98a3c;
    --brand-gold-light: #d6b36e;
    --brand-cream: #f7f4ed;
    --brand-white: #ffffff;
    --brand-muted: #777287;
    --brand-line: rgba(185, 138, 60, 0.32);
}


/*
關於CSS設定說明
CSS屬性是會繼承的，而且還是由上往下繼承。
同樣元素設定16px 後 12px 再 15px 最後會以最後設定的15px為準
但是有兩種情況除外:
1.絕對路徑命名. 如: .xx .yy .zz p {設定值;}
2.important.  如: .xx p {設定值;}

CSS3選取器語法 :nth-child(n) 

*/


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*上方選單解除滑動固定
.header_area.sticky { position:relative;}
*/

/*網站整體背景*/


.blank_letter ,h5.blog_le_t ,.subalbum-menu h2 ,.news_related h6 span:before ,.module_i_news .title_i_box h6 ,.privacyContent a:hover ,.blog_list_ri h5 ,.i_blog_ri h5 ,.module_i_news li a:before {
	color:var(--brand-navy);}	



.contact_form li.last cite ,.contact_le_map a ,.other_album_choice li ,.blog_back a.article_btn_back ,.lastPage ,.animated-arrow {
    background: var(--brand-navy);
    color: var(--brand-cream);
    border-color: var(--brand-gold);
    transition: background-color .3s ease, color .3s ease, border-color .3s ease;}

.blog_back a.article_btn_back:hover, .lastPage:hover, .animated-arrow:hover,
.contact_le_map a:hover, .other_album_choice li:hover {
    background: var(--brand-gold);
    color: var(--brand-navy);
    border-color: var(--brand-gold);}	
	
.album_fixed_title {
    color: var(--brand-navy);
    background: var(--brand-white);}	
	
.module_i_news li a:after {
    background: rgba(23, 18, 57, 0.3);
    border: 1px var(--brand-white) solid;}	
	
.products-list .more{
	border: 1px solid var(--brand-gold);
    color: var(--brand-navy);
    background: transparent;}	
	
.products-list .item a:hover .more {
	background:var(--brand-gold);
    color: var(--brand-navy);}	


.module_i_album .title_i_box h6 {
    color: var(--brand-navy);}
	
.module_i_album .title_i_box h4 {
    font-size: 18px;
    color: var(--brand-gold-light);
	letter-spacing: 3px;}	
	
.i_album_list li a p{
	background: rgba(23, 18, 57, 0.3);
	color: var(--brand-white);	}

.module_i_album {
    background: var(--brand-navy);}



/*roading*/


.curtain-panel {
    position: fixed;
    top: 0;
    height: 100%;
    background: var(--brand-cream);
    z-index: 999998;
    will-change: transform;
}

.curtain-left {
    left: 0;
    width: 50.5%;
    box-shadow: 10px 0 30px rgba(0,0,0,0.01);
    transform-origin: left center;
    animation: curtainLeftSlide 3s cubic-bezier(0.85, 0, 0.15, 1) forwards;
}

.curtain-right {
    right: 0;
    width: 50.5%;
    box-shadow: -10px 0 30px rgba(0,0,0,0.01);
    transform-origin: right center;
    animation: curtainRightSlide 3s cubic-bezier(0.85, 0, 0.15, 1) forwards;
}

@keyframes curtainLeftSlide {
    0% { transform: scaleX(1); }
    72% { transform: scaleX(1); }
    100% { transform: scaleX(0); }
}

@keyframes curtainRightSlide {
    0% { transform: scaleX(1); }
    72% { transform: scaleX(1); }
    100% { transform: scaleX(0); }
}


.pageIndex::after {
    content: "";
    position: fixed;
    left: 50%;
    top: 50%; 
    background-image: url(https://pic03.eapple.com.tw/yadianlife/logo.png); 
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 300px;
    height: 300px;
    transform: translate(-50%, -50%);
    z-index: 1000000;
    pointer-events: none;
    opacity: 0; 
    animation: logoIntroAnim 4.50s cubic-bezier(.25, 1, .5, 1) 0.60s forwards;
}

.pageIndex::before {
    content:"";
    position:fixed;
	width: 100%;
    height: 100%;
    inset:0;
    background:
      url(https://pic03.eapple.com.tw/yadianlife/loading_bg.jpg) center ; 
    z-index:999998;
    pointer-events:none;
    animation:introFadeOutOnly 6s cubic-bezier(.22,.61,.36,1) forwards;
}




@keyframes introTextCenter {
    0% {
        opacity: 0;
        transform: translate(-50%, 14px);
        filter: blur(5px);
    }

    25% {
        opacity: 1;
        transform: translate(-50%, 0);
        filter: blur(0);
    }

    75% {
        opacity: 1;
        transform: translate(-50%, 0);
        filter: blur(0);
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -6px);
        filter: blur(2px);
    }
}

@keyframes logoIntroAnim {
    0% {
        opacity: 0;
        transform: translate(-50%, -44%) scale(0.96);
        filter: blur(8px);
    }
    22% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
        filter: blur(0);
    }
    72% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1.01);
        filter: blur(0);
    }
    100% {
        opacity: 0;
        transform: translate(-50%, -56%) scale(1.03);
        filter: blur(4px);
    }
}


@keyframes introFadeOutOnly {
    0% { opacity: 1; }
    45% { opacity: 1; }
    70% { opacity: .95; }
    85% { opacity: .65; }
    95% { opacity: .25; }
    100% { opacity: 0; }
}







/*大圖*/


.bannerindex .swiper-slide:nth-child(1):before { 
    width: 27%;
    background-image: url(https://pic03.eapple.com.tw/yadianlife/banner1_1.png);
    aspect-ratio: 1/1;
    background-size: contain;
    height: auto;
    top: 10vw;
    right: -3%;
}

.bannerindex .swiper-slide:nth-child(2):before { 
    width: 22%;
    background-image: url(https://pic03.eapple.com.tw/yadianlife/banner2_2.png);
    aspect-ratio: 1/1;
    background-size: contain;
    height: auto;
    top: 19vw;
    right: 39%;   
}

.swiper-slide:before {
    content: "";
    position: absolute;
    z-index: 999;
    pointer-events: none;
    background-size: contain;
    background-repeat: no-repeat;
}


/* 第一張 Banner 裝飾圖 */
.bannerindex .swiper-slide.swiper-slide-active:nth-child(1):before {
    animation: bannerSoftIn 2s cubic-bezier(0.22, 1, 0.36, 1) 0.3s both;
}

/* 第二張 Banner 裝飾圖 */
.bannerindex .swiper-slide.swiper-slide-active:nth-child(2):before {
    animation: bannerSoftIn 2s cubic-bezier(0.22, 1, 0.36, 1) 0.3s both;
}


/* 柔和淡入＋輕微上浮 */
@keyframes bannerSoftIn {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}


@media screen and (max-width: 768px) {

    /* 行動裝置相容性調整 大圖調整 */
    .swiper-slide img {
        animation-fill-mode: none;
        -webkit-animation-fill-mode: none;
    }

}

/*header*/
	
	
.header_area {
    background:transparent;
	height: 90px;
	padding: 0;
	position: fixed;}	

.nav-brand img{
	filter: none;
	width:70%;}

.sticky .nav-brand img{
	filter: none;
	max-width: 36%;
	transition: all 0.3s;}
	
.header_area.sticky {
    background: rgba(247, 244, 237, 0.8);
	position: fixed;
	transition: all 0.3s;
    width: 100%;}	
		

	
.main_header_area .container { 
    max-width: 95%;
	transition: all 0.3s;}	
	
.nav-brand {
    padding: 5px;}	


.stellarnav > ul > li {
    width: 130px;
    text-align: center;}
	

.stellarnav > ul > li > a b{
	color:var(--brand-navy);
	letter-spacing: 1px;
	font-weight: 600;
    font-size: 16px;}
	
.sticky .stellarnav > ul > li > a b{
	color:var(--brand-navy);}	
	
	
.stellarnav li.has-sub > a:after{
	display:none;}	
	
.stellarnav > ul > li.has-sub > a{
	padding-right: 0;}	

.stellarnav li{
	padding: 25px 0;}
	
.stellarnav li li{
    padding: 0;
	border: 0px var(--brand-line) solid;}	
	
.stellarnav li li a {
    background: rgb(255,255,255,0.7);
    color: var(--brand-navy);
	font-size: 15px;
	padding: 15px;
	letter-spacing: 1px;}		
	
.stellarnav li li a:hover {
    background: var(--brand-navy);
    transition: .5s;
    color: var(--brand-white);}	

.stellarnav li li:last-of-type {
    border-bottom-width: 0px;}


.stellarnav ul ul{
	background: rgba(255, 255, 255, 0.1);
	margin-top: 7.5%;}



.me_tp_features{
	display: none;}

.tp_links {
    display: none;}	
	
/*logo*/
.nav-header {
    max-width: 175px;}	
	
@media screen and (max-width: 1450px) {	

.header_area.sticky .main_header_area .container {
    max-width: 95%;}
	
.stellarnav > ul > li {
    width: auto;}

}	

@media screen and (max-width: 1215px) {	

.navigation{
	grid-template-columns: 150px 1fr;}
	
	
}	
	
	
@media screen and (max-width: 1024px) {	

.header_area {
    height: 150px;}

.nav-header {
    max-width: 200px;}

.nav-brand {
    padding: 10px;}

.stellarnav li {
    padding: 0;}	
	
}		
	
	
	
	
/*footer*/

.footer { 
     background: var(--brand-white);
	 position: relative;}
	 
.footer_logo img { 
     max-width: 280px; 
	 width: 100%;
	 display:none;}

	 
.footer_info {  
     padding: 0;
	 display: flex;
	 flex-direction: row;
	 align-items: center;
	 flex-wrap: wrap;
	 align-content: space-between;
	 gap: 10px;}
	 
	 
.footer_info ul{ 
     display: grid;
	 grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	 gap: 0;
	 letter-spacing: 0.15em;}


/*footer_info*/



.footer_info li{ 
     padding: 20px 10px 50px 10px;}
	 
.footer_info ul>li:nth-child(1):before{
    content: "CONTACT";
    font-weight: 500;}
	
.footer_info ul>li:before{
    font-size: 165%;
    color: var(--brand-navy);
    display: block;
    margin: 0 0 20px;
    border-bottom: 1px solid var(--brand-navy);
    padding-bottom: 10px;
    letter-spacing: 1px;}
	
	
.footer_info li:nth-child(1) { 
    display: inline-block; 
	width: 100%;}
	
.footer_info li p ,.footer_info li p a {
	color: var(--brand-navy);}


/*footer_menu*/
.footer_info ul>li:nth-child(2):before{
    content: "MAIN MENU";
    font-weight: 500;}
	

.footer_info li:nth-child(2) { 
    display: inline-block; 
	width: 100%; 
	vertical-align: top; }
	
.footer_menu {
	margin-top: 10px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 5px;}/*footer按鈕最小寬度100px*/
	
	
.footer_menu a:nth-child(1),.footer_menu a:nth-child(n+10){
	display: none;}
	
.footer_menu a {
	margin: 0 0 0 15px;
	padding: 0;
	background: transparent;
	border: none;
	text-align: left;
	color: var(--brand-navy);
	display: block;
	width: fit-content;
	    letter-spacing: 1px;}
	
.footer_menu a:hover { 
    background: transparent; 
	color: var(--brand-navy); 
	border: transparent;
	transition:all 0.3s;}
	
.footer_info li p.add2:before{
	display:none;}
	
	


/*聯絡icon*/


/*版權*/
.copy { 
     background:#171239; 
	 color: var(--brand-white); 
	 border: none;}
	 
.copy a { 
     color: var(--brand-white); 
	 transition:all 0.3s;}
	 
.double_key a ,.double_key a:after{
	color:var(--brand-white);}	 
	
/*浮動按鈕*/	
.info_fix {
	display:none;}
	
/*內頁banner*/
	
.banner {
	display:none;}
	
.blog_page .banner ,.product_page .banner ,.article_b .banner ,.album_a .banner ,.projects_page .banner ,.contact_page .banner {
	display:block;
	height:600px;
	background: no-repeat;
    max-height: 50vw;
    background-size: cover;}
	
.banner h5 {
    display: none;}			
	

.banner.banF {
	background-image: url(https://pic03.eapple.com.tw/jgsystemfurniture/banner_product.jpg);
	display:block;}	

.banner.banC {
    background-image: url(https://pic03.eapple.com.tw/jgsystemfurniture/banner_contact.jpg);
	display:block;}	

.article_a .banner.banblog {
    background-image: url(https://pic03.eapple.com.tw/jgsystemfurniture/banner_blog1.jpg);
	display:block;}	

.article_b .banner.banblog {
    background-image: url(https://pic03.eapple.com.tw/jgsystemfurniture/banner_blog2.jpg);
	display:block;}	


	
.path {
    display: none;}		


	
/*首頁相簿*/	
.module_i_projects .title_i_box h6{
	display:none;}

.module_i_projects .title_i_box h4{
	font-size: 50px;
    color: var(--brand-navy);
    letter-spacing: 3px;
    font-family: "Noto Serif TC", serif;}	
	
.ProjSwiper li section h6 strong {
    font-size: 13px;
    color: var(--brand-muted);}	
	

/*聯絡我們*/	
.contact_content{ width:70%;} 	

.contact_editbox{
	padding: 0;}


h4.blank_letter.f {display: flex;padding-bottom: 25px;position: relative;top: 50px;flex-direction: column;align-items: flex-start;}
h4.blank_letter.f:before {
        content: "FORM";
        font-size: 50px;
        font-family: 'Cormorant Garamond';
        font-weight: 500;
        letter-spacing: 5px;
        }

.blank_letter {font-size: 23px; color: var(--brand-navy); font-weight: 500; letter-spacing: 2px; text-indent: 2px; background-repeat: no-repeat;}
.note {display: block;padding-top: 10px;}

/*表格*/
.contact_content { padding: 0px 10px 20px;}
.contact_content .information_right {width: 100%;padding: 0;}
.contact_form li { grid-template-columns: 1fr; grid-gap: 10px;}
.contact_form li .form__label {display: flex;/* display: block; */max-width: 100%;text-align: left;width: 100%;font-weight: 600;flex-direction: row-reverse;justify-content: flex-end;gap: 3px;}
.contact_form  {grid-template-columns: repeat(12, 1fr);grid-gap: 35px 80px;align-items: start;margin: 0;padding-top: 80px;width: 100%;font-family: 'Noto Sans TC';}
.contact_form li {grid-template-columns: 1fr;grid-column: auto / span 6;grid-gap: 10px;}
.contact_form li:nth-child(n+5) { grid-column: auto / span 12;}
.form select {width: 100%;}
.contact_form li:has(input[type=checkbox]) .form__insert, .contact_form li:has(input[type=radio]) .form__insert {display: flex;grid-gap: 5px;}
input[type="checkbox"], input[type="radio"] {margin-right: 0px;}

.contact_content .information_left {  display: none;}

.star { padding: 0px;}
.contact_form li input.noborder { border: unset;  border-bottom: 1px solid var(--brand-line); background: transparent;}
.contact_form li textarea.noborder { border: 1px var(--brand-line) solid;  background: transparent;}

/*按鈕*/

.contact_form li.last cite {background: var(--brand-navy);color: var(--brand-cream);}
.contact_form li.last blockquote { color: var(--brand-muted);}
.contact_form li.last blockquote, .contact_form li.last cite {border: 1px var(--brand-muted) solid;padding: 6px;display: flex;align-items: center;justify-content: center;}
.contact_form li.last blockquote:hover, .contact_form li.last cite:hover{
    background: var(--brand-gold);
    color: var(--brand-navy);
}
@media screen and (max-width: 1200px) {
.contact_content .information_right {width: 100%; padding-left: 0px; padding-top: 50px;}
}
@media screen and (max-width: 768px) {
  .contact_form{grid-gap: 20px;grid-template-columns: 1fr;}
.contact_content .information_left {width: 260px;}
	.contact_form li .form__label{background:transparent;}
	.contact_form li:has(input[type=checkbox]) .form__insert, .contact_form li:has(input[type=radio]) .form__insert{display: grid;}
  .contact_form li.last {
    gap: 10px;
}
}
@media screen and (max-width: 480px) {
  .contact_content .information_right {padding: 0px;}
  .list_before.info li {width: 100%;}
  .contact_form li {grid-gap: 0px;grid-column: auto / span 12;}
  .contact_content {padding: 80px 10px 20px 10px;}
  .contact_content{ width:90%;}
}



/*頁面調整*/

.promotion_title ,.other_promotion{
	display:none;}	
	
	
/*文章調整*/
.blog_subbox{
	grid-gap: 30px;}

.subbox_item a {
    grid-template-columns: auto;
	position: relative;
    overflow: hidden;}

.subbox_item a:before{
    content:"READ MORE";
    position:absolute;
    left:54%;
    top:33%;
    transform:translate(-50%,20px);
    font-size:28px;
    font-weight:600;
    letter-spacing:1px;
    color:var(--brand-white);
    opacity:0;
    z-index:20;
    transition:all .45s cubic-bezier(.22,.61,.36,1);
}


.ubbox_item:hover a:before{
    opacity:1;
    transform:translate(-50%,-50%);}


.blog_list_ri h5 {
	font-size: 24px;}

.blog_list_ri p{
	font-size: 16px;
	padding: 10px 0;
    line-height: 30px;
    letter-spacing: 1px;}
	
.subbox_item a:after{
	background: rgba(23, 18, 57, 0.42);
    border: 0px var(--brand-line) solid;}
	

.accordion li .link a{
	font-size: 18px;
    letter-spacing: 1px;
	font-weight: 300;}


.accordion li .link a:hover{
	transition:all 0.3s;
	background:var(--brand-navy);
	color:var(--brand-white);}
	
.blog_ri {
    width: calc(100% - 310px);
    padding: 0 0 0 50px;}	
	
	
	
	
/*設計作品*/	
.StoreProjsList{ max-width: 1650px;}
.ProjSwiper li > a:hover section{ background: rgba(247, 244, 237, 0.88); }
.ProjSwiper li > a:hover section h6{ color: var(--brand-navy);}
.ProjSwiper li section h6 strong{ color: var(--brand-muted) ;}
.ProjSwiper li section{ background: rgba(23, 18, 57, 0.64);}
.ProjSwiper .swiper-button-prev:after,.ProjSwiper .swiper-button-next:after{ font-size: 28px;}

.StoreProjs_Post li{ border: 0px;}
.StoreProjs_Post li h4{ color: var(--brand-navy); font-size: 16px;}
.projsTabs li a{ color:var(--brand-gold) ; }
.projsTabs li a:hover{ color:var(--brand-navy) ; }
.StoreProjs_Post li > a:hover:after{ background: rgba(255, 255, 255, 0.27); backdrop-filter: blur(18px); }
.StoreProjs_Post li > a:hover section h6{ text-shadow: 0px 0px 20px rgba(23, 18, 57, 0.64); }


.sidebar__inner{ padding: 130px 100px 50px 100px; }
.ProjsDetail_Title h4{ color: var(--brand-navy);}
.ProjsDetail_Intro h6 strong,.ProjsDetail_Intro h6{color: var(--brand-navy); }
.ProjsDetail_Viewpoint{ color: var(--brand-muted);}
.ProjsDetail_Bottom a{ border: 1px solid var(--brand-gold); border-radius: 10px ;color: var(--brand-navy); background: var(--brand-cream);}
.ProjsDetail_Bottom a:hover{ background: var(--brand-gold); color: var(--brand-navy);}
.ProjsDetail_Bottom a.ProjsBtn_Prev img,.ProjsDetail_Bottom a.ProjsBtn_Next img{ display: none; }
.ProjsDetail_info_3_5 .txtEdit { color: var(--brand-muted);}

.ProjsDetail_Title p a{
     color: var(--brand-navy);
      background: var(--brand-gold);
}
.ProjsDetail_Title p a::before{  background: var(--brand-gold); }

@media screen and (max-width:1024px) {
    .sidebar__inner{ padding: 130px 50px 50px 50px;}
}

@media screen and (max-width:500px) {
    .sidebar__inner{ padding: 130px 24px 50px 24px;}
}


	

/*上方選單右邊設定 臉書/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}
*/


/*電腦LOGO
.nav-brand {}
*/

/*手機LOGO
.nav-brand-m {}
*/

/* 商品下拉超過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: var(--brand-cream); 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 var(--brand-muted); 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 var(--brand-line);}
.stellarnav.desktop li.bigMenu ul ul{display: block; position: relative; top: 0; background: unset; border: 0;}
.stellarnav.desktop li.bigMenu ul ul li{border: 0;}
 主分類超過30個但次分類直接顯示-結束 */

/* 商品下拉超過30個--結束 */

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */
.blog_page .main_part{max-width: 90%;}

/*預設購物車版面 產品分類選單在左側 商品內頁詳細介紹下表單更改樣式 by shint at 2023.1.5  */
.product_page .main_part { max-width:1500px;}
/* .product_info_page .main_part { max-width:1200px;} */
.Prods_path dd > a:hover{ color:var(--brand-gold);}
.product_page .show_content,
.product_info_page .show_content { width: 100%; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; align-content: flex-start;}
.product_page .product_menu_list { position: relative; width: 220px; letter-spacing: 1px; /*border-right: 1px solid var(--brand-muted);*/min-height: 30vw;}
.product_page .products-list,
.product-wrapper { width: calc(100% - 270px);}
ul.page { width: 100%;}

.product-layer-two li ul { position:static; margin-top:5px; /*display:block;*/ width:100%; margin-left:0;}
.product-layer-two li:hover ul { border: none; /*display:block;*/}
.product-layer-two li li { display: block; padding:0; transition:all ease .3s;}
.product-layer-two li li a{ padding:5px 10px;}
.product-layer-two li li:hover > a { background:var(--brand-white); color:var(--brand-gold);}
.product-layer-two > li { width:100%; max-width:100%; padding:0; text-align:left; border-bottom:1px dotted var(--brand-muted); padding-bottom: 5px;}
.product-layer-two > li ul > li + li { margin-top:5px;}

.product_info_page .product-layer-two { display: none;}
.product_info_page .products-list,
.product-wrapper { width: 100%;}

.product-layer-two li li:hover{ margin-left: 15px;}
.product-layer-two li li > a:before { content: ""; position: absolute; width: 12px; height: 8px; background: transparent; left: 0; margin-left: -20px; top: 50%; margin-top: -4px; clip-path: polygon(0 0, 100% 50% , 0 100%);}
.product-layer-two li li:hover > a:before { background:var(--brand-gold);}

.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: 1200px) {
}
@media screen and (max-width: 980px) {
}
@media screen and (max-width: 768px) {
.product_menu_list,
.products-list,
.product-wrapper { width: 100%;}
.product-layer-two { margin-right: 0; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); grid-gap: 5px;}
.product_page .product-layer-two,
.product_page .products-list { width: 100%; border-right: none;}
.product_page .product_menu_list>h5{display: block;}

.product_page .show_content > a { order: 1;}
.product_page ul.products-list { order: 2;}
.product_page ul.page { order: 3;}
.product_page .product_menu_list {width: 100%; order: 0; min-height: unset;}
}
@media screen and (max-width: 600px) { 
}


/* =================================================
   Refined dropdown & footer | warm editorial styling
   Header height / sticky spacing are intentionally kept
   ================================================= */

/* Main menu: only refine the type spacing */
.stellarnav > ul > li > a b {
    letter-spacing: .14em;
}

/* Dropdown */
.stellarnav ul ul {
    margin-top: 7.5%;
    padding: 9px 0;
    background: rgba(247, 244, 237, .98);
    border: 1px solid rgba(185, 138, 60, .22);
    box-shadow: 0 14px 30px rgba(23, 18, 57, .13);
}

.stellarnav li li a {
    position: relative;
    padding: 13px 24px;
    background: transparent;
    color: var(--brand-navy);
    font-size: 14px;
    letter-spacing: .12em;
    transition: color .25s ease, background .25s ease, padding .25s ease;
}

.stellarnav li li a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 12px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--brand-gold);
    opacity: 0;
    transform: translateY(-50%);
    transition: opacity .25s ease;
}

.stellarnav li li a:hover {
    padding-left: 28px;
    background: var(--brand-cream);
    color: var(--brand-navy);
}

.stellarnav li li a:hover:before {
    opacity: 1;
}


/* Footer: a calm, editorial information layout */
.footer {
    position: relative;
    background: var(--brand-cream);
    border-top: 1px solid rgba(185, 138, 60, .3);
}

.footer .center {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 5%;
}

.footer_info {
    position: relative;
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    column-gap: clamp(44px, 8vw, 150px);
    align-items: center;
    padding: 58px 0 54px;
}

.footer_info:before {
    content: "JG SYSTEM FURNITURE  /  INTERIOR SOLUTIONS";
    position: absolute;
    top: 21px;
    left: 0;
    color: var(--brand-gold);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .19em;
}

.footer_logo {
    display: flex;
    align-items: center;
    min-height: 112px;
    padding-right: 44px;
    border-right: 1px solid rgba(185, 138, 60, .42);
}

.footer_logo img {
    display: block;
    width: 100%;
    max-width: 280px;
    height: auto;
}

.footer_info ul {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(290px, 1.2fr);
    gap: clamp(42px, 7vw, 130px);
    margin: 0;
    letter-spacing: .08em;
}

.footer_info li,
.footer_info li:nth-child(1),
.footer_info li:nth-child(2) {
    width: auto;
    padding: 0;
}

.footer_info ul > li:before {
    margin: 0 0 18px;
    padding: 0;
    border: 0;
    color: var(--brand-navy);
    font-family: "Noto Serif TC", serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .16em;
}

.footer_info ul > li:nth-child(1):before { content: "CONTACT"; }
.footer_info ul > li:nth-child(2):before { content: "EXPLORE"; }

.footer_info li p,
.footer_info li p a {
    color: var(--brand-navy);
    font-size: 14px;
    line-height: 1.85;
}

.footer_info li p + p {
    margin-top: 7px;
}

.footer_menu {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 23px 20px;
    margin: 0;
}

.footer_menu a {
    width: fit-content;
    margin: 0;
    padding: 0;
    background: transparent;
    color: var(--brand-navy);
    font-size: 12px;
    letter-spacing: .11em;
    transition: color .25s ease, transform .25s ease;
}

.footer_menu a:hover {
    background: transparent;
    color: var(--brand-gold);
    transform: translateX(4px);
}

.copy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px 24px;
    padding: 18px max(5%, calc((100% - 1296px) / 2));
    background: #171239;
    color: var(--brand-navy);
    border: 0;
    font-size: 11px;
    letter-spacing: .08em;
}

.copy p { margin: 0; }

.copy a,
.double_key a,
.double_key a:after {
    color: var(--brand-navy);
}

.copy a:hover { color: var(--brand-white); }

@media screen and (max-width: 1024px) {
    .footer_info {
        grid-template-columns: 240px minmax(0, 1fr);
        column-gap: 48px;
    }

    .footer_logo { padding-right: 34px; }
    .footer_info ul { gap: 38px; }
    .footer_menu { grid-template-columns: 1fr 1fr; }
}

@media screen and (max-width: 768px) {
    .stellarnav.mobile.left > ul,
    .stellarnav.mobile ul ul { background: var(--brand-cream); }

    .stellarnav li li a { padding: 13px 20px; }
    .footer.with_shopping_mode { padding: 0 0 70px; }
    .footer .center { padding: 0 26px; }

    .footer_info {
        grid-template-columns: 1fr;
        gap: 36px;
        padding: 56px 0 44px;
    }

    .footer_info:before { top: 19px; font-size: 9px; }
    .footer_logo {
        min-height: auto;
        padding: 0 0 28px;
        border-right: 0;
        border-bottom: 1px solid rgba(185, 138, 60, .35);
    }

    .footer_logo img { max-width: 280px; }
    .footer_info ul { grid-template-columns: 1fr; gap: 34px; }
    .footer_menu { grid-template-columns: 1fr 1fr; }
    .copy { display: block; padding: 16px 26px; line-height: 1.8; }
    .copy .privacyLinks { margin-top: 4px; }
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*預設解除背景輪播*/
#content_main { margin:0;}
.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;}	 

}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*內頁BANNER 設定*/
.banner {}
.banner h5 {}
.banner.banA {}
.banner.banB {}
.banner.banC {}
.banner.banD {}
.banner.banE {}
.banner.banblog {}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*文章設定*/
/*一排呈現
.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: var(--brand-white); border: solid 1px var(--brand-white); 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) {
/* 開啟手機板下方按鈕所需設定 */
.footer.with_shopping_mode { padding:30px 0 70px; }
#to_top { bottom:60px;}

/*手機板設定*/

.bannerindex {
        padding: 0;
        margin: 0;}
	
#bottom_menu {
    display: flex;
    background: var(--brand-navy);
}

#bottom_menu a { color: var(--brand-cream); }
#bottom_menu a:hover, #bottom_menu a:focus-visible { background: var(--brand-gold); color: var(--brand-navy); }
#to_top { background: var(--brand-navy); color: var(--brand-cream); border: 1px solid var(--brand-gold); }
#to_top:hover { background: var(--brand-gold); color: var(--brand-navy); }		

.header_area {
    padding: 10px;
	height:auto;}

.header_area {
     background: var(--brand-cream);
     position: relative;}	
	
.stellarnav.mobile li a	{
	border-bottom: none;}

.header_area.sticky {
	padding-top: 10px;}

.nav-brand img {
    max-width: 100%;
	padding: 5px;}	
	
.sticky .nav-header {
    display: block;
    transition: all 0s;
	width:50%;}	

	
.stellarnav.mobile.left > ul {
    background:var(--brand-white);}
	
.stellarnav.mobile > ul > li > a b{
	color: var(--brand-navy);}	
	
.stellarnav.mobile ul ul{
	background:var(--brand-cream);}
	
.stellarnav .menu-toggle:after {
	color: #171239;}	
	
.stellarnav .menu-toggle span.bars span{
	background: #171239;}			
	
.stellarnav li {
    padding: 10px;}	

.stellarnav > ul > li > a b{
    font-size: 15px;}	
	
.footer_info li {
    padding: 20px 10px;}


}

@media screen and (max-width: 600px) { 
}




/* Keep the editorial footer rules above later template mobile defaults. */
@media screen and (max-width: 768px) {
    .footer.with_shopping_mode { padding: 0 0 70px; }
    .footer_info li,
    .footer_info li:nth-child(1),
    .footer_info li:nth-child(2) { padding: 0; }
}


/* Footer spacing refinement */
.footer .center {
    max-width: 1600px;
    padding: 0 7%;
}

.footer_info {
    grid-template-columns: 300px minmax(0, 1fr);
    column-gap: clamp(72px, 10vw, 180px);
    padding: 76px 0 72px;
}

.footer_info:before {
    content: none;
}

.footer_logo {
    min-height: 132px;
    padding-right: 58px;
}

.footer_info ul {
    gap: clamp(56px, 10vw, 180px);
}

.copy {
    justify-content: flex-start;
    gap: 10px 18px;
}

@media screen and (max-width: 1024px) {
    .footer_info {
        grid-template-columns: 270px minmax(0, 1fr);
        column-gap: 58px;
    }

    .footer_logo { padding-right: 42px; }
    .footer_info ul { gap: 42px; }
}

@media screen and (max-width: 768px) {
    .footer .center { padding: 0 26px; }
    .footer_info { padding: 58px 0 54px; }
    .footer_logo { min-height: auto; padding: 0 0 30px; }
}


/* =================================================
   Footer redesign | logo card + contact action area
   ================================================= */
.footer {
    background: var(--brand-cream);
    border-top: 0;
}

.footer .center {
    max-width: 1520px;
    padding: 0 5%;
}

.footer_info {
    display: grid;
    grid-template-columns: minmax(300px, .85fr) minmax(0, 1.55fr);
    gap: clamp(54px, 7vw, 130px);
    align-items: stretch;
    padding: clamp(60px, 7vw, 108px) 0;
}

.footer_info:before {
    content: none;
}

/* Brand card */
.footer_logo {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    min-height: 300px;
    padding: 42px;
    background: var(--brand-cream);
    border: 0;
}

.footer_logo img {
    display: block;
    width: 100%;
    max-width: 280px;
    height: auto;
}

/* The template's configured contact links */
.box_link {
    display: none;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 36px;
}

.box_link a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(185, 138, 60, .45);
    color: var(--brand-navy);
    background: transparent;
    transition: color .25s ease, background .25s ease, border-color .25s ease;
}

.box_link a:hover {
    border-color: var(--brand-gold);
    background: var(--brand-gold);
    color: var(--brand-white);
}

/* Information side */
.footer_info > ul {
    display: grid;
    grid-template-columns: minmax(230px, .9fr) minmax(300px, 1.1fr);
    gap: clamp(42px, 7vw, 120px);
    margin: 0;
    padding: 15px 0;
    border-top: 1px solid rgba(185, 138, 60, .4);
    border-bottom: 1px solid rgba(185, 138, 60, .4);
    letter-spacing: .08em;
}

.footer_info li,
.footer_info li:nth-child(1),
.footer_info li:nth-child(2) {
    width: auto;
    padding: 26px 0;
}

.footer_info ul > li:before {
    margin: 0 0 23px;
    padding: 0 0 11px;
    border: 0;
    border-bottom: 1px solid rgba(185, 138, 60, .25);
    color: var(--brand-navy);
    font-family: "Noto Serif TC", serif;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .16em;
}

.footer_info ul > li:nth-child(1):before { content: "聯絡資訊  CONTACT"; }
.footer_info ul > li:nth-child(2):before { content: "網站導覽  MENU"; }

.footer_info li p,
.footer_info li p a {
    color: var(--brand-navy);
    font-size: 14px;
    line-height: 2;
}

.footer_info li p + p { margin-top: 8px; }

.footer_menu {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 23px 26px;
    margin: 0;
}

.footer_menu a {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0;
    padding: 0 0 1px 13px;
    background: transparent;
    color: var(--brand-navy);
    font-size: 12px;
    letter-spacing: .12em;
    transition: color .25s ease, transform .25s ease;
}

.footer_menu a:before {
    content: "";
    position: absolute;
    left: 0;
    width: 5px;
    height: 1px;
    background: var(--brand-gold);
    transition: width .25s ease;
}

.footer_menu a:hover {
    background: transparent;
    color: var(--brand-navy);
    transform: none;
}

.footer_menu a:hover:before { width: 9px; }

.copy {
    justify-content: flex-start;
    gap: 10px 18px;
    padding: 18px max(5%, calc((100% - 1370px) / 2));
    background: #171239;
    color: var(--brand-cream);
}

.copy a,
.double_key a,
.double_key a:after { color: var(--brand-cream); }

.copy a:hover { color: var(--brand-white); }

@media screen and (max-width: 1024px) {
    .footer_info {
        grid-template-columns: 260px minmax(0, 1fr);
        gap: 48px;
    }

    .footer_logo { padding: 32px; }
    .footer_info > ul { gap: 35px; }
}

@media screen and (max-width: 768px) {
    .footer.with_shopping_mode { padding: 0 0 70px; }
    .footer .center { padding: 0 24px; }
    .footer_info {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 48px 0;
    }

    .footer_logo {
        min-height: 230px;
        padding: 30px;
    }

    .footer_info > ul {
        grid-template-columns: 1fr;
        gap: 0;
        padding: 0;
    }

    .footer_info li,
    .footer_info li:nth-child(1),
    .footer_info li:nth-child(2) { padding: 28px 0; }

    .footer_info li + li { border-top: 1px solid rgba(185, 138, 60, .25); }
    .footer_menu { grid-template-columns: 1fr 1fr; }
}


/* Footer layout safeguard: prevent template contact icons from escaping */
.footer .footer_info {
    min-width: 0;
}

.footer .footer_info .footer_logo {
    min-width: 0;
}

.footer .footer_info .footer_logo > a {
    display: block;
}

.footer .footer_info .footer_logo .box_link {
    position: static;
    inset: auto;
    display: flex;
    width: auto;
    height: auto;
    margin: 36px 0 0;
    padding: 0;
    transform: none;
    float: none;
    clear: both;
}

.footer .footer_info .footer_logo .box_link a {
    position: static;
    display: inline-flex;
    float: none;
    margin: 0;
}

/* Hide the separate template floating toolbar; contact icons live in the logo card. */
.footer .info_fix {
    display: none;
}

@media screen and (max-width: 768px) {
    .footer .footer_info .footer_logo .box_link {
        margin-top: 28px;
    }
}


/* Simplified footer finish */
.footer,
.footer_logo {
    background: var(--brand-cream);
}

.footer .footer_info .footer_logo .box_link {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
}

.footer_info > ul {
    border-top: 0;
    border-bottom: 0;
}


/* Centered footer layout: hide logo and place contact buttons under menu */
.footer .footer_info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(56px, 10vw, 150px);
    row-gap: 28px;
    width: min(100%, 980px);
    margin: 0 auto;
    padding: clamp(62px, 7vw, 100px) 0;
}

.footer .footer_info .footer_logo {
    display: contents;
}

.footer .footer_info .footer_logo > a {
    display: none;
}

.footer .footer_info > ul {
    grid-column: 1 / -1;
    grid-row: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(56px, 10vw, 150px);
    margin: 0;
    padding: 0;
}

.footer .footer_info .footer_logo .box_link {
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    align-self: start;
    margin: 0;
}

@media screen and (max-width: 768px) {
    .footer .footer_info {
        grid-template-columns: 1fr;
        gap: 30px;
        width: 100%;
        padding: 52px 0;
    }

    .footer .footer_info > ul {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .footer .footer_info .footer_logo .box_link {
        grid-column: 1;
        grid-row: 2;
        justify-self: center;
    }
}


/* Keep the compact tablet/mobile header visible after scrolling */
@media screen and (max-width: 1024px) {
    .header_area.sticky {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 9999;
        width: 100%;
    }

    .stellarnav.mobile > ul > li > a,
    .stellarnav.mobile > ul > li > a b,
    .stellarnav.mobile ul ul li a,
    .stellarnav.mobile ul ul li a b {
        color: var(--brand-white);
    }

    .stellarnav .menu-toggle:after,
    .stellarnav .menu-toggle span.bars span {
        color: #171239;
    }
}


/* Tablet and mobile header */
@media screen and (max-width: 1024px) {
    .header_area,
    .header_area.sticky {
        position: relative;
        top: auto;
        background: var(--brand-cream);
        box-shadow: none;
    }

    .nav-header,
    .sticky .nav-header {
        width: 155px;
        max-width: 155px;
    }

    .nav-brand,
    .sticky .nav-brand {
        padding: 0;
    }

    .nav-brand img,
    .sticky .nav-brand img {
        width: 100%;
        max-width: 155px;
        padding: 0;
    }

    .stellarnav.mobile.left > ul,
    .stellarnav.mobile ul ul {
        background: var(--brand-gold);
    }
}

@media screen and (max-width: 768px) {
    .header_area,
    .header_area.sticky {
        padding: 9px 16px;
    }

    .nav-header,
    .sticky .nav-header {
        width: 128px;
        max-width: 128px;
    }

    .nav-brand img,
    .sticky .nav-brand img {
        max-width: 50%;
    }
}


/* Pull contact links closer to the navigation list on desktop */
@media screen and (min-width: 769px) {
    .footer .footer_info .footer_logo .box_link {
        transform: translateY(-45px);
    }
}


/* Responsive safeguards for footer and desktop navigation */
@media screen and (min-width: 769px) and (max-width: 1100px) {
    .footer .footer_info {
        width: min(90%, 820px);
        column-gap: clamp(32px, 6vw, 64px);
        row-gap: 0;
    }

    .footer .footer_info > ul {
        column-gap: clamp(32px, 6vw, 64px);
    }
}

@media screen and (min-width: 1025px) and (max-width: 1215px) {
    .navigation {
        grid-template-columns: minmax(130px, 150px) minmax(0, 1fr);
    }

    .stellarnav > ul {
        display: flex;
        justify-content: flex-end;
        min-width: 0;
    }

    .stellarnav > ul > li {
        flex: 0 1 auto;
        min-width: 0;
        padding: 20px 0;
    }

    .stellarnav > ul > li > a b {
        font-size: 14px;
        letter-spacing: .08em;
        white-space: nowrap;
    }
}

@media screen and (min-width: 769px) {
    .footer .footer_info {
        row-gap: 0;
    }

    .footer .footer_info li,
    .footer .footer_info li p,
    .footer .footer_info li p a {
        min-width: 0;
        overflow-wrap: anywhere;
    }
}

@media screen and (max-width: 768px) {
    .footer .footer_info {
        width: min(100%, 560px);
        margin: 0 auto;
    }

    .footer .footer_info li p,
    .footer .footer_info li p a {
        overflow-wrap: anywhere;
    }

    .footer .footer_info .footer_logo .box_link {
        max-width: 100%;
    }
}


/* Mobile / tablet sticky state must override the initial relative header. */
@media screen and (max-width: 1024px) {
    .header_area.sticky {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 9999;
        width: 100%;
    }

    .stellarnav.mobile > ul > li > a,
    .stellarnav.mobile > ul > li > a b,
    .stellarnav.mobile ul ul li a,
    .stellarnav.mobile ul ul li a b {
        color: var(--brand-white);
    }

    .stellarnav .menu-toggle:after {
        color: #171239;
    }

    .stellarnav .menu-toggle span.bars span {
        background: #171239;
    }
}

/* Keep the compact mark legible against the mobile/tablet sticky header. */
@media screen and (max-width: 1024px) {
    .header_area.sticky .nav-header {
        width: 128px;
        max-width: 128px;
    }

    .header_area.sticky .nav-brand img {
        width: 128px;
        max-width: 128px;
        padding: 0;
        filter: none;
    }
}

@media screen and (max-width: 768px) {
    .header_area.sticky .nav-header {
        width: 108px;
        max-width: 108px;
    }

    .header_area.sticky .nav-brand img {
        width: 50%;
        max-width: 50%;
    }
	
	
.stellarnav.mobile.left-fade > ul{
	background:#171239;}
	

.stellarnav.mobile li.open{
	background:#171239;}


.stellarnav.mobile > ul > li > a b+b{
	display:none;}	



	
	
}

