* {
	font-family: "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", "sans-serif", "Roboto";
	font-weight: normal;
}

#signUpFlow {
	overflow: auto;
	background-color: #ffffff;
	border-radius: 12px 12px 0 0;
}

#signUpFlow .sub_height {
    overflow-x: hidden;
/*    min-height: 300px;*/
	max-height: 615px;
    overflow-y: auto;
    padding-top: 10px;
}

#signUpFlow .subview_head{
	/*position: fixed;*/
	top: 10vh;
	left: 0;
	right: 0;
	background-color: white;
	border-radius: 12px 12px 0 0;
/*	box-shadow: 0px 1px 0px #f3f3f3;*/
	padding-bottom: 8px;
	z-index: 1000;
}

#signUpFlow .sub_input.has-checked:after {
	content: '';
	display: block;
	position: absolute;
	background-size: contain;
	background-image: url(../images/icon_ok@2x.png);

	right: 20px;
	top: 10px;
	width: 24px;
	height: 24px;

/*	border-top: 2px solid #27AE58;
	border-right: 2px solid #27AE58;
	-webkit-transform: rotate(130deg);
	-moz-transform: rotate(130deg);
	-ms-transform: rotate(130deg);
	-o-transform: rotate(130deg);
	transform: rotate(130deg);*/
}

#signUpFlow .sub_input.has-checked .form-control {
	border-radius: 2px;
	outline: none;
	box-shadow: inset 0px 0px 0px 1px #27AE58;
	border: solid 1px #27AE58;
}

#signUpFlow input[readonly]:focus {
	outline: none;
	box-shadow: none;
	border: solid 1px #d7dadc;
}

#signUpFlow .sub_input.has-error .form-control {
	border: solid 2px #e65100;
}

#signUpFlow .sub_input.has-error .form-control:focus {
	outline: none;
	box-shadow: none;
	border: solid 2px #e65100;
}

#signUpFlow .form-control {
	border-radius: 2px;
	outline: none;
	border: solid 1px #d7dadc;
	box-shadow: none;
}

#signUpFlow .form-control:focus {
	outline: none;
	box-shadow: inset 0px 0px 0px 1px #27AE58;
	border: solid 1px #27AE58;
}


.sign_process {
	padding-left: 0;
	list-style-type: none;
	text-align: center;
	max-width: 400px;
    display: box;              /* OLD - Android 4.4- */
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;
	justify-content: space-between;
}

.sign_process li {
	display: inline-block;
	width: 72px;
}


.sign_process .process_item:not(:first-child) .step_sign:before {
	content: '';
	background-color: #d7dadc;
	display: inline-block;
	position: absolute;
	z-index: 100;
	max-width: calc(226px/2);
	width: calc((100vw - 120px)/2);
	height: 3px;
	top: 50%;
	right: 100%;
	--webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

.sign_process .process_item:not(:first-child).active .step_sign:before {
	background-color: #27AE58;
}

.sign_process .process_item:nth-child(1) .step_sign {
	z-index: 602;
}
.sign_process .process_item:nth-child(2) .step_sign {
	z-index: 601;
}
.process_item.active .step_sign{
	background-color: #27AE58;
}

.process_item.active .step_description{
	color: #27AE58;
}

.step_sign {
	position: relative;
	display: inline-block;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background-color: #d7dadc;
	color: white;
	text-align: center;
	vertical-align: middle;
	z-index: 503;
}

.step_description {
	font-size: 12px;
	color: #afb5b9;
	margin-top: 4px;
}

.step_sign span {
	vertical-align: middle;
}

#signUpFlow .subview_body {
}

#signUpFlow header {
	/*margin-top: 16px;*/
	margin-bottom: 20px;
}

#signUpFlow .subview_box {
	margin-top: 16px;
}

#signUpFlow .errormsg {
	display: none;

}

#signUpFlow .errortips {
	display: none;
}

#signUpFlow .errortips.has-error {
	display: block;
	position: relative;
	color: #E65100;
	padding: 8px 20px 8px 44px;
	background-color: #FDF1EB;
}

#signUpFlow .errortips.has-error:after {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	position: absolute;
	left: 24px;
	top: 10px;
	background-size: contain;
	background-image: url(../images/attention@2x.png);
}

#signUpFlow .sub_input.has-error .errormsg{
	display: block;
	color: #E65100;
}

#signUpFlow .sub_input2.has-error .errormsg{
	display: block;
	color: #E65100;
}


#signUpFlow .subview_box select {
	position: relative;
	height: 45px;
	margin-top: 7px;
	-webkit-appearance: none;
}

#signUpFlow .subview_box label {
	font-weight: 700;
	margin-bottom: 0;
}

#signUpFlow .subview_box .select:after {
	content: "";
	display: block;
	position: absolute;
	background-image: none;
	height: 12px;
	width: 12px;
	border-radius: 2px;
	border-top: 3px solid #27AE58;
	border-left: 3px solid #27AE58;
	--webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
	right: 26px;
	top: 14px;
	z-index: 100;
}

#signUpFlow .sub_input.select.has-error:after,
#signUpFlow .sub_input.has-error .sub_input:after {
	border-top: 3px solid #37474F;
	border-left: 3px solid #37474F;
}

.subview_footer {
	/*position: fixed;*/
	bottom: 0;
	left: 0;
	right: 0;
	padding-top: 24px;
	border-top: 1px solid #f3f3f3;
	background-color: white;
	z-index: 500
}

.agreements {
	position: relative;
	margin-bottom: 24px;
}


.agreements input[type=checkbox] + label:before{
	content: '';
	display: block;
	position: absolute;
	width: 18px;
	height: 18px;
	left: -24px;
	border: 2px solid #27AE58;
	border-radius: 2px;
}

.agreements input[type=checkbox]:checked + label:after{
	content: '';
	display: block;
	position: absolute;
	width: 11px;
	height: 5px;
	left: -20px;
	top: 5px;

	border-top: 2px solid white;
	border-right: 2px solid white;
	-webkit-transform: rotate(130deg);
	-moz-transform: rotate(130deg);
	-ms-transform: rotate(130deg);
	-o-transform: rotate(130deg);
	transform: rotate(130deg);
	z-index: 501;
}

.agreements input[type=checkbox]:checked + label:before{
	background-color: #27AE58;
}

.agreements label {
	position: relative;
	font-weight: 400;
	color: #879195;
	margin-left: 24px;
}

.terms {
	color: #879195;
/*	margin-bottom: 20px;*/
}

.terms a {
	color: #27AE58;
	text-decoration: underline;
}

.action_button {
	/*margin-top: 24px;*/
	margin-bottom: 32px;
}

.primary_btn, .secondary_btn {
	text-align: center;
	display: block;
/*	margin-bottom: 12px;*/
	text-decoration: none;
}
.primary_btn:hover,.primary_btn:focus {
	color: white;
	text-decoration: none;
}

.secondary_btn:hover,.secondary_btn:focus {
	color: #27AE58;
	text-decoration: none;
}

.primary_btn.disabled {
	background-color: #d7dadc;
}

.primary_btn {
	font-weight: 700;
	padding: 12px 10px;
	border-radius: 30px;
	background-color: #27AE58;
	color: white;
}

.secondary_btn {
	font-weight: 700;
	padding: 12px 10px;
	color: #27AE58;
}

.announcement_title {
	position: relative;
	padding: 12px 0;
	border-bottom: 1px solid rgba(95, 108, 114, 0.2);
}
.announcement_content {
	padding: 12px;
	/*background-color: #f3f3f3;*/
	max-height: 300px;
	overflow-y: auto;
	border-bottom: 1px solid rgba(95, 108, 114, 0.2);
	display: none;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.announcement_title.show + .announcement_content {
	display: block;
}

.announcement_title.show .dropdown_arrow:after{
	right: 16px;
	top: 16px;
	-o-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}


.dropdown_arrow:after {
	content: "";
	display: block;
	position: absolute;
	height: 12px;
	width: 12px;
	border-radius: 2px;
	border-top: 3px solid #27AE58;
	border-left: 3px solid #27AE58;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
	-webkit-transform-origin: top left;
	-moz-transform-origin: top left;
	-ms-transform-origin: top left;
	right: 16px;
	top: 28px;
	z-index: 100;
/*	-webkit-transition: all .1s ease;
	transition: all .1s ease;		*/
}

.modal-close {
	width: 44px;
    height: 44px;
    display: block;
    position: absolute;
    right: 16px;
    top: 4px;
    cursor: pointer;
    z-index: 230;
}
