*, ::after, ::before {
	box-sizing: border-box;
}

/* Plugin Settings */
.checkbox_img_default {
	display:table;
	cursor:pointer;
}
.checkbox_img_default>div {
	display:table-row;
	cursor:pointer;
}
.checkbox_img_default>div>div {
	display:table-cell;
	cursor:pointer;
	vertical-align:middle;
}
/*.invalid-feedback {*/
/*	display: none;*/
/*	width: 100%;*/
/*	margin-top: 0.25rem;*/
/*	font-size: 80%;*/
/*	color: #dc3545;*/
/*}*/
.invalid-feedback {
	display: none;
	width: 100%;
	margin-top: .25rem;
	font-size: 80%;
	color: #dc3545;
}
.invalid-feedback { display: block }

[hidden] {
	display: none !important;
}

.form-errors {
	max-width: 1000px;
	display: block;
	background-color: #ffc0c0;
	padding: 1rem;
	margin: auto auto 1rem;
}

.textfeld-select {
	width:75px;
	font-family:'Maven Pro', Verdana, Arial, Helvetica, sans-serif;
	background:#FFFFFF;
	border:1px solid #dfdfdf;
	font-size:8pt;
	line-height:10pt;
	padding:0;
}

.textfeld-voll,
.textfeld-halb,
.textfeld-plz,
.textfeld-ort,
.textarea-voll,
.textfeld-captcha,
.dropdown-halb,
.dropdown-uhr,
.textfeld-datum {
	font-family:'Maven Pro',Verdana,Arial, Helvetica, sans-serif;
	line-height:10pt;
	padding:5px 0;
	min-height:17px;
	color:#3c3c3c;
	display: grid;
}
.textfeld-voll, .dropdown-voll { width: 100%; }
.textfeld-halb, .dropdown-halb { flex: 0 0 50%; max-width: 50%; }
.textfeld-plz { flex: 0 0 25%; max-width: 25%; }
.textfeld-ort { flex: 0 0 75%; max-width: 75%; }
.textarea-voll { flex: 0 0 100%; max-width: 100%;}
.Code_Reload.Captcha_Sicherheitscode {  }
.Captcha_Sicherheitscode > td {  }
#kontakt {
	max-width: 1220px;
	margin: auto;
}
#kontakt td {padding-bottom: 10px;}
#kontakt label {margin-bottom: 5px;}
#kontakt input:not(input[type="checkbox"]):not(input[type="radio"]):not(input[type="submit"]), #kontakt textarea, #kontakt select {
	display: block;
	width: 100%;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	/*background-color: #fff;*/
	padding: 0.375rem 0.75rem;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
#kontakt .error_field input:not(input[type="checkbox"]):not(input[type="submit"]),
#kontakt .error_field textarea,
#kontakt .error_field select,
.is-error {
	border: 1px solid #dc3545! important;
}
#kontakt .error_field input[type="radio"],
#kontakt .error_field input[type="checkbox"] {
	-webkit-box-shadow: 0 0 0 1px #dc3545;
	-moz-box-shadow: 0 0 0 1px #dc3545;
	box-shadow: 0 0 0 1px #dc3545;
}

#form td {padding-bottom: 10px;}

.textfeld-captcha {
	/*height: 60px;*/
	/*margin-top: -5px;*/
	width: 10em;
}
.dropdown-halb {
	flex: 0 0 auto;
	width: 50%;
}

/* contactform CAPTCHA begin */
#contactform_captcha_table {
	width:262px;
	padding:0;
}
#contactform_captcha_table td {
	padding:0;
}
#contactform_captcha_table_td1 img {
	margin:0;
}
#contact_form_captcha_img_id {
/*	margin:0px;*/
}
#contactform_captcha_table_td2 {
	width:27px;
}
#contactform_captcha_table_td3 {
	vertical-align:middle;
}
#contactform_captcha_table_td3 input {
	width:86px;
}

.reload_captcha {
	width:23px;
	height:50px;
	cursor:pointer;
	background:url(/templates/images/reload.png) no-repeat #12970a;
	float: left;
}

.sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}


/* contactform CAPTCHA end */

/* Fehlermeldungen */

.error_box { background: transparent; border: 1px solid #e4001c; margin: 15px 0; max-width: 95%; }
.error_box > tbody {}

.error_td_headline { color: #e4001c; padding: 10px; vertical-align: top; }
.error_td { padding: 10px;}


/* Fehlermeldungen Ende */


/* Erfolgreich verschickt */

.success_class {
	background: transparent;
	border: 1px solid #6dc54b;
	margin: 15px 0;
	max-width: 95%;
	font-weight: 300;
	color: #519137;
	text-align: center;
	font-size: 18px;
	padding: 10px;
}

/* Erfolgreich verschickt Ende */

/* Formularfelder */


.radio_field>div {
	display:inline-block;
	padding:1px 20px 2px 0;
}
.radio_field>div>div {
	display:inline-block;
}

#kontakt tr td {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#kontakt input[type="checkbox"], #kontakt input[type="radio"] {
	float: left;
	margin-top: 3px;
	margin-right: 5px;
}
#kontakt .pflichtfeld {
	color: red;
	font-size: 13px;
	vertical-align: text-top;
	margin-right: 5px;
}

#kontakt td > div:first-child:not(div:last-child) {
	padding-right:10px
}
#kontakt .form-container_tr_Captcha.Label td,
#kontakt .form-container_tr_Datenschutzhinweis td,
#kontakt .form-container_tr_Button td,
#kontakt .form-container_tr_Datenschutz td,
#kontakt .form-container_tr_Meine.Kontaktdaten td,
#kontakt .form-container_tr_Sepa.Einleitung td ,
#kontakt .form-container_tr_Kontoinhaber td,
#kontakt .form-container_tr_SEPA-Lastschrift td,
#kontakt .form-container_tr_Überweisung td {
	display: block;
}
#kontakt td > div:first-child:not(div:last-child) {
	padding-right:10px
}
#kontakt p, #kontakt h3 { margin-bottom:1rem }