@charset "utf-8";
/* CSS Document */
@import url(font.css);
@import url(jquery.jscrollpane.css);
@import url(combo.select.css);

/* CSS Reset */
html, body, div, span, applet, object, iframe, form,
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, 
em, img, q, strong, sub, sup,
dl, dt, dd, ol, ul, li { margin:0; padding:0; }
img { border:none; vertical-align:top; }
ul, ol { list-style:none; }
body { /*line-height:1;*/ -webkit-text-size-adjust:none; }
table { border-collapse:collapse; }
p { line-height:1.75em; padding:3px 0; }

select { padding:0; }
select, input { vertical-align:middle; }
input[type="button"], input[type="submit"], input[type="reset"] { padding:1px 4px; *padding:0 4px; *overflow:visible; }/* Remove IE7 Extra Width & Padding */
input[type="text"], textarea { padding:2px; }
input[type="checkbox"], input[type="radio"] { margin:0 3px; padding:0; }
input[type="button"], input[type="submit"], input[type="reset"], select { cursor:pointer; *cursor:hand; }
input[type="text"]:disabled { background:#eee; }

/*ios樣式清除*/
input[type="button"], input[type="submit"], input[type="reset"], button {
	background-color:transparent; border:none; margin:0px; border-radius:0px;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,0) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-8 */
}

/* 字型設定 */
body, input, textarea, select { font-family: 'Gotham XNarrow','Microsoft JhengHei', '微軟正黑體', sans-serif; font-weight:300; letter-spacing:.05em; }
h1, h2, h3, h4, h5, h6 { font-family: 'Gotham XNarrow','Microsoft JhengHei', '微軟正黑體', sans-serif; line-height:180%; font-weight:500; }

/* 基本共用 */
#Wrap { background:#fff; height:100%; color:#333; }
a { color:#0954ca; }
a:hover { text-decoration:none; }
.inner { max-width:1280px; margin:0 auto; padding:0 10px; }
html.fixed { overflow:hidden; height:100%; width:100%; position:relative; }
body.fixed { overflow:hidden; }

:root {
	--main_color: #a51f37; 
	--bg_color: #0c0103; 
}

/* 404_page */
#Wrap.page_404 { height: 70vh; padding: 15vh 15px; }
#Wrap.page_404 #Center { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; text-align: center; }
#Wrap.page_404 .title { line-height: 1.5em; }
#Wrap.page_404 .imgBox { max-height: 100%; }
#Wrap.page_404 .imgBox img { max-width: 100%; max-height: 100%; }
#Wrap.page_404 .desc { font-size: 1.25em; font-weight: 500; padding-top: 15px; }
#Wrap.page_404 .desc a { color:#333; }

/*----------------------------------------------------------------------*/
/* Header */
#Header { background: #040000; z-index: 9990; }
.logo img { max-height: 100%; max-width: 100%; }
.logo a { display: block; padding:0 5px; }
#Copyright { font-size:0.875em; padding:30px 0 10px; letter-spacing:0.5px; }

/* menu_switch */
.menu_switch { position:absolute; z-index:101; font-size: 1rem; overflow: hidden; display:table; background-color:#040000; border-radius: 5px; }
.menu_switch > a { display:table-cell; vertical-align: middle; text-align: center; }
.menu_switch span.line { 
	display:block; width:28px; height:2px; margin:7px auto; background:#fff; 
	-webkit-transition: all 0.3s ease; 
	-moz-transition: all 0.3s ease; 
	transition: all 0.3s ease; 
	}
.menu_switch > a:hover span.line { margin:10px auto; }
.menu_switch a:before, .menu_switch a:after { content: ''; display:block; width:28px; height: 2px; margin: auto; background:#fff; }

/* Menu */
.header_popup_box {
	opacity:0; visibility:hidden; position:fixed; top:0; left:0; width: 100%; height:100vh;
	-webkit-transition:opacity 0.3s, visibility 0.3s; 
	transition:opacity 0.3s, visibility 0.3s; 
}
.header_popup_box.show { opacity:1; visibility:visible; z-index:9991; }
.header_popup_box a:hover { 
	-webkit-transition: all 0.3s ease; 
	-moz-transition: all 0.3s ease; 
	transition: all 0.3s ease; 
	}
.header_popup_box .overlay { background-color: rgba(0,0,0,.7); position:fixed; left: 0; top: 0; z-index: 0; width: 100vw; height: 100%; }
.header_popup_box .popup_body { position: relative; z-index: 5; box-sizing: border-box; background-color:#222; color: #fff; text-align: left; line-height:1.5em; }
.header_popup_box .popup_body a { text-decoration: none; color: #fff; }
.header_popup_box .close { background: #040000; position: absolute; z-index: 5; }
.header_popup_box .close a { 
	position: absolute; display:block; text-decoration:none; font-size: 0; width: 40px; height: 40px; opacity:0.6; z-index: 9990; 
	-webkit-transition: all 0.3s ease; 
	-moz-transition: all 0.3s ease; 
	transition: all 0.3s ease; 
	}
.header_popup_box .close a:hover { opacity:1; }
.header_popup_box .close a:before, .header_popup_box .close a:after { 
	display:block; content:''; position:absolute; top:0; left:50%; width:2px; height:100%; background-color:#fff; 
	}
.header_popup_box .close a:before { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }
.header_popup_box .close a:after { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }
#Menu { margin-bottom: 30px; font-family:'Gotham XNarrow'; font-weight: 300; }
#Menu a { display: block; }
#Menu li {  }
#Menu > ul > li { padding: 5px 0; }
#Menu > ul > li > a { font-size: 2rem; padding: 0 20px; font-weight: 500; line-height: 1.0625em; letter-spacing: .05em; cursor:pointer; }
#Menu > ul > li > a:hover, #Menu > ul > li > a.slideDown { color: #cc304a; }
#Menu ul li ul { display:none; padding: 15px 20px 10px; }
#Menu ul li ul li { padding: 0 0; border-left: 3px solid #fff; line-height: 1.375em; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
#Menu ul li ul li:hover/*, #Menu > ul > li > a.slideDown + ul li*/ { border-color: #cc304a; }
#Menu ul li ul li:hover a { color: #cc304a; }
#Menu ul li ul li a { font-size: 1.25em; letter-spacing: .05em; padding: 5px 10px; }

.header_popup_box dl + dl { margin-top:20px; }
.header_popup_box dt { border-bottom: 1px solid #555; padding: 8px 20px; font-size: 1.125em; }
.header_popup_box dd { display: inline-block; margin: 8px 0 8px 20px; font-size: 1.25em; vertical-align:top; }
.header_popup_box dd a:hover { color: #cc304a; }

.header_popup_box .lang .title { border-bottom: 1px solid #555; padding: 8px 20px; margin-bottom:5px; font-size: 1.125em; }
.header_popup_box .lang .current, .header_popup_box .lang .change { display: inline-block; margin: 8px 0 8px 20px; font-size: 1.125em; }
.header_popup_box .lang .current:before { content:"\f0ac"; font-family:'Font Awesome 5 Regular'; font-size:1.25em; margin-right:5px; }
.header_popup_box .lang a:hover { color:#cc304a; }

/* 社群 */
.header_popup_box .social_list a { 
	display:flex; align-items:center; justify-content:center; color:#fff; text-decoration:none; height:35px; line-height:35px; width:35px; font-size:0; text-align:center; margin-bottom:6px; border-radius:5px; 
	}
.header_popup_box .social_list a:before { 
	display:block; font-family:'Font Awesome 5 Brands'; font-size:1.375rem; -webkit-transition:all 0.3s ease; -moz-transition:all 0.3s ease; transition:all 0.3s ease; 
	}
.header_popup_box .social_list a.fb:before { content: "\f39e"; }
.header_popup_box .social_list a.youtube:before { content: "\f167"; }
.header_popup_box .social_list a.twitter:before { display:inline-block; width:25px; height:25px; content:''; background:url(../images/x-twitter-white.svg) no-repeat center center; background-size:contain; }
.header_popup_box .social_list a.ig:before { content: "\f16d"; }
.header_popup_box .social_list a.fb:hover:before { color: #3c76b9; }
.header_popup_box .social_list a.youtube:hover:before { color: #e62b2b; }
.header_popup_box .social_list a.twitter:hover:before { background-image:url(../images/x-twitter-blue.svg); }
.header_popup_box .social_list a.ig:hover:before { color: #ef51b8; }

/* 卷軸區域 */
#MenuScrollBar { clear:both; box-sizing:border-box; overflow-x:auto; _overflow:auto; }
	/*添加IOS下卷軸*/
	#MenuScrollBar::-webkit-scrollbar { -webkit-appearance:none; width:14px; height:14px; }
	#MenuScrollBar::-webkit-scrollbar-thumb { border-radius:8px; border:3px solid #222222; background-color:#989898; }
	#MenuScrollBar::-webkit-scrollbar-thumb:hover { background-color:#a41f35; }

/* Footer */
#Footer .toolBox ul { display: flex; flex-wrap: wrap; justify-content: center; padding-top: 40px; }
#Footer .toolBox li { padding: 0 1em; margin: 5px 0; }
#Footer .toolBox li:not(:first-child) { border-left: 1px solid #595959; }
#Footer .toolBox a { font-size: 1.125em; font-weight: 400; color: #595959; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; text-decoration: none; }
#Footer .toolBox a:hover { text-decoration: underline; color: #f77300; }

/*----------------------------------------------------------------------*/
/* bxSlider_list共通設定 */
.bxSlider_list img { max-width: 100%; }
.bx-wrapper { position: relative; padding: 0; *zoom: 1; -ms-touch-action: pan-y; touch-action: pan-y; }
.bx-wrapper img { max-width: 100%; display: block; }
.bxslider { margin: 0; padding: 0; -webkit-perspective: 1000; }
ul.bxslider { list-style: none; }
.bx-viewport { -webkit-transform: translatez(0); }
/* bx-THEME */
.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto { position: absolute; bottom: 20px; width: 100%; }
/* bx-LOADER */
.bx-wrapper .bx-loading { min-height: 50px; background: url('../images/loader.gif') center center no-repeat #ffffff; height: 100%; width: 100%; position: absolute; top: 0; left: 0; z-index: 200; }
/* bx-PAGER */
.bx-wrapper .bx-pager { text-align: center; font-size: .85em; font-family: Arial; font-weight: bold; color: #666; }
.bx-wrapper .bx-pager.bx-default-pager a { background: #fff; opacity: .6; text-indent: -9999px; display: block; width: 12px; height: 12px; margin: 0 5px; outline: 0; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
.bx-wrapper .bx-pager.bx-default-pager a:hover { opacity: 1; }
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #a41f35; opacity: 1;
}
.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block; vertical-align: bottom; *zoom: 1; *display: inline;
}
.bx-wrapper .bx-pager-item { font-size: 0; line-height: 0; }
/* bx-DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev { left: 10px; opacity: .5; }
.bx-wrapper .bx-prev:hover, .bx-wrapper .bx-prev:focus { opacity: 1; }
.bx-wrapper .bx-next { right: 10px; opacity: .5; }
.bx-wrapper .bx-next:hover, .bx-wrapper .bx-next:focus { opacity: 1; }
.bx-wrapper .bx-controls-direction a {
    position: absolute; top: 50%; margin-top: -16px; outline: 0; width: 32px; height: 32px; text-indent: -9999px; z-index: 3333;
    -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease;
}
.bx-wrapper .bx-controls-direction a.disabled { display: none; }

.bx-wrapper .bx-prev:after, .bx-wrapper .bx-next:after { content:''; position:absolute; top:50%; margin-top:-10px; width:18px; height:18px; border-top:2px solid #fff; border-left:2px solid #fff; }
.bx-wrapper .bx-prev:after { left:16px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }
.bx-wrapper .bx-next:after { right:16px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); transform: rotate(135deg); }


/*----------------------------------------------------------------------*/
/* Btn Top */
.BtnTop { 
	text-align:center; z-index:9994; position:fixed; bottom:5px; right:5px;
	width:40px; height:40px; display:none; 
	}
#Wrap.MenuFix .BtnTop { display:block; }
.BtnTop a { display:block; width:40px; height:40px; background-color:#333; border-radius: 5px; text-indent:-10000px; position:relative; z-index:9989; }
.BtnTop a::after {
	content:''; position:absolute; top:17px; left:14px; width:10px; height:10px; border-top:2px solid #fff; border-left:2px solid #fff;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
	}
.BtnTop a:hover { background-color:#a41f35; }


/*----------------------------------------------------------------------*/
/* Compare popup box */
.ComparePopupBox { 
	position:fixed; right:-160px; z-index:9989; font-family:'Gotham XNarrow', sans-serif; color:#fff; 
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
	.ComparePopupBox.show { right:0; }
.ComparePopupBox .switch { 
	position:absolute; top:0; left:-30px; width:30px; height:70px; background-color:#a51f37;
	text-align:center; cursor:pointer; overflow:hidden; 
	}
.ComparePopupBox .switch span { 
	display:block; position:absolute; top:20px; left:-20px; width:70px; height:30px; line-height:30px;
	font-weight:500; font-size:14px; text-transform:uppercase; 
	transform-origin:center center;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    transform: rotate(-90deg);
	}
.ComparePopupBox .switch span::before, .ComparePopupBox .switch span::after { 
	content:''; display:block; position:absolute; top:3px; left:34px; width:1px; height:24px; background-color:#fff; opacity:0; 
	}
.ComparePopupBox .switch span::before { 
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
	}
.ComparePopupBox .switch span::after { 
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
	}
.ComparePopupBox.show .switch span { text-indent:-1000px; }
.ComparePopupBox.show .switch span::before, .ComparePopupBox.show .switch span::after { opacity:1; }
	
.ComparePopupBox .cont { background-color:#222222; width:160px; padding:10px; box-sizing:border-box; overflow-x:auto; _overflow:auto; }
	/*添加IOS下卷軸*/
	.ComparePopupBox .cont::-webkit-scrollbar { -webkit-appearance:none; width:12px; height:12px; }
	.ComparePopupBox .cont::-webkit-scrollbar-thumb { border-radius:6px; border:3px solid #222222; background-color:#989898; }
	.ComparePopupBox .cont::-webkit-scrollbar-thumb:hover { background-color:#a41f35; }
.ComparePopupBox .cont .item + .item { margin-top:15px; }
.ComparePopupBox .cont dl { overflow:hidden; }
.ComparePopupBox .cont dt { border-bottom:1px solid #555555; margin-bottom:5px; font-weight:500; font-size:18px; line-height:200%; text-align:center; }
.ComparePopupBox .cont dd { padding-top:8px; padding-bottom:8px; line-height:16px; position:relative; overflow:hidden; box-sizing:border-box; }
.ComparePopupBox .cont dd .del { position:absolute; left:0; text-indent:-999px; cursor:pointer; }
.ComparePopupBox .cont dd .del::before, .ComparePopupBox .cont dd .del::after { 
	content:''; display:block; position:absolute; left:7px; width:2px; height:10px; background-color:#222222; z-index:2; 
	}
.ComparePopupBox .cont dd .del::before { 
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
	}
.ComparePopupBox .cont dd .del::after { 
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
	}
.ComparePopupBox .cont dd .del span { 
	display:block; position:absolute; left:0; width:16px; height:16px; background-color:#fff; z-index:1; 
	-webkit-border-radius:50%;
	-moz-border-radius:50%; 
	border-radius:50%; 
	}
.ComparePopupBox .cont dd .del span, .ComparePopupBox .cont dd .del::before, .ComparePopupBox .cont dd .del::after {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
.ComparePopupBox .cont dd .del:hover span { background-color:#a51f37; }
.ComparePopupBox .cont dd .del:hover::before, .ComparePopupBox .cont dd .del:hover::after { background-color:#fff; }
.ComparePopupBox .btn { margin-top:2px; }
.ComparePopupBox .item + .btn { margin-top:20px; }
.ComparePopupBox .btn a { 
	display:block; width:100%;; background-color:#444444; line-height:30px; color:#fff; text-decoration:none; text-align:center; 
	-webkit-border-radius:15px;
	-moz-border-radius:15px; 
	border-radius:15px; 
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
.ComparePopupBox .note { margin-top:10px; font-size:0.875rem; text-align:center; }

/*使用jScrollPane*/
.ComparePopupBox .cont.jspScrollable { padding:0; }
.ComparePopupBox .cont.jspScrollable .jspPane > div { padding-left:10px; padding-right:10px; }
.ComparePopupBox .cont.jspScrollable .jspPane > div:first-child { padding-top:10px; }
.ComparePopupBox .cont.jspScrollable .jspPane > div:last-child { padding-bottom:10px; }


/*----------------------------------------------------------------------*/
/* popup box */
.popup_box { 
	display:none; position:fixed; top:0; left:0; width:100%; height:100vh; background-color:rgba(0,0,0,0.75); box-sizing:border-box; z-index:10006; 
	}
	.popup_box.show { display:block; }
.popup_box .box_wrap { 
	background-color:#fff; position:relative; box-sizing:border-box; 
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.2);
	-moz-box-shadow: 0 0 10px rgba(0,0,0,0.2);
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	}
.popup_box .box_wrap > div { overflow-y:auto; overflow-x:hidden; height:100%; box-sizing:border-box; position:relative; }
	/*添加卷軸*/
	.popup_box .box_wrap > div::-webkit-scrollbar { -webkit-appearance:none; width:12px; height:12px; }
	.popup_box .box_wrap > div::-webkit-scrollbar-thumb { border-radius:6px; border:3px solid #fff; background-color:#989898; }
	.popup_box .box_wrap > div::-webkit-scrollbar-thumb:hover { background-color:#a41f35; }

.popup_box .close { 
	position:absolute; top:0; right:0; width:32px; height:32px; text-indent:-10000px; cursor:pointer; z-index:10000;
	}
.popup_box .close::before, .popup_box .close::after { 
	display:block; content:''; position:absolute; top:50%; left:50%; width:2px; height:16px; margin:-8px 0 0 -1px; background-color:#000; 
	}
.popup_box .close::before {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
	}
.popup_box .close::after {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
	}
.popup_box .close:hover::before, .popup_box .close:hover::after { background-color:#a41e36; }


/*----------------------------------------------------------------------*/
/* select_location popup box */
.select_location .box_wrap { position:absolute; top:50%; left:50%; box-sizing:border-box; }
.select_location .btn_global { 
	display:block; background-color:#333333; text-align:center; color:#fff; font-size:24px; font-weight:500; line-height:50px; text-decoration:none; 
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
	.select_location .btn_global:hover, .select_location .btn_global:focus { background-color:#a41e36; }
.select_location .divide { position:relative; margin:25px 0 10px; text-align:center; line-height:30px; text-align:center; }
.select_location .divide span { display:inline-block; background-color:#fff; padding:0 20px; position:relative; z-index:1; color:#686868; }
.select_location .divide::after { content:''; position:absolute; top:15px; right:0; border-top:1px solid #d8d8d8; width:100%; }
.select_location .form .title { text-align:center; font-size:32px; font-weight:500; }
.select_location .form select { 
	background-color:#333333; border:0; width:100%; max-width:100%; height:50px; padding-left:5px; margin-top:10px; box-sizing:border-box; 
	font-family:'Gotham XNarrow', sans-serif; color:#fff; font-size:18px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px; 
	border-radius:4px; 
	}
.select_location .form .submit { 
	display:block; margin-top:10px; background-color:#333333; width:100%; 
	text-align:center; color:#fff; font-size:24px; font-weight:500; line-height:50px; text-decoration:none; 
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
	.select_location .form .submit:hover, .select_location .form .submit:focus { background-color:#a41e36; }
.select_location .note { margin-top:20px; font-size:13px; color:#838383; line-height:125%; }


/*----------------------------------------------------------------------*/
/* 表單 */
/* 表單群組 */
/* 注意 ------
fieldset內，表單元件max-width:100%會失效(但IE沒事),加上如下兩個fix(尚未經測試),但須確保fieldset沒有左右margin
又或者,不要用fieldset,改用div
*/
/*IOS webkit fix*/
fieldset.FormGroup, fieldset.FromSubGroup { 
	width:auto;
	min-width:0;
	max-width:none;
	}
/*Mozilla fix*/
@-moz-document url-prefix() { fieldset.FormGroup, fieldset.FromSubGroup { display:table-cell; }}

.FormGroup, .FromSubGroup { 
	max-width:100%; position:relative; 
	margin-left:0; margin-right:0; /*消除fieldset的左右margin*/
	}
.FormGroup::after, .FromSubGroup::after { content:''; display:block; clear:both; }
legend.form_group_title, legend.form_subgroup_title { padding-left:0; padding-right:0; }/*消除legend的左右padding*/
.FormGroup, .form_group_title, FromSubGroup, .form_subgroup_title { box-sizing:border-box; }

.FormGroup { 
	border:1px solid #dddddd; background-color:#fff; padding:35px 60px 20px; margin-top:40px; margin-bottom:40px; position:relative; 
	}
.form_group_title { position:absolute; top:0; left:40px; display:block; margin-top:-16px; }
.form_group_title span { 
	background-color:#d42828; padding:0 30px; display:inline-block; 
	color:#fff; line-height:40px; font-size:1.125rem;
	}
.FormGroup > *:last-child { margin-bottom:0; }

.FromSubGroup { 
	border:1px solid #dddddd; background-color:#fff; padding:25px 20px 20px; margin-top:40px; margin-bottom:40px; position:relative; 
	}
	.FromSubGroup + .FromSubGroup { margin-top:20px; }
.form_subgroup_title { position:absolute; top:0; display:block; margin-top:-17px; }
.form_subgroup_title span { 
	background-color:#d42828; padding:0 20px; display:inline-block; 
	color:#fff; line-height:40px; 
	}
.FromSubGroup > *:last-child { margin-bottom:0; }

/* 表單表格 */
table.FormTable { width:100%; margin-bottom:20px; }
table.FormTable > tbody > tr > th, table.FormTable > tbody > tr > td { color:#333; }
table.FormTable > tbody > tr > th { font-weight:bold; line-height:26px; position:relative; }
table.FormTable > tbody > tr > th span { font-weight:bold; color:#a41f35; }
table.FormTable > tbody > tr > td { line-height:40px; }

/* 表單內按鈕 */
.FormElmt .inline_btn { display:inline-block; margin-right:6px; vertical-align:top; }
.FormElmt .inline_btn span { margin-right:6px; margin-bottom:6px; display:inline-block; }
.FormElmt .inline_btn span > * { 
	display:block; padding-left:15px; padding-right:15px; background-color:#b6ac9e; 
	color:#fff; height:40px; line-height:40px; box-sizing:border-box; 
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	}
	.FormElmt .inline_btn span > a { text-decoration:none; }
	.FormElmt .inline_btn span > input { margin:0; border:0; font-size:100%; }
.FormElmt .inline_btn span[class] > * { background-image:url("../images/icon_inline_btn.png"); background-repeat:no-repeat; padding-left:35px; }
	.FormElmt .inline_btn span.search > * { background-position:15px 0; }
	.FormElmt .inline_btn span.multiple_recipients > * { background-position:15px -40px; background-color:#b1956e; padding-left:40px; }
.FormElmt .inline_btn span > *:hover, .FormElmt .inline_btn span > *:focus { background-color:#c9161d; }
.FormElmt .inline_btn.block { display:block; margin-left:0; margin-right:0; }

/* 表單警告/提示 */
.FormElmt .form_alert { display:inline-block; margin-left:10px; margin-right:6px; vertical-align:top; }
.FormElmt .form_alert span { 
	display:inline-block; margin-right:6px; margin-bottom:6px; padding-left:15px; padding-right:15px; background-color:#c9161d; 
	color:#fff; line-height:40px; box-sizing:border-box; position:relative; 
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	}
.FormElmt .form_alert span::after { 
	display:block; content:''; top:15px; left:-8px; position:absolute; 
	border-top:5px solid transparent; border-bottom:5px solid transparent; border-right:8px solid #c9161d; 
	}

/* 表單元件 */
.FormElmt input[type="text"], .FormElmt input[type="password"], .FormElmt input[type="file"], 
.FormElmt input[type="number"], .FormElmt input[type="date"], .FormElmt input[type="month"],
.FormElmt input[type="week"], .FormElmt input[type="time"], .FormElmt input[type="datetime-local"],
.FormElmt input[type="email"], .FormElmt input[type="search"], .FormElmt input[type="tel"], .FormElmt input[type="url"],
.FormElmt input[type="color"], .FormElmt input[type="hidden"], .FormElmt input[type="range"] { 
	line-height:40px; height:40px; 
	}
.FormElmt input[type="text"], .FormElmt input[type="password"], .FormElmt input[type="file"], 
.FormElmt input[type="number"], .FormElmt input[type="date"], .FormElmt input[type="month"],
.FormElmt input[type="week"], .FormElmt input[type="time"], .FormElmt input[type="datetime-local"],
.FormElmt input[type="email"], .FormElmt input[type="search"], .FormElmt input[type="tel"], .FormElmt input[type="url"],
.FormElmt input[type="color"], .FormElmt input[type="hidden"], .FormElmt input[type="range"],
.FormElmt select, .FormElmt textarea { 
	margin-bottom:5px; margin-right:4px; vertical-align:top; font-size:100%; color:#555555;
	}
.FormElmt input[type="text"], .FormElmt input[type="password"], 
.FormElmt input[type="number"], .FormElmt input[type="date"], .FormElmt input[type="month"],
.FormElmt input[type="week"], .FormElmt input[type="time"], .FormElmt input[type="datetime-local"],
.FormElmt input[type="email"], .FormElmt input[type="search"], .FormElmt input[type="tel"], .FormElmt input[type="url"], 
.FormElmt input[type="color"], .FormElmt input[type="hidden"], .FormElmt input[type="range"],
.FormElmt select, .FormElmt textarea {
	background-color:#e9e9e9; border:0; box-sizing:border-box; 
	}

.FormElmt input[type="text"], .FormElmt input[type="password"], .FormElmt input[type="file"], 
.FormElmt input[type="number"], .FormElmt input[type="date"], .FormElmt input[type="month"],
.FormElmt input[type="week"], .FormElmt input[type="time"], .FormElmt input[type="datetime-local"],
.FormElmt input[type="email"], .FormElmt input[type="search"], .FormElmt input[type="tel"], .FormElmt input[type="url"],
.FormElmt input[type="color"], .FormElmt input[type="hidden"], .FormElmt input[type="range"],
.FormElmt textarea { 
	padding:0 4px; 
	}
.FormElmt select { padding:10px 5px 9px; height:40px; max-width:100%; }	
.FormElmt input[type="radio"] + label, .FormElmt input[type="checkbox"] + label { margin-right:4px; }

.FormElmt input[type="text"]:focus, .FormElmt input[type="password"]:focus, .FormElmt input[type="file"]:focus, 
.FormElmt input[type="number"]:focus, .FormElmt input[type="date"]:focus, .FormElmt input[type="month"]:focus,
.FormElmt input[type="week"]:focus, .FormElmt input[type="time"]:focus, .FormElmt input[type="datetime-local"]:focus,
.FormElmt input[type="email"]:focus, .FormElmt input[type="search"]:focus, .FormElmt input[type="tel"]:focus, .FormElmt input[type="url"]:focus,
.FormElmt input[type="color"]:focus, .FormElmt input[type="hidden"]:focus, .FormElmt input[type="range"]:focus,
.FormElmt textarea:focus, .FormElmt select:focus {
	outline:0;
	background-color:#333333; color:#fff;
	-webkit-box-shadow: 0 0 12px rgba(0,0,0,0.5);
	-moz-box-shadow: 0 0 12px rgba(0,0,0,0.5);
	box-shadow: 0 0 12px rgba(0,0,0,0.5);
	-webkit-transition: all ease-in-out .15s;
	-moz-transition: all ease-in-out .15s;
	transition: all ease-in-out .15s;
	}
.FormElmt input[disabled], .FormElmt textarea[disabled], .FormElmt select[disabled] { 
	background-color:#f9f9f9; color:#cacaca;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
	}
	.FormElmt select[disabled] { cursor:default; }
	.FormElmt input[type="file"][disabled] { border:0; background:none; }
	.FormElmt input[type="radio"][disabled] + label, .FormElmt input[type="checkbox"][disabled] + label { color:#b3b3b3; }
	
.FormElmt hr { margin:15px 0 5px; }
.FormElmt .w40 { width:100%; max-width:40px; }
.FormElmt .w60 { width:100%; max-width:60px; }
.FormElmt .w80 { width:100%; max-width:80px; }
.FormElmt .w100 { width:100%; max-width:100px; }
.FormElmt .w150 { width:100%; max-width:150px; }
.FormElmt .w200 { width:100%; max-width:200px; }
.FormElmt .w250 { width:100%; max-width:250px; }
.FormElmt .w300 { width:100%; max-width:300px; }
.FormElmt .w350 { width:100%; max-width:350px; }
.FormElmt .w400 { width:100%; max-width:400px; }
.FormElmt .fullwidth { width:100%; }
.FormElmt .date, .FormElmt .dev-calendar { width:100%; max-width:120px; }
.FormElmt .note { color:#a41f35; line-height:160%; }
.FormElmt .required { font-weight:bold; color:#a41f35; }

/* checkbox/radio群組 */
.FormElmt .input_group.inline { display:inline-block; margin-left:10px; }
.FormElmt .input_group > div { display:inline; margin-right:10px; line-height:40px; }
.FormElmt .input_group.item_block > div { display:block; margin-right:0; }
.FormElmt .input_group label { word-break:break-all; }
.FormElmt .input_group .fullwidth { margin-right:0; }

/* 驗證碼 */
.FormElmt .randomcode::after { content:''; display:block; clear:both; }
.FormElmt .randomcode > div { display:inline-block; margin-right:8px; vertical-align:middle; }
	.FormElmt .randomcode .input input[type="text"] { width:120px; }
	.FormElmt .randomcode .img img {  }
	.FormElmt .randomcode .btn > * { 
		display:inline-block; background:url("../images/icon_randomcode.png") no-repeat; border:0; margin:0 5px 5px 0; padding-left:20px; height:40px; 
		font-size:100%; line-height:40px; color:#555; text-decoration:underline;
		}
	.FormElmt .randomcode .btn > *:hover, .FormElmt .randomcode .btn > *:focus { text-decoration:none; }
	.FormElmt .randomcode .btn .refresh { background-position:0 0; }
	.FormElmt .randomcode .btn .play { background-position:0 -40px; }

/* 按鈕 */
.BtnCommon { margin-top:15px; margin-bottom:15px; clear:both; text-align:center; }
	.BtnCommon.tl { text-align:left; }
	.BtnCommon.tr { text-align:right; }
.BtnCommon span, .BtnCommon a, .BtnCommon input { display:block; }
	.BtnCommon.large a, .BtnCommon.large input { height:54px; line-height:54px; }
	.BtnCommon.mid a, .BtnCommon.mid input { height:40px; line-height:40px; }
	.BtnCommon.small a, .BtnCommon.small input { height:32px; line-height:32px; }

.BtnCommon div { display:inline-block; margin:5px 10px 5px 0; }
.BtnCommon div:last-child { margin-right:0; }
.BtnCommon span { 
	background-color:#000; position:relative; z-index:1; box-sizing:border-box; 
	-webkit-transition:all 0.3s ease;
	-moz-transition:all 0.3s ease;
	transition:all 0.3s ease;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	}
	/* 按鈕加icon */
	.BtnCommon div[class] span::before { 
		display:block; position:absolute; top:50%; width:20px; height:20px; margin-top:-10px; content:''; 
		background:url("../images/icon_btn_common.png") no-repeat;
		}
		.BtnCommon.large div[class] span::before { left:20px; }
		.BtnCommon.mid div[class] span::before { left:20px; }
		.BtnCommon.small div[class] span::before { left:15px; }
	/* 按鈕加漸層效果(可以不要) */
/*	.BtnCommon span::after { 
		display:block; position:absolute; top:0; left:0; width:100%; height:100%; content:''; 
		background: linear-gradient(to bottom, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0) 100%);
		}*/
.BtnCommon div:hover span { 
	background-color:#a41f35; 
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.4);
	-moz-box-shadow: 0 0 10px rgba(0,0,0,0.4);
	box-shadow: 0 0 10px rgba(0,0,0,0.4);
	}

.BtnCommon a, .BtnCommon input { 
	box-sizing:border-box; position:relative; z-index:2; 
	color:#fff; letter-spacing:1px; font-family:'Gotham XNarrow', sans-serif; 
	}
	.BtnCommon.large a, .BtnCommon.large input { padding-left:30px; padding-right:30px; font-size:1.375rem; }
	.BtnCommon.mid a, .BtnCommon.mid input { padding-left:20px; padding-right:20px; font-size:1.25rem; }
	.BtnCommon.small a, .BtnCommon.small input { padding-left:15px; padding-right:15px; font-size:1rem; }
	.BtnCommon.large div[class] a, .BtnCommon.large div[class] input { padding-left:50px; }
	.BtnCommon.mid div[class] a, .BtnCommon.mid div[class] input { padding-left:50px; }
	.BtnCommon.small div[class] a, .BtnCommon.small div[class] input { padding-left:45px; }

.BtnCommon span a { text-decoration:none; }

.BtnCommon span input { border:0; margin:0; padding-top:0; padding-bottom:0; background-color:transparent; }
	.BtnCommon div.submit span::before { background-position:0 0; }
	.BtnCommon div.reset span::before { background-position:0 -20px; }
	.BtnCommon div.search span::before { background-position:0 -40px; }

.BtnCommon a:focus, .BtnCommon input:focus { opacity:0.8; }


/*----------------------------------------------------------------------*/
/* datepicker共通設定 */
.ui-datepicker { 
	background-color:#fff; padding:15px 8px 7px 8px; margin-top:5px; position:relative; display:none;
	-webkit-box-shadow: 0 0 5px #b2b2b2;
	-moz-box-shadow: 0 0 5px #b2b2b2;
	box-shadow: 0 0 5px #b2b2b2;
	}
.ui-datepicker-prev, .ui-datepicker-next { 
	display:block; position:absolute; top:25px; width:12px; height:12px; background:url("../images/icon_datepicker.png") no-repeat; 
	text-indent:-10000px; cursor:pointer; 
	}
	.ui-datepicker-prev { left:12px; background-position:0 0; }
	.ui-datepicker-next { right:12px; background-position:0 -12px; }
	.ui-datepicker-prev:hover { background-position:-12px 0; }
	.ui-datepicker-next:hover { background-position:-12px -12px; }
.ui-datepicker-title { text-align:center; font-size:12px; font-weight:bold; line-height:30px; }
.ui-datepicker-title select { height:30px; padding:4px 0 5px; border:1px solid #ddd; }
.ui-datepicker-title select.ui-datepicker-year { margin-right:6px; }
.ui-datepicker-title select.ui-datepicker-month { margin-left:6px; }
.ui-datepicker-calendar { margin-top:5px; }
.ui-datepicker-calendar th, .ui-datepicker-calendar td { width:27px; padding:0; font-family:Arial, Helvetica, "微軟正黑體", sans-serif; text-align:center; }
.ui-datepicker-calendar th { font-size:14px; font-weight:bold; }
.ui-datepicker-calendar td { font-size:12px; }
	.ui-datepicker-calendar th span, .ui-datepicker-calendar td span, .ui-datepicker-calendar td a { display:block; padding:5px 0 5px; }
	.ui-datepicker-calendar td a { text-decoration:none; color:#333; }
	.ui-datepicker-unselectable { color:#cfcfcf; }
	.ui-datepicker-today { background-color:#e60012; }
		.ui-datepicker-calendar td.ui-datepicker-today a { color:#fff !important; }
		.ui-datepicker-unselectable.ui-datepicker-today { background-color:#f0f0f0; }
	.ui-datepicker-calendar td a.ui-state-default:hover { color:#e60012 }
	.ui-datepicker-current-day a { border:1px solid #21293c; }


/*----------------------------------------------------------------------*/
/*
    ColorBox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper { position:absolute; top:0; left:0; z-index:10001; overflow:hidden; }
#cboxOverlay { position:fixed; width:100%; height:100%; }
#cboxMiddleLeft, #cboxBottomLeft { clear:left; }
#cboxContent { position:relative;font-size:14px; text-align:center; }
#cboxLoadedContent { overflow:auto;padding:30px 5px 60px 5px; }
#cboxTitle { margin:0; }
#cboxLoadingOverlay, #cboxLoadingGraphic { position:absolute; top:0; left:0; width:100%; height:100%; }
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow { cursor:pointer; }
.cboxPhoto { float:left; margin:auto; border:0; display:block; max-width:none; }
.cboxIframe { width:100%; height:100%; display:block; border:0; }
#colorbox, #cboxContent, #cboxLoadedContent { box-sizing:content-box; }

#colorbox_thum { overflow:hidden; padding-top:10px; margin-top:0; margin-bottom:10px; }
#colorbox_thum a { 
	display:block; float:left; 
	text-align:center; vertical-align:middle; 
	-webkit-transition: transform 0.3s ease;
	-moz-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
	}
#colorbox_thum a:hover { 
	-webkit-transform: scale(1.02);
    -moz-transform: scale(1.02);
    transform: scale(1.02);
	}
#colorbox_thum a * { vertical-align:middle; }
#colorbox_thum a span { display:inline-block; height:100%; }
#colorbox_thum a img { max-width:100%; max-height:100%; }

/*#colorbox_thum { overflow:hidden; padding-top:10px; margin-top:0; margin-bottom:30px; }
#colorbox_thum a { 
	display:block; float:left; padding-bottom:50%;
	text-align:center; vertical-align:middle; 
	background-size:cover; background-position:center center; background-repeat:no-repeat;
	-webkit-transition: transform 0.3s ease, box-shadow 0.3s ease;
	-moz-transition: transform 0.3s ease, box-shadow 0.3s ease;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	}
#colorbox_thum a:hover { 
	-webkit-box-shadow: 0 0 8px rgba(0,0,0,0.3);
	-moz-box-shadow: 0 0 8px rgba(0,0,0,0.3);
	box-shadow: 0 0 8px rgba(0,0,0,0.3);
	-webkit-transform: scale(1.02);
    -moz-transform: scale(1.02);
    transform: scale(1.02);
	}
#colorbox_thum a span { display:none; }
#colorbox_thum a img { width:100%; box-sizing:border-box; }*/

/*#colorbox_thum { overflow:hidden; padding-top:10px; margin:-2px 0 0; border-top:2px solid #e0e0e0; }
#colorbox_thum a { 
	display:block; float:left; 
	text-align:center; vertical-align:middle; 
	border:1px solid #e7e7e7; padding:5px;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	}
#colorbox_thum a:hover { border:1px solid #f77300; }
#colorbox_thum a *{ vertical-align:middle; }
#colorbox_thum a span { display:inline-block; height:100%; }
#colorbox_thum a img { max-width:100%; max-height:100%; }*/

/* 
    User Style:
    Change the following styles to modify the appearance of ColorBox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay { background:#000; }
#colorbox {}
    #cboxContent { margin-top:20px; }
        .cboxIframe { background:#fff; }
        #cboxError { padding:50px; border:1px solid #ccc; }
        #cboxLoadedContent { border:5px solid #000; background:#000; }
        #cboxTitle { position:absolute; bottom:10px; *bottom:20px; left:0; width:100%; padding:0 10px; box-sizing:border-box; color:#fff; line-height:18px; }
        #cboxCurrent { position:absolute; top:-20px; right:0px; color:#ccc; }
        #cboxSlideshow { position:absolute; top:-20px; right:90px; color:#fff; }
        #cboxPrevious { 
			position:absolute; top:50%; left:5px; margin-top:-32px; background:url("../images/colorbox_controls.png") no-repeat top left; 
			width:28px; height:65px; text-indent:-9999px;
			}
        #cboxPrevious:hover { background-position:bottom left; }
        #cboxNext { 
			position:absolute; top:50%; right:5px; margin-top:-32px; background:url("../images/colorbox_controls.png") no-repeat top right; 
			width:28px; height:65px; text-indent:-9999px;
			}
        #cboxNext:hover { background-position:bottom right; }
        #cboxLoadingOverlay { background:#000; }
        #cboxLoadingGraphic { background:url("../images/colorbox_loading.gif") no-repeat center center; }
        #cboxClose { 
			position:absolute; top:5px; right:5px; display:block; background:url("../images/colorbox_controls.png") no-repeat top center; 
			width:38px; height:19px; text-indent:-9999px;
			}
        #cboxClose:hover {background-position:bottom center; }
		
		
/*----------------------------------------------------------------------*/
/*測試用menu*/
.ifun_text_menu { position:fixed; top:0; left:0; z-index:10006; font-family:"微軟正黑體"; font-weight:normal; }
.ifun_text_menu a { display:block; text-decoration:none; }
.ifun_text_menu > ul > li > a { text-indent:-10000px; width:30px; height:30px; }
.ifun_text_menu > ul ul { display:none; position:absolute; top:30px; left:0; width:150px; }
.ifun_text_menu > ul > li:hover > ul { display:block; } 
.ifun_text_menu > ul ul li { background-color:rgba(255,255,255,0.75); }
.ifun_text_menu > ul ul a { padding:5px 10px; line-height:180%; font-size:14px; color:#333; }