/* 1753928603.4418 */
@charset "utf-8";

body {
	background:#fff url(/gif/bg-body-kl.jpg) repeat-x left top;
}

#header,
#container,
#bildslider,
#navi,
#streifen,
#menu,
#footer {
	width:auto;
	display:block;
}

#header {
	height:auto;
	padding:10px;
}

#header p a img,
#header h4 a img {
	float:left;
	margin:0 16px 0 0;
}

#footer {
	width:98%;
	padding:1%;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}

#wrapper {
	width:100%;
	height:100%;
	margin:0;
}

#carousel {
	overflow:hidden;
	width:100%;
	height:auto;
}

#carousel div {
	width:100%;
	height:auto;
	float: left;
	position:relative;
}

#bildslider,
#bildslider img.sliderpic {
	width:100%;
	height:auto;
}

#container,
p#breadcrumb, 
#inhalt,
body.home #inhalt,
#subnavi {
	display:block;
	width:auto;
	float:none;
	margin:0;
	padding:0;
}

#container {
	padding:10px;
	font-size:120%;
}

#subnavi {
	margin-top:20px;
}

#container div.flex-container,
#container div.boxen {
	width:auto;
	padding:2px 10px;
}

#container div.flex-container .box33,
#container div.boxen div.box33 {
	width:32%;
	margin:0 2% 0 0;
	padding:0;
}

#container div.flex-container .box33:nth-child(3n),
#container div.boxen div.box33:nth-child(3n){
	margin:0;
}

#container div.flex-container .box33 h3,
#container div.flex-container .box33 p,
#container div.boxen div.box33 h3,
#container div.boxen div.box33 p {
	width:96%;
	padding:2% 2%;
}

#container div.flex-container .box33 img,
#container div.flex-container .box33 p.bild,
#container div.boxen div.box33 img,
#container div.boxen div.box33 p.bild {
	width:100%;
	height:auto;
	padding:0;
}	

#container h1,
#container h2,
#container h3,
#container h4 {
	line-height:130%;
}

#container p {
	line-height:130%;
}

#container ul.seo_links {
width:30%;
margin:0 0 0 3%;
}

#container #karte {
width:100%;
height:360px;
}

#container #routenplaner fieldset {
width:44%;
padding:2%;
margin:0 3% 0 0;
}

#container #routenplaner fieldset:nth-child(2n+0) {
margin-right:0;
}

#container #routenplaner fieldset input.txt {
width:98%;
}

#route,
#route * {
width:auto;
}

#route div.adp {
font-size:110%;
}

#container #inhalt div.iframe {
	width:100%;
	height:auto;
	margin-bottom:24px;	
}

#container #inhalt div.iframe iframe.piwik {
	border:none;	
	height:auto;
	overflow-y:show;
	width:98%;
	border:1px solid #666;
}

#container p.bildblock {display:block;width:100%;}
#container p.bildblock a {margin:0;}
#container p.bildblock a.fancybox {display:block;float:left;margin:0 3.5% 0 0;width:22%;}
#container p.bildblock a:nth-child(4).fancybox {margin:0;}
#container p.bildblock a.fancybox img {width:100%;margin:0;}


@media only screen and (min-width: 480px) and (max-width: 768px) {
	
	#container form {
		width:auto;
		display:block;
	}
	
	#container form fieldset {
		width:96%;
		padding:2%;
	}
	
	
	#container form fieldset label,
	#container form fieldset label.plz,
	#container form fieldset label.ort {
		width:20%;
		margin:0;
	}
	
	#container form fieldset label.checkbox_label {
	width:auto;
	margin-left:6px;
	margin-right:16px;
	vertical-align:2px;
	}
	
	#container form fieldset input.txt,
	#container form fieldset textarea {
		width:72%;
		margin:0 0 0 2%;
		padding:2%;
	}
	
	#container form fieldset input.plz {
		margin-bottom:4px;
	} 
	
	#container form fieldset textarea#nachricht {
		width:96%;
		margin:0;
		padding:2%;
	}
	
	#container form fieldset input.captcha {
		width:80px;
	}

	#container form fieldset input.radio,
	#container form fieldset input.checkbox {
		display:inline-block;
		width:16px;
		margin-left:25px;
	}	
	
	#container form fieldset input.checkbox_txt_label {
	float:left;
		margin:2%;
		clear:none;
		display:inline-block;
	}
	#container form fieldset label.checkbox_txt_label {
		width:82%;
		float:left;
		display:inline-block;
		margin:0;
		vertical-align:0px;
		font-weight:normal;
		line-height:120%;
		clear:none;
	}
	
}

@media only screen and (max-width: 767px) {

	#container h1,
	#container h2.h1,
	#container #inhalt .accordion h2.headline_box {
		font-size:180%;
		line-height:120%;
		font-weight:normal;
	}

	#container h2,
	#container h3.h2 {
		font-size:160%;
		line-height:120%;
		font-weight:normal;
	}

}

@media only screen and (max-width: 640px) {
	
	#header p .fett,
	#header h4 .fett,
	#header p strong,
	#header h4 strong {
		margin:0;
	}
		
	#header #logo {
		width:80px;
		height:79px;
	}
	
	#breadcrumb span.loc {
		display:none;
	}
	
	#container ul.seo_links {
	width:45%;
	margin:0 0 0 4%;
	}

}

@media only screen and (max-width: 600px) {
	
	#container #inhalt img {
		width:auto;
		max-width:100%;
	}
	
	#inhalt h2 img.pic_r {
		float:none;
		display:block;
		margin:0 0 6px 0;
	}	
	
	
}


@media only screen and (max-width: 540px) {

	#container div.flex-container {
		display:block;
		text-align:center;
	}
	
	#container div.flex-container .box33,
	#container div.flex-container .box33:nth-child(3n) {
		display:block;
		width:96%;
		margin:0 auto;
		text-align:left;
	}
	
	#container div.boxen {
		text-align:center;
	}
	
	#container div.boxen div.box33,
	#container div.boxen div.r,
	#container div.boxen div.box33:nth-child(3n) {
		float:none;
		width:96%;
		margin:0 auto;
		text-align:left;
	}


}

@media only screen and (max-width: 518px) {
	
	#sprachen {	
		position:relative;
		float:left;	
		margin-top:24px;	
	}
	
	
	
}

@media only screen and (max-width: 480px) {
	
	#sprachen {	
		position:relative;
		float:left;	
		margin-top:24px;	
	}	
	
	#carousel div p.overlay {
		display:none;
	}
	
	#container #inhalt, 
	#container #inhalt div.roundbox p {
		text-align:left;
	}
	
	#container ul.seo_links {
		width:94%;
		margin:0 0 0 4%;
	}
	
	
	
	

	#footer {
		text-align:center;
	}
	
	#footer p.footer {
		font-size:130%;
		line-height:150%;
		text-align:center;
	}
	
	#footer p.footer span {
		display:block;
		width:100%;
		float:none;
		height:auto;
		clear:both;
	}
	
	#footer p.footer span.links {
		margin-bottom:8px;
	}
	
	#footer p.footer a {
		float:none;
		display:inline-block;
		padding:4px 8px;
	}	
	
	#subnavi {
		display:block;
		width:auto;
	}
	
	#subnavi div.subnavi_box,
	#subnavi div.aktivebox {
		text-align:left;
	}
	
	#subnavi div.subnavi_box img.pic_l,
	#subnavi div.aktivebox img.pic_l {
		display:block;
		float:none;		
		margin-left:0;
		margin-bottom:4px;
	}
	
	#subnavi div.subnavi_box img.pic_r,
	#subnavi div.aktivebox img.pic_r {
		display:block;
		float:none;		
		margin-left:0;
		margin-bottom:4px;
	}
		
	#container h4.cb a.fancybox,
	#container h4.cb a	{
		display:block;
		height:auto;
		width:auto;
		max-width:202px;
	}
	
	#container h4.cb a img.pic_l {
		float:none;
		margin-bottom:6px;
	}
	
	#container #routenplaner fieldset {
		float:none;
		width:auto;
		display:block;
		padding:2%;
		margin:0 0 4px 0;
	}

	#container #routenplaner fieldset:nth-child(2n+0) {
	margin-right:0;
	}
	
	#container #routenplaner input.button {
		margin-top:2px;
	}
	
	
	#container table.impressum,
	#container table.impressum tr, 
	#container table.impressum td {
		display:block;
		hyphens: auto;
	}
	
	#container table.impressum tr {
		margin:0 0 4px 0;
	}
	
	#container table.impressum tr td {
		padding:0 0 2px 0;
	}
	
	#container table.impressum tr td.first-child {
		width:100%;
	}
	
	#container table.impressum td:nth-child(even) {
		border-bottom:1px dotted #F0F0F0;
	}
	
	#container div.box_kontakt {
		float:none;
		display:block;
		width:100%;
		margin:0 0 8px 0;
	}
	
	#container form {
		width:auto;
		display:block;
	}
	
	#container form fieldset {
		width:96%;
		padding:2%;
	}	
	
	#container form fieldset label,
	#container form fieldset label.plz,
	#container form fieldset label.ort,
	#container form.en fieldset label.plz,
	#container form.en fieldset label.ort {
		width:100%;
		margin:0 0 2px 0;
	}
	
	#container form fieldset label.checkbox_label,
	#container form fieldset label.radio_label	{
		width:auto;
		margin-left:6px;
		margin-right:16px;
		vertical-align:2px;
	}
	
	#container form fieldset span.span_checkbox,
	#container form fieldset input.txt,
	#container form fieldset input.plz,
	#container form fieldset input.ort,
	#container form.en fieldset input.plz,
	#container form fieldset textarea,
	#container form fieldset textarea#nachricht	{
		width:94%;
		margin:0 0 8px 0;
		padding:2%;
	}
	
	#container form fieldset span.span_checkbox {
		display:block;
		clear:both;
		margin:0;
		padding:8px 0;
	}
		
	#container form fieldset input.captcha {
		width:80px;
	}

	#container form fieldset input.radio,
	#container form fieldset input.checkbox {
		display:inline-block;
		width:16px;
		margin-left:0;
	}	
	
	#container form fieldset input.checkbox_txt_label {
		float:left;
		margin:0.75% 2% 2% 0.75%;
		clear:none;
		display:inline-block;
		padding-top:0;
	}
	#container form fieldset label.checkbox_txt_label {
		width:90%;
		float:left;
		display:inline-block;
		margin:0;
		vertical-align:0px;
		font-weight:normal;
		line-height:120%;
		clear:none;
	}
	
	#container form p.r span.fl {
		display:block;
		float:none;
		text-align:left;
	}
	
	#container table.tab,
	#container table.tab tr, 
	#container table.tab td,
	#container table.ansprechpartner,
	#container table.ansprechpartner tr, 
	#container table.ansprechpartner td, 
	#container table.ansprechpartner td.titel {
		width:100%;
		display:block;
		hyphens: auto;
		width:100%;
	}
	
	#container table.tab tr {
		margin:0 0 4px 0;
	}
	
	#container table.tab tr td {
		padding:0 0 2px 0;
	}
	
	#container table.tab tr td.first-child {
		width:100%;
	}
	
	#container table.tab td:nth-child(even) {
		border-bottom:1px dotted #F0F0F0;
	}
	
	#container table.ansprechpartner,
	#container table.ansprechpartner td:nth-child(even),
	#container table.ansprechpartner td.titelu	{
		border:none;
	}
	
	#container table.ansprechpartner,
	#container table.ansprechpartner tr, 
	#container table.ansprechpartner td,
	#container table.ansprechpartner td.titel,
	#container table.ansprechpartner td.titelu	{
		background-color:none;
	}
	
	#container table.ansprechpartner td,
	#container table.ansprechpartner td.titel,
	#container table.ansprechpartner td.titelu	{
		font-size:140%;
		background-color:#fff;
		padding:0 0 2px 0;
	}
	
	#container table.ansprechpartner strong {
		font-weight:normal;
	}

	#container table.ansprechpartner td.titel strong,
	#container table.ansprechpartner td.titelu strong	{
		font-weight:bold;
		color:#66667A;
	}
		
	#container table.ansprechpartner tr	{
		margin:2px 0 12px 0;
	}
	
	#container #inhalt p span.logos {
		float:none;
		display:inline-block;
		clear:both;
		width:100%;
		margin:0 0 16px 0;
		text-align:center;
	}

	#container #inhalt p span.logos img.noborder {
		margin:0 4%;
		width:auto;
		max-width:40%;
		height:80px;
		float:left;
		display:inline-block;
	}

}

@media only screen and (min-width: 361px) and (max-width: 480px) {
	
	#header h4 {
		margin-top:4px;
	}
		
	#header #logo {
		width:80px;
		height:79px;
	}
	
	#breadcrumb span.loc {
		display:none;
	}
	
	#container #inhalt, 
	#container #inhalt div.roundbox p {
		text-align:left;
	}
	
	#container ul.seo_links {
		width:94%;
		margin:0 0 0 4%;
	}
	
}


@media only screen and (min-width: 240px) and (max-width: 360px) {
		
	#header #logo {
		width:64px;
		height:63px;
	}
	
	#header p,
	#header h4 {
		width:100%;
	}	
	
	#header p .fett,
	#header p .fett a,
	#header h4 .fett,
	#header h4 .fett a,
	#header p strong,
	#header p strong a,
	#header h4 strong,
	#header h4 strong a	{
		margin:2px 0 0 0;
		line-height:120%;
	}
	
	#header p .fett a.tel_link,
	#header h4 .fett a.tel_link,
	#header p strong a.tel_link,
	#header h4 strong a.tel_link {
		font-size:161%;
	}
	
	#header p .fett span,
	#header h4 .fett span,
	#header p strong span,
	#header h4 strong span {
		font-size:142%;	
		margin-top:2px;
	}	
		
	#container ul.seo_links {
		width:94%;
		margin:0 0 0 4%;
	}
	
}