.kontakt_form p {
	font-family:arial, helvetica, verdana, geneva, sans-serif;
	font-size:12px;
	color:#808080;
	margin:0;
	padding:0;
}

.kontakt_form select {
	border:1px solid #999;
	padding:1px;
	font-family:arial, helvetica, verdana, geneva, sans-serif;
	font-size:12px;
}

tr.gray_bg,
tr.gray_bg input,
tr.gray_bg select {
	background-color:#F2F2F2;
}

tr.white_bg td {
	background-color:#FFF;
}

.kontakt_form input[type=text],
.kontakt_form textarea {
	border:1px solid #999;
	padding:2px;
	font-family:arial, helvetica, verdana, geneva, sans-serif;
	font-size:12px;
	width:150px;
}

.kontakt_form textarea {
	white-space:pre-wrap;
	width:617px;
	height:106px;
	resize:none;
}

.kontakt_form .required_star {
	font-family:verdana, arial;
	font-size:12px;
	color:#D00;
	font-weight:bold;
}

.error_field {
	background-color:#FEE !important;
	border:1px solid #F00 !important;
}

.field_table td {
	padding:3px;
}

.input_checkbox,
.input_checkbox_label {
	cursor:pointer;
}

.label {
	width:140px;
}

.error_msg {
	/*margin:0;
	padding:0;
	color:darkred !important;
	font-weight:normal;*/
	color: #D00 !important;
    margin: 0;
    padding: 0;
    font-size: 15px;
    line-height: 25px;
}

.kontakt_form .button_send {
	background-color:#0086CB;
	background:-webkit-gradient(linear, left top, left bottom, from(#69C5FF), to(#0086CB));
	background:-webkit-linear-gradient(top, #69C5FF, #0086CB);
	background:-moz-linear-gradient(top,  #69C5FF,  #0086CB);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#69C5FF', endColorstr='#0086CB');
	background:-ms-linear-gradient(top, #69C5FF, #0086CB);
	background:linear-gradient(top, #69C5FF, #0086CB);
	border:0;
	color:#FFF;
	font-family:"RotisSansSerif",Arial, sans-serif;
	font-size:13px;
	padding:4px 8px;
	cursor:pointer;
}

#id_contact_inpage .radio_check {
	width:22px;
	height:22px;
	position:relative;
	display:inline-block;
	/*margin-bottom:5px;*/
	float:left;
	clear:left;
}

#id_contact_inpage .radio_check input[type=radio] {
	height:1px;
	width:18px;
	display:none;
}

#id_contact_inpage .radio_check label {
	width:22px;
	height:22px;
	cursor:pointer;
	position:absolute;
	top:0;
	left:0;
	background:transparent;
	background:linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	border:1px solid #CCC;
}

/*#id_contact_inpage .radio_check label:before {
    content: '';
    width: 20px;
    height: 0;
    position: absolute;
    top: 10px;
    left: 1px;
    border: 3px solid #DDD;
    border-top: none;
    border-right: none;
	border-left: none;
    background: transparent;
    opacity: 0;
    transform: rotate(45deg);
}*/

#id_contact_inpage .radio_check label:before,
#id_contact_inpage .radio_check label:after {
    content: '';
    width: 22px;
    height: 0px;
    position: absolute;
    top: 9px;
    left: 0px;
    border: 3px solid #DDD;
    border-top: none;
    border-right: none;
	border-left: none;
    background: transparent;
    opacity: 0;
}

#id_contact_inpage .radio_check label:before {
  transform: rotate(45deg);
}

#id_contact_inpage .radio_check label:after {
  transform: rotate(-45deg);
}

#id_contact_inpage .contact_label {
	color:#808080;
	padding:0 0 10px 5px;
	display:block;
	float:left;
	margin:2px 0 0 7px;
	font-family: "myriad-pro", sans-serif;
    font-size: 16px;
}

/*#id_contact_inpage .radio_check label:hover::after,
#id_contact_inpage .radio_check label:hover::before {
	opacity:0.5;
}*/

#id_contact_inpage .radio_check input[type=radio]:checked + label:after,
#id_contact_inpage .radio_check input[type=radio]:checked + label:before {
	opacity:1;
}

#id_contact_inpage .request_button {
	width:420px;
	background-color:#0086CB;
	border:1px solid #0086CB;
	height:21px;
	float:left;
	padding:10px;
	text-align:center;
	color:#FFF;
	font-weight:normal;
	font-size:20px;
	cursor:pointer;
}

#id_contact_inpage .request_button.disabled {
	opacity:.5;
}

#id_contact_inpage .request_button:hover {
	opacity:1;
}

#id_contact_inpage #id_infos {
	margin:5px 0 0 5px;
}

#id_contact_inpage #id_angebot {
	margin:5px 5px 0 0;
}

.kontakt_form_inpage select {
	border:1px solid #AAA;
	padding:8px 4px;
	font-family: "myriad-pro", sans-serif;
    font-size: 16px;
	width:100%;
	margin-bottom:10px;
}

.kontakt_form_inpage input[type=text],
.kontakt_form_inpage textarea {
	border:1px solid #AAA;
	padding:5px;
	font-family: "myriad-pro", sans-serif;
    font-size: 16px;
	width:100%;
	margin-bottom:10px;
}

.kontakt_form_inpage textarea {
	margin-bottom:0;
}

.kontakt_form_inpage textarea {
	white-space:pre-wrap;
	width:549px;
	height:150px;
	resize:none;
	margin-top:2px;
}

.kontakt_form_inpage .required_star {
	font-family:verdana, arial;
	font-size:12px;
	/*color:#D00;*/
	color:#888;
	font-weight:bold;
	/*font-size:13px;*/
}

.kontakt_form_inpage .required_star.disabled {
	display:none;
}

.kontakt_form_inpage .button_send {
    cursor:pointer;
    display:inline-block;
    padding:4px 20px;
    line-height:30px;
    color:#FFF;
    border:none;
    background-color:#0086CB;
    -webkit-appearance:none;
}

.kontakt_form_inpage .button_send:hover {
	background-color:#1197DC;
}

.contactform_column {
	float:left;
}

.contactform_row {
	width:100%;
	float:left;
	clear:left;
}

#id_submit_button {
	margin-top:15px;
}

#id_contactform_h2 {
	font-family: Eurostile, "RotisSansSerif", Arial, sans-serif;
    font-size: 27px;
    color: #0086CB;
    margin: 0;
    padding: 0;
    font-weight: normal;
}

#id_contactform_h3 {
	font-family: Eurostile, "RotisSansSerif", Arial, sans-serif;
    font-size: 22px;
    color: #0086CB;
    margin: 5px 0 10px 0;
    padding: 0;
    font-weight: normal;
}

/* --- */

#c22312 {
	display:none;
}

#contact_form {
	margin-top:14px;
	background-color:#FFF;
	border-left:1px solid #E6E6E6;
	border-right:1px solid #E6E6E6;
	color:#000;
	padding:30px;
}

#contact_form h3 {
	font-size:20px;
    font-family:Eurostile, "RotisSansSerif",Arial, sans-serif;
    font-style:medium;
    font-weight:600;
    color:#0086CB;
    margin:10px 0 10px 0;
    padding:0;
}

#contact_form .formflex_container {
	display:flex;
	flex-wrap:wrap;
}

#contact_form .formflex_inner_half {
	width:48%;
}

#contact_form .formflex_half {
	width:47%;
	padding:8px 0;
	box-sizing:border-box;
}

#contact_form .formflex_inner_container {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

#contact_form .formflex_full {
	color:#4C4C4C;
	width:100%;
	padding:8px 0;
	box-sizing:border-box;
}

#contact_form input[type=text], #contact_form input[type=number], #contact_form input[type=email], #contact_form input[type=tel], #contact_form .formflex_textarea {
	font-family:Arial, Helvetica,Verdana, Geneva, sans-serif;
	padding:10px;
	width:100%;
	background:transparent;
	color:#4C4C4C;
	box-sizing:border-box;
	border:1px solid #AAA;
}

#contact_form .formflex_textarea {
	resize:none;
}

#contact_form .formflex_spacesep {
	width:6%;
	padding:8px 0px;
	box-sizing:border-box;
}

#contact_form input[type=text]::placeholder,
#contact_form input[type=email]::placeholder,
#contact_form input[type=number]::placeholder,
#contact_form input[type=tel]::placeholder,
.formflex_textarea::placeholder {
	color:#AAA;
}

#contact_form .radio_check {
	width:22px;
	height:22px;
	position:relative;
	display:inline-block;
	float:left;
}

#contact_form .radio_check input[type=radio] {
	height:1px;
	width:18px;
	-moz-appearance:none;
}

#contact_form .radio_check label {
	width:22px;
	height:22px;
	cursor:pointer;
	position:absolute;
	top:0;
	left:0;
	background:transparent;
	background:linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	border:1px solid #AAA;
}

#contact_form .sex_label {
	color:#AAA;
	padding:5px 15px 0 10px;
	box-sizing:border-box;
	float:left;
}

#contact_form .radio_check label:after {
    content: '';
    width:12px;
    height:5px;
    position:absolute;
    top:5px;
    left:4px;
    border:3px solid #0086CB;
    border-top:none;
    border-right:none;
    background:transparent;
    opacity:0;
    transform:rotate(-45deg);
}

#contact_form .formflex_button button {
    font-size:15px;
	font-weight:bold;
    color:#FFF;
    background-color:#0086CB;
    width:33%;
    float:left;
    padding:9px 35px;
    border:none;
	cursor:pointer;
}

#contact_form .formflex_button button:hover {
    background-color:#0097DC;
}

#contact_form .mandatory_label {
    float:right;
    font-size:12px;
	color:#AAA;
}

#contact_form .radio_check label:hover::after {
	opacity: 0.5;
}

#contact_form .radio_check input[type=radio] {
	height: 1px;
	width: 18px;
	visibility:hidden;
	-moz-appearance: none;
}

#contact_form .radio_check input[type=radio]:checked + label:after {
	opacity: 1;
}