@charset "utf-8";
* {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-family: "Segoe UI", Arial, Helvetica, "Microsoft JhengHei Correct", 'Microsoft JhengHei', PMingLiU, sans-serif
}

input {
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	border-radius: 0;
}

body {
	font-size: 16px;
	color: #333;
	line-height: 1.5;
}

.search_button {
	display: none;
}

.fixed body {
	margin-top: 105px
}

#fixed_bar .logoicon {
	width: 188px !important;
	height: 59px !important;
	margin-top: 0 !important;
	margin-bottom: 5px !important
}

.anchor_hide {
	display: block;
	height: 101px;
	margin-top: -101px;
	z-index: -1;
	visibility: hidden;
}

map {
	display: inline;
}

area {
	display: inline;
	cursor: pointer;
}

em {
	font-style: normal;
}

h2 {
	font-size: 1.5em;
	font-weight: normal;
	margin-bottom: 20px;
}

h2 span {
	display: inline-block;
}

p.date {
	margin-bottom: 20px;
}

.festivals_info p.date {
	font-weight: bold;
}

h3,
.about_info p .h3_title {
	font-size: 1.1em;
	display: inline-block;
	vertical-align: middle;
	line-height: 1.2;
	font-weight: bold;
}

.h3_title {
	margin-top: 20px;
}

h3 span {
	margin-top: 5px;
}

a {
	text-decoration: none;
}
img{object-fit: cover;}

span.remind {
	display: block;
	color: red;
	line-height: 1.5;
}

.container {
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
	position: relative;
}


/*表頭*/

header {
	position: relative;
}

header>.container {
	overflow: visible;
}


/*BANNER*/

.banner {
	height: 500px;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
}

.banner .swiper-wrapper {
	position: absolute;
	top: 0;
	left: 0;
}

.banner .swiper-slide {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.chinese-new-year {
	background-image: url(../images/banner_chinese_new_year.jpg);
}

.dragonboat-festival {
	background-image: url(../images/banner_dragon_boat_festival.jpg);
}

.lantern {
	background-image: url(../images/banner_lantern_festival.jpg);
}

.national-day {
	background-position: right;
	background-image: url(../images/banner_taiwan_national_day.jpg);
}

.the-moon-festival {
	background-position: right;
	background-image: url(../images/banner_the_moon_festival.jpg);
}

.valentines-day {
	background-image: url(../images/banner_qixi_festival.jpg);
}

.banner>.container {
	padding: 0 .5em;
	z-index: 2;
}

h1.title {
	text-align: center;
}

h1.title a {
	display: inline-block;
	margin-bottom: 1em;
	max-width: 691px;
	width: 100%;
	height: 290px;
	background-image: url(../images/title.png);
	background-repeat: no-repeat;
	background-size: 100%;
}

h1.title a img {
	display: none;
}


/*搜尋*/
.search_bar {
	padding: 10px;
}
input.btns {
	color: #fff !important;
}

/*主選單*/

ul.container {
	display: flex;
}

ul.container li {
	flex-grow: 1;
}

ul.container li a {
	font-size: 20px;
	color: #333;
	display: block;
	text-align: center;
	padding: 15px 0 10px;
	border-bottom: 5px solid #fff;
}


/*區塊內容*/

.main>article {
	overflow: hidden;
	padding: 3em 0;
}

article:nth-of-type(even) {
	background: #eee;
}

#fixed_bar {
	display: none;
}

.fixed #fixed_bar {
	display: block;
	position: fixed;
	align-items: stretch;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
	background: #fff;
	box-shadow: 0px 0px 10px #000;
}

nav#fixed_nav ul.container {
	padding: 0;
}

nav#fixed_nav ul.container li {
	flex-grow: auto;
}


/*首頁*/

.festivals_title {
	text-align: center;
	font-size: 1.8em;
	font-weight: bolder;
	margin-bottom: 1em;
	color: #fa0;
}

.festivals .container section {
	margin: 1em 0;
}

.festivals .container section .festivals_box {
	display: flex;
}

section .festivals_box.revers {
	flex-direction: row-reverse;
	text-align: right;
}

section .festivals_info a {
	border-bottom-style: solid;
	border-bottom-width: 2px;
	border-bottom-color: #fff;
}

.festivals .container section a {
	width: 100%;
	transition: .4s all;
}

.festivals .container section img {
	width: 100%;
}

.festivals_info {
	position: relative;
	width: 100%;
	padding: 1em;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
}

.festivals_info::before {
	content: '';
	display: block;
	position: absolute;
	left: -15px;
	top: 80px;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-right: 15px solid #fff;
}

.revers .festivals_info::before {
	left: inherit;
	right: -15px;
	border-right: 0;
	border-left: 15px solid #fff;
}

section .festivals_info h2 a {
	color: #333;
	font-weight: bold;
}

section p {
	line-height: 1.5;
}

.button_box {
	display: none;
}

.festivals .container section:nth-of-type(1) .button_box {
	display: flex;
	justify-content: space-between;
	margin: 1em 0 3.5em;
}

.button {
	width: 32%;
	border: 3px solid #fa0;
	text-align: center;
}

.button a {
	display: block;
	padding: 1em;
	color: #333;
	font-weight: bold;
}

.festivals .container section .button img {
	width: 30px;
	vertical-align: middle;
	margin: 0 10px;
}


/*活動介紹*/

div#moon_map {
	width: 660px;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
}

div#moon_map>img {
	float: left;
}

.styings {
	position: absolute;
	left: 27%;
	top: 3%;
}

#point .dsboxs {
	background-color: #FFFFFF;
	border: 1px solid #CCCCCC;
	padding: .5em;
	width: 340px;
}

#point .dsboxs .close {
	float: right
}

#point .dsboxs h2 {
	color: #FF3399;
	font: normal 13px/140% Arial;
	border-bottom: 1px solid #5c3737;
}

#point .dsboxs h2 a {
	color: #FF3399
}

#point .dsboxs .photo {
	text-align: center;
	padding: .5em 0;
	margin: .5em 0;
	box-shadow: 0 0 5px 0px #000;
}

#point .dsboxs p a {
	color: #333;
	text-decoration: underline;
}


/**--- Left Side End Design ---**/

p.p_h3 {
	font-size: 1.2em;
	font-weight: bold;
}

p.p_h3::before {
	content: '';
	display: block;
	clear: both;
}

.about_info h3,
.featured_hotel .featured_info h3,
.about_info p .h3_title {
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid;
	color: #336600;
}

.about .about_info {
	line-height: 1.5em;
	overflow: hidden;
	max-height: 370px;
}

.about .map_box {
	display: flex;
	flex-wrap: wrap;
	max-height: 570px;
}

.about .map_box .map_text {
	width: 40%;
	padding-left: 20px;
}

.about_info ul,
.about_info ol,
.about_info p {
	margin-bottom: 20px;
}

.about_info_box ul {
	list-style: disc;
	margin-left: 30px
}

.about_info p a {
	color: #0066B5;
}

.about_info figure {
	float: left;
	margin: 0 1em 0 0;
}

.about .about_info p::after {
	content: '';
	display: block;
	clear: both;
}

.about_info figure.right {
	float: right;
	margin: 0 0 0 1em;
}

.about_info figure img {
	max-width: 100%;
}

.about_info figcaption {
	font-size: 15px;
	background-color: #eee;
	padding: 10px;
}

.about .about_info.open {
	max-height: 100%;
}

span#more {
	float: right;
	background-color: #fa0;
	color: #fff;
	margin-top: 10px;
	padding: 3px 5px;
	cursor: pointer;
}

span#more a {
	color: #fff;
}


/* 地圖 */

.map {
	width: 60%;
	background-color: #ffe4c4;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}

.map_pic {
	position: relative;
	display: inline-block;
	z-index: 1;
}

.map img {
	max-width: 100%;
}

.map li {
	position: absolute;
}

.map li a {
	display: block;
	border-radius: 0.6em;
	color: #000;
	background: #fff;
	padding: 0 0.5em;
	line-height: 1.5em;
	border: 1px solid #999;
	white-space: nowrap;
}

.map li.active a,
.map li:hover a {
	text-decoration: none;
	background-color: #FFAA00
}

.map li .mapicon {
	position: absolute;
	background: url(../images/mapicon.png) left top;
	width: 20px;
	height: 30px;
	display: block;
}

.map li.on .mapicon,
.map li:hover .mapicon {
	background-position: right top
}

.map .taiwan {
	top: 250px;
	left: 105px;
}

.map .taipei {
	top: 25px;
	left: 220px;
}

.map .pingxi {
	top: 90px;
	left: 325px;
}

.map .miaoli {
	top: 125px;
	left: 165px;
}

.map .taichung {
	top: 175px;
	left: 125px;
}

.map .changhua {
	top: 210px;
	left: 90px;
}

.map .nantou {
	top: 215px;
	left: 220px;
}

.map .taoyuan {
	top: 65px;
	left: 185px;
}
.map .hsinchu {
	top: 95px;
	left: 170px;
}
.map .pingtung {
	top: 390px;
	left: 120px;
}

.map .yanshui {
	top: 285px;
	left: 55px;
}

.map .chiayi {
	top: 250px;
	left: 107px;
}

.map .kaohsiung {
	top: 360px;
	left: 75px;
}

.map .yuejin {
	top: 320px;
	left: 40px;
}

.map .taitung {
	top: 335px;
	left: 265px;
}

.map .hualien {
	top: 195px;
	left: 320px;
}

.map .mapicon {
	top: 0;
	right: -10px;
}

.map .taipei .mapicon {
	top: 50px;
	right: -40px;
}
.map .yehliu .mapicon{
	top: 40px;
	right: 150px;
}
.map .taoyuan .mapicon{
	top:10px;
}

.map .pingxi .mapicon,
.map .nantou .mapicon,
.map .taitung .mapicon,
.map .hualien .mapicon {
	top: 0;
	left: -10px;
}

.events_box {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.events_box .events_lists {
	width: 27%;
}

.events_lists .active {
	border: 3px solid #ffaa00;
	background: white;
	position: relative;
}

.events_lists .active+li {
	border: 0;
}

.about_info_veiw {
	width: 70%;
	overflow: hidden;
	background: #fff;
}

.events_box .about_info_veiw .about_info_box {
	display: flex;
	position: relative;
	align-items: flex-start;
}

.events_box .about_info_veiw .about_info_box .about_info {
	width: 100%;
	flex-shrink: 0;
	padding: 1em;
}


/*旅遊新聞*/

.featured_hotel {
	width: 100%;
	position: relative;
	overflow: hidden;
}

.featured_hotel .featured_pic {
	float: left;
	width: 50%;
	background-position: center;
	background-size: cover;
	height: 230px;
}

.featured_hotel .featured_pic a {
	display: block;
	width: 100%;
	height: 100%;
}

.featured_hotel .featured_pic img {
	display: none;
}

.featured_hotel .featured_info {
	float: right;
	width: 50%;
	padding: 0 1em;
}

.featured_hotel .featured_info p {
	line-height: 1.5;
}

ul.featured_lists {
	width: 100%;
}

ul.featured_lists li,
.events_lists li {
	background: url(../images/list_icon.png) no-repeat left;
	text-indent: 20px;
	line-height: 45px;
}

ul.featured_lists li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

ul.featured_lists li {
	border-bottom: 1px solid;
}

.events_lists li {
	border-top: 1px solid;
	cursor: pointer;
}

.featured_hotel .featured_info h3 span,
ul.featured_lists li a span,
ul.featured_lists li,
.events_lists li a {
	color: #333;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.featured_hotel .featured_info h3 a {
	color: #336600;
}

ul.featured_lists li .grid_prices {
	float: none;
	padding: 0px;
	min-width: 120px;
	text-align: right;
}


/*促銷飯店*/

.swiper-container {
	padding: 0px !important;
	background: transparent !important;
}

.swiper-button-next,
.swiper-button-prev {
	opacity: 0.7;
	width: 50px;
	height: 100%;
	top: 0;
	background-size: 70% auto;
	margin: 0;
}

.swiper-button-prev {
	left: 0;
	right: auto;
}

.swiper-button-next {
	right: 0;
	left: auto;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
	opacity: 0;
}

.swiper-pagination {
	position: static;
}

.grid_link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

section.grid_list {
	position: relative;
}

.grid_beroom {
	position: absolute;
	top: 0;
	left: 0;
	padding: .5em;
	background: rgba(000, 000, 000, 0.7);
	color: #fff;
}

.grid_pic {
	position: relative;
}

figure.grid_pic img {
	width: 100%;
	vertical-align: bottom;
}

.grid_txt {
	line-height: 1.8;
}

h3.grid_name {
	margin: .5em 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	display: block;
	color: #336600;
}

.grid_address {
	background-image: url(../images/mapicon.svg);
	background-repeat: no-repeat;
	background-size: 22px 22px;
	text-indent: 25px;
	font-weight: normal;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	display: block;
	font-size: 15px;
	color: #333;
}

#gridlists .grid_icon_address {
	display: none;
}

.grid_Prj {
	height: 3em;
	overflow: hidden;
}

.grid_Prj a {
	color: #333;
}

.grid_rate {
	overflow: hidden;
}

a.grid_booking {
	float: right;
	background: #fa0;
	color: #fff;
	padding: 3px 25px;
}

.grid_prices {
	float: right;
	color: red;
	padding: 5px 10px;
}


/*熱門景點*/

.attractions .swiper-slide figure .hidden{position: relative;padding: 50% 0}
.attractions .swiper-slide figure img {
	width: 100%;height: 100%;position: absolute;left: 0;top: 0;
}

.attractions .swiper-slide figure a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.attractions .swiper-slide figure .hidden img {
	border-radius: 50%;
}

.attractions figcaption {
	text-align: center;
	margin: .5em;
	color: #000;
	padding: .5em 0;
	border-radius: 20px;
}

/*English*/
h3 strong {
	color: #fff;
}


/*PC*/

@media (min-width: 741px) {
	ul.container li.home {
		display: none;
	}
	.fixed_menu {
		width: 80%;
	}
	.fixed_menu .search_bar {
		padding: 0;
		padding-top: 12px;
	}
	ul.container {
		border-bottom: 3px solid #eee;
	}
	#fixed_nav ul.container {
		border-bottom: 0;
	}
	#nav .active a {
		color: #fa0;
	}
	ul.top_bar {
		position: absolute;
		top: 60px;
		right: 0;
		z-index: 3;
	}
	.search_container {
		background: rgba(255, 255, 255, .7);
	}
	nav {
		background: #fff;
	}
	.festivals_title {
		font-size: 2em;
		position: relative;
	}
	.festivals_title::before,
	.festivals_title::after {
		content: '';
		display: block;
		width: 30%;
		background-color: #fa0;
		height: 3px;
		position: absolute;
		top: 50%;
	}
	.festivals_title::before {
		left: 0;
	}
	.festivals_title::after {
		right: 0;
	}
	.mobile_nav {
		display: none;
	}
}

@media (min-width: 1024px) {
	section .festivals_info h2 {
		font-size: 1.7em;
		line-height: 45px;
	}
	.featured_hotel {
		float: left;
		width: 60%;
	}
	ul.featured_lists {
		float: right;
		width: 40%;
		padding-left: .5em;
	}
	/*hover*/
	.festivals .container section .festivals_box.hover a {
		opacity: .7;
		border-bottom-color: #333;
	}
	input.btns,
	ul.container li a,
	.featured_hotel .featured_pic a,
	span#more,
	ul.featured_lists li a span,
	section.grid_list a,
	#hotPont figure a,
	.swiper-button-next,
	.swiper-button-prev,
	.button a,
	.events_lists li a {
		transition: .4s all;
	}
	ul.container li a:hover {
		border-bottom: 5px solid #fa0;
	}
	ul.featured_lists li a:hover span,
	.events_lists li:hover a {
		color: #fa0;
	}
	input.btns:hover,
	section.grid_list a.grid_booking:hover,
	span#more:hover {
		background-color: #f60 !important;
	}
	.featured_hotel .featured_pic a:hover,
	section.grid_list a:hover,
	#hotPont figure a:hover {
		background-color: rgba(255, 255, 255, .3);
	}
	.swiper-button-next:hover,
	.swiper-button-prev:hover {
		background-color: rgba(0, 0, 0, 0.2);
		opacity: 1;
	}
	.button a:hover {
		background-color: #ffd786;
	}
	.events_lists .active::before {
		content: '';
		display: block;
		background-color: white;
		border-top: 3px solid #ffaa00;
		border-left: 3px solid #ffaa00;
		position: absolute;
		width: 15px;
		height: 15px;
		transform: rotate(-45deg);
		top: 15px;
		left: -10px;
	}
}

@media (max-width: 1100px) {
	.container {
		padding: 0 0.5em;
	}
}

@media (max-width: 970px) {
	#header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 10;
	}
	body {
		margin: 60px 0 46px;
	}
	#mobile_nav li a {
		border: 0;
		padding: 10px 0;
	}
	.fixed #fixed_bar {
		display: none;
	}
	.festivals .container section:nth-of-type(1) .button_box {
		flex-direction: column;
		margin-bottom: 0;
	}
	.button {
		width: 100%;
		margin-bottom: .8em;
	}
	.festivals .container section {
		margin: 0;
	}
	.map {
		display: none;
	}
	.about .map_box .map_text {
		width: 100%;
		padding: 0
	}
	.events_box {
		flex-direction: column;
	}
	.events_box .events_lists,
	.about_info_veiw {
		width: 100%;
	}
}


/*MOBILE*/

@media (max-width: 740px) {
	.main>article {
		padding: 2em 0em;
	}
	.search_button {
		display: block;
		background-color: #FBAD13;
		width: 100%;
		box-shadow: 0px 0px 20px rgba(0, 0, 0, 1);
		text-align: center;
		font-size: 20px;
		padding: 7px 0;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 10;
		color: #fff;
	}
	.open .search_button {
		display: none;
	}
	#rooms_search_bar {
		display: flex;
		align-items: center;
		width: 100%;
		position: fixed;
		height: 0%;
		transition: .4s ease-in-out;
		overflow: hidden;
		background-color: rgba(0, 0, 0, .8);
		top: 0;
		left: 0;
	}
	.open #rooms_search_bar {
		height: 100%;
	}
	.search_bar {
		width: 100%
	}
	.search_bar ul li {
		width: 100%;
		padding: 5px 0;
	}
	ul.container,
	ul.container li {
		display: block;
	}
	.anchor_hide {
		display: block;
		height: 60px;
		margin-top: -60px;
		z-index: -1;
	}
	h1.title a {
		background-image: url(../images/title_mobile.png);
		max-width: 580px;
		height: 278px;
		background-position: center;
		margin-bottom: 0em;
	}
	.banner {
		height: 300px;
	}
	.about_info figure,
	.about_info figure.right,
	.map {
		width: 100%;
		float: none;
		margin: 0;
		margin-bottom: 20px;
	}
	.about .about_info {
		position: relative;
	}
	.about .about_info::after {
		content: '';
		display: block;
		width: 100%;
		height: 15px;
		background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
		background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
		filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
		position: absolute;
		left: 0;
		bottom: 0;
	}
	.about .about_info.open::after {
		display: none;
	}
	.festivals .container section .festivals_box {
		text-align: left;
		flex-direction: column;
	}
	.intro {
		display: none;
	}
	div#moon_map {
		display: none;
	}
	.festivals .festivals_info::before {
		right: inherit;
		left: 10px;
		top: -24px;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-bottom: 15px solid #fff;
	}
}

@media (max-width: 570px) {
	.featured_hotel .featured_pic {
		float: none;
		width: 100%;
		height: 180px;
	}
	.featured_hotel .featured_info {
		float: none;
		width: 100%;
		padding: .5em 0;
	}
}

@media (max-width: 480px) {
	body {
		font-size: 18px;
	}
	.festivals_title {
		font-size: 1.5em;
	}
	.festivals_info {
		padding: .5em;
	}
	.attractions .swiper-button-next,
	.attractions .swiper-button-prev,
	.hotels .swiper-button-next,
	.hotels .swiper-button-prev {
		display: none;
	}
}