@font-face { font-family: 'leelawadee';
    src: url('fonts/LeelUIsl.ttf') format('truetype'); 
}

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

body{
	margin: 0;
	padding: 0;
	font-family: 'leelawadee', Arial;
	color: #474747;
	font-size: 20px; /*16px*/
	line-height: normal;
	background-color: transparent;
}

img{
	border: none;
}

p{
	margin-top: 0;
	margin-bottom: 10px;
}

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

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

img{
	display: block;
	max-width: 100%;
}


h1{
	font-size: 1.765em;
	margin-bottom: 0.7em;
	margin-top: 0;
	text-transform: uppercase;
	font-weight: normal;
	margin-bottom: 10px;
}

h2{
	margin-top: 0;
	font-size: 1.765em;
	margin-bottom: 0.7em;
	font-weight: normal;
}

h3{
	font-size: 1.5em;
	margin-bottom: 0.3em;
	margin-top: 0;
}

h4{
	font-size: 1.3em;
	margin-bottom: 0.3em;
}

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

.clear{
	display: block;
	clear: both;
}

.clear_5{
	display: block;
	clear: both;
	height: 5px;
}

.clear_10{
	display: block;
	clear: both;
	height: 10px;
}

.clear_15{
	display: block;
	clear: both;
	height: 15px;
}

.clear_20{
	display: block;
	clear: both;
	height: 20px;
}

.clear_25{
	display: block;
	clear: both;
	height: 25px;
}

.clear_30{
	display: block;
	clear: both;
	height: 30px;
}

.clear_40{
	display: block;
	clear: both;
	height: 40px;
}

.clear_50{
	display: block;
	clear: both;
	height: 50px;
}

.changeable{
	display: block;
	position: relative;
	min-height: 38px;
}

.changeable .edit_content_button{
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	padding: 5px 10px;
	border: 1px solid #cccccc;
	cursor: pointer;
	background-color: #f1f1f1;
}

.changeable:hover .edit_content_button{
	display: block;
}

.changeable:hover .edit_content_button:hover{
	background-color: #eeeeee;
}

.scrollload{
	opacity: 0;
}

#meta_edit{
	display: block;
	font-size: 16px;
	background-color: #fff;
	color: #555;
	padding: 20px;
	position: fixed;
	top: -441px;
	right: 0;
	width: 600px;
	border-radius: 0 0 0 10px;
	height: 400px;
	border: solid #ccc;
	border-width: 0 0 1px 1px;
	z-index: 50;
}

#meta_edit_button{
	display: block;
	position: absolute;
	bottom: -31px;
	right: 0;
	height: 30px;
	line-height: 30px;
	padding: 0 20px;
	cursor: pointer;
	background-color: #fff;
	border-radius: 0 0 0 10px;
	border: solid #ccc;
	border-width: 0 0 1px 1px;
}

.video {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 0px;
	height: 0;
}
.video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.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;
}

.login_form{
	display: block;
	width: 100%;
	max-width: 400px;
	border-radius: 10px;
	margin: 30px auto;
}

/* BEGIN KONTAKTFORMULAR */
#kontakt_form{
	display: block;
	position: relative;
	z-index: 0;
}

#feiern_form{
	position: relative;
	width: 70%;
}

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

.formular_left_wrap{
	clear: both;
}

.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: 128px;
}

#feiern_form textarea[name=bemerkungen]{
	height: 300px;
}

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

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

.captcha_input input[type=text]{
	max-width: 100px;
}

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

.datenschutz_checkbox_text{
	margin-left: 30px;
}

.formular_submit_wrap{
	display: block;
	position: absolute;
	bottom: 15px;
	right: 0;
	width: 50%;
}

.formular_submit{
	padding-left: 20px;
}

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

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

.datum_input{
	display: block;
	float: left;
	width: 105px;
}

.galerie{
	display: block;
}

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

.galerie ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.galerie ul li{
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: top;
	width: 162px;
	height: 162px;
}

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

.galerie ul li a img{
	display: block;
	width: 150px;
	height: 150px;
	object-fit: cover;
}

.bgc_blau {
	background-color: #d8d2c8;
}

.bgc_grau{
	background-color: #BBBCAA;
}

.bgc_dunkelgrau{
	background-color: #474747;
}

.c_blau {
	color: #d8d2c8;
}

.c_white{
	color: #fff;
}

.c_grau{
	color: #BBBCAA;
}

.c_all_white, .c_all_white a{
	color: #fff;
}

.c_all_dunkelgrau, .c_all_dunkelgrau a{
	color: #474747;
}

.c_all_blau, .c_all_blau a{
	color: #d8d2c8;
}

#gesamt{
	background-color: #fff;
	padding: 0 0 15px 0
}

.layout{
	display: block;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
}

.boxen2{
	margin-left: -40px;
}

.box2{
	display: block;
	float: left;
	width: 50%;
}

.box2_inner{
	/* background-color: #F2F2F2; */
	margin-left: 40px;
	padding: 15px 15px 15px 0;
}

.box2.right .box2_inner{
	padding: 15px 0 15px 15px;
}

.boxen3{
	margin-left: -20px;
}

.box3{
	display: block;
	float: left;
	width: 33.333%;
}

.box3_inner{
	background-color: #F2F2F2;
	margin-left: 20px;
	padding: 25px 25px 11px 25px;
}

.balken_grau{
	height: 4px;
}

#footer{
	padding: 15px 0;
	font-size: 17px;
}

#footer_left{
	display: block;
	float: none;
	margin-bottom: 7px;
	text-align: center;
}

#footer_left ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#footer_left ul li{
	display: inline-block;
	*display: inline;
	zoom: 1;
}

#footer_left ul li.navitrenner{
	margin: 0 5px;
}

#footer_right{
	display: block;
	float: none;
	text-align: center;
}

#footer_right ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#footer_right ul li{
	display: inline-block;
	*display: inline;
	zoom: 1;
}

#footer_right ul li.navitrenner{
	margin: 0 5px;
}

#footer_left a, #footer_right span{
}

.col_layout_1 .col_wrap.one{
	display: block;
	float: left;
	width: 42%;
}

.col_layout_1 .col_wrap.one .col{
	padding-right: 10px;
}

.col_layout_1 .col_wrap.two{
	display: block;
	float: left;
	width: 58%;
}

.col_layout_1 .col_wrap.two .col{
	padding-left: 10px;
}

.col_layout_3 .col_wrap.one{
	display: block;
	float: left;
	width: 50%;
}

.col_layout_3 .col_wrap.one .col{
	/* padding-right: 10px; */
	padding: 25px 25px 11px 25px;
	margin-right: 10px;
	background-color: #f2f2f2;
}

.col_layout_3 .col_wrap.two{
	display: block;
	float: left;
	width: 50%;
}

.col_layout_3 .col_wrap.two .col{
	/* padding-left: 10px; */
	padding: 25px 25px 11px 25px;
	margin-left: 10px;
	background-color: #f2f2f2;
}

.zitat p{
	margin-bottom: 0;
}

.trenner{
	height: 4px;
	background-color: #BBBCAA;
	max-width: 1200px;
	margin: 0 auto 10px auto;
	
}

table.zweispaltig tr td{
	padding-left: 10px;
	padding-bottom: 10px;
}

table.zweispaltig tr td:first-child{
	padding-left: 0;
}

.footer_clmn{
	display: block;
	float: left;
	width: 33.33%;
}

.footer_clmn.right{
	text-align: right;
}

#navi_top{
	padding: 10px 0;
}

#navi_bottom{
	padding-left: 40px;
}

.logo{
	max-width: 400px; 
	width: 100%; 
	margin: 0 auto 10px auto;
	display: block;
}

.center{
	text-align: center;
}

.grid{
	display: grid;
}

.two-columns{
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.interesse_balken{
	background-color: #d8d2c8;
	color: #fff;
	padding: 10px;
	font-size: 1.5em;
	text-align: center;
}

.interesse_balken a{
	color: #fff;
}

hr{
	height: 1px;
	border: none;
	background-color: #ccc;
}

@media screen and (max-width: 767px){
	.two-columns{
		grid-template-columns: 1fr;
	}

	h1{
		text-transform: none;
	}

	
}

.flex{
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: center;
}

.flex.wrap{
	flex-wrap: wrap;
}

.logo-wrap{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	margin-bottom: 30px;
	color: #d8d2c8;
}

@media screen and (max-width: 880px){
	.logo-wrap{
		grid-template-columns: 1fr;
		gap: 0;
	}
}

@media screen and (max-width: 767px){
	.flex{
		justify-content: center;
	}
}

@media screen and (max-width: 500px){
	.flex{
		justify-content: flex-start;
	}
}