@charset "utf-8";
/* CSS Document */

*
{
	margin:0;
	padding:0;
	border:0;
}

html
{
	min-height:100%;
	height:101%;
}

img, div, a, a:hover input { behavior: url(gfx/iepngfix.html) }

body
{
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
	line-height:18px;
	color:#000;
	min-height:100%;
	background:#fff;
}

h1
{
	font-size:17px;
	line-height:17px;
	margin-bottom:24px;
	font-weight:bold;
	vertical-align:top;
}
h2{
	font-size:12px;
	line-height:18px;
	font-weight:bold;
	margin:18px 0 4px 0;
}

p, ul, ol{margin-top:18px;}

td{vertical-align:top;}

input{border:1px solid #000;}
textarea{border:1px solid #000;}

a
{
	color:#000;
	text-decoration:underline;
}
a:hover, a.selected
{
	color:#cd2615;
}

hr
{
	display:block;
	background:none;
	border-bottom:1px solid #000;
	margin:15px auto;
}

div.clear
{
	clear:both;
}

/* Textformatierung */
.center{text-align:center;}
.bold{font-weight:bold;}
.red{color:#cd2615;}

/* Klassen */
#page
{
	position:relative;
	width:1100px;
	margin:0 auto;
	z-index:0;
}

#content
{
	position:relative;
	top:270px;
	padding:0px 260px 0px 0px;
	min-height:300px;
	z-index:1;
	text-align:justify;
}
#content a.link_back
{
	position:absolute;
	left:0;
	bottom:0;
	background:transparent url(../gfx/arrow_back.png) no-repeat 0 3px;
	padding-left:14px;
	text-decoration:none;
	font-size:14px;
	line-height:14px;
}
#content ul
{
	list-style:none;
}
#content ul li
{
	background:transparent url(../gfx/dot.gif) no-repeat 0px 2px;
	padding-left:16px;
}
#content h2 + p, #content h2 + ul
{
	margin-top:4px;
}
#content ul + p, #content p + ul
{
	margin-top:12px;
}

#content_lcol_300
{
	float:left;
	width:300px; min-width:300px; max-width:300px;
	margin-right:30px;
}
#content_lcol_400
{
	float:left;
	width:400px; min-width:400px; max-width:400px;
	margin-right:20px;
}
#content_rcol_510
{
	float:right;
	width:510px; min-width:510px; max-width:510px;
}
#content_rcol_420
{
	float:right;
	width:420px; min-width:420px; max-width:420px;
}

#objectgallery
{
	width:100%;
	table-layout:fixed;
}
#objectgallery a
{
	text-decoration:none;
}
#objectgallery img
{
	width:100px;
	height:100px;
}
#objectgallery span
{
	display:block;
	text-align:center;
}
#objectgallery tr + tr
{
	vertical-align:bottom;
	height:150px;
}
.objectgallery_element
{
	display:block;
	width:100px;
}
#objectgallery td
{
	text-align:left;
	vertical-align:bottom;
	padding:0;
}
#objectgallery td + td
{
	text-align:center;
}
#objectgallery td + td .objectgallery_element
{
	margin:0 auto;
}
#objectgallery td + td + td
{
	text-align:right;
}
#objectgallery td + td + td .objectgallery_element
{
	margin:0 0 0 auto;
}


/* NAVI */
#navi_main
{
	position:absolute;
	top:0;
	right:0;
	width:230px;
	height:100%;
	border-left:1px solid #000;
	z-index:2;
	font-size:14px;
	line-height:14px;
}
#navi_main_top
{
	margin:0;
	padding:0 0 0 20px;
}
#navi_main_top li, #navi_main_bottom li
{
	padding:0 !important;
	background:none !important;
	margin-bottom:10px;
}
#navi_main_top li a, #navi_main_bottom li a
{
	text-decoration:none !important;
}
#navi_main_bottom
{
	position:absolute;
	bottom:-10px;
	margin:0;
	padding:0 0 0 20px;
}

#navi_sub
{
	margin:0;
	font-size:14px;
}
#navi_sub li
{
	list-style:none;
	background:none !important;
	padding:0 !important;
	margin-bottom:10px;
}
#navi_sub li a
{
	text-decoration:none;
}

/* HEADER */
#header
{
	position:absolute;
	top:0; left:0;
	height:230px;
	width:1100px;
	z-index:3;
	border-bottom:1px solid #000;
}
#logo
{
	position:absolute;
	top:30px;
	right:0px;
	font-size:26px;
	line-height:26px;
	text-align:right;
	width:500px;
}
#logo_name
{
	position:absolute;
	right:260px;
	top:1px;
	font-weight:bold;
}
#logo_seperator
{
	width:2px;
	height:30px;
	background:#000;
	position:absolute;
	top:0; 
	right:230px;
}
#logo_title
{
	position:absolute;
	right:0px;
}
#adress
{
	position:absolute;
	top:80px;
	right:0px;
	text-align:left;
	width:205px;
}
#adress span
{
	display:inline-block;
	width:35px;
}

/* FOOTER */
#footer
{
	border-top:1px solid #000;
	padding:40px 0px;
	position:relative;
	top:310px;
	width:1100px;
	z-index:5;
}
#footer2
{
	padding:40px 0px;
	position:relative;
	top:310px;
	width:1100px;
	z-index:5;
}
#footer_seperator
{
	width:5px;
	height:30px;
	background:#000;
	position:absolute;
	top:0;
	right:230px;
}

/* RESPONSIVE / MOBILE */
@media (max-width: 768px)
{
	#page
	{
		width:100%;
	}

	#header
	{
		position:relative;
		width:100%;
		height:auto;
		padding:15px;
		box-sizing:border-box;
	}

	#logo
	{
		position:relative;
		top:auto;
		right:auto;
		width:100%;
		font-size:20px;
		line-height:26px;
		text-align:left;
		margin-bottom:10px;
	}

	#logo_name
	{
		position:relative;
		right:auto;
		top:auto;
		display:inline;
	}

	#logo_seperator
	{
		display:none;
	}

	#logo_title
	{
		position:relative;
		right:auto;
		display:inline;
		margin-left:8px;
	}

	#adress
	{
		position:relative;
		top:auto;
		right:auto;
		width:100%;
		margin-top:10px;
	}

	#content
	{
		position:relative;
		top:auto;
		padding:15px;
		box-sizing:border-box;
	}

	#content_lcol_300,
	#content_lcol_400
	{
		float:none;
		width:100%;
		min-width:0;
		max-width:100%;
		margin-right:0;
		margin-bottom:20px;
	}

	#content_lcol_300 img,
	#content_lcol_400 img
	{
		max-width:100%;
		height:auto;
	}

	#content_rcol_510,
	#content_rcol_420
	{
		float:none;
		width:100%;
		min-width:0;
		max-width:100%;
	}

	#navi_main
	{
		position:relative;
		top:auto;
		right:auto;
		width:100%;
		height:auto;
		border-left:none;
		border-top:1px solid #000;
		padding:15px;
		box-sizing:border-box;
		display:flex;
		flex-wrap:wrap;
		gap:8px;
	}

	#navi_main_top,
	#navi_main_bottom
	{
		position:relative;
		bottom:auto;
		padding:0;
		display:flex;
		flex-wrap:wrap;
		gap:8px;
		margin:0;
	}

	#navi_main_top li,
	#navi_main_bottom li
	{
		margin-bottom:0;
	}

	#footer,
	#footer2
	{
		position:relative;
		top:auto;
		width:100%;
		box-sizing:border-box;
	}

	#content img
	{
		max-width:100%;
		height:auto;
	}

	table
	{
		width:100%;
	}
}