@charset "utf-8";
/* CSS Document */
@import url("reset.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;700&family=Noto+Serif+TC:wght@400;600&display=swap");

body {
  	font-family: Arial, "Noto Sans TC", "微軟正黑體", Helvetica, Heiti TC, "メイリオ", sans-serif;
	font-size:15px;
	color:#333333;
	-webkit-text-size-adjust:none;
	image-rendering:-webkit-optimize-contrast;
}

header {
	position:fixed;
	top:0;
	bottom:0;
	width:250px;
	z-index:1000;
	background:#e9e9e9;
	box-shadow:0 0 15px rgba(0,0,0,0.3);
}

header .out {
	padding:0;
}

header .logo {
	display:block;
	width:170px;
	margin:50px auto 0;
}

header .logo img {
	width:100%;
}

header .mb, header .mb_bt {
	display:none;
}

header .pc .top {
	margin:25px 0;
}

header .pc .top .list a {
	color:#004f8e;
}

header .pc .top .list div,
header .pc .top .list > a {
	display:block;
	font-size:18px;
	color:#004f8e;
	font-weight:500;
	padding:10px 35px;
	cursor:pointer;
	transition:0.2s;
	text-align:center;
}

header .pc .top .list:hover div,
header .pc .top .list:hover > a {
	color:#000;
	background:#f6f3ed;
}

header .pc .bottom {
	width:180px;
	margin:0 auto;
	text-align:center;
}

header .pc .bottom a {
	display:block;
	color:#878787;
	font-weight:normal;
}

header .pc .bottom a:hover {
	color:#333333;
}



/*========== Banner ===========*/
.banner_area {
	clear: both;
	position: relative;
	height:100%;
	overflow:hidden;
}

.banner_area img { width:100%; }

.banner .bx-wrapper .bx-pager, 
.banner .bx-wrapper .bx-controls-auto{
	bottom:30px;
	z-index:99;
}

.banner .bx-wrapper .bx-pager.bx-default-pager a {
	background: none;
	border: 1px solid #FFF;
	border-radius: 100%;
}

.banner .bx-wrapper .bx-pager.bx-default-pager a:hover {
	background: none;
}

.banner .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #FFF;
}



/*========== Marquee ===========*/
.marquee_box {
	margin-top:-4px;
	background: #2b8fdb;
	width:100%;
	z-index:99;
}

.marquee_box div.txt {
	padding:0 10px;
	line-height:50px;
	text-align:center;
}

.marquee_box div.txt ul li {
	padding:0 10px;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
	color:#fff;
}

.marquee_box div.txt ul li a {
	font-size:18px;
	color:#fff;
}

.marquee_box div.txt ul li a:hover {
	text-decoration:underline;
}



/*========== Main ===========*/
.webout {
	max-width:2000px;
	margin:0 auto;
	overflow:hidden;
	position:relative;
}

article, footer{
	margin-left:250px;
	background:#fff;
}

.main_content_out {
	max-width:90%;
	margin:0 auto;
	margin-top:20px;
	margin-bottom:80px;
}

.guide {
	font-size:15px;
	color:#333;
	text-align:right;
	padding-top: 15px;
}

.guide a {
	color:#333;
}

@media (max-width: 800px) {
	.guide {
		display:none;
	}
}

.title_box {
	position:relative;
	margin-top:50px;
	margin-bottom:35px;
	text-align:center;
}

.title_box em {
	display:block;
	font-weight:700;
	color:#259f92;
	font-size:40px;
	font-family:"Roboto","Noto Sans TC",sans-serif;
	text-transform:uppercase;
}

.title_box h2 {
	font-weight:400;
	letter-spacing:2px;
	font-size:20px;
	color:#000;
}

.title_box h2::before,.title_box h2::after {
	content:'';
	display:inline-block;
	vertical-align:middle;
	width:10px;
	height:1px;
	background-color:#434343
}

.title_box h2::before {margin-right:10px}
.title_box h2::after {margin-left:10px}

.no_data {
	text-align: center;
	padding-top: 30px;
	padding-bottom: 30px;
}

#theForm .error {
	color: #F00;
	font-size:15px;
	font-weight: normal;
}

.col-1 {width:100%;}
.col-2 {width:50%;}
.col-3 {width:33.33%;}
.col-4 {width:25%;}
.col-5 {width:20%;}



/*========== Side Menu ===========*/
.side_menu {
	padding: 0 0 80px;
}

.side_menu ul {
	text-align: center;
}

.side_menu li {
    display: inline-block;
}

.side_menu a {
    position: relative;
    display: block;
    margin: 0 3px;
    padding: 8px 18px;
    border: 1px solid #004f8e;
    font-size: 15px;
    color: #004f8e;
    border-radius: 50px;
}

.side_menu a:hover {
	color: #fff;
	background-color: #004f8e;
}

.side_menu a.current {
	color: #fff;
	background-color: #004f8e;
}

.side_menu .side_menu_sub {
	position: absolute;
	display:block;
	left: 50%;
	transform: translate(-12%, 5%);
}

.side_menu .side_menu_sub a {
    padding: 8px 10px;
    border: 0px;
    font-size: 15px;
    color: #004f8e;
}

.side_menu .side_menu_sub a:hover {
	background-color: #fff;
	text-decoration:underline;
	opacity: 0.6;
}

.dropDownBox {
	display: none;
}

@media (max-width: 1000px) {
	.side_menu {
		display: none;
	}

	.dropDownBox {
		position: relative;
		display: block;
		margin-top: 10px;
		margin-bottom: 30px;
	}

	.dropDownBox i {
		display: none;
	}

	.dropDownBox .txt {
		padding-left: 15px;
	}

	.dropDownBox > div {
		position: relative;
		line-height: 40px;
		padding: 0 10px;
		background:#fff;
		border: 1px solid #ccc;
	}

	.dropDownBox > div::before {
		content: '';
		position: absolute;
		width: 1px;
		height: 100%;
		top: 0;
		right: 40px;
		background-color: #ccc;
	}

	.dropDownBox > div::after {
		position: absolute;
		width: 40px;
		height: 100%;
		display: block;
		color: #ccc;
		top: 0;
		right: 0;
		content: '\f358';
        font-family: "Font Awesome 5 Free";
		font-size: 24px;
		text-align: center;
		transition: all .4s ease;
	}

	.dropDownBox > ul {
		display: none;
		transition: all .3s ease-out;
		box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);
	}

	.dropDownBox.open > ul {
		display: block;
		position: absolute;
		background-color: #fff;
		border: 1px solid #ccc;
		left: 0;
		right: 0;
		z-index: 10;
		top: 41px;
	}

	.dropDownBox.open > div::after {
		-webkit-transform: rotateX(-180deg);
		 transform: rotateX(-180deg);
	}

	.dropDownBox > ul a {
		display: block;
		padding: 10px;
		color: #000;
	}

	.dropDownBox > ul a:hover {
		color: #004f8e;
	}

	.dropDownBox > ul a.current {
		background-color: #004f8e;
		color: #fff;
	}

	.dropDownBox.open > ul .side_menu_sub a {
		padding: 5px;
	}
 }



/*========== File ===========*/
.att_file_title {
    clear: both;
    text-align: left;
    padding-top: 20px;
    padding-bottom: 5px;
    font-size: 18px;
    font-weight: bold;
}

.att_file_list {
    text-align: left;
    padding-top: 5px;
}

.att_file_list a {
    color: #535353;
    font-size: 16px;
	line-height:1.5;
}

.att_file_list a:hover {
    color: #ccc;
}



/*========== Button ===========*/
.submit {
	padding:10px 26px;
	background:#83e6db;
	border:0px;
	font-size:15px;
	color:#000;
    font-weight: normal;
	cursor:pointer;
}

.submit:hover {
	color:#fff;
	background:#2b8fdb;
}

.button {
    width: 180px;
    height: 45px;
    display: block;
    background-color: #83e6db;
    color: #000;
	font-size:16px;
    text-align: center;
    line-height: 45px;
}

.button:hover {
    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, 0.31);
    box-shadow: 0 3px 20px rgba(0, 0, 0, 0.31);
    color: #fff;
    background-color: #2b8fdb;
}



/*========== Pages ===========*/
.Pages {
    text-align: center;
    margin-top: 60px;
    margin-bottom: 20px;
}

.Paginator {
    font-size: 13px;
    line-height: 22px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 6px;
}

.Paginator a,.pageList .this-page {
	padding: 2px 6px;
	color: #9a9a9a;
	background: #ffffff;
	border: solid 1px #cecccc;
}

.Paginator a:visited {
	padding: 2px 6px;
	color: #9a9a9a;
	background: #ffffff;
	border: solid 1px #cecccc;
}

.Paginator .AtStart {
	margin-right: 20px;
	padding: 2px 6px;
	background: #ffffff;
	border: solid 1px #cecccc;
	color: #9a9a9a;
}

.Paginator .Prev {
	margin-right: 20px;
	padding: 2px 6px;
	background: #ffffff;
	color: #9a9a9a;
	border: solid 1px #cecccc;
}

.Paginator .break {
	bpadding: 2px 6px;
	border: none;
	background: #ffffff;
	color: #9a9a9a;
}

.Paginator .Next {
	margin-left: 20px;
	padding: 2px 6px;
	color: #9a9a9a;
	background: #ffffff;
	border: solid 1px #cecccc;
}

.Paginator .AtEnd {
	margin-left: 20px;
	padding: 2px 6px;
	background: #ffffff;
	border: solid 1px #cecccc;
	color: #9a9a9a;
}

.Paginator .this-page {
	padding: 2px 6px;
	vertical-align: top;
	background: #ffffff;
	border: solid 1px #cecccc;
	font-weight: bold;
	color: #FF0084;
}

.Paginator a:visited:hover,.Paginator a:hover,.Paginator a:active {
	color: #ffffff;
	background: #0063DC;
	border-color: #ffffff;
}

.Pages div.Results {
	text-align: center;
	margin-top: 8px;
	font: 11px/15px Arial,Helvetica;
	color: #9a9a9a;
}



/*========== Footer ===========*/
footer {
	background:#333333;
	clear: both;
}

footer .out {
	max-width:1130px;
	padding:45px 20px;
}

footer .text {
	display:flex;
}

footer .list {
	position:relative;
}

footer .copyright {
	font-size:15px;
	line-height:1.6;
	padding:0 60px;
	width:85%;
	color: #ccc;
}

footer .copyright li {
	margin-bottom:0.6em;
}

footer .copyright li:last-child {
	margin-bottom:0;
}

.foot_design {
	padding-top: 5px;
	font-size:13px;
}

.foot_design a {
	color: #fff;
}

.foot_design a:hover {
	text-decoration:underline;
}

footer .qrcode {
	text-align:right;
}

footer .qrcode img {
	width:123px;
	margin-top:-10px;
}

@media only screen and (max-width:1300px) {
    footer .copyright {
        font-size:14px;
    }
}



/*========== Mobile ===========*/
@media only screen and (max-width:1000px) {
	article {
		margin-top:60px;
	}
	
	article, footer {
		margin-left:0;
	}
	
	header {
		bottom:auto;
		left:0;
		width:100%;
		box-shadow:0 2px 2px rgba(0,0,0,0.1);
	}
	
	header .out {
		height:60px;
	}
	
	header .logo {
		width:40px;
		margin:0 auto;
		position:relative;
		top:50%;
		transform:translateY(-50%);
	}
	
	header .pc {
		display:none;
	}
	
	header .mb_bt,
	header .mb {
		display:block;
	}
	
	header .mb_bt {
		position:absolute;
		top:50%;
		left:20px;
		width:40px;
		height:40px;
		margin-top:-20px;
		cursor:pointer;
	}
	
	header .mb_bt span {
		display:block;
		height:2px;
		width:30px;
		position:absolute;
		top:0;
		left:0;
		bottom:0;
		margin:auto;
		background:#775c46;
		transition:0.3s;
	}
	
	header .mb_bt span:before,
	header .mb_bt span:after {
		content:"";
		height:2px;
		position:absolute;
		left:0;
		background:#775c46;
		transition:0.3s;
	}
	
	header .mb_bt span:before {
		top:-8px;
		width:40px;
	}
	
	header .mb_bt span:after {
		top:8px;
		width:20px;
	}
	
	header .mb_bt:hover span,
	header .mb_bt:hover span:before,
	header .mb_bt:hover span:after {
		width:40px;
	}
	
	header .mb_bt.active span:before {
		width:40px;
		top:0;
		transform:rotate(45deg);
	}
	
	header .mb_bt.active span:after {
		width:40px;
		top:0;
		transform:rotate(-45deg);
	}
	
	header .mb_bt.active:hover span {
		width:40px;
		transform:rotate(-90deg);
	}
	
	header .mb_bt.active span {
		background:none;
	}

	header .mb {
		position:fixed;
		top:60px;
		bottom:0;
		left:0;
		width:100%;
		overflow-y:auto;
		background:#EEEEEE;
		transform:translateX(-100%);
		transition:0.3s ease-in-out;
		-webkit-overflow-scrolling:touch;
	}
	
	header .mb.active {
		transform:translateX(0);
	}
	
	header .mb .top {
		padding:40px 40px 100px;
	}
	
	header .mb .top .list a {
		color:#333333;
	}

	header .mb .top .list > a,
	header .mb .top .list div {
		display:block;
		font-size:18px;
		font-weight:normal;
		color:#333333;
		padding:1em 0;
		position:relative;
		cursor:pointer;
		transition:0.2s;
		text-align:center;
	}
		
	header .mb .top .list > a:hover,
	header .mb .top .list div:hover {
		color:#775c46;
	}
	
	header .mb .top .list > a:before,
	header .mb .top .list div:before {
		content:"";
		position:absolute;
		left:0;
		bottom:0;
		width:100%;
		height:1px;
		background:#BEBEBE;
		border-bottom:#FFFFFF 1px solid;
	}
	
	header .mb .top .list ul {
		display:none;
	}	
	
	footer {
		padding:25px 0;
		text-align:center;
	}
	
	footer .text{
		display:block;
	}
	
	footer .qrcode {
		display:inline-block;
	}
	
	footer .qrcode img {
		margin:30px 0 0;
	}
}


@media (max-width:450px) {
	.col-2, .col-3, .col-4, .col-5 {
		float:none;
		width:100%;
	}
}

