@charset "UTF-8";


/* 如果選最後一個，則下一題必填 */

.form-group.hide {
  display: none;
}






.top-hints {
  background-color: infobackground;
  color: captiontext;
  font-size: 12pt;
  line-height: 1.6em;
  padding: 8px;
  padding-left: 50px;
  border-bottom: 1px solid black;
  text-align: left;
  background-image: url(../img/icon-warning.png);
  background-repeat: no-repeat;
  background-position: 8px 4px; }

//////////////

.tooltip {
  position: absolute;
  z-index: 1030;
  display: block;
  font-size: 12px;
  line-height: 1.4;
  opacity: 0;
  filter: alpha(opacity=0);
  visibility: visible;
  z-index: 1;
}

.tooltip.in {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.tooltip.top {
  padding: 5px 0;
  margin-top: -3px;
}

.tooltip.right {
  padding: 0 5px;
  margin-left: 3px;
  z-index: 1;
}

.tooltip.bottom {
  padding: 5px 0;
  margin-top: 3px;
}

.tooltip.left {
  padding: 0 5px;
  margin-left: -3px;
}

.tooltip-inner {
  max-width: 200px;
  padding: 8px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  background-color: #000000;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-top-color: #000000;
  border-width: 5px 5px 0;
}

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-right-color: #000000;
  border-width: 5px 5px 5px 0;
}

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-left-color: #000000;
  border-width: 5px 0 5px 5px;
}

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-bottom-color: #000000;
  border-width: 0 5px 5px;
}

//////

.mt-5 {
	margin-top: 5px!important;
}

.mb-5 {
	margin-bottom: 5px!important;
}

.mt-10 {
	margin-top: 10px!important;
}

.mb-10 {
	margin-bottom: 10px!important;
}

.mt-15 {
	margin-top: 15px!important;
}

.mb-15 {
	margin-bottom: 15px!important;
}

.mt-20 {
	margin-top: 20px!important;
}

.mb-20 {
	margin-bottom: 20px!important;
}

.mt-25 {
	margin-top: 25px!important;
}

.mb-25 {
	margin-bottom: 25px!important;
}

.mt-30 {
	margin-top: 30px!important;
}

.mb-30 {
	margin-bottom: 30px!important;
}

*,:after,:before {
	box-sizing: border-box;
}

a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
	display: block;
}

body {
	font: 1pc/1.2 "Microsoft JhengHei", "微軟正黑體", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
	background-image: url(../img/bg.jpg);
	background-color: #f3f3f3;
	color: #444;
}

ol,ul {
	list-style: none;
}

ol {
	list-style-type: decimal;
	padding-left: 20px;
}

blockquote,q {
	quotes: none;
}

blockquote:after,blockquote:before,q:after,q:before {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a:hover {
	text-decoration: none;
}

strong {
	font-weight: 700;
}

fieldset {
	margin-bottom: 20px;
}

fieldset legend {
	font-size: .875em;
	color: #666;
	margin-bottom: 1pc;
}

fieldset .form-text {
	margin-bottom: 14px;
	font-size: 1em;
	font-weight: 700;
}

button[type=submit],input[type=submit], #cancel-reg {
	white-space: nowrap;
	float: left;
	margin: 0;
	height: 45px;
	background-color: #D0021B;
	border-bottom-width: 5px;
	border-bottom-color: #790000;
	font-family: "Microsoft JhengHei", "微軟正黑體", "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
	font-size: 20px;
	color: #fff;
	border-radius: 5px;
	outline: 0;
	line-height: 45px;
	width: 200px;
	border-top: 0;
	border-right: 0;
	border-left:0;

}

#cancel-reg {
  background-color: chocolate;
  border: #A95519;
  border-bottom-color: #673613;
  margin: 20px;
  float: none;
  cursor: pointer;
  display: none;
}
#cancel-reg:hover {
	margin-top: 22px;
	margin-bottom: 18px;
	border-bottom-width: 3px;
}

button[type=submit]:hover,input[type=submit]:hover {
	margin-top: 2px;
	border-bottom-width: 3px;
}

button[type=submit]:active,input[type=submit]:active {
	margin-top: 2px;
	border-top-width: 3px;
	border-top-color: #014976;
	border-bottom-width: 1px;
}

button[type=submit]:disabled,input[type=submit]:disabled {
	opacity: .6;
}

button[type=submit]:disabled:active,button[type=submit]:disabled:hover,input[type=submit]:disabled:active,input[type=submit]:disabled:hover {
	margin-top: 0;
	border-bottom-width: 5px;
	border-top-width: 1px;
	border-top-color: #016eb3;
}

input[type=radio] {
	border: none!important;
}

hr {
	border: none;
	border-top: 1px solid #ddd;
	margin: 25px 0 10px;
}

.main-section{
	max-width: 1285px;
	width: 100%;
	margin:auto;
	background: url(../img/bg.png);
}

.main-section h1 {
	font-size: 40px;
	margin:45px 0 35px 0;
	text-align: center;
	color: #000;
	line-height: 48px;
}

@media screen and (max-width: 767px){
	.main-section h1 {
		font-size: 35px;
		margin:25px 0 0 0;
	}
}

.main-section .container-frame {
	max-width: 800px;
	width: 100%;
	margin:auto;
	position: relative;
	background-color: #fff;
	overflow: hidden;
	padding:0 30px;
	box-shadow: 0 0 10px 0;
}

@media screen and (max-width: 767px){
	.main-section .container-frame {
		box-shadow: none;
	}
}

.main-section .heading {
	position: relative;
	font-size: 1.25em;
	margin: 60px 0 30px;
}

.main-section .heading span {
	position: relative;
	z-index: 1;
	display: inline-block;
	padding-right: 10px;
}

.main-section .submit-status {
	float: left;
	margin-left: 20px;
	margin-top: 24px;
}

.main-section .notice {
	clear: both;
	padding-top: 1pc;
	text-align: center;
	color: #ca3402;
}

.success-section {
	display: none;
	max-width: 1285px;
	width: 100%;
	margin:auto;
}

.success-section .success-section-box {
	margin-top: 50px;
	padding: 60px;
	background-color: #fff;
	font-size: 24px;
	line-height: 1.4;
	text-align: center;
	border: 1px solid #ccc;
}

.add-rows button,.add-rows select {
	font-size: 1pc;
}

.add-rows button {
	margin-left: 4px;
}

.bottom-instructions strong,.text-important,.top-instructions li {
	color: #000!important;
}

.red {
	color: #ca3402;
}

.green {
	color: #25ac23;
}

.main-header {
	max-width: 1280px;
	width: 100%;
	margin:auto;
	height: 95px;
	padding:20px 0;
	position: relative;
}

.main-header-line{
	background: url(../img/line-1.png)no-repeat center;
	width: 100%;
	height: 6px;
	position: absolute;
	bottom: 0;
}

@media screen and (-webkit-min-device-pixel-ratio: 2),screen and (min--moz-device-pixel-ratio: 2){
	.main-header-line{
		background: url(../img/line-1_3@.png)no-repeat center;
		background-size: 100% 6px;
	}
}

.main-header-box{
	max-width: 800px;
	width: 100%;
	margin:auto;
}

@media screen and (max-width: 767px){
	.main-header-box{
		padding:0 10px ;
	}
}

.main-header-box:after {
	content: " ";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.logo{
	float: left;
	background: url(../img/logo.png)no-repeat;
	height: 62px;
	width: 350px;
}

@media screen and (max-width: 450px){
	.logo {
		width: calc(350px * 0.8);
	}	
}

@media screen and (-webkit-min-device-pixel-ratio: 2),screen and (min--moz-device-pixel-ratio: 2){
	.logo{
		background: url(../img/logo_2@.png)no-repeat;
		background-size: contain;
		background-position: center;

	}
}

.login-frame{	
	float: right;
}

.login-frame:hover{
	text-decoration: none;	
}

.login-frame i{
	background: url(../img/member.png)no-repeat center;
	width: 60px;
	height: 40px;
	display:block;
}

@media screen and (-webkit-min-device-pixel-ratio: 2),screen and (min--moz-device-pixel-ratio: 2){
	.login-frame i{
		background: url(../img/member_2@.png)no-repeat center;
		background-size: 40px 40px ;
	}
}

.login-frame span{
	display: block;
	color: #D0021B;
	font-size: 15px;
}

.main-header .slogan {
	float: right;
	margin-top: 2pc;
	font-size: 1.25em;
}

.top-instructions {
	line-height: 1.4;
	padding:27px 0 0 0 ;
}

.top-instructions p {
	margin-bottom: 10px;
	font-size: 18px;
	line-height: 30px;
	font-weight: bold;
	margin:0;
}

.top-instructions ul {
	padding-left: 18px;
	margin:10px 0 0 0;
}

.top-instructions li {
	margin-bottom: 10px;
	list-style:disc;
	font-size: 18px;
	line-height: 25px;
}

.top-instructions li.no-style{
	list-style: none;
}

.top-instructions li a{
	color: #000;
	border-bottom: 1px #000 solid;
	word-break: break-all;
}

.top-instructions li a:hover{
	text-decoration:none;
}

.bottom-instructions {
	line-height: 1.4;
}

.bottom-instructions p {
	margin-bottom: 10px;
}

.login-button,.login-panel {
	position: absolute;
	right: 0;
	color: #fff;
}

.bottom-instructions ul ul ul {
	font-size: 1em;
	list-style-type: lower-alpha;
}

.login-panel {
	z-index: 999;
	top: -250px;
	background-color: #016eb3;
	width: 350px;
	height: 250px;
	padding: 10px;
	-webkit-transition: top .2s ease-in;
	transition: top .2s ease-in;
}

.login-panel.active {
	top: 0;
}

.login-panel label {
	display: block;
	margin-bottom: 5px;
}

.login-panel input,.login-panel select {
	border: none;
	padding: 5px;
	margin-bottom: 9pt;
	width: 100%;
}

.login-panel input[type=submit] {
	background-color: #014f80;
	font-size: 15px;
	width: 100%;
	margin-bottom: 0;
	text-align: center;
	border-radius: 0;
}

.login-panel input[type=submit]:active,.login-panel input[type=submit]:hover {
	margin: 0;
	border: none;
}

.login-button {
	top: 100%;
	padding: 5px 10px;
	background-color: #015e9a;
	font-size: 15px;
	cursor: pointer;
}

.login-button:hover {
	background-color: #014f80;
}

sup.required {
	position: relative;
	top: 2px;
	color: #ca3402;
	margin-right: 5px;
	font-size: 18px;
}

.form-group {
	margin-bottom: 10px;
	position: relative;
}

.form-group.has-error .chosen-single,.form-group.has-error input,.form-group.has-error select {
	border-color: #ca3402!important;
}

.form-group.has-error .chosen-single:focus,.form-group.has-error input:focus,.form-group.has-error select:focus {
	border-color: #ca3402;
}

.form-group.has-error .form-radio select {
	border-color: #ccc;
}

.form-group input[type=text],.form-group select {
	width: 100%;
	padding: 6px;
	border: 1px solid #ccc;
	border-radius: 5px;
	outline: 0;
	-webkit-transition: border-color .2s ease-in-out;
	transition: border-color .2s ease-in-out;
	height: 35px;
}

.form-group input[type=text]:focus,.form-group select:focus {
	border-color: #016eb3;
}

.form-group label {
	display: block;
	margin-bottom: 0px;
	font-size: 18px;
	-webkit-transition: color .2s ease-in-out;
	transition: color .2s ease-in-out;
}

.form-group label.inline,.form-group--half,.form-radio,.form-radio label {
	display: inline-block;
}

.form-group--half {
	width: 200px;
	margin-right: 15px;
}

.form-group--half input[type=text] {
	width: 100%;
}

.form-details {
	font-size: .75em;
	margin-top: 6px;
	color: #999;
}

.form-text.has-error {
	color: #ca3402;
}

.form-radio {
	margin-right: 10px;
}

.form-radio.has-error select {
	border-color: #ca3402!important;
}

.form-radio select {
	width: auto;
	padding: 3px;
}

.form-text {
	line-height: 1.4;
	font-size: .9375em;
}

.form-error {
  position: absolute;
	margin-left: 10px;
}



label.error {
  display: inline-block;
  font-size: 13px;
  line-height: 18px;
  font-weight: bold;
  color: white;
  background-color: #E21818;
  padding: 0 4px;
  border: 1px solid #555B92;
  box-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

.line-double-line{
	background: url(../img/line-3.png);
	width: 100%;
	height: 6px;
}

.connection-frame{

}

.connection-title{
	font-size: 18px;
	color: #000;
	font-weight: bold;
	list-style: 25px;
}

.connection-frame:after {
	content: " ";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.connection-frame table td{
	font-size: 18px;
	line-height: 35px;
	color: #000;
}

@media screen and (max-width: 767px){
	.connection-frame table,
	.connection-frame table tbody,
	.connection-frame table tbody tr,
	.connection-frame table td{
		display: block;
	}
}

.connection-frame table td i{
	background: url(../img/icon-phone.png) no-repeat center;
	width: 24px;
	height: 35px;
	display: inline-block;
	float: left;
	margin-right: 5px;
}

@media screen and (-webkit-min-device-pixel-ratio: 2),screen and (min--moz-device-pixel-ratio: 2){
	.connection-frame table td i{
		background: url(../img/icon-phone_2@.png) no-repeat center;
		background-size: 24px 24px;
	}
}

@media screen and (max-width: 767px){
	.connection-frame table tr{
		margin-bottom: 20px;
	}

}

.precautions-box{
	background: #FFFDE1;
	border: 1px #DFDCB5 solid;
	color: #000;
	font-size: 16px;
	position: relative;
}

.connection-frame .precautions-box{
	line-height: 30px;
	padding:10px 70px;
}

@media screen and (max-width: 767px){
	.connection-frame .precautions-box{
		padding:10px 30px;	
	}
}

.connection-frame .precautions-box p{
	position: relative;
	margin:0;
}

.connection-frame .precautions-box p:before{
    content: '*';
    position: absolute;
    left:-6px;
    color: #D0021B;
}

.participants-frame{
	background: #C1FFC1;
	padding:30px 20px;
}

.participants-title{
	font-size: 20px;
	margin:0;
	color: #000;
	line-height: 24px;
}

.participants-title:after {
	content: " ";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.participants-title div{
	background: url(../img/line-2.png) no-repeat center;
	max-width: 605px;
	width: 100%;
	float: right;
	height: 24px;
}

#js-questionaire-list{
	padding:0;
}

.email-form{
	position: relative;
}

.newsletter-box label{
	display: inline;
}

.newsletter-box .form-error{
	position: relative;
}

label.newsletter{
	display: inline;
    font-size: 14px;
}

@media screen and (max-width: 767px){
	label.newsletter{
		display: block;
		top: auto;
		left: auto;
		margin-bottom: 10px;
	}
}

label.newsletter input{
	margin-right: 8px;
}

@media screen and (max-width: 767px){
	label.newsletter input{
		margin-right: 10px;
	}
}

input::-webkit-input-placeholder{
	color: #9B9B9B;
	font-size: 16px;
	padding:0 15px;	
}	

input:-moz-placeholder{
	color: #9B9B9B;
	font-size: 16px;	
	padding:0 15px;
}

input::-moz-placeholder{
	color: #9B9B9B;
	font-size: 16px;	
	padding:0 15px;
}

input:-ms-input-placeholder{
	color: #9B9B9B;
	font-size: 16px;	
	padding:0 15px;
}

.arrow-down{
	background: url(../img/down.png)no-repeat right;
	width: 24px;
	height: 24px;
	display: inline-block;
	float: right;
}

@media screen and (-webkit-min-device-pixel-ratio: 2),screen and (min--moz-device-pixel-ratio: 2){
	.arrow-down{
		background: url(../img/down_2@.png)no-repeat right;
		background-size: 24px 24px;
	}
}

.arrow-up{
	background: url(../img/top.png)no-repeat right;
	width: 24px;
	height: 24px;
	display: inline-block;
	float: right;
}

@media screen and (-webkit-min-device-pixel-ratio: 2),screen and (min--moz-device-pixel-ratio: 2){
	.arrow-up{
		background: url(../img/top_2@.png)no-repeat right;
		background-size: 24px 24px;
	}
}

.capital-frame{
	display: none;
	padding:15px 0;
}

.capital-frame p{
	font-size: 16px;
	color: #000;
	line-height: 30px;
}

.capital-instructions{
	padding-left: 18px;
}

.capital-instructions li{
	margin:0;
	list-style: decimal;
	font-size: 16px;
	color: #000;
	line-height: 30px;
}

.capital-instructions li span {
	border-bottom: 1px solid #000;
}

.capital-instructions li ul li{
	list-style: none;
}

.agree{
	max-width: 585px;
	width: 100%;
	margin:auto;
}

.agree span{
	padding-left: 20px;
	display: inline-block;
    margin-top: -20px;
    font-size: 14px;
    line-height: 20px;
}

.bottom-instructions .precautions-box{
	padding:10px 70px;
	line-height: 22px;
}

@media screen and (max-width: 767px){
	.bottom-instructions .precautions-box{
		padding:20px 40px;
	}
}

.send-btn{
	margin:auto;
	width: 200px;
	height: 45px;
}

.participants-title-line{
	border-bottom: 1px solid #D4D4D4;
}

/* footer 開始 */

footer{
	max-width: 800px;
	width: 100%;
	margin:auto;
	background: #555555;
	padding: 25px 20px 20px 20px;
	box-shadow: 0 0 10px 0;
}

footer span{
	display: block;
	text-align: center;
	color: #fff;
	font-size: 14px;
	line-height: 25px;
}

/* footer 結束 */

/* 修改資料 modal 開始 */

.modify .modal-dialog{
	max-width: 400px;
	margin:30px auto;
}

@media screen and (min-width: 991px){
	.modify .modal-dialog{
		margin:200px auto;
	}
}

.modify .close{
	background: url(../img/close.png)no-repeat;
	width: 35px;
	height: 35px;
	opacity: 1;
}

.modify .modal-header{
	border: 0;
}

.modify .modal-content{
	background-color: transparent;
	border: 0;
	box-shadow:none;
}

.modify .modal-body{
	background: #fff;
	border-radius: 10px;
	padding:30px 30px 75px 30px;
}

.modify-group{
	margin-bottom: 20px;
}

.modify-group label{
	width: 100%;
	font-size: 18px;
	color: #000;
}


.modify-group input[type=text]{
	width: 100%;
	height: 35px;
	border: 1px solid #ccc;
    border-radius: 5px;
    outline:none;
}

.modify-group select{
	width: 100%;
	height: 35px;
	padding:5px;
	background-color: #fff;
    outline:none;
}

.modal-body input[type=submit]{
	width: 100%;
	height: 45px;
	border-bottom-color: #790000;
}

.chosen-container .chosen-container-single .chosen-container-single-nosearch{
	display:none;
}

/* 修改資料 modal 結束 */

.g-recaptcha-box{
	width:100%;
	margin-top:20px;
}
.g-recaptcha-box .g-recaptcha{
	margin:auto;
	width:304px;
}