nav {
margin: 0;
z-index: 1;
float: left;
width: 100%;
position: relative;
}

.vpg .mobilenav {display: block !important;}

nav ul
{
			float: left;
            margin: 0;
			padding: 0;
			list-style-type: none;
            display: flex; flex-wrap: no-wrap;
            width: 100%; justify-content: center;
}

nav ul li {
                         display: block;
                         float: left;
                         margin: 0 5px; padding: 0;
                         position: relative;
                         z-index: 3;

}


nav ul li a {
float: left;
display: block;
padding: 15px 30px;
margin: 0; position: relative; z-index: 2;
font-size: 18px;
text-align: center; color:#000;
box-sizing: border-box;
width: 100%; height: 55px;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
font-weight: 400;text-shadow: 0px 0px 10px #ffffff;
}
nav ul li a span {
    display: inline-block; padding: 0 0 10px;
}
nav ul li a:hover span {
    padding: 0 0 8px; border-bottom: 2px solid #ffe011;
}

nav ul li a:link, nav ul li a:visited {
text-decoration: none;
}

ul.hauptnav > li > a::after { content: ""; width: 0; height:2px; background: #ffe011; position: absolute; left: 30px; bottom: 10px;-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
transition: all 0.3s ease;border-radius: 2px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;}

nav ul li a.aktiv {
font-weight: 400;  color: #000;
}

nav ul li a:hover, nav ul li a:active {
font-weight: 400; color: #000;
}
ul.hauptnav > li > a:hover::after { content: ""; width:calc(100% - 60px); height:2px; background: #000;}
ul.hauptnav > li > a.aktiv::after { content: ""; width:calc(100% - 60px); height:2px; background: #000;}


nav ul.unternav {
position: absolute;
top: 60px; z-index: 5;
left: 0; padding:7px 0 0;
width: 100%;
min-width: 250px;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
opacity: 0;
display: block;
visibility: hidden;
}



.vpg nav ul.sichtbar { opacity: 1; top:50px; visibility: visible; }

nav ul.unternav li {width: 100%; margin: 0;}
nav ul.unternav li a {
padding: 10px 30px;
margin: 0 0 1px;
font-size: 0.9em;
font-weight: 400;
border: none;
height: auto;
width: 100%;
text-align: left;
text-transform: none; position: relative;
background: #ffe011;
background: rgba(255, 224, 17, 0.88);
}


nav ul.unternav li a:link, nav ul.unternav li a:visited {
color: #000;text-shadow: none;
}

nav ul.unternav li a:hover, nav ul.unternav li a:active {
background: #ffe011; color: #000;
}

nav ul.unternav li a.aktiv2 {
color: #000;
background:#eee;
}

nav ul.unternav li:last-child a {
    border-bottom: 0;
}

aside#unternav {
    float: left; width: 92%; margin: 20px 4%;
}
aside#unternav ul {  list-style-type: circle; font-size: 1.1em; line-height: 1.6em;}

aside#unternav h3::before {
   display: block; float: left; content:""; background: url('images/nav.svg') center center no-repeat; width: 35px; height: 30px; margin: 0 10px 0 0; background-size: 100% auto;
}
aside#unternav ul li a.aktiv2 {
    font-weight: bold; color: #282828;
}

@media only screen and (min-width: 960px) {
.leistungen aside#unternav {
    float: right; width: 21%; margin: 20px 4% 20px 0;
}

}

#pfadnav {
    float: left; width: 98%; margin: 0 1% 10px; font-size: 0.9em;
}
#pfadnav a:first-child {
    font-family: icons; display: inline-block; margin: 0 10px;
}

#textfeld #pfadnav a {
    text-decoration: none;
}

#footer ul
{
			float: left;
            margin: 0;
			padding: 0;
			list-style-type: none; width: 100%;
}

#footer ul li {
                         display: block;
                         float: left; width: 100%;
                         margin: 0; padding: 0;

}

#footer ul li a {display: block; padding:10px 0; width: 100%;
float:left;
}
#footer ul li a:hover {

}
#footer a {
    color: #414141;
}

#footer a:hover {
    text-decoration: underline; color: #000;
}

span.qn {display: none; font-family: icons; font-size: 1.5em;
position: absolute; top: 0; right: 0; z-index: 4; width: 25px; height: 25px; cursor: pointer; padding: 12px; color:#414141; background: rgba(234,234,234,0.6);}


a.totop {
    top: -30px;
    position: absolute;
    right: 50%;z-index: 9; display: block;
    font-family: 'icons'; font-size: 28px; z-index: 30;
    width: 50px; height: 50px; box-sizing: border-box; margin: 0 -25px 0 0;
    background:#ffe011; color: #fff !important; padding: 8px;text-decoration: none;
    border-radius: 50%;
}
a.totop:hover {  background: rgba(0,0,0,0.6); text-decoration: none !important;}



.social  { position: absolute; right:0; top: 0;font-size: 0.9em; text-align: right; z-index: 90; margin: 0; padding: 0 3%; }
.social a {display: inline-block; margin:5px 15px;  padding: 5px 0; color: #414141;text-decoration: none; font-weight: 400; color: #414141 !important; }
.social a.fblink { font-family: 'icons'; font-size: 1.1em;  margin:5px 10px; line-height: 20px;}
.social a.instlink { font-family: 'icons'; font-size: 1.3em;margin:5px 10px; position: relative; line-height: 20px;}
.social a.tellink::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  font-size: 1.1em;
  content: "\e804";
}
.social a.cryptmail2::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  font-size: 1.1em;
  content: "\e90c";
}
aside.claim a.tellink::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  font-size: 1.1em;
  content: "\e804";
}


 #menuelink {display: none; position: absolute; top:50px; right: 5%; margin:5px; padding: 2px 5px;text-decoration: none; width: 30px; height: 30px; z-index: 101;}
 #menuelink.open {
     top: 40px;position: fixed; right: 50%;
 }
 #menuelink span { display: block; float: left; width: 30px; height: 3px; background:#272727; position: absolute; top: 7px; left: 0;
-webkit-transition: all 0.2s;
-moz-transition: all 0.2s;
transition: all 0.2s;
transform-origin: center;}
#menuelink span#mlm { top: 15px; }
#menuelink span#mlu { top: 23px; }
#menuelink.open span#mlo {-webkit-transform: rotate(45deg) translate(7px,8px); -moz-transform: rotate(45deg) translate(7px,8px); transform: rotate(45deg) translate(7px,8px); }
#menuelink.open span#mlm { display: none; }
#menuelink.open span#mlu {-webkit-transform: rotate(-45deg) translate(4px,-4px); -moz-transform: rotate(-45deg) translate(4px,-4px); transform: rotate(-45deg) translate(4px,-4px); }


a#nulink { font-family: icons; font-size: 28px; text-decoration: none; position: absolute;
padding:10px 0; bottom: 5%; left: 50%; margin: 0 0 0 -25px;
width: 50px; height: 50px; box-sizing: border-box;
font-weight: normal;
color: #fff;
z-index: 200; text-align: center;
opacity:0.7;-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
line-height: 30px;
border-radius: 30px;
-moz-border-radius: 30px;
-webkit-border-radius: 30px;
background: rgba(0,0,0,0.3);
}
#bilder:hover a#nulink {
bottom:3%;
}
a#nulink:hover {opacity:0.9; color: #000; background: #ffe011;}

.iglink {
    font-family: icons; font-size: 2.7em; margin: 10px 0; display: inline-block;
}


@media only screen and (max-width: 1360px) {

}
@media only screen and (max-width: 1160px) {

.mobilenav #navinner {
    margin-right: -60%; -webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
transition: all 0.5s ease;
}
.mobilenav.open #navinner {
    margin-right: 0;
}

span.qn {display: block;}

.mobilenav {display: none;}
nav {  width: 100%; margin: 100px 0 50px; padding:0; text-align: center; }
nav ul {width: 100%;flex-wrap:wrap;}
nav ul li {
                         display: block;
                         float: left;
                         z-index: 2;
                         width: 100%;
                         margin: 0; box-sizing: border-box; padding: 5px 10px;
}

nav ul li a {
width: 100%;
text-align: center;padding: 15px 0;
margin: 0;
border-right: none;
border-left: none; font-size: 1.1em; height: auto;text-shadow: none;
}
nav ul li a span {padding: 0 !important; border: 0 !important;}

nav ul li a:hover, nav ul li a:active {
text-decoration: none;
border-left: none; 
border-right: none;margin: 0;
}

nav ul li a.aktiv {
border-left: none;
border-right: none; margin: 0;
}

nav ul.unternav {display: none; position: relative; top: 0; width: 90%;padding: 0 5%;-webkit-transition:none;
-moz-transition:none;
transition:none;
opacity: 1 !important; top: 0; visibility: visible !important;}
nav ul.umenaktiv { display: block; visibility: visible !important; position: relative; top: 0; width: 80%;}
nav ul.unternav li {width: 100%; padding: 0;}
nav ul.unternav li a {margin: 0;width: 100%; font-size: 1.0em; text-align: center; }

#menuelink {display: block;}

#sprache { position: absolute;}
#unternav {float: left; width: 100%;padding: 0 0 10px;}


}
@media only screen and (max-width: 960px) {
aside#unternavigation {
    float: left; width: 92%; margin: 10px 4%;border-right:0; border-top: 1px solid #ccc;
}
 #menuelink.open {left: 35%; right: auto;}

.social {
     position: fixed; right: 0;
}
}
@media only screen and (max-width: 680px)
{


#unternav ul li a {font-size: 1.1em;}
.social a.cryptmail2 {
    display: none;
}
 #menuelink.open {left: 15%; }
#menuelink {top: 25px;}   
}
@media only screen and (max-width: 460px) {

}