*{
	padding:0px;
	margin:0px;
	font-family: informapro, 'Helvetica','Arial', sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size:16px;
	color:#000;
	border:0px;
	outline:none;
	text-decoration:none;
	border-collapse:collapse;
	vertical-align:top;
	-webkit-text-size-adjust: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
html,body {
	position: relative;
	width:100%;
	height:100%;
	background:#fff;
}
.mitte{
	display: block;
	margin:auto;
	max-width: 800px;
}
h2{
	display: block;
	margin:0 25px;
	margin-bottom: 50px;
	font-size:24px;
	font-style: italic;
}
h3{
	display: block;
	margin-bottom: 10px;
	font-weight: 400;
}
strong{
	font-weight: 500;
	display:inline-block;
	margin-bottom: 5px;
	font-size:inherit;
	text-align: left;
}
.small{
	font-size:14px;
}
ul,li,a{
	font-size:inherit;
}
ul{
	padding:5px 0px;
	padding-left:15px;
}
li{
	padding:3px 0px;
}
/* NAV #######################################################################*/
.nav{
	position:absolute;
	position:fixed;
	top:0px;
	left:0px;
	height:160px;
	width:100%;
	background:#fff;
	text-align:center;
	z-index:99;
	border-bottom:1px solid rgba(0,0,0,0);
	transition:all 0.3s;
}
.nav.scroll{
	height: 135px;
	box-shadow: 0px 0px 1px rgba(0,0,0,0.5);
}
.nav.scroll .logo{
	width:160px;
	margin-top:10px;
}
.nav .logo{
	display:block;
	margin:auto;
	width:220px;
	height: auto;
	margin-top:10px;
	margin-bottom:20px;
	transition:all 0.3s;
}
.nav .logo img{
	width:100%;
	height: auto;
}
.nav .btns{
	position: relative;
	display: inline-block;
}
.nav .btns br{
	display: none;
}
.nav .btns a{
	position:relative;
	margin:0px 10px;
	padding:0px 5px;
	letter-spacing: 1px;
	font-size:18px;
}
.nav .btns a div{
	position:absolute;
	bottom:-2px;
	left:0px;
	height:2px;
	width:100%;
	background:#a13737;
	opacity:0;
	transition:all 0.2s;
}
.nav .btns a.over div{
	opacity:1;
	bottom:-7px;
}
.nav .btns a.aktiv div{
	opacity:0;
	bottom:-7px;
}
.nav .btns .linie{
	position: absolute;
	left:10px;
	bottom:-7px;
	width:0px;
	height:2px;
	background:#a13737;
	transition:all 0.5s;
}
.nav_abstand{
	display: block;
	height: 160px;
}
.nav .menu{
	position: absolute;
    display: none;
	top:50%;
	right:0px;
    width:30px;
    height: 18px;
    padding:30px 20px;
	margin-top: -40px;
}
.nav .menu .linie{
    display: block;
    position: relative;
    width:100%;
    height: 2px;
	background:#a13737;
    margin-bottom:6px;
    transition: all 0.2s;
}
.nav .menu.over .linie{
    height: 1px;
    margin-bottom:7px;
    opacity: 0.5;
    transition: all 0.2s;
}
.nav .menu .linie:last-child{
    margin-bottom:0px;
}
.nav .menu.aktiv .linie{
    opacity: 0;
}
.nav .menu.aktiv .linie:first-child{
    opacity: 1;
    margin-top:8px;
    transform: rotate(-45deg);
}
.nav .menu.aktiv .linie:last-child{
    opacity: 1;
    margin-top:-16px;
    transform: rotate(45deg);
}
/* CONTENT ###################################################################*/
.content{
	display: block;
	position: relative;
}
.content a:hover{
	text-decoration: underline;
}
.content .banner{
	display: block;
	position: fixed;
	top:85px;
	left:0px;
	width: 100%;
	height: calc(100vh - 85px);
	overflow: hidden;
	z-index:1;
}
.content .banner .mask{
	position: absolute;
	left:0px;
	top:0px;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.content .banner img{
	position: absolute;
	left:0px;
	top:0px;
	width: 100%;
	height: calc(100vh - 85px);
	object-fit: cover;
}
.content .platzhalter{
	display: block;
	position: relative;
	top:0px;
	left:0px;
	height: calc(100vh - 85px);
}
.content .platzhalter.first{
	height: calc(100vh - 280px);
}
.content .text{
	display: block;
	position: relative;
	margin:auto;
	padding:50px 0;
	z-index:50;
	background: #fff;
	width:100%;
	box-shadow: 0px 0px 100px rgba(0,0,0,0.3),0px 0px 1px rgba(0,0,0,0.5);
}
.content .text .zeile{
	display:block;
	position: relative;
	white-space: nowrap;
	width: 100%;
}
.content .text .zeile.spalten{
	white-space: normal;
	padding:0px 25px;
	width:calc(100% - 50px);
	padding-bottom:30px;
}
.content .text .spalte{
	display: inline-block;
	position: relative;
	vertical-align: top;
	padding:0px 25px;
	width:calc(50% - 50px);
	white-space: normal;
	text-align: justify;
}
.content .text .abschluss{
	display: block;
	margin-top:20px;
}
.content .text .abschluss div{
	width:100px;
	height: 2px;
	background:#a13737;
	margin-top:20px;
	float:right;
}
.content .pkt{
	position: relative;
	display: block;
	margin-top:20px;
	padding-left:25px;
}
.content .pkt.sub{
	padding-left: 50px;
}
.content .pkt div{
	position: absolute;
	top:0px;
	left:0px;
	background:#a13737;
	height: 100%;
	width:2px;
}
.content .pkt.sub div{
	left:27px;
}
.content .maps{
	display: block;
	position: relative;
	padding-left:60px;
	padding-top:5px;
}
.content .maps .icon{
	position: absolute;
	left:0px;
	top:0px;
	line-height: 11px;
	text-align: center;
	text-decoration: none;
}
.content .maps .icon:hover{
	opacity: 0.5;
}
.content .maps .icon span{
	font-size:11px;
	line-height: 11px;
	text-align: center;
	opacity: 0.5;
}
.content .maps .icon img{
	vertical-align: top;
	width:50px;
	height: 50px;
	display: block;
}
.content .foto{
	position: absolute;
	width:200px;
	right:-100px;
	top:5px;
	border-radius: 3px;
}
.content .foto_links{
	float:right;
	width:100px;
	height:310px;
}
.content .foto_rechts{
	float:left;
	width:100px;
	height:310px;
}
/* FOOTER ####################################################################*/
.footer{
	position:relative;
	display:block;
	height:70px;
	width:100%;
	text-align:center;
	padding-top:50px;
}
.footer a{
	position: relative;
	margin:0px 10px;
	padding:0px 5px;
	letter-spacing: 1px;
	font-size:14px;
	transition:all 0.5s;
	text-decoration: none;
}
.footer a div{
	position:absolute;
	bottom:-2px;
	left:0px;
	height:2px;
	width:100%;
	background:#a13737;
	opacity:0;
	transition:all 0.2s;
}
.footer a:hover div,.footer a.aktiv div{
	opacity:1;
	bottom:-8px;
}
/* COOKIE ####################################################################*/
.cookie{
	position: fixed;
	bottom:0px;
	left:0px;
	width:calc(100% - 40px);
	padding:10px 20px;
	background: #fff;
	border-top:0px solid rgba(0,0,0,0.05);
	z-index:200;
	font-size:12px;
	text-align:center;
	color:#fff;
	background:#a13737;
	transition:all 1s;
}
.cookie.hide{
	bottom:-200px;
}
.cookie a{
	color:#fff;
	font-size:12px;
	font-style:normal;
	text-decoration: underline;
	vertical-align: baseline;
}
.cookie a:hover{
	text-decoration: none;
}
.cookie .ok{
	display:inline-block;
	background:#fff;
	padding:5px 10px;
	margin:3px 10px;
	text-decoration: none;
	color:#000;
	font-weight:400;
}
.cookie .ok:hover{
	background:#eee;
}

.abstand_mobil,.abstand_mobil_20{
	display:none;
}

/* RD ########################################################################*/
@media only screen and (max-width:639px){
	.nav{
		height:110px;
	}
	.nav.scroll{
		height: 85px;
	}
	.nav .menu{
		display: block;
	}
	.nav .btns{
		display: block;
		background: #fff;
		position: absolute;
		top:110px;
		left:0px;
		width: 100%;
		opacity: 0;
		transition:top 0.3s, margin-left 0.2s, opacity 0.2s;
		padding-top:10px;
		padding-bottom:20px;
		box-shadow: 0px 1px 1px rgba(0,0,0,0.25);
		margin-left:calc(100vw + 5px);
	}
	.nav .btns.open{
		margin-left:0vw;
		opacity: 1;
	}
	.nav.scroll .btns{
		top:85px;
	}
	.nav .btns br{
		display: inline-block;
	}
	.nav .btns a{
		display: inline-block;
		padding:3px;
		margin:5px;
	}
	.nav .btns a.over div{
		bottom:-4px;
	}
	.nav .btns a.aktiv div{
		bottom:-4px;
		opacity: 0;
	}
	.content .text .spalte{
		display: block;
		width:calc(100% - 50px);
	}
	.content .text .spalte:first-child{
		padding-bottom:20px;
	}
	.content .foto{
		right:25px;
	}
	.content .foto_links{
		width:225px;
	}
	.content .foto_rechts{
		display:none;
	}
}
@media only screen and (max-width:450px){
	*{
		font-size:14px;
	}
	.small{
		font-size:12px;
	}
}
@media only screen and (max-width:380px){
	.content .foto{
		display:block;
		margin:auto;
		margin-bottom:30px;
		margin-top:-20px;
		right: auto;
		position: relative;
	}
	.content .foto_links{
		display:none;
	}
}
@media only screen and (max-width:360px){
	.nav .logo{
		margin-top:18px;
		width:180px;
	}
}
