@charset "utf-8";
@import url('fonts.css');
@import url('fontawesome.min.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 */
}
/*select, input { -webkit-appearance:none;  }*/

/* 字型設定 */
body { 
    font-family: 'HelveticaNeue', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif; 
    /*font-family: 'Helvetica condensed', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif; */
    font-weight: 400; letter-spacing: 0.05em;
}
h1, h2, h3, h4, h5, h6{ 
	font-family:'BankGothic', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif; 
    line-height: 180%; font-weight: 700;
}

/* 基本設定 */
#Wrap{ min-width:320px; width:100%; overflow: hidden; background:#fff; color:#333; }
body.fixed{ overflow:hidden; }

/* 連結 */
a { text-decoration:none; color:#232222;}
a:hover { text-decoration:none; color:#FFC627; }

/* 反選 */
::selection{ background-color:#FFC627; color: #232222; }

.clear { clear:both; float:none; height:0px; width:0; border:none; overflow:hidden; }
.none { display:none; }
hr { clear:both; height:1px; border:0; background-color:#fff; width:100%; margin:20px 0; }

:root {
	--main_color: #f0b100; 
	--bg_color: #232222; 
}

/* 404_page */
#Wrap.page_404 { height: 100vh; padding: 15vh 15px; box-sizing: border-box; }
#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; padding-top: 15px; }

/*----------------------------------------------------------------------*/
/* 共用 */
.font_icon{ font-family: 'Font Awesome 5 Pro'; font-weight: 300; }

/*----------------------------------------------------------------------*/
/* Header */
#Header{ background-color: #232222; }
#Header > div{ height: 110px; padding-left: 3.125rem; padding-right: 3.125rem; }
#Header::after{ content:''; display:block; clear:both; }
#Header .logo{ width: 84px; height: 110px; position: absolute; top: 0; left:3.125rem; }
#Header .logo a{ display: block; width: 100%; height: 100%; }
#Header .logo img{ width: 100%; height: auto; }

#Header .toolBox ul { display: flex; justify-content: flex-end; flex-wrap: wrap; }
#Header .toolBox .font_icon{ margin-right: 5px; }
#Header .toolBox .icon-locator::before{ content: "\f3c5"; }
#Header .toolBox .icon-lang::before{ content: "\f0ac"; }

#Header .toolBox li a{ color: #e0e0e0; }
#Header .toolBox > ul > li > a{ line-height: 40px; padding-bottom: 5px; }
#Header .toolBox > ul > li{ display: inline-block; position: relative; margin-right: 20px; }
#Header .toolBox > ul > li:last-child{ margin-right: 0; }
#Header .toolBox > ul > li > ul{ display: none; 
    position: absolute; top: 40px; right: 0; z-index: 100;
    width: 180px; text-align: left; background-color: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
#Header .toolBox > ul > li > ul > li{ border-bottom: 1px solid #e0e0e0; }
#Header .toolBox > ul > li > ul > li:last-child{ border-bottom: 0; }
#Header .toolBox > ul > li > ul > li > a{ display: block; color: #232222; 
    line-height: 150%; padding: 6px 10px; font-size: 0.938em; 
}
#Header .toolBox > ul > li:hover > ul{ display: block; }

.search_box { display: flex; }
.search_box.FormElmt input[type="text"] {
    margin-bottom: 0; height: 30px; background-color: #232222; color: #e0e0e0; padding-left: 5px; width: 100%;
    border-left: none; border-right: none; border-top: none; border-bottom: 1px solid rgba(255,255,255,0.3);
}
.search_box.FormElmt input[type="text"]:focus {
	border-left: none; border-right: none; border-top: none; border-bottom: 1px solid rgba(255,255,255,1);
	-webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none;
}
#Header .toolBox .search_box { padding-top: 5px; }
#Header .toolBox .btn { font-size: 0; }
#Header .toolBox .btn button::before { content: '\f002'; font-family: 'Font Awesome 5 Pro'; font-weight:300; color: #e0e0e0; line-height: 30px; font-size: 1rem; }
#Header .toolBox .btn button:hover::before,
#Header .toolBox .btn button:focus::before { color: #FFC627; }
#Header .toolBox .search_box.FormElmt input[type="text"] { width: 120px; }
.search_box button { background-color: transparent; color: #e0e0e0; height: 30px; font-family: 'HelveticaNeue', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif; cursor: pointer; font-size: 1em; padding: 0 .5em; }
.mobileMenu .search { background-color: rgba(0,0,0,0.65); padding: 10px 5px; margin-bottom: 10px; }
.mobileMenu .search_box .input { flex: 1; }
.mobileMenu .search_box.FormElmt input[type="text"] { background-color:transparent; border: none; }
.mobileMenu .search_box.FormElmt input[type="text"]:focus { background-color:transparent; border: none; }

/*----------------------------------------------------------------------*/
/* Menu */
#Menu{ font-family:'BankGothic', "Microsoft JhengHei", 'Helvetica', 'Arial', sans-serif; }
#Menu > div{ padding: 10px 5.625rem 0 5.625rem; box-sizing: border-box; }
#Menu .menu_list { text-align: center; }
#Menu .menu_list > li{ display: inline-block; padding-left: 20px; padding-right: 20px; 
    position: relative;
}
#Menu .menu_list > li > a{ display: block; color: #fff; font-size: 1.125em; letter-spacing: 0.1em;
    text-transform: uppercase; line-height: 60px; position: relative;
}
#Menu .menu_list > li > a::before{ content: ""; display: block; width: 0; height: 1px; position: absolute; 
    top: 10px; left: 50%; right: 50%; background-color: #FFC627;
}
#Menu .menu_list > li > ul{ display: none; z-index: 100;
    position: absolute; top: 60px; left: 50%; width: 180px; background-color: #fff; 
    margin-left: -90px; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
#Menu .menu_list > li > ul > li{ border-bottom: 1px solid #e0e0e0; }
#Menu .menu_list > li > ul > li:last-child{ border-bottom: 0; }
#Menu .menu_list > li > ul > li > a{ display: block; padding: 8px 10px; font-size: 0.938em; 
    color: #232222; word-spacing: 0.2em;
}
#Menu .menu_list > li:hover > ul{ display: block; }

#Menu .menu_list > li.product{ position: static; }
#Menu .menu_list > li.product > ul{ width: 100%; left: 0; margin-left: 0; top: 110px;
    box-shadow: 0 5px 10px rgba(0,0,0,0.2);
}
#Menu .menu_list > li.product > ul > .menuProBox{ max-width: 1440px; margin: auto; }
#Menu .menu_list > li.product > ul > .menuProBox > li{ box-sizing: border-box; }
#Menu .menu_list > li.product > ul > .menuProBox > li a{ display: block; font-size: 0.875em; }
#Menu .menu_list .menuProBox .img{ max-width: 130px; max-height: 130px; margin: auto; padding-bottom: 15px; }
#Menu .menu_list .menuProBox .img img{ max-width: 100%; max-height: 100%; }

/* st_01 */
#Menu .menu_list > li.product > ul > .menuProBox.st_01{ text-align: center; }
#Menu .menu_list > li.product > ul > .menuProBox.st_01 > li{ display: inline-block; width: 14%; 
    margin-bottom: 10px; margin-top: 10px; vertical-align: top;
}
#Menu .menu_list > li.product > ul > .menuProBox.st_01 > li > a{ box-sizing: border-box; padding: 5px; }

/* st_02 */
#Menu .menu_list > li.product > ul > .menuProBox.st_02{ display: table; table-layout: fixed; }
#Menu .menu_list > li.product > ul > .menuProBox.st_02 > li{ display: table-cell; width: 14.285714%; padding: 15px 5px; }

@media screen and (max-width: 1200px) {
    #Menu .menu_list > li { padding-left: 12px; padding-right: 12px; }
    #Menu .menu_list > li > a { font-size: 1em; }
}

/* @media screen and (min-width: 1024px) {
    .MenuFix #Wrap { padding-top: 110px; }
} */

/*----------------------------------------------------------------------*/
/* 行動裝置選單 */
/* RWD Menu */
.Menubar{ position: fixed; top: 0; width: 40px; text-align: center; z-index: 2001; }
.Menubar .font_icon{ display: block; font-weight: 400; width: 100%; height: 100%; }
.Menubar .font_icon:hover{ cursor: pointer; }
.Menubar .font_icon::before{ content: "\f0c9"; color: #fff; font-size: 1.75em; }
.Menubar.open .font_icon::before{ content: "\f00d"; } 

/* mobileMenu */
.mobileMenu{ width: 100%; height: 100vh; background-color: #232222; position: fixed; z-index: 2000; 
    top: 0; left: 0; display: none; letter-spacing: 0.1em; 
    font-family:'BankGothic', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.mobileMenu.open{ display: block; }
.mobileMenu > div{ overflow:hidden; overflow-y: auto; height: 100vh; }
.mobileMenu .tt{ color: #fff; text-align: center; margin-bottom: 10px; }

.mobileMenu .menu{ margin-bottom: 10px; }
.mobileMenu .menu > li { color: #fff; border-bottom: 1px solid rgba(255,255,255,0.2); 
    padding: 10px 5px; position: relative; 
}
.mobileMenu .menu > li:last-child{ border-bottom: 0; }
.mobileMenu .menu > li > a{ color: #fff; width: 100%; display: block; }
.mobileMenu .menu > li > a.iconBtn{ width: auto; display: block; position: absolute; 
    top: 10px; right: 0; width: 24px; height: 24px; 
}
.mobileMenu .menu > li > ul{ padding-top: 8px; }
.mobileMenu .menu > li > ul > li > a{ color: rgba(255,255,255,0.55); position: relative; 
    padding-left: 15px; display: block;
}
.mobileMenu .menu > li > ul > li > a::before{ content: ""; margin-right: 5px; width: 6px; height: 1px;
    background-color: rgba(255,255,255,0.55); display: inline-block; 
    position: absolute; top: 12px; left: 0;
}
.mobileMenu .font_icon{ font-weight: 400; width: 24px; height: 24px; 
    text-align: center; line-height: 24px; display: block;
}
.mobileMenu .icon-switch::before{ content: "\f067"; }
.mobileMenu .menu > li > a.slideDown .icon-switch::before{ content: "\f068"; }

/* mobToolBox */
.mobToolBox{ letter-spacing: 0.05em; padding-bottom: 10px; }
.mobToolBox::after{ content: ""; display: block; clear: both; }
.mobToolBox a{ color: #e0e0e0; font-family: 'HelveticaNeue', 'Helvetica', 'Arial', sans-serif; }

.mobToolBox .font_icon{ width: 30px; height: 30px; position: inherit; top: 0; left: 0; 
    font-weight: 200; margin:auto; font-size: 1.5625em; 
}
.mobToolBox .icon-locator::before{ content: "\f3c5"; }
.mobToolBox .icon-lang::before{ content: "\f0ac"; }

.mobToolBox .item { float: left; width: 50%; box-sizing: border-box; text-align: center; }
.mobToolBox .item a{ display: block; background-color: rgba(0,0,0,0.65); }

/* langPopupBox (行動選單選語系) */
.langPopupBox{ letter-spacing: 0.01em; }
.langPopupBox > div { max-width: 460px; }
.langPopupBox .tt{ text-align: center; font-weight: 700; 
    text-transform: uppercase; margin-bottom: 10px; padding: 5px; 
}
.langPopupBox .lang_cont li{ border-left: 2px solid #232222; margin-bottom: 8px; }
.langPopupBox .lang_cont li:last-child{ margin-bottom: 0; }
.langPopupBox .lang_cont li a{ display: block; padding: 8px 15px; background-color: #f4f4f4; position: relative; }
.langPopupBox .lang_cont .icon-arrow::before{ content: "\f054"; display: block; width: 20px; height: 20px; 
    position: absolute; right: 8px; top: 7px; font-weight: 400; text-align: center; line-height: 20px;
}

/*----------------------------------------------------------------------*/
/* products 公用區*/
.proList .item{ position: relative; }
.proList .item > a{ display: block; width: 100%; height: 100%; box-sizing: border-box; }
.proList .img{ overflow: hidden; background-color: #f0f0f0; }
.proList .img > div{ 
    padding-bottom: 73.099415%;
    background-repeat: no-repeat;
    background-size: cover; 
    background-position: center center; 
}
.proList .category ul li{ font-size: 0.75em; }

/*----------------------------------------------------------------------*/
/* media 公用區 */
.mediaBox .item a{ position: relative; }
.mediaBox .item .img_box{ position: relative; }

.mediaBox .item > a{ display: block; box-sizing: border-box; }
.mediaBox .img{ overflow: hidden; }
.mediaBox .img > div{ 
    padding-bottom: 56.285714%;
    background-repeat: no-repeat;
    background-size: cover; 
    background-position: center center; 
}
.mediaBox .item .title{ text-align: center; box-sizing: border-box; }
.mediaBox .item:hover .icon-play:hover{ background-color: #fff; }
.mediaBox .icon-play{ position: absolute; z-index: 998;
    background-color: rgba(255,255,255,0.9); top: 50%; left: 50%; text-align: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.mediaBox .icon-play::before{ content: ""; background: url('../images/icon_play.png') no-repeat center center;
    display: block;  background-size: contain; position: absolute; top: 50%; left: 50%; 
}

/*----------------------------------------------------------------------*/
/* media (popup) */
.mediaPopupBox.popupBox > div{ background-color: transparent; box-shadow: none; }
.mediaPopupBox .video iframe{ display: block; width: 100%; height: 100%; }
.mediaPopupBox .close{ color: #f5f5f5; border: 1px solid #f5f5f5; 
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.mediaPopupBox .close:hover{ color: #232222; background-color: #f5f5f5; }
.mediaPopupBox.popupBox .icon-close::before{ font-weight: 200; }

/*----------------------------------------------------------------------*/
/* bxSlider_list共通設定 */
/* 不顯示子項目 */
.bxSlider_list li { float:left; list-style:none; position:relative; display:none; }
/* 顯示第一筆項目 */  
.bxSlider_list li:first-child { display:block; }
/* 當JS執行時顯示全部 */
.bx-viewport ul.bxSlider_list li { display:block; }
.bx-viewport { z-index:9998; position:relative; zoom:1; }
.bx-wrapper { position:relative; margin:auto; padding:0; zoom:1; }
.bx-wrapper .bx-controls-direction a.disabled { display:none; }

/*----------------------------------------------------------------------*/
/* KeyVisual */
#KeyVisual { clear:both; position:relative; z-index:99; }
#KeyVisual .bx-wrapper { overflow:hidden; padding-bottom:38.02083333%; }
#KeyVisual .bx-wrapper img { width:100%; }
#KeyVisual .bx-viewport { height:auto !important; position:absolute !important; }

    /* 修改Key visual圖片載入時Slider高度過高問題 */
    #KeyVisual .bxSlider_list { position:relative; }
    /* 載入時顯示loading動畫,載完後圖片淡入 */
    #KeyVisual .bxSlider_list { background:url("../images/loader.gif") no-repeat center center; overflow:hidden; }
    #KeyVisual .bxSlider_list li img { 
        opacity:0; display:block; 
        -webkit-transition: all 2s ease;
        -moz-transition: all 2s ease;
        transition: all 2s ease;
        }
    #KeyVisual .bx-viewport .bxSlider_list { background-image:none; }
    #KeyVisual .bxSlider_list.show li img { opacity:1; }

#KeyVisual .bxSlider_list li { width:100%; }
#KeyVisual .bxSlider_list li a { display:block; width:100%; height:100%; }
#KeyVisual .bxSlider_list li img { width:100%; height:auto; }

/* DIRECTION CONTROLS (NEXT / PREV) */
#KeyVisual .bx-wrapper .bx-controls-direction a { 
    display:block; position:absolute; top:50%; text-indent:-10000px; z-index:9999;
    background-color: rgba(35,34,34,0.9);
    }
#KeyVisual .bx-wrapper .bx-controls-direction a::after { 
    content:''; display:block; position:absolute; top:50%;
    border-left:3px solid #dadada; border-top:3px solid #dadada; 
    }
#KeyVisual .bx-wrapper .bx-controls-direction a:hover::after { 
    opacity:1;
    }
#KeyVisual .bx-wrapper .bx-controls-direction .bx-prev { 
    left:0; 
    }
#KeyVisual .bx-wrapper .bx-controls-direction .bx-next { 
    right:0; 
    }
#KeyVisual .bx-wrapper .bx-controls-direction .bx-prev::after { 
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    }
#KeyVisual .bx-wrapper .bx-controls-direction .bx-next::after { 
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    transform: rotate(135deg);
    }
/* PAGER */
#KeyVisual .bx-wrapper .bx-pager { position:absolute; bottom:12px; width:100%; padding:0 40px; z-index:9999; 
    text-align:center; box-sizing:border-box; 
}
#KeyVisual .bx-wrapper .bx-pager .bx-pager-item,
#KeyVisual .bx-wrapper .bx-controls-auto .bx-controls-auto-item { display:inline-block; }
#KeyVisual .bx-wrapper .bx-pager.bx-default-pager a { 
    text-indent:10000px; display:block; width:12px; height:12px; margin:0 5px; background-color:#fff; 
    -webkit-border-radius:50%;
    -moz-border-radius:50%;
    border-radius:50%;
    box-shadow: 0 0 10px rgba(0,0,0,0.25);
}
#KeyVisual .bx-wrapper .bx-pager.bx-default-pager a:hover,
#KeyVisual .bx-wrapper .bx-pager.bx-default-pager a.active { background-color:#ffc627; }

/*----------------------------------------------------------------------*/
/* Center */
/* 頁籤 */

/*----------------------------------------------------------------------*/
/* Btn Top */
.BtnTop { 
	text-align:center; z-index:1000; position:fixed; bottom:65px; right:15px;
	width:40px; height:40px; display:none; 
}
.BtnTop.TopFix { display:block; }
.BtnTop a { display:block; width:50px; height:50px; background-color:rgba(255,255,255,0.85);
	font-weight:600; color:#232222; position:relative; z-index:10000; box-shadow: 0 5px 20px rgba(0,0,0,0.2);
	font-size:14px; text-indent:-9999px;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	border-radius:50%;
}
.BtnTop a::after { content:''; position:absolute; top:50%; left:50%; width:8px; height:8px;
	margin-left:-4px; margin-top:-4px;
	border-top:2px solid #232222; border-left:2px solid #232222;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*----------------------------------------------------------------------*/
/* Footer */
#Footer{ background-color: #232222; position: relative; }
#Footer > div{ text-align: center; }
#Footer .social{ margin-bottom: 20px; display: flex; flex-wrap: wrap; justify-content: center; }
#Footer .social a{ text-align: center; padding-left: 5px; padding-right: 5px; }
#Footer .social span{ color: #fff; display: block; font-size: 1.125em; position: relative;
    width: 30px; height: 30px; line-height: 30px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
}
#Footer .social a:hover span{ background-color: #FFC627; color: #232222; }
#Footer .social .font_icon{ font-family: 'Font Awesome 5 Brands'; position: relative; }
#Footer .social .icon-facebook::before{ content: "\f39e"; }
#Footer .social .icon-youtube::before{ content: "\f167"; }
#Footer .social .icon-twitter::before{ content:''; background-image: url(../images/x-twitter.svg); background-repeat: no-repeat; background-position: center center; filter: invert(97%) sepia(5%) saturate(12%) hue-rotate(198deg) brightness(103%) contrast(101%); position: absolute; left: 12%; top: 12%; width: 76%; height: 76%; }
#Footer .social .icon-instagram::before{ content: "\f16d"; }
#Footer .social a:hover .icon-twitter::before { filter: invert(4%) sepia(1%) saturate(48%) hue-rotate(314deg) brightness(103%) contrast(79%); }

#Footer .toolBox{ padding-bottom: 30px; }
#Footer .toolBox ul li{ display: inline-block; position: relative; 
    padding: 5px 20px;
}
#Footer .toolBox ul li::after{ content: ""; display: block; width: 1px; height: 22px; 
    background-color: rgba(255,255,255,0.4);
    transform: skew(-30deg); position: absolute; right: 0; top:4px;
}
#Footer .toolBox ul li:last-child::after{ display: none; }
#Footer .toolBox a{ color: #fff; }
#Footer .toolBox a:hover{ color: #FFC627; }
#Footer .toolBox .font_icon{ margin-right: 5px; }
#Footer .toolBox .icon-contact::before{ content:"\f4b0"; }
#Footer .toolBox .icon-sitemap::before{ content:"\f0e8"; }
#Footer .toolBox .icon-support::before{ content:"\f059"; }

#Footer .deco{ 
    background: url('../images/footer_deco.png') no-repeat; 
    background-position: center center; width: 145px; height: 40px;
    position: absolute; bottom: 0; left: 50%; margin-left: -72px;
}

/*----------------------------------------------------------------------*/
/* popup 彈出視窗 */
.popupBox { position:fixed; top:0; bottom:0; left:0; right:0; margin:auto; 
    width:100%; height:100%; background:rgba(0,0,0,0.45); z-index:10050;
    overflow-x: hidden; overflow-y: auto;    
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.popupBox.close { opacity:0; visibility:hidden; }
.popupBox.open { opacity:1; visibility:visible; }
.popupBox > div{ background-color:#fff; position:relative; z-index:100000; text-align:left; 
    overflow:hidden; overflow-y:auto; box-sizing:border-box; padding:30px 30px;
    -webkit-overflow-scrolling: touch;
    -moz-box-shadow: 0 0 10px rgba(0,0,0,0.5);
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.5);
    box-shadow: 0 0 10px rgba(0,0,0,0.5);
}
.popupBox .close{ display:block; width:40px; height:40px; line-height:40px; 
    box-sizing:border-box; z-index:1; text-decoration:none; text-align:center; 
}
.popupBox .icon-close::before{ content: "\f00d"; font-weight: 200; font-size: 1.875em; }

/*----------------------------------------------------------------------*/
/* 表單 */
/* 表單群組 */
/* 注意 ------
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 { display: none;
    padding-left:0; padding-right:0; /*消除legend的左右padding*/
}
.FormGroup, .form_group_title, .FromSubGroup, .form_subgroup_title { box-sizing:border-box; }

.FormGroup { position:relative;
	border:0; background-color:#fff; padding:0; 
}
.FormGroup:last-child{ margin-bottom:40px; }

.FormGroup > *:last-child { margin-bottom:0; }
.form_group_title { position:absolute; top:0; display:block; margin-top:-20px; }
.form_group_title span { 
	background-color:#69493d; padding:0 25px; display:inline-block; font-size:1.5em;
	color:#fff; line-height:45px; font-family:'Times New Roman', 'Georgia', serif; 
/*	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;*/
}
.FormGroup > *:last-child { margin-bottom:0; }

.FromSubGroup { 
	border:1px solid #dfdfdf; background-color:#fff; padding:25px 20px 20px; margin-top:40px; margin-bottom:40px; position:relative; 
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	}
	.FromSubGroup + .FromSubGroup { margin-top:20px; }
.FromSubGroup > *:last-child { margin-bottom:0; }
.form_subgroup_title { position:absolute; top:0; display:block; margin-top:-17px; }
.form_subgroup_title span { 
	background-color:#dfdfdf; border:1px solid #cacaca; padding:0 10px; display:inline-block; 
	color:#000; font-size:0.9375rem; line-height:32px; font-weight:bold; 
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
}
.FromSubGroup > *:last-child { margin-bottom:0; }


/* 表單群組裡的元件 */
.FormGroupWarp .FormElmt input[type="text"], .FormGroupWarp .FormElmt input[type="password"], .FormGroupWarp .FormElmt input[type="number"], 
.FormGroupWarp .FormElmt input[type="date"], .FormGroupWarp .FormElmt input[type="month"], .FormGroupWarp .FormElmt input[type="week"], 
.FormGroupWarp .FormElmt input[type="time"], .FormGroupWarp .FormElmt input[type="datetime-local"], .FormGroupWarp .FormElmt input[type="email"], 
.FormGroupWarp .FormElmt input[type="search"], .FormElmt input[type="tel"], .FormGroupWarp .FormElmt input[type="url"], 
.FormGroupWarp .FormElmt textarea, .FormGroupWarp .FormElmt select{
	border: 1px solid #f1f1f1; color: #777;
    background-color: #f1f1f1;
    -webkit-transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
    -moz-transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out, border 0.25s ease-in-out;
    /* 內陰影樣式 */
    /*-webkit-box-shadow: inset 1px 1px 8px #ccc;
    -moz-box-shadow: inset 1px 1px 8px #ccc;
    box-shadow: inset 1px 1px 8px #ccc;*/ 
}

.FormGroupWarp .FormElmt input[type="text"]:focus, .FormGroupWarp .FormElmt input[type="password"]:focus, .FormGroupWarp .FormElmt input[type="file"]:focus, 
.FormGroupWarp .FormElmt input[type="number"]:focus, .FormGroupWarp .FormElmt input[type="date"]:focus, .FormGroupWarp .FormElmt input[type="month"]:focus,
.FormGroupWarp .FormElmt input[type="week"]:focus, .FormGroupWarp .FormElmt input[type="time"]:focus, .FormGroupWarp .FormElmt input[type="datetime-local"]:focus,
.FormGroupWarp .FormElmt input[type="email"]:focus, .FormGroupWarp .FormElmt input[type="search"]:focus, .FormGroupWarp .FormElmt input[type="tel"]:focus,
.FormGroupWarp .FormElmt input[type="url"]:focus,
.FormGroupWarp .FormElmt textarea:focus, .FormGroupWarp .FormElmt select:focus{
    background-color:#fff; color:#333; border: 1px solid #232222; 
}
.FormTableWrap{ margin-top:10px; border-bottom: 1px solid #cccccc; }
.FormTableWrap:last-child{ border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.FormGroupWarp .FormTable{ margin-bottom:0; }
.FormGroupWarp .FormElmt select{ margin-right: 5px; }
.FormTable { width:100%; margin-bottom:20px; color:#232222; }
.FormTable > tbody > tr > th::after{ content:'：';}
.FormTable > tbody > tr > th, .FormTable > tbody > tr > td { font-size:100%; }
.FormTable > tbody > tr > th { font-weight:400; line-height:28px; position:relative; }
.FormTable > tbody > tr > th span, .FormTable span.required { color:#be0000; }
.FormTable > tbody > tr > td { line-height:35px; }

/* 表單內按鈕 */
.FormTable .inline_btn { padding-right:6px; }
.FormTable .inline_btn span { 
	border:1px solid #ba451a; margin-left:6px; display:inline-block; vertical-align:bottom;
	background: -webkit-linear-gradient(top,  #e67b52 0%, #ba451a 100%); 
	background: -moz-linear-gradient(top,  #e67b52 0%, #ba451a 100%); 
	background: linear-gradient(to bottom,  #e67b52 0%, #ba451a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e67b52', endColorstr='#ba451a',GradientType=0 ); /* IE6-9 */
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
	}
	.FormTable .inline_btn span:hover {
		border:1px solid #fd2814;
		background: -webkit-linear-gradient(top,  #fe9b3b 0%, #fd2814 100%); 
		background: -moz-linear-gradient(top,  #fe9b3b 0%, #fd2814 100%); 
		background: linear-gradient(to bottom,  #fe9b3b 0%, #fd2814 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fe9b3b', endColorstr='#fd2814',GradientType=0 ); /* IE6-9 */
		}
.FormTable .inline_btn span > * { 
	padding-left:15px; padding-right:15px; padding-top:0; padding-bottom:0; border:0; color:#fff; height:30px; line-height:30px; box-sizing:border-box; 
	}
.FormTable .inline_btn span[class] > * { background:url("../images/icon_inline_btn.png") no-repeat; }
	.FormTable .inline_btn .search input { background-position:15px 0; padding-left:30px; }

/*----------------------------------------------------------------------*/
/* 搜尋表單 */
/* 表單元件 */
.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"] { line-height:45px; height:45px; }

.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 { margin-bottom: 6px; vertical-align:top; resize: vertical; }

.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 {
	border:1px solid #cccccc; background-color:#fff; font-size:100%; box-sizing:border-box;
    font-family: 'HelveticaNeue', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif; 
    -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    -moz-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
/*	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;*/
}
	
.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 textarea{
	padding-left:8px;
	color:#7f7f7f; 
}
.FormElmt select { line-height:45px; background-color:#fff; padding:5px 5px 4px; height:45px; color:#7f7f7f; 
    transition:border-color 0.3s ease-in-out;
}	
.FormElmt textarea{ padding-top:8px; padding-bottom:8px;}
.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: 0; 
    /* 內陰影樣式 */
	border:1px solid #232222;
	-webkit-box-shadow: inset 1px 1px 10px #f5f5f5, 0 0 6px #ccc;
	-moz-box-shadow: inset 1px 1px 10px #f5f5f5, 0 0 6px #ccc;
	box-shadow: inset 1px 1px 10px #f5f5f5, 0 0 6px #ccc;
}
	
.FormElmt hr { margin:25px 0; }
.FormElmt input.addr { margin-top:8px; display:block; }
.FormElmt .gender { display:inline-block; }
.FormElmt .gender input[type="radio"] { margin-left:25px; }
.FormElmt .w40 { width:40px; }
.FormElmt .w60 { width:60px; }
.FormElmt .w80 { width:80px; }
.FormElmt .w150 { width:150px; }
.FormElmt .w100 { width:100px; }
.FormElmt .w200 { width:200px; }
.FormElmt .w250 { width:250px; }
.FormElmt .w300 { width:100%; max-width:300px; }
.FormElmt .w400 { width:100%; max-width:400px; }
.FormElmt .w500 { width:100%; max-width:500px; }
.FormElmt .fullwidth { width:100%; }
.FormElmt .date { width:120px; }
.FormElmt .dev-calendar { width:150px; }
.FormElmt .note { color:#e60000; line-height:160%; font-size:92.85%; display:inline-block; }
.FormElmt .link{ color:#008aff; text-decoration:underline; }
.FormElmt .link:hover{ color:#444; }

.input_group > span { display:inline-block; white-space:nowrap; margin-right:8px; }
.input_group .fullwidth { margin-right:0; }
.input_table { overflow:hidden; border-top:1px solid #e0d9cf; border-left:1px solid #e0d9cf; }
.input_table li { float:left; padding:10px; border-bottom:1px solid #e0d9cf; border-right:1px solid #e0d9cf; box-sizing:border-box; font-size:87.5%; color:#707070; line-height:150%; }
.input_table li a { display:block; color:#707070; text-decoration:none; }
.input_table li a span { margin:0 5px; color:#ff4c11; }
.input_table li a:hover { color:#ff4c11; }

/* checkbox/radio群組 */
.FormElmt .input_group.inline { display:inline-block; margin-left:10px; }
.FormElmt .input_group > div { display:inline; margin-right:10px; line-height:32px; }
.FormElmt .input_group.item_block > div { display:block; margin-right:0; }
.FormElmt .input_group .fullwidth { margin-right:0; }

/* checkbox/radio樣式 */
.radio-btn input[type="radio"], .check-box input[type="checkbox"] {
    visibility: hidden;
}
/*Custom checkbox button*/
.check-box {
    width: 22px;
    height: 22px;
    cursor: pointer;
    display: inline-block;
    margin: 0 7px 0 0;
    position: relative;
    overflow: hidden;
    vertical-align:middle;
    box-shadow: 0 0 1px #ccc;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(47%, rgba(246, 246, 246, 1)), color-stop(100%, rgba(237, 237, 237, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed', GradientType=0);
    border: 1px solid #bbb;
}
.check-box i {
    background: url('../images/check_mark.png') no-repeat center center;
    position: absolute;
    left: 3px;
    bottom: -15px;
    width: 16px;
    height: 16px;
    opacity: .5;
    /* 動畫 */
    /* -webkit-transition: all 400ms ease-in-out;
    -moz-transition: all 400ms ease-in-out;
    -o-transition: all 400ms ease-in-out;
    transition: all 400ms ease-in-out; */
    -webkit-transform:rotateZ(-180deg);
    -moz-transform:rotateZ(-180deg);
    -o-transform:rotateZ(-180deg);
    transform:rotateZ(-180deg);
}
.checkedBox {
    -moz-box-shadow: inset 0 0 5px 1px #bbb;
    -webkit-box-shadow: inset 0 0 5px 1px #bbb;
    box-shadow: inset 0 0 5px 1px #bbb;
    /*border-bottom-color: #fff;*/
}
.checkedBox i {
    bottom: 2px;
    -webkit-transform:rotateZ(0deg);
    -moz-transform:rotateZ(0deg);
    -o-transform:rotateZ(0deg);
    transform:rotateZ(0deg);
}
/*Custom radio button*/
 .radio-btn {
    width: 20px;
    height: 20px;
    display: inline-block;
    /*float: left;*/
    margin: 0 7px 0 0;
    vertical-align:middle;
    cursor: pointer;
    position: relative;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 1px solid #bbb;
    box-shadow: 0 0 1px #bbb;
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(47%, rgba(246, 246, 246, 1)), color-stop(100%, rgba(237, 237, 237, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 1) 47%, rgba(237, 237, 237, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed', GradientType=0);
}
.checkedRadio {
    -moz-box-shadow: inset 0 0 5px 1px #ccc;
    -webkit-box-shadow: inset 0 0 5px 1px #ccc;
    box-shadow: inset 0 0 5px 1px #ccc;
}
.radio-btn i {
    border: 1px solid #bbb;
    width: 10px;
    height: 10px;
    position: absolute;
    left: 4px;
    top: 4px;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
}
.checkedRadio i {
    background-color: #777;
    border: 1px solid #777;
}

/* 驗證碼 */
.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:100px !important; margin-bottom: 0; 
}
.FormElmt .randomcode .img{ max-width: 100px; }
.FormElmt .randomcode .img img { max-width: 100%; max-height: 100%; padding-top:2px; padding-bottom:2px; }
.FormElmt .randomcode div.btn { padding:0; border:0; }
.FormElmt .randomcode div.btn >* { 
	background: url(../images/icon_randomcode.png) no-repeat 0 10px;
	border: 0; margin: 0; display: inline-block; 
	padding: 0 10px 0 18px;
	height: 35px;
	font-size: 100%;
	line-height: 35px;
	text-decoration: underline;
}
.FormElmt .randomcode .btn .refresh input[type="button"]{ font-size: 1.125em; color: #777;
    font-family: 'HelveticaNeue', 'Helvetica', 'Arial', sans-serif;
}
.FormElmt .randomcode .btn .play{ background-position: 5px -77px; }
.FormElmt .randomcode div.btn input.refresh{ background-position: 5px 10px; }
.FormElmt .randomcode div.btn input:hover { color:#777; }
.FormElmt .randomcode div.btn input.refresh:hover { color:#444;}
.FormElmt .randomcode .btn .play:hover{ color:#444; }

/* 按鈕 */
.BtnCommon { clear:both; text-align:center; }
	.BtnCommon.tl { text-align:left; }
	.BtnCommon.tr { text-align:right; }
.BtnCommon span, .BtnCommon a, .BtnCommon input { display:block; 
    font-family: 'HelveticaNeue', "Microsoft JhengHei", "Heiti TC", 'Helvetica', 'Arial', sans-serif; 
}
	.BtnCommon.large a, .BtnCommon.large input { height:60px; }
	.BtnCommon.mid a, .BtnCommon.mid input { height:35px; line-height:35px; }
	.BtnCommon.small a, .BtnCommon.small input { height:24px; line-height:24px; }

.BtnCommon div { display:inline-block; margin-left:10px; }
.BtnCommon div:first-child { margin-left:0; }
.BtnCommon span { 
	position:relative; z-index:1;
	box-sizing:border-box;
	background-color:#232222;
	-webkit-transition:all 0.3s ease;
	-moz-transition:all 0.3s ease;
	transition:all 0.3s ease;
}
.BtnCommon div[class] span::before { 
	/*display:block; position:absolute; top:50%; left:15px; width:20px; height:20px; margin-top:-10px; content:''; 
	background:url("../images/icon_btn_common.png") no-repeat;*/
}
.BtnCommon span::after { 
	display:block; position:absolute; top:0; left:0; width:100%; height:100%; content:''; 
}

.BtnCommon a, .BtnCommon input { color:#fff; font-weight:400; box-sizing:border-box; position:relative; z-index:2; cursor: pointer;}
	.BtnCommon.large a, .BtnCommon.large input { font-size:100%; padding:0 45px 0 60px; box-sizing:border-box; }
	.BtnCommon.mid a, .BtnCommon.mid input { padding-left:15px; padding-right:15px; font-size:100%; }
	.BtnCommon.small a, .BtnCommon.small input { padding-left:10px; padding-right:10px; font-size:14px; }
	/*.BtnCommon.large div[class] a, .BtnCommon.large div[class] input { padding-left:45px; }*/
	.BtnCommon.mid div[class] a, .BtnCommon.mid div[class] input { padding-left:40px; }
	.BtnCommon.small div[class] a, .BtnCommon.small div[class] input { padding-left:25px; }

.BtnCommon span a { text-decoration:none; }
.BtnCommon span input { border:0; background-color:transparent; margin:0; }
	.BtnCommon div.submit span::before { background-position:0 0; }
	.BtnCommon div.reset span::before { background-position:0 -20px; }
	.BtnCommon.mid div[class] span::before { left:15px; }

.BtnCommon div:hover span { background-color:#FFC627; }
.BtnCommon div:hover input { color: #232222; }
	
.BtnCommon.btn_form { margin-top:15px; margin-bottom:15px; }
.BtnCommon.btn_form div { margin:5px; }

.BtnCommon.large input{ font-size:1.25em; }
.BtnCommon div.submit span { background-color:#232222; }
.BtnCommon div.submit:hover span { background-color:#FFC627; }
.BtnCommon div.reset span { background-color:#777777; }
.BtnCommon div.reset:hover span { background-color:#bbb; }
.BtnCommon.large div.reset:hover span { background-color:#777; }

.BtnCommon.large div[class] span::before { left:25px; }
.BtnCommon.large span{ position:relative; }
/*.BtnCommon.large span::before{ 
	content:''; display:block; position:absolute; top:50%; left:0;
	background: url('../images/icon_btn_common.png') no-repeat;
    background:none; font-family: 'Font Awesome 5 Pro'; font-weight: 300;
	width:20px; height:20px; margin-top:-10px; color:#fff; font-size:20px;
    margin-left: 10px;
}*/
/*.BtnCommon div.submit span::before{ content:'\f00c'; }
.BtnCommon div.reset span::before{ content:'\f00d';  }*/

.BtnCommon.large .return input{ width:160px; }
.BtnCommon.large .return span::before{ background-position:0 -60px; }
.BtnCommon.large .button span::before{ background-image:none; display:none; }
.BtnCommon.large .submit > span, .BtnCommon.large .reset > span{ 
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.BtnCommon.large .submit input, .BtnCommon.large .reset input{ 
    padding:0 45px;
}
.BtnCommon.large .reset span{ background-color:#888; }
.BtnCommon.large .reset span:hover{ background-color:#bbb; }

/*----------------------------------------------------------------------*/
/* datepicker共通設定 */
.ui-datepicker { 
	background-color:#fff; padding:15px 8px 7px 8px; 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:15px; width:30px; height:30px; cursor:pointer; 
	}
	.ui-datepicker-prev { left:0; }
	.ui-datepicker-next { right:0; }
.ui-datepicker-prev span, .ui-datepicker-next span { 
	display:block; position:absolute; top:50%; left:50%; margin:-6px 0 0 -6px; width:12px; height:12px; background:url("../images/icon_datepicker.png") no-repeat; 
	text-indent:-10000px; 
	}
	.ui-datepicker-prev span { background-position:0 0; }
	.ui-datepicker-next span { background-position:0 -12px; }
	.ui-datepicker-prev:hover span { background-position:-12px 0; }
	.ui-datepicker-next:hover span { 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; }
.ui-datepicker-title select.ui-datepicker-year { margin-right:2px; }
.ui-datepicker-title select.ui-datepicker-month { margin-left:6px; }
.ui-datepicker-title select.ui-datepicker-month:first-child { margin-left:0; }
.ui-datepicker-title select.ui-datepicker-month + select.ui-datepicker-year { margin-left:6px; margin-right:0; }
.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:#c40d1a; }
		.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:#c40d1a;}
	.ui-datepicker-current-day a { border:1px solid #21293c; }

/*----------------------------------------------------------------------*/
/* 列表搜尋 */
.ListSearch{ overflow:hidden; }
.ListSearch .item{ display:inline-block; max-width:100%; line-height:45px; position:relative; 
    margin-right:10px;
}
.ListSearch .item:last-child{ margin-right:0; }
.ListSearch .item span.label::after{ content:'：'; }
.ListSearch.FormElmt input[type="text"], .ListSearch.FormElmt select{ 
    vertical-align:top; margin-bottom:0; background-color:#fff;
}
.ListSearch.FormElmt{ margin-bottom:15px;}
.ListSearch.FormElmt .item{ position:relative; }
.ListSearch.FormElmt .item .label{ display: none;
    color:#232222; font-size:0.938em; position:absolute; top:0; left:0; line-height:20px; 
}
.ListSearch.FormElmt select{ padding:0 5px; }
.ListSearch.FormElmt .BtnCommon{ position:inherit; display:inline-block; border: 0px;}
.ListSearch.FormElmt .BtnCommon input[type="submit"]{ padding:0; line-height:45px; width:50px; font-size:100%; }

/*----------------------------------------------------------------------*/
/*tinyscrollbar*/
.tableWrap
{
/*    width:251px;
    margin:0 0 10px;*/
}

.tableWrap .viewport
{
/*    width:236px;
    height:125px;*/
    overflow:hidden;
    position:relative;
	margin: 0;
}

.tableWrap .overview
{
    list-style:none;
/*    width:1416px;*/
    padding:0;
    margin:0;
/*    position:absolute;*/
    left:0;
    top:0;
	margin: 0;
}

/*.tableWrap .overview img
{
    float:left;
}*/

.tableWrap .scrollbar
{
    /*background:transparent url(../images/bg-scrollbar-track-x.png) no-repeat 0 0;*/
    position:relative;
    margin:0 0 5px;
    clear:both;
    height:4px;
}

.tableWrap .track
{
    /*background:transparent url(../images/bg-scrollbar-trackend-x.png) no-repeat 100% 0;*/
	background-color:#dbdbdb;
    width:100%;
    height:4px;
    position:relative;
	margin: 0;
}

.tableWrap .thumb
{
    /*background:transparent url(../images/bg-scrollbar-thumb-x.png) no-repeat 100% 50%;*/
	background-color:#656565;
    height:8px;
    cursor:pointer;
    overflow:hidden;
    position:absolute;
    left:0;
    top:-2px;
	margin: 0;
	-webkit-border-radius:6px; 
	-moz-border-radius:6px; 
	border-radius:6px;
	-webkit-transition: background-color 0.2s ease-out;
	-moz-transition: background-color 0.2s ease-out;
	transition: background-color 0.2s ease-out;
}
.tableWrap .thumb:hover{ background-color:#df7b39; }

.tableWrap .thumb .end
{
    /*background:transparent url(../images/bg-scrollbar-thumb-x.png) no-repeat 0 50%;*/
    overflow:hidden;
    height:8px;
    width:5px;
	margin: 0;
}

.tableWrap .disable
{
    display:none;
}

.noSelect
{
    user-select:none;
    -o-user-select:none;
    -moz-user-select:none;
    -khtml-user-select:none;
    -webkit-user-select:none;
}

/*----------------------------------------------------------------------*/
/*
    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:10020; 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; margin-top:10px; margin-bottom:10px; }
#colorbox_thum a {
    display:block; float:left; overflow: hidden;
    text-align:center; vertical-align:middle; 
}
#colorbox_thum a * { vertical-align:middle; }
#colorbox_thum a span { display:block; height:100%; width: 100%; background-repeat: no-repeat;
    background-size: cover; background-position: center center; padding-bottom: 63.63636363%;   
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#colorbox_thum a span:hover { opacity: 0.85;
    -webkit-transform: scale(1.02);
    -moz-transform: scale(1.02);
    transform: scale(1.02);
}

/*#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; }


/*----------------------------------------------------------------------*/
/* jScrollPane-卷軸 */
.jspContainer { overflow: hidden; position: relative; }
.jspPane { position: absolute; }
.jspVerticalBar { background: #333766; height: 100%; position: absolute; right: 0; top: 0; width: 16px; }
.jspHorizontalBar { background: red; bottom: 0; height: 16px; left: 0; position: absolute; width: 100%; }
.jspCap { display: none; }
.jspHorizontalBar .jspCap { float: left; }
.jspTrack { background: #dde; position: relative; }
.jspDrag { background: #bbd; cursor: pointer; left: 0; position: relative; top: 0; }
.jspHorizontalBar .jspTrack, .jspHorizontalBar .jspDrag { float: left; height: 100%; }
.jspArrow { background: #50506d; cursor: pointer; direction: ltr; display: block; margin: 0; padding: 0; text-indent: -20000px; }
.jspDisabled { background: #80808d; cursor: default; }
.jspVerticalBar .jspArrow { height: 16px; }
.jspHorizontalBar .jspArrow { float: left; height: 100%; width: 16px; }
.jspVerticalBar .jspArrow:focus { border: 1px solid red; outline: none; }
.jspCorner { background: #eeeef4; float: left; height: 100%; }

/* Yuk! CSS Hack for IE6 3 pixel bug :( */
* html .jspCorner { margin: 0 -3px 0 0; }


/*----------------------------------------------------------------------*/
/* 測試用menu */
.ifun_text_menu { position:fixed; top:0; left:0; z-index:10200; }
.ifun_text_menu::after{ content: ""; clear: both; display: block; }
.ifun_text_menu a { display:block; text-decoration:none; font-family: "微軟正黑體", "Microsoft JhengHei", sans-serif;  }
.ifun_text_menu > ul > li > a { text-indent:-10000px; width:40px; height:40px; }
.ifun_text_menu > ul ul { display:none; position:absolute; top:40px; left:0; width:300px; 
    box-shadow:0 0 10px rgba(0,0,0,0.15); background-color: #fff;
    padding-left: 10px; box-sizing: border-box;
   /* height: 400px; overflow: auto; */
}
.ifun_text_menu > ul > li:hover > ul { display:block; } 
.ifun_text_menu > ul ul > li a{ position: relative; padding-left: 8px; }
.ifun_text_menu > ul ul > li a::before{ content: "-"; display: inline-block; position: absolute; top: 5px; left: 0; }
.ifun_text_menu > ul ul > li a:focus, .ifun_text_menu > ul ul > li a:hover{ color:#e33f3f; }
.ifun_text_menu > ul ul > li > ul { top:80px; left:150px; width:150px; }
.ifun_text_menu > ul ul > li:hover > ul { display:block; } 
.ifun_text_menu > ul ul li { background-color:rgba(255,255,255,0.9); }
.ifun_text_menu > ul ul a { padding:4px 10px 4px 0; line-height:180%; font-size:14px; color:#333; 
    line-height:140%; box-sizing: border-box;
}
.ifun_text_menu > ul ul a:hover{ font-weight:bold; }