body {
font-family: "futura-pt", sans-serif;
font-weight: 400;
font-style: normal;
font-weight: 400;
margin:0;
padding:0;
border:0;
width:100%;
height:auto;
display:block;
text-align: left;
font-style: normal;
margin:0px;
padding:0px;
font-size:15px;
-webkit-text-size-adjust: none;
text-size-adjust: none;
color: #033370;
line-height: 1.5em;
letter-spacing: 0.05rem;
}

a {
text-decoration:none;
color: #033370;
}



.inhalt2spalten a {

}

h1 {
font-family: "futura-pt", sans-serif;
font-weight: 500;
font-style: normal;
color: #033370;
text-align: left;
font-size: 2.6em;
line-height: 1.3em;
letter-spacing: 0.04rem;
margin: 0px 0 15px 0;
}

h2 {
font-family: "futura-pt", sans-serif;
font-weight: 500;
font-style: normal;
color: #033370;
text-align: left;
font-size: 2.6em;
line-height: 1.3em;
letter-spacing: 0.04rem;
margin: 0px 0 15px 0;
}

h3 {
font-family: "futura-pt", sans-serif;
font-weight: 500;
font-style: normal;
color: #033370;
text-align: left;
font-size: 2.0em;
line-height: 1.3em;
letter-spacing: 0.04rem;
margin: 0px 0 15px 0;
}

h4 {
font-family: "futura-pt", sans-serif;
font-weight: 600;
font-style: normal;
color: #033370;
text-align: left;
font-size: 1.2em;
line-height: 1.3em;
letter-spacing: 0.04rem;
margin: 0px 0 15px 0;
}

strong {
font-weight: 600;
color: #033370;
font-size:18px;
}

.inhalt {
width: 100%;
height: auto;
position: relative;
margin-top: 50px;
margin: 0 auto;
max-width: 1800px;
overflow: hidden;
}

header .kontakt {
background-color: #033370;
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
z-index: 2;
width: 95%;
margin: 0 auto;
padding-left: 2.5%;
padding-right: 2.5%;
padding-top: 5px;
padding-bottom: 5px;
}

header .kontakt img {
width: 17px;
height: auto;
margin-right: 5px;
top: 2px;
position: relative;
}

header .kontakt .email img {
top: 1px;
}

header .kontakt .standort img {
width: 12px;
top: 4px;
}

header .kontakt a {
color: #fff;
}


header .headerinner {
background-color: #fff;
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
z-index: 2;
width: 95%;
margin: 0 auto;
padding-left: 2.5%;
padding-right: 2.5%;
padding-top: 5px;
padding-bottom: 5px;
padding-top: 20px;
padding-bottom: 20px;
}

.headerinner .logo {
width: 20%;
height: auto;
position: relative;
}

.headerinner .logo img {
width: 100%;
height: auto;
}

 .schnellbuttons {
width: 50%;
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
z-index: 2;
text-align: center;
}

 .schnellbuttons a {
color: #033370;
}

.schnellbuttons img {
width: 45px;
height: auto;
}

.schnellbuttons .tyne img {
width: 100px;
height: auto;
}
.schnellbuttons .tyne span {
display:none;
}





#nav-icon1 span {
background-color: #033370;
width:100%;
height:2px;
margin: 7px 0;
position: relative;
display: block;
transition:transform .5s;
left:0;
}

#nav-icon1 span:nth-child(2) {
width: 20px;
margin-left: 20px;
}

#nav-icon1.open span:nth-child(2) {
opacity:0;
margin:0px 0;
left:0;
background-color: #033370;
}

#nav-icon1.open span:nth-child(1) {
transform: rotate(-45deg);
margin:0px 0;
top: 4px;
left:0;
background-color: #033370;
}

#nav-icon1.open span:nth-child(3) {
transform: rotate(45deg);
margin:0px 0;
top: 0px;
left:0;
background-color: #033370;
}

.buttonmenu span {
color: #033370;
margin-right: 10px;
position: relative;
}

.buttonmenu button {
padding: 4px 20px;
padding-left: 0;
}

header .buttonmenu button {
position: relative;
background-color: transparent;
width: 60px;
height: auto;
border: 0;
outline: 0;
z-index: 1100;
transition: top .5s;
cursor: pointer;
display: inline-block;
}

header .buttonmenu {
display: flex;
justify-content: space-between;
align-items: center;
}

nav {
display: none;
}

.open nav {
display: block;
position: absolute;
z-index: 3;
background-color: #033370;
width: 80%;
padding-left: 10%;
padding-right: 10%;
color: #fff;
font-size: 2em;
line-height: 1.5em;
height: 100vh;
font-weight: 300;
}

nav ul {
list-style: none;
}

nav a {
color: #fff;
}

li a {
border-bottom: 2px solid #033370;
transition: 1s;
}

li a:hover {
border-bottom: 2px solid #fff;
transition: 1s;
}

li.rex-current a{
border-bottom: 2px solid #fff;
transition: 1s;
}

.slideshow {
width: 100%;
height: auto;
}

.slick-slide img {
width: 100%;
}

.inhalt2spalten {
width: 95%;
height: auto;
position: relative;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: flex-start;
padding: 50px 2.5%;
}

.inhalt2spalten > div {
width: 48%;
height: auto;
display: block;
}

.inhalt2spalten img {
width: 100%;
height: auto;
}

.slick-initialized button.slick-prev {
position: absolute;
border-radius: 100%;
border: 0;
height: 45px;
width: 45px;
top: 45%;
background-repeat: no-repeat;
z-index: 10;
background-color: #000;
color: transparent;
background-image: url("../../media/pfeil-links.png");
background-size: 40%;
background-position: center;
cursor: pointer;
background-color: #033370;
z-index: 2;
left: 2.5%;
}

.slick-initialized button.slick-next {
position: absolute;
border-radius: 100%;
border: 0;
height: 45px;
width: 45px;
top: 45%;
background-repeat: no-repeat;
z-index: 10;
background-color: #000;
color: transparent;
background-image: url("../../media/pfeil-rechts.png");
background-size: 40%;
background-position: center;
cursor: pointer;
background-color: #033370;
z-index: 2;
right: 2.5%;
}



.slideshow ul.slick-dots {
list-style: none;
position: absolute;
display: inline-block;
justify-content: center;
text-align:center;
width: 100%;
height: auto;
bottom: 0px;
padding:0;
margin:0;

}

.slideshow ul.slick-dots li {
display:inline-block;
margin: 1.5%;
width: 18px;
height: 18px;
background-color: #fff;
border-radius: 20px;
border: 2px solid #fff;
cursor: pointer;

}

.slideshow ul.slick-dots li.slick-active {
display:inline-block;
margin: 1.5%;
width: 18px;
height: 18px;
background-color: #033370;
}

.slideshow ul.slick-dots button {
display: none;
}

a.button {
background-color: #033370;
color: #fff;
position: relative;
padding: 4px 15px;
padding-top: 6px;
margin-top: 5px;
width: auto;
display: inline-block;
line-height: 1.5em;
text-decoration: none;
font-weight: 400;
border: 2px solid #033370;
border-radius: 20px;
}

a.button:hover {
background-color: #fff;
color: #033370;
}

footer h3 {
color: #fff;
}

footer a {
color: #fff;
}

footer .textRahmenVB4sp {
width: 90%;
padding-left: 5%;
padding-right: 5%;
height: auto;
background-color: #033370;
padding-top: 50px;
color: #fff;
position: relative;
text-align: left;
vertical-align: top;
justify-content: space-between;
flex-wrap: wrap;
margin: 0 auto;
display: flex;
margin-top: 50px;
padding-bottom: 100px;
}

footer .textRahmenVB4sp > div {
height: auto;
position: relative;
display: inline-block;
width: auto;
}

.inhalt li {
list-style-image: url('../../media/haken-icon.png');
}

div.auflistung a {
color: #033370;
}

div.auflistung {
height: auto;
display: inline-flex;
position: relative;
text-align: left;
vertical-align: top;
justify-content: space-between;
flex-wrap: wrap;
width: 95%;
margin-left: 2.5%;
margin-right: 2.5%;
margin-top: 0px;
margin-bottom: 0px;
}

div.auflistung .derbutton {
background-color: #033370;
width: 20px;
height: 20px;
border-radius: 50px;
padding: 8px;
margin: 0 auto;
position: absolute;
right: 50%;
bottom: -18px;
}

div.auflistung .derbutton img {
width: 100%;
height: auto;
}

.listelement {
height: auto;
position: relative;
display: inline-block;
background-color: transparent;
width: 31.5%;
margin-top: 30px;
margin-bottom: 30px;
border-bottom: 2px solid #033370;
}


.listelement .vorschaubild {
width: 100%;
height: 220px;
position: relative;
background-size: cover;
background-position: center;
}

.textRahmenVB3sp {
width: 95%;
height: auto;
position: relative;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding: 50px 2.5%;
}

.textRahmenVB3sp img {
width: 100%;
height: auto;
position: relative;
}

.textRahmenVB3sp > div {
width: 32%;
height: auto;
display: block;
position: relative;
}

.galerie {
display:flex;
position:relative;
width:95%;
height:auto;
flex-wrap:wrap;
justify-content:space-between;
margin-left: 2.5%;
margin-right: 2.5%;
}

.galerie > a {
width:23%;
height:auto;
position:relative;
display:inline-block;
background-size:cover;
background-position:center;
background-repeat:no-repeat;
outline:0;
margin-bottom:40px;
box-shadow:0px 0px 10px #ccc;
}

.galerie > a img {
width:100%;
height:auto;
position:relative;
display:block;
visibility:hidden;
}

.textRahmen {
width: 95%;
height: auto;
position: relative;
margin-left: 2.5%;
margin-right: 2.5%;
}

.image-container {
    position: relative;
    display: inline-block;
    margin-top: 30px;
}

.image-container::before {
    content: '';
    position: absolute;
    bottom: 30px;
	left: 30px;
    width: 100%;
    height: 100%;
    background-color: #033370; /* Hintergrundfarbe des Kastens */
    z-index: -1; /* Kasten hinter dem Bild */
}

.inhalt2spalten.ansprechpartner {
width: 40%;
margin: 0 auto;

background-color: #f1f1f2;
position: relative;
margin-top: 30px;
margin-bottom: 70px;
}

.inhalt2spalten.ansprechpartner:before {
content: '';
position: absolute;
bottom: 30px;
left: 30px;
width: 100%;
height: 100%;
background-color: #033370;
z-index: -1;
}

.inhalt2spalten.ansprechpartner > div.spalte1 {
width: 70%;
}

.inhalt2spalten.ansprechpartner > div.spalte2 {
width: 30%;
}

.inhalt2spalten.ansprechpartner a.mail:before {
content: " ";
background-image: url(../../media/mail-icon-blau.png);
display: inline-block;
text-align: center;
width: 18px;
height: 18px;
background-size: 16px;
position: relative;
margin: 0 auto;
background-repeat: no-repeat;
left: 0px;
top: 8px;
margin-right: 3px;
}

.inhalt2spalten.ansprechpartner a.tel:before {
content: " ";
background-image: url(../../media/telefon-icon-blau.png);
display: inline-block;
text-align: center;
width: 18px;
height: 18px;
background-size: 16px;
position: relative;
margin: 0 auto;
background-repeat: no-repeat;
left: 0px;
top: 5px;
margin-right: 3px;
}

@media screen and (min-width:1600px) {
.listelement .vorschaubild {
height: 300px;
}
}

@media screen and (max-width:1100px) {
.schnellbuttons {
width: 95%;
margin: 0 auto;
padding-top: 20px;
border-bottom: 2px solid #033370;
padding-bottom: 22px;
}

.headerinner .logo {
width: 40%;
}

.autosuche {
background-size: 550px!important;
background-position-x: 450px!important;
background-position-y: 100px!important;
}

footer .textRahmenVB4sp > div {
width: 49%;
}

.listelement .vorschaubild {
height: 150px;
}

.inhalt2spalten.ansprechpartner {
width: 70%;
}

.textRahmenVB3sp {
padding: 20px 2.5%;
}

.galerie > a {
width: 31%;
}

h2 {
font-size: 2.2em;
}

h3 {
font-size: 2.2em;
}

h1 {
font-size: 2.2em;
}

.open nav {
line-height: 1.7em;
}

div.auflistung .derbutton {
right: 43%;
}

.image-container {
margin-top: 15px;
}

.image-container::before {
bottom: 15px;
left: 15px;
}

.inhalt2spalten.ansprechpartner:before {
bottom: 15px;
left: 15px;
}

.listelement {
padding-bottom: 10px;
}

}

@media screen and (max-width: 800px) {
body {
font-size: 13px;
}

.suchfeld form {
width: 100%!important;
}

.select2-container {
width: 95%!important;
}

.autosuche {
background-image: none!important;
}

.inhalt2spalten > div {
width: 100%;

}

.inhalt2spalten .spalte1 {
padding-bottom: 35px;
}

.listelement {
width: 100%;
}

.listelement .vorschaubild {
height: 350px;
}

div.auflistung .derbutton img {
top: 2px;
position: relative;
}

div.auflistung .derbutton {
right: 48%;
}

.inhalt2spalten.ansprechpartner {
width: 90%;
}

.textRahmenVB3sp > div {
width: 100%;
margin-bottom: 35px;
}



.galerie > a {
width: 47%;
}
}

@media screen and (max-width: 600px) {
header .kontakt .standort {
display: none;
}

header .kontakt img {
width: 14px;
}


.schnellbuttons {
display: inline-block;
padding-bottom: 0px;
padding-top: 10px;
margin-left: 2.5%;
margin-right: 2.5%;
}

.schnellbuttons > div {
width: 23%;
display: inline-block;
padding-bottom:10px;
}

.schnellbuttons img {
width: 35px;
}

.headerinner .logo {
width: 50%;
}

.schnellbuttons .tyne img {
width: 70px;
top: 8px;
position: relative;
}

.schnellbuttons span {
display: none;
}

.schnellbuttons .Service {
display: none;
}

header .kontakt {
padding-top: 10px;
padding-bottom: 10px;
}

.image-container::before {
bottom: 0px;
left: 0px;
}

.image-container::before {
display: none;
}

.inhalt2spalten.ansprechpartner:before {
bottom: 0px;
left: 0px;
}

.inhalt2spalten.ansprechpartner {
padding-top: 20px;
padding-bottom: 0px;
}

.inhalt2spalten {
padding: 25px 2.5%;
}

footer .textRahmenVB4sp > div {
width: 100%;
padding-bottom: 10px;
} 

.inhalt2spalten .spalte1 {
padding-bottom: 15px;
}

#inhalt58 {
margin-top: 20px;
}

#inhalt2spalten59 {
margin-top: 20px;
}

#inhalt48 {
margin-top: 20px;
}

#inhalt26 {
margin-top: 20px;
}

.slideshow ul.slick-dots li {
width: 10px;
height: 10px;
}

.slideshow ul.slick-dots li.slick-active { 
width: 10px;
height: 10px;
}

nav ul {
padding-left: 0;
}

.galerie > a {
width: 48%;
}

.galerie > a {
margin-bottom: 10px;
}
}