@import url("reset.css");

:root {
  --main-green: #2da39e;
  --main-mid-green: #61c7c3;
  --main-light-green: #98cbc9;
  --main-orange: #d47455;
  --main-dark-orange: #da4c1e;
  --main-light-orange: #e0a3a3;
  --main-light-gray:#f0efec;
  --main-gold:#b09a7c;
  --main-light-gold:#dfd7cb;
  --main-light-gray-2:#717071;
}

html, body{
	width: 100%;
	height: 100%;
	/* font-family: Arial, "儷黑 Pro", "LiHei Pro", "微軟正黑體", "Microsoft JhengHei", "標楷體", sans-serif;	 */
	background-color: var(--main-mid-green);
}

.navbar-green{
	background-color: var(--main-mid-green)!important;
}

body{
	position: relative;
	background-size: cover;
	
}

.breadcrumb-item{
	margin-bottom:.35rem;
}


.bg-lgray{
	background-color: var(--main-light-gray)!important;
}

.navbar-light .navbar-toggler{
	border:0;
}

.navbar-toggler:focus,
.navbar-toggler:active,
.navbar-toggler-icon:focus {
	outline: none;
	box-shadow: none;
}

.navbar-nav .nav-link{
	font-size: 1.2rem;
	/* text-shadow: 1px 1px 2px gray; */
}

.breadcrumb-item a{
	color:var(--main-orange);
}

.breadcrumb{
	background-color:transparent;
}

body.newsPage div:where(.swal2-container) div:where(.swal2-html-container){
	padding: .5em 1em .3em;
}

p{
	font-size: 1.2rem;
	line-height: 1.6;
	color: var(--main-light-gray-2);
	margin-bottom:.5rem;
}

#loading{
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 999999;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

#loading img{
	width: 10%;
	height: auto;
	position: absolute;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

.yh-h1{
	font-size: 2.5rem;
	font-weight: bold;
	color: var(--main-orange);
}

.text-lgray{
	color: var(--main-light-gray)!important;
}

.navbar-nav.yh-navbar{
	margin:1rem 0;
}

.navbar-nav.yh-navbar li.nav-item{
	padding:0 .5rem;
}

.yh-b-border{
	border-bottom:2px solid var(--main-light-gold);
}

.btn-yh-1{
	display: flex;
	align-items: center;
	width: fit-content;
	font-size: 1.2rem;
}

.carousel-control-prev,.carousel-control-next{
	border:0;
}

.carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover {
	color: #fff;
	text-decoration: none;
	outline: 0;
	opacity: .9;
}

.carousel-control-next, .carousel-control-prev {
	position: absolute;
	background: transparent;
	top: 0;
	bottom: 0;
	z-index: 1;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: flex-end;
	width: 15%;
	color: #333;
	text-align: center;
	opacity: 1;
	transition: opacity .15s ease;
}

.carousel-control-prev {
	justify-content: flex-start;
}
.carousel-control-next:hover, .carousel-control-prev:hover{
	background: transparent;
}

.bi.bi-chevron-compact-right,
.bi.bi-chevron-compact-left{
	font-size: 3rem;
}

/* navbar */
@media (min-width: 768px) {
	.navbar-expand-md .navbar-collapse {
		justify-content: center;
	}
}

.navbar-expand-md .navbar-nav .nav-link{
	//color: var(--main-light-gray);
	color: #fff;
	transition: all .3s ease-in-out;
	font-size: 1.4rem;
	font-weight: bold;
	border:2px solid #fff;
	border-radius:10px;
	padding:.5rem 1rem;
}

.navbar-expand-md .navbar-nav .nav-link:hover{
	color:#f6ea7e;
	border:2px solid var(--main-dark-orange);
	background-color:var(--main-dark-orange);
}

/* ============================================================================= */

.indexBanner{
	position: relative;
	width:100%;
	margin-bottom: 6rem;
}

.indexBanner-img-wrapper{
	width:100%;
	height: auto;
	position: relative;
	overflow: hidden;
}

.indexBanner-img-wrapper img{
	width:100%;
	height:auto;
}

img.bannerHand{
	position: absolute;
	bottom:0;
	right:0;
	width:50%;
	height:auto;
	z-index: 1;
}

img.bannerWave{
	position: absolute;
	top:0;
	left:0;
	z-index: 2;
}

img.bannerTitle{
	position: absolute;
	top:0;
	left:0;
	z-index: 2;
}

.index-titleimg{
	position: absolute;
	bottom:-15rem;
}

.index-titleimg img{
	width:70%;
	height: auto;
	display: block;
	margin: 0 auto;
}

/* 首頁 */
.B_mustKnow .card-deck .card-body h5.card-title{
	font-size: 2rem;
	color: var(--main-green);
	text-align: center;
}

.B_mustKnow .card-deck .card-body h5.card-title span{
	font-size: 2.5rem;
	color: var(--main-orange);
	border-bottom: 2px solid var(--main-orange);
}

.B_mustKnow .card-deck .card-body p.card-text{
	font-size: 1.2rem;
	line-height: 1.4;
	color: var(--main-light-gray-2);
}

.B_mustKnow .card-deck .card-footer{
	background-color: transparent;
	border-top:0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-outline-yh-gold{
	border:2px solid var(--main-gold);
	border-radius: 10px;
	color:var(--main-gold);
	text-decoration: none!important;
}

a.btn-outline-yh-gold:hover{
	background: var(--main-gold);
	color:#fff;
}

.B_story h2{
	text-align: center;
	color:var(--main-green);
	font-size: 2rem;
	
}

.B_story h2.subtitle{
	font-size: 3.5rem;
	margin:2rem 0;
}

.index-story-row{
	display: flex;
	/* align-items: center; */
	justify-content: center;
	
}



.story-body-outline{
	
	border:2px solid var(--main-green);
	border-radius: 20px;
	padding:0;
}

/* .story-body-outline:last-child{
	margin-left:.5rem;
} */

.story-body.story-body-outline h2{
	background: var(--main-green);
	color:#fff;
	border-top-left-radius: 18px;
	border-top-right-radius: 18px;
	line-height: 2;
	margin-bottom:0;
}

.story-body-cnt{
	padding:1.2rem;
	padding-left: 15px;
	padding-right:15px;
}

.story-body-cnt b{
	color:var(--main-orange);
}

.index-story-row .story-img img{
	border-radius: 10px;
	border:5px solid #fff;
}

.index-story-row .story-body img{
	width:60%;
	margin-bottom:1rem;
}

.index-story-row .story-body h3{
	font-size: 1.6rem;
	font-weight: bold;
	color:var(--main-gold);
}

.index-story-row .story-body p{
	font-size: 1.2rem;
	line-height: 1.4;
	color:var(--main-light-gray-2);
	text-align: left;
}

.index-story-row .story-body ul{
	list-style: square;
}

.index-story-row .story-body ul li{
	text-align: left;
	padding:.2rem .35rem;
	font-size: 1.2rem;
}

/* B肝在台灣的現況 */

.situation-col{
	padding:0 9rem;
}

.yeartime-row{
	background-image: url("../images/meter.png");
	background-repeat: repeat-y;
	background-position: center;
	justify-content: center;
	background-size:contain;
}

h2.year_label{
	font-size: 5rem;
	color:var(--main-dark-orange);
	font-weight: bolder;
}

.mb-cust{
	margin-bottom:3rem;
}

/* B友小故事 */
/* story-lsit頁面 */
h1.page-title{
	font-size: 2rem;
	color: var(--main-light-gray-2);
	line-height:2;
}

.story-list-row .card-title{
	font-size: 1.6rem;
	color: var(--main-orange);
}

.story-list-row .card-text{
	font-size: 1.2rem;
	color: var(--main-light-gray-2);
	line-height: 1.4;
}

.story-bg-img{
	background-size: cover!important; 	
	background-repeat: no-repeat!important;
}

/* bstyro內頁 */
.story-head h3{
	font-size: 2.6rem;
	color:var(--main-light-gray-2);
	margin-bottom:1.5rem;
}

.story-banner-title{
	background: var(--main-orange);
	padding: 1.5rem;
}

.story-banner-title h1{
	font-size: 2rem;
	color: #fff;
	line-height:1.5;
}

.story-body h2{
	font-size: 1.8rem;
	color: var(--main-green);
	line-height: 1.5;
	margin-bottom: .8rem;
}



/* 最新消息 */
.news-body{
	display: flex;
}

.sesBtn-box{
	display: flex;
	justify-content: flex-start;
}

.sesinfoBtn{
	display: flex;
	align-items: center;
	margin:.5rem;
	text-align: center;
}

/* 認識B型肝炎 */
.binfor-row{
	margin-bottom:2rem;
}

.binfor-row h1{
	color:var(--main-dark-orange);
}


.binfor-row h2{
	font-size: 1.5rem;
	color:var(--main-green);
	line-height: 1.5;
}

.binfor-row h4{
	font-size: 2.5rem;
	color:var(--main-dark-orange);
	font-weight: bold;
}

.binfor-row h3{
	font-size: 1.2rem;
	font-weight: bold;
	color:var(--main-gold);
	line-height: 1.5;
}

.binfor-row ul{
	list-style: square;
}

.binfor-row ul li{
	padding:.5rem;
	font-size: 1.2rem;
	line-height:1.5;
	color: var(--main-light-gray-2);
}

.binfor-row.binfor-cnt-row{
	margin-bottom:5rem;
}

.binfor-txt-col{
	display: flex;
	justify-content: center;
	align-items: center;
}

.binfor-txt{
	border: 2px solid var(--main-green);
	border-radius: 20px;
	padding:2rem;
}

.binfor-row .img-body{
	display: flex;
	flex-direction: column;
	align-items: center;
}

.binfor-row .img-body img{
	width:80%;
}

.binfor-card{
	display: flex;
	flex-wrap: wrap; /* 允許換行 */
	gap:5px;
	margin-bottom:1rem;
}

.binfor-card-body{
	flex: 1;
	/* border:1px solid var(--main-dark-orange); */
	border-radius: 10px;
	/* padding:1rem; */
	display: flex;
}

.year-table-col {
	padding: 0 3rem;	
}

/* CSS 樣式，您可以根據需要自訂顏色 */
table.binfor-table {
	width: 100%;
	border-collapse: collapse;
	font-family: sans-serif;
}

table.binfor-table th, td {
	border: 1px solid #ccc;
	padding: 12px;
	text-align: center;
	line-height: 1.4;
}

table.binfor-table tr.text-left td {
	text-align: left;
}

table.binfor-table th {
	background-color: var(--main-light-green);
	font-weight: bold;
}

table.binfor-table .odd {
	background-color: #ffffff; /* 奇數行底色 */
}

table.binfor-table .even {
	background-color: #f9f9f9; /* 偶數行底色 */
}

.video-row {
	margin-bottom:3rem;
}

/* 手機版樣式 */
@media (max-width: 768px) {
	.binfor-card-body {
		flex: 1 1 calc(50% - 2.5px); /* 一排顯示兩個，並考慮到 gap */
	}
}

.binfor-card-cnt{
	width:100%;
	margin:.25rem;
	padding:.8rem;
	background: var(--main-dark-orange);
	color:#fff;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.4;
	display: flex;
	justify-content: center;
	border-radius: 5px;
	align-items: center;
	
}

ul.cust-ul{
	margin-bottom:0;
	list-style: square;
	font-size:1.2rem;
	color:var(--main-light-gray-2);
}

ul.cust-ul li{
	padding:.25rem 0;
	line-height: 1.4;
}

.img_box{
	width:100%;
	height:auto;
	position: relative;
}

.img_box img,.img_box .imgTxt_wrap{
	border-radius: 20px;
}

.imgTxt_wrap{
	width:100%;
	height:100%;
	background: rgba(0,0,0,.4);
	position: absolute;
	z-index: 1; 
}

.img_box p{
	position: absolute;
	top:50%;
	left:50%;
	transform: translate(-50%, -50%);
	z-index: 2; /* 確保文字在圖片上方 */
	color:#fff;
	font-size: 3rem;
}

.yeartime-info-row h2{
	font-size: 1.6rem;
	line-height: 1.6;
	color:#424242;
}
/* footer */


footer.footer p span{
	font-size: .8rem;
	color:var(--main-light-gray);
} 

.footer-container{
	display: flex;
	justify-content: space-between;
}


/* 手機感 */
@media (max-width: 767px) { 
	
	.binfor-row.binfor-cnt-row{
		margin-bottom:3rem;
	}
	
	.img_box p{
		line-height: 1.3!important;
		text-align: center;
	}
	
	#thumbnails{
		width:100%;
		overflow: hidden;
	}
	
	.binfor-row{
		margin-bottom:2rem;
	}
	
	.navbar-expand-md .navbar-nav .nav-link{
		border: 0;
	}
	
	p{
		line-height: 1.6!important;
	}
	
	.yh-h1{
		font-size: 2rem;
	}
	
	.navbar-expand-md .navbar-nav .nav-link{
		font-size: 1.2rem;
	}
	
	/* .index-story-row .story-body img{
		width: 60%;
	} */
	
	.btn-yh-1{
		margin:0 auto;
	}
	
	.indexBanner {
		position: relative;
		width: 100%;
		margin-bottom: 3rem;
	}
	
	.index-titleimg{
		position: absolute;
		bottom:-8rem;
	}
	
	.index-titleimg img{
		width:100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	
	.yeartime-row{
		/* background-image: url("../images/meter_m.png");
		background-repeat: repeat-y;
		background-position: left;
		justify-content: center;
		background-size:auto; */
		background-image:none;
	}
	
	.video-row {
		margin-bottom:3rem;
	}
	
	.situation-col{
		padding:0 2rem;
	}
	
	.story-head h3 {
		font-size: 2rem;
	}
	
	.year-table-col {
		padding: 0 2rem;	
		border-radius: 30px;
	}
	
	.story-banner-title h1{
		font-size: 1.5rem;
	}
	
	.footer-container{
		flex-direction: column;
	}
}