* { margin: 0px; padding: 0px; font-size: 22px; color: rgba(0,61,110,1.00); line-height: 27px; font-family: 'regular'; -webkit-tap-highlight-color: rgb(0, 0, 0, 0); -webkit-tap-highlight-color: transparent;  -webkit-font-smoothing: antialiased; font-smoothing: antialiased; }
* { -moz-hyphens: auto; -o-hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }

::selection  { background-color: #000; color: #fff; }
::-moz-selection { background-color: #000; color: #fff; }

body { height: 100%; overflow-x: hidden;} 
html { height: 100%; -webkit-text-size-adjust: none; }

:focus, :active {
    outline: 0;
}

.weiss	{ color: #FFF;}
.white	{ color: #FFF;}
a.weiss	{ color: #FFF;}

.blau {
    color: rgba(0,189,212,1.00) !important;
}

.bold	{
	font-family: 'semibold';
}

.nodesk {
	visibility: hidden;
}

video {
    width: 100%;
    height: 100%;
    margin: 0px;
    object-fit: cover;
    z-index: -1;
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0;
    height: 0;
    overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.newsitem {
    height: 100%;
    width: 100%;
}

.newsbox {
    position: absolute;
    top: 25%;
    width: 100%;
    height: 100%;
    left: 0px;
    z-index: 101;
    height: auto;
    clear: inherit;
}

.bildbox {
    position: relative;
    width: 100% !important;
    min-height: 70vh !important;
    background-size: cover;
    z-index: 100;
    background-position: center center;
    background-repeat: no-repeat;
}

html>div {
    display: none;
}

.mask {
    mask-image: url('/w_resp/allgemein/images/layout/e-mask.svg');
    -webkit-mask-image: url('/w_resp/allgemein/images/layout/e-mask.svg');
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-position: center, center;
    -webkit-mask-position: center, center;
    mask-type: luminance;    
    -webkit- mask-type: luminance;
}

h2	{
	font-size: 22px;
	line-height: 27px;
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;
	-moz-column-span: all;
	-webkit-column-span: all;
	column-span: all;
    display: block;
    width: 100%;   
	margin-top: 20px;
	font-family: 'semibold';
	color: rgba(225,150,0,1.00)
}

h1	{
	font-size: 40px;
	line-height: 44px;
    color: rgba(0,61,110,1.00);
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;
	-moz-column-span: all;
	-webkit-column-span: all;
	column-span: all;
	font-family: 'semibold';
	padding-bottom: 20px;
	margin-bottom: 40px;
}


h1 {
	border-bottom: 7px solid;
	border-bottom-width: 7px;
	border-left-width: 0px;
	border-right-width: 0px;
	border-top-width: 0px;
	border-image-slice: 1;
	border-image-source: linear-gradient(to left, rgba(0,61,110,1.00), rgba(225,150,0,1.00));
}

#gradientline {
	width: 100%;
	height: 0px;
	top: -17px;
	z-index: 1000;
}

#gradientline2 {
	width: calc(100% - 47px);
	height: 0px;
	margin: 0px 23px 0px 23px;
	top: 0px;
	z-index: 1000;
}

.gradient-border {
  --borderWidth: 3.5px;
  background: #1D1F20;
  position: relative;
}
.gradient-border:after {
  content: '';
  position: absolute;
  top: calc(-1 * var(--borderWidth));
  left: calc(-1 * var(--borderWidth));
  height: calc(100% + var(--borderWidth) * 2);
  width: calc(100% + var(--borderWidth) * 2);
  background: linear-gradient(90deg, rgba(0,61,110,1.00), rgba(225,150,0,1.00));
  z-index: -1;
  animation: animatedgradient 3s ease alternate infinite;
  background-size: 300% 300%;
}


@keyframes animatedgradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}




h2 + p, h1 + div, h2 + div, h1 + ul, h2 + ul, p + p, ul + p, p + div, p + ul, p + h3, h1 + h3, h2 + h3 {
	margin-top: 20px;
}

h1 + h2 {
	margin-top: 40px;
}

h3	{
    margin: 20px 0px 10px 0px;
	font-family: 'semibold';
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;
    display: block;
	-moz-column-span: all;
	-webkit-column-span: all;
	column-span: all;    
    width: 100%;
}

a {
   outline: 0;
}

.clearfix { 
   content: "."; 
   visibility: hidden; 
   display: block; 
   height: 0; 
   clear: both;
}

.hidden{
     opacity:0;
}

.visible{
     opacity:1;
}

#topfixed	{
	position: relative;
	width: 100%;
	margin: 0px;
	padding: 0px;
	z-index: 10000;
    border: 0px solid rgba(3,96,43,1.00);
	background: rgba(255,255,255,1.00);
}

.begradient {
	position: absolute;
	top: 0px;
	width: 100%;
	z-index: 9998;
	height: 40%;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&1.00+0,0+100 */
background: -moz-linear-gradient(top,  rgba(255,255,255,1.00) 0%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(255,255,255,1.00) 0%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(255,255,255,1.00) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c7ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
}

.but_close:after {
    position: absolute !important;
    width: 68px;
    height: 68px;
    text-align: center;
    background: rgba(255,255,255,0.60);
	content: "\00d7";
    font-size: 56px;
    line-height: 56px;
    color: rgba(255,255,255,1.00) !important;        
    right: 20px;
    top: 20px;
}

.but_close:hover:after {
    background: rgba(255,255,255,1.00);
    color: rgba(244,95,97,1.00) !important;
    transform: scale(1.05);
	transition: all 0.3s ease-in-out;
    cursor: pointer !important;
}

.but_close:hover {
    cursor: pointer !important;
}

.but_close_dark:after {
    position: absolute !important;
    width: 68px;
    height: 68px;
    text-align: center;
	content: "\00d7";
    font-size: 56px;
    line-height: 56px;
    right: 20px;
    top: 20px;
}

.but_close_dark:hover:after {
    transform: scale(1.05);
	transition: all 0.3s ease-in-out;
    cursor: pointer;
}





.but_link {
    position: relative;
    width: calc(25% - 15px);
    margin: 30px 20px 30px 0px;
    padding: 30px;
    padding-bottom: 60px;
    float: left;
    color: rgba(255,255,255,1.00);
}

.but_link:hover {
    color: rgba(255,255,255,1.00);
    transform: scale(1.05);     
	transition: all 0.3s ease-in-out;   
}

.but_link p, .but_link h3 {
    color: rgba(255,255,255,1.00);    
}

.but_link:nth-child(4n) {
    margin: 30px 0px 30px 0px;
}

.but_link i {
    color: rgba(255,255,255,1.00);
    border: 3px solid #fff;
    border-radius: 50%;
    margin-top: 20px;
    padding-top: 23px;
    height: 100px;
    width: 100px;
    text-align: center;
    vertical-align: middle !important;
    position: relative;
}

.roundbutton {
    border-radius: 50%;
    padding: 0px;
	border: 3px solid rgba(197,0,6,1.00);
    text-align: center;
	max-width: 40% !important;
	height: auto;
    vertical-align: middle !important;
}

.centerflex {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    
    
	-ms-box-orient: horizontal;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -moz-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
    
    
    width: 100%;
    border: 0px solid #000;
}

.opentime-cont {
	position: fixed;
	width: 25%;
	top: 0px;
	right: 0px;
	height: 100vh;	
	z-index: 10001;
	background: rgba(255,255,255,0.80);
}

.opentime-slider {
	position: absolute;
	display: flex;
	justify-content: center;
	align-content: center;
	flex-direction: column;
	top: 0px;
	height: 100vh;
	padding: 40px 40px 40px 40px;
	height: 100%;
	z-index: 10002;	
}

.slogan-cont {
    position: absolute;
	bottom: 100px;
	width: 100%;
    z-index: 10000;
}

.slogan {
    position: relative;
    z-index: 10000;
	padding: 30px 0px 30px 20px;
	font-size: 60px;
	line-height: 60px;
	font-family: 'semibold';
	max-width: 1372px;
	margin: auto;
	color: rgba(255,255,255,1.00);
}

#claimer {
    position: fixed;
    z-index: 10000;
    padding: 30px 0 30px 0;
    width: 100%;
    bottom: 0px;
    background-color: rgba(244,95,97,1.00);    
}

#claimer * {
    color: rgba(255,255,255,1.00);
}

#claimer p {
    margin-right: 100px;
}

.nopadding {
    padding: 0px !important;
}

.maxli	{
	position: relative;
	max-width: 1372px;
	margin-left:auto;
	margin-right: auto;
	padding: 0px 20px 0px 20px;
	z-index: 15;
	border: 0px solid #000000;
	align-self: auto;

	-ms-box-orient: horizontal;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -moz-flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
}

.leftspace {
	padding-left: 20px;
}

.maxhead	{
	position: relative;
	max-width: 1372px;
	margin-left:auto;
	margin-right: auto;
	padding: 0px 20px 0px 20px;
	z-index: 15;
	border: 0px solid #000000;

	-ms-box-orient: horizontal;
}

.shadow {
	position: fixed !important;
	display: inline-block;
	top: -56px;
	left: 0px;
    -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
}

#logo img, .logo-gross img, .logo-klein img {
	display: inline-block;
	width: 100%;
	height: auto;
}

#logo a {
	text-decoration: none;
}

.logo-klein {
	position: absolute;
	margin-left: 20px;
	display: inline-block;
	bottom: 5px;
	left: 0px;
	display: none;
}

.logo-gross {
	position: absolute;
	margin-left: 20px;
	display: inline-block;	
	top: 35px;
	left: 0px;
	
}

.schnitzel {
    text-align: center;
    width: 100%;
    padding: 0px;
    border-bottom: 0px dotted rgba(0,0,0,0.50);
    padding-bottom: 0px;
}

.schnitzel, .schnitzel > a {
    font-size: 15px;
    line-height: 15px;
}

.schnitzel i {
    font-size: 10px !important;
}

#welcome	{
	position: relative;
	background-color: rgba(255,255,255,1.0);
    width: calc(100%);
    margin: auto auto;
	padding: 30px 0px 0px 0px;
	z-index: 19;
    border: 0px solid rgba(0,0,0,1.00);
}

.contentinlays	{
	position: relative;
    width: calc(100%);
    margin: auto auto;
    height: auto !important;
	padding: 0px 0px 0px 0px;
	z-index: 18;
    border-bottom: 0px dotted rgba(196,166,123,1.00);
}

.starttext {
    position: relative;
	width: calc(75%);
    margin: auto;
	margin-top: 0px;
    padding-top: 0px;
	padding-left: 0px;
	
}

.zweispaltig {
	column-count: 2; 
	column-gap: 40px;
	column-rule-style:dotted; 
	column-rule-width:0px; 
	column-rule-color: rgba(0,61,110,1.00);

	-webkit-column-count: 2; 
	-webkit-column-gap: 40px;
	-webkit-column-rule-style:dotted; 
	-webkit-column-rule-width:0px; 
	-webkit-column-rule-color: rgba(0,61,110,1.00);		
}

.leftcol {
	width: calc(25% - 50px);
	margin-right: 50px;
    padding-top: 0px;	
}

.rightcol {
	width: calc(25% - 50px);
	margin-left: 50px;
    padding-top: 0px;	
	align-self: auto;
}

.folgetext100 {
	width: 100% !important;
    padding-bottom: 40px;    
}

.folgetextspalte {
	width: calc(50% - 40px/2);
	float: left;
	padding-top: 30px;
    padding-right: 50px;
	margin-right: 40px;
    padding-bottom: 30px;
    border: 0px solid rgba(0,0,0,1.00);

/*	column-count: 2; 
	column-gap: 40px;
	column-rule-style:dotted; 
	column-rule-width:1px; 
	column-rule-color: #25654f;

	-webkit-column-count: 2; 
	-webkit-column-gap: 40px;
	-webkit-column-rule-style:dotted; 
	-webkit-column-rule-width:1px; 
	-webkit-column-rule-color: #25654f;	
*/
}

.folgetextspalterechts {
	width: calc(50% - 40px/2);
    border: 0px solid rgba(0,0,0,1.00);    
    padding-bottom: 30px;    
    padding-top: 30px;    
}

.folgetext100 > ul li:before, .folgetextspalte > ul li:before, .folgetextspalterechts ul > li:before, .textbereich > ul li:before, .contents > ul li:before {
    position: absolute;
    content: "\00af" !important;
    margin-right: 10px;
    padding-top: 8px;
    margin-left: -20px;
}

.folgetext100 > ul, .folgetextspalte > ul, .folgetextspalterechts > ul, .textbereich > ul, .contents > ul {
    padding-left: 0px;
    list-style: outside none;    
}

.folgetext100 > ul li, .folgetextspalte > ul li, .folgetextspalterechts > ul li, .textbereich > ul li, .contents > ul li {
    padding-left: 20px;
	text-align: left;	
}








.schpalten {
	padding-top: 30px;
	column-count: 2; 
	column-gap: 40px;
	column-rule-style: none; 
	column-rule-width: 1px; 

	-webkit-column-count: 2; 
	-webkit-column-gap: 40px;
	-webkit-column-rule-style: none; 
	-webkit-column-rule-width: 1px; 
}

.back-theme-invert .schpalten {
	column-rule-color: rgba(255,255,255,1.00) !important;
	-webkit-column-rule-color: rgba(255,255,255,1.00) !important;	    
}

.back-otheme {
    padding-top: 0px;
    padding-bottom: 0px;
    background: rgba(255,255,255,1.00);    
}

.back-bild {
	position: relative;
    padding-top: 0px;
    height: 80vh;
	margin-left: 20px;
	margin-right: 20px;
    padding-bottom: 0px;
    background-size: cover;
    background-position: center center;
}

.vertcenter {
    position: relative;
    top: 50%;
    margin: auto auto;
    transform: translateY(-50%);
}

.leftvertcenter {
    position: relative;
    top: 50%;
    margin: auto auto;
    transform: translateY(-50%);
}

.back-theme {
    padding-top: 0px;
    padding-bottom: 0px;
	margin-left: 20px;
	margin-right: 20px;
}

.back-theme-invert {
    padding-top: 40px;
    padding-bottom: 0px;
	margin-left: 20px;
	margin-right: 20px;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;	
}

.back1, .back2, .back3, .back4, .back5, .back6, .back7, .back8, .back9 {
    background: rgba(0,189,212,1.00);
}

.back10 {
    background: rgba(90,140,120,1.00);
    background: -moz-linear-gradient(0deg,  rgba(0,61,110,1) 0%, rgba(225,150,0,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(0deg,  rgba(0,61,110,1) 0%,rgba(225,150,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(0deg,  rgba(0,61,110,1) 0%,rgba(225,150,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

#aktuelles	{
	position: relative;
    width: calc(100%);
    margin: auto auto;
	padding: 40px 0px 40px 0px;
	z-index: 19;	
}

#aktuelles *	{
}

#events	{
	position: relative;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    width: calc(100% - 40px);
    margin: auto auto;
	padding: 40px 0px 40px 0px;
	z-index: 19;	
}


.flexstart	{
	width: 100%;
	padding-left: 0px;
	padding-top: 30px;
	margin-top: 0px;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
}

ul.flexstart:hover > li {
	opacity: 0.5;
	transition: all 0.3s ease-in-out;	
}

ul.flexstart li:hover {
	opacity: 1.0 !important;
	transition: all 0.3s ease-in-out;	
}

.flex-item	{
    border-top: 0px dotted rgba(255,255,255,1.00);    
	width: calc(1/2 * 100% - 20px / 2);
    display: inline-block;
	position:relative;
    margin: 0px 20px 30px 0px;
    padding: 0px 0px 20px 0px;
	float: left;
	border-bottom: 1px solid;
	border-bottom-width: 1px;
	border-left-width: 0px;
	border-right-width: 0px;
	border-top-width: 0px;	
	border-image-slice: 1;
	border-image-source: linear-gradient(to left, rgba(0,61,110,1.00), rgba(225,150,0,1.00));	
}

.flex-distance *	{
}

p.date {
    text-align: left;	
} 

.quote {
    
}

.flex-distance {
    position: relative;
    padding: 10px 0px 10px 0px;
	border-top: 7px solid;
	border-bottom-width: 0px;
	border-left-width: 0px;
	border-right-width: 0px;
	border-top-width: 7px;	
	border-image-slice: 1;
	border-image-source: linear-gradient(to left, rgba(0,61,110,1.00), rgba(225,150,0,1.00));
}

.flexstart h3	{
    color: rgba(225,150,0,1.00);
    margin-bottom: 20px;
	margin-top: 0px;
	font-family: 'semibold';
}

.flex-item:nth-child(2n+2) {
    margin: 0px 0px 30px 0px;
}

.halfp {
    position: relative;
    width: 100%;
    border: 0px solid rgba(187,182,60,1.00);
    min-height: 80vh;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;    
}

.halfptext {
    position: relative;
    display: block;
    width: calc(25%);
    float: left;
    overflow: hidden;    
}


.halfptext .buttonrahmenws {
    margin-top: 40px;
    z-index: +1;    
}

.halfptext-inner {
    position: relative;
    display: inline-block;
    max-width: calc(1372px / 2);
    float: left;
    z-index: +1;
    padding-bottom: 40px;
    padding-top: 40px;
}

.halfptext-inner * {
    color: rgba(255,255,255,1.00);
}

.hpleft {
    top: 40%;
    transform: translateY(-25%);
    padding-right: 30px;
    padding-left: 0px;
    width: 100%;
}

.hpright {
    top: 40%;
    transform: translateY(-25%);    
    padding-left: 30px;
    padding-right: 20px;
    left: 0px;
}

.halfpfoto {
    position: relative;
    width: 75%;
    z-index: -1;
    float: left;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;    
}

.zitat {
	display: block;
    font-size: 40px;
    line-height: 43px;
    color: rgba(255,255,255,1.00);
	font-family: 'semibold';
	margin-bottom: 50px;
}

#expander .zitat {
	display: block;
    font-size: 40px;
    line-height: 43px;
    color: rgba(225,150,0,1.00);
	font-family: 'semibold';
	margin-bottom: 50px;
}



.vertcenter .zitat + p, .vertcenter .zitatbild + p {
    color: rgba(255,255,255,1.00);
}


#contentinfo {
    padding: 30px;
}














#bgmap	{
	position: relative;
	width: 100%;
	height: 70%;
	min-height: 200px;
	background-size: cover;	
	background-position: center center;	
	background-repeat: no-repeat;	
}

#bereiche {
	position: relative;
    width: calc(100% - 40px);
    margin: auto auto;
	padding: 40px 0px 40px 0px;
	z-index: 19;	
}

#bildfolge	{
	position: relative;
    width: calc(100%);
    margin: auto auto;
    height: 60vh;
    background-size: cover !important;
    background-position: center center !important;
	z-index: 20;
    border: 0px solid rgba(77,185,82,1.00);
}

#bildfolge-ohne	{
	position: relative;
    width: calc(100%);
    margin: auto auto;
    height: 0px;
}

#but_bildfolge:hover, #but_bildfolge_off:hover {
    background: rgba(39,101,78,1.00) !important;    
	transition: all 0.5s;
    cursor: pointer;
}


#mappli	{
	position: relative;
	width: calc(100% - 40px);
	margin: 0px 20px 0px 20px;
    height: 60vh;
	z-index: 5000;
}

#startslider	{
	position: relative;
	width: 100%;
	z-index: 20;
	padding: 0px 20px 0px 20px;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

#owl-nested {
	max-width: 100%;
	margin-left:auto;
    z-index: 19;
	margin-right: auto;
	padding: 0px 0px 0px 0px;
	border: 0px solid #000000;
    margin-top: 0px;
}

.owl-nested-galerie {
	display: flex;
	display: -webkit-flexbox;		
	flex-flow: row wrap;
    position: relative;
    max-width: 100%;
	height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;    
}

.bildfolge-gal	{
	display: inline-block;
	position: relative;
    width: calc(80%);
	left: 10%;
    margin: auto auto;
    height: 70vh !important;
    background-size: cover !important;
    background-position: center center !important;
	z-index: 20;
}

.itemtext {
    margin-top: 0px;
    position: relative;
	width: 50%;
    padding: 30px;
    border-radius: 0px;
}

.nobgitem {
    visibility: hidden !important;
}

.itemtext * {
    color: rgba(255,255,255,1.00);
}

.itemtext h1 {
    color: rgba(247,217,25,1.00);
    font-size: 36px;
    line-height: 40px;
    text-transform: none;
}

.deck  {
    display: none;
    position: relative;
    width: calc(100% - 40px);
    padding: 40px 0 40px 0;
    margin: 0px auto 0px auto;
    z-index: 21;
    background-repeat: no-repeat;
    background-size: 200%;
    background-position: center center;
}

.words {
    position: absolute;
    display: inline-block;
    bottom: 0%;
    right: 30px;
    z-index: 25;
    border: 0px solid rgba(203,94,96,1.00);
    font-size: 10vw;
    line-height: 12vw;
    alignment-baseline: bottom;
    color: rgba(255,255,255,0.50);
    white-space: nowrap; 
    overflow:hidden;    
}

#contentmap	{
	width: 100%;
    min-height:100% !important; /* browser fill */
    height:auto;                /*content fill */
	z-index: 10;
	margin-bottom: 100px;
	text-align:left;
}

#content	{
	width: 100%;
    min-height:100% !important; /* browser fill */
    height:auto;                /*content fill */
	z-index: 20;
	text-align:center;
}

#notab	{
	position: relative;
	width: 100%;
	min-height: 100%;
	height: auto !important;
	background-color: rgba(255, 255, 255, 0.97);
	z-index: 18;
	color: #FFF;
	padding: 30px 0px 0px 0px;
	margin-bottom: 0px;
	display: none;
}

#site {
	display: block;
}

#sitemap	{
	padding: 40px 0px 40px 0px;
	z-index: 20;
	bottom: 0px;
    background: rgba(0,61,110,1.00);
    width: calc(100% - 40px);
    margin: auto auto;
	z-index: 19;	
}

#smleft	{
	position:relative;
	width: calc(100% / 4 - 20px);
    margin-right: 20px;
	float: left;
	padding: 0px 0px 0px 0px;
	z-index: 21;
}

#smleft * {
    color: rgba(255,255,255,1.00);
    font-size: 18px;
    line-height: 25px;
}

#smleft p {
}

#smleft a {
    color: rgba(225,150,0,1.00);
    text-decoration: underline;
}

#smleft a:hover {
	color: rgba(255,255,255,1);
    text-decoration: none;
}

#smleft img {
    max-width: 70%;
    min-width: 220px;    
    height: auto;
}

#smcenter	{
	position:relative;
	width: 75%;
	margin-left: auto;
	float: left;
	margin-right: auto;	
	padding: 0px 0px 0px 0px;
	height: auto !important;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	z-index: 21;
}

#smcenter ul#trenner {
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,1.00);
}

#smcenter ul.verband li:first-child {
	color:#fff; 
    font-size: 18px;
	border: 0px solid rgba(255,255,255,1.00) !important;
	padding-bottom: 5px;
	margin-bottom: 5px;
}

#smcenter ul.verband li a {
	color:#fff !important; 
 }

#smcenter ul.verband li img {
	max-width: 90%;
	height: auto;
}

#smcenter ul {
	float:left;
	width: calc(1/3 * 100% - 20px);
	list-style: none;
	margin: 0px 20px 30px 0px;
}

#smcenter ul:hover {
    transform: scale(1.05); 
	transition: all 0.3s ease-in-out;        
}

#smcenter ul:nth-child(3n + 3) {
	float:left;
	width: calc(1/3 * 100% - 20px);
	list-style: none;
	margin: 0px 0px 30px 0px;
}

#smcenter li {
	padding-left: 0px;
	border-bottom: 0px solid rgba(255,255,255,0.50);
	padding-bottom: 0px; 
	text-align: left;
}

#smcenter li:last-child {
	padding-left: 0px;
	border-bottom: 0px dotted rgba(255,255,255,0.50);
	padding-bottom: 0px;    
}

#smcenter li.indent {
	padding-left: 15px;
}

#smcenter ul li:first-child {
	text-align: left;
	color:#fff;
    margin-bottom: 10px;
    border-bottom: 0px;
}

#smcenter ul li:first-child i {
	color:#fff;
    font-size: 18px;
}

#smcenter li:first-child a {
    display: block;
	color: rgba(255,255,255,1) !important;    
	text-decoration: none;
	border-bottom: 7px solid #fff;
    padding: 10px 0px 10px 0px;    
	font-family: 'semibold';
}

#smcenter li:first-child a:hover {
	color: rgba(225,150,0,1) !important;    
	text-decoration:none;
	border-bottom: 7px solid rgba(225,150,0,1.00);	
	transition: all 0.3s ease-in-out;    
}


#smcenter li a {
	display: block; 
	padding-left: 0px;
	text-decoration:none;	
	border-bottom: 1px solid rgba(225,255,255,0.50);	
}

#smcenter li a:hover{
	color: rgba(225,150,0,1) !important;
}

#smcenter li a.active{
	color: rgba(225,150,0,1) !important;
	border-bottom: 1px solid rgba(225,150,0,1.00);	
}

#smcenter li:first-child a.active{
	color: rgba(225,150,0,1) !important;
	border-bottom: 7px solid rgba(225,150,0,1.00);	
}





#footer	{
	position: relative;
	width: 100%;
	padding: 20px 0px 20px 0px;
	z-index: 19;
    color: rgba(255,255,255,1.00);
}

#footer a:hover {
    text-decoration: none;
}

.socialmedia	{
	position: relative;
	width: 100%;
	padding: 10px 20px 10px 20px;
	border: 1px solid rgba(255,255,255,1.00);
	text-decoration: none !important;
	color: rgba(255,255,255,1.00) !important;
}

.socialmedia:hover	{
	color: rgba(0,61,110,1.00) !important;
	background: rgba(255,255,255,1.00) !important;
	transition: all 0.3s ease-in-out;	
}

.socialmedia > i {
	position: relative;
	padding-left: 30px;
	color: rgba(255,255,255,1.00);
	font-size: 26px !important;
	text-decoration: none;
	vertical-align: middle;
}

.socialmedia:hover > i	{
	color: rgba(0,61,110,1.00) !important;
	transition: all 0.3s ease-in-out;	
}

#smicons {
	text-align: center;
	width: 100%;
}

#smicons i {
	font-size: 20px;
	color: rgba(102,102,102,0.8);
	padding: 0px 10px 0px 10px;
}

#smicons i:hover {
	color: rgba(102,102,102,1);
}

#dcont h3 {
    margin-bottom: 20px;
}

#dcont h3:before{
	content: "\f019";
	padding-left: 0px;
	margin-bottom: 20px;
	font-family: FontAwesome;
	padding-right: 10px;
}

#dcont	{
	padding-top: 10px;
	padding-bottom: 10px;
	position: relative;
	-moz-column-span: all;
	-webkit-column-span: all;
	column-span: all;
	width: 100%;

    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
}

#dcont > ul > li	{
	list-style: none;
	display: inline;
}

#dcont > ul > li:before {
    content: '';
}


#dcont > ul > li:after	{
	content: '';
	padding-right: 20px;
}

#dcont > ul > li:last-child:after	{
	content: '';
	padding-right: 5px;
}


#dcont > ul	{
	width: 100%;
	display: block;
    margin-left: 0px !important;
	padding: 5px 0px 0px 10px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	margin-bottom: 5px;
}

#dcont > ul:hover	{
	transition: all 0.3s ease-in-out;
}

#dcont > ul > li:first-child	{
	width: 7%;
}

#dcont > ul > li:nth-child(2)	{
	width: 68%;
    white-space: nowrap;    
    overflow: hidden;
}

#dcont > ul > li:last-child	{
	width: 25%;
	text-align: right;
}

#dcont > ul:hover > li, #dcont ul:hover > li > a, #dcont ul:hover > li > i 	{
	color: #fff;
	text-decoration: none;
}

#dcont ul li a {
    display: inline-block;
    width: 100%;
    text-decoration: none;
}

#dcont > ul > li	{
	display: inline-block;
	float: left;
	margin-left: 0px;
	vertical-align: middle;
	padding-left: 0px !important;    
}

#dcont > ul > li:last-child	{
	float: right;
}

.downloadlinie	{
	border-bottom: 1px solid rgba(179,18,24,1);
}



























.buttonrahmenws {
    position: relative;
    display: inline-block;
    border-radius: 0px;
    padding: 15px 45px 15px 15px;
    border: 1px solid rgba(255,255,255,1.00) !important;
    color: rgba(255,255,255,1.00) !important;
    background: rgba(225,150,0,1.00);
    text-decoration: none !important;
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;    
}

.buttonrahmenbreitws {
    position: relative;
    display: inline-block;
	width: 100%;
    border-radius: 0px;
    padding: 15px 15px 15px 15px;
    border: 1px solid rgba(255,255,255,1.00) !important;
    color: rgba(255,255,255,1.00) !important;
    background: rgba(225,150,0,1.00);
    text-decoration: none !important;
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;    
}

.buttonrahmenws:hover, .buttonrahmenbreitws:hover {
    text-decoration: none;
	transition: all 0.3s ease-in-out;
    background: rgba(0,61,110,1.00);	
    cursor: pointer;
}

.buttonrahmenws:after, .buttonrahmenbreitws:after, .buttonrahmenws:hover:after, .buttonrahmenbreitws:hover:after {
    position: absolute;
    top: calc(28%);
    right: 20px;
    color: rgba(255,255,255,1.00);
    font-size: 26px;
    display: inline-block;
    content: "\f105";
    font-family: FontAwesome;	
	transition: all 0.3s ease-in-out;    
}















.buttonrahmendg {
    position: relative;
    display: inline-block;
	border-radius: 0px;
    padding: 5px 55px 5px 15px;
    background-position: center bottom;
    text-decoration: none !important;
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;    
}

.buttonrahmenbreitdg {
    position: relative;
    display: inline-block;
	border-radius: 0px;
    padding: 5px 55px 5px 15px;
    width: 100% !important;
    text-decoration: none !important;    
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;    
}


.buttonrahmendg:after, .buttonrahmenbreitdg:after {
    position: absolute;
    content: "";
    display: inline-block;
    top: calc(50% - 6px);
    right: 10px;
    -webkit-transform:rotate(360deg);
    border-style: solid;
    border-width: 13px 7.5px 0 7.5px;
    transform: rotate(-90deg);    
}

.buttonrahmendg:hover, .buttonrahmenbreitdg:hover {
    text-decoration: none;
	transition: all 0.3s ease-in-out;
    cursor: pointer;
}

.buttonrahmendg:after, .buttonrahmenbreitdg:after {
	content: "ff";
	position: absolute;
	right: 10px;
	top: 10px;
	transition: all 0.3s ease-in-out;    
}

.buttonrahmendg:hover:after, .buttonrahmenbreitdg:hover:after {
	transition: all 0.3s ease-in-out;    
}












.accordi, .accordiev, .accordiangebot {
    width: 100% !important;
	padding-top: 0px;
}

.accordi h2, .accordiev h2, .accordiangebot h2 {
    position: relative;
    width: 100% !important;
    text-align: left;
    color: rgba(0,189,212,1.00) !important;
    display: inline-block;
    margin-bottom: 20px !important;
}



ul.opentimes {
	list-style: none;
	width: 100%;
	display: inline-block;
	margin: 20px 0px 20px 0px;
}

ul.opentimes li {
	display: inline-block;
	float: left;
	width: 40%;
}

ul.opentimes li:nth-child(even) {
	float: none;
	text-align: right;
	width: 60%;
}




.button_k {
    position: relative;
	display: inline-block;
	width: 100%;
	color: rgba(255,255,255,1.00) !important;
    padding: 15px 55px 15px 30px;
	text-align: left;
	cursor: pointer;
    margin: 20px 0px 0px 0px;
	background: rgba(225,150,0,1.00) url("/w_resp/allgemein/images/layout/projekt/linien.svg");
    background-position: left bottom;
    text-decoration: none !important;
	-moz-hyphens: none; -o-hyphens: none; -webkit-hyphens: none; -ms-hyphens: none; hyphens: none;
	background-repeat: no-repeat;
}

.button_k:hover {
	background: rgba(0,61,110,1.00) url("/w_resp/allgemein/images/layout/projekt/linien.svg");
	transition: all 0.3s ease-in-out;    
	background-repeat: no-repeat;
}

.telefon:after {
    position: absolute;
    top: calc(28%);
    right: 20px;
    color: rgba(255,255,255,1.00);
    font-size: 26px;
    display: inline-block;
    content: "\f095";
	transform: rotate(-45deg);
    font-family: FontAwesome;	
	transition: all 0.3s ease-in-out;    
}

.mail:after {
    position: absolute;
    top: calc(28%);
    right: 20px;
    color: rgba(255,255,255,1.00);
    font-size: 26px;
    display: inline-block;
    content: "\f0e0";
	transform: rotate(-0deg);
    font-family: FontAwesome;	
	transition: all 0.3s ease-in-out;    
}

.mappointer:after {
    position: absolute;
    top: calc(28%);
    right: 20px;
    color: rgba(255,255,255,1.00);
    font-size: 26px;
    display: inline-block;
    content: "\f041";
	transform: rotate(-0deg);
    font-family: FontAwesome;	
	transition: all 0.3s ease-in-out;    
}


.cryptedmail:after {
  content: attr(data-name) "@" attr(data-domain) "." attr(data-tld); 
}


.button_fb > i {
	display: block;
	float: left;
	color: rgba(255,255,255,1.00) !important;
	width: 25px;
	padding-left: 20px;
	padding-right: 40px;
	margin-right: 15px;
	border-right: 1px solid #FFF;
}

.button_fb:hover {
	transition: all 0.3s ease-in-out;
}

.button_fb:hover > i {
	color: #fff;
}

.button_fb {
	display: inline-block;
	width:100%;
    font-size: 24px;
	cursor:pointer;
    border: 3px solid rgba(255,255,255,1.00) !important;
	padding: 10px;
	color: rgba(255,255,255,1.00) !important;
	margin-bottom: 13px;
}

#goleft.disabled:hover > .pfeilcss, #goright.disabled:hover > .pfeilcss {
    border-color: rgba(255,255,255,0.50) transparent transparent transparent !important;    
}




.button-o {
	display: inline-block;
	width:60px;
	height:60px;
	border-radius: 0px;
	text-align: center;
	cursor: pointer;
	background: rgba(0,61,110,0.45)
}

.button-o:hover {
	background: rgba(0,61,110,1.00)
}

.button-o > i {
    font-size: 38px;
    padding-top: 11px;
	color: rgba(255,255,255,1.00);
}





.button {
	display: inline-block;
	width:60px;
	height:60px;
	border-radius: 0px;
	text-align: center;
	cursor: pointer;
	background: rgba(255,255,255,0.45)
}

.button:hover {
	background: rgba(225,150,0,1.00)
}

.button:hover i {
	color: rgba(255,255,255,1.00);    
	transition: all 0.3s ease-in-out;
}

#goterm i {
    font-size: 38px;
    padding-top: 11px;
	color: rgba(255,255,255,1.00) !important;
}


.button > i {
    font-size: 38px;
    padding-top: 11px;
	color: rgba(225,150,0,1.00);
}

.pfeilcss {
    position: absolute;
    display: block;
    top: calc(50% - 13px);
    left: calc(50% - 15px);
    margin: auto auto;
    width: 0px;
    height: 0px;
    -webkit-transform:rotate(360deg);
    border-style: solid;
    border-width: 26.0px 15px 0 15px;
}

.pfeilcss-dark {
    position: relative;
    display: block;
    left: 0px;
    margin: 40px auto 0px auto;
    width: 0px;
    height: 0px;
    -webkit-transform:rotate(360deg);
    border-style: solid;
    border-width: 26.0px 15px 0 15px;
}

.disabled	{
	cursor: auto;
	display: none !important;
}

#goleft.disabled:hover, #goright.disabled:hover {
	display: none !important;
}

#goleft.disabled:hover > i, #goright.disabled:hover > i, #goleft.disabled > i, #goright.disabled > i {
	display: none !important;
}

#godown	{
	position: absolute;
	left:50%;
	bottom: 10px;
	margin-left: -32px;
	margin-bottom: 20px;
	z-index: 500;
}




.csfade {
	-moz-animation: csfade 1s 1;
	-webkit-animation: csfade 1s 1;
	animation: csfade 1s 1;    
}

@-moz-keyframes csfade {
  0% {
    opacity: 0.3;
  }
  50% {
    opacity: 0.7;
    }
  100% {
    opacity: 1.0;
  }
}

@-webkit-keyframes csfade {
  0% {
    opacity: 0.3;
  }
  50% {
    opacity: 0.7;
    }
  100% {
    opacity: 1.03;
  }
}

@keyframes csfade {
  0% {
    opacity: 0.3;
  }
  50% {
    opacity: 0.7;
    }
  100% {
    opacity: 1.0;
  }
}







.bounce {
	-moz-animation: bounce 3s infinite;
	-webkit-animation: bounce 3s infinite;
	animation: bounce 3s infinite;
}

@-moz-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

#scrolltop	{
	position:fixed !important;
	bottom:40px;
	right:40px;
	display: none;
	z-index: 500;
	opacity: 0.8;	
}

#goright	{
	position:absolute;
	right: 40px;
	top: calc(50% - 32px);
	z-index: 5000;
}

#goleft	{
	position:absolute;
	left: 40px;
	top: calc(50% - 32px);
	z-index: 5000;
}

#goterm	{
	position:absolute;
	right: 40px;
	top: 20px;
	z-index: 10005;
}

#termclose	{
	position:fixed;
	right: 40px;
	top: 40px;
	z-index: 10005;
}

#menumobil	 {
	display: none;
	background: rgba(0,189,212,1);
	position: absolute;
	width: calc(100% - 20px);
	top: 0px;
	z-index: 9999;    
	padding: 30px 20px 60px 20px;
	background-color: rgba(0,61,110,1.0) !important;
}

#hamburger	{
	display: none;
}

.gallery-expander {
    margin-left: 20px;
}

#gallery 	{
    margin-top: 0px;
	width: 100%;
}

#gallery h3:before{
	content: "\f302";
	padding-left: 0px;
	margin-bottom: 20px;
	font-family: FontAwesome;
	padding-right: 10px;
}

#galleryitems 	{
	width: 100%;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
}

.galleryitem 	{
	width: calc(1/3 * 100% - 40px / 3);
	float: left;
	margin-right: 20px;
    height: 150px;
	margin-bottom: 20px !important;
    background-position: center center !important;
    background-repeat: no-repeat !important; 
    background-size: cover !important;  
}

.galleryitem:nth-child(3n)	{
	width: calc(33.3% - 13.333px);
	margin-right: 0px;
}

.galleryitem > a {
	display: block !important;
	height: 100%;
    margin: auto auto;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center center;
}

.galleryitem > a:hover:after {
    position: absolute;
    top: 50%;
    margin-left: -18px;
    margin-top: -18px;
    left: 50%;
    color: rgba(255,255,255,1.00);
    font-size: 36px;
    display: inline-block;
    content: "\f00e";
    font-family: FontAwesome;
}

.galleryitem:hover > a {
	display: block;
	height: 100%;
	width: 100%;
	transition: all 0.3s ease-in-out;
}

.galleryitem:hover {
	transform: scale(1.05, 1.05);
	transition: all 0.3s ease-in-out;
}







.textbereich {
	width: 50%;
	float: left;
}

ul#overview {
	width: calc(50% - 20px) !important;
	list-style: none;
	float: left;
	height: 100% !important;
	margin: 0px 20px 0px 0px;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
    border: 0px solid rgba(217,217,217,1.00);
}

ul#overview * {
    color: rgba(255,255,255,1.00) !important;
}

ul#overview > li {
    position: relative;
	list-style: none;
	float:left;
	height: 100% !important;
	width: calc(100%);
	margin: 0px 0px 20px 0px;
}

ul#overview > li:hover h3 {
	color: rgba(255,4,98,1.00) !important;    
}

ul#overview > li:nth-child(4n) {
	margin: 0px 0px 50px 0px;
	width: calc(25%);
}

ul#overview > li > div.imgdiv-holder {
}

ul#overview li div.imgdiv {
	position: relative;
	display: block;
	top: 0px;
    padding-top: 60%;
	margin-bottom: 20px;
	margin-top: 0px;
	width: 100%;
	height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 0px;
}

.linesbox {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 50px;
	height: 100%;
	background: url("/w_resp/allgemein/images/layout/projekt/linien.svg");
    background-position: left top;
	background-repeat: repeat-y;	
}

ul#overview > li > div.imgdiv:before {
	position: absolute;
	content: "";
	height: 1px;
	background-color: #FFFFFF;
	width: 50%;
	margin-left: 50%;
	right: 0px;
	top: -20px;
} 

ul#overview > li > div.imgdiv a {
	display: none;
}

ul#overview > li > div.imgdiv a:first-child {
	display: block;
	width: 100%;
	height: 100%;
}

ul#overview > li > div.imgdiv a i {
	position: absolute;
	right: 10px;
	bottom: 10px;
	color: rgba(255,255,255,1);
	font-size: 28px;
}

ul#overview > li > div.imgdiv a:hover > i {
	color: rgba(255,237,0,1);
}


ul#overview > li > div.selfheight {
	position: relative;
	margin-bottom: 20px;
	text-decoration: none;
	border-top: 0px solid rgba(0,144,215,1);
	padding-top: 10px;
}

ul#overview > li:hover > div.selfheight {
	border-top: 0px solid rgba(0,144,215,1);
}

h3.titow {
	margin: 0px;
}












































#bereichbuttonscont {
    bottom: 30px;
	width: 100%;
    z-index: 100;
}

.bereichbuttext {
	margin-top: 30px;
	position: relative;
	padding-bottom: 100px;
}

ul#bereichbuttons {
	width: 100% !important;
	list-style: none;
    display: flex;
	display: -webkit-flex;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
}

#bereichbuttons h3 {
    width: 100%;
	height: 45px;
    color: rgba(225,150,0,1.00);
}

ul#bereichbuttons:hover li {
	transition: all 0.3s ease-in-out;	
	opacity: 1;
}

ul#bereichbuttons li:hover {
	opacity: 1.0;
	transition: all 0.3s ease-in-out;	
}

ul#bereichbuttons li:hover > h2, ul.flexstart li:hover h3  {
	transition: all 0.3s ease-in-out;	
}

ul#bereichbuttons li:hover > .imgdiv, ul.flexstart li:hover > ul#overview li .imgdiv {
	transform: scale(1.05);
	transition: all 0.3s ease-in-out;
}

ul#bereichbuttons > li {
    display: block;
    position: relative;
	list-style: none;
	text-align: left;
	color: rgba(0,0,0,1.00);
	float:left;
	padding-bottom: 20px;
	width: calc(1/4 * 100% - 60px/4);
	margin: 0px 20px 20px 0px;
}

ul#bereichbuttons > li:nth-child(4n) {
	margin: 0px 0px 20px 0px;
}

ul#bereichbuttons > li > div.imgdiv {
	position: relative;
	display: block;
	width: calc(100%);
    left: 0px;
    border-radius: 0px;	
    padding-top: 60%;
	margin-bottom: 30px;
	text-decoration: none;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

#bereichbuttons > li > div.imgdiv:before {
	position: absolute;
	content: "";
	height: 0px;
	background-color: #000000;
	width: 50%;
	margin-left: 50%;
	right: 0px;
	top: -20px;
} 


ul#bereichbuttons > li > div.imgdiv a i {
	position: absolute;
	right: 10px;
	bottom: 10px;
	color: rgba(255,255,255,1);
	font-size: 28px;
}

ul#bereichbuttons > li > div.imgdiv a:hover > i {
	color: rgba(255,255,255,1);
}


.absbot {
    display: inline-block;
    position: absolute;
    bottom: 20px;
    margin-top: 20px;
    margin: auto auto;
    width: calc(100%);
    text-align: left;
}















.contents {
    width: 100%;
    padding: 0px;
    min-height: 40vh;
}

.rightcontentsimage {
    position: absolute;
    width: calc(50% - 10px);
    left: calc(50% + 10px);
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    float: left;
    background-size: cover;
    background-position: center center;
    height: 100% !important;
}

.leftcontents {
    width: calc(50%);
    padding-top: 40px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    float: left;
    
}

.rightcontents {
    width: calc(50%);
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    float: left;
}

.leftcontents *, .rightcontents *, rightcontentsimage * {
}



















ul#expander {
	width: 100% !important;
	list-style: none;
	margin: 0px 0px 40px 0px;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
}

ul#expander > li > div > h3 {
	max-width: 100%;
	display: inline-block;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	color: rgba(255,255,255,1.00);
}

ul#expander > li {
	list-style: none;
	float:left;
    height: auto;
	width: calc(25% - 60px/4);
	margin: 0px 20px 0px 0px;
    border: 0px solid rgba(100,100,100,1.00); 
    padding-left: 0px !important;
}

ul#expander > li:nth-child(4n) {
	margin: 0px 0px 0px 0px;
}

ul#expander > li:hover div.imgdiv {
	transform: scale(1.0, 1.0);	
	transition: all 0.3s ease-in-out;    
}

ul#expander:hover li {
	opacity: 1.0;
}

ul#expander li.gallery-item:hover {
	transition: all 0.3s ease-in-out;    	
	opacity: 1.0;
}

ul#expander div.imgdiv {
	position: relative;
	width: 100%;
	height: 200px;
    padding: 0px;
    margin: 0px;
	margin-bottom: 20px;
	text-decoration: none;
	opacity: 1;
	background-size: cover;
	background-position: center center;	
	background-repeat: no-repeat;
    padding-left: 0px;
}

ul#expander li.gallery-item div.imgdiv:after {
    position: absolute !important;
	padding-top: 1px;
    font-size: 56px;
    line-height: 56px;
    text-align: center;
    width: 68px;
	border-radius: 0px;
    height: 68px;
    background: rgba(225,150,0,0.60);
	content: "+";
    color: rgba(255,255,255,1.00) !important;    
    right: 10px;
    top: 10px;
}

ul#expander li.gallery-item div.imgdiv:hover:after {
    background: rgba(225,150,0,1.00);
	transform: rotate(180deg);
	transition: all 0.3s ease-in-out;    		
}

ul#expander > li:before {
    content: '' !important;
	height: 1px;
}

ul#expander li.gallery-item.active div.imgdiv {
    outline: 10px solid rgba(255,255,255,1.00) !important; 
}

ul#expander li.gallery-item.active div.imgdiv:after {
    position: absolute !important;
	padding-top: 1px !important;
    font-size: 56px;
    line-height: 56px;
    text-align: center;
    width: 68px;
	border-radius: 0px;	
    height: 68px;
	content: "\00d7";
    color: rgba(255,255,255,1.00) !important;    
    right: 10px;
    top: 10px;
}

ul#expander > li div.imgdiv a {
	display: none;
}

ul#expander > li div.imgdiv a:first-child {
	display: block;
	width: 100%;
	height: 100%;
}

ul#expander > li div.imgdiv a i {
	position: absolute;
	right: 10px;
	bottom: 10px;
	color: rgba(255,255,255,1);
	font-size: 28px;
}

ul#expander div.imgdiv:hover {
	cursor: pointer;
}

ul#expander > li div.selfheight {
	position: relative;
	margin-bottom: 20px;
	text-decoration: none;
	border-top: 0px solid rgba(0,60,110,1);
	padding-top: 0px;
}


































ul#contentboxen {
	width: 100% !important;
	list-style: none;
    display: flex;
	display: -webkit-flex;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
}

ul#contentboxen > li {
    position: relative;
	list-style: none;
    display: inline-block;
	text-align: center;
	float:left;
	border-radius: 0px;
	height: 264px;
	width: calc(25% - 60px/4);
	margin: 0px 20px 40px 0px;
	border: 0px solid #ccc;
	background-size: cover;
	background-position: center center;	
	background-repeat: no-repeat;
    padding-left: 0px;
}

ul#contentboxen > li:before {
    content: '' !important;
	height: 1px;
}

ul#contentboxen a:hover:after {
    position: absolute;
    top: 50%;
    margin-left: -18px;
    margin-top: -18px;
    left: 50%;
    color: rgba(255,255,255,1.00);
    font-size: 36px;
    display: inline-block;
    content: "\f064";
    font-family: FontAwesome;
}

ul#contentboxen > li:hover > a {
	display: block;
	height: 100%;
	width: 100%;
	background-color: rgba(255,255,255,0.72);
	text-decoration: none;
}

ul#contentboxen > li:hover {
	transition: all 0.3s ease-in-out;
	transform: scale(1.05, 1.05);
}

ul#contentboxen > li:hover > a > h3 {
	color:rgba(255,255,255,1.00);
	transition: all 0.3s ease-in-out;		
}

ul#contentboxen > li:nth-child(4n) {
	margin: 0px 0px 0px 0px;
	width: calc(25% - 60px/4);
}

ul#contentboxen h3 {
	position: absolute;
	color: rgba(0,0,0,1.00);
	width: calc(100% - 40px);
	display: block;
	padding: 10px;
	top: 20px;
    left: 0px;
	margin: 0px 20px 0px 20px !important;
	background-color: rgba(255,255,255,1.00);
}















ul#persboxen {
	width: 100% !important;
	list-style: none;
	margin: 0px 0px 0px 0px;
    display: flex;
	display: -webkit-flex;
    flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
    border: 0px solid rgba(217,217,217,1.00);
}

ul#persboxen > li {
    position: relative;
	list-style: none;
	float:left;
	width: calc(1/3 * 100% - 13.5px);
	margin: 30px 20px 40px 0px;
    padding-left: 0px;
}

#persboxen li:before {
    content: '';
}

ul#persboxen > li:nth-child(3n) {
	margin: 30px 0px 40px 0px;
}

ul#persboxen > li:hover h3 {
	transition: all 0.3s ease-in-out;    
}

ul#persboxen li:hover > .draw {
  color: rgba(255,255,255,1.00);
}

ul#persboxen li:hover > .draw:before {
  width: 100%;
  height: 100%;
}

ul#persboxen li:hover > .draw:after {
  width: 100%;
  height: 100%;
}

ul#persboxen li:hover > .draw:before {
  border-top-color: rgba(255,255,255,0.90);
  border-right-color: rgba(255,255,255,0.90);
  transition: width 0.25s ease-out, height 0.25s ease-out 0.25s;
}

ul#persboxen li:hover > .draw:after {
  border-bottom-color: rgba(255,255,255,0.90);
  border-left-color: rgba(255,255,255,0.90);
  transition: border-color 0s ease-out 0.5s, width 0.25s ease-out 0.5s, height 0.25s ease-out 0.75s;
}


ul#persboxen > li > div.imgdiv {
	position: relative;
	width: 100%;
    padding-top: 80%;
    margin-bottom: 20px;
	text-decoration: none;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

ul#persboxen > li > div.imgdiv a {
	display: none;
}

ul#persboxen > li > div.imgdiv a:first-child {
	display: block;
	width: 100%;
	height: 100%;
}

ul#persboxen > li > div.selfheight {
	position: relative;
	margin-bottom: 20px;
	text-decoration: none;
	padding-top: 10px;
}















#accordion {
    margin-top: 20px;
	max-width: 100% !important;
}

#accordion > h3 {
    position: relative;
    display: inline-block;
	font-size: 36px;
	line-height: 36px !important;
	padding: 20px 0px;
    width: 100% !important;
    border-top: 3px solid rgba(255,255,255,0.00) !important;  
    margin-bottom: 40px;
}

#accordion ul {
    max-width: 100% !important;
}

#accordion > h3:hover {
	transition: all 0.5s;
    cursor: pointer;
}

#accordion > h3:after {
    position: absolute !important;
    font-size: 56px;
    line-height: 56px;
    text-align: center;
    width: 68px;
    height: 68px;
    background: rgba(255,255,255,0.60);
	content: "+";
    right: 0px;
    top: 0px;
}

#accordion > h3.active:after {
	content: "\00d7";
    font-size: 56px;
    color: rgba(255,255,255,1.00) !important;        
}

#accordion > h3:hover:after, #accordion h3.active:hover:after, #accordion h3.active:after {
    color: rgba(255,255,255,1.00) !important;    
	transition: all 0.5s;
    cursor: pointer;
}

#accordion > h3:hover {
	transition: all 0.5s;
    cursor: pointer;
}

.ui-state-focus { outline: none; }

.accu {
    border: 1px solid rgba(0,0,0,1.00);
}






























.bild 	{
	width: 100%;
    padding-top: 75%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    margin-bottom: 30px;
}

hr.line {
    border: 0;
    height: 0;
	margin: 20px 0px 0px 0px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.meldung {
	padding: 20px;
	background-color: #eee;
	color: #000;
	display: inline-block;
	margin-bottom: 20px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	width: 100%;
}

span.meldung > h3 {
	color: #000;
	border: 0px;
}















#rechnung {
    display: none;
}

#waiter {
	width:100%;
    display: none;
    z-index: 10000;
    height: 100vh;
    padding-top: 48vh;
    position: fixed;
	background-color: rgba(0,189,212,0.9);
    margin: auto auto;
    text-align: center;
}

#waiter i {
    font-size: 100px;
    color: rgba(255,255,255,1.00);
	font-family: FontAwesome;    
}

.lds-roller {
  display: inline-block;
  position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
}
.lds-roller div {
  animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  transform-origin: 40px 40px;
}
.lds-roller div:after {
  content: " ";
  display: block;
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
  margin: -4px 0 0 -4px;
}
.lds-roller div:nth-child(1) {
  animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
  top: 63px;
  left: 63px;
}
.lds-roller div:nth-child(2) {
  animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
  top: 68px;
  left: 56px;
}
.lds-roller div:nth-child(3) {
  animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
  top: 71px;
  left: 48px;
}
.lds-roller div:nth-child(4) {
  animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
  top: 72px;
  left: 40px;
}
.lds-roller div:nth-child(5) {
  animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
  top: 71px;
  left: 32px;
}
.lds-roller div:nth-child(6) {
  animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
  top: 68px;
  left: 24px;
}
.lds-roller div:nth-child(7) {
  animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
  top: 63px;
  left: 17px;
}
.lds-roller div:nth-child(8) {
  animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
  top: 56px;
  left: 12px;
}
@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

