html {
	overflow-y: scroll;
	height: 100%;
}
body {
	margin: 0;
	padding: 0;
	color: rgb(87,87,86);
	font: normal 15px/21px Arial, Helvetica, sans-serif;
	background: url(../images/bg-body.jpg);
}
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;
	/* [disabled]vertical-align: text-top; */
}
a {
	color: inherit;
	outline: none;
}
a:hover {
	color: rgb(210,211,213);
}
/*----------------------------------------------------------------*/

header, nav, main, footer {
	position: relative;
	box-sizing: border-box;
}
header {
	text-align: left;
	padding: 1em;
	max-width: 980px;
	margin: 0 auto;
	height: 200px;
	z-index: 150;
}
.logo {
	position: relative;
	display: block;
	max-width: 400px;
	text-align: right;
}
.logo a {
	text-decoration: none;
	font-size: 0.9em;
}
/*--------------------------------------------------*/
address {
	font-style: normal;
}
.content {
	position: relative;
	width: 100%;
	padding: 2em;
	box-sizing: border-box;
}
.galerie {
	position: relative;
}
.galerie ul { padding:0; margin:0; width:100%;}
.galerie li { display:inline-block; padding: 0 2vw 2vw 0; margin:0; width:30%;} .galerie li img { width:100%; height:auto;}
footer {
	padding: 1em;
	margin: 0 auto;
	max-width: 980px;
	width: 100%;
	border-top: 1px solid #ccc;
	font-size: 0.9em;
}
/*----------------------------------------------------------------*/
#header-image-pager {
	position: absolute;
	z-index: 999;
	text-align: left;
	right: 10px;
}
#header-image-pager a {
	background: #fff;
	text-indent: -9999px;
	width: 12px;
	height: 12px;
	margin: 0 0 0 15px;
	outline: 0;
	display: inline-block;
	border: 1px solid rgb(87,87,86);
	transform: rotate(45deg);
	box-shadow: 2px 2px 4px rgba(50,50,50,0.7);
}
#header-image-pager a:hover, #header-image-pager a.active {
	background-color: rgb(148,180,82);
	border-color: #fff;
}
/*----------------------------------------------------------------*/
.bild {
	height: 350px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
/*----------------------------------------------------------------*/

p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em 0;
	font-weight: normal;
}
.block {
	text-align: justify;
}
h1, p.h1 {
	font-size: 1.6em;
	color: rgb(155,185,75);
	line-height: 1.125em;
}
h2 {
	font-size: 1.2em;
}
h3 {
	font-size: 1.1em;
}
.green {
	color: rgb(155,185,75);
}
.content ul.list { padding-left:20px;}
.content li { list-style:none;}
.content .list li::before { content:'♦'; color:rgb(155,185,75); margin-right:7px;}
/*----------------------------------------------------------------*/
.clear {
	clear: both;
	line-height: 0;
	height: 0;
	overflow: hidden;
	padding: 0;
	margin: 0;
}
.clear:after {
	content: "";
	display: block;
	clear: both;
}
/*----------------------------------------------------------------*/
.trennlinie, hr {
	height: 0px;
	line-height: 0px;
 	border-bottom: 1px dashed rgb(148,180,82);
	margin: 1em 0;
	border-top: 0;
	border-right: 0;
	border-left: 0;
	width: 80%;
	overflow: hidden;
}
/*----------------------------------------------------------------*/
#formular {
	position: relative;
	alignment-adjust: 0;
	margin: 0;
	padding: 0;
}
form {
	margin: 0;
	max-width: 600px;
	width: 100%;
}
input, textarea {
	position: relative;
	border: 1px solid rgb(102,153,0);
	width: 85%;
	padding: 0 5px;
	color: rgb(90,90,90);
	height: 25px;
	font: bold 16px/21px Arial, sans-serif;
	margin-bottom: 7px;
	background: rgba(155,185,75,0.05);
}
.check {
	width: 20px;
	padding: 0;
	margin: 0;
	height: 20px;
}
textarea {
	height: 150px;
}
input:focus, textarea:focus {
	border: 1px solid rgb(155,185,75);
	background: #fff;
	color: #000;
}
.send {
	border: none;
	width: auto;
	cursor: pointer;
	padding: 5px 65px;
	height: 35px;
	font: bold 16px/25px Arial, sans-serif;
	color: rgb(255,255,255);
	background: rgb(155,185,75);
	margin: 4px 0 0 4px;
	box-shadow: none;
}
.send:hover, .send:focus {
	background: rgb(156,16,6);
	margin: 0px 4px 4px 0;
	box-shadow: 2px 2px 6px #333;
}
img.ui-datepicker-trigger {
	position: absolute;
	margin-top: 6px;
	margin-left: -22px;
	cursor: pointer;
	display: inline;
}
.pflicht {
	line-height: 15px;
	color: rgb(156,16,6);
	font-weight: 500;
}
/*-------------------------------------------------------------------*/	
	.buttons {
	text-align: right;
	display: block;
	list-style-type: none;
	margin: 0;
	padding: 0;
	position: absolute;
	right: 1em;
	top: 20px;
	width: 200px;
	}
	.buttons li {
		margin: 2px 2px 6px 2px;
		display: block;
		text-align: right;
		-moz-animation-delay: 0.5s;
		-webkit-animation-delay: 0.5s;
		animation-delay: 0.5s;
	}
	.buttons li:nth-child(2) a {
		background: rgb(112,111,116);
	}
	.buttons a {
	background: rgb(155,185,75);
	color: rgb(255,255,255);
	display: block;
	width: 180px;
	height: 40px;
	padding: 1px 8px 0;
	line-height: 40px;
	text-align: left;
	text-decoration: none;
	vertical-align: baseline;
	overflow: hidden;
	font-size: 15px;
	}
	.buttons a:focus,.buttons a:hover {
		transform: scale(1.1, 1.1)
	}
/*---------------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
@media only screen and (max-width: 480px) {
	.buttons { top:105px !important; font-size:0.9em;  } .buttons img { display:none;} .buttons li { padding-right:1em; box-sizing:border-box;} .buttons li::after {content: '...'; color:#fff; position:relative; right:5px; top:-30px;}  
	header { height:160px;}
}
@media only screen and (max-width: 659px) {
	.bild {
		height: 220px;
	}
	.content {
		padding: 1.5em;
	}
	.logo img {
		width: 80% !important;
		height: auto !important;
	}
	.logo {
		text-align: left;
	}
	#header-image-pager {
		bottom: 10px;
	}
	.menu {
	position: fixed;
	right: 15px;
	top: 35px;
	z-index: 900;
	background: #fff;
	border-radius: 4px;
	box-shadow: 0 0 10px 2px #fff;
	}
	nav {
		z-index: 500;
		position:absolute; top:180px; width:100%; left:0;
	}
	nav ul {
		display: none;
	}
	nav, nav ul, nav ul li {
		box-sizing: border-box;
		padding: 0;
		margin: 0;
		list-style: none;
		postition: relative;
	}
	nav ul li {
	text-align: center;
	width: 100%;
	display: block;
	float: left;
	}
	nav ul li a {
	text-decoration: none;
	padding: 0;
	margin: 0;
	display: block;
	font-size: 1.2rem;
	color: rgb(60,60,59);
	line-height: 45px;
	background: #fff;
	text-align: center;
	box-shadow: 0px 0px 5px rgba(60,60,59,0.5);
	}
	nav a:hover, nav a:focus, nav .aktiv {
	color: rgb(255,255,255);
	background: rgb(155,185,75);
	}
	nav .aktiv:focus {
		color: #000;
	}	
	nav a img {
		display: none;
	}
   /*----------------------------------------------------*/
   .buttons {
		text-align: right;
		display: block;
		list-style-type: none;
		margin: 0;
		padding: 0;
		position: absolute;
		left: 1em;
		top: 120px; width:97%; width:calc(100% - 2em);
	}
	.buttons li {
		margin: 0 2% 0 0;
		display: inline; width:48%; float:left;
		text-align: right;
		-moz-animation-delay: 0.5s;
		-webkit-animation-delay: 0.5s;
		animation-delay: 0.5s;
	}
	.buttons a { width:90%;}
	/*------------------------------------------*/
	footer .left .green {
	display: block;
	height: 0;
	line-height: 0;
	color: #fff;
	text-indent:-999px;
}
	footer .left { margin-bottom:1em;}
	footer a { text-decoration:none; border-bottom:1px dotted #CCC;}
	footer .right { font-size:0.9em;}
}
@media only screen and (min-width: 660px) {
	#header-image-pager {
		bottom: 15px;
		left: 45%;
	}
	.bild {
		height: 600px;
		z-index: 1;
	}
	.container {
		position: relative;
		margin: 0 auto;
		background: url(../images/bg-body.jpg);
		width: 100%;
		z-index: 100;
	}
	main { width:auto; max-width:980px;}
	.content {
		width: 100%;
		box-sizing: border-box;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	/*-------------------------------------------------------------------*/
	.menu {
		display: none;
	}
	nav {
		margin: 1.5em 0 0 0;
		padding: 0;
		box-sizing: border-box;
		text-align: right;
	}
	nav ul {
		list-style-type: none;
		display: inline;
		margin: 0;
		padding: 0;
	}
	nav ul li {
	padding: 0;
	margin: 0;
	line-height: 40px;
	height: 40px;
	display: inline;
	position: relative;
	}
	nav a {
		text-decoration: none;
		padding: 10px;
		font-size: 1.2em;
		position: relative;
	}
	nav a:hover {
		color: rgb(210,211,213);
	}
	.aktiv {
	color: rgb(155,185,75);
	}
	.aktiv:hover {
	background: rgb(155,185,75);
	color: rgb(255,255,255);
	}
	nav a img {
		position: absolute;
		right: 0;
		top: 30px;
		animation: rotation ease 20s;
		animation-iteration-count: 2;
		transform-origin: 50% 50%;
		-webkit-animation: rotation ease 20s;
		-webkit-animation-iteration-count: 2;
		-webkit-transform-origin: 50% 50%;
		-moz-animation: rotation ease 20s;
		-moz-animation-iteration-count: 2;
		-moz-transform-origin: 50% 50%;
		-o-animation: rotation ease 20s;
		-o-animation-iteration-count: 2;
		-o-transform-origin: 50% 50%;
		-ms-animation: rotation ease 20s;
		-ms-animation-iteration-count: 2;
		-ms-transform-origin: 50% 50%;
	}
	 @keyframes rotation {
	 0% {
	 transform:  rotate(0deg);
	}
	 100% {
	 transform:  rotate(360deg);
	}
	}
	 @-moz-keyframes rotation {
	 0% {
	 -moz-transform:  rotate(0deg);
	}
	 100% {
	 -moz-transform:  rotate(360deg);
	}
	}
	 @-webkit-keyframes rotation {
	 0% {
	 -webkit-transform:  rotate(0deg);
	}
	 100% {
	 -webkit-transform:  rotate(360deg);
	}
	}
	 @-o-keyframes rotation {
	 0% {
	 -o-transform:  rotate(0deg);
	}
	 100% {
	 -o-transform:  rotate(360deg);
	}
	}
	 @-ms-keyframes rotation {
	 0% {
	 -ms-transform:  rotate(0deg);
	}
	 100% {
	 -ms-transform:  rotate(360deg);
	}
	}
	/*---------------------------------------------*/
			
	form .left {
		width: 47%;
		margin-right: 2%;
	}
	input, textarea {
		width: 90%;
	}
	footer .left {
		float: left;
	}
	footer .left a {
		text-decoration: none;
	}
	footer .right {
		float: right;
		font-size: 0.8em;
	}
}
@media only screen and (min-width: 660px) and (max-width: 860px) {
	.bild {
		height: 400px;
	}
}
@media only screen and (min-width: 980px) {
	.logo img {
		max-width: 400px;
		height: auto;
	}
	.content {
		padding: 3em;
	}
}
/*--------------------------------------------------------------*/
@media only screen and (min-width: 1200px) {
	body {
		font-size: 17px;
	}
	.content {
		max-width: 700px;
		margin: 0 auto;
		background-image: none;
	}
}
/*-----------------------------------------------------------------------*/
#totop, #tobottom {
	position: fixed;
	z-index: 150;
	right: 1em;
	bottom: 1em;
	width: 40px;
	height: 40px;
	font-weight: bold;
	text-decoration: none;
	box-shadow: 0 0 5px rgba(70,70,70,0.5);
	background: rgb(155,185,75);
	text-align: center;
	visibility: hidden;
	opacity: 0; padding:0; margin:0;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
#tobottom {
	top: -50px;
	right: 50%;
	margin-right: -20px;
	position: absolute;
}
#totop.show, #tobottom.show {
	visibility: visible;
	cursor: pointer;
	opacity: 1.0;
}
