html{
	overflow:hidden;
    height:100%;
    padding:0px;
}
body{
    font-family: '__Alegreya_5';
	font-weight: 400;
	font-style: normal;
	font-size: 20px;
	background-color: #FFFFFF;
	overflow:hidden;
    height:100%;
    padding:0px;
    margin:0px;
}

.s-lightbox-page-info{
	display:none !important;
}

.mmpage{
	cursor:pointer;
}

/* ARCHIVE */
.archivenav{
    width:460px;
    height:42px;
    position:relative;
    font-size:22px;
}

.archiveyear{
    display:inline-block;
    height:36px;
    padding-top:5px;
    background-color:#e6e6e6;
    padding-left:10px;
    padding-right:10px;
    font-size:22px;
    width:124px;
    position:relative;
    vertical-align:top;
}

.archivemonth{
    display:inline-block;
    height:36px;
    padding-top:5px;
    background-color:#e6e6e6;
    margin-left:5px;
    padding-left:10px;
    padding-right:10px;
    font-size:22px;
    width:170px;
    position:relative;
    vertical-align:top;
}

.pmonthwrap{
    position:absolute;
    left:10px;
}
.mmonthwrap{
    position:absolute;
    left:25px;
    width:138px;
    text-align:center;
    cursor:pointer;
}
.nmonthwrap{
    position:absolute;
    right:10px;
}

.pyearwrap{
    position:absolute;
    left:10px;
}
.myearwrap{
    position:absolute;
    left:25px;
    width:92px;
    text-align:center;
    cursor:pointer;
}
.nyearwrap{
    position:absolute;
    right:10px;
}

a.archivearrow:link,a.archivearrow:active,a.archivearrow:visited,a.archivearrow:hover{
    color:#979797;
}
.archivearrow:hover{ color: #e4003f; }
.darkgrey{ color:#979797; }

#archiveyears,#archivemonths{
    width:343px;
    height:290px;
    background-color:#e6e6e6;
    position:absolute;
    left:60px;
    top:90px;
    z-index:1000;
    display:none;
    overflow:auto;
}

#curyear,#curmonth{
    cursor:pointer;
}

.archiveinner{
    width:calc(100% - 30px);
    padding:15px;
    padding-right:0px;
    padding-bottom:0px; 
    color:#979797;
    font-size:22px;
}

.archiveitem{
    display:inline-block;
    cursor:pointer;
    margin-right:22px;
    margin-bottom:14px;
}

.bkm{ height:45px; }
.ck{ height:50px; }

.mmlisttext,.mmlisttext_r{
    overflow: hidden;
    width:calc(100% - 20px);
    padding-right:20px;
	hyphens:unset;
}
.mmlistdist_r{
    padding-left:20px;    
}

.mmlisttext p:First-Child, .mmlisttext_r p:First-Child { margin-top: 0; }

.mmlisttext_r{
    padding-right:0px;
    padding-left:20px;
}

.c-logo{ width:30%; }

.mmlistpicwrap,.mmlistpicwrap_left{
    /*width:50%;*/
    display:inline-block;
    text-align:right;
    overflow:hidden;
}
.mmlistpicwrap_left{
    text-align:left;
}

.mmlistpic{ 
    /*width:calc(100% - 2px);*/
    width:100%;
    border:1px solid #000000;
}

.metanav{
    position:absolute;
    right:25px;
    left:unset;
    top:15px;
    font-size:20px;
    text-align:unset;
    margin-left:unset;
}

a.metanavitem:link,a.metanavitem:visited,a.metanavitem:active,a.metanavitem:hover{
    text-decoration:none !important;
    font-size:16px;
}

a.metanavitem::before{
    content:" | ";
    color:#000000;
}

#filteritems{
    display:block;
    font-size:19px;
    line-height:26px;
    padding-left:10px;
    margin-top:-10px;
    display:none;
}

.filteritem,.bfilteritem{
    margin-top:6px;
    cursor:pointer;
}
.metanav a:nth-child(1)::before{ content:""; }

.navbox{
    padding:25px;
    padding-left:18px;
    min-height:200px;
    padding-bottom:0px;
}

.wwaddress{
    padding-left:25px;
    padding-top:25px;
}

a.navitem,a.burgernavitem{
    font-size:28px;
    display:block;
    margin-bottom:6px;
    text-decoration:none !important;
}

a.burgernavitem{
    font-size:25px;
    display:block;
    margin-bottom:5px;
    margin-left:20px;
}

#d_alttitle{
    /*text-align:center;*/
    /*width:50%;*/
    position:absolute;
    right:25px;
    bottom:0px;
    font-size:50px;
    display:block;
}

#sfield::placeholder { text-align: center; }

.nospace{
    margin:0px;
    padding:0px;
    margin-bottom:0px;
}

a:link,a:visited,a:active,a:hover{
	color:#000000;
	text-decoration:none;
}
a:hover{ text-decoration:none; }

.allcontainer{ }

a.is-active,a.is-current{ color:#e4003f; }

.red{ color: #e4003f !important; }

.mmlistbody > p{
    margin-top:0px;
}

a.is-activ>span,a.is-current>span{ line-height:0px; }

.slogo{
    vertical-align:top;
    border-right:7px solid #000000;
    border-bottom:3px solid #000000;
    width:145px;
    margin-top:-43px;
}

.slogowrap{
    background-color:#e4003f;
    border-right:7px solid #000000;
    border-bottom:1px solid #000000;
    width:145px;
    margin-top:0px;
    display:inline-block;
    background-repeat:no-repeat;
    height:100%;
    background-position:0px -22px;
    background-size:145px;
}

.svgblack{ fill:#000000; }
.svgred{ fill:#e4003f; }

#left{
    position:fixed;
    left:0px;
    top:104px;
    width:145px;
    height:calc(100% - 104px);
    border-right:7px solid #000000;
    background-color:#FFFFFF;
    display:block;
        z-index:60000001;
}

.content {
    position:fixed;
    overflow:auto;
    left:152px;
    top:103px;
    height:calc(100% - 106px);
    width:calc(100% - 276px);
    padding:25px;
    padding-left:60px;
    padding-right:60px;
    padding-top:40px;
}

.wwheader{
    position:absolute;
    left:0px;
    top:0px;
    width:100%;
	height:103px;
	background-color:#FFFFFF;
    border-bottom:1px solid #000000;
    z-index:9000000003;
}

.wwfooter{
    border-top:1px solid #000000;
    padding-top:16px;
    height:45px;
    position:absolute;
    bottom:0px;
    left:0px;
    z-index:60000000;
    display:none;
    width:100%;
    background-color:#FFFFFF;
}

.footerdist{
    height:110px;
}

.toplogowrapper{
    display:inline-block;
    position:relative;
    padding:0px;
	height:100%;
    background-color:#FFFFFF;
}

.toplogoouter{
    display:inline-block;
    position:absolute;
    top:10px;
    /*margin-right:15px; */
	height:81px;
    left:165px; 
}
    

.toplogo{ height:100%; }

.copyright,.copyright_small{
	position:absolute;
	left:20px;
	top:20px;
	font-size:14px;
	text-transform:uppercase;
}
.copyright_small{
	top:20px;
	font-size:14px;	
}

#burgermenu{
	position:absolute;
	right:0px;
	top:55px;
	height:0px;
	overflow:hidden;
	display:none;
	z-index:9000000001;
    background-color:#FFFFFF;
    width:200px;
    border:3px solid #000000;
    box-shadow: -5px 5px 15px rgba(0, 0, 0, 0.5);
    padding-top:15px;
}

.divider{
	display:inline-block;
	margin-left:10px;
	margin-right:10px;
}

#contentholder{
	position:absolute;
	right:0px;
	top:77px;
	width:0px;
	z-index:900000;
	background-color:#FFFFFF;
	border-left:2px solid black;
	overflow:hidden;
	/*transition: all 0.5s ease-out;*/
} 

.navline {
	width: 36px;
	height: 3px;
	margin: 0 0 10px 0;
	background-color:#000000;
	transition: all 0.5s ease-out;
}

#burgernav{
	cursor:pointer;
	transition: all 0.5s ease-out;
    position:absolute;
    left:6px;
    top:12px;
}

#burgernav_wrap{
	position:absolute;
	right:0px;
	top:0px;
    width:50px;
    height:50px;
    /*border:3px solid #000000;*/
    /* background-color:#dcdcdc; */
	display:none;
}

#burgernav.close { transform: rotate(180deg); }

/* three lines to make it an X */
#burgernav.close .navline:nth-child(1) {
	transform: rotate(45deg) translate(20px, 14px);
	width: 45px;
}

#burgernav.close .navline:nth-child(2) {
	opacity: 0;
}

#burgernav.close .navline:nth-child(3) {
transform: rotate(-45deg) translate(5px, 1px);
	width: 45px;
}

.filtericon{
	position:fixed;
	width:44px;
	height:44px;
	left:40px;
	top:120px;
	margin-left:-22,5px;
	z-index:19000000001;
}

a.footerlink{ text-decoration: underline; }

.hiddentemplate{ display:none; }

/* Listendatellung Orte */
.general_header{
	height:39px;
	margin-left:0px;
	margin-top:10px;
	position:relative;
	width:700px;
	padding-bottom:5px;
	font-size:36px;
	letter-spacing:2px;
	border-bottom: 9px solid #CCCCCC;
	margin-bottom:20px;
	font-family:'__Alegreya_5';
}

.general_title{
	font-weight:bold;
	font-size:28px;
	text-transform:uppercase;
	display:inline-block;
	letter-spacing: 1,1px;
	font-weight:700;
}

.add_before_options{
	display:inline-block;
}

#openfilter{ margin-right:8px; }

.list_ort_address{ margin-bottom:10px; }

/*Filter*/
.filterbutton_container{ width:680px; }

.filter_button,.filter_button_active{
	display:inline-block;
	border:1px solid #000000;
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
	cursor:pointer;
	font-size:16px;
	font-weight:bold;
}
.filter_button:hover{
	border:1px solid #0099ff;
}
.filter_button_active:hover{
	border:1px solid #000000;	
}

.filter_button_active{
	color:#0099ff;
	background-color:#f6f6f6;
}

.filtered_content{
	margin-left:20px;
	width:580px;
}

.filter_add_options{
	display:none;
	position:absolute;
	right:0px;
	top:1px;
	font-size:35px;
	font-weight:bold;
	cursor:pointer;
}

.filter_actionbuttons_container{
	margin-top:20px;
	margin-left:0px;
	width:700px;
	position:relative;
}

.filter_clear,.filter_show{
	display:inline-block;
	cursor:pointer;
	font-weight:600;
	color: #000000;
}
.filter_show{
	position:absolute;
	left:50%;
	margin-left:-50px;
}

.filter_show:hover{
	border:1px solid #0099ff;	
}

.filter_show{
	border:1px solid #000000;
	font-size:16px;
	padding-left:14px;
	padding-right:14px;
	padding-top:3px;
	padding-bottom:3px;
	font-weight:600;
}

.reset_img{
	width:30px;
	height:31px;
}
.reset_img:hover{
	fill:#0099ff;
}

.l_b{
	position:absolute;
	left:0px;
	height:10px;
	bottom:22px;
	width:340px;
}

.r_b{
	position:absolute;
	right:0px;
	height:10px;
	bottom:22px;
	width:340px;
}

.mmtmv{
    width: calc(100% - 2px);
    border:1px solid #000000;
}

.opic_x{
    /*
	width:200px;
	height:200px; 
    */
    
    aspect-ratio: 1 / 1; /* Perfect square */
    min-width: 0; 
    
    /*
	display:inline-block;
	margin:10px;
	background-position:center;
	background-size: cover;
	background-repeat:no-repeat;
	font-size:0px;
	line-height:0;
    */
    border:1px solid #000000;
}

.list_event_logo{
    width:100%;
    text-align:center;
}
.opic{ max-width:400px; } 
 
.plink{
	display:block;
	width:100%;
	height:100%;
}

/* Accordeon */
.accordeon_arrow_down,.accordeon_arrow_left{
	display:inline-block;
	width: 0;
	height: 0;
	margin-top:10px;
	margin-left:5px;
	cursor:pointer;
	transition: all 0.2s ease-out;
}
.accordeon_arrow_down {
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 10px solid #666666;
}

.accordeon_arrow_left {
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent; 
  	margin-left:5px;
	margin-top:7px;
	border-left:10px solid #666666;
}

.accordeon{
	width:99%;
	height:30px;
	border:2px solid #CCCCCC;
	background-color:#F3F3F3;
	font-size:16px;
	margin-bottom:15px;
	cursor:pointer;
	transition: all 0.5s ease-out;
	position:relative;
}
.accordeon_header{
	position:absolute;
	left:25px;
	top:3px;
	font-size:16px;
}

/* Animation für den rotierenden Kreis */
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* Content allgemein */
#ititle{
	position:absolute;
	top:10px;
	left:54px;
}

#close{
	position:absolute;
	right:20px;
	top:0px;
	cursor:pointer;
	font-size:40px;
	z-index:200;
	color: #000000;
}

/* Westwerk Messagebox */
.mm_button{
    background-color:#b8b8b8;
    text-transform:uppercase;
    width:60px;
    display:inline-block;
    cursor:pointer;
    margin-top:0px;
    font-size:15px;
}

.mm_messagesuccess{
    background-color:green;
}
.mm_messageerror{
    background-color:#e4003f;
}

.mm_messageicon{
    width:40px;
    height:40px;
    border-right:1px solid #000000;
}

.mm_messagepic{
    width:26px;
    height:26px;
    margin-top:7px;
    margin-left:7px;
}

.mm_messageheader{
    position:absolute;
    left:55px;
    top:7px;
    font-size:22px;
}

.mm_messagebody{
    width:calc(100% - 20px);
    height:90px;
    overflow:auto;
    padding-left:10px;
    padding-right:10px;
    padding-top:10px;
}

.mm_messagebuttonwrapper{
    position:absolute;
    left:0px;
    top:160px;
    text-align:center;
    width:100%;
}

.mm_messagewrap{
    background-color: rgba(80,80,80,0.9);
    position:fixed;
    left:0px;
    top:0px;
    width:100%;
    height:100%;
    z-index:999999999999999;
    display:none;
}

.mm_message{
    width:400px;
    height:200px;
    background-color:#FFFFFF;
    border:1px solid #000000;
    position:absolute;
    left:50%;
    top:50%;
    margin-left:-200px;
    margin-top:-100px;
}

.mm_messagetop{
    width:100%;
    height:40px;
    border-bottom:1px solid #000000;
    position:relative;
}


#preloader_wrapper,#mailoader_wrapper{
	/* background-color:#f9ed37; */
	background-color:#ffff00;
	z-index:2000000000000000001;
	position:fixed;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background-position:center;
	background-size: cover;
	background-repeat:no-repeat;
}
#mailoader_wrapper{
    position:absolute;
    background-color: rgba(255,255,255,0.9);
    display:none;
}

/* Container für den Preloader */
.preloader-container {
	display: flex;
    justify-content: center;
	align-items: center;
    height:100%;
	/*height: 100vh;*/
	background-color: transparent; /* Hintergrund ist transparent */
}
/* Der kreisförmige Preloader */
.preloader {
	width: 150px;
	height: 150px;
	/*border: 10px solid #ccc; */
	
	
	border: 10px solid #f9ed37;
	border-top-color: #3498db;
	border-radius: 50%;
	animation: spin 2s linear infinite;
}


#indicator{
	position:relative;
	width:32px;
	height:32px;
	border-radius:16px;
	background-color:#000000;
	color:#FFFFFF;
	font-weight:bold;
	text-align:center;
	font-size:15px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.indicator{
	position:relative;
	width:32px;
	height:32px;
	border-radius:16px;
	background-color:#000000;
	color:#FFFFFF;
	font-weight:bold;
	text-align:center;
	font-size:15px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.eventtype_wrapper{
    width:100%;
    height:50px;
}

.eventtype{
    font-size:2vw;
    float:right;
}

.eventteaser,.eventteaser_nbl{
    width:100%;
    min-height:150px;
    border-bottom:1px solid #000000;
    margin-bottom:30px;
    padding-bottom:20px;
    position:relative;
}
.nbl{ border-bottom:none; }

.mmlistbody{
    font-size:1.5vw;
    width:45%;
    display:inline-block;
    margin-right:4%;
    margin-top:5px;
    vertical-align:top;
}
.mmlistheader{
    font-size:2.1vw;
    margin-bottom:40px;
}


.eventbutton{
    font-size:1.3vw;
    float:right;
    border-radius:7px;
    margin-top:20px;
    margin-bottom:20px;
    padding-top:5px;
    padding-bottom:5px;
}

.eventbutton_outer{
    display:block;
    width:100%;
    height:30px;
    text-align:right;
    margin-bottom:20px;
    font-size:1.3vw;
}

.eventbutton_right{
    font-size:1.3vw;
    position:absolute;
    right:0px;
    bottom:0px;
}

.mmlistdate{
    font-size:2vw;
    margin-top:20px;
}


.mmlistbodywrap{
    /*
    position:relative;
    display:flex;
    flex-direction: row;   
    */
}

.mmlistcontentwrap,.mmlistcontentwrap_l{
    width:100%;
    position:relative;
    display:flex;
    flex-direction: row;
}

#s_alttitle{
    /* background-color:#d8d8d8; */
    border-bottom:1px solid #000000;
    height:60px;
    vertical-align:middle;
    font-size:30px;
    width:100%;
    display:none;
    position:absolute;
    left:0px;
    top:57px;
    z-index: 999999999999999;
}

.tb { display:table; }
.tr{ display:table-row; }
.td{ display:table-cell; }

.altable{
    width:100%;
    display:table;
}
.altr{
    width:100%;
    display:table-row;
}
.altd{
    width: 100%;
    height: 60px;
    display: table-cell;
    vertical-align:middle;
    text-align:center;
}

.text-center{
    text-align:center;
}

/*

1.) X-Small   < 576px
2.) Small  ≥ 576px
3.) Medium ≥ 768px
4.) Large ≥ 992px
5.) Extra large ≥ 1200px
6.) Extra extra large ≥ 1400px

*/

.claim1{
    position:absolute;
    left:45%;
    top:8px;
    vertical-align:top;
    width:unset;
	display:block;
}

.claim2{
    position:absolute;
    left:160px;
    top:7px;
    vertical-align:top;
    right:unset;
    width:unset;
	display:block;
}

.addbox_sm{
    display:none;
}

@media only screen and (max-width: 576px) {

.archiveinner{
	
}

/* ARCHIVE */
.archivenav{
    width: 100%;
	font-size:18px;
}

.mmlisttext{
	hyphens: auto;	
}

.mmlisttext_r{
    padding-left:0px;
	hyphens: auto;
}

.mmlistdist_r{
	padding-left:0px;
}

.claim1{
	/*
    left: -8px;
    top: 15px;
	width:unset;
	*/
	display:none;
}

.claim2{
	/*
    left: unset;
    top: 15px;
    right:32px;
	width:unset;
	*/
	display:none;
}

.bkm{ height:35px; }
.ck{ height:50px; }

.footerdist{
    height:160px;
    margin-bottom:80px;
}

    .nospace{
        margin:0px;
        padding:0px;
        /*margin-bottom:20px;*/
    }

    .slogowrap{
        border-right:2px solid #000000;
        width:52px;
        margin-top:0px;
        display:inline-block;
        background-repeat:no-repeat;
        background-size:cover;
        background-position:0px 0px;
    }

    .toplogoouter{
        top:13px;
        height:81px;
        left:65px;
        height:32px;
    }
  
    #burgernav_wrap{ display:block; }

    #d_alttitle{ display:none; }
    #s_alttitle{ display:block; }

    .wwheader{
        height:53px;
        background-color:#FFFFFF;
        border-bottom:1px solid #000000;
    }

	.c-logo{ width:90%; }
   
    #left{ display:none; }
    
    .content {
        overflow:auto;
        left:0px;
        top:117px;
        height:calc(100% - 57px);
        width:calc(100% - 50px);
        padding-left:25px;
        padding-right:25px;
    }
    
    #bfilteritems{
        font-size:18px;
        padding-left:32px;
        margin-top:0px;
        display:none;
    }
    
    .mmlistcontentwrap{
        flex-direction: column-reverse;
    }
    .mmlistcontentwrap_l{
        flex-direction: column;
    }

    .mmlistpicwrap,.mmlistpicwrap_left{ width:100%; }
    .eventbutton{ font-size:17px; }    
    .eventtype_wrapper{ height:30px; }
    .eventtype{ font-size:22px; }
    .mmlistdate{ font-size:22px; }
    .mmlistheader{ font-size:28px; }
    
    .mmlistbody{
        font-size:18px;
        width:100%;
        margin-right:0px;
    }
    .wwfooter{
        border-top:1px solid #000000;
        padding-top:16px;
        height:65px;
        position:absolute;
        bottom:0px;
        left:0px;
        z-index:60000000;
        display:none;
        width:100%;
        background-color:#FFFFFF;
    }
    
    .metanav{
        position:absolute;
        right:unset;
        top:45px;
        font-size:20px;
        width:250px;
        text-align:center;
        left:50%;
        margin-left:-125px;
    }
    
    .addbox_sm{
        position:absolute;
        left:50%;
        width:180px;
        text-align:center;
        top:15px;
        margin-left:-90px;
        display:block;
    }
    .socmed_sm{
        height:23px;
        margin-left:8px;
        margin-right:8px;
    }
}