body {
	margin: 0;
	padding: 0;
	background-image: url(../gfx/bg.gif);
	font-family: "Trebuchet MS";
	font-size: 13px;
	line-height: 17px;
	color: black;
}

#main {
	width: 1038px;
	margin: 0 auto;
}

#wrapper {
	padding-bottom: 55px;
	background-image: url(../gfx/content_footer_bg.png);
	background-position: 256px bottom;
	background-repeat: no-repeat;
}



/******************** WRAPPER ********************/
#header {
	height: 123px;
	overflow: hidden;
	position: relative;
	background-image: url(../gfx/header2.png);
	background-repeat: no-repeat;
}

#container {
	background-image: url(../gfx/content_bg.png);
	background-position: 256px top;
	background-repeat: repeat-y;

}

#footer {
	width: 678px;
	margin-left: 265px;
	position: relative;
	color: white;
	padding: 10px 0;
	font-size: 12px;
}

/******************** CONTAINER ********************/
#sidebar {
	width: 256px;
	min-height: 10px;
	float: left;
	position: relative;
}

#content {
	width: 778px;
	float: left;
	padding-top: 165px;
	background-image: url(../gfx/content_header_bg.png);
	background-repeat: no-repeat;
}

#content .inner {
	width: 612px;
	padding-left: 32px;
	padding-right: 59px;
	margin-top: -105px;
	position: relative;
}

/******************** FOOTER ********************/
#footer span {
	font-style: italic;
}

#footer-menu {
	margin: 0;
	position: absolute;
	right: 0;
	text-align: right;
}

#footer a {
	color: white;
}

/******************** HEADER ********************/
#header h1 {
	margin: 0;
	width: 263px;
	height: 56px;
	position: absolute;
	top: 22px;
	left: 59px;
}

#header h1 a {
	display: block;
	height: 100%;
}

#header h1 a span {
	display: none;
}

/******************** MAIN_MENU ********************/
#main-menu {
	margin: 0;
	padding: 0;
	list-style: none;
	display: block;
	width: 639px;
	height: 44px;
	overflow: hidden;
	position: absolute;
	left: 279px;
	top: 79px;
}

#main-menu li {
	display: block;
	height: 100%;
	float: left;
}

#main-menu li.main1 {
	width: 123px;
}

#main-menu li.main2 {
	width: 130px;
}

#main-menu li.main3 {
	width: 153px;
}

#main-menu li.main4 {
	width: 123px;
}

#main-menu li.main102 {
	width: 110px;
}

#main-menu li a:link,
#main-menu li a:active,
#main-menu li a:visited {
	display: block;
	height: 100%;
	background-image: url(../gfx/rollover.png);
	background-position: left -50px;
	background-repeat: no-repeat;
}

#main-menu li.main1 a:hover,
#main-menu li.main1 a:focus,
#main-menu li.main1 a.active,
#main-menu li.main1 a.trail {
	background-position: 17px 34px;
}

#main-menu li.main2 a:hover,
#main-menu li.main2 a:focus,
#main-menu li.main2 a.active,
#main-menu li.main2 a.trail {
	background-position: 18px 38px;
}

#main-menu li.main3 a:hover,
#main-menu li.main3 a:focus,
#main-menu li.main3 a.active,
#main-menu li.main3 a.trail {
	background-position: 18px 37px;
}

#main-menu li.main4 a:hover,
#main-menu li.main4 a:focus,
#main-menu li.main4 a.active,
#main-menu li.main4 a.trail {
	background-position: 24px 40px;
}

#main-menu li.main102 a:hover,
#main-menu li.main102 a:focus,
#main-menu li.main102 a.active,
#main-menu li.main102 a.trail {
	background-position: 6px 34px;
}

#main-menu li a span {
	display: none;
}

/******************** SUB_MENU ********************/
div.submenu {
	padding-bottom: 52px;
	background-position: right bottom;
	background-repeat: no-repeat;
}

div.submenu .inner {
	padding-top: 88px;
	background-position: right top;
	background-repeat: no-repeat;
}

div.submenu ul {
	display: block;
	margin: 0;
	padding: 16px 0 10px 70px;
	list-style: none;
	background-position: right top;
	background-repeat: repeat-y;

}

div.submenu ul li {
	display: block;
	width: 166px;
	margin-top: 4px;
	padding-bottom: 5px;
	font-size: 14px;
	line-height: 16px;
	background-image: url(../gfx/line_subnavi.png);
	background-position: left bottom;
	background-repeat: no-repeat;
}

div.submenu ul li a:link,
div.submenu ul li a:active,
div.submenu ul li a:visited {
	display: block;
	padding-left: 12px;
	text-decoration: none;
	color: black;
	background-image: url(../gfx/pfeil_subnavi.png);
	background-position: left 3px;
	background-repeat: no-repeat;
}

div.submenu ul li a:hover,
div.submenu ul li a:focus,
div.submenu ul li a.active,
div.submenu ul li a.trail {
	color: #9e3e12;
}

div.submenu ul li.submenu a {
	background-image: url(../gfx/pfeil_subnavi_down.png);
	background-position: left 6px;
}

div.submenu ul li.submenu li a {
	background-image: url(../gfx/pfeil_subnavi.png);
	background-position: left 3px;
}

#sidebar div.submenu ul li ul {
	padding: 4px 0 0 12px;
	background-image: none;
}

div.submenu ul li ul li {
	width: 153px;
	font-size: 13px;
	line-height: 15px;
}

div.submenu ul li ul li.last {
	background-image: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

div.submenu ul li ul li a:link,
div.submenu ul li ul li a:active,
div.submenu ul li ul li a:visited {
	display: block;
	padding: 2px 0 2px 13px;
	background-position: 4px 5px;
}

div.submenu ul li ul li a:hover,
div.submenu ul li ul li a:focus,
div.submenu ul li ul li a.active {
	color: black;
	background-color: #c97d27;
	background-image: url(../gfx/pfeil_subnavi.png);
}

body.main1 div.submenu {
	background-image: url(../gfx/sub1_footer.png);
}

body.main1 div.submenu .inner {
	background-image: url(../gfx/sub1_header.png);
}

body.main1 div.submenu ul {
	background-image: url(../gfx/sub1_kachel.png);
}

body.main2 div.submenu {
	background-image: url(../gfx/sub2_footer.png);
}

body.main2 div.submenu .inner {
	background-image: url(../gfx/sub2_header.png);
}

body.main2 div.submenu ul {
	background-image: url(../gfx/sub2_kachel.png);
}

body.main3 div.submenu {
	background-image: url(../gfx/sub3_footer.png);
}

body.main3 div.submenu .inner {
	background-image: url(../gfx/sub3_header.png);
}

body.main3 div.submenu ul {
	background-image: url(../gfx/sub3_kachel.png);
}

body.main4 div.submenu {
	background-image: url(../gfx/sub4_footer.png);
}

body.main4 div.submenu .inner {
	background-image: url(../gfx/sub4_header.png);
}

body.main4 div.submenu ul {
	background-image: url(../gfx/sub4_kachel.png);
}

body.main102 div.submenu {
	background-image: url(../gfx/sub102_footer.png);
}

body.main102 div.submenu .inner {
	background-image: url(../gfx/sub102_header.png);
}

body.main102 div.submenu ul {
	background-image: url(../gfx/sub102_kachel.png);
}

.login .widget {
	margin: 6px 0;
}

.login .widget label {
	width: 120px;
	display: inline-block;
}

/******************** DATES_CONTACT ********************/
#dates-contact {
	height: 425px;
	position: relative;
	margin-top: -22px;
	background-image: url(../gfx/terminkontakt.png);
	background-repeat: no-repeat;
}

#dates-contact-only {
	height: 425px;
	position: relative;
	background-image: url(../gfx/terminkontakt2.png);
	background-repeat: no-repeat;
}

#dates {
	width: 200px;
	height: 160px;
	position: absolute;
	top: 60px;
	left: 48px;
}

.no-dates {
	background-image: url(../gfx/nodates.png);
}

.no-dates * {
	display: none;
}

#dates h3 {
	margin: 0;
	color: #9e3e12;
	font-weight: normal;
	font-size: 14px;
	line-height: 16px;
}

#dates p.date {
	margin: 4px 0 13px;
	font-size: 12px;
	line-height: 14px;
}

#dates p.date a {
	text-decoration: none;
	color: black;
	padding-right: 22px;
	background-image: url(../gfx/pfeil.png);
	background-position: right 3px;
	background-repeat: no-repeat;
}

#dates p.show-all {
	text-align: right;
	margin: 0;
}

#contact {
	width: 180px;
	height: 70px;
	overflow: hidden;
	position: absolute;
	top: 318px;
	left: 68px;
}

#contact .tel {
	font-size: 17px;
	line-height: 20px;
}

/******************** SEARCH_FORM ********************/
#searchform {
	display: block;
	width: 178px;
	height: 23px;
	padding: 0;
	margin: 0;
	overflow: hidden;
	position: absolute;
	left: 59px;
	bottom: 3px;
}

#searchform .formbody {
	height: 23px;
}

#searchform input {
	display: block;
	width: 156px;
	height: 100%;
	margin: 0;
	padding: 0 0 0 22px;
	border: none;
	background-image: url(../gfx/suche_bg.png);
	background-repeat: no-repeat;
	overflow: hidden;
	line-height: 16px;
	font-size: 14px;
	color: #f2a117;
	font-family: "Trebuchet MS";
}

/******************** CONTENT ********************/
#content h1 {
	position: relative;
	left: -8px;
	margin-bottom: 15px;
	padding-left: 8px;
	padding-bottom: 12px;
	color: #9e3e12;
	font-size: 20px;
	line-height: 22px;
	background-image: url(../gfx/divider_top.png);
	background-position: left bottom;
	background-repeat: no-repeat;
}

/******************** STYLES ********************/
h1 {
	margin: 0;
}

a {
	color: #9e3e12;
}

a img {
	border: none;
}

.orange {
	color: #f2a117;
}

.rot {
	color: #9e3e12;
}

.cleaner {
	clear: both;
	float: none;
	height: 0;
}

.invisible {
	width: 0;
	height: 0;
	left: -1000px;
	top: -1000px;
	position: absolute;
	overflow: hidden;
	display: inline
}

a.arrow,
.arrow>a {
	text-decoration: underline;
	color: #9e3e12;
	padding-left: 22px;
	background-image: url(../gfx/pfeil.png);
	background-position: left 3px;
	background-repeat: no-repeat;
	font-style: italic;
}

p {
	margin: 0 0 16px;
}

table {
	border-collapse: collapse;
	border-width: 1px;
}

td {
	vertical-align: top;
}

.rahmen td,
.ce_table td {
	border-width: 1px;
	border-color: #000;
	border-style: solid;
}

/******************** POSTIT ********************/
.postit-xmas {
	width: 185px;
	height: 80px;
	padding: 120px 30px 49px 35px;
	overflow: hidden;
	position: absolute;
	right: 40px;
	top: 80px;
	z-index: 1000;
	color: #FFFFFF;
	background-image: url(../gfx/postit_xmas.png);
	font-size: 13px;
	line-height: 20px;
	text-align: center;
}

.postit-xmas a {
	color: #FFFFFF;
}

/******************** PICTURE_FRAME ********************/
.frame {
	width: 592px;
	height: 290px;
	padding: 32px 32px 34px 31px;
	overflow: hidden;
	background-image: url(../gfx/rahmen.png);
	background-repeat: no-repeat;
	position: relative;
	left: -15px;
	margin-bottom: 15px;
}

/******************** GALLERY ********************/
ul.photoalbum {
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.photoalbum li {
	display: block;
	width: 100px;
	height: 100px;
	overflow: hidden;
	border: 1px solid black;
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
}

.ce_gallery ul {
	list-style: none;
	padding: 0px;
}

.ce_gallery li {
	float: left;
}

.ce_gallery li.col_first {
	clear: left;
}

/******************** DOWNLOADS ********************/
.ce_downloads ul {
	padding: 0px;
	list-style: none;
}

.ce_downloads li {
	margin-bottom: 4px;
	position: relative;
}

.ce_downloads img.mime_icon {
	position: relative;
	top: 3px;
}

/******************** NEWS ********************/
div.news {
	min-height: 50px;
	padding-left: 43px;
	padding-bottom: 10px;
	background-image: url(../gfx/divider_news.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	margin: 15px 0 10px;
	position: relative;
}

div.news h2 {
	color: #9e3e12;
	font-size: 20px;
	line-height: 22px;
	margin: 0 0 8px;
}

div.news p.date {
	width: 36px;
	height: 36px;
	margin: 0;
	padding-top: 10px;
	overflow: hidden;
	background-image: url(../gfx/dates_bg.png);
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 11px;
	line-height: 13px;
	text-align: center;
}

div.news p.date span.day {
	display: block;
	font-size: 15px;
	line-height: 17px;
}

div.news p.teaser {
	margin-top: 0;
}

p.page-nav {
	position: relative;
}

p.page-nav a.p-arrow {
	text-decoration: underline;
	color: #9e3e12;
	padding-left: 22px;
	background-image: url(../gfx/pfeil_back.png);
	background-position: left 3px;
	background-repeat: no-repeat;
	font-style: italic;
	position: absolute;
	left: 0;
}

p.page-nav a.n-arrow {
	text-decoration: underline;
	color: #9e3e12;
	padding-right: 22px;
	background-image: url(../gfx/pfeil.png);
	background-position: right 3px;
	background-repeat: no-repeat;
	font-style: italic;
	position: absolute;
	right: 0;
}

.mod_newslist .empty {
	display: none;
}

/******************** NEWS_BLITZMELDUNGEN ********************/
div.flashnews {
	width: 512px;
	height: 170px;
	padding-top: 120px;
	padding-left: 40px;
	padding-right: 40px;
	overflow: hidden;
	background-image: url(../gfx/wichtig.jpg);
	background-repeat: no-repeat;
	color: white;
}

div.flashnews h2 {
	font-size: 20px;
	line-height: 22px;
	margin-bottom: 10px;
}

div.flashnews .teaser {
	margin-top: 0;
	font-size: 14px;
	line-height: 18px;
}

div.flashnews a {
	color: white;
	text-decoration: underline;
}

/******************** SITEMAP ********************/
ul.sitemap {
	margin: 0 0 20px;
	padding: 0 0 0 40px;
	list-style: disc;
}

ul.sitemap li {
	font-size: 16px;
	line-height: 18px;
	margin: 20px 0;
}

ul.sitemap li ul {
	margin: 0 0 16px;
	padding: 0 0 0 40px;
	list-style: circle;
}

ul.sitemap li ul li {
	font-size: 14px;
	line-height: 16px;
	margin: 8px 0;
}

ul.sitemap li ul li ul {
	margin: 0 0 12px;
	padding: 0 0 0 40px;
	list-style: square;
}

ul.sitemap li ul li ul li {
	font-size: 12px;
	line-height: 14px;
	margin: 6px 0;
}

/******************** CALENDAR ********************/
div.calendar {
	background-color: #e1d7be;
	height: 100%;
}

p.calendar-nav {
	height: 20px;
	margin: 0;
	padding: 7px 0;
	overflow: hidden;
	text-align: center;
	font-size: 18px;
	line-height: 20px;
	font-weight: bold;
}

p.calendar-nav a {
	margin: 0 2px;
}

div.calendar table {
	width: 100%;
	height: 256px;
	border-collapse: collapse;
	border-spacing: 0;
}

div.calendar th {
	font-size: 11px;
	line-height: 13px;
	font-weight: normal;
	text-align: center;
	border: none;
	width: 84px;
	height: 15px;
	color: #5b5c57;
}

div.calendar td {
	text-align: right;
	vertical-align: top;
	font-size: 12px;
	line-height: 14px;
	padding: 2px 4px;
	border: none;
	border-top: 1px solid #b1a690;
	border-left: 1px solid #b1a690;
	height: 35px;
}

div.calendar td:first-child {
	border-left: none;
}

div.calendar td a {
	display: block;
	height: 100%;
	min-height: 30px;
	background-image: url(../gfx/kalender_rot.png);
	background-position: center center;
	background-repeat: no-repeat;
	color: black;
	text-decoration: none;
	border: none;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
	div.calendar td a {
		min-height: 0;
	}
}

div.calendar td.last-month,
div.calendar td.last-month a,
div.calendar td.next-month,
div.calendar td.next-month a {
	color: #b1a690;
}

div.calendar td.today {
	background-color: #cbc8c7;
}

div.calendar td.today a {
	background-image: url(../gfx/kalender_rot_today.png);
}

div.calendar td a.past-day {
	background-image: url(../gfx/kalender_grau.png);
}

div.termine {
	padding-bottom: 6px;
	background-image: url(../gfx/divider_news.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	margin: 15px 0 10px;
}

div.termine h2 {
	color: #9e3e12;
	font-size: 18px;
	line-height: 20px;
	margin: 0 0 6px;
}

div.termin {
	margin-bottom: 10px;
}

/******************** SEARCH ********************/
ol.searchresults {
	margin: 0;
	padding: 0 0 0 40px;
}

ol.searchresults li {
	padding: 3px 0;
	margin-bottom: 10px;
}

ol.searchresults li h2 {
	font-size: 16px;
	line-height: 18px;
	margin: 0 0 4px;
}

ol.searchresults li p {
	margin: 0 0 4px;
}

.cookiebar {
	background: #f9db0c;
	padding: 15px 25px;
	font-size: 15px;
	line-height: 22px;
	bottom: 0;
	top: inherit;
	z-index: 99999;
	box-sizing: border-box;
	position: fixed;
	left: 0;
	width: 100%;
	text-align: center;
}

.cookiebar .cookiebar__text {
	margin-right: 50px;
}

.cookiebar .cookiebar__text .cookiebar__link {
	text-decoration: underline;
}

.cookiebar .cookiebar__text .cookiebar__link :hover {
	text-decoration: none;
}

.cookiebar .cookiebar__text .cookiebar__link,
.cookiebar .cookiebar__text .cookiebar__message {
	color: black !important;
}

.cookiebar .cookiebar__text .cookiebar__message {
	margin-right: 0px;
}

.cookiebar .cookiebar__button {
	background: white;
	color: black;
	padding: 3px 45px;
	font-weight: 300;
	line-height: 22px;
	border-radius: 0;
	border: none;
	outline: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.cookiebar--active {
	display: flex !important;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap
}

@media (max-width: 980px) {
	.cookiebar .cookiebar__text {
		max-width: 330px;
		text-align: left;
	}
}

@media (max-width: 670px) {
	.cookiebar .cookiebar__text {
		text-align: center;
		margin-right: 0;
		display: block;
		max-width: none;
	}

	.cookiebar .cookiebar__button {
		width: 100%;
		margin-top: 10px;
	}
}

@media (max-width: 400px) {
	.cookiebar {
		padding: 10px 15px;
		font-size: 14px;
	}
}

.mejs-container .mejs-controls div.mejs-fullscreen-button {
	position: absolute;
	right: 0;
	top: 0;
}