﻿@charset "utf-8";

.clearboth{
	clear:both;
	float:none;
}


.header_logo h1{
	font-family:lobster, sans-serif;
	font-size:inherit;
	line-height:normal;
	margin:0;
	color:inherit;
}

.sumenu_bmenu a.on{
	font-family:r-b, sans-serif;
}
.sumenu_main a.on{
	font-family:r-b, sans-serif;
	color:rgb(255,187,51);
}
.sumenu_b_on{
	background-color:#e2e2e2;
	border:2px solid rgb(255,187,51);
}

.sumenu_block{
	width:33.3333%;
	max-width:480px;
	padding:0 10px 40px 10px;
}

@media screen and (max-width:800px){
	.sumenu_bmenu{
		font-size:0.9em;
	}
	.sumenu_bhead{
		font-size:0.9em;
	}
}
@media screen and (max-width:739px){
	.sumenu_bmenu{
		font-size:0.8em;
	}
	.sumenu_bhead{
		font-size:0.8em;
	}
}
@media screen and (max-width:680px){
	.sumenu_block{
		width:50%;
		padding:0 10px 20px 10px;
	}
}
@media screen and (max-width:500px){
	.sumenu_block{
		width:100%;
		padding:0 10px 20px 10px;
	}
	.sumenu_bmenu{
		font-size:1em;
	}
	.sumenu_bhead{
		font-size:1em;
	}
}



.fb_btn2{
	margin:0;
}
.fb_btn2 span.fb_btn_lbl{
	display:inline !important;
}

.sbox1_right{
	left:auto;
	right:0;
}

/*--- Datetimepicker überschreiben ---*/
.xdsoft_datetimepicker .xdsoft_datepicker{
	width:324px;
}
.xdsoft_datetimepicker .xdsoft_calendar td, .xdsoft_datetimepicker .xdsoft_calendar th{
	height:38px;
	font-size:14px;
}
.xdsoft_datetimepicker .xdsoft_next, .xdsoft_datetimepicker .xdsoft_prev, .xdsoft_datetimepicker .xdsoft_today_button{
}

@media screen and (max-width:359px){
	.xdsoft_datetimepicker .xdsoft_datepicker{
		width:280px;
	}
	.xdsoft_datetimepicker .xdsoft_calendar td, .xdsoft_datetimepicker .xdsoft_calendar th{
		height:30px;
	}
}


/*--- 2. Supermenü ---*/
.fb_btn{
	cursor:pointer;
}
.sumenu_b_container{
	z-index:30000;
}
.sumenu_b_container, .sumenu_b_container *{
	box-sizing:border-box;
}
.sumenu_b_container{
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:0;
	overflow:hidden;
	visibility:hidden;
	background-color:rgba(0,0,0,0.3);
}
.sumenu_b_open .sumenu_b_container{
	visibility:visible;
	height:100%;
}
.sumenu_b_container{
	padding:0 20px;
	overflow:auto;
	text-align:center;
	white-space:nowrap;
	word-spacing:-0.25em;
}
.sumenu_b_container:before{
	content:'';
	display:inline-block;
	vertical-align:middle;
	width:0px;
	overflow:hidden;
	height:100%;
}
@media(max-width:1020px){
	.sumenu_b_container{
		padding:0 10px;
	}
}






/*================ Menü Popups =====================*/
/*--- Menü-Popups allgemein. Suche, Sprachwahl ---*/
/*Die beiden Controls werden immer an dem auslösenden Button geöffnet. s. JS*/
.cms4d_menu_popup, .cms4d_menu_popup *{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
/*Gesamtcontainer für Positionierung*/
.cms4d_menu_popup{
	position:absolute;
	/*Der Abstand des Pfeils + Content zur Oberkante des Containers kann über eine transparente border gesichert werden.
	Dadruch werden beide Element nach unten versetzt, um den optischen Abstand zum auslösenden Button zu steuern.*/
	border-top:4px solid transparent;
	display:none;
	z-index:20000;
}
	/*Aufwärtspfeil-Container. Der sichtbare Pfeil, der auf den auslösenden Button zeigt wird als :before hierin mittig zentriert*/
	.cms4d_menu_popup_arrow{
		position:absolute;
		font-size:0.0001px;
		line-height:0.0001px;
		text-align:center;
		left:0;
		top:0;
	}
		.cms4d_menu_popup_arrow.arrow_back{
			z-index:10;
		}
			.cms4d_menu_popup_arrow.arrow_back:before{
				content:'';
				display:block;
				width:0;
				height:0;
				border:10px solid rgb(153,153,153);
				border-top-style:hidden;
				border-left-color:transparent;
				border-right-color:transparent;
				position:absolute;
				left:50%;
				margin-left:-10px;
				margin-top:-10px;
			}
		.cms4d_menu_popup_arrow.arrow_front{
			z-index:30;
		}
			.cms4d_menu_popup_arrow.arrow_front:before{
				content:'';
				display:block;
				width:0;
				height:0;
				border:10px solid white;
				border-top-style:hidden;
				border-left-color:transparent;
				border-right-color:transparent;
				position:absolute;
				left:50%;
				margin-left:-10px;
				margin-top:1px;
				margin-top:-9px;
			}
	.cms4d_menu_popup_content{
		z-index:20;
		position:relative;
		background-color:white;
		border:1px solid rgb(153,153,153);
		/*border-radius:5px;*/
		-webkit-box-shadow:5px 5px 5px 0px rgba(0,0,0,0.25);
		box-shadow:5px 5px 5px 0px rgba(0,0,0,0.25);
		padding:9px 10px 11px 10px;
	}

/*Aussehen der Formularelemente für alle Browser und OS vereinheitlichen*/
.cms4d_menu_popup input,
.cms4d_menu_popup button{
	/*Erscheinungsbild aufheben*/
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	font-size:1em;
}
	.cms4d_menu_popup input[type=text]{
		border:1px solid rgb(204,204,204);
		background-color:rgb(240,240,240);
		border-radius:4px;
		height:2em;
		padding:0;
		padding-left:5px;
	}
	.cms4d_menu_popup button,
	.cms4d_menu_popup input[type=button],
	.cms4d_menu_popup input[type=submit]{
		height:2em;
		min-width:2em;
		cursor:pointer;
		padding:0;
		color:white;
		background:rgb(153,153,153);
		border-radius:5px;
		border:1px solid rgb(153,153,153);
	}

/*Menüpopup Suche*/
.cms4d_menu_popup.search{
	line-height:1em;
}
	/*Button mit Icon. Hier ist der Unicode für das Lupen-Icon als HTML-Entität im Value des Button-Elements gesetzt (s. HTML-Quelltext).*/
	.cms4d_menu_popup.search input[type=submit]{
		font-family:'Font Awesome 5 Pro', sans-serif;
	}
	
/*Menüpopup Sprachwahl*/
.cms4d_menu_popup.langswitch .cms4d_menu_popup_content{
	padding-top:2px;
	padding-bottom:5px;
	/*Auf standard Systemschrift serifenlos setzen, da diese lokalen Fonts i.d.R. den kompletten UTF-8 Zeichensatz abdecken - so auch z.B. Kyrillisch, Chinesisch, ...*/
	font-family:sans-serif;
}
.cms4d_menu_popup.langswitch a{
	color:rgb(102,102,102);
	display:block;
	border-top:1px solid rgb(204,204,204);
	padding:0.4em 0 0.4em 0;
}
	.cms4d_menu_popup.langswitch a:first-child{
		border-top:none;
	}
	.cms4d_menu_popup.langswitch a.on{
		color:rgb(56,131,201);
		font-family:r-md, sans-serif;
	}

/*---------- Sprachumschaltung im Smartphonebereich -----------*/
.fb_btn.btn_langswitch{
	white-space:nowrap;
	color:white;
	padding:0 0.62em 0 0.6em;
}
	.fb_btn.btn_langswitch span{
		text-transform:uppercase;
	}
	.fb_btn.btn_langswitch span:after{
		font-family:'Font Awesome 5 Pro', sans-serif;
		font-weight:900;
		content:'\f0d7';
		color:white;
		margin-left:0.25em;
	}
/*Ausnahmen für geöffneten Zustand*/
.hm_btn.btn_langswitch.is_open span:after,
.fm_btn.btn_langswitch.is_open span:after,
.fb_btn.btn_langswitch.is_open span:after{
	/*fas fa-caret-up*/
	content:'\f0d8';
}

@media(max-width:1480px){
	.fb_btn.btn_langswitch{
		padding:0 10px 0 10px;
	}
}
@media(max-width:1040px){
	.fb_btn.btn_langswitch{
		margin-right:0;
	}
}



/*--- Newsboxen Standard ---*/
.nbox{
	display:flex;
	flex-wrap:wrap;
	margin-left:-40px;
	margin-top:2em;
}
	.nbox > *{
		position:relative;
		border:40px hidden transparent;
		border-left-style:solid;
		width:50%;
		margin-bottom:40px;

	}
		.nbox.nbox_3s > *{
			width:33.33%;
		}

	.nbox > a, .nbox > a:hover{
		color:#4D4D4D;
	}

	.nbox .nimg{
		width:100%;
		overflow:hidden;
		position:relative;
		margin-bottom:1.5em;
		box-sizing:border-box;
		line-height:1px;
		text-align:center;
	}
		.nbox .nimg img{
			max-width:100%;
			max-height:100%;
			background-repeat:no-repeat;
			background-position:center center;
			background-size:contain;
		}

	.nbox .nhead h2{
		margin-bottom:0.5em;
		font-size:1.22em;
		font-family:r-md,sans-serif;
	}
	.nbox .nbody p:last-child{
		margin-bottom:0;
	}


	/*--- Einspaltige Contentboxen --- */
	.nbox.nbox_1s > *{
		width:100%;
		display:flex;
		flex-wrap:wrap;
	}
		.nbox.nbox_1s .nimg{
			width:360px;
			margin-left:40px;
			padding:0;
			position:relative;
			box-sizing:border-box;
			order:2;
			border:none;
			border-radius:0px;
		}
			.nbox.nbox_1s .nimg img{
				width:100%;
				margin-bottom:10px;
			}
		.nbox.nbox_1s .nbody{
			width:calc(100% - 400px);
			order:1;
		}

		.nbox.nbox_1s ul{
			column-count:2;
			column-gap:30px;
			column-width:50%;
		}
			.nbox.nbox_1s ul li:before{
				font-size:0.9em;
				content:'\f138';
				color:#EF7E3B;
			}


@media screen and (max-width:1020px){
	.nbox{
		margin-left:-30px;
	}
		.nbox > *{
			width:33.33%;
			border-width:30px;
			margin-bottom:30px;
		}
}
@media screen and (max-width:768px){
	.nbox.nbox_3s > *{
		width:50%;
	}
	.nbox > *{
		width:50%;
	}
}
@media screen and (max-width:660px){
	.nbox{
		margin-left:-20px;
	}
		.nbox > *{
			border-width:20px;
			margin-bottom:20px;
		}
}
@media screen and (max-width:560px){
	.nbox > *, .nbox.nbox_3s > *{
		width:100%;
		margin-bottom:50px;
	}
}



/*--- Newsliste ---*/
.news_liste{
	display:flex;
	flex-wrap:wrap;
	margin-top:2em;
}
	.news_liste > div{
		width:100%;
		margin-bottom:40px;
		padding-bottom:40px;
		border-bottom:1px solid #CCCCCC;
	}

	.news_liste > div:last-child{
		border-bottom:none;
		padding-bottom:0
		margin-bottom:0;
	}

	.news_liste .content{
		display:flex;
		flex-wrap:wrap;
	}

	.news_liste h2 a, .news_liste p a{
		color:#4D4D4D;
	}

	.news_liste .data_img_container{
		width:260px;
		margin-right:40px;
		line-height:1px;
	}
		.news_liste .data_img_container img{
			width:100%;
		}
	.news_liste .body_text{
		width:calc(100% - 300px);
	}
		.news_liste .body_text.body_text_max{
			width:100%;
		}
	.news_liste .body_text p:last-child{
		margin-bottom:0;
	}
	.news_liste_date{
		font-size:0.9em;
		margin-bottom:0.2em;
	}

@media screen and (max-width:1020px){
	.news_liste{
		margin-top:2.5em;
	}
}

@media screen and (max-width:640px){
	.news_liste > div{
		margin-bottom:30px;
		padding-bottom:30px;
	}
	.news_liste .data_img_container{
		width:120px;
		margin-right:20px;
	}
	.news_liste .body_text{
		width:calc(100% - 140px);
	}
}

@media screen and (max-width:400px){
	.news_liste .data_img_container{
		width:100%;
		margin-right:0;
		margin-bottom:20px;
	}
		.news_liste .data_img_container img{
			width:auto;
		}
	.news_liste .body_text{
		width:100%;
		max-width:100%;
	}
}



/*--- Event Liste/Details ---*/
.event_register{
	width:100%;
	float:left;
}
.event_register a, .event_register a:hover{
	color:white;
	border:1px solid #224191;
	background-color:#005BA8;
	padding:4px 4px 4px 4px;
	margin-right:4px;
	float:left;
	text-decoration:none;
	font-size:0.9em;
	border-radius:5px;

	-webkit-transition: all 0.1s ease;
	-moz-transition: all 0.1s ease;
	-ms-transition: all 0.1s ease;
	-o-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
.event_register .year_buttons{
	float:left;
	clear:both;
	margin-bottom:4px;
}
.event_register .year_buttons a:hover{
	color:white;
	background-color:#005BA8;
	text-decoration:none;
}
.event_register .but_y{
	background-color:#6C8DC5;
}
.event_register .next_y:after{
	content:'\f054';
	font-family:'Font Awesome 5 Pro';
	font-weight:900;
	display:inline-block;
	margin-left:0.3em;
}
.event_register .prev_y:before{
	content:'\f053';
	font-family:'Font Awesome 5 Pro';
	font-weight:900;
	display:inline-block;
	margin-right:0.3em;
}
.event_register .act_year{
	border:1px solid #005BA8;
	color:white;
	background-color:#005BA8;
	font-weight:bold;
	padding:4px 8px 4px 8px;
	margin-right:2px;
	float:left;
	font-size:0.9em;
	border-radius:5px;
}

.event_register .month_buttons{
	clear:left;
}
.event_register .month_buttons a:hover{
	color:white;
	background-color:#005BA8;
	text-decoration:none;
}
.event_register .but_m{
	color:black;
	border:1px solid #224191;
	background-color:#E5F1FF;
	margin-bottom:4px;
}
.event_register .but_m_act{
	border:1px solid #224191;
	background-color:#6C8DC5;
	margin-bottom:4px;
}
.event_register .but_m_on{
	border:1px solid #224191;
	color:white;
	background-color:#005BA8;
	font-weight:bold;
	margin-bottom:4px;
}
.event_register .monat_name{
	margin:5px 0 2em 0;
	font-weight:bold;
	padding-bottom:0.8em;
	border-bottom:1px solid #6C8DC5;
}

.event_liste{
	float:left;
	width:100%;
	margin-bottom:2em;
}
.event_liste ul{
	list-style:none;
	margin:0;
	padding:0;
}
.event_liste ul li{
	background-image:none;
	list-style:none;
	margin:15px 0 0 0;
	padding:0 0 5px 0;
	float:left;
	width:100%;
	clear:both;
	border-bottom:1px solid #6C8DC5;
}
.event_liste ul li:before{
	display:none;
}
.event_liste ul li:last-child{
	border-bottom:none;
}
.event_liste .content{
	float:left;
	width:100%;
}
.event_liste .headline{
}
.event_liste .headline a{
	color:#224191;
	text-decoration:none;
}
.event_liste .headline a:hover{
	color:#224191;
	text-decoration:none;
}

.event_liste .body_text{
	float:left;
	max-width:385px;
}

.event_liste .body_text_max{
	min-width:100%;
}

.event_liste .body_text a, .event_liste .body_text a:hover{
	color:rgb(51,51,102);
	text-decoration:none;
}

.event_liste .body_text p{
	margin-bottom:0.5em;
}

.event_liste_date{
	margin-bottom:0.5em;
	font-size:0.9em;
	font-weight:bold;
	color:black;
}

.event_liste .data_img_container{
	width:200px;
	overflow:hidden;
	float:left;
	margin-top:-5px;
	margin-right:15px;
	margin-bottom:10px;
}
.event_liste .data_img{
	border:none;
	margin-top:5px;
}
.event_liste .data_img_txt{
	font-size:9px;
}

.event_liste .event_liste_lnk{
}
	.event_liste .event_liste_lnk span{
		margin-top:0.5em;
		color:white;
		background-color:#005BA8;
		display:inline-block;
		border-radius:5px;
		padding:0.15em 0.3em 0.15em 0.5em;
		font-family:roboto2014_condensed_regular, Arial, Helvetica, sans-serif;
		padding:0.12em 0.4em 0.24em 0.5em;
	}
		.event_liste .event_liste_lnk span:after{
			/*icon-caret-right*/
			content:'\f0da';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			display:inline-block;
			margin-left:0.5em;
		}


@media screen and (max-width:1023px){
	.event_liste .data_img_container{
		max-width:37%;
		margin-right:3%;
	}
	.event_liste .body_text{
		max-width:60%;
	}
}
@media screen and (max-width:480px){
	.event_liste .data_img_container{
		width:100%;
		max-width:100%;
		margin-right:0;
	}
	.event_liste .body_text{
		width:100%;
		max-width:100%;
	}
}





/*--- JSSOR ---*/
body:after{
	content:'marker0';
	display:none;
}

.slider_close{
	cursor:pointer;
	position:relative;
	margin-left:30px;
}
	.slider_close img{
		width:36px;
		height:36px;
		position:absolute;
		top:0px;
		left:0px;
	}
	.slider_close:after{
		content:'\f00d';
		font-family:'Font Awesome 5 Pro';
		color:white;
		font-size:42px;
	}

.slider_expand{
	cursor:pointer;
	position:relative;
	margin-left:30px;
}
	.slider_expand img{
		width:36px;
		height:36px;
		position:absolute;
		top:0px;
		left:0px;
	}
	.slider_expand:after{
		content:'\f065';
		font-family:'Font Awesome 5 Pro';
		color:white;
		font-size:42px;
	}

.slider_play{
	cursor:pointer;
	position:relative;
	margin-left:40px;
}
	.slider_play img{
		width:36px;
		height:36px;
		position:absolute;
		top:0px;
		left:0px;
	}
	.slider_play:after{
		content:'\f04b';
		font-family:'Font Awesome 5 Pro';
		color:white;
		font-size:42px;
	}

.slider_stop{
	cursor:pointer;
	position:relative;
	margin-left:40px;
}
	.slider_stop img{
		width:36px;
		height:36px;
		position:absolute;
		top:0px;
		left:0px;
	}
	.slider_stop:after{
		content:'\f04c';
		font-family:'Font Awesome 5 Pro';
		color:white;
		font-size:42px;
	}

.slider_index{
	position:relative;
	margin-left:30px;
	font-size:42px;
	color:white;
	font-family:'r-b';
}


.slider_compress{
	cursor:pointer;
	position: fixed;
	top: 10px;
	right: 10px;
	text-shadow: 2px 2px 5px #000000;
}

	.slider_compress:after{
		content:'\f066';
		font-family:'Font Awesome 5 Pro';
		color:white;
		font-size:42px;		
	}

@media screen and (max-width:1024px){
	body:after{
		content:'marker1';
		display:none;
	}
	.slider_close{
		margin-left:25px;
	}
		.slider_close img{
			width:30px;
			height:30px;
		}
		.slider_close:after{
			font-size:35px;
		}

	.slider_expand{
		margin-left:25px;
	}
		.slider_expand img{
			width:30px;
			height:30px;
		}
		.slider_expand:after{
			font-size:35px;
		}

	.slider_play{
		margin-left:33px;
	}
		.slider_play img{
			width:30px;
			height:30px;
		}
		.slider_play:after{
			font-size:35px;
		}

	.slider_stop{
		margin-left:33px;
	}
		.slider_stop img{
			width:30px;
			height:30px;
		}
		.slider_stop:after{
			font-size:35px;
		}

	.slider_index{
		margin-left:25px;
		font-size:35px;
	}
}

@media screen and (max-width:640px){
	body:after{
		content:'marker2';
		display:none;
	}
	.slider_close{
		margin-left:15px;
	}
		.slider_close img{
			width:18px;
			height:18px;
		}
		.slider_close:after{
			font-size:21px;
		}

	.slider_expand{
		margin-left:15px;
	}
		.slider_expand img{
			width:18px;
			height:18px;
		}
		.slider_expand:after{
			font-size:21px;
		}

	.slider_play{
		margin-left:20px;
	}
		.slider_play img{
			width:18px;
			height:18px;
		}
		.slider_play:after{
			font-size:21px;
		}

	.slider_stop{
		margin-left:20px;
	}
		.slider_stop img{
			width:18px;
			height:18px;
		}
		.slider_stop:after{
			font-size:21px;
		}

	.slider_index{
		margin-left:15px;
		font-size:21px;
	}	
}

#zoom_slider_content{
}


.jssorb13 div, .jssorb13 div:hover, .jssorb13 .av {
	background: url(../jssor/b02.png) no-repeat;
	overflow: hidden;
	cursor: pointer;
}

.jssorb13 div {
	background-position: -5px -5px;
}

.jssorb13 div:hover, .jssorb13 .av:hover {
	background-position: -35px -5px;
}

.jssorb13 .av {
	background-position: -65px -5px;
}

.jssorb13 .dn, .jssorb13 .dn:hover {
	background-position: -95px -5px;
}

.jssora20l, .jssora20r, .jssora20ldn, .jssora20rdn
{
	position: absolute;
	cursor: pointer;
	display: block;
	background: url(../jssor/a13.png) no-repeat;
	overflow:hidden;
}
.jssora20l { background-position: -3px -33px; }
.jssora20r { background-position: -63px -33px; }
.jssora20l:hover { background-position: -123px -33px; }
.jssora20r:hover { background-position: -183px -33px; }
.jssora20ldn { background-position: -243px -33px; }
.jssora20rdn { background-position: -303px -33px; }

@media screen and (max-width:939px){
	.jssora20l, .jssora20r, .jssora20ldn, .jssora20rdn{display:none}
}









.news_details h2{
	font-size:1.8em;
}
.news_details h3{
	font-size:1.2em;
	margin-bottom:1em;
}

.news_readon_container{
	width:100%;
	float:left;
	margin-bottom:1em;
}

.news_details .news_readon{
	font-family:r-lt, sans-serif;
	background-color:#BE1716;
	color:white;
	line-height:1.454545em;
	font-size:1.25rem;
	padding:0.2em 0.55em 0.33em 0.55em;
	float:left;
	display:inline-block;
	cursor:pointer;
}
	.news_details .news_readon:after{
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		content:'\00a0\f0a9';
	}

.news_details .news_readclose{
	font-family:r-lt, sans-serif;
	background-color:#BE1716;
	color:white;
	line-height:1.454545em;
	font-size:1.25rem;
	padding:0.2em 0.55em 0.33em 0.55em;
	float:left;
	display:none;
	cursor:pointer;
}
	.news_details .news_readclose:after{
		content:'\00a0\f057';
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
	}





/*--- News Liste Accordion ---*/
.accordion{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:1em;
}
	.accordion > *{
		width:100%;
		margin-bottom:0.5em;

		display:flex;
		flex-wrap:wrap;
	}

.accordion h2{
	font-family:rc, sans-serif;
	font-size:28px;
	padding:10px 10px 10px 10px;
	color:black;
	width:100%;
	float:left;
	cursor:pointer;
	border-radius:3px;
	margin:0.5em 0 0 0;
	box-sizing:border-box;
}
.accordion h2:first-child{
	margin-top:0;
}

.accordion h2.head_close{
	background-color:#CCCCCC;

	background-color:#D73323;
	color:white;
}
	.accordion h2.head_close:after{
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		content:'\f0fe';
		font-size:28px;
		float:right;
		color:#D73323;

		color:white;
	}

.accordion h2.head_open{
	background-color:#D73323;
	border-bottom-left-radius:0px;
	border-bottom-right-radius:0px;
	color:white;
}
	.accordion h2.head_open:before{
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		content:'\f00d';
		font-size:28px;
		float:right;
	}

.accordion .body{
	display:none;
	width:100%;
	padding:0px;
	background-color:white;
	border-radius:0px 0px 5px 5px;
}

.accordion .body p{
	margin-bottom:1em;
}

.accordion .body a{
	color:#224191;
	font-weight:bold;
}






/*--- Paging-Buttons ---*/
.paging_container{
	display:flex;
	margin:2em 0 2em 0;
	border-top:1px solid #D4D4D4;
	padding-top:1em;
	width:100%;
}
a.paging_bt, a.paging_bt:hover{
	font-family:rc-b, sans-serif;
	background-color:#70BFB6;
	line-height:1em;
	color:white;
	padding:4px 10px 4px 10px;
	border-radius:3px;
	text-decoration:none;
	display:inline-block;
	margin-right:8px;
	font-size:1.2em;
}
	a.paging_bt_on, a.paging_bt_on:hover{
		background-color:#4D8ECA;
		color:white;
		font-family:rc-b, sans-serif;
	}
	a.paging_bt_fwd, a.paging_bt_fwd:hover{
		background-color:#70BFB6;
		color:white;
		padding:4px 6px 4px 10px;
	}
		a.paging_bt_fwd:before{
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			content:'\f04e';
		}
	a.paging_bt_bck, a.paging_bt_bck:hover{
		background-color:#70BFB6;
		color:white;
		padding:4px 10px 4px 6px;
	}
		a.paging_bt_bck:before{
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			content:'\f04a';
		}

.paging_container span{
	display:inline-block;
	margin-left:10px;
	font-size:0.9em;
	font-family:rc-lt, sans-serif;
	padding-top:2px;
}


/*--- Anfahrt ---*/
.anfahrt{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:1em;
}
	.anfahrt > div{
		margin-top:5px;
		margin-right:20px;
	}




/*--- Suche ---*/
.suchergebnis{
}

	.suchergebnis .li{
		margin-bottom:1.5em;
		position:relative;
	}

	.suchergebnis .li .icon:before{
		content:'\f15c';
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		font-size:48px;
		position:absolute;
		left:0px;
		top:12px;
	}
		.suchergebnis .li .icon.icon_map:before{
			content:'\f041';
		}
		.suchergebnis .li .icon.icon_suitcase:before{
			content:'\f0f2';
			font-size:40px;
		}
		.suchergebnis .li .icon.icon_pdf:before{
			content:'\f1c1';
		}
		.suchergebnis .li .icon.icon_clock:before{
			content:'\f017';
			font-size:40px;
		}


	.suchergebnis .li .content{
		padding-left:50px;
		color:#4D4D4D;
	}
		.suchergebnis .li .content .headline{
			font-family:r, sans-serif;
		}
		.suchergebnis .li .content .date{
			font-size:0.9em;
		}






/*--- Dokumentliste ---*/
.dokumentliste{
	margin-bottom:2em;
	display:flex;
	flex-wrap:wrap;
}
	.dokumentliste > *{
		width:100%;
	}

	.dokumentliste .doc{
		width:100%;
		font-family:rc-lt, sans-serif;
		box-sizing:border-box;
		background-color:white;
		padding:15px 68px 15px 68px;
		border-radius:5px;
		margin-bottom:1em;
		color:black;
		position:relative;

		/*
		background-image:url(img/flag-de.png);
		background-repeat:no-repeat;
		background-size:42px;
		background-position:calc(100% - 15px) 15px;
		*/
	}
		.dokumentliste .doc_grey{
			background-color:#78991F;
			background-color:#CCCCCC;
		}

		.dokumentliste .doc_red{
			background-color:#F38D3F;
		}

		.dokumentliste .doc_de{
		}
		.dokumentliste .doc_en{
		}
		.dokumentliste .doc_no_flag{
			background-image:none;
		}

		.dokumentliste .doc_margin{
			margin-bottom:2em;
		}

		.dokumentliste .doc_headline{
			font-family:rc-b, sans-serif;
			word-wrap:break-word;
		}

		.dokumentliste .doc:before{
			content:'\f0f6';
			font-family:'Font Awesome 5 Pro';
			font-size:48px;
			position:absolute;
			top:28px;
			left:15px;
			color:#D73323;
		}
		.dokumentliste .doc.doc_pdf:before{
			content:'\f1c1';
		}
		.dokumentliste .doc.doc_word:before{
			content:'\f1c2';
		}
		.dokumentliste .doc.doc_excel:before{
			content:'\f1c3';
		}
		.dokumentliste .doc.doc_powerpoint:before{
			content:'\f1c4';
		}
		.dokumentliste .doc.doc_zip:before{
			content:'\f1c6';
		}


.dokumentliste2{
	width:100%;
	float:left;
	margin-bottom:2em;
}

	.dokumentliste2 .kat{
		width:100%;
		float:left;
	}

	.dokumentliste2 .kat2{
		width:100%;
		float:left;
		margin-bottom:1em;
		display:none;
	}

	.dokumentliste2 .kat3{
		width:100%;
		float:left;
		margin-bottom:0.5em;
	}

	.dokumentliste2 .kat3:last-child{
		margin-bottom:0;
	}

	.dokumentliste2 h2.bt{
		display:block;
		width:100%;
		float:left;
		background-color:rgb(61,128,204);
		color:white;
		padding:8px 42px 7px 42px;
		border-radius:4px;
		margin-bottom:0.5em;
		text-decoration:none;
		position:relative;
		cursor:pointer;

		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		box-sizing:border-box;
		font-size:20px;
	}
		.dokumentliste2 h2.bt:hover{
			text-decoration:none;
		}
		.dokumentliste2 h2.bt:before{
			content:'\f055';
			font-family:'Font Awesome 5 Pro';
			float:left;
			margin-right:0.3em;
			font-size:28px;
			position:absolute;
			left:10px;
			top:9px;
		}
		.dokumentliste2 h2.bt:after{
			content:'\f138';
			font-family:'Font Awesome 5 Pro';
			float:right;
			font-size:28px;
			margin-left:15px;
			position:absolute;
			right:10px;
			top:9px;
		}
		.dokumentliste2 h2.bt_expanded{
			background-color:#0950A0;
		}
			.dokumentliste h2.bt_expanded:before{
				content:'\f056';
			}
			.dokumentliste h2.bt_expanded:after{
				content:'\f13a	';
			}

	.dokumentliste2 a.doc{
		display:block;
		margin-bottom:0.5em;
		width:100%;
		float:left;

		color:#555555;
		background-color:#F0F0F0;
		padding:6px 38px 6px 6px;
		border-radius:4px;
		position:relative;

		font-family:rc, sans-serif;
		box-sizing:border-box;
	}
		.dokumentliste2 a.doc:hover{
			text-decoration:none;
		}
		.dokumentliste2 a.doc:after{
			content:'\00a0\f0a9';
			font-family:'Font Awesome 5 Pro';
			position:absolute;
			right:14px;
			top:10px;
		}
		.dokumentliste2 a.doc:before{
			content:'\f0f6';
	font-family:'Font Awesome 5 Pro';
	font-weight:900;
			margin-right:0.3em;
		}
		.dokumentliste2 a.doc.doc_pdf:before{
			content:'\f1c1';
		}
		.dokumentliste2 a.doc.doc_word:before{
			content:'\f1c2';
		}
		.dokumentliste2 a.doc.doc_excel:before{
			content:'\f1c3';
		}
		.dokumentliste2 a.doc.doc_powerpoint:before{
			content:'\f1c4';
		}
		.dokumentliste2 a.doc.doc_zip:before{
			content:'\f1c6';
		}



/*--- Anfrage ---*/
.anfrage{
	display:flex;
	flex-wrap:wrap;
}
	.anfrage > *:nth-child(1){
		width:100%;
		order:2;
	}
	.anfrage > *:nth-child(2){
		width:100%;
		order:1;
	}

	.anfrage .frei{
		font-size:24px;
		margin-left:20px;
	}
		.anfrage .frei:before{
			content:'\f04d';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			color:#6AB726;
			margin-right:6px;
		}
	.anfrage .belegt{
		font-size:24px;
		margin-left:20px;
	}
		.anfrage .belegt:before{
			content:'\f04d';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			color:#DD0000;
			margin-right:6px;
		}


/*--- Kalenderbox ---*/
.kalender_container{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:2em;
	position:relative;
}
	.kalender_container > *:nth-child(1){
		padding-top:20px;
		margin-right:40px;
	}
	.kalender_container > *:nth-child(2){
		min-width:340px;
		margin-right:30px;
	}
	.kalender_container > *:nth-child(3){
		min-width:340px;
		margin-left:30px;
	}
	.kalender_container > *:nth-child(4){
		padding-top:20px;
		margin-left:40px;
	}

	.kalender_container_multi > *:nth-child(1), .kalender_container_multi > *:nth-child(2), .kalender_container_multi > *:nth-child(3){
		padding-top:0;
		height:420px;
		width:calc(50% - 40px);
		height:420px;
		margin-right:80px;
	}
	.kalender_container_multi > *:nth-child(2){
		margin-right:0;
	}
	.kalender_container_multi > *:nth-child(3){
		margin-left:0;
	}

	/*Buttons vor zurück*/
	.kalender_container .btn{
		cursor:pointer;
	}
		.kalender_container .btn:before{
			content:'\f137';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			font-size:48px;
			color:rgb(204,204,204);
		}
			.kalender_container .btn.next:before{
				content:'\f138';
			}
		.kalender_container .btn.prev{
			left:0.5em;
		}
		.kalender_container .btn.next{
			right:0.5em;
		}

@media(max-width:960px){
	.kalender_container > *:nth-child(1){
		margin-right:20px;
		width:calc(10% - 20px);
	}
	.kalender_container > *:nth-child(2){
		margin-right:10px;
		width:calc(40% - 10px);
		min-width:auto;
	}
	.kalender_container > *:nth-child(3){
		margin-left:10px;
		width:calc(40% - 10px);
		min-width:auto;
	}
	.kalender_container > *:nth-child(4){
		margin-left:20px;
		width:calc(10% - 20px);
	}
	
	.kalender_container_multi > *:nth-child(1), .kalender_container_multi > *:nth-child(2), .kalender_container_multi > *:nth-child(3){
		width:calc(50% - 40px);
		min-width:calc(50% - 20px);
		margin-left:0px;
		margin-right:40px;
	}
	.kalender_container_multi > *:nth-child(2){
		margin-right:0;
	}
}

@media(max-width:680px){
	.kalender_container > *:nth-child(1){
		width:50px;
		margin-right:0;
	}
	.kalender_container > *:nth-child(2){
		margin-right:0px;
		width:calc(100% - 100px);
	}
	.kalender_container > *:nth-child(3){
		display:none;
	}
	.kalender_container > *:nth-child(4){
		width:50px;
		margin-left:0;
	}
	
	.kalender_container_multi > *:nth-child(1), .kalender_container_multi > *:nth-child(2), .kalender_container_multi > *:nth-child(3){
		width:calc(50% - 40px);
		min-width:calc(50% - 20px);
		margin-left:0px;
		margin-right:40px;
	}
	.kalender_container_multi > *:nth-child(2){
		margin-right:0;
	}
	.kalender_container_multi > *:nth-child(3){
		display:block;
	}
	
	.kalender_container_multi .kalender .header{
		font-size:1.3em;
	}
}

@media(max-width:620px){
	.kalender_container_multi > *:nth-child(1), .kalender_container_multi > *:nth-child(2), .kalender_container_multi > *:nth-child(3){
		width:100%;
		min-width:100%;
		margin-right:0px;
	}
	.kalender_container_multi > *:nth-child(2){
		margin-right:0;
	}
}

@media(max-width:400px){
	.kalender_container > *:nth-child(1){
		width:1px;
	}
	.kalender_container > *:nth-child(2){
		width:100%;
	}
	.kalender_container > *:nth-child(4){
		width:1px;
	}
	
	.kalender_container_multi > *:nth-child(1), .kalender_container_multi > *:nth-child(2){
		width:100%;
		min-width:100%;
		height:360px;
		margin-right:0px;
	}
	.kalender_container_multi > *:nth-child(2){
		margin-right:0;
	}

	#cal_bt_left{
		position:absolute;
		top:30px;
		left:1px;
		z-index:10;
	}
	#cal_bt_right{
		position:absolute;
		top:30px;
		right:1px;
		z-index:10;
	}
	.kalender_container .btn:before{
		font-size:36px;
	}
}


#box_kalender{
	width:100%;
	padding:0 1px 0 1px;
}
.kalender{
	width:100%;
	/*border-spacing entspricht dem alten HTML-Attribute cellspacing. Es wirkt sich aber nur aus, wenn border-collapse nicht gesetzt ist.
	Damit die hor. Trennlinien bei wtnames nicht optisch unterbrochen werden, wird hier für die Tabelle kein border-spacing eingesetzt, um
	die Zellen voneinander abzusetzen. Stattdessen werden an bestimmten Kanten borders gesetzt. s.u. Trennlinien zwischen Zellen.*/
	/*border-spacing:1px;*/

	border-collapse:collapse;
	empty-cells:show;
	font-family:rc-b, sans-serif;
	font-size:16px;
	line-height:1em;
	position:relative;

}
	.kalender a, .kalender a:hover{
		text-decoration:none;
		color:inherit;
	}
	/*Leider positioniert der Android webkit die Inhalte der TD-Elememt nicht richtig, wenn diese position:absoluet sind. Um ein brauchbares
	Blockelement als Anker zu haben, sind alle TD-Inhalte in SPAN oder DIV eingesclossen, die dann position-relative sind.*/
	.kalender td{
		font-weight:normal;
		text-align:center;
		padding:0;
		margin:0;
	}
	.kalender .ktm{
		background-color:#6AB726;
		color:white;
	}
	.kalender .wtnames td span, .kalender tbody td span{
		display:block;
		padding:1em 0 1em 0;
		position:relative;
	}
	/*Die Schriftgröße der Header-Inhalte wird zwar auf Basis der Gesamtschriftgröße des Kalenders gesetzt. Innerhalb des Headers berechnen sich die EM Angaben aber dann aus eben diese
	neue Zwischengröße und nicht mehr aus der Kalener Basisschriftgröße. Dadruch kann der Kaldenerkopf einfache pauschal verkleinert werden.*/
	.kalender .header{
		font-family:rc, sans-serif;
		font-size:1.5em;
		line-height:1em;
	}
		.kalender .header td{
			padding-top:0.5em;
			padding-bottom:1em;
		}
		.kalender .header span{
			display:inline-block;
		}
			/*Buttons vor zurück*/
			.kalender .header .btn{
				position:absolute;
				cursor:pointer;
			}
				.kalender .header .btn:before{
					/*fas fa-chevron-circle-left*/
					content:'\f137';
					font-family:'Font Awesome 5 Pro';
					font-weight:900;
					font-size:1.5em;
					color:rgb(204,204,204);
				}
					.kalender .header .btn.next:before{
						/*fas fa-chevron-circle-right*/
						content:'\f138';
					}
				.kalender .header .btn.prev{
					left:0.5em;
				}
				.kalender .header .btn.next{
					right:0.5em;
				}
		.kalender .wtnames{
			font-family:rc-b, sans-serif;
		}
			.kalender .wtnames td{
				/*auf gleiche 1/7 Werte setzen*/
				width:14.285714%;
			}
			.kalender .wtnames td span{
				padding-top:1.35em;
				padding-bottom:1.35em;
			}
	/*Trennlinien zwischen Zellen. Leider zeichnen die Browser die borders an den vier Kanten der Zellen mit unschiedlicher Priorität.
	Deshalb wird zur durchgängigen Abtrennung über und unter der Reihe wtnames eine leere TR mit einer TD colspan=7 über die volle Breite eingesetzt.*/
	.kalender .wtnames td{
	}
	.kalender .trenner td{
		height:0px;
	}
	.kalender tbody td{
		border:1px solid white;
		background-color:#E2E2E2;
	}
	/*Farben: die Reihenfolge der definition hier bestimmt, mit welchem Gewicht eine der Klassen auf einer TD am Ende seine Formatierungen durchsetzt.*/
	/*Sa, So*/
	.kalender .wtsa, .kalender .wtso{
	}
	/*min. 1 Verranstaltung auf diesem Kalendertag*/
	.kalender .act{
		cursor:pointer;
		color:white;
		background-color:#DD0000;
	}
	/*Kalendertag ist heute*/
	.kalender .on{
	}
	/*belegte Felder auch mit kleiner farbiger Ecke kennzeichnen*/
	.kalender .act span:before{
		content:'';
		display:inline-block;
		width:0px;
		height:0px;
		border:0px solid white;
		border-right-color:transparent;
		border-bottom-color:transparent;
		position:absolute;
		left:0px;
		top:0px;
	}
	.kalender .anr{
		background: linear-gradient(-45deg, #DD0000 50%, #6AB726 50%);
	}
	.kalender .abr{
		background: linear-gradient(-45deg, #6AB726 50%, #DD0000 50%);
	}
	.kalender .anr_abr{
		background-color:#DD0000;
	}
	/*linke Kanten schließen*/
	.kalender .wtnames td:first-child, .kalender tbody td:first-child{
	}

	/*Aktive Zellen nach rechts und unten von anderen body Zellen optisch trennen*/
	.kalender .act, .kalender .on{
	}
@media(max-width:400px){
	.kalender{
		font-size:14px;
	}
}




/*--- Login Box ---*/

.loginbox{
	margin:0px 0px 0px 0px;
	padding:15px;
	background-color:#5E6E69;
	border-radius:10px;
	width:230px;
}
	.loginbox h2{
		font-size:28px;
		line-height:1em;
		margin-bottom:0.3em;
		color:white;
	}
	.loginbox .ft1_label{
		font-family:rc-lt, sans-serif;
		font-size:18px;
		color:white;
		line-height:1em;
		margin-bottom:0.3em;
	}
	.loginbox .ft1_container{
		margin-bottom:0.5em;
	}

	.loginbox a.button_login, a.loginbox .button_login:hover{
		font-family:rc, sans-serif;
		font-size:24px;
		background-color:#FFAA00;
		color:white !important;
		border-radius:5px;
		display:block;
		padding:8px ;
		text-align:center;
		text-decoration:none;
		margin:20px 0px 10px 0px;
	}

	.loginbox .login_status span{
		background-color:#B20000;
		color:white;
		border-radius:5px;
		font-family:rc, sans-serif;
		font-size:20px;
		text-align:center;
		margin-top:10px;
		padding:4px;
		display:block;
	}
		.loginbox .login_status span.ok{
			background-color:#339933;
		}
	.loginbox .login_status table td{
		font-family:rc, sans-serif;
		font-size:18px !important;
	}
	.loginbox .info{
		font-family:rc, sans-serif;
		font-size:18px !important;

	}

@media screen and (max-width:600px){
	.loginbox{
		width:100%;
	}
	.loginbox input{
		width:100% !important;
	}
}



/*--- Login Buchungen ---*/

.login_buchungen{
	display:flex;
	flex-direction:column;
	width:100%;
	margin-bottom:2em;
	padding-bottom:2em;
	border-bottom:1px solid #CCCCCC;
}
	.login_buchungen a, .login_buchungen a:hover{
		font-family:rc, sans-serif;
		font-size:1.2em;
		padding:4px 10px 4px 10px;
		background-color:#FFAA00;
		color:white;
		display:block;
		width:100%;
		display:flex;
		flex-wrap:wrap;
		border-radius:5px;
		margin-bottom:10px;
	}
		.login_buchungen a > span{
			margin-right:10px;
		}

		.login_buchungen a.inactive{
			background-color:#E2E2E2;
			color:#999999;
		}
		.login_buchungen a.new{
			background-color:#E2E2E2;
			color:#333333;
		}

.login_toolbar{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:1em;
}
	.login_toolbar h1{
		width:calc(100% - 180px);
	}
		.login_toolbar_ext h1{
			width:calc(100% - 270px);
		}
	.login_toolbar a{
		position:relative;
		display:inline-block;
		width:50px;
		margin-left:40px;
	}
		.login_toolbar a.bt_liste:before{
			content:'\f00b';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			font-size:48px;
			position:absolute;
			top:14px;
			left:1px;
		}
		.login_toolbar a.bt_logout:before{
			content:'\f08b';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			font-size:48px;
			color:darkred;
			position:absolute;
			top:14px;
			left:1px;
		}
		.login_toolbar a.bt_new:before{
			content:'\f055';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			font-size:48px;
			color:darkgreen;
			position:absolute;
			top:14px;
			left:1px;
		}
		.login_toolbar a.bt_home:before{
			content:'\f015';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			font-size:48px;
			color:#FFAA00;
			position:absolute;
			top:14px;
			left:1px;
		}

@media screen and (max-width:600px){
	.login_toolbar_ext a{
		width:40px;
		margin-left:20px;
	}
	.login_toolbar_ext h1{
		width:calc(100% - 180px);
	}
	.login_toolbar a.bt_liste:before{
		font-size:36px;
		position:absolute;
	}
	.login_toolbar a.bt_logout:before{
		font-size:36px;
	}
	.login_toolbar a.bt_new:before{
		font-size:36px;
	}
	.login_toolbar a.bt_home:before{
		font-size:36px;
	}
}

a.bt_del{
	position:relative;
	display:inline-block;
}
	a.bt_del:before{
		content:'\f2ed';
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		font-size:48px;
		color:#B00000;
		line-height:1em;
	}



/*--- OpenStreetMap ---*/
#map{
	margin-bottom:1em;
	border:1px solid #CCCCCC;
	border-radius:5px;
	height:410px;
	width:100%;
	overflow:hidden;
}
#map img{
	max-width:none;
}

.markerinfo{
	font-family:rc,sans-serif;
	font-size:15px;
	width:200px;
}
	.markerinfo p{
		margin-bottom:0.5em !important;
	}

.standort_route{
}
	.standort_route a, .standort_route a:link, .standort_route a:hover{
		padding-left:24px;
		background-image:url(img/icon-route.png);
		background-repeat:no-repeat;
		background-position:0px 0px;
		color:#3A84DF;
	}




/*--- Für Videos ---*/
.embed_video{
	line-height:0.1em;
	max-width:1280px;
	margin-bottom:2em;
	border:1px solid white;
	border-radius:5px;
	overflow:hidden;
}
.embed_video > div{
	position:relative;
	padding-bottom:56.25%;
	height:0;
	overflow:hidden;
	max-width:100%;
	height:auto;
}
.embed_video > div > iframe, .embed_video > div > object, .embed_video > div > embed{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
@media screen and (max-width:1280px){
	.embed_video{
		border-right:none;
		border-left:none;
		border-radius:0px;
	}
}



/*--- Layer ---*/
.layer_close{
	cursor:pointer;
	position:relative;
	margin-left:30px;
}
	.layer_close img{
		width:36px;
		height:36px;
		position:absolute;
		top:0px;
		left:0px;
	}
	.layer_close:after{
		content:'\f00d';
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		color:white;
		font-size:42px;
	}



/*--- Formularfelder ---*/
.ft1{
	font-family:rc, sans-serif;
	color:black;
	font-size:22px;
	width:280px;
	background-color:#F9F9F9;
	border:1px solid #666666;
	border-radius:3px;
	padding:4px;
	box-sizing:border-box;
}
.ft1:focus{
	background-color:#D3D4D2;
}
.ft2{
	font-family:rc, sans-serif;
	color:black;
	font-size:22px;
	width:120px;
	background-color:#F9F9F9;
	border:1px solid #666666;
	border-radius:3px;
	padding:4px;
}
.ft2:focus{
	background-color:#D3D4D2;
}
.fs1{
	font-family:rc, sans-serif;
	color:black;
	font-size:22px;
	background-color:#F9F9F9;
	border:1px solid #666666;
	border-radius:3px;
	padding:3px 4px 3px 4px;
	box-sizing:border-box;
}
.ta1{
	font-family:rc, sans-serif;
	color:black;
	font-size:22px;
	font-weight:normal;
	width:100%;
	max-width:535px;
	height:160px;
	background-color:#F9F9F9;
	border:1px solid #666666;
	border-radius:3px;
	padding:4px;
	box-sizing:border-box;
}
.ta1:focus{
	background-color:#D3D4D2;
}


.bt1{
	font-weight:normal;
	color:white;
	border-radius:0px;
	font-size:24px;
	line-height:1.4em;
	padding:0.2em 0.4em 0.2em 0.4em;
	margin-top:0px;
	position:relative;
	background:#FFAA00;
	cursor:pointer;
	border:1px solid #60A9B2;
	border-radius:3px;
}

.bt1_dummy{
	font-weight:normal;
	color:#333333;
	border-radius:5px;
	font-size:24px;
	line-height:1.4em;
	padding:0.2em 0.4em 0.2em 0.4em;
	margin-top:0px;
	position:relative;
	border:1px solid rgb(198,199,197);
	border-top-color:rgb(211,211,209);
	display:none;
}
	.bt1_dummy img{
		width:24px;
		float:left;
		margin:5px 5px 0px 0px;
	}


.bt2{
	color:white;
	border:1px solid #60A9B2;
	background-color:#60A9B2;
	display:inline-block;
	text-align:left;
	font-size:1em;
	line-height:1.3em;
	border-radius:5px;
	padding:6px 10px 6px 10px;
	cursor:pointer;
	font-family:rc, sans-serif;
}


.hidden_formfield{
	position:absolute;
	top:-9999px;
	left:-9999px;
}
.checkbox{
	cursor:default;
}
.checkbox:before{
	content:'\f0c8';
	font-family:'Font Awesome 5 Pro';
	font-weight:900;
	margin-right:8px;
}
input[type=checkbox]:checked ~ .checkbox:before{
	content:'\f14a';
	margin-right:8px;
}



.cal_anreise{
	border:1px solid #5E6E69;
	border-radius:3px;
	color:white;
	background-color:#5E6E69;
	float:left;
}
	.cal_anreise input{
		font-family:rc,sans-serif;
		background-color:transparent;
		border:none;
		color:white;
		padding:3px;
		font-size:18px;
		float:left;
		width:90px;
	}
	.cal_anreise .inputcal{
		background-color:#5E6E69;
		float:left;
		padding:2px 6px 4px 7px;
	}
	.cal_anreise .inputcal:after{
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		content:'\f073';
		color:white;
	}



/*--- CSS-Klassenauswahl HTML-Editor / Hyperlinks ---*/
a.lnk_arrow_right{
	font-family:r, sans-serif;
	color:#60A9B2;
	font-size:1.1em;
}
	a.lnk_arrow_right:after{
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		color:#60A9B2;
		content:'\00a0\f061';
		font-weight:900;
	}
	a.lnk_arrow_1em{
		font-size:1em;
	}


a.lnk_arrow_left{
	font-family:r, sans-serif;
	color:#60A9B2;
	font-size:1.1em;
}
	a.lnk_arrow_left:before{
		font-family:'Font Awesome 5 Pro';
		color:#60A9B2;
		content:'\f060\00a0';
		font-weight:900;
	}


a.link_icon{
}
	a.link_icon{
		color:rgb(255,221,153);
		text-decoration:none;
	}
	a.link_icon:hover{
		color:rgb(255,221,153);
		text-decoration:none;
	}
		/*Allgemein*/
		a.link_icon:before{
			content:'\f061\00a0';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
		}

		/*Speziell*/
		a.link_icon.ansprechpartner:before{
			content:'\f007\00a0';
		}
		a.link_icon.kontakt:before{
			content:'\f0e0\00a0';
		}
		a.link_icon.www:before{
			content:'\f0ac\00a0';
		}
		a.link_icon.pdf:before{
			content:'\f1c1\00a0';
		}
		a.link_icon.eventf:before{
			content:'\f073\00a0';
		}

a.link_button{
}
	a.link_button{
		font-family:rc, sans-serif;
		background-color:#60A9B2;
		color:white;
		text-decoration:none;
		padding:11px 14px 10px 12px;
		border-radius:3px;
		font-size:1.2em;
	}
	a.link_button:hover{
		color:white;
		text-decoration:none;
	}
		/*Allgemein*/
		a.link_button:before{
			content:'\f061';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			margin-right:0.3em;
		}
		a.link_button:after{
			content:'\f138';
			font-family:'Font Awesome 5 Pro';
			font-weight:900;
			margin-left:0.3em;
		}

		/*Speziell*/
		a.link_button.ansprechpartner:before{
			content:'\f007\00a0';
		}
		a.link_button.kontakt:before{
			content:'\f0e0\00a0';
		}
		a.link_button.www:before{
			content:'\f0ac\00a0';
		}
		a.link_button.pdf:before{
			content:'\f1c1\00a0';
		}
		a.link_button.event:before{
			content:'\f073';
		}




/*--- CSS-Klassenauswahl HTML-Editor / Tabellen ---*/
.tbl1{

	width:100%;
	border-collapse:collapse;

	empty-cells:hide;

	font-size:1em;
	margin-bottom:30px;

}

	.tbl1, .tbl1 tr, .tbl1 td{
		background-color:white;
	}

	.tbl1 td{
		padding:15px;
		word-wrap:break-word;

		vertical-align:center;

		border:1px solid #BBBBBB;
	}


	.tbl1 tr:first-child td{
		background-color:#51AA35;
		color:white;
	}

	.tbl1 p{

		padding:0;

		margin:0;

		line-height:inherit;

	}

	.tbl1 tr td{
		width:auto;

	}
	.tbl1 tr td img{

		height:auto;
		max-width:100%;
	}


.tbl2{

	width:100%;
	border-collapse:collapse;

	empty-cells:show;

	font-size:1em;
	margin-bottom:2em;

	margin-top:0.5em;
}

	.tbl2, .tbl2 tr, .tbl2 td{
		background-color:white;
	}

	.tbl2 td{
		padding:15px 15px 15px 0px;
		word-wrap:break-word;

		vertical-align:center;

		border-bottom:1px solid #CCCCCC;
	}

	.tbl2 p{

		padding:0;

		margin:0;

		line-height:inherit;

	}

	.tbl2 tr:first-child td{
		color:black;

		font-family:r, sans-serif;
		background-color:#CCCCCC;
		border-bottom:none;
	}
	.tbl2 tr:nth-child(2n+3) td{
	}

	.tbl2 tr+tr td{
		width:auto;

	}
	.tbl2 tr+tr td+td{

		width:auto;
	}
	.tbl2 tr+tr td+td+td{
		width:auto;
	}






@media screen and (max-width:780px){
	.tbl1{

		font-size:0.9em;
	}

		.tbl1 td{
			padding:5px;
		}

}
@media screen and (max-width:480px){
	.tbl1{

		font-size:0.8em;
	}

		.tbl1 td{
			padding:4px;
			word-break:break-all;
		}

}



/*--- CSS-Klassenauswahl HTML-Editor / Bildboxen ---*/
.imgbox1{

	width:100%;
	float:left;
	border:1px solid #CCCCCC;
	border-radius:3px;
	overflow:hidden;
	font-family:rc-lt,sans-serif;
	font-size:14px;
	padding:4px;
	box-sizing:border-box;
	position:relative;
	z-index:100;
	line-height:1px;
}
	.imgbox1 img{

		width:100%;
		margin-bottom:0em;
		line-height:1px;
	}
		.imgbox1 a[rel]{

			display:block;
			position:relative;
			text-decoration:none;
			line-height:1px;
		}
			.imgbox1 a[rel]:before{

				content:'\f002';
				font-family:'Font Awesome 5 Pro';
				font-weight:900;
				position:absolute;
				top:3px;
				right:3px;
				color:white;
				font-size:20px;
				background-color:#CCCCCC;
				padding:1px 4px 1px 4px;
				border-radius:5px;
				opacity:0.9;
				line-height:1.2em;
			}
	.imgbox1 p{

		margin:0;
		line-height:1em;
	}
	.imgbox1 p + p{

		margin-top:6px;
	}
	.imgbox1.imgbox1_rechts{

		width:auto;
		max-width:33%;
		float:right;
		margin:0 0 1.5em 1.5em;
	}
	.imgbox1.imgbox1_links{

		width:auto;
		max-width:33%;
		float:left;
		margin:0 1.5em 1.5em 0;
	}
	.imgbox1.imgbox1_50{

		width:50%;
		max-width:50%;
	}

	.imgbox1.imgbox1_small{

		width:160px;
	}

@media screen and (max-width:500px){
	.imgbox1.imgbox1_rechts, .imgbox1.imgbox1_links{
		width:100%;
		max-width:100%;
		margin:0 0 2em 0;
		box-sizing:border-box;
	}
	.imgbox1.imgbox1_small{

		width:100%;
		max-width:100%;
	}

}





/*--- CSS-Klassenauswahl HTML-Editor / Infoboxen mehrspaltig ---*/




/*--- CSS-Klassenauswahl HTML-Editor  / Texte mehrspaltig ---*/

.txt_column_2s{
	column-count:2;
	column-gap:40px;
	column-width:510px;
	margin-bottom:1.44em;
}
	.txt_column_2s div{
		-webkit-column-break-inside:avoid;
		page-break-inside:avoid;
		break-inside:avoid-column;
	}

.txt_column_3s{
	column-count:3;
	column-gap:60px;
	column-width:240px;
	margin-bottom:1.44em;
}
	.txt_column_3s h1, .txt_column_3s h2{
		column-span:all;
	}
	.txt_column_3s div{
		-webkit-column-break-inside:avoid;
		page-break-inside:avoid;
		break-inside:avoid;
	}



/*--- CSS-Klassenauswahl HTML-Editor / Bilder mehrspaltig ---*/

.img_4s{
	/*
	display:flex;
	flex-wrap:nowrap;
	justify-content:flex-start;
	align-content:flex-start;
	*/
	line-height:1px;
	width:100%;
	float:left;
}
	.img_4s > *{
		width:calc(25% - 12px);
		margin:0 16px 16px 0;
		float:left;
	}
	.img_4s > *:last-child{
		margin-right:0;
	}
	.img_4s img{
	}




/*--- CSS-Klassenauswahl HTML-Editor / Content 2spaltig ---*/

.content_column_2s{
	display:flex;
	flex-wrap:wrap;
	margin-left:-40px;
}
	.content_column_2s > div{
		width:50%;
		border-left:40px solid transparent;
	}

@media screen and (max-width:760px){
	.content_column_2s > div{
		width:100%;
		margin-bottom:1em;
	}
}



/*--- CSS-Klassenauswahl HTML-Editor / Infobox ---*/

.infobox h2, .infobox h3{
	position:relative;
	padding-left:36px;
}
	.infobox h2:before, .infobox h3:before{
		font-family:'Font Awesome 5 Pro';
		font-weight:900;
		content:'\f05a';
		position:absolute;
		top:1px;
		left:0px;
	}



/*--- Layer ---*/

@keyframes fadelayer{0%{opacity:0;}100%{opacity:1;}}
.overlay{
	z-index:200000;
	width:100%;
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	max-height:100%;
	overflow:auto;
	justify-content:center;
	align-items:center;
	padding:0px;
	background-color:rgba(0,0,0,.4);
	-webkit-backdrop-filter:blur(5px);
	backdrop-filter:blur(5px);
	display:none;
}
.overlay.act{
	display:flex;
	opacity:1;
	animation-name:fadelayer;
	animation-iteration-count:1;
	animation-timing-function:ease-in;
	animation-duration:0.8s;
}
.overlay .overlay-inner{
	border:20px solid transparent;
	position:relative;
	border-radius:10px;
	overflow:hidden;
	line-height:1px;
	
}
.overlay .overlay-inner .overlay-top{
	position:absolute;
	top:20px;
	right:8px;
	cursor:pointer;
	z-index:1;
}
.overlay .overlay-inner .overlay-top:before{
	font-family:'Font Awesome 5 Pro';
	content:'\f00d';
	color:white;
	font-size:40px;
}
.overlay .overlay-content p{
	margin:0;
}
.overlay .overlay-content a{
	display:block;
	line-height:1px;
}
.overlay .img-mobile{display:none}

@media(max-width:480px){
	.overlay .img-mobile{
		display:inline;
	}
	.overlay .img-desktop{
		display:none;
	}
}


/*--- Specials ---*/

.specials{
	width:100%;
	max-width:600px;
	box-sizing:border-box;
	display:flex;
	flex-wrap:wrap;
}
	.specials.specials_page{
		max-width:100%;
		gap:30px;
		flex-wrap:nowrap;
		margin-top:40px;
	}
	.specials p.headline_specials{
		line-height:1.1em;
		color:white;
		padding-right:60px;
		font-family:rc, sans-serif;
		font-size:24px;
		margin-bottom:0.5em;
	}
	.specials .item{
		width:100%;
		position:relative;
		line-height:1px;
		margin-bottom:20px;
		border-radius:15px;
		overflow:hidden;
	}
		.specials.specials_page .item{
			width:50%;
		}
		.specials .item.freundinnen_special{
			border:10px solid rgb(196,196,196);
		}
		.specials .item.herbst_special{
			border:10px solid rgb(203,129,75);
		}
		.specials .item.wintergluehen{
			border:10px solid rgb(136,150,187);
		}
		.specials .item.fruehling{
			border:10px solid rgb(148,142,170);
		}
		.specials .item h2{
			position:absolute;
			left:50%;
			top:50%;
			transform:translate(-50%,-50%);
			font-family:rc, sans-serif;
			font-size:40px;
			font-weight:900;
			background-color:#C4C4C4;
			background-color:rgba(196,196,196,.8);
			padding:20px 40px;
			border-radius:0px;
			color:white;
			white-space:nowrap;
		}
			.specials .item.herbst_special h2{
				background-color:rgba(203,129,75,.8);
			}
			.specials .item.wintergluehen h2{
				background-color:rgba(136,150,187,.8);
			}
			.specials .item.fruehling h2{
				background-color:rgba(148,142,170,.8);
			}
		.specials .item h2 span{
			font-family:lobster, sans-serif;
			font-weight:500;
			opacity:1;
		}
		.specials .item .img{
			display:flex;
			flex-wrap:wrap;
		}
			.specials .item .img img{
				width:50%;
			}
			
			
.layer_center_special .sbc_h{
	font-family:lobster, sans-serif;
	font-size:48px;
	margin:0;
	line-height:1em;
}
			

@media(max-width:960px){
	.specials.specials_page{
		flex-wrap:wrap;
	}
	.specials.specials_page .item{
		width:100%;
	}
}

@media(max-width:600px){
	.specials .item h2{
		font-size:30px;
		padding:15px 20px;
	}
	.specials p.headline_specials{
		font-size:20px;
	}
}
@media(max-width:480px){
	.specials .item h2{
		font-size:26px;
		padding:10px 10px;
	}
	.specials p.headline_specials{
		font-size:18px;
	}
	.specials .item.freundinnen_special{
		border:5px solid rgb(196,196,196);
	}
	.specials .item.herbst_special{
		border:5px solid rgb(203,129,75);
	}
	.specials p.headline_specials br{
		display:none;
	}
}

		


