#popup { position:fixed; left:0; top:20%; width:100%; z-index:8999; }
#popup .wrapper { max-width:80%; box-shadow:0 0 50px #000; position:relative; padding:5%; box-sizing:border-box; color:#FFF; 
	background: rgba(252,193,0,1);/* Old Browsers */
	background: -moz-linear-gradient(top, rgba(252,193,0,1) 0%, rgba(157,19,40,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(252,193,0,1)), color-stop(100%, rgba(157,19,40,1)));/* Chrome, Safari4+ */
	background: -webkit-linear-gradient(top, rgba(252,193,0,1) 0%, rgba(157,19,40,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(252,193,0,1) 0%, rgba(157,19,40,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(252,193,0,1) 0%, rgba(157,19,40,1) 100%); /* IE 10+ */
	background: linear-gradient(to bottom, rgba(252,193,0,1) 0%, rgba(157,19,40,1) 100%);/* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcc100', endColorstr='#9d1328', GradientType=0 );/* IE6-9 */
}
#popup .popup-headline { display:block; text-transform:uppercase; font-size:2rem; padding-bottom:20px; font-weight:700;}
#popup p:last-child { margin-bottom:0; }
#popup .popup-close { cursor:pointer; position:absolute; right:20px; top:20px; height:50px; width:50px; background:none; 
  transition: all 0.4s ease-in 0s;
}
#popup .popup-close:hover { background:rgb(157,19,40); }
#popup .popup-close .line-01 { border-radius:3px; position:absolute; left:5px; top:21px; height:8px; width:40px; background:#FFF; 
  transform:rotate(45deg); 
}
#popup .popup-close .line-02 { border-radius:3px; position:absolute; left:5px; top:21px; height:8px; width:40px; background:#FFF;
  transform:rotate(-45deg); 
}


/*------ Flexboxen (für Unternehmen) ----------------*/
.flexbox { display:flex; flex-wrap:wrap; }
.flexbox > div { width:23%; margin-right:2%; margin-bottom:5%; box-sizing:border-box; overflow:hidden; background:#FFF; }
.flexbox > div:nth-child(3n + 3) { margin-right:27%; }
.flexbox > div .ce-bodytext { width:100%; padding:20px; box-sizing:border-box; }

/*------ Javascript-Debugger ----------------*/
#output { background:orange; position:fixed; top:400px; left:0; width:300px; z-index:3000; }
#output p{ padding:10px; }


/* --------- Allgemeines ---------------------------------------------------------------------*/
body { min-height:100vh; background:#aaaaaa; }
  .wrapper { position:relative; display:block; margin-left:auto; margin-right:auto; background:#eeeeee; }
  .hide { display:none; }

  figcaption { font-size:0.9rem; font-style:italic; }

  .shadow_top { background:url('../Images/shadow_top.png') center bottom no-repeat; background-size:120% 10px; position:absolute; left:0; top:-15px; width:100%; height:15px; }
  .shadow_bottom { background:url('../Images/shadow_bottom.png') center top no-repeat; background-size:120% 10px; position:absolute; left:0; bottom:-15px; width:100%; height:15px; }

  .no-scroll {height:100%; overflow:hidden; }
  .transition {  
    transition: all 0.4s ease-in-out 0s; /* explorer 10 */
  }



  .ce-row { margin-bottom:20px; }
  .ce-row:last-child { margin-bottom:0; }
  img { max-width:100%; height:auto; }

  .frame-default { margin-bottom:40px;}
  .frame-space-after-medium { margin-bottom:70px; }
  .frame-space-before-medium { margin-top:70px; }

  .ce-right { display:flex; justify-content:space-between; }
  .ce-right .ce-gallery { order:2; width:32%; }
  .ce-right .ce-gallery img { width:100%; height:auto; display:block; }
  .ce-right .ce-bodytext { order:1; width:66%; }

  .ce-gallery[data-ce-columns='2'] .ce-row { display:flex; }
  .ce-gallery[data-ce-columns='2'] .ce-row .ce-column { margin-right:5%; }
  .ce-gallery[data-ce-columns='2'] .ce-row .ce-column:last-child { margin-right:0; }


/* --------- Header ---------------------------------------------------------------------*/
#header{ position:relative; }
  #header .wrapper { display:flex; justify-content:space-between; color:#9d1327; line-height:50px; padding:2.5% 4% 1.5% 6%; overflow:hidden; }
  #header .wrapper a { color:#9d1327; }

    #header .kundenportal { position:absolute; top:0; right:0; box-sizing:border-box; padding:0 4% 0 20px; font-weight:700; color:#FFF !important; line-height:50px; display:block; }
    #header .kundenportal span { position:relative; }
    #header .kundenportal:before { content:""; display:block; transform:skewX(45deg); position:absolute; width:130%; height:50px; top:0px; left:-30px; 
      background: rgba(157,19,40,1);
    	box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1); 
		  transition: all 0.4s ease-in 0s; /* explorer 10 */
    }
    #header .kundenportal:hover:before { background: rgba(253,194,0,1); }    
    
    /* Logo */ 
    #header .logo { position:relative; width:30%; box-sizing:border-box; }
	  #header .logo img { display:block; width:100%; height:auto; }
    #header .logo a { border:none; }

    /* Kontakt */ 
    #header .kontakt { line-height:24px; font-weight:500; display:flex; flex-direction:column; justify-content:flex-end; }
    #header .kontakt div { display:flex; }
    #header .kontakt .hide { display:block; }
     
/* --------- Navigation ---------------------------------------------------------------------*/
#navigation { position:relative; z-index:1000; }
#navigation .shadow_bottom { background-size:100% 10px; opacity:0.8; }
#navigation .wrapper { display:flex; justify-content:space-between; background:#9d1327; padding:0; }

    /* Suche */ 
    #navigation .suche { width:100%; position:absolute; top:0; right:0; }
    #navigation .suche .suche-button { position:absolute; top:15px; right:0; cursor:pointer; background:#444 url('../Images/icon_lupe.png') center no-repeat; background-size:100%; width:50px; height:50px; z-index:3001; }
    #navigation .suche #suchebox { display:none; width:100%; height:80px; padding:0 4% 0 6%; position:absolute; background:#444; top:0px; right:0px; z-index:3000; box-sizing:border-box; }



/* --------- Slider ---------------------------------------------------------------------*/
.wrapper_headerslider { position:relative; overflow:hidden; }
.wrapper_headerslider:after { content:""; display:block; transform:skewX(-45deg); position:absolute; width:40%; height:60px; bottom:0px; right:-30px; background:#eeeeee; }

.wrapper_headerslider .frame-default { margin-bottom:0; }
.wrapper_headerslider .streifen { position:absolute; right:0; top:15%; width:13%; height:40%; display:flex; flex-direction:column; justify-content:space-between; display:none; }
.wrapper_headerslider .balken { height:20%; width:100%; background:#FFF; }

.wrapper_headerbilder { position:relative; overflow:hidden; }
.wrapper_headerbilder:after { content:""; display:block; transform:skewX(-45deg); position:absolute; width:40%; height:60px; bottom:0px; right:-30px; background:#eeeeee; }


/* --------- Main Content -------------*/ 
#main { position:relative; overflow:hidden; }
#main .wrapper_content { position:relative; padding:6% 4% 6% 6%; }
#main .wrapper_content a { text-decoration:underline; }
#main .wrapper_content ul { margin:0 0 20px; }

#main .wrapper_boxen { position:relative; padding:0px 4% 6% 6%; margin-top:-4%; }

/*------ Teaser-Boxen ----------------*/
.teaserboxen { width:100%; display:flex; flex-wrap:wrap; justify-content:space-between; flex-wrap:wrap; padding-bottom:3%; }
.box1,
.box2,
.box3,
.box4 { position:relative; box-sizing:border-box; display:flex; flex-direction:column; }
.box1:hover,
.box2:hover,
.box3:hover,
.box4:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}
.teaserboxen img { display:block; margin-bottom:20px; }
.teaserboxen .box-content { padding:0 3%; }
.teaserboxen .box-header { color:#9d1327; font-weight:700; font-size:2rem; display:block; line-height:100%; min-height:60px; }
.teaserboxen a { text-decoration:none !important; }
.teaserboxen p { display:block; position:relative; padding:3% 0; }
.teaserboxen .button { margin:20px 3% 3%; position:absolute; bottom:0; width:94%; }

.teaserboxen .grid_12 { position:relative; background:#FFF; height:100%; }
.teaserboxen .grid_12 .frame-default { margin-bottom:0px; position:relative; padding-bottom:80px; height:100%; }

/*------ Link-Boxen ----------------*/
.linkboxen { width:100%; display:flex; flex-wrap:wrap; justify-content:space-between; flex-wrap:wrap; padding-bottom:3%; }
.linkboxen .box1,
.linkboxen .box2,
.linkboxen .box3,
.linkboxen .box4 { padding-bottom:0px; }
.linkboxen .frame-default { margin-bottom:0px; }


/*------ AngebotsBox ----------------*/
.angebotsbox { color:#555; width:100%; background:#ff7b00; box-sizing:border-box; padding:20px; margin:30px 0; }
.angebotsbox p { margin:10px 0; }
.angebot_header { color:#FFF; display:block; font-size:2rem; font-weight:900; margin-bottom:20px; line-height:120%; }
.angebot_angebot { color:#FFF; display:block; font-size:3rem; font-weight:900; padding:10px 0; line-height:110%; }


/* --------- Shortpoints Content -------------*/ 
#shortpoints { position:relative; overflow:inherit; }
#shortpoints .wrapper { padding:100px 4% 100px 6%; display:flex; flex-wrap:wrap; justify-content:space-between; overflow:hidden;
	background: rgba(252,143,0,1);
	background: -moz-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(252,143,0,1)), color-stop(100%, rgba(227,89,20,1)));
	background: -webkit-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: -o-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: -ms-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: linear-gradient(to bottom, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fc8f00', endColorstr='#e35914', GradientType=0 );
}
#shortpoints .wrapper:before { content:""; display:block; transform:skewX(-45deg); position:absolute; width:40%; height:60px; top:0px; left:-30px; background:#eeeeee; }
#shortpoints .wrapper:after { content:""; display:block; transform:skewX(-45deg); position:absolute; width:20%; height:60px; bottom:0px; right:-30px; background:#eeeeee; }

#shortpoints ul { list-style-type:none; }
#shortpoints li { padding:1.5% 80px; margin-left: 3%; background-position:left center; background-size:50px; background-repeat:no-repeat; color:#FFF; }
#shortpoints li:first-child { background-image:url('../Images/icon_list-beratung.png');  }
#shortpoints li:nth-child(2) { background-image:url('../Images/icon_list-einzelabrechnung.png');  }
#shortpoints li:nth-child(3) { background-image:url('../Images/icon_list-plausibilitaet.png');  }
#shortpoints li:nth-child(4) { background-image:url('../Images/icon_list-funk.png');  }
#shortpoints li:last-child { background-image:url('../Images/icon_list-mitarbeiter.png');  }


/* --------- Wechselservice Content -------------*/ 
#wechselservice { position:relative; overflow:inherit; }
#wechselservice .wrapper { padding:100px 4% 100px 6%; display:flex; flex-wrap:wrap; justify-content:space-between; overflow:hidden;
	background: rgba(252,143,0,1);
	background: -moz-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(252,143,0,1)), color-stop(100%, rgba(227,89,20,1)));
	background: -webkit-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: -o-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: -ms-linear-gradient(top, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	background: linear-gradient(to bottom, rgba(252,143,0,1) 0%, rgba(227,89,20,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fc8f00', endColorstr='#e35914', GradientType=0 );
}
#wechselservice .header { font-weight:700; font-size:2.4rem; color:#FFF; margin-bottom:10px; display:block; line-height:120%; }
#wechselservice .subheader { margin-top:40px; font-weight:700; font-size:2.0rem; color:#FFF; margin-bottom:10px; display:block; line-height:120%; }
#wechselservice .button { margin:0; box-shadow:none; color:rgba(252,143,0,1); background:#FFF; }
#wechselservice .button:hover { 
    -moz-box-shadow: inset 0 3em 3em -1em rgba(253,194,0,1);
    -webkit-box-shadow: inset 0 3em 3em -1em rgba(253,194,0,1);
    box-shadow: inset 0 3em 3em -1em rgba(253,194,0,1);
}
#wechselservice .grid_7 { display:flex; justify-content:space-between; }
#wechselservice .grid_7 .grid_4 { text-align:center; font-weight:700; font-size:1.7rem; color:#FFF; width:28%; }
#wechselservice .grid_7 .grid_4 img { display:block; width:100%; margin-bottom:20px; }
#wechselservice .wrapper:before { content:""; display:block; transform:skewX(-45deg); position:absolute; width:40%; height:60px; top:0px; left:-30px; background:#eeeeee; }
#wechselservice .wrapper:after { content:""; display:block; transform:skewX(-45deg); position:absolute; width:20%; height:60px; bottom:0px; right:-30px; background:#eeeeee; }


/* --------- Standorte Content -------------*/ 
#unternehmen { position:relative; overflow:inherit; }
#unternehmen .wrapper { padding:50px 4% 50px 6%; display:flex; justify-content:space-between; flex-wrap:wrap; }
#unternehmen .grid_4 { margin-top:5%; }
#unternehmen .header { color:#9d1327; font-weight:700; font-size:2.4rem; margin-bottom:10px; display:block; line-height:120%; }


/* --------- Beratung Content -------------*/ 
#beratung { position:relative; overflow:inherit; }
#beratung .wrapper { padding:100px 4% 100px 6%; color:#FFF; overflow:hidden; background:#9d1327; }
#beratung .wrapper:before { content:""; display:block; transform:skewX(45deg); position:absolute; width:25%; height:60px; top:0px; right:-30px; background:#eeeeee; }
#beratung .wrapper:after { content:""; display:block; transform:skewX(45deg); position:absolute; width:30%; height:60px; bottom:0px; left:-30px; background:#eeeeee; }

#beratung .header { font-weight:700; font-size:2.4rem; margin-bottom:10px; display:block; line-height:120%; }
#beratung .buttonleiste { position:relative; padding:30px 0; display:flex; justify-content:space-between; }
#beratung .buttonleiste .line { height:60px; width:10%; display:block; position:relative; }
#beratung .buttonleiste .line:before { content:""; display:block; position:absolute; width:100%; height:0; top:calc(50% - 1px); left:0; border-bottom:2px dotted rgba(255,255,255,0.5); }
#beratung .button { width:31.3333333333%; margin:0; box-shadow:none; color:#9d1327; background:#FFF; }
#beratung .number { position:relative; color:#9d1327; background:rgba(255,255,255,0.5); width:60px; height:60px; display:block; text-align:center; line-height:60px; font-weight:700; font-size:30px; border-radius:30px; }


/* --------- News Content -------------*/ 
#news .wrapper { padding:100px 4% 100px 6%; }
#news .button { box-shadow:none; background:#757575; }
#news .button:hover { 
    -moz-box-shadow: inset 0 3em 3em -1em #999;
    -webkit-box-shadow: inset 0 3em 3em -1em #999;
    box-shadow: inset 0 3em 3em -1em #999;
}

/* --------- Footer -------------*/
#footer { position:relative; }
  #footer .wrapper { display:flex; justify-content:space-between; }
  #footer .wrapper_01 { padding:2% 4% 4% 6%;}
  #footer .wrapper_02 { padding:15px 4% 15px 6%; }

  #footer .wrapper_02 .grid_8 { display:flex; }
  .startseite  #footer .wrapper_01 .shadow_top { display:none; }

  /* --------- Sitemap -------------*/
  .sitemap { display:flex; justify-content:space-between; }

  .sitemap .main_list { padding:0 30px 0 0; }
  .sitemap .last { padding:0; }
  .sitemap .main_list div { padding-bottom:20px; }
  .sitemap a { display:block; color:#555; }
  .sitemap a:visited { color:#555; }
  .sitemap a:hover { color:#9d1327; }
  .sitemap a.active { color:#9d1327; }
  .sitemap .header{ font-weight:bold; padding-bottom:15px; display:block; }
  .sitemap ul { margin:auto; padding:0; list-style-type:none; }
  .sitemap ul li { margin:0; padding:0 0 10px; font-weight:bold; font-size:1.0rem; }
  .sitemap ul li a { margin:0; line-height:120%; }
  .sitemap ul ul { padding:5px 0px 5px 10px; font-size:0.8rem; }
  .sitemap ul ul li { margin:0; padding:0; font-weight:normal; }

  /* --------- Kontakt -------------*/
  .adresse { line-height:120%; }
  .adresse img { width:100%; max-width:400px; display:block; margin-bottom:40px; }
  .adresse  p { margin:0 0 5px; line-height:140%; }
  .adresse  p:nth-of-type(1) { font-size:1.2rem; margin:20px 0 10px; font-weight:700; }
  .adresse  p:nth-of-type(1) .servicenummer { font-size:1.8rem; color:#9d1327; font-weight:700; display:block; margin-bottom:10px; }
  .adresse  p:nth-of-type(2) { margin:0 0 20px; line-height:140%; }
  .adresse  p:nth-of-type(4) { margin:0 0 30px; }

  /* --------- Copyright -------------*/
  .copyright { color:#9d1327; display:flex; flex-direction:column; justify-content:flex-end; }

  /* --------- Footernavigation -------------*/
  .footernav { position:relative; display:flex; flex-direction:column; justify-content:flex-end; }
  .footernav ul { list-style-type:none; margin:0; padding:0 0 0 20px; }
  .footernav ul li { float:left; }
  .footernav ul li a { text-transform:uppercase; color:#555; display:inline-block; padding:0 10px;
    transition: all 0.4s ease-in 0s; /* explorer 10 */
    -webkit-transition: all 0.4s ease-in 0s; /* chrome & safari */
    -moz-transition: all 0.4s ease-in 0s; /* firefox */
    -o-transition: all 0.4s ease-in 0s; /* opera */
  }
  .footernav ul li:last-child a { padding-right:0; }
  .footernav ul li:first-child a { padding-left:0; }
  .footernav ul li.active a { color:#555; }
  .footernav ul li a:hover { color:#555; }

  /* --------- Partnerlogo -------------*/
  .partnerlogo { display: flex; justify-content: space-between; position: relative; }
  .partnerlogo .deumess { width:60%; max-width:250px; display:block; margin-top:10px;}
  .partnerlogo .q-siegel { width:30%; max-width:100px; display:block; margin-top:-80px; }
  .partnerlogo .q-siegel img { width:100%; display:block; height:auto; }



/*------ Sidepanel ----------------*/
.sidepanel { cursor:pointer; position:absolute; right:0; top:30px; width:50px; z-index:199; padding:0; overflow:hidden; }
.sidepanel.fixed { position:fixed; }
.sidepanel a { position:relative; display:block; background:#444; margin-bottom:10px; }
.sidepanel a:hover { background:#000; }
.sidepanel a:last-child { margin-bottom:0px; }
.sidepanel img{ width:100%; height:auto; padding:0; display:block; }



/*------ Teaser-Boxen ----------------*/
.ce-uploads { width:100%; display:flex; flex-wrap:wrap; justify-content:space-between; flex-wrap:wrap; padding:5% 0 0; }
.ce-uploads li { position:relative; background:#FFF; box-sizing:border-box; display:flex; justify-content:space-between; flex-direction:column; margin-bottom:3%; }
.ce-uploads li:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}
.ce-uploads li a {  text-decoration:none !important; }
.ce-uploads li img { display:block; }
.ce-uploads li .preview { background:#FFF; display:block; position:absolute; box-shadow:0 0 20px #000; top:15%; right:10%; width:30%; height:auto; }
.ce-uploads li .box-content { padding:30% 3% 0; }
.ce-uploads li .box-header { color:#9d1327; font-weight:700; font-size:2rem; display:block; line-height:100%; min-height:70px; }
.ce-uploads li p { display:block; position:relative; padding:3% 0; }
.ce-uploads li .button { margin:20px 3% 3%; }


/*------ Leitfaden Abrechnungsformular ----------------*/
.abrechnungsformular { display:flex; justify-content:space-between; }
.abrechnungsformular .grid_8 { position:relative; }
.abrechnungsformular .grid_8 div { position:relative; }
.abrechnungsformular .grid_4 { position:relative; overflow:hidden; }

.header_wohnungsliste { position:relative; background:url('../Images/icon_wohnungsliste.png') left center no-repeat; background-size:contain; text-transform:uppercase; color:#9d1327; padding:20px 0 20px 100px; line-height:40px; margin:90px 0 40px; }
.header_heizkosten { position:relative; background:url('../Images/icon_heizkosten.png') left center no-repeat; background-size:contain; text-transform:uppercase; color:#9d1327; padding:20px 0 20px 100px; line-height:40px; margin:90px 0 40px; }
.header_betriebskosten { position:relative; background:url('../Images/icon_betriebskosten.png') left center no-repeat; background-size:contain; text-transform:uppercase; color:#9d1327; padding:20px 0 20px 100px; line-height:40px; margin:90px 0 40px; }

.header_heiz-betriebskosten { position:relative; background:url('../Images/icon_heizkosten.png') left center no-repeat; background-size:contain; text-transform:uppercase; color:#9d1327; padding:20px 0 20px 100px; line-height:40px; margin:90px 0 40px; }
.header_servicerechnung { position:relative; background:url('../Images/icon_wohnungsliste.png') left center no-repeat; background-size:contain; text-transform:uppercase; color:#9d1327; padding:20px 0 20px 100px; line-height:40px; margin:90px 0 40px; }


.infokreis { position:absolute; width:40px; height:40px; background:#9d1327; border-radius:20px; font-weight:700; line-height:40px; text-align:center; color:#FFF; display:block; text-decoration:none !important; }
.infokreis span { position:relative; }
.infokreis:hover { color:#FFF; cursor:pointer;
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}
.infokreis:before { content:""; display:block; position:absolute; width:100%; height:100%; top:0px; left:0; border-radius:20px; 
    
    	background: rgba(157,19,40,1);
    
    	-moz-box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1);
    	-webkit-box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1);
    	box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1); 
    
		transition: all 0.4s ease-in 0s; /* explorer 10 */
		-webkit-transition: all 0.4s ease-in 0s; /* chrome & safari */
		-moz-transition: all 0.4s ease-in 0s; /* firefox */
		-o-transition: all 0.4s ease-in 0s; /* opera */
    }
.infokreis:hover:before { background: rgba(253,194,0,1); }  

.infokreis_w1 { top:1%; left:25%; }
.infokreis_w2 { top:35%; left:-2%; }
.infokreis_w3 { top:59%; left:-2%; }
.infokreis_w4 { top:47%; left:23%; }
.infokreis_w5 { top:38%; left:90%; }

.infokreis_h1 { top:1%; left:33%; }
.infokreis_h2 { top:7%; left:41%; }
.infokreis_h3 { top:92%; left:47%; }

.infokreis_b1 { top:1%; left:38%; }
.infokreis_b2 { top:8%; left:28%; }
.infokreis_b3 { top:19%; left:21%; }
.infokreis_b4 { top:40%; left:31%; }
.infokreis_b5 { top:92%; left:47%; }

.infokreis_ma1 { top:8%; left:1%; }
.infokreis_ma2 { top:18%; left:96%; }
.infokreis_ma3 { top:32%; left:1%; }
.infokreis_ma4 { top:32%; left:54%; }
.infokreis_ma5 { top:58%; left:1%; }
.infokreis_ma6 { top:64%; left:1%; }
.infokreis_ma7 { top:67%; left:31%; }
.infokreis_ma8 { top:72%; left:43%; }
.infokreis_ma9 { top:66%; left:54%; }
.infokreis_ma10 { top:71%; left:68%; }
.infokreis_ma11 { top:66%; left:96%; }
.infokreis_ma12 { top:72%; left:96%; }
.infokreis_ma13 { top:84%; left:1%; }

.infokreis_mab13 { top:44%; left:1%; }
.infokreis_mab14 { top:24%; left:1%; }
.infokreis_mab15 { top:59%; left:37%; }
.infokreis_mab16 { top:64%; left:37%; }


.infokreis_ls1 { top:21%; left:32%; }
.infokreis_ls2 { top:25%; left:95%; }
.infokreis_ls3 { top:36%; left:47%; }
.infokreis_ls4 { top:43%; left:1%; }
.infokreis_ls5 { top:65%; left:1%; }
.infokreis_ls6 { top:71%; left:1%; }

.info { position:absolute; opacity:0; }
.info_active { opacity:1; }
.info_kreis { position:relative; width:40px; height:40px; background:#9d1327; border-radius:20px; font-weight:700; line-height:40px; text-align:center; color:#FFF; display:block; text-decoration:none !important; margin-bottom:30px; }


/*------ Formulare ----------------*/
.frame-type-form_formframework { background:#FFF; padding:3%; }
.frame-type-form_formframework h2 { display:none; }

.frame-type-form_formframework div.btn-group { zoom: 1; }
.frame-type-form_formframework div.btn-group:before, .frame-type-form_formframework div.btn-group:after { content: ""; display: table; }
.frame-type-form_formframework div.btn-group:after { clear: both; }
.frame-type-form_formframework div.btn-group .next { float:right; }
.frame-type-form_formframework div.btn-group .previous { float:left; }

.frame-type-form_formframework button { cursor:pointer; font-weight:500; font-size:1rem; border-radius:10px; position:relative; text-align:center; text-decoration:none !important; text-transform:uppercase; color:#FFF; display:block; line-height:40px; padding:10px 20px; box-sizing:border-box; margin-top:30px;

    -moz-box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1);
    -webkit-box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1);
    box-shadow: inset 0 -3em 3em -1em rgba(157,19,40,1); 

    background: rgba(157,19,40,1);
    
	transition: all 0.4s ease-in 0s; /* explorer 10 */
	-webkit-transition: all 0.4s ease-in 0s; /* chrome & safari */
	-moz-transition: all 0.4s ease-in 0s; /* firefox */
	-o-transition: all 0.4s ease-in 0s; /* opera */
}

.frame-type-form_formframework button:hover { text-decoration:none; color:#FFF; background: rgba(253,194,0,1); }

.frame-type-form_formframework .buttonleiste { position:relative; padding:0 0 30px; display:flex; justify-content:space-between; }
.frame-type-form_formframework .buttonleiste .line { height:60px; width:20%; display:block; position:relative; }
.frame-type-form_formframework .buttonleiste .line:before { content:""; display:block; position:absolute; width:100%; height:0; top:calc(50% - 1px); left:0; border-bottom:2px dotted rgba(0,0,0,0.5); }
.frame-type-form_formframework .number { position:relative; color:#FFF; background:rgba(0,0,0,0.5); width:60px; height:60px; display:block; text-align:center; line-height:60px; font-weight:700; font-size:30px; border-radius:30px; }
.frame-type-form_formframework .number.active { background:#9d1327; }

.frame-type-form_formframework .form-check-wrapping-label,
.frame-type-form_formframework .radio label,
.frame-type-form_formframework .form-check label,
.frame-type-form_formframework .form-control { border:none; line-height:120%; font-size:1.2rem; display:block; width:50%; margin:10px 0; background:#ccc; padding:30px 20px 20px; box-sizing:border-box; border-radius:10px; }
.frame-type-form_formframework .form-control:focus { outline:0; }

.frame-type-form_formframework select.form-control { -webkit-appearance:none; -moz-appearance:none; appearance:none; }


.frame-type-form_formframework .form-group { position:relative;  }
.frame-type-form_formframework .form-group > .control-label { position:absolute; left:20px; top:10px; font-size:0.8rem; line-height:100%; }
.frame-type-form_formframework .form-group.multicheckbox-1 > .control-label { position:relative; left:inherit; top:inherit; font-size:inherit; line-height:inherit; }

.frame-type-form_formframework .radio label,
.frame-type-form_formframework .checkbox label,
.frame-type-form_formframework .form-group.multicheckbox-1 .form-check-label { display:flex; }
.frame-type-form_formframework .radio label input,
.frame-type-form_formframework .checkbox label input,
.frame-type-form_formframework .form-group.multicheckbox-1 .form-check-label input { display:block; margin-top:5px; }



.frame-type-form_formframework .form-group.textarea-1 .form-control { height:200px; }

.frame-type-form_formframework .form-group.radiobutton-3,
.frame-type-form_formframework .form-group.radiobutton-4, 
.frame-type-form_formframework .form-group.textarea-1,
.frame-type-form_formframework .form-group.text-9,
.frame-type-form_formframework .form-group.text-10 { margin-bottom:30px; }

.frame-type-form_formframework .radio label,
.frame-type-form_formframework .form-check label { padding-top:20px; }
.frame-type-form_formframework .radio label > span,
.frame-type-form_formframework .form-check label > span {  padding-left:10px; }


.frame-type-form_formframework fieldset { border:none; padding:0; }
.form-navigation { display: flex; justify-content: space-between;}