@import url('https://fonts.googleapis.com/earlyaccess/notosanstc.css');

*:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

*:hover{ transition: .25s }

/*== Wrapper ==*/
.wrapper{ width: 100%; max-width: 1500px; margin: 0 auto; background: #fff; overflow: hidden;  font-family: 'Noto Sans TC'; }

.pull-left{ float: left; }
.pull-right{ float: right }
.clear{ clear:both }

/*== Header ==*/
.topHeader{ position:relative; float:left; width:100%; z-index:2; }

.topHeader header{ background: #fff; }
.topHeader header > .wrapper{ max-width: 1300px; }
.topHeader header h1{ margin: 30px 0; }

.topHeader .form-group{ text-align: center; background: #f3f3f3; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; padding:5px 15px; }
.topHeader .form-group li{ display: inline-block; line-height: 30px;text-align: center; }
.topHeader .form-group li a{ font-size: 16px; color: #000033 }
.topHeader .form-group li + li a{ color:#0066cc; }
.topHeader .form-group li + li::after{ content: "│"; color: #414166; display: inline-block; vertical-align: top; float: left; padding: 0 10px;
}

nav ul{ width:100%; overflow: hidden; }
nav ul li{ position: relative; display: inline-block; width: 100%; text-align: center; }
nav ul li a,
nav ul li a:hover{ color:rgba(255, 255, 255, 1); }
nav ul li + li::after{ content: ''; width: 2px; height: 40px; background: rgba(255, 255, 255, .5); position: absolute; left: 0; top: 15px }

.topHeader li{ display: inline-block; position: relative; z-index: 2 }

.topHeader nav{ background: #1653a3; padding:0 24px }
.topHeader nav li{ padding-top: 10px; padding-bottom: 10px; overflow: hidden; }
.topHeader nav li a{ position: relative; }
.topHeader nav li::before{
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  top: 0;
  background: #023270;
  height: 100%;
}
.topHeader nav li:hover::before,
.topHeader nav li.active::before{ left: .5%; right: .5%; }
.topHeader nav li.active a{ color: #fff }

.topHeader nav ul li span{ padding-right: 5px; }



/*== Footer ==*/
footer{ position: relative; width: 100%; background: #1653a3; padding:28px 50px; margin-top: 50px;  }
footer > nav{ max-width: 650px; margin: auto }

footer nav ul li a{ font-size: 16px; color: #fff }
footer nav ul li + li::after{ width: 1px; height: 15px; top:8px; background: #fff; }

.foote-topIcon{ position: relative; }
.foote-topIcon section{ position: absolute; top: -65px; left: 50%; transform: translateX(-50%); width: 100px; height: 100px; background: #1653a3; text-align: center; border-radius: 50% }
.foote-topIcon section i{ vertical-align: top; margin-top: -35px; font-size: 40px; font-weight: bold; color: rgba(255, 255, 255, .7) }

footer .copyright-list{ width: 100%; color: #fff; padding-top: 20px; line-height: 30px; text-align: center; }
footer .copyright-list small{ font-size: 16px; }

/*====== 內頁 ======*/
.content{ float: left; width: 100%; padding:30px 50px; overflow: hidden; }

.content .wrapper{ max-width: 1300px }

.page-header{ position: relative; width: 100%; text-align: center; line-height: 35px; margin: 20px 0; }
.page-header h1{ position: relative; display: inline-block; font-size: 30px; padding: 10px 50px; background: #fff; z-index:1 }
.page-header::before{
  content: '';
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-transform: translateZ(0) scale(1, 1);

  z-index: 0;
}


/*== 首頁 : 知識專區; ==*/
.index-project ul li{ text-align: center; background: #f3f3f3; padding:30px 40px; }
.index-project ul li:nth-child(even){ background: #dddddd }
.index-project ul li p{ text-align: center; font-size: 22px; color: #333333; font-weight: bold; }

/*== 關於我們 ==*/
.about-info{ width: 100%; margin-bottom: 25px; padding:15px 15px 15px 35px; }
.about-info .caption,
.about-info .txt{
  position: relative;
  display: block;
  width: 100%;
  padding: 10px 10px 10px 50px;
  margin-bottom: 6px;
  line-height: 35px;
}

.about-info .caption{ padding-top: 8px; padding-bottom: 4px; border:#1653a3 1px solid; }
.about-info .caption figure{ position: absolute; left: -30px; top:50%; transform: translateY(-50%); }
.about-info .caption b{ font-size: 24px; color:#1653a3; }

.about-info .txt p{ font-size: 18px; color: #333 }



/*== 登入後 ==*/
.header-login-group{ width: 100%; margin-top: -40px; margin-bottom: 10px; }
.header-login-group span{ text-decoration: underline; }

/*== 登入頁 ==*/
.login-box{ max-width: 660px !important; padding:25px 90px; margin: 170px auto 120px auto; }
.login-header{ text-align: center; margin-bottom: 15px; color: #1653a3 }

.login-box .contact-box .divTable .divRow .divCell{ width: 80px; padding-bottom: 5px }
.login-box .contact-box .divTable .divRow .divCell span.refresh{ display: inline-block; vertical-align: middle; width: 60px; font-size: 20px; text-align: center; }


/*== 連絡我們 ==*/
textarea.form-control{ height: auto }
input.form-control,
textarea.form-control{ text-align: left; }
.form-control{ display: block; width: 100%; height: 50px; line-height: auto; padding: 6px 20px; border-radius: 10px; border: 1px solid #636363;
  font-size: 20px; text-align: center; }

.contact-box .form-control{ text-align: center; }

.contact-box .divTable .divRow .divCell{ width: 100px; padding: 10px 0 10px 0; vertical-align: top;  color: #000 }
.contact-box .divTable .divRow .divCell + .divCell{ width: calc(100% - 100px); padding-left: 30px; }
.contact-box .divTable  #contact-code .divCell + .divCell .form-control{ display: inline-block; width: calc(100% - 67px); }
.contact-box .divTable .divRow .divCell:nth-of-type(1){ font-size: 20px; }
.contact-box .divTable  #contact-button .divCell{ padding:25px 0 0px 0; }

/*== Button ==*/
.btn{ padding-left: 3em; padding-right: 3em; }
.btn-default{ background: #BFBFBF; border-color: transparent; }
.btn-blue{ background: #1653A3; color:#fff; border-color: transparent; }

/*== 會員資料 ==*/
.member_list{ max-width: 630px !important; margin: 0 !important }
.member_list.contact-box .divTable .divRow .divCell{ vertical-align: middle; border-bottom: #bfbfbf 1px solid; color: #333333 }
.member_list.contact-box .divTable .divRow .divCell p,
.member_list.contact-box .divTable .divRow .divCell small{ font-size: 20px; padding-top: .3em; }

.member_list .form-control{ width: 140px; height: 40px; line-height: 28px }
.member_list input.form-control{ width: 160px }

.member_list .checkbox_style label::before{ margin-top: -5px; }
.member_right_active.checkbox_style label::before{ background: #009944 }
.member_right_active.checkbox_style label + p{ color: #009944 }

/*== 資料查詢 ==*/
.search-box{ font-size: 20px; color: #666; line-height: 30px }

.search_item{ margin-bottom: 20px; }

.search_item section{ z-index: 2 }

.search_list li{ background: #f3f3f3; padding:20px 30px; margin-bottom: 10px; }
.search_list li:nth-child(even){ background: #dddddd }
.search_list li .item{ color: #000; margin-bottom: 10px; }

.search_list li .item,
.search_list li .txt{ padding-left: 30px; }
.search_list li .item .item-title{ text-indent: -25px }

.search_list li hr{ margin: 15px 0; }

.search_list .search_item{ margin-bottom: 0; }
.search_list .search_keyword p{ padding: 0 6px; }

.search_bar{ width: 100%; height: 50px; overflow: hidden; margin: 20px 0 30px 0; border-radius: 10px; border:#959595 1px solid; }
.search_bar .form-control{ padding: 0; border-color: transparent; }
.search_bar input[type="text"]{ width: calc(100% - 90px); padding-left: 15px; text-align: left; }
.search_bar button{ color: #fff; font-size: 20px; width: 90px; height: 100%; background: #1653a3 }

.search_select_list{ width: 100%; height: 50px; margin-bottom: 10px; overflow: hidden; }

.search_select_list p{
  width: 135px;
  line-height: 50px;
  background: #1653a3;
  color: #fff;
  font-size: 20px;
  text-align: center;
  margin-right: -5px;
}

.search_select_list select::-ms-expand {  display: none; }

.search_select_list select {
  
  width: calc(100% - 140px);
  /* styling */
  background-color: white;
  border: thin solid #959595;
  border-radius: 0px;
  display: inline-block;
  font: inherit;
  line-height: 1.5em;
  padding: 0.5em 3.5em 0.5em 1em;

  /* reset */
  margin: 0;      
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;

  text-align: left;
}

.search_select_list select.minimal {
  background-image:
    linear-gradient(45deg, transparent 50%, #848484 50%),
    linear-gradient(135deg, #848484 50%, transparent 50%),
    linear-gradient(to right, #ccc, #ccc);
  background-position:
    calc(100% - 20px) calc(1em + 2px),
    calc(100% - 15px) calc(1em + 2px),
    calc(100% - 2em) 0.5em;
  background-size:
    5px 5px,
    5px 5px,
    1px 1.5em;
  background-repeat: no-repeat;
}

.search_select_list select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}





.page{ font-size: 16px; padding-right: 0; }
.page .form-control{ width: 60px; height: 30px; line-height: 30px; font-size: 14px; text-align: center; padding: 0; margin:-3px 6px 0 6px; border-radius: 0; }

.page .arrow_img{ margin-top: -10px; }


/*=============================== RESPONSIVE ===================================*/

@media screen and (min-width: 1700px){


}

@media screen and (min-width: 1001px){

  nav ul li a{ font-size: 20px; color:rgba(255, 255, 255, .7); }
  .topHeader nav li::before{
    transition: left, right, 0.3s ease-out;
    -webkit-transition: left, right, 0.3s ease-out;
    -moz-transition: left, right, 0.3s ease-out;
    -ms-transition: left, right, 0.3s ease-out;
    -o-transition: left, right, 0.3s ease-out;
  }
  .topHeader nav ul li a:hover{ color: #fff }
  .topHeader nav ul li a:hover span img{ -webkit-filter:opacity(.7); -moz-filter:opacity(.7); -ms-filter:opacity(.7); -o-filter:opacity(.7);
    filter:opacity(.7); }
  

  /*== 連絡我們 ==*/
  .contact-box .divTable .divRow .divCell:nth-of-type(1){ padding-top: .8em; }
  .contact-box .divTable  #contact-button .divCell{ width: 50% !important; text-align: right; padding: 30px 15px; }
  .contact-box .divTable  #contact-button .divCell + .divCell{ text-align: left; }
  .contact-box .divTable  #contact-button .divCell .form-control{ display: inline-block; width: auto }

  /*== 登入頁 ==*/
  .login-box .contact-box .divTable #contact-code .divCell + .divCell .form-control { width: calc(100% - 130px) }

  /*== 會員資料 ==*/
  .member_list.contact-box .divTable .divRow .divCell:nth-child(1){ width: 150px }
  .member_list.contact-box .divTable .divRow .divCell + .divCell{ padding-left: 10px; }
  .member_list .checkbox_style + .checkbox_style{ padding-left: 10px; }

  /*== 資料查詢 ==*/
  .social-icon{ display: inline-block; vertical-align: top; padding: 0 4px; margin-top: -3px; }
  .search_list .search_keyword{ padding-left: 30px; }

  .search_select{position: absolute;
    width: calc(100% - 50px);
    top: 75px;
    right: 0;
    left: auto;
    text-align: right;}
  .search_select_list{ width: calc((100% / 3) - 6px); }



  .page section{ padding-left:30px; }

}

@media screen and (max-width: 1500px){

/*== 登入頁 ==*/
.login-box{ margin: 50px auto 25px auto; }

}

@media screen and (max-width: 1300px){

	
 
}

@media screen and (max-width:1200px){



}

@media screen and (min-width: 1001px) and (max-width: 1199px){ 

  .search_select {
    width: calc(100% - 150px);
  }

}

@media screen and (max-width:1000px){
  
  .header-login-group { margin-top: 10px; }

  .topHeader header{ padding: 5px; }
  .topHeader header h1 {display: block; width: 100%; margin: 10px 5px; }
  .topHeader header h1 img{ width: 250px }

  footer nav ul,
  .topHeader nav ul{ flex-wrap: wrap; }

  footer nav ul li,
  .topHeader nav ul li{ flex-basis: 100%; margin: 10px 0; }

  footer nav ul li::after,
  .topHeader nav ul li + li::after{ display: none; }

  .topHeader nav ul li span{  display: inline-block; vertical-align: top; margin-top: -3px; }
  .topHeader nav ul li span img{ max-width: 30px }

  .topHeader .form-group { width: 100%; border-radius: 0 }
  .topHeader .form-group li { width: calc(50% - 6px); }
  .topHeader .form-group li + li::after{ padding: 0; }
  
  .topHeader nav{ position: fixed; top: 0; width: 100%; height: 100%; z-index: 2; }
  .topHeader nav ul{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
  .topHeader nav ul li{ padding:10px 20px; }
  .topHeader nav ul li a{ font-size: 20px; }
  .topHeader nav ul li:nth-child(1) a{ margin-left: -50px; }

  .mobile_nav{ left: -100%; transition: .3s }
  .mobile_nav.active { left:-20%; background: rgba(0,0,0,.85); }
  .mobile_nav.active::before{  content: '';  position: fixed; top: 0; left: 0; width: 100vw; height: 100%; background: rgba(0, 0, 0, .7)  }

  footer{ padding: 10px; margin-top: 2.45em; }
  footer nav ul li{ flex-basis: 33%; padding: 0 10px; }
  footer .copyright-list{ padding-top: 5px; }
  footer .copyright-list small{ font-size: .8em; }
  
  .index-project ul{ flex-wrap: wrap; }
  .index-project ul li{ flex-basis: calc(50% - 8px); margin:4px; padding: 30px; }

  /*=== 內頁 ===*/
  .content{ padding: 15px; }

  .page-header h1{ padding: 10px 20px; }

  /*== 登入頁 ==*/
  .login-box{ max-width: 660px !important; padding:25px; margin: 10px auto; }
  .login-header{ text-align: center; margin-bottom: 15px; color: #1653a3 }

  .login-box .contact-box #login-btn .divCell{ padding-top: 15px; }

  /*== 會員資料 ==*/
  .member_list.contact-box .divTable .divRow .divCell:nth-child(1){ width: 120px; border-bottom: none }
  .member_list.contact-box .divTable .divRow .divCell{ display: table-cell; font-size: 16px !important; }
  .member_list.contact-box .divTable .divRow .divCell p,
  .member_list.contact-box .divTable .divRow .divCell small{ font-size: 16px !important;/* padding-top: .6em;*/ }
  
  .member_list.contact-box .divTable .divRow .divCell .checkbox_style input[type="checkbox"]+label{ vertical-align: middle; margin-top: 6px; }

  .member_list.contact-box .divTable .divRow .divCell .form-control { width: 100%; font-size: 16px; }
  .member_list input.form-control + button{ margin-top: 5px }

  /*== 資料查詢 ==*/
  .search_list li{ padding: 15px 15px; }
  .search_list li:nth-last-child(1){ margin-bottom: 10px; }
  .search_list .item-icon{ display: block; padding-top: 10px; }

  .page{ display: flex; flex-wrap: wrap; justify-content: space-between; }
  .page section{ margin-bottom: 20px; }

}

@media screen and (max-width:640px){

.foote-topIcon section{ top: -45px; }

/*== 登入 ==*/
.contact-box .divTable #contact-code .divCell + .divCell .form-control { width: calc(100% - 130px); }
/* .login-box .contact-box .divTable .divRow .divCell span.refresh { width: 100%; text-align: right; }*/

/*== 連絡我們 ==*/
.contact-box .divTable .divRow .divCell{ display: block; width: 100%; padding: 0 0 10px 0; }
.contact-box .divTable .divRow .divCell + .divCell{ width: 100%; padding-left: 0px; }
.contact-box .divTable .divRow .divCell:nth-of-type(1) { padding: 10px 0; }
.contact-box .divTable .divRow .divCell,
.contact-box .divTable .divRow .divCell .form-control{ font-size: 17px; }

/*== 資料查詢 ==*/
.search_item_mode{ display: flex; flex-wrap: wrap; }
.search_item_mode p{ width: 100%; display: block; }
.search_item_mode section{  font-size: 18px; padding-right: 8px; }

.search-box{ font-size: 17px; }

.member_list .checkbox_style{ padding-top: 8px; }


}

@media screen and (max-width:400px){


}

@media screen and (max-width: 330px){


}