@charset "utf-8";
@import "fonts.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, figure,
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.625em; 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; }
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; }
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%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 );
}
select { border-radius:0px; }

:root {
	--main_color: #A8B400; 
	--bg_color: #0c0103; 
}

/*字型設定*/
body, input, textarea, select, button { font-family: 'Gotham Condensed', 'sans-serif'; font-weight:300; letter-spacing: .02em; }

/* 基本設定 */
#Wrap { position: relative; background:#0c0103; color: #fff; }
a { color:var(--main_color); text-decoration: none; }
a:hover { color: #fff; }
.inner { max-width:1280px; margin:0 auto; padding-left: 30px; padding-right: 30px; }
ul.ul_list_style { padding-left: 2em; list-style-type: disc; }
html.fixed { overflow:hidden; height:100%; width:100%; position:relative; }
body.fixed { overflow:hidden; }
.wow { visibility: hidden; }
/* @media (prefers-reduced-motion: no-preference) {
	:root {
	  scroll-behavior: smooth;
	}
} */

/* 捲軸設定 */
::-webkit-scrollbar { background: #999; width: 12px; height: 12px; }
ul::-webkit-scrollbar, div::-webkit-scrollbar { border-radius: 10px; }
::-webkit-scrollbar-thumb { background: #76777a; border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: var(--main_color); }

/* 共用按鈕樣式 */
.common_btn { text-align: center; }
.common_btn a { display: inline-block; color: #fff; font-family: 'Gotham XNarrow'; font-weight: 500; text-decoration: none; border: 2px solid #8c734b; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
.common_btn a:hover { background: #8c734b; }

/* 404_page */
#Wrap.page_404 { background: #000; height: 70vh; padding: 15vh 0; }
#Wrap.page_404 #Center { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; }
#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-family: 'Gotham XNarrow'; font-weight: 400; }
#Wrap.page_404 .desc a { color: #fff; }
#Wrap.page_404 .desc a:hover { color: var(--main_color); }

/*----------------------------------------------------------------------*/
/* Header */
#Header { height: 60px; width: 100%; position: fixed; top: 0; left: 0; z-index: 9991; }
#Wrap { padding-top: 60px; }

/* logo */
#Header { background-color: var(--bg_color); display: flex; align-items: center; justify-content: space-between; padding-top: 12px; padding-bottom: 12px; box-sizing: border-box; }
#Header .logo { z-index:101; }
#Header .logo img { max-width: 100%; max-height: 100%; }
#Header .logo a { display: block; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }

/* menu_switch */
.menu_switch { z-index:101; font-size: 1rem; overflow: hidden; display:table; width:40px; height: 40px; cursor: pointer; }
.menu_switch .hamburger { display:table-cell; vertical-align: middle; text-align: center; }
.menu_switch span.line { display:block; width:30px; height: 2px; margin:7px auto; background: #fff; }
.menu_switch .hamburger::before, .menu_switch .hamburger::after { content: ''; display:block; width:30px; height: 2px; margin: auto; background: #fff; }
.menu_switch:hover .hamburger span.line { margin:10px auto; background-color: var(--main_color); }
.menu_switch:hover .hamburger::before, .menu_switch:hover .hamburger::after { background-color: var(--main_color); }
.menu_switch:hover { color: var(--main_color); }
.menu_switch, .menu_switch span.line, .menu_switch .hamburger::before, .menu_switch .hamburger::after { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }

/* header_search */
.header_search { margin-right: 25px; position: relative; }
.search_switch { width: 24px; height: 24px;	background: url(../images/icon_search.svg) no-repeat; position: absolute; left: 10px; top: 8px; z-index: 99; font-size: 0; }
.search_box { color: #fff; border: 1px solid transparent; border-radius: 30px; position: relative; width: 0; box-sizing: border-box; padding-left: 45px; transition: .3s; }
.search_box.show { width: 420px; padding-right: 60px; border-color: #fff; }
.search_box input[type="text"] { background-color: transparent; font-size: 1em; border: none; outline: none; color: #fff; padding: 0; line-height: 1.5rem; width: 100%; }
.search_box input[type="text"]::placeholder { color: #ddd; }
.search_box .btn { position: absolute; right: 0; top: 0; font-size: 1em; font-weight: 400; background-color: var(--main_color); color: #fff; display: none; text-align: center; width: 60px; height: 38px; line-height: 38px; border-radius: 20px; cursor: pointer; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
.search_box.show .btn { display: block; }

/* Menu */
.header_popup_box {
	opacity:0; visibility:hidden; -webkit-transition:opacity 0.3s, visibility 0.3s; transition:opacity 0.3s, visibility 0.3s; position:fixed; top:0; left:0; width: 100%; height: 100vh;
}
.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:#212121; color: var(--main_color); text-align: left; line-height:1.5em;  padding:80px 20px 20px; }
.header_popup_box .popup_body a { text-decoration: none; }
.header_popup_box .close { position: absolute; z-index: 5; }
.header_popup_box .close a { position: absolute; display:block; text-decoration:none; font-size: 0; width: 40px; height: 40px; 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:before, .header_popup_box .close a:after { display:block; content:''; position:absolute; top:0; left:50%; width:2px; height:100%; background-color:var(--main_color); -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
.header_popup_box .close a:hover:before, .header_popup_box .close a:hover:after { 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; text-transform:uppercase; }
#Menu a { display: block; color: var(--main_color); }
#Menu a:hover { color: #fff; }
#Menu li { line-height: 150%; position: relative; }
#Menu > ul > li { padding: 8px 0; margin-right: 10px; }
#Menu > ul > li > a { font-size: 1.5em; font-weight: 700; line-height: 100%; }
#Menu > ul > li > span { font-size: 1.5em; font-weight: 700; line-height: 100%; }
#Menu > ul > li > ul { padding: 12px 0 8px; margin-right: 30px; }
#Menu > ul > li > ul > li { padding: 5px 0 5px 1.25em; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
#Menu > ul > li > ul > li > a, #Menu > ul > li > ul > li > span { font-size: 1.5em; font-weight: 600; }
#Menu > ul > li > ul > li > ul { padding: 10px 0; }
#Menu > ul > li > ul > li > ul > li { padding: 5px 0 5px 1.25em; }
#Menu ul li ul li ul li a { font-size: 1.25em; font-weight: 400; }

#Menu > ul > li > a.arrow:after {
	content:''; position:absolute; top:4px; right:3px; width:12px; height:12px; border-top:3px solid var(--main_color); border-left:3px solid var(--main_color);
    -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); transform: rotate(-135deg);
	}
#Menu > ul > li > a.arrow:hover:after { border-top:3px solid #fff; border-left:3px solid #fff; }
#Menu > ul > li > a.arrow.slideDown:after { top:14px; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }

#MenuScrollBar { width:100%; height: calc(100vh - 160px); overflow-x: auto; box-sizing:border-box; }
#MenuScrollBar::-webkit-scrollbar { -webkit-appearance:none; width:8px; height:8px; }
#MenuScrollBar::-webkit-scrollbar-thumb { border-radius:8px; background-color:#999; }
#MenuScrollBar::-webkit-scrollbar-thumb:hover { background-color:var(--main_color); }
#MenuScrollBar::-webkit-scrollbar-track { border-radius:8px; background-color:#f5f5f5; }

#MenuScrollBar .follow_box .title { padding-bottom: 10px; font-size: 1.25em; font-weight: 300; }
#MenuScrollBar .follow_box dl { padding: 5px 0; }
#MenuScrollBar .follow_box dl + dl { border-top: 1px solid var(--main_color); }
#MenuScrollBar .follow_box dl dt { width: 3em; }

.header_popup_box .lang { margin: 40px 0 20px; }
.header_popup_box .lang .title { border-bottom: 1px solid var(--main_color); padding-bottom: 10px; margin-bottom:5px; font-size: 1.25em; font-weight: 300; }
.header_popup_box .lang .current, .header_popup_box .lang .change { padding: 10px 0; font-size: 1.25em; font-weight: 300; }
.header_popup_box .lang .change a::after { content: '>'; margin-left: .25em; }
.header_popup_box .lang .current:before { content:""; margin-right:5px; background: url(../images/icon_global.svg) no-repeat; width: 27px; height: 27px; display: inline-block; vertical-align: text-top; }

/*----------------------------------------------------------------------*/
/* 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:var(--main_color); }

.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:var(--main_color); }

/*----------------------------------------------------------------------*/
/* 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:var(--main_color); color: #0c0103; }
.select_location .divide { position:relative; margin:25px 0 10px; text-align:center; line-height:30px; }
.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; color: #333; }
.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:var(--main_color); color: #0c0103; }
.select_location .note { margin-top:20px; font-size:.9375em; color:#555; line-height:125%; }

@media screen and (max-width: 639px) {
	@media screen and (orientation: portrait) {
		@media screen and (max-height: 539px) {
		.select_location .box_wrap { width:96vw; height:96vh; margin:-48vh 0 0 -48vw; padding:30px 0; }
		.select_location .box_wrap > div { padding:0 10px }
		}
		@media screen and (min-height: 540px) {
		.select_location .box_wrap { width:96vw; height:500px; margin:-250px 0 0 -48vw; padding:30px 0; }
		.select_location .box_wrap > div { padding:0 10px }
		}
	}
	@media screen and (orientation: landscape) {
		.select_location .box_wrap { width:96vw; height:96vh; margin:-48vh 0 0 -48vw; padding:10px 0; }
		.select_location .box_wrap > div { padding:0 30px }
	}
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
	@media screen and (orientation: portrait) {
		.select_location .box_wrap { width:500px; height:320px; margin:-160px 0 0 -250px; padding:20px 0; }
		.select_location .box_wrap > div { padding:0 30px }
	}
	@media screen and (orientation: landscape) {
		.select_location .box_wrap { width:500px; height:96vh; margin:-48vh 0 0 -250px; padding:20px 0; }
		.select_location .box_wrap > div { padding:0 30px }
	}
}
@media screen and (min-width: 1024px) {
	.select_location .box_wrap { width:500px; height:320px; margin:-160px 0 0 -250px; padding:30px 0; }
	.select_location .box_wrap > div { padding:0 40px }
}

/*----------------------------------------------------------------------*/
/* 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; 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,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #A8B400;
}
.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: .75; }
.bx-wrapper .bx-prev:hover, .bx-wrapper .bx-prev:focus { opacity: 1; }
.bx-wrapper .bx-next { right: 10px; opacity: .75; }
.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 #A8B400; border-left:2px solid #A8B400; }
.bx-wrapper .bx-prev:after { left:12px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }
.bx-wrapper .bx-next:after { right:12px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); transform: rotate(135deg); }

/*----------------------------------------------------------------------*/
/* Footer */
#Footer { text-align: center; }
#Footer .inner { max-width: 845px; }
.ft_logo { max-width: 121px; margin: 30px auto 0; }
.ft_logo a { filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(218deg) brightness(102%) contrast(102%); }

#Footer.white_bg { background: #fff; }
#Footer.white_bg .follow_box { color: var(--bg_color); }
#Footer.white_bg .follow_box .cont { border-color: var(--bg_color); }
#Footer.white_bg .social_list a:before { filter: invert(2%) sepia(21%) saturate(2920%) hue-rotate(304deg) brightness(93%) contrast(102%); }
#Footer.white_bg .ft_logo a { filter: none; }

/* 社群 */
.social_list a { display: flex; justify-content: center; align-items: center; text-decoration: none; font-size: 0; height: 26px; width: 26px; }
.social_list a:before {
	content: ''; height: 26px; width: 26px; display: block; background-repeat: no-repeat; background-position: center;
	filter: invert(80%) sepia(13%) saturate(2004%) hue-rotate(17deg) brightness(87%) contrast(87%); 
	-webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease;
}
.social_list a.fb:before { background-image: url(../images/icon_social_fb.svg); }
.social_list a.yt:before { background-image: url(../images/icon_social_yt.svg); }
.social_list a.twitter:before { background-image: url(../images/icon_social_twitter.svg); }
.social_list a.ig:before { background-image: url(../images/icon_social_ig.svg); }
.social_list a.douyin:before { background-image: url(../images/icon_social_douyin.svg); }
.social_list a.twitch:before { background-image: url(../images/icon_social_twitch.svg); }
.social_list a.threads:before { background-image: url(../images/icon_social_threads.svg); }
.social_list a:hover:before { opacity: .7; }

#Footer .follow_box { display: inline-block; }
.follow_box { color: var(--main_color); }
.follow_box .cont { border-top: 1px solid var(--main_color); border-bottom: 1px solid var(--main_color); }
.follow_box .title { font-size: 1.5em; font-weight:400; padding-bottom: 5px; }
.follow_box dl { display: flex; flex-wrap: wrap; align-items: center; }
.follow_box dl dt { font-size: 1.125em; font-weight: 500; }
.follow_box dl dd { margin: 8px 12px; }

#Footer .follow_box .cont { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 5px 0; }
#Footer .follow_box dl dt { padding: 0 12px; }

#Footer .toolBox ul { display: flex; flex-wrap: wrap; justify-content: center; padding-top: 20px; }
#Footer .toolBox li { padding: 0 1em; margin: 5px 0; }
#Footer .toolBox li:not(:first-child) { border-left: 1px solid var(--main_color); }
#Footer .toolBox a { font-size: 1.125em; font-weight: 500; color: var(--main_color); -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
#Footer .toolBox a:hover { opacity: .7; }

/*----------------------------------------------------------------------*/
/* 表單 */
.FormTable { width: 100%; display: flex; flex-wrap: wrap; }
.FormTable, .terms_agree, .foreword { font-size: 1.25em; }
.FormTable > .item { width: 100%; box-sizing: border-box; margin-bottom: 5px; padding-top: 5px; padding-bottom: 5px; }
.FormTable > .item.half { width: calc(50% - 15px); margin-right: 30px; }
.FormTable > .item.half + .half { margin-right: 0; }
.FormTable input[type="text"], .FormTable input[type="tel"], .FormElmt input[type="email"], .FormTable select, .FormTable textarea { width: 100%; vertical-align: top; }
.FormTable.FormElmt input[type="text"] { margin-bottom: 0; }
.required { color: var(--main_color); }
.FormTable .required { color: var(--main_color); }
.FormTable .label { font-weight: 500; padding: .325em 0; }
.FormTable .label .required { margin-left: 0.25em; }
.ContactUsForm { margin-top: 10px; }
.ContactUsForm .FormTable textarea { height: 135px; }

.FormTable input.w230 { width: 230px; max-width: 100%; }
.FormTable input.w600 { width: 600px; max-width: 100%; }
.FormTable .w600 { width: 600px; max-width: 100%; }

input[type="range"]{ -webkit-appearance: none; overflow:hidden; width:300px; height:30px; outline : none; background:#212121; border-radius: 6px; border: 2px solid #bfbfbf; }
input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; position: relative; width:30px; height:30px; background:#4b575e; border: 1px solid #898989; border-radius:5px; transition:.2s; }
input[type="range"]::-webkit-slider-thumb:before,
input[type="range"]::-webkit-slider-thumb:after {
  position: absolute; top: 3px; width: 2000px; height: 4px; content:""; pointer-events: none; transition:.2s;
}
input[type="range"]::-webkit-slider-thumb:before { left: -1997px; background: #4b575e; }
input[type="range"]::-webkit-slider-thumb:after { left: 10px; background: #212121; }

.input_group.range .item { display: flex; align-items: center; font-weight: 500; padding-top: .75em; padding-bottom: .75em; }
.input_group.range .cont { display: flex; align-items: center; }
.input_group.range .title { width: 5em; font-size: 1.5rem; }
.input_group.range .range_value { margin-left: .5em; font-size: 1.5rem; }
.input_group.range .range_total { font-size: 1.75rem; }

/* 前言 */
.foreword { font-weight: 500; }
.foreword .required { margin-right: 0.25em; }

/* 同意條款 */
.terms_agree { background: #212121; padding: 20px 1em; text-align: center; font-weight: 500; margin: 20px 0; line-height: 1.5em; }
.terms_agree input[type="checkbox"] { margin: 0 0.75em 0 0; }
.terms_agree a { color: #fff; text-decoration: underline; }
.terms_agree a:hover { text-decoration: none; }

/* 備註 */
.note { font-size: 1.125rem; }

/* 表單元件 */
.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 button { 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 select, .FormElmt textarea, .FormElmt button { vertical-align:top; }

.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 textarea, .FormElmt select, .FormElmt button {
	border: none; font-size:1em; box-sizing:border-box; background-color:#202020; color:#fff; outline: 1px solid transparent;
}
	
.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"] { 
	padding:0 .25em; 
	}
.FormElmt textarea { padding:5px 10px; }
.FormElmt select {
	line-height:26px; padding:5px .25em; height:40px; color:#fff; max-width:100%;
}	
.FormElmt button { cursor: pointer; }

.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 textarea:focus, .FormElmt select:focus {
	outline: 1px solid #A8B400;
	-webkit-transition: outline ease-in .2s;
	-moz-transition: outline ease-in .2s;
	transition: outline ease-in .2s;
	}

/* 驗證碼 */
.randomcode { display: flex; flex-wrap: wrap; }
.randomcode .input { width: 140px; margin-right: 15px; margin-bottom: 5px; }
.randomcode .img { margin: 5px 15px 5px 0; max-height: 30px; }
.randomcode .img img { max-width: 100%; max-height: 100%; }
.randomcode .btn { margin-top: 5px; margin-bottom: 5px; font-size: 1.25rem; }
.randomcode .btn * { color: #fff; font-size: 1em; background-color: #212121; padding: 3px .5em; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
.randomcode .btn *:hover { background-color: var(--main_color); color: var(--bg_color); }

/* 客製元件 */
.custom-select { position: relative; }
.custom-select select { display: none; }
.select-selected {
	border-radius: 10px; box-sizing: border-box;
	background: linear-gradient(#202020 48%, #141414 52%);
	box-shadow: 0 2px 2px rgb(12,1,3),
				0 -3px 10px 10px rgb(12,1,3), 
				0 3px 6px 3px rgba(255,255,255,.5),
				0 2px 2px 2px rgba(255,255,255,.5),
				0 0 3px 3px rgba(0,0,0,0.6) inset,
				0 -2px 4px 1px rgba(255,255,255,0.35) inset;
}
.select-selected:after {
	position: absolute; content: ""; top: 50%; margin-top: -7px; right: 10px; width: 0; height: 0;
	border-style: solid; border-width: 16px 10px 0 10px;
	border-color: #fff transparent transparent transparent;
}
.select-selected.select-arrow-active:after {
	border-width: 0 10px 16px 10px; border-color: transparent transparent #fff transparent; margin-top: -10px;
}
.select-items div, .select-selected { 
	color: #ffffff; padding: 8px 16px; border: 1px solid transparent; border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent; cursor: pointer;
}
.select-items { 
	position: absolute; background-color: #202020; top: 100%; left: 0; right: 0; z-index: 99;
	overflow-y: auto; max-height: 60vh;
}
.select-hide { display: none; }
.select-items div:hover, .same-as-selected { 
	background-color: #151616; color: var(--main_color);
}

.upload_list .item { padding-bottom: 7px; margin-bottom: 7px; border-bottom: 1px solid #4b575e; }
.custom-file { position: relative; display: flex; flex-wrap: wrap; align-items: center; }
.custom-file-input { position: absolute; top: 0; left: 0; opacity: 0; width: 100px; height: 40px; box-sizing: border-box; pointer-events: none; }
.custom-file-label { width: 100px; height: 40px; border-radius: 5px; background-color: var(--main_color); font-size: 0; cursor: pointer; display: flex; justify-content: center; align-items: center; margin-right: 15px; -webkit-transition: opacity 0.3s ease; -moz-transition: opacity 0.3s ease; transition: opacity 0.3s ease; }
.custom-file-label::before { content: ''; background: url(../images/icon_upload.png) no-repeat; width: 33px; height: 22px; display: inline-block; background-size: contain; }
.custom-file-label:hover { opacity: .7; }

@media screen and (max-width: 639px) {
	.FormTable > .item.half { width: calc(50% - 10px); margin-right: 20px; }

	.ArtistForm .FormTable > .item { flex-direction: column; }
	.ArtistForm .FormTable > .item > .label { width: auto; text-align: left; padding-right: 0; }

	.input_group.range .item { flex-direction: column; align-items: flex-start; padding-top: 5px; padding-bottom: 5px; }
	.input_group.range .title { width: auto; padding-bottom: 0.25em; font-size: 1.25rem; }
	.input_group.range .range_value { font-size: 1.5rem; }
	.input_group.range .range_total { font-size: 1.5rem; }
	input[type="range"] { width: 230px; }
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
	.birth select { width: 128px; }
}
@media screen and (min-width: 1024px) {
	.randomcode { align-items: center; }
	.randomcode .input { margin-bottom: 0; }
	.ContactUsForm .two_col { display: flex; align-items: flex-start; justify-content: space-between; }
	.ContactUsForm .two_col > div { width: 50%; flex: 1; }
	.ContactUsForm .two_col > div:first-child { margin-right: 40px; }

	.ContactUsForm.FormElmt input[type="text"],
	.ContactUsForm.FormElmt input[type="email"],
	.ContactUsForm.FormElmt select { height: 46px; }
	.ContactUsForm .FormTable textarea { height: 147px; }

	.ArtistForm .FormTable { line-height: 1.25em; }
	.ArtistForm.FormElmt input[type="text"],
	.ArtistForm.FormElmt input[type="email"],
	.ArtistForm.FormElmt select { height: 46px; }
	.ArtistForm .FormTable textarea { height: 150px; }
	.ArtistForm .two_col { display: flex; align-items: flex-start; justify-content: space-between; }
	.ArtistForm .two_col > div { width: calc(50% - 40px); }

	.custom-file-input, .custom-file-label { height: 46px; width: 150px; }
	.custom-file-label::before { height: 27px; width: 41px; }
}

/*----------------------------------------------------------------------*/
.input_group .item { margin: 10px 0; }
.ArtistForm.FormElmt .control input[type="text"] { height: 30px; }

/* 客製checkbox/radio */
.control { cursor: pointer; position: relative; padding-left: 1.25em; }
.control_indicator { position: absolute; top: 4px; left: 2px; height: 14px; width: 14px; border: 1px solid #fff; border-radius: 2px; }
.control.with_inputText .control_indicator { top: 8px; }
.control:hover input ~ .control_indicator { border: 1px solid #999; }
.control input:disabled ~ .control_indicator { background: #fff; border: 1px solid #ccc; opacity: 0.5; pointer-events: none; }
.control_indicator:after { content: ''; position: absolute; display: none; }
.control input:checked ~ .control_indicator:after { display: block; }

/* checkbox */
.control.control_checkbox input[type="checkbox"] { position: absolute; z-index: -1; opacity: 0; width: 0; height: 0; }
.control_checkbox input[type="checkbox"]:checked ~ .control_indicator {
    background: var(--main_color); border: 1px solid var(--main_color);
}
.control_checkbox:hover input:not([disabled]):checked ~ .control_indicator,
.control_checkbox input:checked:focus ~ .control_indicator {
    background: var(--main_color);
}
.control_checkbox .control_indicator:after {
    left: 4px; top: 2px; width: 3px; height: 7px; border: solid var(--bg_color); border-width: 0 3px 3px 0; transform: rotate(45deg);
}
.control_checkbox input:disabled ~ .control_indicator:after {
    border-color: #fff;
}

/* radio */
.control.control_radio input[type="radio"] { position: absolute; z-index: -1; opacity: 0; width: 0; height: 0; }
.control_radio .control_indicator { border-radius: 50%; }
.control_radio input:checked ~ .control_indicator {
    border: 1px solid var(--main_color);
}
.control_radio .control_indicator:after {
    left: 2px; top: 2px; height: 10px; width: 10px; border-radius: 50%; background: var(--main_color);
}
.control_radio input:disabled ~ .control_indicator:after {
    background: var(--main_color);
}

/*----------------------------------------------------------------------*/
/* 通用按鈕 */
.btnBox { display: flex; justify-content: center; align-items: center; font-size: 1.5em; margin: 40px 0; }
.btnBox > div { margin: 10px; }
.btnBox input[type="submit"], .btnBox button, .btnBox a {
	background-color: #212121; color: #fff; font-size: 1em; font-weight: 400; padding: 5px 1em; border-radius: 5px;
	-webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease;
}
.btnBox input[type="submit"]:hover, .btnBox button:hover, .btnBox a:hover { background-color: var(--main_color); color: var(--bg_color); }

@media screen and (min-width: 640px) and (max-width: 1023px) {
	.btnBox { font-size: 2em; }
}
@media screen and (min-width: 1024px) {
	.btnBox { font-size: 2.5em; }
}

/*----------------------------------------------------------------------*/
/* Btn Top */
.BtnTop { 
	text-align:center; z-index:555; position:fixed; bottom:65px; right:10px;
	width:50px; height:50px; display:none; 
	}
#Wrap.MenuFix .BtnTop { display:block; }
.BtnTop a { display:block; width:50px; height:50px; background-color: rgba(177,183,32,.5); text-indent:-10000px; position:relative; z-index:9989; }
.BtnTop a::after {
	content:''; position:absolute; top:22px; left:17px; width:14px; height:14px; 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:var(--main_color); }
.BtnTop a:hover::after { border-color: #0c0103; }
.BtnTop a, .BtnTop a::after { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }

/*----------------------------------------------------------------------*/
/*
    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; 
	-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%; }

@media screen and (max-width: 639px) {
	#colorbox_thum { margin-left:-5px; margin-right:-5px; }
	#colorbox_thum a { width:112px; height:84px; margin:5px; }
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
	#colorbox_thum { margin-left:-10px; margin-right:-10px; }
	#colorbox_thum a { width:160px; height:120px; margin:10px; }
}
@media screen and (min-width: 1023px) {
	#colorbox_thum { margin-left:-5px; margin-right:-5px; }
	#colorbox_thum a { width:190px; height:140px; margin:5px; }
}

/* 
    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; }
    #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:10004; font-family:"微軟正黑體"; font-weight:normal; font-size: .875em; }
.ifun_text_menu a { display:block; text-decoration:none; }
.ifun_text_menu a:hover { color: #304fb0; }
.ifun_text_menu li { position: relative; }
.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:140px; }
.ifun_text_menu > ul 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%; color:#222; }
.ifun_text_menu > ul ul .text { padding:5px 10px; line-height:180%; color:#222; }
.ifun_text_menu li.with::after { content: ''; position: absolute; right: 5px; top: 14px; width: 0; height: 0; border-style: solid; border-width: 3px 0 3px 6px; border-color: transparent transparent transparent #333; }
.ifun_text_menu > ul > li:hover > ul { display:block; }
.ifun_text_menu > ul ul ul { top: 0; left: 140px; }
.ifun_text_menu > ul ul > li:hover > .text { background: var(--main_color); color: #000; }
.ifun_text_menu > ul ul > li:hover > a { background: var(--main_color); color: #000; }

/*----------------------------------------------------------------------*/
/* RWD */
@media screen and (max-width: 639px) {
	/* Header */
	#Header .logo { margin-left: 15px; }
	#Header .logo a { height: 40px; width: 45px; }
	.MenuBar { display: flex; }

	.header_search { margin-right: 15px; }
	.search_box { margin-top: 4px; padding-left: 38px; }
	.search_box.show { width: 180px; }
	.search_box input[type="text"] { padding: 4px 0; }
    .search_box .btn { height: 32px; line-height: 32px; }
	.search_switch { top: 11px; width: 20px; height: 20px; }

	/* Menu */
	.header_popup_box .popup_body { height:94vh; padding:70px 15px 40px 15px; }
	.header_popup_box .close { background-color: #4b575e; width: 100%; height:60px; left: 0; top: 0; }
	.header_popup_box .close a { right: 15px; top: 10px; width: 40px; height: 40px; }

	/* menu_switch */
	.menu_switch { margin-right: 15px; }

	/* Footer */
	#Footer { padding-bottom: 40px; padding-top: 30px; }
	.follow_box .title { font-size: 1.375em; }
	.follow_box .cont { flex-direction: column; }
	.follow_box dl { padding-left: 0; }
	.follow_box dl + dl { padding-top: 5px; }
	.follow_box dl dt { font-size: 1.125em; width: 3em; padding: 0; text-align: left; }
	.follow_box dl dd { margin: 8px 6px; }
	#Footer .follow_box dl dt { padding: 0; }

	.BtnTop, .BtnTop a { width: 32px; height: 32px; }
	.BtnTop a::after { top: 14px; left: 10px; width: 10px; height: 10px; }
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
	/* Header */
	#Header .logo { margin-left: 20px; }
	#Header .logo a { height: 40px; width: 45px; }
	.MenuBar { display: flex; }

	.header_search { margin-right: 20px; }
	.search_box { margin-top: 4px; padding-left: 38px; }
	.search_box.show { width: 250px; }
	.search_box input[type="text"] { padding: 4px 0; }
    .search_box .btn { height: 32px; line-height: 32px; }
	.search_switch { top: 11px; width: 20px; height: 20px; }

	/* Menu */
	.header_popup_box .close { background-color: #4b575e; width: 100%; height:60px; right: 0; top: 0; }
	.header_popup_box .close a { right: 20px; top: 10px; }

	/* menu_switch */
	.menu_switch { margin-right: 20px; }

	/* Footer */
	#Footer { padding-bottom: 80px; padding-top: 30px; }
	.follow_box .cont { flex-direction: column; }
	.follow_box dl dt { width: 3em; text-align: right; }
}
@media screen and (min-width: 1024px) {
	/* Header */
	#Header { height: 100px; }
	#Wrap { padding-top: 100px; }
	#Header .logo { margin-left: 60px; }
	#Header .logo a { height: 77px; width: 85px; }
	.MenuBar { display: flex; }
    .search_box { font-size: 1.5em; }
    .search_box.show { padding-right: 80px; }
    .search_box input[type="text"] { height: 38px; line-height: 38px; }
    .search_box .btn { width: 80px; }

	.MenuFix #Header { height: 60px; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
	.MenuFix #Header .logo a { height: 40px; width: 45px; }
	.MenuFix #Wrap { padding-top: 50px; }

	/* Menu */
	#MenuScrollBar { height: calc(100vh - 60px); }
	.header_popup_box .popup_body { position: absolute; right: 6.25vw; top: 0; width: 28vw; min-width:400px; padding:30px 25px; }
	.header_popup_box .close { width: 6.25vw; height: 100vh; right: 0; top: 0; }
	.header_popup_box .close a { right: 50%; top: 50%; margin-top: -20px; margin-right: -20px; }

	/* menu_switch */
	.menu_switch { margin-right: 30px; }
	.menu_switch::before { content: 'MENU'; height: 40px; line-height: 40px; font-size: 1.5em; padding-right: 10px; }

	/* Footer */
	#Footer { padding: 250px 0 100px; }
	#Footer .follow_box dl { padding: 0 15px; }
	#Footer .follow_box dl + dl { border-left: 1px solid var(--main_color); }
	#Footer.white_bg .follow_box dl + dl { border-left: 1px solid var(--bg_color); }
	.social_list a { width: 30px; height: 30px; }
}
@media screen and (min-width: 1024px) and (max-width: 1280px) {
	#Header { height: 70px; }
	#Wrap { padding-top: 70px; }
	#Header .logo { margin-left: 5%; }
	#Header .logo a { height: 48px; width: 52px; }
}

/*----------------------------------------------------------------------*/
/* 編輯器 */
.editable_content { margin-top:10px; margin-bottom:15px; font-size: 1.125em; letter-spacing: .02em; font-family: 'Gotham XNarrow','Gotham Condensed', 'sans-serif'; font-weight: 400; }
.editable_content.content { margin-top:60px; margin-bottom:40px; }

/* 為文字上稿區可能出現的元素做設定 */
.editable_content, .editable_content p, .editable_content li, .editable_content div, .editable_content blockquote { line-height:150%; }
.editable_content .district, .editable_content div, .editable_content table, .editable_content iframe, .editable_content blockquote { 
	margin-top:30px; margin-bottom:30px; 
	}
.editable_content p, .editable_content ul, .editable_content ol { 
	margin-top:20px; margin-bottom:20px; 
	}
.editable_content p { padding:0; }
.editable_content h4, .editable_content h5, .editable_content h6 { margin-bottom:5px; line-height:120%; }
.editable_content h4 + *:not(h4):not(h5):not(h6):not(blockquote),
.editable_content h5 + *:not(h4):not(h5):not(h6):not(blockquote),
.editable_content h6 + *:not(h4):not(h5):not(h6):not(blockquote) { margin-top:10px; }
.editable_content h4 + h4, .editable_content h4 + h5, .editable_content h4 + h6,
.editable_content h5 + h4, .editable_content h5 + h5, .editable_content h5 + h6,
.editable_content h6 + h4, .editable_content h6 + h5, .editable_content h6 + h6 { margin-top:20px; }
	.editable_content h4 { font-size:2rem; font-weight: 600; color:var(--main_color); text-transform:uppercase; overflow:hidden; }
	.editable_content h5 { font-size:2rem; color:#fff; }
	.editable_content h6 { font-size:1.5rem; color:#fff; font-weight: 600; }
.editable_content blockquote { 
	max-width:1000px; margin-left:auto; margin-right:auto; text-align:center; font-size:1.25em; overflow:hidden; position:relative; box-sizing:border-box; font-family: 'Bank Gothic'; line-height: 1.3;
	}
.editable_content blockquote li { text-align:left; }
.editable_content .district .imgleft ~ blockquote, .editable_content .district .imgright ~ blockquote { margin-left:0; margin-right:0; }
.editable_content ol { list-style-type:decimal; padding-left:25px; overflow:hidden; }
.editable_content ul { list-style-type:disc; padding-left:25px; overflow:hidden; }
	.editable_content ul[type="disc"] { list-style-type:disc; }
	.editable_content ul[type="circle"] { list-style-type:circle; }
	.editable_content ul[type="square"] { list-style-type:square; }
.editable_content li { margin-bottom:5px; }
.editable_content ol ol { list-style-type:lower-alpha; }
.editable_content ul ul { list-style-type:circle; }
.editable_content ul ul, .editable_content ul ol, .editable_content ol ul, .editable_content ol ol { margin-top:5px; margin-bottom:0; }
.editable_content ul li:last-child, .editable_content li:last-child { margin-bottom:0; }
.editable_content hr { margin:20px 0; border-bottom:2px solid #e9e9e9; border-left:0; border-right:0; border-top:0; }

/* 影片、相關連結、相關檔案 */
.editable_content .MsgModule_Download, .editable_content .MsgModule_Link { padding:0; line-height:160%; }
	.editable_content .MsgModule_Download span, .editable_content .MsgModule_Link span { font-weight:bold; white-space:nowrap; color: var(--main_color); }
	.editable_content .MsgModule_Download a, .editable_content .MsgModule_Link a { color:var(--main_color); text-decoration:underline; }
	.editable_content .MsgModule_Download a:hover, .editable_content .MsgModule_Link a:hover { text-decoration:none; }
.editable_content .MsgModule_Download + .MsgModule_Download, 
.editable_content .MsgModule_Download + .MsgModule_Link, 
.editable_content .MsgModule_Link + .MsgModule_Download, 
.editable_content .MsgModule_Link + .MsgModule_Link { 
	margin-top:-15px; 
	}
	
.editable_content .MsgModule_Media { margin-left:auto; margin-right:auto; width:560px; }
	.editable_content .MsgModule_Media.left { margin-left:0; }
	.editable_content .MsgModule_Media.right { margin-right:0; }
	.editable_content .MsgModule_Media.landscape { width:560px; }
	.editable_content .MsgModule_Media.portrait { width:315px; }
.editable_content .MsgModule_Media .media_wrap { margin-top:0; margin-bottom:0; padding-bottom:56.25%; text-align:left; position:relative; overflow:hidden; }
	.editable_content .MsgModule_Media.landscape.ratio_16by9 .media_wrap { padding-bottom:56.25%; }
	.editable_content .MsgModule_Media.portrait.ratio_16by9 .media_wrap { padding-bottom:177.77%; }
	.editable_content .MsgModule_Media.landscape.ratio_4by3 .media_wrap { padding-bottom:75%; }
	.editable_content .MsgModule_Media.portrait.ratio_4by3 .media_wrap { padding-bottom:133.33%; }
	.editable_content .MsgModule_Media .media_wrap iframe,
	.editable_content .MsgModule_Media .media_wrap object,
	.editable_content .MsgModule_Media .media_wrap embed { position:absolute; top:0; left:0; width:100%; height:100%; border:0; margin:0; }
.editable_content .MsgModule_Media .describe { text-align:left; margin:0; padding:15px 0; line-height:150%; border-bottom: 2px solid #fff; }
	.editable_content .MsgModule_Media .describe span { display:block; }
	.editable_content .MsgModule_Media .describe .title { margin-bottom:10px; }
	.editable_content .MsgModule_Media .describe .desc { font-size:0.9375rem; }
	.editable_content noscript div.ytlink { padding:0; margin:0; line-height:18px; }/* no script時影片區塊顯示的訊息 */
	
.editable_content .MsgModule_Media video  { display:block; width:100%; }

/* 文繞圖設定 */
.editable_content .district { overflow:hidden; }
.editable_content .district .img_bg + * { margin-top:0; }
.editable_content .district > *:first-child { margin-top:0; }
.editable_content .district > *:last-child { margin-bottom:0; }
.editable_content .district .img_bg { margin-top:.25em; }
.editable_content .img_bg { margin-bottom:15px; }
.editable_content .img_bg img +img { margin-top: 30px; }
.editable_content .imgleft { float:left; margin-right:15px; }
.editable_content .imgright { float:right; margin-left:15px; }
.editable_content .imgcenter { clear:both; text-align:center; margin-left:auto; margin-right:auto; }
.editable_content .imgleft, .editable_content .imgright { max-width:50%; }
.editable_content .img_bg span { 
	display:block; padding:5px 0 0 14px; margin:0 auto; box-sizing:border-box; position:relative;
	font-size:0.875rem; line-height:140%; text-align:left; color:#7e7e7e; 
	}
.editable_content .img_bg span::after { 
	content:''; display:block; position:absolute; top:12px; left:0;
	border-left:5px solid rgba(255,255,255,0); border-right:5px solid rgba(255,255,255,0); border-bottom:5px solid #818181; 
	}
	
/* 單篇延伸區塊 */
.editable_content h4.ext_title { 
	margin-top:20px; margin-bottom: 20px; position:relative; 
	font-size:1.875rem; font-weight:600; padding: .25em 0; border-top: 2px solid var(--main_color);
    border-bottom: 2px solid var(--main_color);
	}
.editable_content h4.ext_title::after { content:''; display:block; position:absolute; bottom:0; left:0; width:100%; border-bottom:1px solid #333; }
.editable_content + h4.ext_title { margin-top:40px; }

.editable_content ul.ext_list { margin:10px 0 20px 0; list-style-type:decimal; overflow:hidden; }
.editable_content ul.ext_list li { position:relative; padding:4px 0; line-height:150%; }
.editable_content ul.ext_list li a { color:#fff; text-decoration:none; }
.editable_content ul.ext_list li a:hover, .editable_content ul.ext_list li a:focus { color: var(--main_color); text-decoration:underline; }
.editable_content ul.ext_list li span.file_ext { margin-left:6px; text-indent:-10000px; vertical-align:bottom; position:relative; width:20px; height:20px; }


/* html編輯區的表格預設樣式 */
.editable_content table[align="center"] { margin-left:auto; margin-right:auto; }
.editable_content table caption { margin:5px 0; padding:5px 0; font-weight:bold; color:#333; text-align:left; line-height:150%; }
.editable_content .tableWrap { position:relative; overflow-y:auto; _overflow:auto; width:100%; margin-bottom:1em; }
.editable_content .tableWrap table { margin:0; }
/*添加IOS下卷軸*/
.editable_content .tableWrap::-webkit-scrollbar { -webkit-appearance:none; width:14px; height:14px; }
.editable_content .tableWrap::-webkit-scrollbar-thumb { border-radius:8px; border:3px solid #fff; background-color:rgba(0, 0, 0, .3); }
.editable_content .tableWrap::-webkit-scrollbar-thumb:hover { background-color:#ca161d; }
	
/* html編輯區的表格外框樣式 */
.editable_content table.table_style1 { border-top:1px solid rgba(255,255,255,.4); }
.editable_content .table_style1 > tbody > tr > th, .editable_content .table_style1 > tbody > tr > td { 
	padding:8px; border-left:1px solid rgba(255,255,255,.4); border-bottom:1px solid rgba(255,255,255,.4); line-height:160%; 
	}
.editable_content .table_style1 > tbody > tr > th:first-child, .editable_content .table_style1 > tbody > tr > td:first-child { border-left: none; }
.editable_content .table_style1 > tbody > tr > th { border-top: 2px solid #fff; white-space:nowrap; }

/* 移除第一個物件的上邊界、上間距避免過大的空白 */
.editable_content > *:first-child, .editable_content blockquote > *:first-child, .editable_content td > *:first-child { 
	margin-top:0; 
	}
/* 移除最後一個物件的下邊界、下間距避免過大的空白 */
.editable_content > *:last-child, .editable_content blockquote > *:last-child, .editable_content td > *:last-child { 
	margin-bottom:0; 
	}
/* 避免爆版 */
.editable_content iframe, 
.editable_content img, 
.editable_content div, 
.editable_content p, 
.editable_content span, 
.editable_content ul,
.editable_content ol,
.editable_content li,
.editable_content figure, 
.editable_content figcaption { 
	max-width:100%; 
	}
.editable_content * { word-wrap:break-word; }
/* 取消圖片的高度設定避免RWD時不等比例縮放 */
.editable_content img { height:auto; }

/* 客製樣式 */
.editable_content .district a { text-decoration: underline; color: #fff; }
.editable_content .district a:hover { color: var(--main_color); }
.editable_content h4.big_title { font-size: min(max(1.875rem, 5vw), 4.25rem); }
.editable_content .font_main_color { color: var(--main_color); }


@media screen and (max-width: 639px) {
	.editable_content .imgleft, .editable_content .imgright { max-width: 100%; float: none; margin: 0 0 15px; }
}