/* Baiseinstellungen */


body {
	background-color: rgba(255,255,255,1.00);
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}
* {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.floating {
	float: left;
}
.float-right {
	float: right;
}
.clearing-both {
	clear: both;
}
.responsive {
  max-width: 100%;
  height: auto;
}

/* font style und color 

font-family: "address-sans-pro", sans-serif;
font-weight: 300;
font-style: normal;

font-family: "address-sans-pro", sans-serif;
font-weight: 300;
font-style: italic;

font-family: "address-sans-pro", sans-serif;
font-weight: 400;
font-style: normal;

font-family: "address-sans-pro", sans-serif;
font-weight: 400;
font-style: italic;

font-family: "address-sans-pro", sans-serif;
font-weight: 600;
font-style: normal;

font-family: "address-sans-pro", sans-serif;
font-weight: 600;
font-style: italic;

font-family: "address-sans-pro", sans-serif;
font-weight: 700;
font-style: normal;

font-family: "address-sans-pro", sans-serif;
font-weight: 700;
font-style: italic;

font-family: "address-sans-pro", sans-serif;
font-weight: 800;
font-style: normal;

font-family: "address-sans-pro", sans-serif;
font-weight: 800;
font-style: italic;

*/

.orange {
	color: rgba(236,166,18,1.00);
}
.blue {
	color: rgba(0,102,136,1.00);
}
.weiss {
	color: rgba(255,255,255,1.00);
}

/* Layout DIV´s */




/* Burger Navigation */

.header {
	position: fixed;
	width: 100%;
	z-index: 3;
	height: 100px;
	background-color: rgba(255,255,255,1.00)
}

.head-top {
	width: calc(100vw - 60px);
	background-color: rgba(0,102,136,1.00);
	display: inline-block;
	padding: 5px 30px;
	color: rgba(255,255,255,1.00);
	font-size: 15px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: italic;
	text-decoration: none;
	letter-spacing: 1.15px;
}
.head-top a {
	color: rgba(255,255,255,1.00);
	font-size: 15px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: italic;
	margin-left: 20px;
	margin-right: 20px;
	text-decoration: none;
	letter-spacing: 1.15px;
}
.head-top a:hover {
	color: rgba(255,255,255,0.66);
	text-decoration: underline;
}

.header ul {
  margin-top: 30px;
  margin-right: 30px;
  list-style: none;
  overflow: hidden;
  float: left;
}
.header li a {
	display: block;
	padding: 5px 10px;
	text-decoration: none;
	border: 1px solid rgba(255,255,255,0.00);
	box-shadow: inset 0 0 0 0 rgba(0,102,136,1.00);
	transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-webkit-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-moz-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
}

.header li a:hover,
.header .menu-btn:hover {
	color: rgba(255,255,255,1.00);
	box-shadow: inset 0 37px 0 0 rgba(0,102,136,1.00);
	border: 1px solid rgba(0,102,136,1.00);
	text-decoration: none;
}

.header .logo {
	display: block;
	float: left;
	margin-left: 30px;
	margin-top: 15px;
}


/* menu */


.header .menu {
  clear: both;
  max-height: 0;
  transition: max-height .2s ease-out;
}

/* menu icon */

.header .menu-icon {
  cursor: pointer;
  display: inline-block;
  float: right;
  padding: 35px 20px;
  position: relative;
  user-select: none;
}

.header .menu-icon .navicon {
  background: #333;
  display: block;
  height: 2px;
  position: relative;
  transition: background .2s ease-out;
  width: 18px;
}

.header .menu-icon .navicon:before,
.header .menu-icon .navicon:after {
  background: #333;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  transition: all .2s ease-out;
  width: 100%;
}

.header .menu-icon .navicon:before {
  top: 5px;
}

.header .menu-icon .navicon:after {
  top: -5px;
}

/* menu btn */

.header .menu-btn {
  display: none;
}

.header .menu-btn:checked ~ .menu {
  max-height: 3000px;
}

.header .menu-btn:checked ~ .menu-icon .navicon {
  background: transparent;
}

.header .menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}

.header .menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}

.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  top: 0;
}
main {
	width: 100vw;
	height: 100%;
	position: relative;
	top: 150px;
}
.main-img {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100vw;
	height: auto;
	overflow-x: hidden;
	object-fit: cover;
}
.main-pic-teaser-pos {
	box-sizing: content-box;
	padding: 0 2.5%;
	max-width: 1500px;
	width: 95%;
	position: absolute;
	top: 5vh;
	left: 50%;
	transform: translateX(-50%);
}
.main-pic-teaser-bg {
	max-width: 37.5%;
	background-color: rgba(255,255,255,1.00);
	padding: 20px;
}
.teaser-headline {
	color: rgba(0,102,136,1.00);
	font-size: 30px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	margin-bottom: 25px;
	line-height: 33px;
}
.teaser-content {
	color: rgba(0,0,0,1.00);
	font-size: 22px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	margin-bottom: 35px;
}
.teaser-link {
	display: inline-block;
}
.teaser-link a {
	padding: 2px 20px;
	border: 2px solid rgba(0,102,136,1.00);
	-moz-border-radius: 5px 5px 5px 5px;
	-webkit-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	color: rgba(0,102,136,1.00);
	font-size: 25px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: italic;
	text-decoration: none;
	box-shadow: inset 0 0 0 0 rgba(0,102,136,1.00);
	transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-webkit-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-moz-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
}
.teaser-link a:hover {
	box-shadow: inset 0 50px 0 0 rgba(0,102,136,1.00);
	color: rgba(255,255,255,1.00);
}
.main-box-call {
	color: rgba(0,102,136,1.00);
	font-size: 18px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	text-decoration: none;
}
.leistungen-sec {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	background-color: rgba(0,102,136,1.00);
	width: 100vw;
	height: auto;
	justify-content: center;
}
.leistungen-headline {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-top: 45px;
	margin-bottom: 50px;
	margin-left: 50px;
	margin-right: 50px;
	font-size: 27px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	text-transform: uppercase;
	letter-spacing: 1.15px;
}
.leistungen-container {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0px 50px 30px 50px;
	width: calc(100vw - 100px);
	height: 100%;
	justify-content: space-between;
	align-content: stretch;
}
.leistungen-recht {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0px 50px 30px 50px;
	width: calc(100vw - 100px);
	height: 100%;
	justify-content: space-between;
	align-content: stretch;
}
.leistungen-box {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 27%;
	align-items: stretch;
	margin-bottom: 50px;
}
.leistungen-container h2 {
	font-size: 22px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	margin-bottom: 15px;
	letter-spacing: 1.15px;
}
.leistungen-container p {
	font-size: 15px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	margin-bottom: 35px;
	letter-spacing: 1.15px;
	line-height: 1.5;
}
.leistungen-recht h2 {
	font-size: 22px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	margin-bottom: 15px;
	letter-spacing: 1.15px;
}
.leistungen-recht p {
	font-size: 15px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	margin-bottom: 35px;
	letter-spacing: 1.15px;
	line-height: 1.5;
}
.leistungen-recht address {
	font-size: 15px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	margin-bottom: 35px;
	letter-spacing: 1.15px;
	line-height: 1.5;
}
.leistungen-recht a {
	font-size: 15px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	color: rgba(255,255,255,1.00);
	margin-bottom: 35px;
	letter-spacing: 1.15px;
	line-height: 1.5;
}
.leistungen-link {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-top: auto;
	padding-bottom: 10px;
	text-transform: uppercase;
}
.leistungen-link a {
	font-size: 17px;
	padding: 2px 20px;
	border: 2px solid rgba(255,255,255,1.00);
	-moz-border-radius: 5px 5px 5px 5px;
	-webkit-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	color: rgba(255,255,255,1.00);
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	text-decoration: none;
	box-shadow: inset 0 0 0 0 rgba(0,102,136,1.00);
	transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-webkit-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-moz-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	letter-spacing: 1.15px;
}
.leistungen-link a:hover {
	box-shadow: inset 0 50px 0 0 rgba(255,255,255,1.00);
	color: rgba(0,102,136,1.00);
}
.servicelist {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 50px 50px;
}
.servicelist h2 {
	color: rgba(0,102,136,1.00);
	font-size: 30px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	margin-bottom: 40px;
}
.servicelist ul {
	margin-left: 50px;
	padding-bottom: 25px;
}
.servicelist li {
	color: rgba(0,0,0,1.00);
	font-size: 22px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 2;
	list-style-position: outside;
	list-style-type: none;
	list-style-image: url("../img/icon-haken.png")
}
.servicelist .sple {
	margin-left: 25px;
}
.servicelist-link {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-end;
	align-items: center;

}
.servicelist-link a {
	padding: 2px 20px;
	border: 2px solid rgba(236,166,18,1.00);
	-moz-border-radius: 5px 5px 5px 5px;
	-webkit-border-radius: 5px 5px 5px 5px;
	border-radius: 5px 5px 5px 5px;
	color: rgba(236,166,18,1.00);
	font-size: 25px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: italic;
	text-decoration: none;
	box-shadow: inset 0 0 0 0 rrgba(236,166,18,1.00);
	transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-webkit-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
	-moz-transition: color .2s ease-in-out, box-shadow .2s ease-in-out;
}
.servicelist-link a:hover {
	box-shadow: inset 0 50px 0 0 rgba(236,166,18,1.00);
	color: rgba(255,255,255,1.00);
}
.servicelist-box-call {
	color: rgba(236,166,18,1.00);
	font-size: 18px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 600;
	font-style: normal;
	text-decoration: none;
}
footer {
	width: 100vw;
	height: 100%;
	position: relative;
	top: 150px;
}
.subnav {
	width: calc(100vw - 100px);
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	background-color: rgba(102,102,102,1.00);
	padding: 30px 50px;
}
.subnav-box {
	width: 30vw;
}
.subnav-box h3 {
	color: rgba(255,255,255,1.00);
	font-size: 20px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 400;
	font-style: italic;
	margin-bottom: 15px;
}
.subnav-box ul {
	margin-bottom: 25px;
}
.subnav-box li {
	color: rgba(255,255,255,1.00);
	font-size: 17px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	list-style-type: none;
	list-style-position: inherit;
	line-height: 1.75;
}
.subnav-box li a {
	color: rgba(255,255,255,1.00);
	text-decoration: none;
	cursor: pointer;
}
.subnav-box li a:hover {
	color: rgba(236,166,18,1.00);
	text-decoration: underline;
}
.copyright {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content : space-between;
	background-color: rgba(51,51,51,1.00);
	padding: 10px 50px;
}
.copyright p {
	font-size: 17px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
}
.copyright a {
	font-size: 17px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: normal;
	text-decoration: none;
	cursor: pointer;
}
.copyright a:hover {
	color: rgba(255,255,255,1.00);
	text-decoration: underline;
}


/* Colorbox Overlay CSS Design*/

/* kontakt overlay */

.kontakt {
	width: 620px !important;
	padding: 25px;
}
.kontakt-left {
	float: left;
}
.kontakt-right {
	float: left;
	padding-left: 75px;
}
.kontakt p {
	margin-top: 10px;
	margin-bottom: 2px;
}

/* kontakt form style */

.errfee {
	height:20px;
	padding: 5px;
}
.oinpdes {
	width: 250px;
	margin-top: 20px;
	padding: 5px;
	border: none;
	outline: 1px dashed #e3007e;
	outline-offset: 2px;
	font-family: "franklin-gothic-urw-comp",sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 11pt;
}

.ovchebodes {
	border: none;
	font-family: "franklin-gothic-urw-comp",sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 11pt;
}

.ovlabli {
	text-decoration:none;
	color:#e3007e;
}
.ovlabli:hover {
	text-decoration:underline;
}
.ovlabpos {
	margin-left:10px;
	font-family: "franklin-gothic-urw-comp",sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 11pt;
}
.ovtxtstyle {
	font-family: "franklin-gothic-urw-comp",sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 11pt;
}

.oinpdes:hover {
	background-color: rgba(5, 44, 108, 0.05);
}
textarea {
	width: 575px;
	height: 200px;
	margin-top: 40px;
	padding: 5px;
	border: none;
	outline: 1px dashed #e3007e;
	outline-offset: 2px;
	font-family: "franklin-gothic-urw-comp",sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 11pt;
}
textarea:hover {
	background-color: rgba(5, 44, 108, 0.05);
}
.msg-submit {
	background-color: #ffffff;
	color: #e3007e;
	width: 100px;
	font-family: "franklin-gothic-urw-comp",sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 11pt;
}
.msg-submit:hover {
	background-color: rgba(5, 44, 108, 0.05);
	width: 100px;
}
.posKontaktForm a {
	color: #e3007e;
}
#error {
    background-color: #e3007e;
}
.error {
    color: #e3007e;
}
.error-incorrect {
    background-color: #f5a90c;
}
#error-incorrect {
    background-color: #f5a90c;
}
.red-color-txt {
	color: #ff6600;
}
.posFehlerKontaktForm {
	display: none;
}
.posKontaktForm {
	display: none;
}

#contact .error input, #contact .error textarea {
	border: thin solid #e3007e;
}

/* Startseite Layout big */

@media screen and (min-width: 1281px) {
  .header {
		height: 150px;
	}
  .header li {
	float: left;
	font-size: 18px;
	font-family: "address-sans-pro", sans-serif;
	font-weight: 300;
	font-style: italic;
  }
  .header li a {
	margin: 40px 2px;
	color: rgba(0,0,0,1.00);
  }
  .header .menu {
		clear: none;
		float: right;
		max-height: none;
  }
  .header .menu-icon {
		display: none;
  }
}

/* Startseite Layout mobile nav */

@media screen and (max-width: 1280px) {
	.header ul {
	  width: 100%;
	  background-color: #F0F0F0;
	  margin-top: 0px;
	}
	.header li {
		font-size: 18px;
		font-family: "address-sans-pro", sans-serif;
		font-weight: 300;
		font-style: italic;
  }
	.header li a {
		margin: 0px 0px;
		padding: 2.5px 25px;
		color: rgba(0,0,0,1.00);
		border: 1px solid #F0F0F0;

  }
	.st {
		padding-top: 10px;
	}
	.sb {
		padding-bottom: 10px;
	}
	.header .logo {
		display: block;
		float: left;
		margin-left: 30px;
		margin-top: 7px;
		max-width: 200px !important;
	}
	main {
		top: 100px;
	}
		.main-pic-teaser-pos {
		box-sizing: content-box;
		padding: 0 5%;
		max-width: 1500px;
		width: 95%;
		position: absolute;
		top: 20vh;
		left: 50%;
		transform: translateX(-50%);
	}
}

/* Startseite Layout mobile nav */

@media screen and (max-width: 1024px) {
	.leistungen-box {
		width: 44%;
		margin-bottom: 50px;
	}
	.main-pic-teaser-pos {
		box-sizing: content-box;
		padding: 5% 2.5vw;
		width: 95vw;
		position: relative;
		top: 0vh;
		left: 0%;
		transform: translateX(-0%);
		background-color: #F0F0F0;
	}
	.main-pic-teaser-bg {
		max-width: 100% !important;
		background-color: #F0F0F0;
		padding: 20px;
	}
}

@media screen and (max-width: 600px) {
	.show {
		display: none;
	}
	.leistungen-box {
		width: 100%;
		margin-bottom: 50px;
	}
}
@media screen and (max-width: 550px) {
	.head-top {
		width: calc(100vw - 30px);
		padding: 5px 15px;
		font-size: 14px;
	}
	.call-show {
		display: none;
	}
	.teaser-headline {
		font-size: 25px;
	}
	.teaser-content {
		font-size: 18px;
	}
	.teaser-link a {
		font-size: 22px;
	}
	.teaser-link a:hover {
		box-shadow: inset 0 50px 0 0 rgba(0,102,136,1.00);
		color: rgba(255,255,255,1.00);
	}
	.leistungen-headline {
		font-size: 22px;
	}
	.leistungen-box h2 {
		font-size: 20px;
		font-family: "address-sans-pro", sans-serif;
		font-weight: 600;
		font-style: normal;
		color: rgba(255,255,255,1.00);
		margin-bottom: 15px;
		letter-spacing: 1.15px;
	}
	.leistungen-box p {
		font-size: 15px;
	}
	.leistungen-link a {
		font-size: 15px;
	}
	.servicelist {
		margin: 25px 25px;
	}
	.servicelist h2 {
		font-size: 22px;
	}
	.servicelist li {
		font-size: 18px;
		line-height: 1.5;
	}
	.servicelist-link a {
		font-size: 22px;
	}
	footer {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.subnav {
		width: calc(100vw - 50px);
		padding: 30px 25px;
	}
	.subnav-box {
		width: 50vw;
	}
	.subnav-container h3 {
		font-size: 18px;
	}
	.subnav-box li {
		font-size: 14px;
	}
	.copyright {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		justify-content : space-between;
		background-color: rgba(51,51,51,1.00);
		padding: 10px 50px;
	}
	.copyright p {
		font-size: 14px;
		padding-bottom: 5px;
	}
	.copyright a {
		font-size: 15px;
	}
}
