@charset "utf-8";
/****************** 基本 ******************/

* {
	font-family: "微軟正黑體", "Microsoft JhengHei", Arial, Geneva, sans-serif;
	/* outline: 1px solid red; */
}
/* 各區分類大標題、副標題、活動期間-字型 */
@font-face {
    font-family: 'NotoSansCJKtc-Bold';
    src: url('../fonts/NotoSansCJKtc-Bold.otf');
}

:root {
  --u_primary: #d45252;
  }
html {
	scroll-behavior: smooth;
}

body {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.8;
	color: #323232;
	background-color: #fff;
	height: 100%;
	position: relative;
	/* padding-top: 70px; */
	overflow-x: hidden;
}

@media screen and (max-width: 1400px) {
	body {
		padding-top: 60px;
	}
}

hr {
	border-top: 1px solid #afafaf;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #000;
	font-weight: 400;
	line-height: 1.2;
}

p {
	margin-bottom: 1em;
}

a {
	color: #009999;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	text-decoration: none;
}

a:hover,
a:active,
a:focus,
a:visited {
	/* color: #006464; */
	outline: none;
	text-decoration: none;
}

img,
object,
embed,
video {
	max-width: 100%;
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
	background: #000;
	opacity: .2;
}

/* animate */

.js .to-animate,
.js .to-animate-2,
.js .single-animate .js .animate-single {
	opacity: 0;
}

.js .animate-box {
	opacity: 0;
}

/*
--- 按鈕 btn ---*/

.btn:hover,
.btn:active,
.btn:focus {
	background: #393e46;
	color: #fff;
	outline: none;
}

.btn {
	border-radius: 0px;
}

.btn.btn-primary {
	background: #009999;
	color: #fff;
	border: none !important;
	border: 2px solid transparent !important;
	display: inline-block;
	margin-top: 5px;
}

/* btn-gold */

.btn-gold {
	background: #959595;
	color: #fff;
	border: none !important;
	border: 2px solid transparent !important;
	display: inline-block;
	margin-top: 5px;
	z-index: 5;
}

.btn-outline-gold {
	border-color: var(--u_primary);
	color: var(--u_primary) !important;
	margin-top: 15px;
}

.btn-outline-gold:hover {
	border-color: var(--u_primary);
	color: #FFFFFF !important;
}


@media screen and (max-width: 576px) {
	.btn.btn-lg {
		padding-top: 10px;
		padding-right: 8px;
		padding-left: 8px;
		padding-bottom: 10px;
		font-size: 16px;
	}
}


/****************** 導覽列 navbar ******************/

.navbar {
	background-color: #f8f8f8;
	/* border-bottom: 1px solid #e8e8e8; */
	padding: 0;
	/* border-top: 1px solid #e8e8e8; */
}

/*
--- 聯邦LOGO navbar-brand ---*/

.navbar-brand {
	padding-right: 0;
}

.navbar .navbar-brand {
	margin-right: 50px;
	margin-left: 20px;
	width: 250px;
	height: 70px;
	background: url(../../include/images/UBLogo.png) no-repeat 0 50%;
	background-size: contain;
}

.navbar-header .navbar-brand img {
	width: 90%;
}

.navbar-light .navbar-toggler {
	border: none;
}

.navbar-light .navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 153, 153, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.navbar-light .navbar-toggle .icon-bar {
	background-color: #009999;
}

.navbar-light .navbar-nav .nav-link {
	color: rgba(0, 0, 0, .9);
}

.navbar-light .navbar-toggle:hover,
.navbar-light .navbar-toggle:focus {
	background-color: #f8f8f8;
}

.navbar-nav>li>a {
	font-weight: 900;
	margin-left: 15px;
	margin-top: 10px;
	display: block;
}

.navbar-light .navbar-nav>li>a:hover,
.navbar-light .navbar-nav>li>a:focus {
	color: #009999;
	background-color: transparent;
}

.navbar-light .navbar-nav>.active>a,
.navbar-light .navbar-nav>.active>a:hover,
.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav>.active>a:focus {
	color: #009999;
}

.navbar-toggle {
	margin-top: 13px;
	margin-bottom: 15px;
	border: 0px;
	border-radius: 0px;
}
/*target錨點定位*/
.target-fix {
    position: relative;
    top: -58px;
    display: block;
    height: 0;
    overflow: hidden;
}
@media screen and (max-width: 768px) {
	.target-fix {
	 top: 0px;
	}
}
/*
--- 導覽列下拉dropdown-menu ---*/

.dropdown-menu {
	background-color: rgba(255, 255, 255, 0.8);
	-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.dropdown-item.active,
.dropdown-item:active {
	background-color: #009999;
}

.dropdown-item:hover,
.dropdown-item:focus {
	background-color: #eaeaea;
}

@media screen and (max-width: 1200px) {
	.navbar .navbar-brand {
		margin-right: 0px;
		margin-left: 20px;
		width: 200px;
		height: 60px;
		/* 60 only*/
	}
}

@media screen and (max-width: 576px) {
	.navbar .navbar-brand {
		margin-right: 40px;
		margin-left: 15px;
	}
}

@media screen and (max-width: 576px) {
	.navbar .navbar-brand {
		margin-right: 40px;
		margin-left: 0px;
	}
}

/****************** 輪播 carousel  ******************/

.carousel {
	/* margin-top: -70px; */
}

.carousel-indicators li {
	width: 10px;
	height: 10px;
	opacity: .8;
	border-radius: 50px;
	border: 1px solid #dedede;
	background-color: #bbbbbb;
}

.carousel-indicators .active {
	background-color: #ca8314;
}

/*--- 主視覺 ---*/
.kv {
	position: relative;
	width: 100%;
	aspect-ratio: 1920 / 1000;
	display: block;
	background-image: url('../images/top_bg.jpg');
	background-size: cover;
}

.left_box {
	position: absolute;
	left: 10.989583%;
	bottom: 16%;
	width: 40.677083%;
	height: 68.5%;
	z-index: 2;
}

.ring_box {
	position: absolute;
	right: 13.020833%;
	bottom: 14%;
	width: 27.083333%;
	height: 70%;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* 地面投影：調小模糊度使邊緣更清晰 */
.card_shadow {
	position: absolute;
	bottom: 6%; 
	left: 45%;
	transform: translateX(-50%);
	width: 60%;
	height: 30px;
	background: rgba(0, 0, 0, 0.25); 
	border-radius: 50%;
	filter: blur(6px); 
	z-index: 1;
	animation: shadow-sync 3s ease-in-out infinite;
}

/* 卡片群組：負責漂浮與卡片邊緣陰影 */
.card_group {
	position: relative;
	width: 85%;
	height: 85%;
	z-index: 3;
	filter: drop-shadow(0 15px 25px rgba(0,0,0,0.15));
	animation: float-move 3s ease-in-out infinite;
}

.card_group img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}

/* 感應前 (橘紅) */
.kv_card_2 {
	z-index: 4;
	opacity: 1;
}

/* 感應後 (黑色) */
.kv_card_3 {
	z-index: 5;
	opacity: 0;
	animation: thermal-fade-logic 4s infinite;
}

/* 1. 卡片漂浮 */
@keyframes float-move {
	0%, 100% { transform: translateY(0px); }
	50% { transform: translateY(-30px); }
}

/* 2. 地面投影同步 */
@keyframes shadow-sync {
	0%, 100% { 
		opacity: 0.6; 
		transform: translateX(-50%) scale(1); 
	}
	50% { 
		opacity: 0.2; 
		transform: translateX(-50%) scale(0.85); 
	}
}

/* 3. 感溫漸變邏輯 (24秒一循環)
	先是橘紅 (kv_card_3 隱藏) -> 慢慢變黑 (kv_card_3 出現，前慢後快) 
	-> 停頓 -> 慢慢變回橘紅 (kv_card_3 消失，前快後慢)
*/
@keyframes thermal-fade-logic {
	0%, 10% { 
		opacity: 0; 
		animation-timing-function: ease-in; /* 前慢後快 */
	}
	50% { 
		opacity: 1; 
		animation-timing-function: ease-out; /* 前快後慢 */
	}
	50.1%, 52% { 
		opacity: 1; 
		animation-timing-function: ease-out; 
	}
	100% { 
		opacity: 0; 
	}
}
.kv_text_m {
	display: none;
}
@media (max-width:768px) {
    .kv {
        aspect-ratio:1000/1200;
		background-image: url('../images/top_bg_m.jpg');
    }
	.kv_text {
		display: none;
	}
	.left_box {
		right: 10.7%;
		bottom: 57%;
		width: 78.6%;
		height: 38.666666%;
	}
	.kv_text_m {
		display: block;		
	}
	.ring_box {
		right: 31%;
        bottom: 3%;
        width: 44%;
        height: 53%;
	}
	.card_shadow {
		bottom: 7%;
        width: 60%;
        left: 40%;
        height: 22px;
	}
	.card_group {
		width: 100%;
		height: 100%;
		filter: drop-shadow(0 15px 25px rgba(0,0,0,0.15));
		animation: float-move 3s ease-in-out infinite;
	}
	/* 1. 卡片漂浮 */
	@keyframes float-move {
		0%, 100% { transform: translateY(0px); }
		50% { transform: translateY(-15px); }
	}


}


/****************** 版面 Container ******************/

.gridContainer {
	width: 100%;
	clear: none;
	float: none;
	margin-left: auto;
	margin-right: auto;
	background-size: cover;
}

@media only screen and (max-width: 768px) {
	.gridContainer {
		width: 100%;
		margin: auto;
		clear: none;
		float: none;
		margin-left: auto;
		background-size: cover;
	}
}


/*----U 幣自動換------*/


/* 左側標題區 */
.u_title_container {
	/* margin-bottom: 2rem; */
}

.u_auto_wrapper {
	display: flex;
	align-items: flex-start;
}

.u_main_title {
	font-weight: 600;
    font-size: 2.8rem;
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: 2px;
	color: #222;
}
.u_main_date {
    font-size: 17px;
    font-weight: 400;
    left: 3px;
    color: #666;
}
.red_text {
	color:var(--u_primary);
}
.u_description_text {
	font-size: 1.15rem;
	line-height: 1.8;
	color: #666;	
}
.dotted_highlight_link {
	padding-bottom: 3px;
	border-bottom: 2px dotted #d45252;
}
.u_main_text p {
	font-size: 1.4rem;
    line-height: 1.6;
    color: #666;
    margin-bottom: 0em;
}
.u_main_text p small {
	font-size: 15px;
}

/* 右側：幣種顯示區塊 */
.currency_container {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.currency_group {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	max-width: 100%;
}

.currency_label {
	background-color: #fceceb;
	color: #d45252;
	padding: 4px 20px;
	border: 1px solid #f5b0b2;
	border-radius: 4px;
	display: inline-block;
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 15px;
	cursor: default;
	white-space: nowrap;
}

.currency_list {
	font-size: 1.35rem;	
	line-height: 1.6;
	letter-spacing: 0.5px;
	color: #444;
	word-break: keep-all;
}

/* 下方按鈕區塊 */
.u_action_buttons {
	margin-top: 4rem;
}

.btn_pill {
	border-radius: 50px;
	padding: 12px 28px;
	font-size: 1.15rem;
	font-weight: 500;
	border: none;
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	text-decoration: none;
	display: inline-block;
	color: white;
	text-align: center;
	width: 100%;
	white-space: nowrap; 
}
.btn_pill_1 {
	border-radius: 50px;
	padding: 12px 28px;
	font-size: 1.15rem;
	font-weight: 500;
	border: none;
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	text-decoration: none;
	display: inline-block;
	color: white;
	text-align: center;	
	white-space: nowrap; 
	margin: 25px auto 0;
}

.btn_pill:hover {
	color: white;
	transform: translateY(-5px) scale(1.02);
	box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}
.btn_pill_1:hover {
	color: white;
	transform: translateY(-5px) scale(1.02);
	box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.btn_blue {
	background-color: #3b5998;
}

.btn_main_color {
	background-color: var(--u_primary);
}

 /* 放大縮小控制 (整體等比例縮放) */
.my_svg_icon {
	width: 100px;  
	height: auto; 
	margin-right: 12px;
}
.my_svg_icon.u_date {
	margin-top: 30px;
}
@media screen and (max-width: 992px) {
	.u_auto_wrapper {
		display: flex;
		flex-direction: column;
		margin-bottom: 2rem;
	}
}
@media screen and (max-width: 768px) {	
	.u_main_title {
		font-size: 2.2rem;
		line-height: 1.2;
	}

	.u_description_text {
		font-size: 17px;
		line-height: 1.6;
	}
	.u_action_buttons {
		margin-top: 1rem;
	}
	.currency_list {
		font-size: 17px;			
	}
	.my_svg_icon.u_date {
		margin-top: 0px;
	}

 }

.ucoin_kv {
	width: 100%;
	background-image: url(../images/ucoin_kv_bg.gif);
    background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
}

/*----------------------回饋自已選-------------------------*/
.feedback {
	background-image: linear-gradient(to bottom, #fff, #f9f9f9);
}

.u_color {
	color: var(--u_primary);
}
.u_lg_font {
	font-size: 2.5rem;	
}
.u_xl_font {
	font-size: 3.6rem;
	font-weight: 600;
	font-family: 'NotoSansCJKtc-Bold',Arial, Geneva, sans-serif;
	line-height: 1;
}
.u_xl_font_small{
	font-size: 2.3rem;
	font-family: Arial, Geneva, sans-serif;
}
/*右邊*/

/* --- 右側：階梯清單區 --- */
.tier_list_wrapper {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.tier_item {
	display: flex;
	align-items: center; 
	justify-content: flex-start; 
	gap: 15px; 
}

.tier_img_box {
	flex: 0 0 auto; 
}

.tier_img_box img {
	height: 70px; 
	width: auto;
	display: block;
	/* filter: drop-shadow(0px 4px 6px rgba(0,0,0,0.1)); */
}
.tier_img_lv3 {
	margin-left: 40px;
}
.tier_img_lv2 {
	margin-left: 20px;
}

/* 右側文字說明內容 */
.tier_text_box {
	flex: 1; 
}
.detail_title {
	font-weight: 800;
	font-size: 1.25rem;
	margin-bottom: 2px;
	display: flex;
	align-items: center; 
}

/* 圓點前面的灰色裝飾線 */
.detail_title::before {
	content: "";
	display: block;
	width: 30px; 
	height: 2px; 
	background-color: #d1d1d1; 
	margin-right: 8px; 
	flex-shrink: 0; 
}

.detail_desc {
	font-size: 1rem;
	color: #666;
	margin-top: 2px;
	padding-left: 65px; 
}  

.color_lv3 { color: #46b7c1; } 
.color_lv2 { color: #498ac3; } 
.color_lv1 { color: #3550b3; } 
.lv_xl_font {
	font-size: 2.5rem;
    font-weight: bold;
    font-family: Arial, Geneva, sans-serif; 
    line-height: 0.8;
	margin-bottom: 12px;
	margin-left: 3px;
	margin-right: 3px;
}
.lv_xl_font_small {
	font-size: 1.8rem;   
}
/* 響應式：手機版調整 */
@media (max-width: 991px) {
	.u_sub_info, .u_date_tag { margin-left: 0; }
	.u_main_title { font-size: 2rem; }
	.tier_list_wrapper { margin-top: 30px; }
	
	.tier_item {
		gap: 12px;
	}
	.detail_title {
		font-size: 1rem;
	}
	.detail_desc {
		font-size: 0.9rem;
		padding-left: 65px;
	}
	.tier_img_box img {
		height: 60px;
	}
}

/* 極小螢幕調整 */
@media (max-width: 1400px) {
	.tier_item {
		flex-direction: column;	
	}
}
@media (max-width: 768px) {	
	.tier_list_wrapper {
		margin-bottom: 40px;
	}
	/* .tier_img_box img {
		height: 42px; 
	} */
	/* .detail_desc {
		padding-left: 0;
	} */
}
/*------市期間限定活動-----*/
.main-event {
	background-image: linear-gradient(to bottom, #fff, #f9f9f9);
}
.detail_title_1 {
	font-weight: 800;
	font-size: 1.25rem;
	margin-bottom: 2px;
	display: flex;
	align-items: center; 
}
@media (max-width: 991px) {	
	.detail_title_1 {
		font-size: 1rem;
	}
}
/* --- 升級箭頭--- */
.level_up_arrow {
	color: #498ac3;
	padding-left: 38%; 
	margin: -12px 0;
}

.level_up_arrow svg {
	animation: arrow_float_up 1.5s ease-in-out infinite;
}

.level_up_arrow svg path {
	stroke: currentColor;
	stroke-linejoin: round; /* 讓轉角平滑 */
	stroke-linecap: round;
}

.level_up_arrow svg path:first-child {
	stroke-width: 1.5px; 
}

.level_up_arrow svg path:last-child {
	stroke-width: 0; 
}

/* 箭頭向上浮動且發亮的動畫 */
@keyframes arrow_float_up {
	0%, 100% { 
		transform: translateY(0); 
		opacity: 0.4; 
		filter: drop-shadow(0 0 0 rgba(212, 82, 82, 0));
	}
	50% { 
		transform: translateY(-6px); 
		opacity: 1; 
		/* filter: drop-shadow(0 3px 5px rgba(212, 82, 82, 0.4)); */
	}
}
@media (max-width: 768px) {
	.level_up_arrow {
	padding-left: 0%; 
	margin: -12px auto;
	}	
}
/*----------------------一卡通票證優惠-+專屬好禮------------------------*/
.events {
	width: 100%;
	background-color: #fdf7ef;   
	background-image: url(../images/events_bg.gif);   
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover; 
	background-position: center top;
}
.promo_card {
	border: 4px solid #de9a9a; /* 淺紅色邊框 */
	border-radius: 24px;
	padding: 30px;
	position: relative;
	background-color: #fff;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	
	display: flex;             
	flex-direction: column;    
	height: 100%; 
}

.promo_card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}

.info_icon {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 30px;
	height: 30px;
	background-color: #ffffff;
	color: #000;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-family: serif;
	font-style: normal;
	cursor: pointer;
	box-shadow: inset 0 -2px 5px rgba(0,0,0,0.1);
	transition: background-color 0.2s;
	z-index: 2; /* 確保 i 圖示蓋在背景圖上方 */
}

.info_icon:hover {
	/* background-color: #b8b8b8; */
	background-color: #1a1717;
	color: #fff;
}

/* 原始有圖示的 Header 樣式保留給第二張卡片 */
.promo_header {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

.promo_icon_circle {
	width: 65px;
	height: 65px;
	border: 3px solid #e3afaf;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 20px;
	flex-shrink: 0;
	color: #555;
}

.icon_cart, .icon_mobile {
	width: 40px;
	height: 40px;
}

/* ==========================================================
	新增的背景圖 Header 樣式 (針對消費滿額卡片)
========================================================== */
.promo_header_bg {
	/* 使用負邊距抵銷 promo_card 的 padding，讓圖片貼齊邊框 */
	margin: -30px -30px 15px -30px; 
	padding: 30px 30px 20px 30px;
	background-image: 
		linear-gradient(90deg, #f8fafb 25%, rgba(255,255,255,0.8) 55%, rgba(255,255,255,0) 100%), 
		url('../images/promo_bg01.jpg');
	background-size: cover;
	background-position: top right;
	background-repeat: no-repeat;
	border-radius: 20px 20px 0 0; 
	
	display: flex;
	align-items: center;
	min-height: 130px; /* 確保背景圖區域有足夠高度 */
	position: relative;
}

/* 新增：替第二張卡片設定不同的背景圖 */
.promo_header_bg.bg-2 {
	background-image: 
		linear-gradient(90deg, #f8fafb 25%, rgba(255,255,255,0.8) 55%, rgba(255,255,255,0) 100%), 
		url('../images/promo_bg02.jpg'); 
}

.promo_title_area {
	flex: 1;
	position: relative;
	z-index: 1; /* 確保文字在漸層之上 */
}

.promo_date {
	font-size: 0.85rem;
	color: #555;
	margin-bottom: 2px;
	letter-spacing: 0.5px;
}

.promo_title {
	font-size: 1.8rem;
	font-weight: 600;
	margin: 0;
	color: #333;
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
	text-shadow: 
		-1.5px -1.5px 0 #fff,  
			1.5px -1.5px 0 #fff,
		-1.5px  1.5px 0 #fff,
			1.5px  1.5px 0 #fff,
			0      0     8px rgba(255,255,255,0.9);
}

/* 10%、300元等大紅字共用 */
.promo_highlight {
	color: #d45252;
	font-size: 2.5rem;
	font-weight: 600;
}

.promo_desc {
	font-size: 1rem;
	color: #444;
	line-height: 1.8;
	margin-bottom: 0;
}

.promo_note {
	font-size: 0.85rem;
	color: #777;
	margin-top: 15px;
	padding: 0 15px;
	line-height: 1.6;
}

/* 手機版 RWD 調整 */
@media (max-width: 768px) {
	.promo_card { padding: 20px; }
	
	/* 同步調整負邊距，配合手機版變小的 padding */
	.promo_header_bg {
		margin: -20px -20px 15px -20px;
		padding: 20px 20px 15px 20px;
		border-radius: 16px 16px 0 0;
	}

	.promo_icon_circle {
		width: 55px;
		height: 55px;
		margin-right: 15px;
	}
	.promo_title { font-size: 1.3rem; }
	.promo_highlight { font-size: 1.8rem; }
	.promo_note { padding: 0 5px; }
}
/* ==========================================================
	新增的 CSS (新戶首刷禮/MaiCoin註冊禮專用，共用 .promo_card) 
========================================================== */
.main-gift {
	width: 100%;
	background-color: #ffffff;   
	background-image: url(../images/main-gift_bg.gif);   
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover; 
	background-position: center top;
}
.gift_card_content {
	text-align: center;
	display: flex;
	flex-direction: column;
	flex-grow: 1; 
	height: 100%;
}

.gift_title_wrapper {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 12px;
	margin-bottom: 15px;
	flex-wrap: wrap;
}

.gift_title {
	font-size: 1.8rem;
	font-weight: 600;
	margin: 0;
	color: #111;
}

.gift_date {
	font-size: 0.85rem;
	color: #333;
}

.gift_desc {
	font-size: 1.2rem;
	line-height: 1.8;
	color: #333;
	margin-bottom: 30px;
	flex-grow: 1; /* 讓下方的按鈕群被推到底部 */
	text-align: left; /* 讓說明文字靠左對齊 */
}

.gift_highlight {
	color: #d45252;
	font-size: 1.6rem;
	font-weight: 600;
}

.gift_desc_note {
	font-size: 0.95rem;
	color: #555;
	margin-top: 8px;
}
.gift_desc_note .gift_highlight {
	color: #d45252;
	font-size: 1.1rem;
	font-weight: 600;
}

.gift_btn_group {
	display: flex;
	justify-content: center; /* 讓按鈕置中對齊 */
	gap: 15px;
	margin-top: auto; /* 靠齊卡片最下方 */
	flex-wrap: wrap; /* 手機版太窄時自動換行 */
}

/* 卡片內的按鈕樣式，稍微比下方總按鈕緊湊一點 */
.btn_inner {
	background-color: #959595;
	color: white;
	padding: 8px 25px;
	border-radius: 4px;
	text-decoration: none;
	font-size: 1rem;
	transition: all 0.3s ease;
	display: inline-block;
}

.btn_inner:hover {
	background-color: #393e46;
	color: white;
	transform: translateY(-2px);
}
@media (max-width: 576px) {
	.btn_inner {		
		padding: 8px 15px;		
	}
}
/* ========================================================== */

/* --- 最下方總注意事項按鈕 --- */
.footer_btn_wrapper {
	margin-top: 60px;
	text-align: center;
}

.btn_precautions {
	background-color: #d45252;
	color: white;
	padding: 10px 40px;
	border-radius: 4px;
	text-decoration: none;
	font-size: 1.1rem;
	transition: all 0.3s ease;
	display: inline-block;
}

.btn_precautions:hover {
	background-color: #b74343;
	color: white;
	transform: translateY(-2px);
}

@media (max-width: 768px) {
	.promo_card { padding: 20px; }
	.promo_icon_circle {
		width: 55px;
		height: 55px;
		margin-right: 15px;
	}
	.promo_title { font-size: 1.3rem; }
	.promo_highlight { font-size: 1.8rem; }
	.promo_note { padding: 0 5px; }

	/* 新增卡片手機版微調 */
	.gift_title { font-size: 1.4rem; }
	/* .gift_desc { font-size: 0.95rem; } */
}


/*----------------------//一卡通票證優惠-+專屬好禮-------------------------*/
/*----------------------專屬信貸活動 資金靈活運用-------------------------*/
.loan_promo_section {
	
}

.loan_img_wrapper {
	width: 100%;
	border-radius: 8px;
	overflow: hidden;
	aspect-ratio: 4 / 3;	
	/* box-shadow: 0 4px 15px rgba(0,0,0,0.05); */
	border: 1px solid #eeeeee;
}

.loan_img_wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.loan_content_wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	padding-left: 20px;
}

.loan_header {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}

.loan_title {
	font-size: 1.8rem;
	font-weight: 800;
	margin: 0;
	color: #111;
	letter-spacing: 0px;
}
.loan_title .loan_lg_font {
	font-size: 2.2rem;
	letter-spacing: 0px;
	color: var(--u_primary);
}

.loan_steps_container {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 35px;
	flex-wrap: nowrap; /* 電腦與手機皆保持在同一行 */
	/* gap: 12px; */
} 

/* 步驟箭頭容器 */
.step_arrow {
	position: relative;
	flex: 1 1 0; /* 讓三個箭頭均分寬度，手機版自動縮小不折行 */
	max-width: 170px; 
	height: 75px; 
	display: flex;
	align-items: center;
	justify-content: center;
}

.step_arrow svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	overflow: visible;
}

/* <--- 箭頭 SVG 背景色 ---> */
.step_arrow svg polygon {
	fill: #f8e3e3;
}

.step_text {
	position: relative;
	z-index: 2;
	font-size: 1.2rem; 
	font-weight: 400;
	line-height: 1.4;
	color: #111;
	text-align: center;
	padding-left: 10px; /* 微調文字置中以對應箭頭形狀 */
}
/* 下方按鈕 */
.loan_action_wrapper {
	text-align: center;
	margin-top: 10px;
}


@media (max-width: 768px) {
	.loan_title {
		font-size: 1.4rem;
	}
}

/* 極小螢幕調整 */
@media (max-width: 576px) {	
	.step_arrow { height: 70px; } 
	.step_text { 
		font-size: 1rem; 
		padding-left: 6px;
	}
}
/*----------------------//專屬信貸活動 資金靈活運用-------------------------*/
/*----------------------推薦好禮-------------------------*/
.MGM_MAI {
	width: 100%;
    background-color: #fcf4e9;	
    background-image: url(../images/MGM_bg.gif);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center top;
}
.MGM_wrapper {
	width: 100%;
    border-radius: 8px;
    overflow: hidden;
    /* box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); */
    border: 2px solid #ccc8c8;
	text-align: center;
}
/*----------------------//推薦好禮-------------------------*/
/*----------------------卡友附加服務-------------------------*/
.main-rights {
	width: 100%;
    background-color: #fcf4e9;	
    background-image: url(../images/main-rights_bg.gif);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center top;
}
/* 標題與分隔線整體排版 */
.title-container {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0px;
	width: 100%;
	padding: 0 20px;
	box-sizing: border-box;
	margin-bottom: 40px;
}

/* 標題文字設定 */
.title-text {
	font-family: "PingFang TC", "Microsoft JhengHei", sans-serif;
	color: #2F2E2E;
	margin: 0;
	letter-spacing: 2px;	
	/* 桌機版字體設定 */
	font-weight: 600;
	font-size: 2.8rem;
	line-height: 1.2;
}

/* 分隔線容器 */
.svg-divider {
	width: 100%;
	max-width: 350px; 
	height: auto;
	margin-top: -15px; /* 向上推擠，抵消 SVG 內部的透明留白空間 */
}

/* 手機版 (螢幕寬度小於 768px 時) */
@media (max-width: 768px) {
	.title-container {	
	margin-bottom: 0px;
}
	.title-text {
		font-size: 2rem; 
	}
}

/* --- SVG 內部動畫與樣式設定 --- */
.side-line {
	stroke: #D46464; /* 還原第一張圖的粗紅線 */
	stroke-width: 5; 
	stroke-linecap: round;
	stroke-dasharray: 120;
	stroke-dashoffset: 120;
	animation: drawLine 0.8s ease-out forwards;
}

.shine-effect {
	animation: shineSweep 3s infinite ease-in-out;
}

@keyframes drawLine {
	to { stroke-dashoffset: 0; }
}

@keyframes shineSweep {
	0% { transform: skewX(-20deg) translateX(-60px); }
	20% { transform: skewX(-20deg) translateX(120px); } /* 光影快速掃過 */
	100% { transform: skewX(-20deg) translateX(120px); } /* 停留一段時間再進行下一次閃光 */
}
/*---------------------//標題----------------------------**/

/* 獨立功能卡片 */
.feature_card {
	background-color: #ffffff;
	border-radius: 12px;
	padding: 30px;
	height: 100%;
	display: flex;
	flex-direction: column;
	border: 3px solid #b1b1b1b0;
	box-shadow: 0 5px 0px rgba(0, 0, 0, 0.04);	
	transition: transform 0.3s ease;
}
.feature_card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}


/* 卡片頭部 (圖示+標題) */
.card_header {
	display: flex;
	align-items: center;
	margin-bottom: 12px;
}

/* SVG 圖示設計設定 */
.header_icon {
	width: 30px;
	height: 30px;
	fill: #d45252; 
	margin-right: 15px;
	flex-shrink: 0; /* 防止螢幕縮小圖示被擠壓變形 */
}

.header_title {
	font-size: 1.6rem;
	font-weight: 600;
	margin-bottom: 0;
	letter-spacing: 1px;
	color: #333333;
}

/* 標題下方的裝飾線 */
.header_divider {
	position: relative;
    line-height: 2;
}
.header_divider:before {
    content: '';
    background: #ffdbc2;
    position: absolute;
    width: 100%;
    height: 5px;
    top: 0px;
    animation: lineWidth 3s ;
}

@keyframes lineWidth {
    0% {
        width: 0%;
    }

    50% {
        width: 100%;
    }

    100% {
        width: 100%;
    }
}
/* 卡片內文 */
.card_body {
	flex-grow: 1; /* 自動推擠底部按鈕 */
}

.card_text {
	font-size: 1.1rem;
	line-height: 1.7;
	color: #333333;
	padding: 20px;
	margin-bottom: 0;
	text-align: justify;
}

.text_highlight {
	color: #d45252; 
	font-weight: 500;
}

.card_footer {
	text-align: center;
}

/* 瞭解更多按鈕 */
.learn_more_btn {
	background-color: #959595; 
	color: #ffffff;
	font-size: 1rem;
	padding: 6px 20px;
	border-radius: 50px; 
	text-decoration: none;
	display: inline-block;
	letter-spacing: 1px;
	transition: background-color 0.3s, box-shadow 0.3s;
	border: none;
}

.learn_more_btn:hover {
	background-color: #393e46; 
	color: #ffffff;	
}


@media (max-width: 767px) {
	.feature_card {
		padding: 25px 20px;
	}
	.header_title {
		font-size: 1.5rem;
	}
}
/*----------------------//卡友附加服務-------------------------*/
/*----------------------聯邦數位帳戶-------------------------*/
/* 左側圖片區塊 */
.nnbimg_wrapper {
	width: 100%;
    border-radius: 8px;
    overflow: hidden;
    /* box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); */
    border: 1px solid #eeeeee;
}

.nnbimg_wrapper .promo_img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

/* 右側文字內容區塊 */
.nnb_wrapper {
	text-align: center;
	padding: 20px 15px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}

/* 一般文字行 */
.nnb_wrapper .date {
	font-size: 17px;
    font-weight: 400;   
    color: #666;
}
.text_line_normal {
	font-size: 1.5rem;
    margin-bottom: 0rem;
    letter-spacing: 1px;
    line-height: 1.8;
    color: #1a1a1a;
}

/* 主色強調文字 (15%) */
.text_main_color {
	color: #d45252; 
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0 4px;
}

.text_small_note {
	font-size: 0.95rem;
	color: #1a1a1a;
	margin-bottom: 2rem;
}

@media (max-width: 767px) {
	.nnb_wrapper {		
		padding: 0px 0px;		
	}
	
	.text_line_normal {
		font-size: 1.2rem;
		letter-spacing: 0px;
	}

	.text_main_color {
		font-size: 1.6rem;
	}
	.text_small_note {
		font-size: 0.85rem;
	}
}
/*----------------------//聯邦數位帳戶-------------------------*/
/*----------------------日常消費都能刷-------------------------*/
.Payments {
	width: 100%;
    background-color: #fcf4e9;	
    background-image: url(../images/Payments_bg.gif);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center top;
}

.partner_section {
	padding: 40px 0 20px 0;
	margin-top: 60px;
}

.partner_highlight {
	color: #d45252;
	font-weight: bold;
}


.partner_card {
	background-color: #fff;
	/* border: 1px solid #cfcdcd; */
	border: 2px solid #b1b1b1;
	border-left: 5px solid #a4a3a3;
	border-radius: 16px;
	padding: 30px;
	height: 100%;
	box-shadow: 0 5px 0px rgba(0,0,0,0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
}

.partner_card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.08);
}
.partner_card_item {
	display: flex;
}
.partner_card_img {
	flex: 0 0 40%;       /* 核心修復：強制佔據 40%，絕對不准縮小！ */
    max-width: 40%;      /* 加上最大寬度限制 */
    margin-right: 20px;
}
.partner_card_img .img_l {
	display: inline-block;
}
.partner_card_img .img_s {
	display: none;
}
.partner_card_title {
	font-size: 1.4rem;
	font-weight: 600;
	color: #222;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 2px solid #d45252; 
}

.partner_card_desc {
	font-size: 1.05rem;
	color: #444;
	line-height: 1.8;
	margin: 0;
	flex-grow: 1; /* 讓卡片內部自動延展，保持等高 */
}

.partner_card_note {
	display: block;
	margin-top: 8px;
	font-size: 0.9rem;
	color: #777;
}

@media (max-width: 768px) {
	.partner_card {
		/* background-color: #fdfdfd; */
		/* border: none;
		border-left: 5px solid #d45252; */
		border-radius: 12px;
		padding: 20px 24px;
		/* box-shadow: 0 2px 10px rgba(0,0,0,0.05); */
	}
	.partner_card_item {
		display: flex;
		flex-direction: column;
	}
	.partner_card_img {		    
    	max-width: 100%;  
		margin: 0px auto 20PX;
	}
	.partner_card_img .img_l {
		display: none;
	}
	.partner_card_img .img_s {
		display: block;
	}
	.partner_card_title {
		font-size: 1.25rem;
		margin-bottom: 12px;
		/* padding-bottom: 0; */
		/* border-bottom: none;  */
	}
	.partner_card_desc {
		font-size: 1rem;
		line-height: 1.7;
	}
}
/*----------------------//日常消費都能刷-------------------------*/
/*----------------------U幣查詢兌換的流程+app-------------------*/
.MaiCoin_app {
	width: 100%;
    background-color: #fcf4e9;	
    background-image: url(../images/step_bg.gif);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center top;
}
.small_title_text {
	font-family: "PingFang TC", "Microsoft JhengHei", sans-serif;
    color: #2F2E2E;
    margin: 0;
    letter-spacing: 2px;
    font-weight: 600;
    font-size: 1.8rem;
    line-height: 1.2;
	margin-top: 5px;
}
 /* 步驟卡片外觀 */
.step_card {
	text-align: center;
	height: 100%;
	display: flex;
	flex-direction: column;
}

/* 步驟標籤 (STEP 1, 2...) */
.step_badge {
	background-color: #009999;
	color: #ffffff;
	font-size: 1.5rem;
	font-weight: 600;
	padding: 0.3rem 2.5rem;
	border-radius: 50px;
	display: inline-block;
	align-self: center;
	margin-bottom: 1.5rem;
	letter-spacing: 1px;
}

/* 步驟說明文字 */
.step4_text {
	color: #009999;
	font-weight: 700;
	font-size: 1.15rem;
	line-height: 1.5;
	margin-bottom: 1.5rem;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-grow: 1;
}

/* 手機截圖容器 */
.mockup_wrapper {
	max-width: 260px;
	margin: 0 auto;
	margin-top: auto;
	position: relative;
}

/* 手機截圖樣式 */
.mockup_img {
	width: 100%;
	height: auto;
	/* border: 1px solid #f0f0f0;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08); */
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.mockup_wrapper:hover .mockup_img {
	transform: translateY(-5px);
	/* box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); */
}
@media (max-width: 768px) {
	.mockup_wrapper {
		margin: 0 -5px 20px;
	}	
	.step_badge {
		font-size: 1.2rem;
		padding: 0.3rem 1.5rem;
		margin-bottom: 1rem;
	}
	.step4_text {
		font-size: 1rem;
		margin-bottom: 1rem;
	}

}
/*----------------------//U幣查詢兌換的流程+app-------------------*/
/*----------------------常見問題Q&A-------------------------*/

@keyframes floatDown {
	0%, 100% {
	transform: translateY(0);
	}
	50% {
	transform: translateY(8px); /* 向下移動 8px */
	}
}
.animated-arrow {
	animation: floatDown 1.5s ease-in-out infinite;
}

/* QA 主容器 */
.qa-container {
	width: 100%;
	/* max-width: 800px; */
	margin: 0 auto;
}

/* 每一個 QA 項目 */
.qa-item {
	background-color: #fff;
	margin-bottom: 8px; /* 項目之間的間距 */
	border-radius: 4px;
	overflow: hidden;
	/* box-shadow: 0 2px 5px rgba(0,0,0,0.05); */
}
.category-title {
	color: #d45252;
	font-size: 1.3rem;
	font-weight: 600;
	margin-top: 40px;
	margin-bottom: 20px;
	/* padding-bottom: 10px; */
	padding-left: 12px;
	padding-right: 12px;
}
.category-title:first-of-type {
	margin-top: 0;
}
/* 問題標題區域 (summary) */
.qa-question {
	padding: 12px 20px 12px 30px;
	font-size: 18px;
	font-weight: 600;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #fbdede;
	color: #fff;
	transition: background-color 0.3s ease;
	list-style: none; /* 移除 Chrome/Safari 預設的三角形 */
	border-bottom: 2px dashed #fdf5eb;
}

/* 移除 Firefox 預設的三角形 */
.qa-question::-webkit-details-marker {
	display: none;
}

/* 箭頭圖標樣式 */
.arrow-icon {
	width: 18px;
	height: 18px;
	color: #d45252; 
	transition: transform 0.3s ease;
}
.qa-item summary.qa-question span{
	color: #000000bf;
	display: block;
}

/* 展開時箭頭旋轉並變色 */
.qa-item[open] .arrow-icon {
	transform: rotate(180deg);
}

/* 答案內容區域 */
.qa-answer {
	padding: 16px 20px;
	background-color: #fff;
	line-height: 1.8;
	color: #555;
	border: 1px solid #ddd;
	border-top: none; /* 避免跟 summary 的 dashed 邊框重疊 */
}

.qa-answer p {
	margin-bottom: 1em;
	margin-top: 0;
}

/* 答案中的列表樣式 */
.qa-answer ol, .qa-answer ul {
	padding-left: 25px;
	margin-bottom: 1em;
}

.qa-answer li {
	margin-bottom: 0.5em;
}

/* 連結樣式 */
.qa-answer a {
	color: #d45252;
	text-decoration: none;
}
.qa-answer a:hover {
	text-decoration: underline;
}
/*----------------------//常見問題Q&A-------------------------*/

.table_lv th {
	background-color: #f9d5ab;
	text-align: center;
}
.table_lv td {
	text-align: center;
}

/*
--- 版權宣告footer ---*/

footer {
	width: 100%;
	background-color: #f4f4f4;
}

#footer {
	background-color: #eeeeee;
}

.copyright a {
	color: #7f7f7f;
	outline: none;
	text-decoration: none;
}

.copyright h4,
.copyright h5 {
	margin-top: 15px;
}

.copyright h4 {
	font-size: 26px;
	text-align: right;
}

.copyright h5 {
	font-size: 12px;
	text-align: left;
	color: #777;
	margin-left: 70px;
}

.copyright p {
	font-size: 16px;
	text-align: center;
	margin-top: 5px;
	margin-bottom: 5px;
}

.copyright .list-inline {
	margin-bottom: 0;
}

@media screen and (max-width: 992px) {
	.copyright h4 {
		font-size: 20px;
		text-align: center;
	}

	.copyright h5 {
		font-size: 12px;
		margin-left: auto;
	}

	.copyright p {
		font-size: 12px;
		text-align: center;
	}
}

@media only screen and (max-width: 768px) {
	#footer {
		padding: 10px 0;
		color: #7f7f7f;
		background-color: #eeeeee;
		padding-bottom: 100px;
	}

	#footer .copyright {
		margin-bottom: 0px;
		padding-bottom: 0;
	}

	.copyright h5 {
		text-align: center;
	}

	.copyright a {
		color: #7f7f7f;
		outline: none;
		text-decoration: none;
	}
}


section {
	position: relative;
	padding: 6rem 0;
}
@media screen and (max-width: 768px) {
	section {
		padding: 3rem 0;
	}

}


/* main-tip */













/* @keyframes lineWidth {
	from {
		width: 0%;
	}

	to {
		width: 90%;
	}
} */



@media screen and (max-width: 768px) {

	.swiper-button-prev,
	.swiper-button-next {
		height: auto;
		width: auto;
		background-color: transparent;
	}

	.swiper-button-prev {
		left: 10px;
	}

	.swiper-button-next {
		right: 10px;
	}
}




/* Navbar links */

#navbar {
	background-color: #fcf3e8;
	position: relative;
	z-index: 5;
	border-bottom: 1px solid #f8d2a3;   
    border-top: 1px solid #f8d2a3;
	/* margin-top: 20px;
	margin-bottom: 70px; */
	/* max-width: 100vw; */
}

#navbar::after {
	content: '';
	/* background-image: url(../images/bg-edge_02.gif); */
	position: absolute;
	height: 130px;
	width: 100%;
	bottom: -80px;
}

@media only screen and (max-width: 1400px) {
	/* #navbar::after {bottom: -120px;} */
}

@media only screen and (max-width: 768px) {
	#navbar::after {
		height: 80px;
		bottom: -75px;
		background-position: right 25% bottom;
	}
}

#navbar .navbar {
	background-color: transparent;
	-webkit-transition: .5s;
	transition: .5s;
	z-index: 5;
}

@media screen and (max-width: 768px) {
	#navbar .navbar {
		padding-right: 12px;
		padding-left: 12px;
		padding-top: 8px;
		flex-wrap: nowrap;
	}
}

@media screen and (max-width: 395px) {
	#navbar .navbar {
		/* padding-right: 8px;
		padding-left: 8px;
		padding-top: 5px; */
	}
}

@media screen and (max-width: 340px) {
	#navbar .navbar {
		/* padding-right: 20px;
		padding-left: 20px;
		padding-top: 5px; */
	}
}

#navbar a {
	display: flex;
	justify-content: center;
	padding-top: .5rem;
	padding-bottom: .5rem;
	padding-left: 2.25rem;
	padding-right: .25rem;
	color: var(--u_primary);
	font-size: 1.3rem;
	font-weight: 600;
	text-decoration: none;
	text-align: center;
	position: relative;
	border-bottom: 2px dotted transparent;
	transition: 0.25s;
}

#navbar a::before {
	content: '';
	background-image: url(../images/icon-fan.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 43px;
	height: 25px;
	position: absolute;
	top: 13px;
	left: -5px;
	transform: rotate(0deg);
	transition: transform 2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

#navbar a:hover {
	transform: translateY(-3px);
}

#navbar a:hover:before {
	transform: rotateY(360deg);
}

#navbar.sticky {
	position: fixed;
	margin-top: 0;
	background-color: rgba(255, 255, 255, 0.95);
	-webkit-box-shadow: 0 5px 3px rgba(0, 0, 0, 0.1);
	box-shadow: 0 5px 3px rgba(0, 0, 0, 0.1);
	border-bottom: 2px solid var(--u_primary);;
	-webkit-animation: slideDown 1s;
	animation: slideDown 1s;
}

#navbar.sticky::after {
	display: none;
}

#navbar.sticky a:hover {
	/* border-bottom: 2px dotted #d4c1a4; */
}

@keyframes slideDown {
	from {
		top: -100px;
	}
	to {
		top: 0;
	}
}

@keyframes slideUp {
	from {
		bottom: -100px;
	}
	to {
		bottom: 0;
	}
}

.sticky {
	position: fixed;
	top: 0;
	width: 100%;
	left: 50%;
	transform: translateX(-50%);
}

@media screen and (max-width: 991px) {
	#navbar a {
		font-size: 1.1rem;
	}
	#navbar a::before {
		top: 10px;
		/* width: 32px; */
	}
	#navbar a:hover:before {
		top: 10px;
	}}

@media screen and (max-width: 768px) {
	#navbar a {
		font-size: 1rem;
		flex-wrap: wrap;
		padding-top: 1.75rem;
		padding-left: 0;
		padding-right: 0;
		line-height: 1.2;
	}
	#navbar a::before {
		top: 0px;
		left: 50%;
		opacity: 1;
		transform: translateX(-50%);
	}
	#navbar a:hover:before {
		top: 5px;
		left: 50%;
		transform: translateX(-50%);
	}

	#navbar.sticky {
		margin-bottom: 0;
		background-color: rgba(255, 255, 255, 0.9);
		-webkit-box-shadow: 3px 0 3px rgba(0, 0, 0, 0.1);
		box-shadow: 3px 0 3px rgba(0, 0, 0, 0.1);
		-webkit-animation: slideUp 1s;
		animation: slideUp 1s;
	}
	.sticky {
		top: auto;
		bottom: 0;
	}	
}

@media screen and (max-width: 576px) {
	#navbar {
		margin-top: 0px;
	}
}
@media screen and (max-width: 400px) {
	#navbar a {
		font-size: 0.85rem;
		
	}
}
@media screen and (max-width: 340px) {
	#navbar a {
		display: initial;
		font-size: .5rem;
	}
}

/* modal-header */

.modal-header {
	background-color: #d45252;
}

.modal-title {
	font-size: 1.2rem;
	color: #FFFFFF;
}

.close {
	font-size: 2rem;
	line-height: .75;
}
/* .MaiCoin {
	font-weight: bold;
    text-align: center;
    font-size: 2.25rem;
    color: #2A2A2A;
    display: block;
    padding-top: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
}
@media screen and (max-width: 576px) {
	.MaiCoin {
		font-size: 1.8rem;
		flex-direction: column;
		margin-bottom: 20px;
		line-height: 1.4; 
        margin-bottom: 20px;
        padding-top: 20px;
	}
} */
/* modal-body */
/* .stepNum {
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    background: #f15559;
    border-radius: 50em;
    border: 5px solid #fff;
    box-shadow: 0 0 1px 1px #f15559;
    width: 80px;
    height: 80px;
    padding: 5px;
    margin: 0 auto;
	text-align: center;
}
.lh-s{
    font-size: 1.2rem;
    color: #000000;
    margin-top: 1rem;
    margin-bottom: .75rem;
	text-align: center;
}
@media screen and (max-width: 576px) {

	.modal-body .table td,
	.modal-body .table th {
		font-size: .7rem;
		padding: 0.25rem;
	}

	.modal-body .btn.btn-lg {
		min-width: 80px;
	}
	.stepNum {
		font-size: 1.5rem;
		color: #fff;
		width: 50px;
		height: 50px;	
		display: flex;
		justify-content: center;
		align-items: center;
	}
} */
/* 浮標小幫手彈跳視窗更改方向 右邊進場 */
/* .modal.show-right .modal-dialog {
    transform: translateX(10vh);
    transition: .5s ease-out;
}

.modal.show .modal-dialog {
    transform: translateX(0);
} */

/* 如何辦卡-小幫手 彈跳視窗加寬 */
/* @media screen and (max-width: 1199px) {
    .modal .modal-dialog {
        --bs-modal-width: 94%!important;
    }
} */

/* 輪播頁碼-樣式設定 */
/* .swiper-pagination-bullet {
    width: 25px !important;
    height: 25px !important;
    text-align: center;
    line-height: 25px;
    font-size: 1rem;
    color: #000;
    opacity: 1;
    background: rgba(0, 0, 0, 0.2) !important;
    font-family: 'NotoSansCJKtc';
} */

/* 輪播跳該頁-樣式設定 */
/* .swiper-pagination-bullet-active {
    color: #fff !important;
    background: #d45252 !important;
} */

/* 步驟圖片 裝置顯示 */
/* .pc-wrapper {
	display: block;
	display: flex;
	gap: 4;
}
.helper-step_m {
    display: none;
}
.pc-wrapper .pc-step {
	padding: 10px;

} */
/* 如何辦卡-小幫手 上下頁按鈕樣式 */
/* .swiper-button-prev:after, .swiper-button-next:after {
    font-size: 1rem!important;
    font-weight: bold;
    background-color: #d45252;
    color: #fff;
    border-radius: 50px;
}
.swiper-button-prev:after{
    padding: 6px 11px 6px 9px;
}
.swiper-button-next:after {
    padding: 6px 9px 6px 11px;
} */

/* 步驟圖片 裝置顯示 */
/* @media screen and (max-width: 576px) {    
    .pc-wrapper {
		display: none;
	}
    .helper-step_m {
        display: block;
    }
	.helper-step_m {
		display: flex;
		justify-content: center;
		flex-direction: column;
		align-items: center;
	}
	.helper-step_m img {
		width: 90%;
	}
    
    .swiper-button-prev, .swiper-button-next {
        top: 37%!important;
    }
} */

/* btn_goTop */
.goTop {
	font-weight: 600;
	font-size: 1rem;
	padding: 15px;
	border-radius: 50em;
	border: 2px solid #393e46;
	color: #393e46;
	background-color: #ffffff;
	-webkit-box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.2);
	position: fixed;
	right: 1rem;
	bottom: 1.875rem;
	cursor: pointer;
	-webkit-transform: translateY(120px);
	transform: translateY(120px);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: .7;
	z-index: 10;
}

.goTop:after {
	content: "TOP";
}

.goTop:hover {
	background-color: #393e46;
	color: #ffffff;
	opacity: 1;
}

.goTop:focus {
	outline: none;
}

.goTop.active {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	-webkit-transition: .6s;
	transition: .6s;
	height: auto;
}

@media screen and (max-width: 768px) {
	.goTop {
		right: .75rem;
		bottom: 8rem;
	}
}

/* btn_立即申辦 */

/* .btn_apply-card {
	font-weight: 600;
	font-size: 1rem;
	padding: 1rem .5rem;
	text-align: center;
	line-height: 1.2;
	border-top-left-radius: 20px;
	border: 2px solid #393e46;
	color: #ffffff;
	background-color: #393e46;
	position: fixed;
	right: 0;
	bottom: 26.5rem;
	width: 2.6rem;
	cursor: pointer;
	-webkit-transform: translateY(120px);
	transform: translateY(120px);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: .8;
	z-index: 10;
}

.btn_apply-card.show {
	right: 160px;
	opacity: 1;
}

.btn_apply-card:after {
	content: "立即申辦";
}

.btn_apply-card:before {
	content: '';
	background-image: url(../images/icon-bird-s.png);
	position: absolute;
	width: 100px;
	height: 72px;
	top: -47px;
	right: -50px;
	transform: translateX(50px) translateY(20px);
	transition: .8s;
	opacity: 0;
}

.btn_apply-card:hover {
	background-color: #393e46;
	color: #ffffff;
	opacity: 1;
}

.btn_apply-card:hover:before {
	transform: translateX(-15px) translateY(-10px);
	opacity: 1;
}

.btn_apply-card:focus {
	outline: none;
}

.btn_apply-card .dropdown-menu {
	display: block;
	height: 113px;
	top: -2px;
	left: auto;
	right: -180px;
	padding: 0;
	margin: 0;
	border: 1px solid #393e46;
	border-radius: 0;
	opacity: 1;
}

.btn_apply-card .dropdown-item {
	padding: .75rem 1.5rem;
	line-height: 2;
}

.btn_apply-card .dropdown-item:hover,
.btn_apply-card .dropdown-item:focus {
	color: #ffffff;
	background-color: #393e46;
} */



/* btn 立即申辦 */

.btn_travelgo_t {
	font-weight: 600;
	font-size: 1rem;
	text-align: center;
	line-height: 1.2;
	border-top-left-radius: 20px;
	color: #ffffff;
	border: 2px solid #051d4f;
	background-color: #051d4f;
	position: fixed;
	right: 0;
	bottom: 21rem;
	width: 2.6rem;
	opacity: 1;
	z-index: 10;
}

.btn_travelgo_t:hover {
	border: 2px solid #051d4f;
	background-color: #051d4f;
	opacity: .8;
}

.btn_travelgo_t a {
	display: block;
	padding: 1rem .5rem;
}



/* btn 首刷禮查詢 */

.btn_travelgo {
	font-weight: 600;
	font-size: 1rem;
	text-align: center;
	line-height: 1.2;
	border-bottom-left-radius: 20px;
	color: #ffffff;
	border: 2px solid #051d4f;
	background-color: #051d4f;
	position: fixed;
	right: 0;
	bottom: 10.8rem;
	width: 2.6rem;
	opacity: 1;
	z-index: 10;
}

.btn_travelgo:hover {
	border: 2px solid #051d4f;
	background-color: #051d4f;
	opacity: .8;
}

.btn_travelgo a {
	display: block;
	padding: 1rem .5rem;
}
/* 更多優惠 */
.main-benefit{
	padding: 6em 0;
	background-color: #f4f4f7;
	background-image: url(../images/bg-jp-fuji-bottom_1.png);
	background-size: contain;
	background-position: bottom right;
	background-repeat: repeat-x;
	background-attachment: fixed;
}

/* faq */

.main-faq {
	padding: 3rem 0;
	/* margin-bottom: 10px; */
	/* background: linear-gradient(0deg, #f4f4f7, #fff); */
	/* padding: 6em 0; */
	background-color: #ffffff;
	background-image: url(../images/faq_bg.gif);
	background-size: contain;
	background-position: bottom right;
	background-repeat: repeat-x;
	background-attachment: fixed;
}
@media screen and (max-width: 768px) {
	.main-faq {
		background-image: url(../images/faq_bg_m.gif);
		/* background: linear-gradient(0deg, #fff, #fcebd6);
		background-image: none;
		background-color: none; */
	}
}

.btn-block {
	display: block;
	width: 100%;
}





#fh5co-header {
	position: absolute;
	z-index: 99;
	width: 100%;
	opacity: 1;
	top: 0;
	/* margin-top: 20px; */
}

@media screen and (max-width: 768px) {
	#fh5co-header {
		margin-top: 0;

	}

	#fh5co-header .navbar-brand {
		color: #009999 !important;
	}

	#fh5co-header #navbar li a {
		color: rgba(0, 0, 0, 0.5) !important;
		-webkit-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
	}

	#fh5co-header #navbar li a:hover {
		color: #009999 !important;
	}

	#fh5co-header #navbar li a span:before {
		background: transparent !important;
	}

	#fh5co-header #navbar li.active a {
		background: transparent;
		background: none;
		color: #009999 !important;
	}

	#fh5co-header #navbar li.active a span:before {
		visibility: visible;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

#fh5co-header .navbar {
	padding-bottom: 0;
	margin-bottom: 0;
}

.btn-close {
	background-color: #FFFFFF;
	border-radius: 10rem;
}

.codebox {
	width: 50%;
}

.faqbtn:hover,
.faqbtn:active,
.faqbtn:focus {
	background-color: transparent;
	border-color: transparent;
	/* background-color: #FFFFFF !important;
	border-color: white; */
}

.card-header .collapsed.faqbtn::before {
	transform: rotate(-90deg);
	color: #04496c;

}

.card-header .faqbtn::before {
	display: none !important;
}

.text-left {
	text-align: left;
}

.btn-secondary {
	border: none !important;
	border: 2px solid transparent !important;
	width: 92px !important;
	display: inline-block;
	margin-top: 5px;
	z-index: 5;
}
