form {
	position: relative;
	width:100%;
	overflow:hidden;
	text-align:left;
}

.abstand {position:relative; width:100%; display:block; height:10px;}
.zwabstand {width:3%; postion:relative; display:inline-block; background-color:#ccc;}

input,textarea, select {
	background: transparent;
	border:0px;
	border-bottom: 1px solid #115589;
	  padding-left:40px;
	  font-size:22px;
	  width:90%;
	  height:30px;
	  color:#115589;
		transition: all 1s;
		margin:0;
}


select {
	cursor:pointer;
	border: 1px solid #aaa;
	box-shadow: 0 1px 0 1px rgba(0, 0, 0, .04);
	border-radius: .5em;
	
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	color:#115589;
	/* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. 
        for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference
    */
	
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23115589%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
	background-repeat: no-repeat, repeat;
	/* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
	
	background-position: left .7em top 50%, 0 0;
	/* icon size, then gradient */
	
	background-size: .65em auto, 100%;
}
/* Hide arrow icon in IE browsers */

select::-ms-expand {
	display: none;
}


select > *:hover {
	background-color: #115589;
}
/* Focus style */

select:focus {
	border-color: #aaa;
	/* It'd be nice to use -webkit-focus-ring-color here but it doesn't work on box-shadow */
	
	box-shadow: 0 0 1px 3px rgba(0, 153, 0, .7);
	box-shadow: 0 0 0 3px -moz-mac-focusring;
	color: #222;
	outline: none;
}
/* Set options to normal weight */

select option {
	font-weight: normal;
	  background:#ccc;
  border-top:1px solid #444;
  color:#115589;
}


input[type="checkbox"] {
 -moz-appearance: None;
 -webkit-appearance: none;
 width: 40px;
 height: 40px;
background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDhweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iNDhweCIgZmlsbD0iI2NjMDAwMCI+PHBhdGggZD0iTTAgMGgyNHYyNEgwVjB6IiBmaWxsPSJub25lIiBvcGFjaXR5PSIuODciLz48cGF0aCBkPSJNMTIgMkM2LjQ3IDIgMiA2LjQ3IDIgMTJzNC40NyAxMCAxMCAxMCAxMC00LjQ3IDEwLTEwUzE3LjUzIDIgMTIgMnptMCAxOGMtNC40MSAwLTgtMy41OS04LThzMy41OS04IDgtOCA4IDMuNTkgOCA4LTMuNTkgOC04IDh6bTMuNTktMTNMMTIgMTAuNTkgOC40MSA3IDcgOC40MSAxMC41OSAxMiA3IDE1LjU5IDguNDEgMTcgMTIgMTMuNDEgMTUuNTkgMTcgMTcgMTUuNTkgMTMuNDEgMTIgMTcgOC40MXoiLz48L3N2Zz4=');
 background-size: 40px 40px;
 background-position: Center Center;
 border: none;
 outline: none;
 vertical-align: Middle;
 cursor:pointer;
 background-color:transparent;
 transition:all 1s;
border:0px;
}

input[type="checkbox"]:checked {
background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDhweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iNDhweCIgZmlsbD0iIzAwYWEwMCI+PHBhdGggZD0iTTAgMGgyNHYyNEgwVjB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bTAgMThjLTQuNDEgMC04LTMuNTktOC04czMuNTktOCA4LTggOCAzLjU5IDggOC0zLjU5IDgtOCA4em00LjU5LTEyLjQyTDEwIDE0LjE3bC0yLjU5LTIuNThMNiAxM2w0IDQgOC04eiIvPjwvc3ZnPg==');
 background-color:transparent;
 transition:all 1s;
 border:0px;
}

textarea {height:100px;}

input:focus, textarea:focus {background-color:#eee; transition:all 1s; border:0px; 	border-bottom: 1px solid #115589;}

select[name="Anrede"]{width:30%;}
input[name="Name"]{width:57%;}

input[name="PLZ"]{width:20%;}
input[name="Ort"]{width:64%;}

input[name="Strasse"]{width:66%;}
input[name="Nummer"]{width:18%;}


@media (max-width: 1000px)
{
input[name="Ort"]{width:60%;}
input[name="Strasse"]{width:62%;}
input,textarea, select {font-size:20px;}
}
@media (max-width: 560px)
{
input[name="Ort"]{width:57%;}
input[name="Strasse"]{width:59%;}
input,textarea, select {font-size:15px; padding-left:30px;}
.material-icons-kontakt {font-size:14px;}
}


label {
	position: absolute;
	display:inline-block;

}


input[type="file"] {
  -moz-border-radius: 18px;
  -moz-box-shadow: #fffff 0px 0px 11px;
  -webkit-border-radius: 18px;
  -webkit-box-shadow: #6E7849 0 0 10px;
  background-color: #fefefefe;
  background-image: -moz-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: -ms-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: -o-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: -webkit-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: linear-gradient(24deg, #d8d8d8, #fefefefe);
  border-radius: 10px;
  border: 1px solid #888888;
  box-shadow: #fffff 0px 0px 11px;
  color: #000000;
  display: inline-block;
  margin: auto;
  width:auto;
  padding-left: 40px;
  text-decoration: none;
  height:auto;
  cursor:pointer;
	
}




input[type="submit"],input[type="reset"]
{
cursor: pointer;
  -moz-border-radius: 18px;
  -moz-box-shadow: #fffff 0px 0px 11px;
  -webkit-border-radius: 18px;
  -webkit-box-shadow: #6E7849 0 0 10px;
  background-color: #fefefefe;
  background-image: -moz-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: -ms-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: -o-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: -webkit-linear-gradient(24deg, #d8d8d8, #fefefefe);
  background-image: linear-gradient(24deg, #d8d8d8, #fefefefe);
  border-radius: 10px;
  border: 1px solid #888888;
  box-shadow: #fffff 0px 0px 11px;
  color: #000000;
  display: inline-block;
  margin: auto;
  width:auto;
  padding: 4px;
  text-decoration: none;
  height:auto;
}

input[type="submit"]:hover, input[type="reset"]:hover
{
  background-image: linear-gradient(24deg, #115589, #fefefefe);
	transition: 1s all;
	padding:10px;
	
}



input:required + span::after {
	position: absolute;
	margin-left:-20px;
	height:26px;
	content: "★";
	color: red;
}

input:required:valid + span::after {
	content: "✔";
	color: green;
}

@font-face {
  font-family: 'material-icons';
  font-style: normal;
  font-weight: 400;
  src: url('../layout/material-icons.woff2') format('woff2');
}


.material-icons-kontakt {
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 28px;
	line-height:1.2;
	color:#115589;

}

