@charset "UTF-8";
@import url(base.css);
@import url(animate.css);
@import url(font-awesome.min.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@700&display=swap');
/* =============================================================================
   BASIC
   ========================================================================== */
html, body { height: 100%; -webkit-text-size-adjust: none; text-size-adjust: none; }
body { background:#FFFCF1; }
body, th, td, input { font-size: 100%; }
a { text-decoration: none; }
h1 { font-size: 2em; font-family: Arial, Helvetica, sans-serif; margin: 0 0 0.6em; color: #4EA663;}
h2 { font-size: 1.5em; font-family: Arial, Helvetica, sans-serif; margin: 0 0 0.6em; }
h3 { font-size: 1.4em; font-family: Arial, Helvetica, sans-serif; margin: 0 0 0.6em; color: #333;}
h4 { font-size: 1.3em; font-family: Arial, Helvetica, sans-serif; margin: 0 0 0.6em; }
h5 { font-size: 1.2em; font-family: Arial, Helvetica, sans-serif; margin: 0 0 0.6em; }
h6 { font-size: 1.2em; font-family: Arial, Helvetica, sans-serif; margin: 0 0 0.6em; }
p,li { font-size: 1.1em; line-height: 1.5em; color: #333; font-family: Arial, Helvetica, sans-serif; }

a:link, a:visited { text-decoration: none; cursor: pointer; }
a:link, a:visited { text-decoration: none; cursor: pointer;  }
hr {  margin: 1.5em 0;}
::selection { background: #F1B818; color: #FFF;}
.lh{ color: #D93E3E !important;}

/*IMG LOAD*/
.imgLiquidCenter, .imgLiquidFill{ opacity: 0; transition: opacity 1000ms ease; }
.imgLiquidCenter img, .imgLiquidFill img{ display: none;}
.imgLiquid_ready { opacity: 1; }
div.lazy{ opacity: 0;}
div.lazy.imgLiquid_ready{ opacity: 1;}

/*scale*/
.mv_16by9 { position: relative; padding-bottom: 56.25%; margin-bottom: 30px;}
.mv_16by9.left { width: 45%; float: left; padding: 0; margin: 0 20px 20px 0;}
.mv_16by9.left::before { display: block; position: relative; content: ''; padding-bottom: 56.25%;}
.mv_16by9 iframe{  position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border: 0;}
.mv_4by3 { position: relative; padding-bottom: 75%; margin-bottom: 30px;}
.mv_4by3 iframe{  position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border: 0;}
.item_16by9 { position: relative; padding-bottom: 56.25%;}
.item_4by3 { position: relative; padding-bottom: 75%;}
@media only screen and (max-width: 640px) {
	.mv_16by9.left { width: auto; float: none; margin: 0 0 20px 0;}
}

/*Element*/
.ie { position: fixed; width: 60%; height: 80%; padding: 10% 20%; text-align: center; left: 0; top: 0; background: #f2f2f2; z-index: 9999; }
.ie .title { color: #333 !important; font-size: 2em; }
.ie p { text-align: center; color: #333 !important; font-size: 0.9375em; }
.ie a { color: #F36; }

.text-ellipsis{ display: block; max-width: 100%; word-break:keep-all; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* =============================================================================
   BASIC END
   ========================================================================== */

/*Package*/
.inner-width { position: relative; max-width:1200px; margin: auto;}
.txt-width { position: relative; max-width:900px; margin: auto; }

@media only screen and (max-width: 1200px) {
	.inner-width { padding: 0 10px;}
}

/*---more_bar---*/
.more_bar{ position: relative; z-index: 100; text-align: left; margin: 20px 0 30px;}
.more_bar.center{ text-align: center;}
.more_bar.right{ text-align: right;}
.more_bar.pos_right{ position: absolute; right: 0; top: 0; margin: 0;}
.more_bar.ad{ right: 320px;}
.more_bar .arr{ display: inline-block; margin: 0 20px;  vertical-align: middle; 
	transition: 200ms ease;
}
.more_bar .arr:hover{ opacity: 0.5;}
/*------*/

/*---title_bar---*/
.title_bar{ position: relative; text-align: left; margin: 40px 0 50px; padding:0;}
.title_bar.sm{ margin: 0 0 40px 0; }
.title_bar.first { margin: 60px 0 30px 0;}
.title_bar.nomr{ margin: 0;}
.title_bar.left{ text-align: left; }
.title_bar.right{ text-align: right; }
.title_bar.center{ text-align: center; }
.title_bar .title{ position: relative; display: block; color: #000;  font: 700 30px 'Noto Serif TC', serif; line-height: 1.1em; margin: 0; }
.title_bar .title.w{ position: relative; display: block; color: #FFF; font-size: 2em; font-weight: 500; line-height: 1em; margin: 0; }
.title_bar .title.big{ font-size: 2.5em;}
.title_bar .title span{ display: block; font: 400 16px sans-serif; line-height: 1.4em; color: #333; margin: 10px 0 0 0;}
.title_bar .title b{ display: block; font-size: 20px; line-height: 1.4em; color: #4EA663; }
.title_bar .title span.time{ font-size: 16px; color: #D93E3E; vertical-align: middle; font-weight: 700; margin-top: 5px;}
.title_bar .back{ position: absolute; bottom: 10px; left: -30px; font-size: 24px; color: #D93E3E;}
.title_bar .sub_title{ position: relative; display: block; color: #464646; font-weight: 600;font-size: 1.2em; margin:10px 0;}
.title_bar .date{ color: #FFF; font-size: 15px; font-weight: 700; margin-bottom: 5px; padding: 0 10px; margin: 10px 0; background: #F1B818; display: inline-block;}
.title_bar.w .title{ color: #FFF;}
.title_bar.w .title::before{ top: 12px; background: #FFF;}
.title_bar.w .title span{ color: #CCC; }
@media only screen and (max-width: 900px) {
	.title_bar.first { margin: 40px 0 20px 0;}
}
/*------*/

/*---button---*/
.btn_more{ position: relative; display: inline-block; font-size: 15px; color: #FFF; min-width: 140px; text-align: left; line-height: 40px; padding: 0 20px; border-radius: 10px; background: #EFB344; border: solid 1px transparent; box-sizing: border-box; vertical-align: middle; font-family: 'Roboto', sans-serif;
	transition: 200ms ease;
}
.btn_more:hover, .btn_more:focus{ color: #EFB344; border: solid 1px #EFB344; background: #FFF;}
.btn_more i.fa{ position: absolute; top: 0; right: 15px; line-height: 40px;}
.btn_more.right{ text-align: right; }

.btn_more.c1{ color: #EFB344; background: transparent; border: solid 1px #EFB344;}
.btn_more.c1:hover, .btn_more.c2:focus{ color: #FFF; background: #EFB344;}

.btn_more.c2{ color: #FFF; background: #EFB344; border: solid 1px #EFB344;}
.btn_more.c2:hover, .btn_more.c2:focus{ color: #EFB344; background: #FFF;}

.btn_more.left{ padding: 0 40px 0 20px; text-align: left;}
.btn_more.sm{ line-height: 32px; padding: 0 20px;}
.btn_more.sm i.fa{ line-height: 32px;}

.btn_send{ position: relative; display: inline-block; font-size: 1rem; color: #FFF; min-width: 140px; text-align: center; line-height: 40px; padding: 0 30px; border-radius: 10px; background: #EFB344; border: solid 1px transparent; box-sizing: border-box; vertical-align: middle;
	transition: 200ms ease;
}
.btn_send:hover, .btn_send:focus{ color: #EFB344; border: solid 1px #EFB344; background: #FFF;}
.btn_send i.fa{ position: absolute; top: 0; right: 15px; line-height: 40px;}
.btn_send.disabled{ opacity: 0.2; cursor: default;}
.btn_send.c1{ color: #FFF; background: #464646;}
.btn_send.c1:hover, .btn_send.c1:focus{ color: #464646; background: #FFF; border:solid 1px #464646;}
.btn_send.c2{ color: #EFB344; background: #FFF;  border:solid 1px #EFB344;}
.btn_send.c2:hover, .btn_send.c2:focus{ color: #FFF; background: rgba(253, 106, 98, 0.5); border:solid 1px #EFB344;}
.btn_send.sm{ line-height: 32px; padding: 0 40px; min-width: inherit;}
.btn_send.sm i.fa{ line-height: 32px;}
.btn_send.left{ padding: 0 40px 0 20px; text-align: left;}

.btn_clear{ position: relative; display: inline-block; font-size: 1rem; color: #FFF; background: #666; font-weight: 500; line-height: 40px; padding: 0 20px; border-radius: 10px; border: solid 1px #666;
	transition: 200ms ease;
}
.btn_clear:hover, .btn_clear:focus{ color: #FFF; background: #999;}
.btn_clear i.fa{ margin: 0 0 0 2em;}
.btn_clear.disabled{ background: #CCC; cursor: default;}
.btn_clear.sm{ line-height: 32px; padding: 0 20px;}
.btn_clear.sm i.fa{ line-height: 32px;}

.btn_link{ position: relative; display: inline-block; font-size: 1rem; color: #666; font-family: 'Roboto', sans-serif; line-height: 40px; padding: 0 5px;
	transition: 200ms ease;
}
.btn_link:hover, .btn_link:focus{ color: #EFB344; }
.btn_link i.fa{ margin: 0 0 0 2em;}
.btn_link.disabled{ opacity: 0.2; cursor: default;}
.btn_link.sm{ line-height: 32px; padding: 0 20px;}
.btn_link.sm i.fa{ line-height: 32px;}

.btn_o{ position: relative; display: inline-block; font-size: 24px; color: #FFF; width: 48px; height: 48px; line-height: 48px; border-radius: 24px; text-align: center; background: #EFB344; border: solid 1px transparent;}
.btn_o + .btn_o{ margin: 0 10px;}
.btn_o img{ display: inline-block; width: 24px; margin-top: 7px; }
.btn_o.fb{ background: #385AAF;}
.btn_o.google{ background: #D93E3E; }
.btn_o:hover{ background: #FFF; border: solid 1px #EFB344; color: #EFB344;}

.btn_o2{ position: relative; display: inline-block; font-size: 15px; color: #FFF; width: auto; padding: 0 20px; height: 48px; line-height: 48px; border-radius: 24px; text-align: center; background: #EFB344; border: solid 1px transparent;}
.btn_o2 + .btn_o2{ margin: 0 10px;}
.btn_o2 img{ display: inline-block; width: 24px; margin-top: 7px; }
.btn_o2 i{ font-size: 24px; vertical-align: middle;}
.btn_o2 span{ font-size: 15px; display: inline-block; padding: 0 10px;}
.btn_o2.fb{ background: #385AAF;}
.btn_o2.google{ background: #D93E3E; }
.btn_o2:hover{ color: #FFF;}
.btn_o2.fb.on{ background: #385AAF; color: #FFF; border: solid 1px #385AAF;}
.btn_o2.google.on{ background: #D93E3E; color: #FFF; border: solid 1px #D93E3E;}
.btn_o2.fb.off{ background: #385AAF; color: #FFF; border: solid 1px #385AAF; opacity: 0.5;}
.btn_o2.google.off{ background: #D93E3E; color: #FFF; border: solid 1px #D93E3E; opacity: 0.5;}
.btn_o2.off:hover{ opacity: 1;}

.to_top{ position: fixed; cursor: pointer; bottom: -40px; right: 10px; width: 40px; height: 40px; line-height: 38px; text-align: center; background: #F1B818; border-radius: 20px; color: #FFF; font-size: 24px; z-index: 100;
	transition: 300ms ease;
}
.to_top:hover{ background: #333;}
.to_top.ed{ bottom: 10px; }

@media only screen and (max-width: 900px) {
	.btn_more{ min-width: 150px;}
}
/*------*/

/*---tag_bar---*/
.tag_bar{ position: relative; margin: 10px 0; display: flex; flex-wrap: wrap;}
.tag_bar .item{ color: #FFF; font-size: 14px; margin: 2px; padding: 0 6px; background: #666666; border-radius: 2px;}
.tag_bar .item.hand{ cursor: pointer;}
.tag_bar.link .item{ flex: 0 1 auto; text-align: center; background: #F9E9DE; color: #333; border-radius: 5px;}
.tag_bar.link .item:hover{ background: #F1B818; color: #FFF;}
/*------*/

/*---PAGER---*/
.pager_bar { padding: 20px 0; text-align: center; }
.pager_bar.right { text-align: right; }
.pager_bar.left { text-align: left; }
.pager_bar a { display: inline-block; line-height: 30px; width: 30px; text-align: center; margin: 0 2px 0 0; color: #666; font-size: 1em; border-radius: 15px; background: #FFF; vertical-align: text-top;
	transition: 300ms ease;
}
.pager_bar select { display: inline-block; line-height: 30px; vertical-align: text-top; padding: 0 30px; margin: 0 4px 0 0; border-radius: 10px;
	transition: 300ms ease;
}
.pager_bar a.con { width: auto; padding: 0 20px;  border-radius: 10px; background: #666;}
.pager_bar a.arr { background: #FFF; width: auto; padding: 0 10px;}
.pager_bar a:hover, .pager_bar a.cur { color: #FFF; background: #F1B818;}
.pager_bar p{ text-align: center; color: #666; font-size: 0.9em; margin: 0 0 10px 0;}
.pager_bar p strong{ color:#333}
.pager_bar a.back { background: #F1B818; color: #FFF; width: auto; padding: 0 15px; border: solid 1px #F1B818;}
.pager_bar a.back:hover { color: #F1B818; background: #FFF;}
/*------*/

/*---BLOCK---*/
#wrapper { position: relative; z-index: 1; width: 100%; margin:auto; top:0; overflow:hidden; }
#header { position:fixed; z-index:1000; width:100%; padding: 0; left:0; background: rgba(255, 255, 255, 1); height: 60px; border-bottom: solid 5px rgba(241, 184, 24, 0.7);
	transition: 500ms ease;
}
#header:before { content: ""; position: absolute; background: inherit; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; transition: 500ms ease;
    -webkit-backdrop-filter: blur(0) saturate(100%);
    backdrop-filter: blur(0) saturate(100%);
}
#header>.inner-width{ display: flex; flex-wrap: nowrap; justify-content:space-between;}

#content { position: relative;}
#content>.inner-width{ display: flex; flex-wrap: wrap; justify-content: space-between;}
#content>.inner-width .title_bar{ flex: 0 0 100%;}
#main_block{ position: relative; }

#footer { position:relative; z-index: 10; background: url(../images/bg_footer.jpg) #333 center/cover; padding: 40px 0;}
#footer .copyright { position: relative; padding: 20px; margin-top: 20px; text-align: center; border-top: solid 1px #696969; flex: 0 0 100%;}
#footer .copyright p{ margin: 0; font-size: 0.9em; color: #FFF;}
#footer .copyright a{ color: #FFF; font-weight: 700;}
#footer .icon{ position: absolute; top: -115px; right: 3%; }
#footer>.inner-width{ display: flex; flex-wrap: wrap; justify-content: space-between;}
#footer .foot_logo{ flex: 0 0 100%; margin-bottom: 20px; padding:0 20px;}
#footer .foot_logo span { vertical-align: middle; color: #FFC420; font: 700 14px/1.4em 'Noto Serif TC', serif;}
#footer .foot_logo b { vertical-align: middle; color: #FFC420; font: 700 24px/1.4em 'Noto Serif TC', serif;}
#footer .foot_info{ flex: 0 0 50%; padding:0 20px;}
#footer .foot_info p{ font-size: 18px; color: #FFF; margin: 5px 0 30px;}
#footer .foot_info p i{ display: inline-block; width: 30px; text-align: center;}
@media only screen and (max-width: 900px) {
	#footer .foot_bg>.inner-width {flex-wrap: wrap;}
	#footer .foot_logo { flex: 0 0 100%; margin-bottom: 20px;}
	#footer .foot_menu { flex: 0 0 100%;}
	#footer .foot_info p{ font-size: 16px; margin: 5px 0 20px;}
}
@media only screen and (max-width: 640px) {
	#footer .foot_logo { margin-bottom: 20px; padding: 0;}
	#footer .foot_menu { display: none;}
	#footer .foot_info { flex: 0 0 100%; padding: 0;}
	#footer>.inner-width{ text-align: center;}
}
/*------*/

/*---logo---*/
.logo { padding: 10px 0; margin: 0 ; box-sizing: border-box; flex: 0 0 auto; }
.logo img { max-width: 44px; vertical-align: middle; margin-right: 10px;}
.logo span { vertical-align: middle; color: #000; font: 700 14px/1.4em 'Noto Serif TC', serif;}
.logo b { vertical-align: middle; color: #000; font: 700 28px/1.4em 'Noto Serif TC', serif;}


/*---top_menu---*/
.top_menu{ box-sizing: border-box; z-index: 2; flex: 0 0 auto; margin: 0 70px 0 0;
	transition: 500ms ease;
}
	.top_menu ul{ list-style:none; margin:0; box-sizing: border-box; text-align: center;}
	.top_menu>ul>li{ position: relative; display: inline-block; }
	.top_menu>ul>li>a{ position:relative; display:block; font-size: 16px; font-weight: 400; color:#000; padding:0 1em; line-height: 40px; margin: 10px 0; border-radius: 10px;
		transition: 500ms ease;
	}
	.top_menu>ul>li>a:hover { color: #FFF; background: #999;}
	.top_menu>ul>li>a.on, .top_menu>ul>li>a.cur{ color: #FFF; background: #EFB344;}

.top_menu .submenu{ position: absolute; top: 60px; left: 0; background: #FFF; min-width: 100px; border-radius: 10px; overflow: hidden; max-height: 0; box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	transition: max-height 500ms ease-in-out;
}
	.top_menu .on .submenu{ max-height: 500px;}
	.top_menu .submenu>li + li{  border-top: solid 1px #f2f2f2;}
	.top_menu .submenu a{ position: relative; display: block; text-align: left; color: #333; padding: 10px 1em; line-height: 24px; margin:0; font-size: 16px; white-space:nowrap;
		transition: 500ms ease;
	}
	.top_menu .submenu a:hover, .top_menu ul.submenu a:focus{ background: #EFB344; color: #FFF;}

.top_menu .submenuhead2{ position: relative;}
	.top_menu .submenuhead2>a::after{ position: absolute; display: block; right: 7px; top:12px; color: #1E66DB; font-size: 12px;
		font-family: "FontAwesome"; font-weight: 900; content: "\f105";
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
		-webkit-font-smoothing: antialiased;
	}
	.top_menu .submenuhead2>a:hover::after, .top_menu .submenuhead2>a:focus::after{ color: #FFF;}
	.top_menu .submenuhead2.on>a {background: #1E66DB; color: #FFF;}

	.top_menu .submenuhead2.on .submenu2 { display: block;}
	.top_menu .submenuhead2.on a::after{  color: #FFF;}

	.top_menu .submenu2{ display: none;  position: absolute; min-width: 100px;  top: 0; left: 100%; background: #FFF;}
	.top_menu .submenu2>li + li{  border-top: solid 1px rgba(200,200,200,0.40);}
	
	.top_menu .submenu2 a{ display: block; white-space:nowrap; color: #13acd2;}

.top_menu .submenu2 a:hover, .top_menu ul.submenu2 a:focus{ background: #13acd2; color: #FFF;}
/*------*/

/*---mem_menu---*/
.mem_menu{ position: absolute; top: 15px; right: 0;
	transition: 500ms ease;
}
.mem_menu ul{ list-style:none; margin:0; box-sizing: border-box;}
.mem_menu>ul>li{ position: relative; display: block; float: left;}
.mem_menu>ul>li>a{ position:relative; display:block; font-size: 24x; font-weight: 600; color:#000; padding:0 5px; margin: 0 2px; line-height: 32px; width: 32px; height: 32px; border-radius: 5px; text-align: center;
	transition: 500ms ease;
}
.mem_menu>ul>li>a img{ width: 20px; vertical-align: text-top;}
.mem_menu>ul>li>a span{ display: block; text-indent: -9999px;}
.mem_menu>ul>li>a b{ display: block; position: absolute; top: 20px; right: -5px; font-size: 12px; width: 20px; height: 20px; line-height: 20px; text-align: center; background: #FD6B62; border-radius: 5px;
	animation: moveicon linear 1s infinite;
}
.mem_menu>ul>li>a.fb{ color: #395693;}
@media only screen and (max-width: 900px) {
	.mem_menu{ position: absolute; top: 15px; right: 60px;}
}
/*------*/

/*ED*/
#header.ed { background: rgba(255, 255, 255, 0.6); }
#header.ed:before {
    -webkit-backdrop-filter: blur(20px) saturate(150%);
    backdrop-filter: blur(20px) saturate(150%);
}


/*BANNER*/
/*---top_banner---*/
.top_banner { position: relative; width: 100%; padding: 0; margin: 0 auto; overflow: hidden; z-index: 0; }
.top_banner ul{ list-style: none; margin: 0 auto; overflow: visible;}
.top_banner li{ position: relative; display: block;}
.top_banner .item{ position: relative; display: block; height: 715px;}
.top_banner .pic{ display: block; position: absolute; top: 0; left: 0;  width: 100%; height: 100%; z-index: 0; overflow: hidden;
	background: #333 url(../images/loading.gif) no-repeat center center; background-size: 60px;
}
.top_banner .inner-width{ position: relative; height: 715px; margin: auto;}
.top_banner .owl-carousel .owl-stage-outer { overflow: visible;}
.top_banner .owl-item .cloned .item:focus { outline: none; }
.top_banner .owl-theme .owl-dots{ position: absolute; bottom: 10px;}
.top_banner .owl-theme .owl-dots .owl-dot span { background: #FFF; transform: scale(0.8);}
.top_banner .owl-theme .owl-dots .owl-dot.active span { background: #FFF; transform: scale(1);}
.top_banner .active .txt .bg { 
	background: rgba(100, 157, 102, 0.7);
	-webkit-backdrop-filter: blur(10px) saturate(150%);
	backdrop-filter: blur(10px) saturate(150%);
}
.top_banner .active .txt .title{  top:0; opacity: 1;}
.top_banner .active .txt .sub_title{  top:0; opacity: 1;}
.top_banner .active .txt .con{  top:0; opacity: 1;}
.top_banner .active .txt .more_bar{  top:0; opacity: 1;}
.top_banner .active .pic::before{ opacity: 1;}
@media only screen and (max-width: 900px) {
	.top_banner .item{ height: 400px;}
	.top_banner .inner-width{ height: 400px;}
}

@media only screen and (max-width: 640px) {
	.top_banner .item{ height: 240px;}
	.top_banner .inner-width{ height: 240px;}
}

.owl-animated-out {
  z-index : 1 
}

.owl-animated-in {
  z-index : 0 
 }


/*---page_banner---*/
.page_banner { position: relative; width: 100%; padding: 0; margin: 0 auto; overflow: hidden; z-index: 0; height: 700px; margin-bottom: -550px;}
.page_banner .pic{ display: block;  width: 100%; height: 700px;
	transition: opacity 800ms ease-in-out;
}

@media only screen and (max-width: 900px) {
	.page_banner .pic { height: 300px; }
}
/*------*/

/*---story_box---*/
.story_box{ position: relative; padding: 40px 0; z-index: 1;}
.story_box>.inner-width{ display: flex;}
.story_box .left{ position: relative; flex: 1; width: 46%; margin: 0 2%; display: flex; flex-wrap: wrap; align-content: flex-start;}
.story_box .cover{ flex: 0 0 auto; height: 210px; width: calc(50% - 20px); margin: 10px; border-radius: 5px;}
.story_box .cover:nth-child(1){ height: 370px; width: calc(100% - 20px); margin: 10px;}
.story_box .txt{ flex: 1; width: 46%; margin: 40px 2%;}
.story_box .title{ font: 700 34px/1.4em 'Noto Serif TC', serif; color: #000; margin-bottom: 5px;}
@media only screen and (max-width: 900px) {
	.story_box .txt{ margin: 20px 2%;}
	.story_box .title{ font: 700 24px/1.4em 'Noto Serif TC', serif;}
	.story_box .cover{ height:120px; }
	.story_box .cover:nth-child(1){ height: 200px; }
}
@media only screen and (max-width: 640px) {
	.story_box>.inner-width{ flex-wrap: wrap; }
	.story_box .left{ flex: 0 0 100%; width: auto; margin: 0 0 20px 0; }
	.story_box .txt{ flex: 0 0 calc( 100% - 20px ); width: auto; margin: 0 10px; }
}
/*------*/

/*---pro_box---*/
.pro_box{ position: relative; padding: 40px 0; background: url(../images/bg_box1.jpg) center/cover fixed; }
.pro_box .list ul{ position: relative; display: flex; flex-flow: wrap; list-style: none; justify-content: center; margin: 0 -10px; }
.pro_box .list ul li{ position: relative; flex: 0 0 calc(100% / 3 - 20px); margin: 10px;}
.pro_box .list li a { position: relative; display: block; overflow: hidden; border-radius: 10px;
	transition: 200ms ease;
}
.pro_box .list li a .pic{ width: 100%; height: 0; padding: 0 0 60% 0; margin: 0;
	transition: opacity 500ms ease, transform 500ms ease;
}
.pro_box .list li a .txt{ position: absolute; bottom: 0; left: 0; width: 100%; box-sizing: border-box; padding: 20px 10px; text-align: center; }	
.pro_box .list li a .txt .title{ font: 700 30px 'Noto Serif TC', serif; letter-spacing: 0.1em; font-weight: 500; color: #FFF; margin-bottom: 10px; line-height: 40px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow: hidden;}
.pro_box .list li a:hover { transform: scale(1.05); box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);}
.pro_box .list li.xl{ flex: 0 0 calc(100% / 3 - 20px); }
@media only screen and (max-width: 900px) {
	.pro_box .list li a .txt .title{ font: 700 24px 'Noto Serif TC', serif; }
}
@media only screen and (max-width: 640px) {
	.pro_box .list ul li { flex: 0 0 calc(100% - 20px); }
}
/*------*/

/*---inner_box---*/
.inner_box{ padding: 0 0 40px;}
.inner_box table{min-width: 100%;}
.inner_box td .type{ position: relative; display: inline-block; font-size: 1rem; color: #FFF; text-align: center; line-height: 32px; padding: 0 10px; border-radius: 10px; background: #999; border: solid 1px transparent; box-sizing: border-box; vertical-align: middle;
	transition: 200ms ease;
}
.inner_box td .type.booked{ background: #38BAC2;}
.inner_box td .type.checkin{ background: #F1B818;}
.inner_box td .type.cancel{ background: #F36;}

@media only screen and (max-width: 900px) {
	.tab_scroll{ overflow: auto;}
	.inner_box { padding: 0 10px;}
	.inner_box table{min-width: 800px;}
}
@media only screen and (max-width: 640px) {
	.inner_box .more_bar.pos_right { position: relative; text-align: right;}
}
/*------*/

/*---EDITOR---*/
.edit img{ max-width: 100%; height: auto !important;}
.edit iframe{ max-width: 100%;}
.edit h2{ font-size: 1.5rem; color: #F1B818;}
.edit h3{ position: relative; display: inline-block; color: #333; margin-bottom: 20px; font: 700 1.6rem 'Noto Serif TC', serif;}
.edit h3::before{ position: absolute; display: block; content: ''; bottom: -5px; left: 0; width: 20px; height: 2px; background: #64512e;}
.edit h3::after{ content: ''; display: block; clear: both;}
.edit h4{ position: relative; display: block; color: #333; font: 700 1.3rem 'Noto Serif TC', serif;}
.edit h5{ font-size: 1.2rem;}
.edit h6{ font-size: 1.1rem; color: #666;}
.edit i{ color:#666;}
.edit a{ color:#0B66C2;}
.edit p{ margin-bottom: 1em; color: #333; text-align: justify;}
/*------*/

/*---text img---*/
.pic_center{ display: block; max-width: 100%; margin: 0 auto 20px; padding: 0 0 20px 0; text-align: center; border-bottom: #CCC 4px solid;}
.pic_center img{ width: 100%; max-width: 600px; height: auto;}
.pic_center figure{ display: block; text-align: left; color: #333; padding: 10px;}
.pic_center.col2 { overflow: auto;}
.pic_center.col2 img{ width:calc(50% - 20px); max-width: none; margin: 0 10px; float: left;}
.pic_left{ display: block; float:left; margin: 0 40px 20px 0; max-width: 45%; border-bottom: #CCC 4px solid; border-radius: 10px; overflow: hidden;}
.pic_left img{ display: block; width: 100%; height: auto;}
.pic_right{ display: block; float:right; margin: 0 0 20px 40px; max-width: 45%; border-bottom: #CCC 4px solid; border-radius: 10px; overflow: hidden;}
.pic_right img{ display: block; width: 100%; height: auto;}
.pic_full{ display: block; max-width: 100%; margin: 0 auto 20px; padding: 0 0 20px 0; text-align: center; border-bottom: #CCC 4px solid;}
.pic_full img{ width: 100%; height: auto;}
.pic_full figure{ display: block; text-align: left; color: #333; padding: 10px;}
.map_left{ display: block; float:left; margin: 0 40px 20px 0; width: 45%; }
.map_left iframe{ width: 100%; height: 400px;}
.map_right{ display: block; float:right; margin: 0 0 20px 40px; width: 45%; }
.map_right iframe{ width: 100%; height: 400px;}
@media only screen and (max-width: 900px) {

}
@media only screen and (max-width: 640px) {
	.pic_right{ float:none; margin: 0 0 20px 0; max-width: 100%; width: 100%; }
	.pic_left{ float:none; margin: 0 0 20px 0; max-width: 100%; width: 100%; }
	.map_left{ float:none; margin: 0 0 20px 0; max-width: 100%; width: 100%; }
	.map_right{ float:none; margin: 0 0 20px 0; max-width: 100%; width: 100%; }
}


.list_box{ position: relative; padding: 40px 0; display: flex; flex-wrap: wrap; margin: 0 -20px;}
.list_box .item{ flex: 0 0 calc(100% - 20px); margin: 10px; display: flex;}
.list_box .item .pic{ flex: 0 0 240px; margin: 10px; height: 140px; border-radius: 5px; overflow: hidden;}
.list_box .item .txt{ flex: 0 0 calc( 100% - 280px); margin: 10px; }
.list_box .item .txt .title{ flex: 0 0 auto; margin: 0 0 10px 0; font: 700 30px 'Noto Serif TC', serif;}
.list_box .item .txt p{ font-weight: 700; margin: 0;}
.list_box .item .txt .con{ font-weight: 400; color: #666;}
.list_box .item .txt .con.red{ color: #D93E3E;}
.list_box.col2 .item{ flex: 0 0 calc(50% - 20px); }
@media only screen and (max-width: 900px) {
	.list_box.col2 .item{ flex: 0 0 calc(100% - 20px); }
}

@media only screen and (max-width: 640px) {
	.list_box .item{ flex-wrap: wrap;}
	.list_box .item .pic{ flex: 0 0 100%; margin:0 0 10px 0; height: 200px;}
	.list_box .item .txt{ flex: 0 0 100%; margin:0 0 10px 0; }
}


.card_list{ padding: 0.5rem 2rem; background: #FFF; border-radius: 10px; overflow: hidden; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); margin: 0 0 10px 0;
	transition: 500ms ease-in-out;
}
.card_list.col2{ flex: 0 0 calc(50% - 25px); padding: 1rem 2.25rem; margin: 12.5px;}
.card_list.col4{ flex: 0 0 calc(25% - 25px); padding: 1rem 2.25rem; margin: 12.5px;}
.card_list.pad{ padding: 2rem 2.25rem; }
.card_list .title{ font: 700 24px 'Noto Serif TC', serif; margin: 20px 0; color: #333;}
.card_list .sub_title{ font: 700 20px 'Noto Serif TC', serif; margin: 20px 0; color: #333; word-break:break-all; }
.card_list:hover{ background: #eff6f8;}

@media only screen and (max-width: 1200px) {

	.card_list.col4{ flex: 0 0 calc(50% - 25px); }
}
@media only screen and (max-width: 900px) {

	.card_list.col2{ flex: 0 0 calc(100% - 25px); }
	.card_list.col4{ flex: 0 0 calc(100% - 25px); }
}

@media only screen and (max-width: 640px) {
	.card_list{ padding: 1rem; }
	.card_list.col2{ padding: 1rem 1.25rem; }
	.card_list.col4{ padding: 1rem 1.25rem; }
	.card_list.pad{ padding: 1rem 1.25rem; }
}


/*------*/
.pho_list{ position: relative; margin:10px -10px 50px;}
.pho_list a{ position: relative; display: block; float: left; width: calc(100%/4 - 20px); margin: 10px; border-radius: 5px; overflow: hidden; background: #333;}
.pho_list a figure{ position: absolute; display: block; z-index: 1; bottom: 0; left: 0; width: 100%; box-sizing: border-box; background: rgba(0,0,0,0); color: #FFF; padding: 5px; text-align: center; opacity: 0; font-size: 0.9em;
	transition: 500ms ease-in-out;
}
.pho_list a img{ position: absolute; display: block !important; top: 50%; left: 50%; width: 0%; height: 0%;
	transition: 500ms ease-in-out;
}
.pho_list a::before{ display: block; content: ''; background: #333; opacity: 0; z-index: 1; width: 100%; padding: 0 0 100% 0;
	transition: 500ms ease-in-out;
}
.pho_list a::after{ display: block; position: absolute; color:#FFF; opacity: 0; z-index: 2; top: 50%; left:50%; margin: -16px 0 0 -16px ; width: 32px; height: 32px; line-height: 32px; text-align: center; font-size: 1.2em;
	font-family: "FontAwesome"; font-weight: 900; content: "\f00e";
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
	transition: 500ms ease-in-out;	
	text-shadow: 0 0 0 10px rgba(0,0,0,0.2);
}
.pho_list.book a{ border-bottom: solid 5px #666; box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);}
.pho_list.book a::after{ display: block; position: absolute; color:#FFF; opacity: 0; z-index: 2; top: 50%; left:50%; margin: -16px 0 0 -16px ; width: 32px; height: 32px; line-height: 32px; text-align: center; font-size: 1.2em;
	font-family: "FontAwesome"; font-weight: 900; content: "\f02d";
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
	transition: 500ms ease-in-out;	
	text-shadow: 0 0 0 10px rgba(0,0,0,0.2);
}
.pho_list.book a::before{padding: 0 0 120% 0;}
.pho_list a:hover figure{ background: rgba(0,0,0,0.6); opacity: 1;}
.pho_list a:hover::before{ opacity: 0.4;}
.pho_list a:hover::after{ opacity:1;}

@media only screen and (max-width: 640px) {
	.pho_list a{ width: calc(100%/2 - 20px); }
}

.share_bar{ position: relative; padding: 20px 0; text-align: left; border-top: solid 1px #CCC;}
.share_bar h5{ font-size: 15px; color: #666; margin: 0 0 4px 0;}
.share_bar a{ display: inline-block; color: #FFF; background: #666; text-align: center; margin: 2px; width: 32px; line-height: 32px; border-radius: 16px;}
.share_bar a i{ font-size: 1.25em; vertical-align: text-top; margin: -1px 0 0 0;}
.share_bar a.fb{ background: #3B5998;}
.share_bar a.tw{ background: #1EA2F2;}
.share_bar a.ld{ background: #0B66C2;}
.share_bar a.line{ background: #00B901;}
.share_bar a.line img{ width: 22px; vertical-align: text-top; margin: -1px 0 0 0;}
.share_bar a:hover{ background: #1E66DB; color: #FFF;}

blockquote{ background: #FFF; padding: 20px; border-left: 4px solid #F1B818;}
blockquote.s1{ box-sizing: border-box; background: #FFF; color:#333; border-radius: 20px; margin: 20px auto 60px; padding: 20px 40px; quotes:"\201C""\201D""\2018""\2019"; border: none; }
blockquote.s1:before, blockquote.s1:after{ font-size:3em; color:#F1B818; line-height:.01em; vertical-align:-0.5em;}
blockquote.s1:before{ content:open-quote; top: 20px; float: left; position: relative; margin-left:-0.5em;}
blockquote.s1:after{ float: right; position: relative; content:close-quote; margin-right:-0.5em;}
blockquote.s1 ol{margin:.2em;padding:0}
blockquote.s1 li{margin:.2em;padding:0}

/*===POPUP===*/
/*---pop_box---*/
.pop_box{ position:fixed; top:-100%; left:0; width:100%; height:100%; overflow:auto; -webkit-overflow-scrolling: touch; z-index:1000; opacity:0;
	transition: 800ms cubic-bezier(0.680, -0.550, 0.265, 1.550);
}
.pop_box.on{ top:0; opacity:1;}
.pop_box .mask{  position: fixed; top:0%; left:0; width:100%; height:0%; z-index:1; background:rgba(0,0,0,.7); background-size: cover; opacity:0;
	transition: 800ms ease;
}
.pop_box.on .mask, .pop_box.ad .mask{ height:100%; opacity:0.95; }
.pop_box .txt{ position: relative; max-width:600px; background:#FFF; margin:44px auto; padding: 40px; z-index:10; box-sizing: border-box; box-shadow: 0 0 10px rgba(0,0,0,0.2); border-top: solid 4px #F1B818;}
.pop_box .txt.xl{ max-width: 1200px;}
.pop_box .txt.sm{ max-width: 350px; padding: 40px 0; background: transparent; box-shadow: none; border: none;}

.pop_box .close_btn{ position: relative; width:24px; text-align:center; z-index:10; opacity:0.5; margin: 20px auto; cursor: pointer;}
.pop_box .close_btn.in{ position: absolute; top: 10px; right: 10px; margin: 0;}
.pop_box .close_btn.fixed{ position: fixed; top: -44px; right: -44px; margin: 0; padding: 10px; width: 44px; height: 44px; background: rgba(0, 0, 0, 0.5);}
.pop_box.on .close_btn.fixed{ top: 5px; right: 5px; opacity: 0.9;}
.pop_box .close_btn img{ display: block; max-width:100%;}
.pop_box .close_btn:hover{ opacity:1;}
.pop_box .checkbox-inline a{ color: #D93E3E;}

.pop_box .view{ position: relative; display: flex; flex-wrap: wrap;}
.pop_box .view .cover{ flex: 0 0 50%; }
.pop_box .view .cover::before{ display: block; position: relative; content: ''; padding-bottom: 100%;}
.pop_box .view .info{ position: relative; padding: 20px; flex: 0 0 50%;}
.pop_box .view .info .name{ line-height: 1.2em; color: #333; font-weight: 700;}
.pop_box .view .info .price{  color: #F1B818; font-weight: 700; line-height: 1em; margin-bottom: 20px;}

.pop_box .view .edit{ flex: 0 0 100%; }

.pop_box .view .menu{ text-align: center; font-weight: 700; display: flex; flex-wrap: nowrap; justify-content: space-around; color: #F1B818;}
.pop_box .view .menu>div{ line-height: 40px; padding: 0 5px; cursor: pointer;}
.pop_box .view .calendar{ position: relative;}
.pop_box .view .calendar .week{ position: relative; display: flex; flex-wrap: wrap;}
.pop_box .view .calendar .week>div{ flex: 0 0 calc(100% / 7 - 4px); text-align: center; height: 48px; margin: 2px; font: 15px/48px 'Roboto', sans-serif; border-radius: 5px;}
.pop_box .view .calendar .week.day>div{ background: rgba(255,255,255,0.3); cursor: pointer; box-sizing: border-box;}
.pop_box .view .calendar .week.day>div:hover{ border: solid 2px #ffba79; line-height: 44px; }
.pop_box .view .calendar .week.day>div.sel{ border: solid 2px #F1B818; line-height: 44px; }
.pop_box .view .calendar .week.day>div.ade{ background: #b4e7b3;}
.pop_box .view .calendar .week.day>div.has{ background: #fce189;}
.pop_box .view .calendar .week.day>div.full{ background: #e26862;}
.pop_box .view .calendar .week.day>div.old{ background: #CCC;}
.pop_box .view .calendar .week.day>div.now{ background: rgba(255, 214, 79, 0.6); border: solid 2px #e4b415; line-height: 44px; }

.pop_box .tip{ display: flex; justify-content: center;}
.pop_box .tip>div{ font-size: 15px; padding: 4px 8px; margin: 2px; border-radius: 5px;}
.pop_box .tip>div.ade{ background: #b4e7b3;}
.pop_box .tip>div.has{ background: #fce189;}
.pop_box .tip>div.full{ background: #e26862;}
.pop_box .tip>div.old{ background: #CCC;}

@media only screen and (max-width: 900px) {
	.pop_box .view .cover{ flex: 0 0 300px; height: 300px;}
	.pop_box .view .info{ flex: 0 0 calc(100% - 300px);}
}
@media only screen and (max-width: 640px) {
	.pop_box .view .cover{ flex: 0 0 100%; height: auto;}
	.pop_box .view .info{ flex: 0 0 100%; padding: 20px 0;}
}
/*------*/

/*--care_box---*/
.care_box{ position: relative; padding: 40px 0;}
.care_box .list{ position: relative; }
.care_box .list ul{ position: relative; display: flex; flex-wrap: wrap; list-style: none; margin: 0;}
.care_box .list ul li{ position: relative; flex: 0 0 50%; display: block; border-bottom: solid 1px #CCC;}
.care_box .list li a { position: relative; display: block; overflow: auto; background: rgba(255,255,255,0.6); margin: 10px; padding: 20px; border-radius: 10px;
	transition: 200ms ease;
}

.care_box .list li a .txt{ position: relative; box-sizing: border-box;  margin:0; text-align: left; padding:10px;
	transition: 200ms ease;
}
.care_box .list li a .txt .date{ font-size: 14px; color: #666;
	word-break:keep-all; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.care_box .list li a .txt .date .catalog{ display: inline-block; font-size: 16px; color: #e26862; margin-right: 10px;}
.care_box .list li a .txt .title{ font-size: 24px; color: #333; margin: 0 0 5px 0; letter-spacing: 1px;font-family: 'Noto Serif TC', serif; }
.care_box .list li a .txt .con{ font-size: 15px; line-height: 24px; margin: 0 0 5px 0; max-height: 48px; color: #666; overflow: hidden;}

.care_box .list li a:hover{ box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); background: rgba(255,255,255,1);}
.care_box .list li a:hover .title{ color: #e26862;}


@media only screen and (max-width: 900px) {
	.care_box .list ul li{  flex: 0 0 100%;}


}
@media only screen and (max-width: 640px) {
	
	

}
/*------*/

.price_list{ position: relative; display: flex; margin: 20px 0 0 0; flex-wrap: wrap;}
.price_list>.item{ flex: 0 0 auto; padding: 5px 10px; margin: 0 5px 5px 0; border: solid 1px #CCC; font-size: 18px;}
.price_list>.item span{ color: #D93E3E; font-weight: 700;}

/*alert_box*/
.alert_box{ position:fixed; top:-100%; left:0; width:100%; height:100%; overflow:auto; -webkit-overflow-scrolling: touch; opacity:0; z-index: 1000;
	transition: 500ms ease;
}
.alert_box.on{ top:0; opacity:1; }
.alert_box .txt{ position: absolute; width: 360px ; padding:10px 20px; z-index:10; box-sizing: border-box; color: #FFF; background: #F1B818;
	top: 110px; left: 50%; margin: 0 0 0 -180px; text-align: center; border-radius: 10px;
}
.alert_box .fa{ font-size: 18px;}

.input_box, .input_box2, .input_box3{ display: none; margin-bottom: 20px;}


/*RWD*/
.desk-show { display: block !important;}
.mobile-show { display: none !important; }
.peload{ opacity:0; transition: opacity 700ms ease-in-out;}
.peload.ed{ opacity:1;}
.pehide.ed{ display:none;}
.phone_btn{ display: none;}
.mobile_menu{ display: none;}

@media only screen and (max-width: 900px) {
	.desk-show { display: none!important; }
	.mobile-show { display: block!important; }
	a:focus { outline: none; }

	.txt-width { padding: 0;}
	.mem_menu{ z-index: 0;}
	blockquote.s1 { margin: 10px auto 20px; }


	#main_block.left{ width: calc(100%);}
	#right_block{ display: none;}

	/*MENU*/
	.menu_btn{ position: absolute; top:0; right:0; display:block; width:50px; height:60px; z-index:3000; cursor: pointer;} 
	.menu_btn>div{ position:absolute; width:24px; height:2px; background: #F1B818; left:12px; transition: 0.2s ease-in; }
	.menu_btn.on>div{ background: #CCC;}
	.menu_btn .m1{ top:20px;}
	.menu_btn .m2{ top:28px;}
	.menu_btn .m3{ top:36px;}
	.menu_btn:hover .m1,.menu_btn:hover .m2,.menu_btn:hover .m3{ width:24px;}
	.menu_btn.on .m1{  top:29px; width: 24px; transform: rotateZ(45deg) }
	.menu_btn.on .m2{ opacity: 0; width:0; left:50%;}
	.menu_btn.on .m3{  top:29px; width: 24px; transform: rotateZ(-45deg); }

	.top_menu{ padding: 60px 10px 0; background: #FFF; position:fixed; top:0 !important; left: initial; right:-100% !important; width:200px;  z-index:100; height: 100%; box-sizing: border-box; letter-spacing: 0.1em; transition: 500ms ease-in;
		-webkit-backdrop-filter: blur(20px) saturate(150%);
		backdrop-filter: blur(20px) saturate(150%);
	}
	.top_menu ul{ list-style:none; margin:0; padding:0; width:100%; display:block; box-sizing: border-box; transition: 500ms ease-in;}
	.top_menu ul>li{ display: block; border-left:none; float: none; margin: 0;}
	.top_menu>ul>li { display: block; float: none; border-top: solid 1px #f2f2f2;}
	.top_menu>ul>li:first-child{ border: none;}
	.top_menu>ul>li>a{ margin: 5px 0; padding:10px; line-height: 1.2em; }
	.top_menu>ul>li>a:hover::before, .top_menu>ul>li.on>a::before, .top_menu>ul>li.cur>a::before { bottom: 0; }
	.top_menu>ul>li.submenuhead.on { height: auto; }
	.top_menu .submenu{ position: relative; top: 0; left: inherit; right: inherit; width:auto; overflow: auto; border-radius: 10px;}
	.top_menu .submenu ul { border-bottom: none; }
	.top_menu .submenu li a{ text-align: center;}
		.top_menu .submenu .extend{ padding: 20px 0;}
		.top_menu .submenu .extend .pic{ width: 100%; height: 0; padding-bottom: 75%; float: none; margin: 0;}
		.top_menu .submenu .extend .txt{ width: auto; float: none; padding: 10px 0;}
		.top_menu .submenu .extend .txt h3{word-break:keep-all; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
		.top_menu .submenu .extend .txt p{ font-size: 14px;}

	.top_menu.on{ right:0 !important; }
	.top_menu_mask{ display:block; position:fixed; top:0; left:100%;; width:100%; height:100%; z-index:0; opacity:0; background: rgba(0,0,0,0.8); transition: opacity 500ms ease-in; }
	.top_menu_mask.on{ left:0; opacity:1; z-index: 2;}

	#header { height: 60px;}
	#header .top_menu{ top: 10px; margin: 0;}
	#header.ed{ height: 60px;}
}
