/*modify by pekey 20190604*/
@charset "utf-8";
/* CSS Document */

/*------------------------------------------CSS Setting Start-------------------------------*/

/*================*/
/*-- 浮動top鍵 --*/
/*================*/
.topBtn_area{
	position:fixed;
	right:14px;
	bottom:0px;
	z-index: 10;
	transform: scale(0.84);
	transition:0.3s ease all;
}
	
	.topBtn {
		position:fixed;
		bottom:-70px;
		right:14px;
		z-index:99;
		/*z-index:3;*/
	}
		.topBtn a {
			display:block;
			text-align:center;
			box-sizing:border-box;
			width: 50px;
			height: 50px;
			/* border: solid 2px #4c4944; */
			position:relative;
			text-decoration:none;
			transition:0.3s ease all;
			border-radius:100%;
			background:var(--primary_color);
			/* padding: 25px 0px 0px; */
			color:#fff;
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
		}
			/* .topBtn a:before {
				position:absolute;
				content:'';
				border-bottom: solid 12px #ffffff;
				border-left: solid 8px rgba(0,0,0,0);
				border-right: solid 8px rgba(0,0,0,0);
				top: 8px;
				left: 50%;
				transform: translateX(-50%);
			} */
			.topBtn a svg {
				width: 20px;
				height: 16px;
				fill: #fff;
			}
			.topBtn a span {
				font-size: 0.9em;
				display:block;
				font-family: var(--foreign_font);
				padding-bottom: 5px;
				color: #fff;
			}
				/*hover*/
				.topBtn a:hover {
					opacity: 0.5;
				}
				
				
			/*hover*/
			.topBtn:hover .tab_description{
				display: block;
				transition: 0.3s ease all;
			}	



	
			


/*================*/
/*-- 浮動社群鍵 --*/
/*================*/				
					


/*--浮動社群鍵---*/

.social_btn_area{
	position:fixed;
	right: 13px;
	bottom: 20px;
	transition:0.3s ease all;
	z-index: 201;
	/* display:none; */
}

		
.social_btn{
	margin:7px 0px;
	position: relative;
}		
	.social_btn a{
		display:block;
		transition:0.3s ease all;
		text-decoration:none;
		font-size:12px;
		line-height: 12px;
		text-align:center;
		width: 50px;
		height: 50px;
		box-sizing:border-box;
		background-color: #1974ec;
		border-radius: 50%;
		position:relative;
		/* box-shadow: 0px 0px 4px 1px rgb(255 255 255 / 0.8); */
	}		
	.social_btn  img{
		/* width: 65%; */
		width: 20px;
		height: auto;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translateX(-50%) translateY(-50%);
		transform: translateX(-50%) translateY(-50%);
	}
        /*標籤說明*/		
        .tab_description{
            display: none;
            position: absolute;
            left: -90px;
            top: 9px;
            background: rgba(0,0,0,0.6);
            color: #fff;
            padding: 10px 10px;
            font-size:13px;
            transition: 0.3s ease all;
        }		
	        /*hover*/
            .social_btn:hover > .tab_description{
                display: block;
                transition: 0.3s ease all;
            }








/*--右側浮動FB--*/
.fbBtn {
}
    .fbBtn a {
        background-color: #1974ec;
    }
	
	
/*--右側浮動youtube--*/
.YtBtn {
}
    .YtBtn a {
        background-color: #fb031d;
    }
    


/*--右側浮動Line--*/
.lineBtn {
	margin:7px 0px;
	position: relative;
}
	.lineBtn a {
		background: #00c001;
	}
       
	



/*--右側浮動linkedInBtn--*/	
.linkedInBtn {
}
	.linkedInBtn a {
		background: #2764ac;
	}
    


/*--右側浮動Twitter--*/	
.twitterBtn {
}
	.twitterBtn a {
		background: #34b3f7;
	}
    



/*--右側浮動IG--*/		
.igBtn {
}
	.igBtn a {
		background-image: linear-gradient(45deg, #ffcd6c 0%, #ef5f4a 25%, #a335b4 50%, #505cd1 75%, #505cd1 75%, #9a37bb 100%);
	}

		
			
		
/*--右側浮動dcard--*/	
.dcardBtn{    
}
    .dcardBtn a {
        background:#0067a1;
    }
			
		
/*--右側浮動podcast--*/
.podcastBtn{	
}
	.podcastBtn a {
		background:#8622c2;
	}





@media (max-width: 990px){

	/*-- 浮動top鍵 --*/
	.topBtn{		
	}
		.topBtn a {
			width: 40px;
			height: 40px;
		}
		.topBtn a svg {
			/* top: 10px; */
			stroke-width: 2px;
			stroke-linecap: round;
			stroke: #fff;
			width: 25px;
			height: 25px;
		}
			.topBtn a span {
				display: none;
			}
		

	/*-- 浮動社群鍵 --*/
	.social_btn {
		margin:3px 0px;
	}
		.social_btn a{
			width: 40px;
			height: 40px;
		}	



}










	
			





/*/////////////////////////////////////////////////////////*/
/*-------版腳--------*/
/*/////////////////////////////////////////////////////////*/

.footer {
	padding: 45px 0px;
	background-color: #252525;
	color: #fff;
}





	.footer_content{
		display: flex;
		justify-content: space-between;
		padding-bottom: 10px;
	}
		



		/*----- 版腳footer_logo -----*/
		.footer_logo{
			width: 170px;
			transition: 0.3s ease all;
			box-sizing: border-box;
		}
			.footer_logo a{
				display: block;
			}
				.footer_logo a img{
					width: 100%;
					height: auto;
				}
		
	



		/*----- 版腳主按鍵 navbar -----*/
		.footer_navbar{
			box-sizing: border-box;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			margin: 0 -15px;
		}
			.footer_nav{
				box-sizing: border-box;
			}
				.footer_nav a{
					display: block;
					text-decoration: none;
					color: #fff;
					padding: 0 15px;
				}



		/*----- 版腳資訊 footer_information -----*/
		ul.footer_information{
			padding: 0;
			margin: 0;
			display: block;
			list-style-type: none;
			color: #fff;
			box-sizing: border-box;
			display: flex;
			flex-wrap: wrap;
			padding-bottom: 10px;
			margin: 0 -20px;
			font-size: 15px;
		}
			ul.footer_information li{
				padding: 0;
				margin: 0;
				display: block;
				list-style-type: none;
				display: flex;
				align-items: center;
				padding: 5px 20px;
			}
				ul.footer_information li i{
				padding-right: 5px;
				}
					ul.footer_information li span{				
					}
						ul.footer_information li a{
							color: inherit;
							display: block;
							text-decoration: none;
						}
						ul.footer_information li a:hover{
							opacity: 0.7;
						}

	
	/*----- 版權宣告 -----*/
	.copyright{
		color: #b3b3b3;
		font-family: var(--foreign_font);
		font-size: 12px;
		line-height: 16px;
		padding-bottom: 10px;
	}
		.copyright a{
			color:inherit;
			font-size: 12px;
			line-height: 16px;
		}
		
	/*----- 瀏覽器警示標語 -----*/
	.browser_bg{
		color: #6c6c6c;
		/* text-align: center; */
		font-size: 12px;
		line-height: 16px;
	}
		.browser_bg a{
			color:inherit;
			font-size: 12px;
			line-height: 16px;
			text-decoration: underline;
		}
			





@media (max-width: 990px){

	.footer {
		padding: 20px 0px;
	}	
		.footer_content{
			display: block;
			justify-content:unset;
		}


		/* 主按鍵 navbar */
		.footer_navbar{
			display: none;
		}
	
}


@media (max-width: 768px){
	
	/* 版腳資訊 footer_information */
	ul.footer_information{
		display: block;
		margin: 0;
	}	
		ul.footer_information li{
			padding: 5px 0px;
		}
		
	
}

/* ==========================================================================
   Footer v6 override
   Legacy footer CSS above is intentionally superseded for the new footer.html.
   ========================================================================== */

.footer.footerbg {
	padding: 0;
	background: #f7f3eb;
	color: #3d342c;
	font-family: var(--chinese_font), "Noto Sans TC", sans-serif;
}

.footer.footerbg a {
	color: inherit;
	text-decoration: none;
	transition: color 0.25s ease, opacity 0.25s ease, background-color 0.25s ease;
}

.footer.footerbg a:hover {
	color: #9a6b3f;
}

.footer.footerbg .wrap {
	width: min(1180px, calc(100% - 40px));
	margin: 0 auto;
}

.footer.footerbg .fiexdRight {
	position: fixed;
	right: 18px;
	bottom: 90px;
	z-index: 98;
}

.footer.footerbg .fiexdRight_btn {
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #8f704f;
	color: #fff;
	box-shadow: 0 10px 24px rgba(61, 52, 44, 0.2);
}

.footer.footerbg .fiexdRight_btn:hover {
	background: #3f6f5b;
	color: #fff;
}

.footer.footerbg .topBtn {
	right: 18px;
	bottom: 24px;
}

.footer.footerbg .topBtn a {
	background: var(--primary_color);
	box-shadow: 0 10px 24px rgba(61, 52, 44, 0.2);
	opacity: 1;
}

.footer.footerbg .footer_top_area {
	padding: 54px 0 44px;
	background:
		linear-gradient(90deg, rgba(143, 112, 79, 0.1), rgba(63, 111, 91, 0.08)),
		#f7f3eb;
	border-top: 1px solid rgba(61, 52, 44, 0.12);
}

.footer.footerbg .footer_top_area .wrap {
	display: grid;
	/* grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr); */
	grid-template-columns: minmax(0, 2fr) minmax(200px, 1fr);
	gap: clamp(1.25rem, -0.083rem + 2.15vw, 2.5rem);
	align-items: center;
}

.footer.footerbg .foote_list,
.footer.footerbg .footer_in,
.footer.footerbg .footer_content {
	min-width: 0;
}

.footer.footerbg .footer_content {
	display: block;
	padding: 0;
}

.footer.footerbg .footer_brand_list .footer_content {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	gap: 34px;
	align-items: center;
}

.footer.footerbg .footer_logo {
	width: 190px;
	/* background: rgba(255, 255, 255, 0.72); */
	/* border: 1px solid rgba(61, 52, 44, 0.12); */
	/* border-radius: 8px; */
}

.footer.footerbg .footer_logo a,
.footer.footerbg .footer_logo img {
	display: block;
	width: 100%;
	height: auto;
}

.footer.footerbg .footer_contact {
	font-size: 16px;
	line-height: 1.9;
	letter-spacing: 0;
	color: #4d443c;

	display: flex;
    flex-direction: column;
    gap: 5px;
}

.footer.footerbg .footer_contact p {
	margin: 0;
}
.footer.footerbg .footer_contact p>i{
	display: inline-block;
	width: auto;
	height: auto;
	box-sizing: border-box;
	padding: 5px;
}

.footer.footerbg .footer_contact a {
	font-weight: 700;
	color: #3f6f5b;
}

.footer.footerbg .footer_navbar {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
}

.footer.footerbg .footer_nav a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid rgba(61, 52, 44, 0.16);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.58);
	color: #3d342c;
	font-weight: 500;
}

.footer.footerbg .footer_nav a:hover {
	background: #3f6f5b;
	border-color: #3f6f5b;
	color: #fff;
}

.footer.footerbg .footer_social {
	text-align: right;
}

.footer.footerbg .footer_social_title {
	margin-bottom: 16px;
	color: #3d342c;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0;
}

.footer.footerbg .footer_social_list {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: clamp(0.313rem, -0.021rem + 0.54vw, 0.625rem);
}

.footer.footerbg .footer_social_link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: auto;
	/* padding: 10px; */
	/* border: 1px solid rgba(61, 52, 44, 0.16); */
	border-radius: 8px;
	/* background: rgba(255, 255, 255, 0.58); */
	color: #3d342c;
}

.footer.footerbg .footer_social_link:hover {
	/* background: #3f6f5b;
	border-color: #3f6f5b;
	color: #fff; */
}

.footer.footerbg .footer_social_icon {
    width: 40px;
    height: auto;
    aspect-ratio: 1/1;
    padding: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #333; /* 改用 background-color 明確指定 */
    overflow: hidden;
    
    /* 核心修改 1：讓背景顏色、形狀都有 0.4 秒的絲滑轉場，並加上 hover 縮放 */
    transition: background 0.4s ease, transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    
    /* 核心修改 2：為了讓 IG 漸層有動畫，先預設好漸層底色並拉大 */
    background-image: linear-gradient(45deg, #333 0%, #333 100%);
    background-size: 200% 200%;
    background-position: 0% 0%;
}

/* 核心修改 3：所有人 hover 時，都加上微幅放大（帶點 Q 彈感） */
.footer.footerbg .footer_social_icon:hover {
    transform: translateY(-4px) scale(1.1); /* 往上飄 4px 並放大 1.1 倍 */
}

/* ==========================================================================
   各別圖示 Hover 動畫設定
   ========================================================================== */
   
/* FB 變色 */
.footer.footerbg .fb_icon:hover {
    background-color: #1974ec;
	background-image: none;
}

/* LINE 變色 */
.footer.footerbg .line_icon:hover {
    background-color: #00c001;
	background-image: none;
}

/* YT 變色 */
.footer.footerbg .yt_icon:hover {
    background-color: #fb031d;
	background-image: none;
}

/* IG 漸層絲滑變色（利用移動背景位置來達成動畫效果） */
.footer.footerbg .ig_icon:hover {
    background-image: linear-gradient(45deg, #ffcd6c 0%, #ef5f4a 25%, #a335b4 50%, #505cd1 75%, #9a37bb 100%);
    background-position: 100% 100%;
}

.footer.footerbg .footer_social_icon img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
}

.footer.footerbg .footer_Bottom_area {
	background: #26211c;
	color: #f8f2e8;
	padding: 18px 0;
}

.footer.footerbg .copyright {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 0;
	color: rgba(248, 242, 232, 0.86);
	font-size: 13px;
	line-height: 1.6;
	font-family: var(--foreign_font), "Quicksand", sans-serif;
	text-align: center;
}

.footer.footerbg .copyright ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.footer.footerbg .copyright li {
	margin: 0;
}

.footer.footerbg .copyright li + li::before {
	content: "";
	display: inline-block;
	width: 1px;
	height: 12px;
	margin: 0 10px 0 2px;
	background: rgba(248, 242, 232, 0.32);
	vertical-align: -1px;
}

.footer.footerbg .footer_visitors span {
	font-family: var(--foreign_font), "Quicksand", sans-serif;
	letter-spacing: 0;
}

.footer.footerbg .copyright > a {
	color: rgba(248, 242, 232, 0.72);
	font-size: 13px;
	line-height: 1;
}

@media (max-width: 990px) {
	.footer.footerbg .footer_top_area {
		padding: 42px 0 34px;
	}

	.footer.footerbg .footer_top_area .wrap {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.footer.footerbg .footer_navbar {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.footer.footerbg .footer_social {
		text-align: left;
	}

	.footer.footerbg .footer_social_list {
		justify-content: flex-start;
	}
}

@media (max-width: 768px) {
	.footer.footerbg .wrap {
		width: min(100% - 28px, 1180px);
	}

	.footer.footerbg .footer_brand_list .footer_content {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.footer.footerbg .footer_logo {
		width: min(190px, 62vw);
		margin: 0 auto;
	}

	.footer.footerbg .footer_contact {
		font-size: 15px;
		line-height: 1.8;
	}

	.footer.footerbg .footer_navbar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.footer.footerbg .footer_social_link {
		width: 42px;
		height: 42px;
	}

	.footer.footerbg .copyright {
		display: block;
	}

	.footer.footerbg .copyright > a {
		display: inline-block;
		margin-bottom: 6px;
	}
}

@media (max-width: 480px) {
	.footer.footerbg .footer_top_area {
		padding: 34px 0 28px;
	}

	.footer.footerbg .footer_navbar {
		grid-template-columns: 1fr;
	}

	.footer.footerbg .fiexdRight_btn,
	.footer.footerbg .topBtn a {
		width: 44px;
		height: 44px;
	}
}
