.appointonline_basic{
	background:#fff;
}

.appointonline_label.err input[type="text"],
.appointonline_label.err textarea{
    border:1px #b82e2e solid;
}
.appointonline_label.shadowred input[type="text"],
.appointonline_label.shadowred textarea{
	box-shadow:0 0 3px 0 #F00;
}

.appointonline input[type="text"]::-webkit-input-placeholder,
.appointonline textarea::-webkit-input-placeholder{
	opacity:0.6;
	color:#000;
}
.appointonline input[type="text"]:-moz-placeholder,
.appointonline textarea:-moz-placeholder{
	opacity:0.6;
	color:#000;
}
.appointonline input[type="text"]:-ms-input-placeholder,
.appointonline textarea:-ms-input-placeholder {
	opacity:0.6;
	color:#000;
}

/*http://cssdeck.com/labs/styling-select-box-with-css3*/
.appointonline_selbox1{
	background-color:#fff;
	background-image:url(img/selbox1_pip2.svg);
	background-repeat:no-repeat;
	background-position:right 15px center;
	font-size:0;
	line-height:0;
}
.appointonline_selbox1 select{
	height:50px;
	/*clear style*/
	background:transparent;

	-webkit-appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
	-o-appearance:none;
	appearance:none;

	text-overflow: ''; /* this is important! */

	border:0;
	outline:0;
	margin:0;

	/*for Iphone*/
	box-shadow:none;
	-webkit-box-shadow:none;
	border-radius:0px;

	width:100%;
	font-family:"proximanovareg2",tahoma;
	font-size:18px;
	line-height:normal;
	color:rgba(0,0,0,1);
	padding:5px 30px 5px 15px;
	border:1px #d4d4d4 solid;
	cursor:pointer;
}
/*for IE 11 styling */
.appointonline_selbox1 select::-ms-expand{
	display:none;
}
.appointonline_selbox1.select_no select{
	color:rgba(0,0,0,0.6);
}
.appointonline_selbox1 select option{
	font-size:18px;
	color:rgba(0,0,0,1);
}
.appointonline_selbox1 select option:nth-child(1){
	color:rgba(0,0,0,0.6);
}

.appointonline_form{
	display:block;
}

.appointonline_button{
    border:none;
    outline:none!important;
    box-shadow:none!important;
    font-size:14px;
    text-transform:uppercase;
    color:#fff;
	font-weight:bold;
	letter-spacing:2px;
    font-family:"PF BeauSans Pro";
    background:#50950c;
    transition:all 0.2s 0s linear;
    border-radius:5px;
    padding:14px 48px;
    cursor:pointer;
    position:relative;
	text-decoration:none;
}
.appointonline_button:hover{
	text-decoration:none;
	color:#fff;
	background:#579b15;
}
/*
.appointonline_button:active{
    top:1px;
}
*/
.appointonline_button:disabled{
    top:0!important;
	background:#579b15;
    opacity:0.7;
    cursor:auto;
}

.appointonline_button_loader{
    display:none;
	position:absolute;
	top:50%;
	left:50%;
	margin-top:-5px;
	margin-left:-21px;
	display:none;
	background-image:url(loader2.gif);
	background-repeat:no-repeat;
	width:43px;
	height:11px;
}
.appointonline.loading .appointonline_button span{
    visibility:hidden;
}
.appointonline.loading .appointonline_button_loader{
    display:block;
}

.appointonline_inner{
	max-width:1000px;
	min-height:430px;
}
.appointonline_basic_header{
	background:#ec6900;
	padding:5px;
	height:80px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
}
.appointonline_basic_header_title{
	font-family:proximanovareg2;
	font-size:30px;
	line-height:1;
	color:#fff;
	text-transform:uppercase;
	text-align:center;
}

.appointonline_step{
	display:none;
}
.appointonline_step.active{
	display:block;
}
.appointonline_step1_cont{
	display:flex;
	flex-wrap:nowrap;
}
.appointonline_step1_cont_box1{
	width:50%;
}
.appointonline_step1_image{
	max-width:499px;
}
.appointonline_step1_image img{
	max-width:100%;
	height:auto;
	vertical-align:top;
}
.appointonline_step1_cont_box2{
	flex:1;
	padding:60px 15px 15px 15px;
}
.appointonline_step1_cont_box2_innner{
	max-width:380px;
	margin:0 auto;
}

.appointonline_block1{
	margin-top:10px;
}
.appointonline_block1:nth-child(1){
	margin:0;
}

.appointonline_input1{
	width:100%;
	padding:5px 5px 5px 15px;
	margin:0;
	outline:0;
	border:1px #c2c2c2 solid;
	font-family:proximanovareg2;
	font-size:18px;
	line-height:normal;
	color:#000;
	height:50px;
}

.appointonline_label_disabled{
	opacity:0.5;
}
.appointonline_label_disabled select{
	cursor:default;
}

.appointonline_step1_but{
	margin-top:50px;
	text-align:center;
}

.appointonline_button1{
	display:inline-flex;
	vertical-align:top;
	align-items:center;
	justify-content:center;
	text-align:center;
	height:49px;
	width:250px;
	padding:5px 10px;
	position:relative;
	user-select:none;
	outline:0;
	margin:0;
	background:transparent;
	border:0;
	cursor:pointer;
	font-size:0;
	line-height:1;
}
.appointonline_button1_fon{
	position:absolute;
	z-index:10;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	background: #498d05;
	background: -moz-linear-gradient(left,  #498d05 0%, #61a91b 100%);
	background: -webkit-linear-gradient(left,  #498d05 0%,#61a91b 100%);
	background: linear-gradient(to right,  #498d05 0%,#61a91b 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#498d05', endColorstr='#61a91b',GradientType=1 );
	transition:all 0.13s linear 0s;
	will-change:background,opacity;
}
.appointonline_button1_tx{
	position:relative;
	z-index:20;
	font-family:proximanovasemibold2;
	font-size:22px;
	line-height:1;
	color:#fff;
}
.appointonline_button1:hover .appointonline_button1_fon{
	opacity:0.85;
}
.appointonline_button1.loading .appointonline_button1_fon{
	opacity:0.40!important;
	cursor:default;
}
.appointonline_button1.loading .appointonline_button1_tx{
	visibility:hidden;
}
.appointonline_button1_loader{
	display:none;
	position:absolute;
	z-index:50;
	left:50%;
	top:50%;
	transform:translateY(-50%) translateX(-50%);
}
.appointonline_button1.loading .appointonline_button1_loader{
	display:block;
}
.appointonline_button1_loader1{
  border-top:2px solid rgba(0,0,0,0.5);
  border-right:2px solid transparent;
  border-radius:50%;
  animation:appointonline_button1_loader1_rotation 0.6s linear infinite;
  width:22px;
  height:22px;
}
@keyframes appointonline_button1_loader1_rotation{
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.appointonline_button_back{
	display:inline-block;
	vertical-align:top;
	font-family:proximanovasemibold2;
	font-size:22px;
	line-height:1;
	color:#000;
}

.appointonline_but_pane{
	text-align:center;
	font-size:0;
	line-height:1;
}
.appointonline_but_pane_cont{
	display:inline-flex;
	vertical-align:top;
	align-items:center;
}
.appointonline_but_pane_cont_next{
	margin-left:50px;
}

.appointonline_step1_rules{
	margin-top:25px;
	font-family:proximanovareg2;
	font-size:14px;
	line-height:1.25;
	color:#000;
	text-align:center;
}
.appointonline_step1_rules a{
	color:#000;
	text-decoration:underline;
}
.appointonline_step1_rules a:hover{
	color:#000;
	text-decoration:none;
}

.appointonline_error{
	display:none;
	margin-top:20px;
	font-size:16px;
	line-height:1.25;
	color:red;
	text-align:center;
}
.appointonline_error.show{
	display:block;
}

.appointonline_step2{
	padding:50px 15px 75px 15px;
}
.appointonline_step2_warning_tx{
	margin-top:25px;
	font-size:14px;
	line-height:1.3;
	color:red;
}
.appointonline_step2_inner{
	max-width:900px;
	margin:0 auto;
}
.appointonline_step2_doctor_name{
	font-family:proximanovasemibold2;
	font-size:24px;
	line-height:1.2;
	color:#000;
}
.appointonline_step2_speciality{
	margin-top:8px;
	font-family:proximanovareg2;
	line-height:1.2;
	font-size:18px;
	color:#000;
}
.appointonline_step2_speciality_name{
	font-weight:bold;
}
.appointonline_step2_line1{
	line-height:1px;
	height:1px;
	width:100%;
	background:#e1e1e1;
	margin:27px 0 27px 0;
}
.appointonline_step2_date_pane_title{
	font-family:proximanovareg2;
	font-size:22px;
	line-height:1.2;
	color:#000;
}
.appointonline_step2_date_pane_content{
	margin-top:38px;
}
.appointonline_step2_but_pane{
	margin-top:40px;
}
.appointonline_step2_date_pane_checker{
	min-height:70px;
}
.appointonline_step2_date_pane_checker_empty{
	display:none;
	font-family:proximanovareg2;
	font-size:16px;
	line-height:1.5;
	color:#939393;
}
.appointonline_step2_date_pane_checker_list_wrap{
	overflow:hidden;
	overflow-y:auto;
	min-height:140px;
	max-height:380px;
}
.appointonline_step2.checker_empty .appointonline_step2_date_pane_checker_list_wrap{
	display:none;
}
.appointonline_step2.checker_empty .appointonline_step2_date_pane_checker_empty{
	display:block;
}
.appointonline_step2_date_pane_checker_list{
	padding-bottom:15px;
}
.appointonline_step2_date_pane_checker_list_item{
	margin-top:24px;
}
.appointonline_step2_date_pane_checker_list_item:nth-child(1){
	margin:0;
}
.appointonline_step2_date_pane_checker_list_item_title{
	font-family:proximanovareg2;
	font-size:16px;
	line-height:1;
	color:#000;
	font-weight:bold;
}
.appointonline_step2_date_pane_checker_list_item_time{
	margin-top:10px;
}
.appointonline_step2_date_pane_checker_time_list{
	display:flex;
	flex-wrap:wrap;
	margin-left:-3px;
	margin-right:-4px;
}
.appointonline_step2_date_pane_checker_time_list_item{
	width:65px;
	height:32px;
	margin:3px 4px 4px 3px;
	cursor:pointer;
	display:inline-flex;
	vertical-align:top;
	align-items:center;
	justify-content:center;
	text-align:center;
	background:#c3dbaa;
	padding:2px;
	border:1px transparent solid;
	font-family:proximanovareg2;
	font-size:16px;
	line-height:1;
	color:#000;
	transition:all 0.1s linear 0s;
	will-change:opacity,background;
}
.appointonline_step2_date_pane_checker_time_list_item:hover{
	background:#cde1b8;
}
.appointonline_step2_date_pane_checker_time_list_item.active{
	background:#f6e574!important;
	transition:all 0.02s linear 0s!important;
}
.appointonline_step2_date_pane_checker_time_list_item.full_block{
	cursor:default!important;
	background:#fff!important;
	border:1px #e4e4e4 solid!important;
	color:#b2b2b2!important;
}

.appointonline_step2.checker_empty .appointonline_but_pane_cont_next{
	visibility:hidden;
}

.appointonline_step3{
	padding:50px 15px 75px 15px;
}
.appointonline_step3_inner{
	max-width:900px;
	margin:0 auto;
}
.appointonline_step3_title{
	font-family:proximanovasemibold2;
	font-size:24px;
	line-height:1;
	color:#000;
}
.appointonline_step3_text{
	margin-top:25px;
	font-family:proximanovareg2;
	font-size:17.8px;
	letter-spacing:-0.1px;
	line-height:1.5;
	color:#000;
}
.appointonline_step3_text_tel{
	font-weight:bold;
}

.appointonline_step3_enter{
	margin-top:37px;
}
.appointonline_step3_enter_inner{
	max-width:440px;
	margin:0 auto;
}
.appointonline_step3_but_pane{
	margin-top:45px;
}

.appointonline_step_union2{
	padding:50px 15px 75px 15px;
}
.appointonline_step_union2_inner{
	max-width:900px;
	margin:0 auto;
}

.appointonline_step3_resend{
	margin-top:11px;
	text-align:center;
	font-family:proximanovareg2;
	font-size:16px;
	line-height:1.2;
	color:rgba(0,0,0,0.5);
}
.appointonline_step3_resend_wait_block{
	display:none;
}
.appointonline_step3_resend_send_block a{
	display:inline-block;
	vertical-align:top;
	line-height:1.1;
	text-decoration:none;
	color:rgba(0,0,0,0.5);
	border-bottom:1px rgba(0,0,0,0.5) dashed;
}
.appointonline_step3_resend_send_block a:hover{
	border-color:transparent;
	text-decoration:none;
	color:rgba(0,0,0,0.5);
}
.appointonline_step3_resend.waiting .appointonline_step3_resend_wait_block{
	display:block;
}
.appointonline_step3_resend.waiting .appointonline_step3_resend_send_block{
	display:none;
}

.appointonline_step4_title{
	font-family:proximanovasemibold2;
	font-size:27px;
	line-height:1;
	color:#000;
}
.appointonline_step4_info{
	margin-top:27px;
	font-size:0;
	line-height:1;
}
.appointonline_step4_info_item{
	margin-top:5px;
	font-family:proximanovareg2;
	font-size:18px;
	line-height:1.3;
	color:#000;
}
.appointonline_step4_info_item:nth-child(1){
	margin:0;
}
.appointonline_step4_text2{
	margin-top:33px;
	font-family:proximanovareg2;
	font-size:15.8px;
	line-height:1.3;
	color:#000;
	letter-spacing:-0.1px;
}