html, body {
margin: 0 0 0 0;
padding: 0;
text-align: center;
background: #ffffff;
width: 100%; float: left;
height: 100%;
}

#wrap {float: left; width: 100%; margin: 0; padding: 0; position: relative; min-width: 960px;  }
#wrap2 {float: left; width: 100%; margin: 0; padding:0; min-width: 960px; background: #23539b;z-index: 100; position: fixed; top: 0; left: 0; background: rgba(35,83,155,0.8);
}


@font-face {
      font-family: 'fontello';
      src: url('./font/fontello.eot?92947715');
      src: url('./font/fontello.eot?92947715#iefix') format('embedded-opentype'),
           url('./font/fontello.woff?92947715') format('woff'),
           url('./font/fontello.ttf?92947715') format('truetype'),
           url('./font/fontello.svg?92947715#fontello') format('svg');
      font-weight: normal;
      font-style: normal;
    }




.zc {
    margin: 0 auto; max-width: 1160px; width: 100%; padding: 0;
}

header {
width: 100%;
margin: 0;  padding: 0;
position: relative;
float: left;
text-align: left;  z-index: 9;
}
header div.zc {
    position: relative;
    max-width: 1260px;
}

.logocontainer {
float: right;
margin: 0;
position: absolute;
padding:15px;
width: 12%; box-sizing: border-box;
top: 0; right:2%;
-webkit-transition: width 0.5s;
-moz-transition: width 0.5s;
transition: width 0.5s; text-align: center;
z-index: 10; border-left: 1px solid #fff; border-right: 1px solid #fff;border-bottom: 1px solid #fff;
background: rgba(255,255,255,0.9);
}
.logocontainer img {max-width: 100%;float: right;}


#navcontainer {
float: left;
margin: 50px 0 10px;
padding: 0;
width: 78%;
-webkit-transition: margin 0.5s;
-moz-transition: margin 0.5s;
transition: margin 0.5s;
}


@media only screen and (min-width: 960px)
{
.fixiert .logocontainer {width: 12%;}
.fixiert #navcontainer {margin: 10px 0;}
}

div.bild {float: left; width: 100%; position: relative; overflow: hidden;
text-align: left; background-position: center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover; background-repeat: no-repeat;
margin:0; min-height: 600px;
}
.bild h2 {
    position: absolute; left: 50%; bottom: 15%;margin: 0 0 0 -550px; line-height: 1.8em;
    font-size: 2.1em;
color: #23539b; font-weight: 300;
}
.bild h2 span {
    background: rgba(255,255,255,0.8); padding: 0 5px; display: block; float: left; margin: 5px; text-transform: uppercase;
}

.bbs {
    position: absolute; top: 30%; left: 50%; width: 500px; float: left; margin: 0 0 0 -250px; background: rgba(0,0,0,0.4); color: #fff; font-size: 1.3em;
    border-left: 3px solid #ccc; border-right: 3px solid #ccc;
}
.bbs h1 { color: #fff; font-size: 3.0em; font-weight: normal;}
.bbs h2 { color: #fff; }

.flexslider .slides > li {position: relative;}

#content {
margin: 0;
width: 100%;
padding: 0;
float: left; position: relative;
}
.contentelement {float: left; width: 100%; padding: 0; margin: 0;}

section {
    float: left; width: 100%;
}

.inhalt {
width: 100%;
padding:0;
position: relative;
float: left;
margin: 0; text-align: left;
}

.contentseite, #kontaktseite {
    width: 94%; padding: 20px 3% ;float: left; min-height:100px;
    margin: 0; text-align: left;
}
.singleseite {
   width: 75%; padding: 40px 0 0; float: left; min-height: 500px;
}

#textfeld {
float: left;
padding: 0 5%;
margin: 0;
width: 90%;
min-height: 100px;
}
#textfeld img, img {max-width: 100%;height: auto;}

#anfahrt {float: left; width:100%; padding: 0; margin: 0 0 30px;  }



footer {
float: left;
width: 100%;
padding: 0;
min-width: 1160px;
background: #23539b; text-align: left; color: #fff;
margin: 0; position: relative;
}

.footc {float: left; width: 25%; padding: 10px 4%; margin: 20px 0; }
footer h3 {
    margin: 20px 0; color: #fff;
}

.kontaktseite {float: right; width: 40%; margin: 30px 0 10px;}
.kontaktformcontainer {float: left; width: 75%;}

.teaserbox_r p {margin: 5px 0; color: #fff; font-size: 100%;}


ul.unavseite_menue { float: left;color: #000; margin: 0; }

ul.unavseite_menue li {
margin: 5px 0 10px;
list-style-type: square;
font-weight: normal;
font-size: 1.2em;
}

ul.sitemap li {
margin: 5px 0 10px;
list-style-type: square;
font-weight: normal;
font-size: 1.2em;
}


ul.sitemap_unterpunkt {
list-style-type: square;
color: #000;
}

ul.sitemap_unterpunkt li {
margin: 5px 0;
list-style-image: none;
font-weight: 300;
font-size: 0.8em;
}

.bildrahmen {
padding: 5px 5px 4px 5px;
text-align: center;
font-size: 0.85em;
color: #000;
position: relative;
max-width: 50%;
}

.bildrahmen img {width: 100%;}


.floatrechts {
margin: 0 0 20px 10px;
float: right;
}

.floatlinks {
margin: 0 20px 10px 0;
float: left;
}

.galerie {
float: left;
margin: 20px -1%; width: 102%;
}

.galerie dl {
float: left;
height: 290px;
font-size: 0.9em;
text-align: center;
margin: 2px 1% 2px 1%;width: 31.33%;
}

.galerie dd {
margin: 0; 
padding: 0;
}


img.gal {
padding: 0;
width: 100%;
box-sizing: border-box;
}


#logoutform {
position: absolute;
bottom: 100px; right: 60px;
}

.cformular {
    float: left; width: 80%; margin: 0 10%; max-width: 900px;
}

.kontaktformular {
width: 100%; padding: 5px 0; max-width: 900px;
}

.fspalte {float: left; width: 47%; padding: 10px 3% 10px 0;}


.kontaktformular p {
width: 100%;
float: left;
}
.kontaktformular p.pflichtf {font-size: 0.9em; padding: 0; width: 100%;}

.kontaktformular legend {  display: none; }
fieldset {border: none;  padding: 0; margin: 0;}

.kontaktformular label {
float: left;
width: 35%;
margin: 8px 0;
}

.kontaktformular input {
float: left;
color: #000;
background: #fff;
font-size: 13px;
border: 1px solid #23539b;
width: 65%; color: #23539b;
margin: 0; box-sizing: border-box;
}
.kontaktformular input:focus {border: 1px solid  #eb5d1a; color: #000;}

.kontaktformular select {
float: left;
color: #000;
font-size: 13px;
border: 1px solid #23539b;
background: #fff;
width: 65%;
margin: 1px 0;  color: #23539b;
}
.kontaktformular select:focus {border: 1px solid  #eb5d1a; color: #000;}

input#Ort {
width: 50%;
margin-left: 1%;
}
input#PLZ {
width: 14%;
}
input#captcha {
width: 130px;
}

.kontaktformular textarea {
width: 100%;
height: 90px;
border: 1px solid #23539b;
color: #000;
background: #fff;  color: #23539b;
margin-bottom: 10px;box-sizing: border-box;
}
.kontaktformular textarea:focus {border: 1px solid  #eb5d1a; color: #000;}

div.formfehler {
width: 80%;
float: right;
color: #f00;
text-align: center;
font-size: 90%;
}

input.fehlerfeld {
background: #fcc;
border: 1px solid #f00;
}

form {
margin: 0;
}

input, select, textarea {
color: #000;
padding: 10px;
font-family: 'Open Sans', sans-serif;
}

input.button {
background: #eb5d1a; color: #fff; padding: 10px 30px;
font-weight: bold; font-size:1.2em;
cursor: pointer;border: none;
float: left; width: auto; border-radius: 0; box-sizing: border-box;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
input.button:hover {background: #23539b; color: #fff;}


a.backlink:link, a.backlink:visited, a.pfeillink:link, a.pfeillink:visited {
display: inline-block;
text-decoration: none;
font-weight: 300; text-align: center;
color: #23539b;
padding: 10px; margin: 5px;background: #e1edf7;
}

a.weiterlink:link, a.weiterlink:visited  {
display: inline-block;
text-decoration: none;
font-weight: 300; text-align: center;
padding: 5px; margin: 5px;background: #e1edf7;
}

a.weiterlink:before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'fontello';
  text-decoration: none;
  speak: none; font-size: 1.4em;
  content: "\e80b";
}

a.backlink:before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'fontello';
  text-decoration: none;
  speak: none; font-size: 1.4em;
  content: "\e80b";
}


a.backlink:hover, a.pfeillink:hover {
color: #000;
text-decoration: none;
}

a.weiterlink:hover {
color: #000;
text-decoration: none;
}


ul.liste {
list-style-type: none;
}
ul.liste li {
font-weight: bold;
font-size: 100%;
padding-left: 20px;
background: url('images/pfeilr2.gif') 0 6px no-repeat;
margin-bottom: 10px;
} 


ul.nliste {
list-style-type: none;
}
ul.nliste li {
font-size: 85%;
padding-left: 20px;
background: url('images/pfeilr2.gif') 0 6px no-repeat;
margin-bottom: 10px;
} 



p.captchafehler {
border: 1px solid #c00;
color: #f00;
margin: 10px 0;
padding: 10px;
background: #ffc;
}

.meldung { color: red }



.accfeld {float: left; width: 100%; padding: 0 0 5px; margin: 0 0 20px; border-bottom: 1px solid #eb5d1a; }
h2.accordeonlink {float: left; width: 96%; padding: 7px 2% 7px 2%; margin: 10px 0 0; background: #e1edf7; font-size: 1.3em; cursor: pointer;}
h2.accordeonlink:before {
  display: block; padding: 2px 10px;
  font-family: 'fontello';
  text-decoration: none;
  speak: none; font-size: 1.1em;
  content: "\e80b"; float: left;
}
h2.offen { background:#23539b; color: #fff;}
h2.offen:before {
  display: block; padding: 2px 5px;
  font-family: 'fontello';
  text-decoration: none;
  speak: none; font-size: 1.1em;
  content: "\e80e"; float: left;
}

.formfeld { width: 96%; float: left; padding: 2px 2%; margin: 1px 0; background: #e1edf7; }
.checkbox { float: left; width: 23%; padding: 2px 0.8%; margin: 1px 0.2%; background: #e1edf7; }
.kontaktformular .checkbox label {float: left; width: 75%; margin: 8px 0;}
.kontaktformular .checkbox input  {width: 23%; background: none; border: none; float: left; margin: 10px 0;}

#datenschutzfeld {
float: left; width: 98%; margin: 10px 0; padding: 10px 1%;
}
#datenschutzfeld input {
    float: left; width: 6%; margin: 10px 0; padding: 0;
}
#datenschutzfeld label {
    float: right; width: 93%; font-size: 0.9em;
}


.sonderinhalt {background: #F9A979; color: #fff; box-sizing: border-box; padding: 20px;}
iframe {max-width: 100%;}


.service{
    float: left; width: 20%; padding: 10px 2.5%;
}
.service h3 {
    width: 200px; height:200px; background: #eb5d1a; color: #fff; text-align: center; padding: 100px 15% 30px; text-transform: uppercase; font-weight: bold; box-sizing: border-box;
    border-radius: 200px; -moz-border-radius: 200px; -webkit-border-radius: 200px; display: block;
}
#content9 h3 {
    background: url('images/icon_beratung.png') center top 35px no-repeat #eb5d1a; background-size: 30px auto;
}
#content8 h3 {
    background: url('images/icon_angebot.png') center top 45px no-repeat #eb5d1a; background-size: 60px auto;
}
#content7 h3 {
    background: url('images/icon_vorort.png') center top 40px no-repeat #eb5d1a; background-size: 35px auto;
}
#content6 h3 {
    background: url('images/icon_zelt.png') center top 40px no-repeat #eb5d1a; background-size: 40px auto;
}


.referenz {
    background: #23539b; color: #fff; padding: 0 40px 0 0; box-sizing: border-box;
}

.referenz div.bildgross {
    width: 70%;float: left; border-right: 10px solid #fff;margin: 0 3% 0 0;
}
.referenz div.bildgross img {
    float: left; width: 100%; margin: 0; padding: 0;
}
.referenz h4 {
    margin-top: 50px;
}





@media only screen and (max-width: 1160px)
{
#header {width: 960px;}
#content {width: 100%;}

.footcontent {width: 100%;}

footer {min-width: 960px;}

div.bild { background-attachment: scroll; min-height: 500px; }

.bild h2 {left: 0; bottom: 15%;margin: 0 0 0 5%; font-size: 2.0em; }
.service h3 { width: 180px; height: 180px;}
}

@media only screen and (max-width: 960px)
{
#wrap {min-width: 680px;}
header {width: 100%; height: auto;}
#wrap2 {min-width: 680px;padding: 0; height: auto; position: absolute;  }
#wrap2.fixiert { height: auto; }

footer {min-width: 680px;}

.logocontainer {width: 20%}
#navcontainer {width: 100%; margin: 80px 0 0; }



.galerie dl { height: 240px;  }

.singleseite {padding: 0;}


.service h3 { font-size: 1.2em; width: 150px; height: 150px;  padding: 80px 15% 25px;}
#content9 h3 {
    background-size: 25px auto; background-position: center top 30px;
}
#content8 h3 {
    background-size: 40px auto; background-position: center top 40px;
}
#content7 h3 {
    background-size: 25px auto; background-position: center top 35px;
}
#content6 h3 {
     background-size: 30px auto; background-position: center top 35px;
}

.cformular {width: 100%; margin: 0;}
}

@media only screen and (max-width: 800px)
{

.galerie dl { height: 220px;  }

.referenz div.bildgross { width: 100%; margin: 0 0 20px 0; border-right: 0; border-bottom: 5px solid #fff; }
.referenz { padding: 0; min-height: 400px; }
.referenz h4, .referenz p { padding: 0 5%; }
.checkbox { width: 31.33%; }
}

@media only screen and (max-width: 680px)
{
#wrap {min-width: 320px;}
header {width: 100%; min-width: 320px;}


#wrap2 {min-width: 320px; width: 100%; }
#content {min-width: 320px; width: 100%; min-height: 350px;}
#inhalt {width: 100%;}
.singleseite {width: 100%;}   

.suchteaserbox {width: 100%;}
.galerie {width: 100%;}

.bild h2 {left: 0; bottom: 20%;margin: 0 0 0 5%; font-size: 1.6em; }

.footcontent {width: 94%;}
.footcontainer {width: 90%; padding: 0 5% 10px;  }

form {margin: 0 5px 0 5px;}
.kontaktseite, .kontaktformcontainer  {width: 100%; margin: 0;}


#copy {width: 100%; text-align: center; padding: 10px 0; }

footer {min-width: 300px;}

address {width: 96%; padding: 5px 2% 0; }

a.weiterlink:link, a.weiterlink:visited  {font-size: 1.1em;}
a.backlink:link, a.backlink:visited, a.backlink:hover {background-size: 20px auto;}

div#content_2 {float: left; width: 90%;}


.bbs {
   top: 30%; left: 50%; width: 300px; float: left; margin: 0 0 0 -150px; font-size: 1.1em;
}

.service {
    width: 40%; padding: 10px 5%; min-height: 400px;
}

.service h3 {
    width: 200px; height:200px;  padding: 100px 15% 30px; font-size: 1.3em;
    }
#content9 h3 {
    background-position: center top 35px; background-size: 30px auto;
}
#content8 h3 {
    background-position: center top 45px; background-size: 60px auto;
}
#content7 h3 {
    background-position: center top 40px; background-size: 35px auto;
}
#content6 h3 {
    background-position: center top 40px; background-size: 40px auto;
}

.galerie dl { height: 170px;  }

.footc {width: 40%; padding: 10px 5%; }
}



@media only screen and (max-width: 480px)
{
ul.unavseite_menue li {
padding-left: 9%;
width: 90%;
}
.galerie dl {margin: 0 2% 5px;width: 46%; }
.logocontainer {width: 30%}

footer {min-width: 300px;}
address p {width: 96%; padding: 0 2%;}

.kontaktformular {width: 98%;}
.kontaktformular label { width: 100%;}
.kontaktformular p {width: 100%;}
.kontaktformular input {width: 100%;}
.kontaktformular select {width: 100%;}
.kontaktformular textarea {width: 100%;}
input#Ort {
width: 70%;
margin-left: 1%;
}
input#PLZ {
width: 24%;
}
div.bild { min-height: 300px; }
input.button { padding: 5px 0; }

div.formfehler {width: 100%;}
.checkbox { width: 48%; }

.service {
    width: 80%; min-height: 100px; padding: 10px 10%;
}

.service h3 { margin: 0 5%;}
.footc {width: 80%; padding: 10px 10%; }

.referenz { min-height: 350px; }
}


#trackinghinweis {background:#23539b; height:auto; color:#fff; text-align:center; padding:10px 0; z-index: 200; position: relative;
box-shadow: 0px 0px 5px 0px #000000; -moz-box-shadow: 0px 0px 5px 0px #000000; -webkit-box-shadow: 0px 0px 5px 0px #000000;
position:fixed; left:0; width:100%; bottom:0; top:auto;}
#trackinghinweis p { float: left; width: 80%}
#trackinghinweis a { color:#ffffff; }
#trackinghinweis .thbuttons {  float: right; width: 18%; padding: 0 1%; }

#trackinghinweis .thbuttons a {color:#ffffff; display:block; float: left; width: 100%; box-sizing: border-box; text-decoration:none; padding:10px; margin:2px 0; }
#trackinghinweis .thbuttons .enable {background:eb5d1a; font-weight: bold; }
#trackinghinweis .thbuttons .enable:hover {background:#fff;  color: #000;}
#trackinghinweis .thbuttons .disable {background:transparent; color: #fff; padding: 5px 10px; }
#trackinghinweis .thbuttons .disable:hover {background:#fff; color: #000;}
#trackinghinweis .thbuttons .policy {background:#fff;  color: #000;}
#trackinghinweis .thbuttons .policy:hover {background:#8D8F8F; color: #fff;}

.trackinginfo {
    float: left; width: 94%; padding: 10px 3%; background:#e1edf7;
}

.trackinginfo a {
 color:#ffffff; display:inline-block; float: left; box-sizing: border-box; text-decoration:none; padding:10px 20px; margin:5px 20px 5px 0; background: #333;
}
.trackinginfo a.enable {background:#eb5d1a; font-weight: bold; }
.trackinginfo a:hover { background: #23539b; color:#fff; }

.dsiframe {
    float: left; width: 100%; background: rgba(255,255,255,0.2); text-align: center; margin: 0 0 20px;
    padding: 0;
}
.dsiframe p {
    padding: 0 20px;
}

.dsiframe iframe {
    float: left; width: 100%;
}

.dsiframe a.weiterlink {
    background:#eb5d1a; font-size: 1.1em;
}

@media only screen and (max-width: 960px) {
#trackinghinweis p { width: 70%}
 #trackinghinweis .thbuttons {  width: 28%; }
}


@media only screen and (max-width: 460px) {
#trackinghinweis p {float: left; width: 90%; padding: 0 5%;}
#trackinghinweis .thbuttons {  width: 90%; padding: 0 5%; }
}