@charset "utf-8";

/* html,body,div,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,fieldset,input { margin: 0; padding: 0; font-family: Arial, Helvetica, Serif, "微軟正黑體","Microsoft JhengHei", 'Open Sans'; } */
/* html,body,div,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,fieldset,input { margin: 0; padding: 0; font-family:'Times New Roman', Times, "PMingLiU", "NSimSun", serif; } */
/* CSS Document */
html,body,div,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,fieldset,input { margin: 0; padding: 0; }
/* .font { font-family: 'Times New Roman', Times, serif; } */
/* .font { font-family: "微軟正黑體","Microsoft JhengHei", sans-serif; } */
.clearfix:before,
	.clearfix:after { content: ""; display:table; }
	.clearfix:after { clear:both; }
	img{ vertical-align: middle; }

a { color: #73176a; text-decoration: none; transition: color 0.3s ease; }
a:link { text-decoration: none; }
a:hover { text-decoration: none; color: #73176a; }
a:active { text-decoration: none; }
a:visited { text-decoration: none; }

P+P { margin-top: 1em; }
	
html{
	background-color: rgb(117, 136, 136);
	scroll-behavior: smooth;
}
*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
body{
	font-family: "Microsoft JhengHei",'Noto Sans TC', sans-serif;
	/* background-color:rgb(229, 238, 234); */
}
/* body {
	margin: 0;
	height: 100vh;
	display: grid;
	place-items: center;
	background: rgb(231, 231, 231);
} */
p {
	margin-top: 0;
	margin-bottom: 0 !important;
}
.footer {
	position: relative;
	width: 100%; height: 150px;
	padding: 15px 0;
	text-align: center; font-size: 18px; letter-spacing: 2px;
	color: #e1e8f7; background-color: rgb(73, 65, 65);
}

h1 { font-size: 2em; }
h2 { font-size: 1.2em; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.2em; }

.btn {
	border: none;
	min-width: 200px;
	padding: .75em 1em;
	transition: all 0.2s ease;
	font-size: 1em;
	font-weight: normal;
	line-height: 1.6em;
	vertical-align: middle;
	cursor: pointer;
	border-radius: 3px;
	color: white;
	background-color: #811954;
	background-size: auto 120%;
	text-align: center;
	white-space: nowrap;
	font-size: 1.1em;
	letter-spacing: .05em;
}
.btn:hover,
.btn:active {
	color: white;
	background-color: #932e67;
}
.icon-arrow-l:before { content: "＜"; display: inline-block; transform: scale(0.7, 1); padding-right: .25em; margin-left: -.5em;  }
.icon-arrow-r:after { content: "＞"; display: inline-block; transform: scale(0.7, 1); padding-left: .25em; margin-right: -.5em; }

/*------------------------- Header ---------------------*/
#headBanWrap { 
	position: relative;
	width: 100%; height: auto;
	overflow: hidden;
	background: rgb(166,31,39);
	background-size: contain; 
}
.headBanBack {
	position: absolute; top:0; bottom: 0; left: 0; right: 0;
	/* background: url(../images/ban_Back.png); */
	background-image:url(../images/Header_Banner_back.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	/* background-size:auto 100%; */
	background-size:cover;
}
#rthklogo { width: 120px; position: absolute; top: 3vw; left: 3vw; z-index: 10; }
.banArtWrap {
	position: relative; 
	/* max-width: 1320px;  */
	height: auto; 
	margin: 0 auto;  
}
.banArt { position: relative; width:100%; height: auto; overflow: hidden; }
.banImg { display: block; width: 100%; }
.banImg_m { display: none;}
.banLogoWrap { 
	position: absolute; top:0; bottom: 0; left: 0; right: 0;
	display: flex; justify-content: center;
}
.banLogo { height: 100%;}
.banLogoImg { display: block; height: 100%; margin: 0 auto;}


/* Navigation */
.navbar { padding: 0; }
.navbar .navbar-brand { color: #746555; }
.nav-item { position: relative; margin: 0px 5px 0px 5px;  }
.nav-item:after { width: 100%; }

.nav-item:hover .nav-link {
	transform: translateY(-4px);
	background-image: linear-gradient(to bottom, #AA55AD 0%, #880a37 50%);
}
.nav-item.active .nav-link {
	background-image: linear-gradient(to bottom, #AA55AD 0%, #880a37 50%);
	transform: translateY(-6px);
}
.nav-item.inactive {
	position: relative;
	padding: 5px 20px 5px 20px !important;
	border-radius: 3px;
	color: #eddbfd !important; 
	text-align: center;
	z-index: 30;
	font-size: 1.0em;
	background-color:  rgba(116, 101, 85, 0.3);
	line-height: 1.2em;
}
.nav-link {
	position: relative;
	font-weight: bold;
	margin-top: -30px;
	padding: 15px 30px !important;
	border-radius: 5px 5px 0px 0px;
	color: #e1d4b2 !important; 
	background-image: linear-gradient(to bottom, #7b879b 0%, #790451 50%, #880a37 100%);
	text-align: center;
	z-index: 30;
	font-size: 20px;
	transition: all .2s ease;
	text-decoration: none !important;
}
.index-nav-link {border-radius: 5px 5px 5px 5px;}

@media only screen and (max-width: 991px) {
	.nav-item:hover .nav-link {
		transform: none;
	}
	.nav-link {
		border-radius: 5px;
		
	}
	.nav-item:not(:last-child) {
		 margin-bottom: .75em;
	}
}
#nav-event {
	pointer-events: none;
	opacity: 0.5;
}
@media only screen and (max-width: 991px) {
	.nav-link { text-align: center; }
}
.active .nav-link { 
	position: relative; z-index: 10; /* required to put at top */
	color: #FFF !important;
}
.active .nav-link:link,
.active .nav-link:visited,
.active .nav-link:active,
.active .nav-link:hover {
	color: #FFF !important;
}
.navbar { position: relative; z-index: 10; /* background-color: #79685b;  margin-top: -20px; */ height: 0px; }

@media only screen and (max-width: 992px) {
	.navbar { position: relative; background-color: #880a37; /* box-shadow: 1px 3px 6px rgba(0,0,0,0.05); */ }
	.navbar-nav { padding-top: 15px; padding-bottom: 15px; }
	.nav-item:after { height: calc(100% - 6px) !important; margin: 4px 0; top: 0; width: 4px;  }
	.nav-item:hover:after { width: 10px; }
	.active.nav-item:after { height: 2em; color: #fff; width: 100%; color: #FFF; border-radius: 3px; }
	
	.navbar.affix { position: fixed; z-index: 20; top: 0; width: 100%; box-shadow: 2px 2px 12px rgba(0,0,0,0.05); }
}
.affix .nav-item:hover .nav-link { transform: translateY(-4px); }

.navbar .navbar-brand { position: relative; visibility: visible; color: rgba(255,255,255,0.8); text-decoration: none; font-weight: bold; padding-left: .5em; }
.navbar-nav { letter-spacing: .1em; }

.navbar-toggler { border: none !important; }
.navbar-toggler[aria-expanded="true"] { background-color: rgba(179,193,194,0.3); }
.navbar-toggler.collapsed { /* background-color: transparent; z-index: 99; */ }

.collapsing .nav-link,
.collapse.show .nav-link { padding: .35rem 1rem; margin-top: 0;}

.navbar-expand-lg .navbar-nav .nav-link { padding-right: .75rem; padding-left: .75rem; }

.dropdown-menu { border: none; box-shadow: 2px 2px 12px rgba(0,0,0,0.1); }
.dropdown-menu .dropdown-item { color: #373737; text-decoration: none; }
.dropdown-menu .dropdown-item:hover { background-color: rgba(16,30,86,0.1); }
.dropdown-menu .dropdown-item.disabled { /* color: rgba(164152,109,.5); */ pointer-events: none; }

@media only screen and (max-width: 991px) {
	.dropdown-toggle { width: 100%;  transition: none; }
	.navbar { }
	.navbar {
		padding: 10px; height: auto; 
		width: 100%;
		top: 0;
		position: fixed;
	}
	header { margin-top: 60px; }
}
@media only screen and (min-width: 992px) {	
	.dropdown-toggle { position: relative; overflow: hidden; }
	#sport-dropdown,
	#emoji-dropdown { width: 180px !important; min-width: initial; }
	#message-dropdown { width: 300px !important; min-width: initial;  }
}
.icon-emoji { background-size: auto 100%; background-repeat: no-repeat; background-position: 10px center; padding-left: 50px; }

/* ============ desktop view ============ */
@media all and (min-width: 992px) {
	.navbar .nav-item .dropdown-menu{ display: none; }
	.navbar .nav-item:hover .nav-link{   }
	.navbar .nav-item:hover .dropdown-menu{ display: block; }
	.navbar .nav-item .dropdown-menu{ margin-top:0; }
}	
/* ============ desktop view .end// ============ */

/* Animation ----------------------------------------------------------------------------- */
.fade-in {
  opacity: 0;
  animation: fadeInEffect 2s forwards;
}
@keyframes fadeInEffect {
  to {
    opacity: 1;
	transform: translateY(0);
  }
}
.fade-up {
    opacity: 0;
    transform: translateY(20px);
   /* animation: fadeUpEffect 1.5s forwards; */
   transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
@keyframes fadeUpEffect {
    to {
      opacity: 1;
      transform: translateY(0);
    }
 }
.fade-up.visible {
    opacity: 1;
    transform: translateY(0);
}
/* Add scrollbale Menu ----------------------------------------------------------------------------------------------------- */

.scrollable-menu {
    height: auto;
    max-height: 300px;
    overflow-x: hidden;
}


@media only screen and (min-width: 992px) {
	
	.navbar-brand { display: none; }
	
	.affix + .container-fluid {
		padding-top: 70px;
	}
	.affix-top .navbar-brand { display: none; }

}
@media only screen and (max-width: 991px){
	.affix + .container-fluid {
		padding-top: 60px; margin-top: 0;
	}
}

/*----------------- Gist Introduction --------------------*/
.gistIntroWrap {
	position: relative; width:100%; height: auto;
	background: linear-gradient(30deg, #ac3a83 0%, #880a37 20%, #880a37 80%, #ac3a83 100%);
}
.gistIntroBlock { position: relative; max-width: 1320px; height: auto; margin: 0 auto; box-sizing: border-box; }
.gistIntro { position: relative; width: 100%; max-width: 1100px; padding: 25px 3% 25px 3%; margin: 0 auto; text-align: center; }
.gistIntro p{ 
	font-size: 20px; letter-spacing: 1px; line-height: 34px; 
	color: #FFF;
	/* text-shadow: 0px 1px 4px rgba(0,0,0,0.4) */
}
/*-------------- Language Bar --------------*/
.langWrap { 
	position: absolute; right: 8%; bottom: 0px; 
	width:100px; height: 35px; 
	/* background-color: rgba(255, 255, 255, 0.8);  */
	background-color: rgba(183, 8, 8, 1); 
	border-radius: 8px 8px 0 0;
}
.langBlock {
	position: relative;
	width:50%; 
	text-align: center; box-sizing: border-box; 
	float: left;
	font-size: 16px; line-height: 30px;
	display: flex;
  	justify-content: center;
}
.landShd {position: absolute; right: 0; top:0; pointer-events: none; }
.shdImg {width: 100%; display: block; opacity: 0.5; }
.langLink {
	color: rgb(246, 207, 207); 
	margin-top: 5px; 
}
.langLink:hover {
	color: rgb(228, 227, 237); 
}
/* -----------------More Video Section ---------------- */
.moreVideoWrap2 { 
	position: relative; width: 100%; height: auto;
	overflow: hidden;
	padding-bottom: 20px;
	background: linear-gradient(0deg, #e92d37 0%, #901423 100%);
}

/* -----------------Photo Album Section ---------------- */
.photoAlbumWrap { 
	position: relative; width: 100%; height: auto;
	overflow: hidden;
	padding-bottom: 20px;
	background: linear-gradient(0deg, rgb(254, 219, 168) 0%, rgb(128, 209, 185) 80%, rgb(169, 224, 208) 100%);
}
.sectionTitleLight {
	padding: 0px;
	font-size: 24px; letter-spacing: 2px; line-height: 32px;
	color: #FFF;
	/* border-bottom: 1px solid #847c7c; */
}
.sectionTitleLight h2,
.sectionTitle h2 {
	font-weight: bold;
	font-size: 24px;
    letter-spacing: 2px;
    line-height: 32px;
}
/* -----------------Short Video Section ---------------- */
.shortVideoWrap { 
	position: relative; width: 100%; height: auto;
	overflow: hidden;
	padding-bottom: 20px;
	background: rgb(219,93,83);
	background: linear-gradient(0deg, rgba(219,93,83,1) 0%, rgba(38,17,15,1) 100%);
}
.conBlock {
	position: relative;
	max-width: 1320px; height: auto;
	padding-top: 50px; 
	margin: 0 auto;
}
.introTitle {
	position: relative; width:100%;
	text-align: center; 
	font-size: 28px; letter-spacing: 2px; color: rgb(241, 227, 227);
	margin-bottom: 50px;
}
.introTitleBlock {
	display: inline-block; width: auto; height: auto;
}
.introTxtOut {
	position: relative;
	display: inline;
	padding: 14px; margin: 0 5px;
}
.introTxtOut.eng { padding: 14px 0 14px 14px;}
.introTxtOut.ou {
	background-image: url(../images/typeCir.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#video-container-intro { 
	position: relative;
	margin: 0 auto;
	box-shadow: 2px 2px 6px rgba(0,0,0,0.3);
}
.video-desc-container { 
	position: relative; width:86%; 
	padding: 5px 0 30px 0; margin: 0 auto; 
	font-size: 20px; letter-spacing: 2px; line-height: 32px; color: rgb(253, 240, 240); 
}
.dotBackWrap {
	position: absolute; top:0; width:100%;
}
.dotBack { display: block; width:100%; }
/*-------------  Video Slider -------------*/
.miniSlider { 
	position: relative; width: 86%; 
	margin: 10px auto 0px auto; 
	padding: 0 0 20px 0;
}
.miniSlider.inner { margin: 0 auto 0 auto; }
.slideWrap { position: relative; top: 0; bottom: 0; left: 0; right: 0; vertical-align: bottom;  }
.picWrap { width: 100%; display: block; }
.gisWrap {   width: 100%; height: auto;  text-align: left;  box-sizing: border-box;}
.gisWrap p { margin: 0 0; }
.gisTit { font-size: 22px; line-height: 26px; font-weight: 500; letter-spacing: 1px; padding: 10px 0 3px 0; color: #fdf7f7;}
.gisCon { font-size: 18px; line-height: 23px; letter-spacing: 1px; padding-bottom: 10px; color: #e6cfcf; padding-top: 10px; }
.gisTit+.gisCon { padding-top: 0; }
.gis { padding: 0 !important;}
/* ------------------- More Video -------------------*/
.moreVideoWrap {
	position: relative;
	width:100%;
	text-align: center;
	padding-bottom: 50px;
}
.moreVidBtn {
	display: inline-block;
	padding:5px 10px 5px 15px;
	font-size: 20px; letter-spacing: 2px; line-height: 28px;
	color: #dcb2b2;
	background-color: #af2222;
	border-radius: 50px;
}
.moreVidBtn:hover { background-color: #c11e1e;}
.video-title { margin-top: .25em; }
.arr { display: inline-block; width: 16px; }
.arrImg { display: block; width: 100%; }
.picWrap { border-radius: 5px; }

#video-container-intro { border-radius: 5px; }
/*------------------ dailyNewsWrap ---------------- */
.dailyNewsWrap { 
	position: relative; width:100%;
	background-color: rgb(239, 239, 234); 
}
.dailyNewsCon {
	position: relative;
	max-width: 1320px; height: auto;
	padding-top: 20px; 
	margin: 0 auto;
}
.dailyNewsBlock {
	position: relative; width:86%; 
	margin: 0 auto; padding: 0 0 50px 0;
}
.sectionTitle {
	position: relative;
	padding: 0 0 7px 0;
	font-size: 24px;
	font-weight: 500;
	display: inline-block;
	letter-spacing: 2px;
	line-height: 32px;
	margin-left: 5%;
	border-bottom: 2px solid #70176F;
	color: #70176F;
}
.newsRow {
	position: relative;
	width: 100%; height: auto;
	border-bottom: 1px dotted #847c7c;
	display: flex;
}
.newsHeadBlock {
	position: relative;
	box-sizing: border-box;
	padding: 15px 5% 15px 0;
	flex: 0 0 20%; 
}
.newsInfoBlock {
	box-sizing: border-box;
	padding: 15px 2% 15px 0;
	font-size: 20px; letter-spacing: 2px; line-height: 32px;
	text-align: justify;
	color: #484646;
	flex: 0 0 78%; 
}
.newsProfile { 
	position: relative;
	width:100%;
}
.newsImg { display: block; width: 100%; }
.newsDate { 
	width: 100%;
	text-align: center;
	font-size: 24px; letter-spacing: 2px; line-height: 32px;
}
/* HOME NEWS ----------------------------------------------------------------------- */
#sect-instantnews .btn { min-width: 220px; }
.news-title {
	color: #811954;
	text-align: center;
	font-size: 2.2em;
	font-weight: bold;
}
.news-intro {
	position: relative;
	padding-top: 2em;
	padding-bottom: 1em;
	font-size: 1.05em;
}
.news-intro > div {
	position: relative;
	z-index: 5;
	/* transform: translateY(-1em); */
}
.news-desc {
	padding: 4%;
    font-size: 1.1em;
    max-width: 900px;
    margin: 0 auto;
}
.news-intro:before {
	content: '';
	display: block;
	height: 9em;
	padding: 1em;
	position:absolute;
	z-index:0;
	width: 100%;
	top: 1px;
	left: -1.5em;
	/* background: linear-gradient(135deg, rgba(0,0,0,0.4) 20%, rgba(0,0,0,0) 90%); */
	border-radius: 3px;
}
.news-item-list {
	padding-bottom: 1em;
}
@media only screen and (min-width: 992px){
	.news-item-list>div:nth-child(4){
		display: none;
	}
}
.news-item {
	transition: all .2s ease;
	/* margin: 3%; */
}
.news-item a:hover {
	text-decoration: none;
}
.news-item-pic {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
	margin: 0;
}
.news-item-pic img { 
	z-index: 0;
	width: 100%;
	height: auto;
	opacity: 0.8;
	transition: all .3s ease;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.news-item-info {
	position: relative;
	padding: 12px 0;
	/* margin: 0 8px; */
	line-height: 1.6em;
	border-radius: 3px;
	overflow: hidden;
	z-index: 11;
	letter-spacing: 0.02em;
}
.news-info-title {
	font-size: 20px;
	font-weight: bold;
	display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
	padding: 0 3%;
	color: #333;
}
@media only screen and (max-width: 992px){
	.news-info-title {
		font-size: 18px;
	}
}
.news-item a:hover {
	text-decoration: underline;
}
.news-item a:hover .news-info-title {
	color: #73176a;
}
.news-info-date {
	color: rgb(0,0,0,0.6) !important;
	font-size: .9em;
	line-height: 1.4em;
	margin-top: .25em;
}
/*---------------------- Event Listing ------------------ */
.eventsListSection { 
	position: relative; width: 100%;
	background: #dab295 url(../images/main_bg3.jpg) repeat;
	/* background-color: #dab295; */
	min-height: 1000px;
	background-size: cover;
    background-attachment: fixed;
	background-position: top center;
	overflow: hidden;
}
.eventsCon {
	position: relative;
	max-width: 1350px; height: auto;
	margin: 0 auto;
}
.eventsBlock {
	position: relative;
	width: 92%; 
	margin: 0 auto;
	padding: 1em 0 1em 0;
}
.eventsBlock a {
	display: block;
	margin: 5vw auto 5vw auto;
}
.eventItems {
	position: relative; 
	width: 95%;
	margin: 0 auto;
	transition: all .2s ease;
	display: flex;
	align-items: center;
}
/*
a:nth-child(odd) .eventItems .eventItemsPic {
	order: 2;
	margin-left: 0;
}
a:nth-child(odd) .eventItems .eventTable {
	order: 1;
	
	margin-right: 4%;
}
*/
*/
a:hover .eventItems.link {
	/* transform: scale(1.02); */
}
a:hover .subHead {
	text-decoration: underline;
}
a:hover .eventItemsPic {
	transform: scale(1.03);
	z-index:9;
}
.bjbanner {
	width:100%;
	height: auto;
	margin: 0;
	position: relative; width:100%; height: auto; overflow: hidden;
}

.bjbanner img {	display:block;
	border: solid 0px;
	border-radius: 10px;
}

.eventDate {
	position: relative;
	display: inline-block;
	text-align: center;
	padding: 4px;
	width: 240px;
	font-size: 24px; letter-spacing: 2px; line-height: 36px;
	color: #f1e0e0;
	border-radius: 10px 10px 0 0;
	/* background-color: #0853a4; */
	background-color:#da1c30;
}
.eventItems:after {
	content: "";
	clear: both;
	display: table;
}
.dateShd {
	position: absolute;
	top:0; bottom: 0; right: 0; left:0;
	background: linear-gradient(0deg, rgba(41, 21, 17, 0.3) 0%, rgba(125,53,31,0) 36%);
}
.eventTable { 
	position: relative;
	margin-left: -2%;
	/* width: calc(80% - 15px); */
	width: calc(100% - 380px);
	border-radius: 60px 0 60px 0;
    overflow: hidden;
}
/*
.eventsRow:first-child {
	overflow: hidden;
	border-radius: 20px 20px 0 0;
}
.eventsRow:last-child {
	overflow: hidden;
	border-radius: 0 0 20px 20px;
}
.eventTable:before {
	content: '';
	position: absolute;
	z-index: 0;
	top: -65px;
	width: 600px;
	background: url('../images/bg_eventTable2.png') top left no-repeat;
	background-size: 100% auto;
	display: block;
	height: 280px;
}
*/
a:nth-child(even) .eventItems .eventTable:before {
	left: -60px;
}
a:nth-child(odd) .eventItems .eventTable:before {
	right: -60px;
}
.eventItemsPic {
	position: relative;
	width: 380px;
	background-color: rgb(147, 142, 139);
	border-radius: 60px 0 60px 0;
	overflow: hidden;
	filter: drop-shadow(0px 8px 8px rgba(202,35,130,0.2));
	z-index: 1;
	transition: all .2s ease-out;
}
.eventItemsPic:before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: '';
    display: block;
    width: 100%;
    height: 40%;
    background: linear-gradient(15deg, rgb(173 88 61 / 60%) 0%, rgba(50, 50, 50, 0) 60%);
	opacity: 1;
	transition: all .2s ease;
}
a:hover .eventItemsPic:before {
	opacity: 0;
}
.eventItemsPic img {
	display: block;
	width: 100%;
	height: auto;
}
.eventsRow {
	/*position: relative;*/
	width: 100%;
	background: rgba(255, 255, 255, 0.7);
	display: flex;
}
.icon-ch {
	display: inline-block;
	border-radius: 5px;
	padding: 1px .5em;
	line-height: 1.2em;
	color: white;
	font-family: 'Roboto', 'Arial', sans-serif;
	font-weight: normal;
	letter-spacing: 1px;
	font-size: 16px;
	/* background: linear-gradient(90deg, #b854b3, #811954); */
	background-color: #d72d5d;
}
/*
.eventsRow:nth-child(odd){ 
	background: linear-gradient(to right, #b6240f 0%, #EB6500 100%);
}
*/
.eventsTitleCol {
	box-sizing: border-box;
	font-size: 20px;
	letter-spacing: 2px;
	line-height: 32px;
	text-align: right;
	padding: 2em 2% 15px 0;
	background: rgba(127, 108, 99, 0.5);
	color: #e5e5e5;
	flex: 0 0 15%; 
}
.eventsTitleCol.eng{ flex: 0 0 24.8%;}
.eventsRow:nth-child(odd) .eventsTitleCol{ 
	background: rgba(127, 108, 99, 0.8);
}
.eventsRow:nth-last-child() { border-radius: 0 0 8px 8px; }
.eventsGistCol {
	box-sizing: border-box;
	padding: .75em max(10%,3.5em) 2.5em 10%;
	font-size: 18px;
	letter-spacing: .5px;
	/* text-align: justify; */
	color: #252020;
	line-height: 1.6em;
}
.eventsGistCol .arrow-btn {
	background: linear-gradient(135deg, #b854b3, #811954);
	width: 40px;
	height: 40px;
	position: absolute;
	right: 25px;
	top: calc(50% - 20px);
	border-radius: 99px;
	padding: 10px;
}
.arrow-btn:after {
    content: '';
    display: block;
    margin: 30px auto;
    width: 15px;
    height: 15px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    transform: rotate(135deg);
    position: absolute;
    top: -17px;
    left: 10px;
}
.eventsGistCol.eng { flex: 0 0 70%;  text-align:left; }

.subHead {
	font-family: 'MiSans TC', 'Noto Sans TC', sans-serif;
	font-size: 28px;
	font-weight: 500;
	color: #ca2382;
	letter-spacing: .5px;
	line-height: 1.5em;
	padding-right: 60px;
	padding: 1.75em 10% 0em 10%;
}
/*--------------------------- Video Listing -----------------*/
.videoListingSection {
	position: relative; width:100%;
	background-color: rgba(219,93,83,1)
}
.videoListingCon {
	position: relative;
	max-width: 1320px; height: auto;
	margin: 0 auto;
}
.videoListingBlock {
	position: relative; width:88%; 
	margin: 0 auto; padding: 0 0 50px 0;
	display: flex;
	flex-wrap: wrap;
}
.videoListBox { 
	position: relative;
	margin: 1% 1%;
	flex: 0 0 23%;
	-webkit-box-shadow: 3px 3px 8px 0px rgba(0,0,0,0.16);
	-moz-box-shadow: 3px 3px 8px 0px rgba(0,0,0,0.16);
	box-shadow: 3px 3px 8px 0px rgba(0,0,0,0.16); 
}
.videoListBox:last-child {
	margin-right: auto; /* This pushes the last item to the left */
}
.videoDateBar {
	position: relative;
	width:100%; box-sizing: border-box;
	font-size: 16px; letter-spacing: 2px; line-height: 28px;
	padding: 5px 10px;
	color: #d4d0d0;
	border-radius: 8px 8px 0 0;
	background: rgb(96,48,39);
	background: linear-gradient(0deg, rgb(131, 33, 16) 0%, rgb(193, 41, 24) 30%);
}
.videoThn {
	position: relative;
	width: 100%; height:auto;
}
.videoThnImg {
	display: block; width:100%;
}
.ply-icon {
	position: absolute;
	width: 50px;
	left: 15px; bottom: 15px;
	border-radius: 25px;
	background-color: rgba(250,242,242,0.7);
}
.ply-icon-img { display: block; width:100%; }
.videoGistBox {
	position: relative;
	box-sizing: border-box;
	width: 100%; height:auto;
	padding: 15px;
	border-radius: 0 0 8px 8px;
	font-size: 20px; letter-spacing: 2px; line-height: 28px;
	background-color: #dfdada;
}
.videoTitTxt { 
	color: #494646;
	padding-bottom: 5px;
	border-bottom: 1px solid #8e8888;
}
.videoGistTxt {
	padding-top: 5px;
	color: #2c2424; 
}

/*---------- episodes-----------*/
.list-epi {
	float: left;
	max-width: 1000px;
	margin: 0 auto;
}

.epiBlock { display: block; background: rgba(255, 255, 255, 0.7); padding: 1em; width: 100%; border: solid 1px #fff; border-radius: 10px; margin: 2% 0; transition: all .2s ease; cursor: pointer;}

.epiBlock:hover {
	transform: scale(1.03);
}

.epiPic { border: 0px; border-radius: 10px; overflow: hidden; margin: 0 0 10px 0; }
.epiPic img { width: 100%; height: auto; display: block; }
.epiDesc { font-size: 18px; letter-spacing: 1px; line-height: 24px; min-height: 70px;}
.col-12, .col-md-6, .col-lg-4 {padding-right: 5px; padding-left: 5px;}

.vdoBtn {
	text-align: center;
    padding: 3px 10px;
    font-size: 18px;
	font-weight: bold;
    letter-spacing: 2px;
    line-height: 28px;
    color: #219599;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 10px;
	border: solid 1px #219599;
    cursor: pointer;
    margin: 10px auto 0 auto;
	text-decoration:none !important; 
}

.vdoBtn:link,
.vdoBtn:visited,
.vdoBtn:active,
.vdoBtn:hover { background-color: #219599; color: #fff; text-decoration:none !important; }

.vdoMiddle { width: 90%; text-align: center; margin: 0 auto; max-width: 800px; margin-bottom: 6em; }

.vdoFrame { transition: all .2s ease; transform: translateY(4em); }

.vdoPic:hover img.vthumb {  }
.vdoPic { display: inline-block; position: relative; display: block; overflow: hidden; border-radius: 10px; box-shadow: 0px 0px 10px 10px rgba(0, 0, 0, 0.1); }
.vdoPic img { width: 100%; height: auto; transition: all .2s ease; }
.vicon {
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%,-50%);
	width: 96px;
	height: 96px;
	z-index: 1;
}
.vthumb {
	position: relative;
	z-index: -1;
}
.vdoPic:hover img.vthumb {	transform: scale(1.05); }
.img-responsive { width: 100%; height: auto; }


.specialListSection { 
	position: relative; width: 100%;
	background: #efd6bd url(../images/main_bg.jpg) repeat;
	/* background-color: #dab295; */
	min-height: 1000px;
	background-size: auto 100%;
    background-attachment: fixed;
	background-position: top center;
	overflow: hidden;
}
.specialCon {
	position: relative;
	height: auto;
	margin: 0 auto;
	background: url('../images/special/bg_special_top.jpg') top center no-repeat;
	background-size: cover;
}
.specialTitle {
	padding-top: 4em;
	max-width: 700px;
    margin: 0 auto;
}
.subtitle {
	text-align: center;
	font-size: 32px;
	color: #735b4d;
	font-weight: bold;
}
.synopsis-container {
	margin: 2em auto;
	max-width: 1000px;
	line-height: 1.8em;
	font-size: 18px;
	padding: 0 5%;
}
.epiItem {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: row;
	width: 90%;
	max-width: 1100px;
	margin: 3em auto;
}
.epiItem:after {
	content: '';
	display: block;
	border-radius: 50px 0 50px 0;
	background-color: rgba(113,89,70,0.7);
	position: absolute;
	z-index: -1;
	width: 83%;
	left: 17%;
	top: 0;
	height: 100%;
}
.epiItemCol {
	width: 35%;
}
.epiItemPic {
	position: relative;
	border-radius: 5px;
	overflow: hidden;
	filter: drop-shadow(0px 8px 8px rgba(0,0,0,0.2));
	margin: 2em 10px 10px;
}
.epiItemPic:before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(-15deg, rgb(136 111 91 / 60%) 0%, rgba(136, 111, 91, 0) 70%);
	opacity: 1;
	transition: all .2s ease;
}
.epiItemPic img {
	width: 100%;
	height: auto;
}
.epiItemInfo {
	width: 65%;
	padding: 2.5em 5%;
	line-height: 1.8em;
}
.epiItemBtn {
	margin-top: 1.25em;
	margin-bottom: 1.25em;
	text-align: right;
	padding: 5px 10px;
}
.epiItemTitle {
	color: #f8e6b6;
	font-size: 2em;
	margin-bottom: .5em;
	letter-spacing: 3px;
}
.txdate {
	float: right;
	font-weight: 300;
	font-family: 'Roboto',sans-serif;
	font-size: 24px;
	display: inline-block;
	letter-spacing: 3px;
}
.epiItemDesc {
	color: white;
	letter-spacing: 1px;
	text-align: justify;
}
.playBtn {
	border: solid 1px white;
	padding: 5px 2.25em;
	color: white;
	border-radius: 8px;
	display: inline-block;
	transition: all .2s ease;
	text-align: center; 
	max-width: 300px;
}
.playBtn:hover {
	color: white;
	transform: scale(1.05);
}
@media screen and (max-width: 992px) {
	.epiItem {
		flex-direction: column;
	}
	.epiItem:after {
		left: -6%;
		top: initial;
		bottom: 0;
		height: 80%;
		width: 105%;
	}
	.epiItemCol {
		width: 90%;
		margin: 0 auto;
		max-width: 600px;
	}
	.epiItemInfo {
		width: 90%;
		margin: 0 auto;
	}
	.playBtn { display: block; padding: 10px 2.25em; width: 90%; margin: 0 auto; }
	.epiItemBtn { margin-bottom: 0; }
}
@media screen and (max-width: 767px) {
	.vdoFrame { transform: translateY(2em); }
	.specialTitle { padding-top: 2em; width: 90%; margin-right: 0; }
	.epiItemInfo { /* padding-top: 0; */ }
}
@media screen and (max-width: 480px) {
  .vdoPlay span {
    background-size: 30%;
  }
}
/*---------------------------- Spacer -----------------------*/
.spacer {
	position: relative;
	width: 100%;
	height: 200px;
	background-color: rgb(239, 239, 234);
}
.spacer.inner { background-color: rgba(219,93,83,1) }

/*------------------------ Footer -----------------------*/
footer {
	position: relative;
	width: 100%;
	padding: 1.5em;
	text-align: center;
	font-size: 1.1em;
	letter-spacing: .1em;
}
@media screen and (max-width: 2600px) {

}

@media screen and (max-width: 1900px) {

}

@media screen and (max-width: 1700px) {

}

@media screen and (max-width: 1400px) {

}

@media screen and (max-width: 1200px) {
	/*------------- Short Video Section ---------- */
	.video-desc-container { padding: 5px 0 40px 0;}
	.miniSlider { 
		width: 76%; 
		margin: 10px auto 0px auto; 
		padding: 0 0 50px 0;
	}
	/*---------------- Video Listing --------------- */
	.ply-icon {
		width: 44px;
		left: 12px; bottom: 12px;
	}
}
@media only screen and (max-width: 1600px),
            screen and (max-height: 1000px) {

}
@media screen and (max-width: 1200px) {
	.eventsTitleCol { font-size: 18px; }
	.eventItemsPic {
		width: 350px;
	}
	.eventTable {
		width: calc(100% - 350px);
	}
}
@media screen and (max-width: 992px) {
	/*------------------------- Header ---------------------*/
	#rthklogo { width: 80px; top: 20px; left: 20px; }
	.sectBack { width: 100%; height: 400px; }
	.divShpBlock { width: 200%; }
	.divShpBlock.intro { width: 200%; }
	.campLogo { right: 75%; top:80px; width: 450px; }
	/*----------------- Short Video Section -------------- */
	.miniSlider { 
		width: 72%; 
		margin: 10px auto 0px auto; 
		padding: 0 0 30px 0;
	}
	/*----------------- Event Listing ---------------- */
	.eventsItem {
		width: 90%;
	}
	.eventTable {
		width: 100%;
	}
	.eventDate {
		/*padding: 4px 5% 4px 5%; */
		width: 20%;
		font-size: 20px; letter-spacing: 2px; line-height: 26px;
	}
	.eventItemsPic {
		width: 90%;
		margin: 0 auto;
		margin-bottom: -1em;
	}
	.eventTable {
		width: 100%;
		/* margin-left: 0; */
	}
	.eventsTitleCol {
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 26px;
		padding: 10px 2% 10px 0;
		flex: 0 0 22%;
	}
	.eventsGistCol {

	}
	.eventsGistCol .arrow-btn { transform: scale(0.8); right: 10px; }
	.eventsTitleCol.eng{ flex: 0 0 30%; }
	.eventsGistCol.eng { flex: 0 0 65%; }
	/*---------------- Video Listing --------------- */
	.videoListBox { 
		margin: 1% 1%;
		flex: 0 0 31%; 
	}
	.videoGistBox {
		padding: 15px;
		font-size: 18px; letter-spacing: 1px; line-height: 24px;
	}
	.ply-icon {
		width: 40px;
		left: 10px; bottom: 10px;
	}
    footer { padding-bottom: 3em; }
}
@media screen and (max-width: 825px) {

}

@media only screen and (max-width: 767px) {
	/*------------------------- Header ---------------------*/
	#headBanWrap { 
		width: 100%; 
		/* height: 270px;  */
		overflow: hidden;
	}
	.banArtWrap { 
		width:100%; 
		/* height: 270px;  */
	}
	.banArt {
		position: relative;
		width: 100%;
		height: auto;
		overflow: hidden;
		/* display: flex; justify-content: center; */
	}
	.banImg { display: none;}
	.banImg_m { display: block; width:100%;}
	/* .banImg {
	  display: block;
	  width: auto;
	  margin-top: -8%;
	  opacity: 0.8;
	} */
	.banLogoWrap {width: auto; height: 270px; overflow: hidden; }
	.divShpBlock { width: 200%; }
	.divShpBlock.intro { width: 250%; }
	/*----------------- Gist Introduction ------------*/
	.introTitle { margin-bottom: 20px; }
	.gistIntro p{ font-size: 18px; letter-spacing: 2px; line-height: 30px; }
	/* ------------------Language Bar ------------------- */
	.langWrap { right: 8%; bottom: 0px; }
	/* ----------------- Short Video Section -------------------*/
	.dotBackWrap { width: 180%; }
	.introTitle { font-size: 20px; letter-spacing: 2px; }
	.introTxtOut{ padding: 12px; margin: 0 0px; }
	/*----------------- Daily News ----------------------------- */
	.newsDate { font-size: 18px; letter-spacing: 2px; line-height: 26px;
	}
	.newsHeadBlock { padding: 15px 5% 15px 0; }
	.newsInfoBlock {
		padding: 15px 4% 15px 0;
		flex: 0 0 74%;
		font-size: 18px; letter-spacing: 2px; line-height: 26px;
	}
	/*----------------- Event Listing ---------------- */
	.eventDate {
		/* padding: 4px 5% 4px 5%; */
		font-size: 16px; letter-spacing: 2px; line-height: 26px;
	}
	.eventsTitleCol {
		/*font-size: 16px;
		letter-spacing: 1px;*/
		line-height: 24px;
		padding: 10px 2% 10px 0;
		flex: 0 0 24%;
	}
	.eventsGistCol {

	}
	.eventsBlock a:not(:first-child):not(:last-child) {
		margin: 3em auto 3em auto;
	}
	.eventsGistCol.subHead {  }
	.eventsTitleCol.eng{ flex: 0 0 37%; }
	.eventsGistCol.eng { flex: 0 0 58%; }
	.eventItems {
		flex-direction: column;
		margin-left: auto;
        margin-right: auto;
		width: 90%;
	}
	.eventItemsPic {
		
	}
	.eventTable {
		border-radius: 0 0 30px 30px;
	.eventDate .yr { display: none; }
	/*---------------- Video Listing --------------- */
	.videoGistBox {
		padding: 15px;
		font-size: 16px; letter-spacing: 1px; line-height: 22px;
	}
	.ply-icon {
		width: 36px;
		left: 10px; bottom: 10px;
	}
	footer { padding: 1em 1.5em 3em 1.5em; }
}
@media screen and (max-width: 625px) {


}

@media only screen and (max-width: 576px) {
	.banLogoBack { left: -30px }
	/* .banImg {
		display: block;
		width: auto;
		margin-top: -12%;
		opacity: 0.8;
	} */
	.banLogo { height: 94%; margin-top: 10px; }

	/*----------------- Gist Introduction ------------*/
	.video-desc-container { padding: 5px 0 20px 0;}
	.video-desc-container {
		font-size: 18px;
		letter-spacing: 1px;
		line-height: 24px;
	  }
	.gistIntro p{ font-size: 17px; letter-spacing: 1px; line-height: 24px; }
	/* -------------- Short Video Section -------- */
	.conBlock { padding-top: 30px; }
	.introTitle { font-size: 18px; letter-spacing: 2px; }
	.introTxtOut{ padding: 10px; margin: 0 0px; }
	/*----------------- Daily News ----------------------------- */
	.dailyNewsCon { padding-top: 30px; }
	.sectionTitle {
  		padding: 0 20px 10px 0;
  		font-size: 20px;
  		letter-spacing: 1px;
		line-height: 26px;
		margin-bottom: 1.5em;
	}

	.newsDate { font-size: 16px; letter-spacing: 2px; line-height: 22px;
	}
	.newsHeadBlock { padding: 15px 5% 15px 0; }
	.newsInfoBlock {
		padding: 15px 4% 15px 0;
		flex: 0 0 70%;
		font-size: 16px; letter-spacing: 1px; line-height: 22px;
	}
	/*----------------- Event Listing ---------------- */
	.eventDate {
		padding: 4px 5% 4px 5%;
		font-size: 18px; letter-spacing: 1px; line-height: 24px;
	}
	.eventsTitleCol {
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 22px;
		padding: 15px 0 15px 0;
		flex: 0 0 24%;
		display: none;
	}
	.eventsGistCol {

	}
	.eventsTitleCol.eng{ flex: 0 0 38.6%; }
	.eventsGistCol.eng { flex: 0 0 55%; }
	.eventItems {  }
	/*---------------- Video Listing --------------- */
	.videoListBox { 
		margin: 2% 1%;
		flex: 0 0 48%; 
	}
	.videoGistBox {
		padding: 10px;
		font-size: 16px; letter-spacing: 1px; line-height: 20px;
	}
	.ply-icon {
		width: 30px;
		left: 10px; bottom: 10px;
	}
}
@media screen and (max-width: 425px) {
	/*------------------------- Header ---------------------*/
	#headBanWrap { 
		width: 100%; 
		/* height: 220px;  */
		/* height:240px */
	}
	.banArtWrap { 
		width:100%; 
		/* height: 220px;  */
		/* height:240px */
	}
	.banLogoWrap {width: auto; height: 220px; }
	.banLogoBack { left: 5px; bottom: -10px; }
	/* ---------------- Language Bar------------------ */
	.langWrap {
		right: 8%;
		bottom: 0px;
		width: 90px;
		height: 30px;
	}
	.langBlock { font-size: 16px; line-height: 24px; }
	.banLogo { height: 92%; margin-top: 10px; }
	/*----------------- Short Video Section -------------- */
	.miniSlider { 
		width: 68%; 
		margin: 10px auto 0px auto; 
		padding: 0 0 30px 0;
	}
	.gisTit {
		font-size: 18px;
		line-height: 24px;
		letter-spacing: 1px;
		padding: 10px 0 3px 0;
	}
	.gisCon {
		font-size: 16px;
		line-height: 20px;
		letter-spacing: 1px;
		padding-bottom: 10px;
		color: #e6cfcf;
	}
	.introTitle { font-size: 16px; letter-spacing: 2px; }
	.introTxtOut{ padding: 10px; margin: 0 0px; }
	/*----------------- Daily News ----------------------------- */
	.newsDate { font-size: 16px; letter-spacing: 0.5px; line-height: 20px;
	}
	.newsHeadBlock { padding: 15px 5% 15px 0; }
	.newsInfoBlock {
		padding: 15px 4% 15px 0;
		flex: 0 0 70%;
		font-size: 16px; letter-spacing: 1px; line-height: 20px;
	}
	/*----------------- Event Listing ---------------- */
	.eventDate {
		padding: 4px 5px 4px 5px;
		font-size: 18px; letter-spacing: 1px; line-height: 24px;
	}
	.eventsTitleCol {
		font-size: 16px;
		letter-spacing: 0px;
		line-height: 22px;
		padding: 10px 2% 10px 0;
		flex: 0 0 26%;
	}
	/*
	.eventsGistCol {
		padding: 10px;
		font-size: 16px;
		letter-spacing: 0.5px;
		line-height: 22px;
	}
	*/
	.eventsTitleCol.eng{ flex: 0 0 38.6%; }
	.eventsGistCol.eng { flex: 0 0 55%; }
	/*---------------- Video Listing --------------- */
	/* .videoListBox { 
		margin: 1% 1%;
		flex: 0 0 98%; 
	} */

}

@media only screen and (max-width: 359px) {
	/*------------------------- Header ---------------------*/
	.banLogoBack { left: -25px; bottom: -10px; }
	.banLogo { left: -25px; top: 15px; }
	.campLogo { right:auto; left: -165px; top:65px; width:290px; }
	/* -------------- Language Bar ----------------- */
	.banLogo { height: 80%; margin-top: 10%; }
	
}


/*---------- episodes-----------*/
.list-epi {
	float: left;
	max-width: 1000px;
	margin: 0 auto;
}

.epiBlock { display: block; background: rgba(255, 255, 255, 0.7); padding: 1em; width: 100%; border: solid 1px #fff; border-radius: 10px; margin: 2% 0; transition: all .2s ease; cursor: pointer;}

.epiBlock:hover {
	transform: scale(1.03);
}

.epiPic { border: 0px; border-radius: 10px; overflow: hidden; margin: 0 0 10px 0; }
.epiPic img { width: 100%; height: auto; display: block; }
.epiDesc { font-size: 18px; letter-spacing: 1px; line-height: 24px; min-height: 70px;}
.col-12, .col-md-6, .col-lg-4 {padding-right: 5px; padding-left: 5px;}

.vdoBtn {
	text-align: center;
    padding: 3px 10px;
    font-size: 18px;
	font-weight: bold;
    letter-spacing: 2px;
    line-height: 28px;
    color: #219599;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 10px;
	border: solid 1px #219599;
    cursor: pointer;
    margin: 10px auto 0 auto;
	text-decoration:none !important; 
}

.vdoBtn:link,
.vdoBtn:visited,
.vdoBtn:active,
.vdoBtn:hover { background-color: #219599; color: #fff; text-decoration:none !important; }

.purpleBtn {
	text-align: center;
    padding: .5em;
    font-size: 18px;
	font-weight: bold;
    letter-spacing: 2px;
    line-height: 28px;
    color: #69369b;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 7px;
	border: solid 1px #69369b;
    cursor: pointer;
    margin: 1em auto 0 auto;
}
.purpleBtn:hover { background-color: #69369b; color: #fff;}

@media screen and (max-width: 625px) {
	.epiDesc { font-size: 16px; min-height:inherit; letter-spacing: 1px;}
}