@font-face {
    font-family: 'source_sans_prolight';
    src: url('fonts/sourcesanspro/sourcesanspro-light-webfont.woff2') format('woff2'),
         url('fonts/sourcesanspro/sourcesanspro-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'source_sans_proregular';
    src: url('fonts/sourcesanspro/sourcesanspro-regular-webfont.woff2') format('woff2'),
         url('fonts/sourcesanspro/sourcesanspro-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'source_sans_prosemibold';
    src: url('fonts/sourcesanspro/sourcesanspro-semibold-webfont.woff2') format('woff2'),
         url('fonts/sourcesanspro/sourcesanspro-semibold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'open_sansbold';
    src: url('fonts/open_sans/opensans-bold-webfont.woff2') format('woff2'),
         url('fonts/open_sans/opensans-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'open_sanslight';
    src: url('fonts/open_sans/opensans-light-webfont.woff2') format('woff2'),
         url('fonts/open_sans/opensans-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'open_sansregular';
    src: url('fonts/open_sans/opensans-regular-webfont.woff2') format('woff2'),
         url('fonts/open_sans/opensans-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'open_sanssemibold';
    src: url('fonts/open_sans/opensans-semibold-webfont.woff2') format('woff2'),
         url('fonts/open_sans/opensans-semibold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

:root{
	--header-clr: #DBCC91;
}

html{
	-ms-text-size-adjust: 100%;
  	-webkit-text-size-adjust: 100%;
}

html, body{
	height: 100%;
	margin: 0;
	padding: 0;
}

body{
	color: #4a4a48;
	font-family: 'open_sansregular', Arial;
	font-size: 1em;
	background-color: #DEDFD1;
	/*overflow-x: hidden;
	overflow-y: auto;*/
}

ul{
	margin: 0;
	padding-left: 25px;
}

a{
	color: #be290c;
	text-decoration: none;
	cursor: pointer;
}

img{
	border: none;
	border-radius: 10px;
}

#fancybox-outer, #fancybox-content{
	border-radius: 10px;
}

#header_red img{
	border-radius: 0;
}

p{
	margin-top: 0;
}

hr{
	border: none;
	height: 1px;
	background-color: #cccccc;
	margin: 20px 0;
}

h1,h2,h3,h4,h5{
	margin: 0;
	color: #4a4a48;
}

h1{
	font-size: 1.667em;
	margin-bottom: 20px;
	line-height: normal;
	font-weight: normal;
	text-transform: uppercase;
}

.infobox h1{
	font-size: 1.444em;
	margin-bottom: 10px;
}

h2{
	font-size: 1.667em;
	margin-bottom: 20px;
	line-height: normal;
	font-weight: normal;
	/* text-transform: uppercase; */
}

h3{
	font-size: 1.111em;
	margin-bottom: 5px;
	font-weight: normal;
}

h4{
	font-size: 1em;
	margin-bottom: 5px;
}

h5{
	font-size: 1em;
	margin-bottom: 5px;
}

.clear, .clear_5, .clear_10, .clear_15, .clear_20, .clear_25, .clear_30, .clear_35, .clear_40, .clear_45, .clear_50{
	display: block;
	clear: both;
}

.clear_5{
	height: 5px;
}

.clear_10{
	height: 10px;
}

.clear_15{
	height: 15px;
}

.clear_20{
	height: 20px;
}

.clear_25{
	height: 25px;
}

.clear_30{
	height: 30px;
}

.clear_35{
	height: 35px;
}

.clear_40{
	height: 40px;
}

.clear_45{
	height: 45px;
}

.clear_50{
	height: 50px;
}

.clrfix:after{
	content: ".";
	height: 0px;
	visibility: hidden;
	clear: both;
	display: block;
}

.last{
	margin-right: 0;
}

.input{
	padding-right: 12px;
	margin-bottom: 10px;
}

label{
	line-height: 18px;
}

input[type=text], input[type=password], textarea{
	padding: 3px 5px;
	border: 1px solid #cccccc;
	width: 100%;
	font-family: 'signika_regular'
	color:#666666
}

textarea{
	resize: vertical;
}

input[type=text]:focus, input[type=password]:focus, textarea:focus{
	border: 1px solid #555555;
}

select{
	padding: 2px 2px 2px 2px;
	border: 1px solid #cccccc;
	font-family: 'signika_regular';
	font-size: 18px;
	color:#666666;
}

select option{
	padding-right: 10px;
	font-family: 'signika_regular';
	font-size: 18px;
	border: 1px solid #cccccc;
	color: #666666;
}

input[type=submit], input[type=button]{
	background-image: none;
	background-color: #be290c;
	color: #ffffff;
	border: 1px solid #be290c;
	padding: 7px 30px;
	cursor: pointer;
	font-size: 18px;
	font-family: 'signika_regular';
}

a.button{
	display: block;
	float: left;
	background-color: #be290c;
	color: #ffffff;
	border: 1px solid #be290c;
	padding: 5px 20px;
	text-decoration: none;
	text-align: center;
	height: 20px;
	line-height: 20px;
	font-size: 18px;
}

a.button.toggle_layout_content_edit_mode{
	float: none;
	padding: 15px 20px;
}

a.button.grey{
	background-color: #eee;
	border: 1px solid #ccc;
	color: #4a4a48;
}

#meta_edit{
	position: fixed;
	top: -320px;
	right: 0;
	border: solid #cccccc;
	border-width: 0 0 1px 1px;
	background-color: #ffffff;
	padding: 20px 20px 10px 20px;
	width: 1000px;
	border-radius: 0 0 0 5px;
	height: auto;
	z-index: 1001;
}

#meta_edit_button{
	position: absolute;
	bottom: -29px;
	right: 0;
	font-size: 14px;
	line-height: 18px;
	border: solid #cccccc;
	border-width: 0px 0px 1px 1px;
	border-radius: 0 0 0 5px;
	background-color: #ffffff;
	padding: 5px 10px;
	cursor: pointer;
	z-index: 101;
}

.infobox_fehler {
    background-color: #eee;
    background-image: url("../img/style/icon_fail.png");
    background-position: 20px 20px;
    background-repeat: no-repeat;
    border: 2px solid #ccc;
    border-radius: 5px;
    color: #6d6d6d;
    left: 50%;
    margin-left: -200px;
    min-height: 150px;
    padding: 25px 20px 20px 140px;
    position: fixed;
    top: 30%;
    width: 260px;
    z-index: 999;
}

.infobox_fehler .info_close{
	position: absolute;
	top: 10px;
	right: 10px;
	background-color: #6d6d6d;
	color: #ffffff;
	width: 20px;
	height: 20px;
	line-height: 20px;
	font-size: 12px;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
}

.infobox_erfolg .info_close{
	position: absolute;
	top: 10px;
	right: 10px;
	background-color: #6d6d6d;
	color: #ffffff;
	width: 20px;
	height: 20px;
	line-height: 20px;
	font-size: 12px;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
}

.infobox_erfolg{
	position: fixed;
	top: 30%;
	left: 50%;
	border: 2px solid #ccc;
	padding: 25px 20px 20px 140px;
	background-color: #eee;
	color: #6d6d6d;
	margin-left: -200px;
	width: 260px;
	border-radius: 5px;
	z-index: 999;

	background-image: url('../img/style/icon_ok.png');
	background-repeat: no-repeat;
	background-position: 20px 20px;
	min-height: 150px;
}

.infobox_fehler ul, .infobox_erfolg ul{
	margin: 5px 0px 0px 0px;
	padding-left: 35px;
}

#modal .save_button, #modal .cancel_button {
	float: right;
	width: auto;
	padding: 2px 10px;
	text-align: center;
	font-size: 14px;
	border: solid #93A2B2;
	border-width: 1px 2px 2px 1px;
	border-radius: 5px;
	margin-left: 10px;
	cursor: pointer;
	background-color: #ffffff;
	color: #383838;
	box-shadow: none;
}

.changeable {
	position: relative;
	min-height: 60px;
}

.edit_content_button {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	border: 1px solid #cccccc;
	padding: 5px 20px;
	background-color: #ffffff;
	cursor: pointer;
	color: #bbbbbb !important;
	text-decoration: none;
	font-size: 14px;
}

.edit_content_button:hover {
	color: #555555 !important;
	text-decoration: none;
	border: 1px solid #555555;
}

.login_form{
	display: block;
	max-width: 300px;
	margin: 0 auto;
	padding: 30px 0;
}

#menue_bar{
	display: none;
	height: 50px;
	background-color: #BE290C;
	line-height: 50px;
	color: #fff;
}

#menue_icon{
	display: block;
	float: left;
	width: 50px;
	height: 50px;
	line-height: 49px;
	font-size: 2.8em;
	text-align: center;
}

#menue_text{
	display: block;
	margin-left: 50px;
	font-size: 1.4em;
	padding-left: 10px;
}

#gesamt{
	background-color: #FFFFED;
}

.layout{
	display: block;
	max-width: 1220px;
	margin: 0 auto;
}

.content{
	padding: 30px 0;
	min-height: 300px;
}

.content:after{
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
}

.main_navi{
	display: block;
	background-color: #4a4a48;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 999;
}

#main_navi_placeholder{
	height: 40px;
}

.main_navi ul{
	display: flex;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.main_navi ul>li{
	flex-grow: 1;
    position: relative;
    border-left: 1px solid #30302f;
    border-right: 1px solid #6a6a6a;
    height: 40px;
}

.main_navi ul>li.first_el{
	border-left: 0;
}

.main_navi ul>li.last_el{
	border-right: 0;
}

.main_navi ul>li>a{
	color: #fff;
	display: block;
	padding: 9px 0px;
	text-align: center;
}

.main_navi ul>li>ul{
	display: none;
	position: absolute;
	top: 40px;
	left: -1px;
	background-color: #4a4a48;
}

.main_navi ul>li:hover>ul{
	display: block;
}

.main_navi ul>li>ul>li{
	display: block;
	float: none;
	min-width: 300px;
	border-top: 1px solid #6a6a6a;
	height: 30px;
}

.main_navi ul>li>ul>li>a{
	display: block;
	white-space: nowrap;
	padding: 3px 20px;
	border-top: 1px solid #30302f;
	font-size: 0.9em;
	text-align: left;
}

.main_navi ul>li>ul>li>ul{
	display: none;
	position: absolute;
	top: -1px;
	left: 300px;
	background-color: #5f5f5c;
}

.main_navi ul>li>ul>li>ul.right{
	left: auto;
	right: 300px;
}

.main_navi ul>li>ul>li>ul.right>li{
	min-width: 150px;
}

.main_navi ul>li>ul>li:hover>ul{
	display: block;
}

.main_navi ul>li>ul>li:hover>ul li{
	display: block;
	border-left: 1px solid #6a6a6a;
}

.main_navi ul>li>ul>li:hover>ul li a{
	display: block;
	border-left: 1px solid #30302f;
}

#header_red{
	background-color: var(--header-clr);
	position: relative;
}

#header_red > .layout{
	display: grid;
	grid-template-columns: 256px 1fr 602px;
}

#header_red > .layout > *{
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}

.logo_text_title{
	text-transform: uppercase;
	margin-bottom: 15px;
	font-size: 1.2em;
	text-align: center;
}

@media screen and (max-width: 610px){
	.logo_text_title{
		font-size: 1.2em;
	}
}

.logo_text_orte{
	font-size: 0.9em;
}

a#logo{
	display: block;
}

a#logo img{
	display: block;
	width: 100%;
}

#logo-hover-text, #logo_text-hover-text{
	position: absolute;
	top: 0;
	right: -2px;
	width: 604px;
	height: 238px;
	z-index: 90;
	background-color: rgba(255,255,255,0.8);
	display: none;
	align-content: center;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	color: #4a4a48;
}

#logo-hover-text > div, #logo_text-hover-text > div{
	max-width: 90%;
}

#header_red.logo_hover #bildwechsel #logo-hover-text{
	display:flex;
}

#header_red.logo_text_hover #bildwechsel #logo_text-hover-text{
	display:flex;
}

#bildwechsel{
	position: relative;
	display: block;
	float: right;
	z-index: 80;
}

#bildwechsel .cycle-slideshow{
	position: relative;
	z-index: 0;
}

#bildwechsel img{
	display: block;
	width: 602px;
	height: 238px;
}

.spruch_des_tages_small{
	background-color: #deded0;
	padding: 10px 0;
}

.spruch_des_tages{
	background-color: #deded0;
	padding: 10px 0;
}

.spruch_des_tages_head{
	display: none;
	text-transform: uppercase;
	font-size: 1.2em;
	font-family: 'open_sanslight';
}

.spruch_des_tages_text{
	font-weight: bold;
	font-style: italic;
	font-size: 1.0em;
}

.fc-view-container{
	background-color: #fff;
}

table.auflistung{
	width: 100%;
	border-collapse: collapse;
}

table.auflistung thead tr td{
	background-color: #be290c;
	color: #fff;
	font-weight: bold;
	padding: 10px;
	text-align: left;
	border: 1px solid #be290c;
}

table.auflistung tbody tr td{
	padding: 5px 10px;
	text-align: left;
	border: 1px solid #ccc;
	vertical-align: top;
}

table.auflistung tbody tr:nth-child(2n) td{
	background-color: #eee;
}
table.auflistung tbody tr td.aktionsspalte, table.auflistung thead tr td.aktionsspalte{
	width: 1px;
	text-align: right;
}

table.auflistung tbody tr td.aktionsspalte.zwei, table.auflistung thead tr td.aktionsspalte.zwei{
	width: 50px;
}

table.auflistung tbody tr td.aktionsspalte.drei, table.auflistung thead tr td.aktionsspalte.drei{
	width: 75px;
}

table.auflistung tbody tr td.online_col, table.auflistung thead tr td.online_col{
	width: 1px;
	text-align: center;
	white-space: nowrap;
}

.galerie{
	display: block;
	margin-left: -20px;
}

.galerie ul{
	display: block;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.galerie ul:after{
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
}

.galerie ul li{
	display: block;
	float: left;
	margin-left: 20px;
	margin-bottom: 20px;
}

.galerie ul li a{
	display: block;
	border: 1px solid #ccc;
	border-radius: 14px;
	padding: 5px;
}
.galerie ul li a img{
	display: block;
}

.index_boxen{
	margin-left: -20px;
	padding-top: 30px;
	padding-bottom: 30px;
}

.index_boxen:after{
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
}

.index_box_wrap{
	display: block;
	float: left;
	
	width: 33.33333333%;	
}

a.index_box{
	display: block;
	margin-left: 20px;
	color: #4a4a48;
	text-align: center;
}

a.index_box .index_box_head{
	display: inline;
	text-transform: uppercase;
	font-family: 'open_sanslight';
	font-size: 1.3em;
	padding-bottom: 5px;
	text-overflow: ellipsis;
	height: 30px;
	white-space: nowrap;
	overflow: hidden;
	text-align: center;
}

a.index_box .index_box_image{
	display: inline-block;
}

a.index_box .index_box_image img{
	width: 100%;
	max-width: 330px;
	/* max-height: 177px; */
	display: block;
}

a.index_box .index_box_text{
	display: none;
	padding-top: 5px;
	padding-left: 10px;
	padding-right: 10px;
	max-width: 330px;

}

.kreuz_col_wrap{
	padding-top: 150px;
	min-height: 308px;
	position: relative;
}

.kreuz_col_left_wrap{
	display: block;
	float: left;
	width: 33.3333333%;
	z-index: 1;
	position: relative;
}

.kreuz_col_left{
	padding-right: 20px;
}

.kreuz_col_right_wrap{
	display: block;
	float: right;
	width: 66.66666666666%;
	z-index: 1;
	position: relative;
}

.kreuz_col_right{
	padding-left: 80px;
}

.kreuz{
	display: block;
	position: absolute;
	top: 0;
	left: 33%;
	margin-left: -80px;
	width: 427px;
	height: 458px;
	z-index: 0;
}

a.kreuz_label{
	position: absolute;
	top: 18px;
	left: 33%;
	margin-left: 70px;
	width: 260px;
	height: 45px;
	z-index: 1;
	background-color: #C4C4B8;
	line-height: 45px;
	text-transform: uppercase;
	font-family: 'open_sanslight';
	font-size: 1.2em;
	text-align: center;
	color: #fff;
	border-radius: 10px;
}

#footer{
	padding-top: 25px;
}

#footer a{
	color: #4a4a48;
}

#navi_bottom{
	display: block;
	float: left;
}

#navi_bottom a{
	margin: 0 5px;
}

#copyright{
	display: block;
	float: right;
	color: #9F9F95;
	padding-bottom: 40px;
	text-align: right;
}

#copyright a{
	color: #9F9F95;
}



.col_left_wrap{
	display: block;
	float: left;
	width: 60%;
}

.col_left{
	padding-right: 20px;
}

.col_right_wrap{
	display: block;
	float: left;
	width: 40%;
}

.col_right{
	padding-left: 20px;
}


.acc_head{
	padding: 10px;
	background-color: var(--header-clr);
	cursor: pointer;
	color: #fff;
	margin-top: 1px;
}

.acc_content{
	display: none;
	padding: 10px;
}

.acc_head p{
	margin-bottom: 0;
}

.kirche_navi ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.kirche_navi ul li a{
	background-image: url("../img/style/link_pfeil.png");
    background-position: 10px 14px;
    background-repeat: no-repeat;
    /* border-bottom: 1px solid #ccc; */
    border-bottom: none;
    color: #434343;
    display: block;
    font-size: 1em;
    padding: 10px 10px 10px 35px;
    position: relative;
}

.kirche_navi ul li a.aktiv{
	background-image: url("../img/style/link_pfeil_aktiv.png");
	background-color: #f8f8f8;
}

.formular_left_wrap, .formular_right_wrap{
	display: block;
	width: 50%;
	float: left;
}

.formular_left_wrap{
	clear: left;
}

.formular_left{
	padding-right: 20px;
}

.formular_right{
	padding-left: 20px;
}

.plz_input{
	display: block;
	float: left;
	width: 70px;
}

.ort_input{
	margin-left: 80px;
}

#kontakt_form textarea[name=nachricht]{
	height: 300px;
}

.captcha{
	display: block;
	clear: both;
	float: left;
	width: 140px;
}

.captcha_input{
	display: block;
	margin-left: 140px;
}

.captcha_input input[type=text]{
}

.datenschutz_checkbox{
	display: block;
	float: left;
	width: 20px;
}

.datenschutz_checkbox_text{
	margin-left: 30px;
}

.formular_submit_wrap{
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
}

.formular_submit{
	padding-left: 20px;
}

.formular_submit input[type=submit]{
	width: 100%;
}

.has_submit_holder{
	position: relative;
	padding-bottom: 3em;
	margin-bottom: 15px;
}


.kontakt_right_wrap{
	display: block;
	float: right;
	width: 40%;
}

.kontakt_left_wrap{
	display: block;
	float: left;
	width: 60%;
}

.kontakt_right{
	padding-left: 20px;
}

.kontakt_left{
	padding-right: 20px;
}

#gottesdienst_kalender{
	/*padding-right: 20px;*/
}

#gottesdienst_kalender .gottesdienst_head{
	display: block;
	background-color: #BE290C;
	padding: 10px;
	color: #fff;
	font-size: 20px;
	margin-top: 20px;
}

#gottesdienst_kalender .gottesdienst_head:first-child{
	margin-top: 0;
}

#gottesdienst_kalender .gottesdienst_zeiten{
	background-color: #fff;
}

.gottestdienst_zeit_item {
    margin-bottom: 10px;
    padding: 10px;
    border-bottom: 1px solid #ccc;
}

.gottestdienst_zeit_item:after{
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
}

.gottesdienst_zeit{
	float: left;
	width: 80px;
}

.gottesdienst_daten{
	/*margin-left: 85px;*/

}

.gottesdienst_daten img{
	margin-left: 20px;
}

.go_to_top{
	display: none;
	width: 19px;
	height: 16px;
	padding: 10px;
	cursor: pointer;
	background-color: #DEDFD1;
	position: fixed;
	right: 10px;
	bottom: 120px;
	background-image: url('../img/style/nach_oben.png');
	background-position: center center;
	background-repeat: no-repeat;
}

.fc-view-container{
	background-color: #ffffff;
}


@media screen and (max-width: 1230px)
{
	.layout{
		padding: 0 15px;
	}

	#header_red .layout{
		padding: 0;
	}

	.main_navi .layout{
		padding: 0;
	}

	.main_navi ul li.navi_startseite{
		display: none;
	}
}

@media screen and (max-width: 1140px){
	a.index_box .index_box_head{
		text-transform: none;
	}
}

@media screen and (max-width: 1130px)
{
	#header_red > .layout{
		grid-template-columns: 1fr 1fr;
		max-width: 600px;
		margin: 0 auto;
	}

	#header_red > .layout > *:nth-child(3){
		grid-row-start: 2;
		grid-column-end: span 2;
	}
}

@media screen and (max-width: 920px)
{
	.main_navi ul li a{
		padding: 18px 15px;
	}

	.main_navi ul li{
		height: 59px;
	}

	#main_navi_placeholder{
		height: 59px;
	}

	.main_navi ul li ul{
		top: 59px;
	}
}

@media screen and (max-width: 900px)
{
	#navi_bottom{
		float: none;
		width: auto;
		line-height: 1.5em;
		text-align: center;
	}

	#copyright{
		float: none;
		width: auto;
		line-height: 1.5em;
		text-align: center;
		padding-top: 30px;
	}

}

@media screen and (max-width: 860px)
{
	.index_box_wrap{
		width: 50%;
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 820px)
{
	.kontakt_left_wrap{
		float: none;
		width: auto;
	}

	.kontakt_right_wrap{
		float: none;
		width: auto;
		margin-bottom: 30px;
	}

	.kontakt_left{
		padding-right: 0;
	}

	.kontakt_right{
		padding-left: 0;
	}
}

@media screen and (max-width: 600px)
{
	#header_red > .layout > *:nth-child(3){
		display: none;
	}

}

@media screen and (max-width: 520px)
{
	#header_red > .layout{
		grid-template-columns: 1fr;
		padding-bottom: 15px;
	}
}

@media screen and (max-width: 1140px)
{
	.main_navi .layout{
		padding: 0;
	}

	#menue_bar{
		display: block;
		cursor: pointer;
	}

	#main_navi_placeholder{
		height: 50px;
	}

	.main_navi{
		position: absolute;
	}

	.main_navi ul {
		display: none;
		margin: 0;
	}

	.main_navi ul li{
		display: block;
		float: none;
		margin: 0;
		border-top: 1px solid #ccc;
		padding: 0;
		height: auto;
		border-left: none;
		border-right: none;
	}

	.main_navi ul li.first_el{
		display: block;
	}

	.main_navi ul li a{
		display: block;
		padding: 10px 20px 10px 15px;
		text-align: left;
		background-color: #BE290C;
		color: #fff;
	}

	.main_navi ul li ul{
		display: block;
		position: relative;
		top: 0;
		left: 0;
	}

	.main_navi ul li ul li{
		display: block;
		float: none;
		margin: 0;
		border-top: 1px solid #ccc;
		padding: 0;
		height: auto;
	}

	.main_navi ul li ul li a{
		display: block;
		padding: 10px 20px 10px 30px;
		text-align: left;
		font-size: 0.9em;
		background-color: #e13b1a;
		border-top: 0;
	}

	.main_navi ul li ul li ul{
		display: block;
		position: relative;
		top: 0;
		left: 0;
		
	}

	.main_navi ul > li > ul > li > ul.right{
		right: 0;
	}

	.main_navi ul>li>ul>li>ul>li, .main_navi ul>li>ul>li:hover ul li{
		display: block;
		float: none;
		margin: 0;
		border-top: 1px solid #ccc;
		padding: 0;
		height: auto;
		border-left: none;
	}

	.main_navi ul>li>ul>li>ul>li>a, .main_navi ul>li>ul>li:hover ul li a{
		display: block;
		padding: 10px 20px 10px 50px;
		text-align: left;
		font-size: 0.9em;
		background-color: #ec6449;
		border-top: 0;
		border-left: none;
	}
}

@media screen and (max-width: 755px)
{
	.col_left_wrap{
		float: none;
		width: auto;
	}

	.col_right_wrap{
		float: none;
		width: auto;
		padding-top: 30px;
	}

	.col_left{
		padding-right: 0;
	}

	.col_right{
		padding-left: 0;
	}

	




	.kreuz{
		left: 0;
		margin-left: 0;
	}

	.kreuz_label{
		left: 152px;
		margin-left: 0;
	}

	.kreuz_col_left_wrap{
		float: none;
		width: auto;
		padding-left: 160px;
		margin-bottom: 40px;
	}

	.kreuz_col_right_wrap{
		float: none;
		width: auto;
		padding-left: 160px;
	}

	.kreuz_col_right{
		padding-left: 0;
	}
}



@media screen and (max-width: 585px)
{
	a.index_box .index_box_head{
		display: block;
	}

	.index_box_wrap{
		width: auto;
		float: none;
	}

	a.index_box .index_box_image img{
		max-height: none;
	}

	.kreuz{
		display: none;
	}

	.kreuz_col_left_wrap{
		padding-left: 0;
	}

	a.kreuz_label{
		display: block;
		position: relative;
		top: 0;
		left: 0;
		right: auto;
		margin-left: 0;
		margin-bottom: 20px;
	}

	.kreuz_col_wrap{
		padding-top: 0;
	}

	.kreuz_col_right_wrap{
		padding-left: 0;
	}

	.kreuz_col_right table{
		display: none;
	}
}

@media screen and (max-width: 520px)
{
	.formular_left_wrap{
		float: none;
		width: auto;
	}

	.formular_right_wrap{
		float: none;
		width: auto;
	}

	.formular_left{
		padding-right: 0;
	}

	.formular_right{
		padding-left: 0;
	}
}

@media screen and (max-width: 480px)
{
	.kreuz_col_left h2, .kreuz_col_right h2{
		font-size: 1.4em;
	}
}

.gottesdienstkalender_legende{
	margin: 20px 0;
}

.gottesdienstkalender_legende > .item{
	display: inline-block;
	margin-right: 30px;
	font-size: 12px;
	position: relative;
	padding-left: 20px;

}

.gottesdienstkalender_legende > .item::before{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 100%;
	background-color: #deded0;
	content: "";
}

.gottesdienstkalender_legende > .item.mochau::before{
	background-color: #faa31d;
}

.gottesdienstkalender_legende > .item.doebeln::before{
	background-color: #e6144c;
}

.gottesdienstkalender_legende > .item.jahnatal::before{
	background-color: #3ead48;
}

.gottesdienstkalender_legende > .item.technitz::before{
	background-color: #1f5d98;
}


.color_rot{
	color: #e6144c;
}

.color_blau{
	color: #1f5d98;
}

.color_gelb{
	color: #faa31d;
}

.color_gruen{
	color: #3ead48;
}

.tageslosung_buttons{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 10px;
	align-items: center;
}

.tageslosung_button{
	/* background-color: hsl(60, 18%, 80%); */
	/* border: 1px solid hsl(60, 18%, 65%); */
	/* padding: 5px 10px; */
	font-size: 14px;
	cursor: pointer;
}

.tageslosung_button.active{
	/* background-color: hsl(60, 18%, 70%); */
	font-weight: bold;
}


/* Layout Contents */
#layout_auswahl{
	width: 800px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.layout_contents{
	box-sizing: border-box;
}

.layout_contents .layout_content_wrap{
	margin-bottom: 1rem;
}

.layout_content_wrap{
	position: relative;
}

.delete_layout_content{
	position: absolute;
	top: 50px;
	left: 50%;
	transform: translate(-50%, -50%);
	box-sizing: border-box;
	height: 40px;
	display: none;
	align-items: center;
	padding: 0.3em 1em;
	background-color: red;
	color: #fff;
	border: solid #ccc;
	border-width: 2px 2px 2px 2px;
	cursor: pointer;
}

.delete_layout_content:hover{
	border: solid red;
}

.layout_contents.editable .layout_content_wrap:hover .delete_layout_content{
	display: flex;
}

.layout_contents .add_layout{
	display: none;
	justify-content: center;
	align-items: center;
	padding: 0.5rem;
	font-size: 3rem;
	font-weight: bold;
	background-color: #fff;
	border: 1px solid #ccc;
	cursor: pointer;
	margin-bottom: 1rem;
}

.layout_contents.editable .add_layout{
	display: flex;
}

.layout_element{
	min-height: 1rem;
	width: 100%;
	position: relative;
}

.layout_contents.editable .layout_element,
#modal .layout_element{
	outline: 2px solid #ccc;
}

.layout_element_edit{
	box-sizing: border-box;
	position: absolute;
	top: -40px;
	right: -2px;
	height: 40px;
	display: none;
	align-items: center;
	padding: 0.3em 1em;
	background-color: #3ead48;
	color: #fff;
	border: solid #ccc;
	border-width: 2px 2px 0 2px;
	cursor: pointer;
}

.layout_contents.editable .layout_element:hover .layout_element_edit{
	display: flex;
}

.layout_element_edit:hover{
	border: solid red;
	border-width: 2px 2px 0 2px;
}

.layout_content_wrap{
	display: grid;
	gap: 1rem;
}

.layout_content_wrap:has(.delete_layout_content:hover) .layout_element{
	outline: 2px solid red;
}

.layout_element:has(.layout_element_edit:hover){
	outline: 2px solid red;
}

#layout_auswahl .layout_content_wrap{
	padding: 1rem;
	border: 1px solid #ccc;
	cursor: pointer;
}

#layout_auswahl .layout_content_wrap:hover{
	border: 1px solid #000;
	background-color: #f5f5f5;
}

.layout_content_wrap[data-layout="1_1"]{
	grid-template-columns: 1fr 1fr
}

.layout_content_wrap[data-layout="1_1_1"]{
	grid-template-columns: 1fr 1fr 1fr
}

.layout_content_wrap[data-layout="2_1"]{
	grid-template-columns: 2fr 1fr
}

.layout_content_wrap[data-layout="1_2"]{
	grid-template-columns: 1fr 2fr
}

.layout_content_wrap[data-layout="1_1_1_1"]{
	grid-template-columns: 1fr 1fr 1fr 1fr
}

.toggle_layout_content_edit_mode:after{
	content: "Bearbeitungsmodus aktivieren";
}

.toggle_layout_content_edit_mode.active:after{
	content: "Bearbeitungsmodus deaktivieren";
}

@media screen and (max-width: 700px){
	.layout_content_wrap[data-layout="1_1"]{
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 1000px){
	.layout_content_wrap[data-layout="1_1_1"]{
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 1000px){
	.layout_content_wrap[data-layout="1_1_1_1"]{
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 700px){
	.layout_content_wrap[data-layout="1_1_1_1"]{
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 900px){
	.layout_content_wrap[data-layout="2_1"],
	.layout_content_wrap[data-layout="1_2"]{
		grid-template-columns: 1fr;
	}
}