/* gloria-hallelujah-regular - latin */
@font-face {
  font-family: 'Gloria Hallelujah';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/gloria-hallelujah-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/gloria-hallelujah-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/gloria-hallelujah-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/gloria-hallelujah-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/gloria-hallelujah-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/gloria-hallelujah-v15-latin-regular.svg#GloriaHallelujah') format('svg'); /* Legacy iOS */
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}

html {overflow-y: scroll;height: 100%;-webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; font-size:16px; 	}
html.nooverflow{	overflow-y:hidden;}
*, *:before, *:after { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
body {
	margin: 0;
	padding: 0;
	color: rgb(80,85,80);
	height: 100%;
	font: normal 1em/1.25em Arial, Helvetica, sans-serif;
	background: rgb(255,255,255);
}
table, td { border: 0px; margin: 0px; padding: 0px;	vertical-align: top; border-collapse: collapse;	border-spacing: 0px;}
iframe { border: 0px; margin: 0px; padding: 0px;}
img {
	display: inline-block;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: top;}
a {	color: inherit;	outline: none;}
a:hover { color: rgb(134,188,37); }
strong {font-weight:700;}
/*-------------------------------------------------------------------------------------------------------------------------*/
header *, nav, footer *, .galerie * {
	transition: all 0.15s;
	-moz-transition:all 0.15s;
	-webkit-transition: all 0.15s;}
.container, .center, header, .bild, .content, footer, nav, section, main {
	position: relative;
	margin: 0 auto;
	width: 100%;}
.logo {
	position: relative;
	padding: 1em;
}	
.logo img { width:62%; max-width:255px; height:auto;}
header { border-top:3px solid #fff;}
header:before {content:''; width:100%; position:fixed; top:0; border-top: 3px solid rgb(134,188,37); z-index:200;}
header:after {	content: '';	width: 100%;	position: fixed;	bottom: 0;	border-bottom: 3px solid rgb(8,93,48);	z-index: 200;}
/*-------------------------------------------------------------------------------------------------------------------------*/
.bild {
	position: relative;
	text-align: center;
	margin: 0 auto;
	z-index: -1;
	padding-top: 56%;
	box-shadow:inset 0 0 50px rgba(0,0,0,0.5);
	
}
.bild-top {
	width: 100%; /*position:absolute; top:0; left:0; right:0;*/
	content: '';
	height: 30px;
	margin-bottom: -30px;
	background-image: url(../images/deco-bild-top.png);
	z-index: 2;
	background-position: bottom;
	background-repeat: repeat-x;
}
.bild-bottom {
	width: 100%; /*position:absolute; bottom:0; left:0; right:0;*/
	content: '';
	height: 30px;
	margin-top: -30px;
	background-image: url(../images/deco-bild-bottom.png);
	z-index: 2;
	background-position: top;
	background-repeat: repeat-x;
}
/*-----------------------------------------------------*/
#header-image-pager {position: absolute;z-index:999;width:100%; bottom: 1em;text-align:center;}
#header-image-pager a {
	background-color: rgb(255,255,255);
	border: 1px solid rgb(255,255,255);
	text-indent: -9999px;
	width: 1em;
	height: 1em;
	margin: 0 0.25em;
	outline: 0;
	display: inline-block;
	-webkit-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
	box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5); border-radius:100%;}
#header-image-pager a:hover,#header-image-pager a.active { background-color: rgb(134,188,37); }
/*---------------------------------------------------------------------*/
.content { 	padding: calc(1em + 0.5vw + 0.5vh);} 
.content-13 {
	max-width: 320px;
	margin: 0 auto;
}
.content-13 p a { display:inline-block; text-decoration:none; border-bottom:1px solid rgba(255,255,255,0.25);}
.content-13 .button {
	border-radius: 0.5em;
	margin: 1em 0;
	padding: 0.5em 1em;
	background-color: rgb(8,93,48);
	color: rgb(255,255,255);
}
a.button { font-weight:700;}
.content-13 a.button {
	text-decoration: none;
	display: block;
}
.content-13 a:hover, .content-13 a.aktiv {	
	background-color: rgb(134,188,37); color:#fff;
	border-radius: 0.5em;}
.content a:hover { 	color: rgb(8,93,48);}
/*---------------------------------------------------------------------*/
footer {
	position: relative;
	padding: 2em 1em;
	margin: 0 auto;
	text-align: left;
	background-color: rgb(134,188,37);
	font-size: 0.875em;
	color: rgb(255,255,255);
	display:flex;
	justify-content:center; flex-flow:row wrap;
}
footer a {	color: inherit; text-decoration-color: rgba(255,255,255,0.5); }
footer a:hover { color: rgb(8,93,48); text-decoration-color: rgba(8,93,48,0.5); }
footer > p { padding:0 4em 2em 0; flex: 0 0 auto;}
/*-------------------------------------------------------------------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em 0;
	font-size: 1em;
	font-weight: normal;
}
h1, .h1 {
	font-size: 1.5em; font-size:calc(1em + 0.75vw + 0.75vh);
	color: rgb(8,93,48); line-height:1.125em;
}
h2, .h2 {
	font-size: 1.25em; font-size:calc(0.75em + 0.375vw + 0.375vh);
	color: rgb(134,188,37); line-height:1.125em;
}
h3 {font-size: 1.125em; font-weight:bold;}
.special {font-family: 'Gloria Hallelujah', cursive;}
/*-------------------------------------------------------------------------------------------------------------------------*/
.clear { 	clear: both;	line-height: 0px;	height: 0px;}
.clear:after {	content: "";	display: block;	clear: both;}
hr, .trennlinie {
	clear: both;
	background-color: rgb(53,109,46);
	border: 0;
	margin: 2em 0;
	padding: 0;
	height: 2px;
	text-align: center;}
/*-------------------------------------------------------------------------------------------------------------------------*/
#formular, form {
	position: relative;
	alignment-adjust: 0;
	margin: 0;
	padding: 0;}
input, textarea, select {
	position: relative;
	border: 1px solid rgb(180,180,180);
	width: 100%;
	padding: 4px;
	color: #352515;
	height: 36px;
	margin: 0 8px 8px 0;
	border-radius: 4px;
	background-color: rgb(255,255,255);
	display: inline-block;
	font-family: Arial, Helvetica, sans-serif;
}
textarea {	height: 150px;}
input:focus, textarea:focus, select:focus {
	border: 1px solid rgb(195,3,22);}
input[type="radio"], .check {
	width: 32px;
	height: 32px;
	vertical-align: middle;
}
img.ui-datepicker-trigger {
	position: absolute;
	right: 10px;
    top: 9px;
	cursor:pointer;}
.send {
	background-color: rgb(195,3,22);
	color: rgb(255,255,255);
	padding: 0.25em 0.5em;
	border-radius: 0.125em;
	margin: 1em 0;
	font-size: 1.125em;
	border: 1px solid rgb(195,3,22);
	cursor: pointer;}
.send:hover {
	color: rgb(255,255,255);
	background-color: rgb(134,188,37);
	border: 1px solid rgb(8,93,48);
}
/*-------------------------------------------------------------------------------------------------------------------------*/
.galerie {
	position: relative;
	margin: 4vw 2vw;
	z-index: 1;
}
.galerie ul {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	}
.galerie ul li {
	list-style: none;
	display: inline-block;
	flex: 1 1 auto;
	width: 50%;
	padding: 0.5em;
	margin: 0 auto;
	min-width: 180px;
	max-width: 400px;
}		
.galerie ul li img, .galerie ul li a {
	border: 0;
	padding: 0;
	margin: 0;
	vertical-align: top;
	}
.galerie ul li a {
	display: block;
	position: relative;
	overflow:hidden;}
.galerie ul li img {
	border: 1px solid rgb(255,255,255);
	height: auto;
	width: 100%;}
.galerie ul li a img:hover {
	border: 1px solid rgb(134,188,37);
	transform: scale(0.95);
}
/*-------------------------------------------------------------------------------------------------------------------------*/	
.preise { font-size:14px;}
.preise td {
	border: 1px solid rgb(134,188,37);
	padding: calc(0.375em + 0.125vw + 0.125vh);
	border-collapse: collapse;
	font-weight:bold;
	width: 50%;
}
.preise tr:first-child {
	color: rgb(255,255,255);
	background-color: rgb(134,188,37);
}
.preise td:nth-child(1) { text-align:right;}
.preise td:nth-child(2) { text-align:center; width:64px;}
.preise td:nth-child(3) { text-align:left;}
/*-------------------------------------------------------------------------------------------------------------------------*/	
.aktuelles p,.aktuelles ul,.aktuelles ol{
	margin:0px;
	padding-left:16px;
}
.aktuelles img{
	max-width:100%;
	height:auto !important;
}
.aktuelles .datum{
	font-size:0.9em;
	margin-bottom:5px;
}
.aktuelles table:not(.pager-table){
	width:100% !important;
}
.aktuelles table:not(.pager-table) td{
	width:100% !important;
	display: block;
	border:none;
}
.aktuelles table:not(.pager-table) tr{
	display:block;
	margin-bottom:10px;
	padding-bottom:10px;
	border-bottom:1px solid #ccc;
}
.aktuelles .lightbox{
	line-height:10px;
}
.aktuelles .lightbox img{
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
@media(hover:hover){
.aktuelles .lightbox img:hover{
	transform:scale(1.05);
}
}
a.button_pager{
	cursor: pointer;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	padding: 3px 6px;
	margin-top: 5px;
	background-color: #456D2B;
}
a.button_pager:hover,a.pager:hover{
	color: #fff;
	background-color: #73B447;
}
.pager{
	color: #ccc;
	font-weight:bold;
	text-decoration: none;
	padding: 3px 6px;
	display: inline-block;
	margin-top: 5px;
	background-color: #ECEDEE;
}
.pager_active{
	color: #fff;
	text-decoration: none;
	padding: 3px 6px;
	display: inline-block;
	margin-top: 5px;
	background-color: #456D2B;
}
.pager_inactive{
	background-color: #ECEDEE;
	color: #ccc;
}
/*-------------------------------------------------------------------------------------------------------------------------*/	
.error { font-size:0.9em; color:#F00;}
/*-------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 830px) { 
	.galerie ul li { width: 25%;}
}
@media only screen and (max-width: 739px) {
	
	
	
	nav, nav ul, nav ul li {
		padding: 0;
		margin: 0;
		list-style: none;
		postition: relative;
		text-align:center;	}
	nav ul li {margin:4px; border-radius:4px; }
	nav ul li a {
		text-decoration: none;
		padding: 0 0.5em;
		margin: 0;
		display: block;
		line-height: 36px;
		border: 3px solid transparent;
		border-radius: 4px;
		display: inline-block; 
		font-size:18px;	}
	nav a:hover, nav a:focus {
		background-color: rgba(255,255,255,0.9);
		color: rgb(195,3,22);
		text-decoration: none;	}
	nav a.aktiv {
		background-color: rgb(195,3,22);
		color: rgb(255,255,255);	}
	.subnav li {
		background-color: rgb(249,245,236);
		display: inline-block;	}
	.subnav ul li a {
		display: inline-block; 
		font-size:16px;	}
/**/
	#menuToggle {
	display: block;
	position: fixed;
	top: 1em;
	right: 1em !important;
	width: 44px;
	z-index: 10;
	padding: 8px 0 4px 5px;
	-webkit-user-select: none;
	user-select: none;
	background-color: rgb(195,3,22);
	box-shadow: 0 0 4px rgba(0,0,0,0.5);}
	#menuToggle input {
		display: block;
		width: 50px;
		height: 44px;
		position: absolute;
		top: -2px;
		left: -3px;
		cursor: pointer;
		opacity: 0; /* hide this */
		z-index: 200 !important; /* and place it over the hamburger */
		-webkit-touch-callout: none;	}
	/* Just a quick hamburger */
	#menuToggle span {
		display: block;
		width: 34px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;
		background-color: rgb(255,255,255);
		z-index: 3;
		transform-origin: 50% 50%;
		transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),  background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),  opacity 0.55s ease;	}	
	/* Transform all the slices of hamburger into a crossmark */
	#menuToggle input:checked ~ span {
		opacity: 1;
		transform: rotate(405deg) translate(5px, 7px);
		background: rgb(195,3,22);	}
	/*hide the middle one */
	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);	}
	/* the last one go the other direction */
	#menuToggle input:checked ~ span:nth-last-child(2) {
		opacity: 1;
		transform: rotate(-405deg) translate(5px, -8px);	}
	/*	 * Make this absolute positioned at the top right of the screen	 */
	#menu {
	position: fixed;
	overflow: auto;
	width: 100%;
	height: 100%;
	margin: 0;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	padding: 1.5em;
	list-style-type: none;
	-webkit-font-smoothing: antialiased;
	/* to stop flickering of text in safari */	  
	transform-origin: 0% 0%;
	transform: translate(0%, -300%);
	transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	background-size: 500%;
	background-color: rgb(255,255,255);}
	#menuToggle input:checked ~ ul {
		transform: scale(1.0, 1.0);
		opacity: 1;	}
	#menuToggle input:checked ~ body { overflow:hidden;}
}
/*-------------------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 740px) {
	.bild { padding-top: 33%;  }
	.logo { text-align:right;}
	.sticky header { position:fixed; height:48px; top:0; z-index:150; }
	.sticky .bild-top { position:fixed;top:42px; z-index:150;}
	.sticky nav { postition:fixed; box-shadow: 0 0 10px rgba(0,0,0,0.25);
	left: 0;
	right: 0;
	top: 0; height:48px;
	max-width: 100%;background-color: #fff; padding:0 1em;
	z-index: 150;}
	.sticky .logo { display:none;}
	.sticky .bild { margin-top:100px;}
	/*-------------------------------------------------------------------------------------------------------------------------*/

	#menuToggle input { display: none;	}
	#menuToggle { margin: 0 auto;	position: relative;	}
	nav {
		text-align: center;
		margin: 0;
		position: relative;
		line-height: 48px;
		z-index: 2;	} 
	nav * { transition:all 0.2s; -moz-transition:all 0.2s; -webkit-transition:all 0.2s;}
	nav ul {
		margin: 0 auto;
		padding: 0;
		list-style-type: none;
		display: flex;
		justify-content: center;	}
	nav ul li {
		margin: 0;
		padding: 0;
		position:relative;
		flex: 0 0 auto;	}
	nav a {
	font-size-adjust: none;
	display: block;
	margin: 0 0.125em;
	padding: 0 0.5em;color: rgb(8,93,48);
	text-decoration: none;
	text-transform: uppercase;
	font-size: 14px;
	font-weight: bold;
}
	nav a.aktiv {  color: rgb(134,188,37); }
	nav a:hover { 	color: rgb(135,140,130);}
	nav ul li:before {
		content: '•'; position:absolute; left:-0.25em; top:0;
		color: rgb(135,140,130);
	}
	nav ul li:first-child:before { display:none;}
/*-------------------------------------------------------------------------------------------------------------------------*/
	.content {
		position: relative;
		margin: 0 auto;
		display: flex;
		flex-flow: row wrap;
		align-items: flex-start; 
		max-width: 80em;}		
	.content-23 { 
		display:inline-block; flex:1 1 auto; width: calc(100% - 320px);  padding-left:0; align-self:flex-start;	padding-right: 2em;} 
	.content-13 {
	align-self: flex-start;
	display: inline-block;
	flex: 0 0 auto;
	width: 300px;
	margin: 0 auto;
	line-height: 24px;
}	
.css-sticky {
	position: -webkit-sticky;
	position: sticky;
	top: 4em;
	z-index: 5;
}
}
@media only screen and (min-width: 860px) {
nav a {	
	font-size:16px;
}
.logo { text-align:center;}
}

/*-------------------------------------------------------------------------------------------------------------------------*/
.btn.toTop {
	color: #fff;
	position: fixed;
	font-weight: bold;
	right: 3vw;
	bottom: 3vw;
	padding:0.5em; 
	text-decoration: none;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	z-index: 999;}
.btn.toTop:hover {	background-color:rgba(255,255,255); border-radius:1em;}
.btn.toTop.show {
	visibility: visible;
	cursor: pointer;
	opacity: 1.0;}
::-moz-selection { /* Code for Firefox */
 color: rgb(15,10,10); background: rgb(250,205,22);}
::selection {
	color: rgb(15,10,10);	background: rgb(250,205,22);}
/* { background-color:rgba(0,0,0,0.1)}*/

.mfp-iframe {background-color:#fff !important;}
.mfp-calc .mfp-close{font-size:4em;top:-50px;}
.mfp-calc .mfp-iframe-holder {padding-top: 60px;}
.mfp-calc .mfp-iframe-holder .mfp-content{width:100% !important;max-width:640px !important;height:100%;max-height:260px; }
