body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
.mod_visitors .invisible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    float: left;
	width:0px;
	height:0px;
}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu li {
	position: relative;
}
.sf-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 99;
}
.sf-menu > li {
	float: left;
}
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}

.sf-menu a {
	display: block;
	position: relative;
}
.sf-menu ul ul {
	top: 0;
	left: 100%;
}


/*** DEMO SKIN ***/
.sf-menu {
	float: left;

}
.sf-menu ul {
	box-shadow: 2px 2px 6px rgba(0,0,0,.2);
	min-width: 12em; /* allow long menu items to determine submenu width */
	*width: 12em; /* no auto sub width for IE7, see white-space comment below */
}

.sf-menu a {
	padding: .75em 0.5em;
	text-decoration: none;
	zoom: 1; /* IE7 */
	color: #fff !important;
	border: none !important;
}

.sf-menu strong {
	padding: .75em 0.5em;
	text-decoration: none;
	zoom: 1; /* IE7 */
	background-color: #fff6da !important;
	display: block;
	font-weight: normal;
}

.sf-menu li {

	white-space: nowrap; /* no need for Supersubs plugin */
	*white-space: normal; /* ...unless you support IE7 (let it wrap) */
	-webkit-transition: background .2s;
	transition: background .2s;
}
.sf-menu ul li {
	background: #AABDE6;
}
.sf-menu ul ul li {
	background: #9AAEDB;
}
.sf-menu li:hover,
.sf-menu li.sfHover {
	background: rgba(255,255,255,0.5);
	/* only transition out, not in */
	-webkit-transition: none;
	transition: none;
}

/*** arrows (for all except IE7) **/
.sf-arrows .sf-with-ul {
	padding-right: 2.5em;
	*padding-right: 1em; /* no CSS arrows for IE7 (lack pseudo-elements) */
}
/* styling for both css and generated arrows */
.sf-arrows .sf-with-ul:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	margin-top: -3px;
	height: 0;
	width: 0;
	/* order of following 3 rules important for fallbacks to work */
	border: 5px solid transparent;
	border-top-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */
	border-top-color: rgba(255,255,255,.5);
}
.sf-arrows > li > .sf-with-ul:focus:after,
.sf-arrows > li:hover > .sf-with-ul:after,
.sf-arrows > .sfHover > .sf-with-ul:after {
	border-top-color: white; /* IE8 fallback colour */
}
/* styling for right-facing arrows */
.sf-arrows ul .sf-with-ul:after {
	margin-top: -5px;
	margin-right: -3px;
	border-color: transparent;
	border-left-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */
	border-left-color: rgba(255,255,255,.5);
}
.sf-arrows ul li > .sf-with-ul:focus:after,
.sf-arrows ul li:hover > .sf-with-ul:after,
.sf-arrows ul .sfHover > .sf-with-ul:after {
	border-left-color: white;
}

/* adding sf-vertical class in addition to sf-menu creates a vertical menu */
/* eg. <ul class="sf-menu sf-vertical"> ... */
.sf-vertical {
  width: 12em;
  /* If you want the width of the closed menu to expand to its
  widest top-level menu item (like its "Supersubs" submenus do),
  replace the width rule above with the following two rules. */

  /*
  min-width: 12em;
  *width: 12em;
  */
}
.sf-vertical ul {
	left:	100%;
	top: 0;
}
.sf-vertical > li {
  float: none;
}
.sf-vertical li {
  width: 100%;
}

/*** alter arrow directions ***/
.sf-vertical.sf-arrows > li > .sf-with-ul:after {
  margin-top: -5px;
  margin-right: -3px;
  border-color: transparent;
  border-left-color: #dFeEFF; /* edit this to suit design (no rgba in IE8) */
  border-left-color: rgba(255,255,255,.5);
}
.sf-vertical.sf-arrows li > .sf-with-ul:focus:after,
.sf-vertical.sf-arrows li:hover > .sf-with-ul:after,
.sf-vertical.sf-arrows .sfHover > .sf-with-ul:after {
  border-left-color: white;
}

/* CONTAO 5 effekte*/
.grau img, .grau iframe {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
}

.grau img:hover, .grau iframe:hover {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    transition: all 0.35s linear 0s;
}

.zoomen img{
	-webkit-transform: scale(1);-moz-transform: scale(1);-ms-transform: scale(1);-o-transform: scale(1);transform: scale(1);
	-webkit-transition: all 0.3s linear;-moz-transition: all 0.3s linear;-ms-transition: all 0.3s linear;-o-transition: all 0.3s linear;transition: all 0.3s linear;
}

.zoomen img: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);
	-webkit-transition: all 0.3s linear;-moz-transition: all 0.3s linear;-ms-transition: all 0.3s linear;-o-transition: all 0.3s linear;transition: all 0.3s linear;
}

.zoomen figure{
	overflow: hidden;
}

/* CONTAO 5 basic*/

html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: bottom;
}


@font-face {
    font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	src: url('../../files/themes/fonts/open-sans-v34-latin-regular.eot'); /* IE9 Compat Modes */
	src: local(''),
	   url('../../files/themes/fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	   url('../../files/themes/fonts/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
	   url('../../files/themes/fonts/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
	   url('../../files/themes/fonts/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
	   url('../../files/themes/fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
    font-display: swap;
}

body {	
	color: #454545;	
	font-family: 'Open Sans' ,Arial, Verdana, sans-serif;
	font-size:18px;
	background-color: #fff6da;
}


a {
    font-weight:normal;
    text-decoration:none;
    color:#aa3896;
}

a:link {
    border-bottom:1px dotted #aa3896;
    text-decoration:none;
    color:#aa3896;
}

a:visited {
    border-bottom:1px dotted #aa3896;
    font-weight:normal;
    text-decoration:none;
    color:#aa3896;
}

a:hover {
    border-bottom:1px solid #aa3896 ;
    font-weight:normal;
    text-decoration:none;
    color:#aa3896 ;
}

a:active {
    border-bottom:1px dotted #aa3896;
    font-weight:normal;
    text-decoration:none;
    color:#aa3896;
}

a:focus {
    border-bottom:1px dotted #aa3896;
    font-weight:normal;
    text-decoration:none;
    color:#aa3896;
}




h1 {
	font-size: 200%;
	color: #2b2b2b ;
	margin: 0 0 2rem 0;
	line-height: 100%;
}


h2 {
	font-size: 175%;
	color: #2b2b2b;
	margin: 2rem 0 1rem 0;
	line-height: 100%;
}

h3 {
	font-size: 175%;
	color: #2b2b2b;
	margin: 0 0 2rem 0;
	line-height: 100%;
}

h4 {
	font-size: 125%;
	color: #ffffff;
	margin: 0 0 1rem 0;
	line-height: 100%;
}

h5 {
	font-size: 125%;
	color: #2b2b2b;
	margin: 0 0 1rem 0;
	line-height: 100%;
}

h6 {
	font-size: 115%;
	color: #2b2b2b;
	margin: 1rem 0 0.25rem 0;
	line-height: 100%;
}


button {
	margin: 1rem 0;
	padding: 0.5rem 1rem;
	color: #454545;	
	font-family: 'Open Sans' ,Arial, Verdana, sans-serif;
	font-size:18px;
}

button:hover {
	cursor: pointer;
}


figure a {
	border: none !important;
}



iframe {
	width: 100%;
	height: 25rem;
}


img { 
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

input {
	width: 95%;
	margin: 0 0 1rem 0;
	padding: 0.25rem;
    font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;	
}

input:hover {
	background-color: #e7e7e7;
	transition: all 0.35s linear 0s;
}

input[type='checkbox'] {
    float:left;
    margin-top:0.25rem;
    margin-right:0.5rem;
    width: auto;
}

label {
	display: block;
	margin: 0 0 0.35rem 0
}

p {
	margin: 0 0 1rem 0;
}

select {
	width: 95%;
	margin: 0 0 1rem 0;
	padding: 0.25rem;
    font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;	
}

select:hover {
	background-color: #e7e7e7;
	transition: all 0.35s linear 0s;
}

textarea {
	width: 95%;
	margin: 0 0 1rem 0;
	padding: 0.5rem;
	height: 11rem;
    font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;	
}

textarea:hover {
	background-color: #e7e7e7;
	transition: all 0.35s linear 0s;
}

ul {
	margin: 0 0 1rem 1.25rem;
	list-style-type: circle;
}

ul li {
	margin: 0 0 0.5rem;
}

#cboxOverlay {
    background-color:rgba(0,0,0,.25);
}

#cboxTitle,
#cboxCurrent {
    padding-right:.25rem;
    padding-left:.25rem;
    background-color:#000;
}

#statistik {
	display: none;
}

.abstand_oben {
	padding: 2rem 0 0 0;
}

.abstand_oben2 {
	padding: 1rem 0 0 0;
	display: inline-block;
}

.bildabstand_rechts figure {
    margin: 0 2rem 2rem 0;
}

.bildabstand_links figure {
    margin: 0 0 2rem 2rem;
}

.bildabstand_rechts ul {
    display: inline-block;
}

.clearing {
	clear: both;
}

.farbe-1 {
	color: #fccb00;
}

.gross {
	font-size: 185%;
}

.link_ohne a {
	border: none !important;
}

.mitte {
	text-align: center;
}

.mod_article img {
	
	border-radius: 0.25rem;
	-moz-border-radius: 0.25rem;
}

.nach_oben_link {
    bottom:0;
    right:1rem;
    position:absolute;
    font-size:300%;
}

.nach_oben_link a {
    border: none !important;
}

.rechts {
	text-align: right;
}


.sticky-wrapper {
	height: auto !important;
}

.sticky_animation #logo{
	display: none;
}

.sticky_animation .sf-menu a, .sticky_animation .sf-menu strong{
	padding: 0.5em;
	transition: all 0.35s linear 0s;
}

.tab {
	display: inline-block;
	width: 5rem;
}

.wartung {
	text-align: center;
}
	
	

/* screen */

footer {
	border-top: 0.25rem solid #aa3896;
	margin: 3rem 0 0 0;
}

footer a {

	border: none !important;
}


header{
	background-color: #aa3896;
	margin: 0 0 4rem 0;
	z-index: 1000;
}





#footer1 {

	max-width: 1400px;
	margin: 0 auto 2rem auto;
	padding: 2rem 0 0 0;
	border-top: 0.25rem solid #aa3896;
}



#hauptnavigation {
	margin: 0 auto;
	max-width: 1400px;
}

#hauptnavigation nav {
	border-left: 1px solid #fff6da;
}



#hauptnavigation .block, #navigationmobil2 .block  {
	overflow: visible;
	display: flex;
}

#head1 {
	max-width: 1400px;
	margin: 0 auto;
}


#hotline{
	
	position: absolute;
	right: 1rem;
	top: 0;
	color: #fff;
	
	
}



#hotline ul{
	margin: 0;
	list-style-type: none;
}


#hotline ul li{
	margin: 0 0 0 1rem;
	padding: 0;
	display: Inline-block;
	vertical-align: bottom;
}


#hotline ul li:first-child{
	font-size: 175%;
}


#logo{
	
	position: absolute;
	right: 1rem;
	top: 0.5rem;
	color: #fff;
	
	
}





#main .inside {
    min-height: 35rem;
}

#slogan {
	display: inline-block;
	color: #fff;
	margin: 5rem 0;
}

#slogan ul {
	background-color: rgba(0,0,0,0.25);
	list-style-type: none;
	margin: 0;
}

#slogan ul li {
	display: inline-block;
	vertical-align: middle;
	margin: 0;
}

#slogan ul li:last-child {
	padding: 2rem;
	
}

#slogan ul li:first-child a {
	border: none !important;
}




.back {
	margin: 1rem 0 0 0;
}


.box1 {
	width: 31%;
	box-sizing: border-box;
}

.box2 {
	width: 48%;
	box-sizing: border-box;
	background-color: #fff;
	margin: 0 0 2rem 0;
	padding: 2rem;
	border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;	
}

.box3 {
	width: 31%;
	box-sizing: border-box;
	background-color: #fff;
	margin: 0 0 2rem 0;
	padding: 2rem;
	border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;	
}


.breite {
	max-width: 1400px;
	margin: 0 auto;
	box-sizing: border-box;
}


.fotogalerie {
    display: -webkit-flex; /* Safari */
    -webkit-justify-content: space-around; /* Safari 6.1+ */
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.fotogalerie2 ul {
    display: -webkit-flex; /* Safari */
    -webkit-justify-content: space-around; /* Safari 6.1+ */
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0;
}

.fotogalerie2 ul li {
    margin: 0 0 2rem 0;
}


.hg1 {
	background-color: #fff;
}

.hg2 {
	background-color: #aa3896;
	color: #fff;
	margin: 2rem 0;
	padding: 0 0 1rem 0;
}

.hg2 a {
	color: #fff;
	border-color: #fff !important;
}


.breite2 select {
	float: left;
	width: 29%;
	margin: 0 1rem 1rem 0;
}


.breite3 input {
	float: left;
	width: 43%;
	margin: 0 1rem 1rem 0;
}

.breite4 {
	max-width: 2000px;
	margin: 0 auto;
}







@media screen AND (max-width: 1440px) {
	
	
	
	h1 {
	  font-size: 175%;
	}	
		
	#footer1 {
	  padding: 2rem 1rem 0 1rem !important;
	}
	
	

	.bildabstand_rechts figure {
	    margin: 0 1rem 1rem 0;
	}
	
	.bildabstand_links figure {
	    margin: 0 0 1rem 1rem;
	}


	.breite {
	  padding-left: 1rem !important;
	  padding-right: 1rem !important;
	}
	
	.sf-menu a, .sf-menu strong {
		padding: .75em 0.25em;
	}

	
}
@media screen AND (max-width: 1060px) {
	
	#hauptnavigation {
		display: none;
	}
	
	#menue {
		display: inline-block;
		color: #fff;
		font-size: 125%;
		margin: 0.25rem 0 0.25rem 1rem;
	}
	
	#menue:hover {
	    cursor: pointer;
	}
	
	.box3 {
	    width: 48%;
	}	

	.mobile_menu .inner {
	    background-color: #aa3896;
	}
	
	.schliessen {
	    right:1.25rem;
	    top:0;
	    position:fixed;
	    padding:.5rem 1rem;
	}
	
	.schliessen:hover {
	    cursor: pointer;
	}	

	
}
@media screen AND (min-width: 525px) {

	
	a[href^="tel"] {
	    pointer-events:none; 
	    cusor:default; 
	    text-decoration:none;
	    border: none;
	}

}
@media screen AND (max-width: 810px) {
	
    .bildabstand_links figure {
        margin: 0 0 1rem 0;
    }
	
    .box1 {
        width: 100%;
        margin: 0 0 2rem 0;
    }
    
	.box3 {
	    width: 100%;
	}    
    
    .box2 {
        width: 100%;
    }   

    .float_left, .media--left>figure {
        float: none;
        display: block;
    }
    
    .float_right, .media--right>figure {
        float: none;
        display: block;
    }  
    
    .nach_oben_link {
        display: none;
    }    
        
    .rechts {
        text-align: left;
    }    
	
}
@media screen AND (max-width: 525px) {
	
	
  h1, h2, h3 {
    font-size: 150%;
    }
    
  .fotogalerie2 {
    margin: 0 1rem;
    
    
  }
	
}
