/*===== copyright ==================================
		Michael Krupski
		Germany
		webmaster@villa-bluewater.de
==================================================*/
html {
	margin: 0; 
	padding: 0;
}
/* Hintergrund gesamt */
body {		
	font-family: Arial, Helvetiva, sans-serif;
	background-repeat:no-repeat;
	background-color: #FFFFFF;
	/* 
		Hier wird die Schriftgroesse fuer das gesamte web veraendert
		Schriftgroessen:
		8px  -> 0.50em  | 9 px -> 0.563em | 10px -> 0.625em
		11px -> 0.688em | 12px -> 0.750em | 13px -> 0.813em
		14px -> 0.875em | 15px -> 0.983em | 16px -> 1.0em 
		18px -> 1.125em | 22px -> 1.375em
		Umrechnung in %
		1 em = 100$ | 1.125em = 112.5%
 	*/
	font-size: 1.0em;
}

img{
  	border:0;
}
dt{
	font-weight: bold;
	font-size: 1em;
	font-style:italic;
	padding-bottom:6px;
}
h1, h2, h3, h4, p, table, td, form, ul, li  {
	margin: 0;
	padding: 0;
}

/* Überschriften */
h1{
	font-size: 1.3em;
	font-weight: bold;
	padding: 0 0 10px 0;
}
h2{
	font-size: 1.15em;
	font-style: italic;
	padding: 0px 0px 6px 0px;
	font-weight:bold;}
h3{
	font-size: 0.875em;
	font-weight: normal;
	font-style:italic;
	margin-top:-10px;	
}
h4{
	font-size: 1em;
	font-style: italic;
	padding: 0 0 10px 0;
	font-weight: bold;
}
h5{
	font-size: 1.125em;
	font-style: italic;
	margin:0;
	padding:0;
	font-weight: bold;
}
h6{
	padding: 0 0 0 0;
	font-size: 0.75em;
}
.center {
	text-align:center;
}	 
/*==========================================*/

/* Liste unsortiert */
ul {
	padding-left:10px;
	list-style-position: outside;
}
/*==========================================*/

/* Message als Hinweis in kleiner Schrift */
.error_msg{
	margin-top:4px;
	font-size:0.625em;
	color:red; 
}
/*==========================================*/

/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   Oberer Bereich  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

#header {
	background-image: url(../images/header_01.png);
	background-repeat: no-repeat;
	/* background-color:#005A00; */
	background-color: #FCFEB4;
	border-left:solid 1px #005A00;
	border-bottom:solid 1px #005A00;
	margin-top:30px;
	margin-left:auto;
	margin-right:auto;
	width:1000px;
	height:120px;
}

/* Hintergrund Bereich oberes Menue */
#top_area {
	border-bottom:solid 1px #005A00;
	margin-left:auto;
	margin-right:auto;
	width:1000px;
}
/*==========================================*/

/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   Hauptbereich  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/
#responsive {
	font-size:1.3em;
}

/* Hauptbereich */
#main_area {
	border-bottom:solid 1px #005A00;
	font-size: 0.875em;
        color: #000066;
	background-color: #FCFEB4;
	margin-left:auto;
	margin-right:auto;
	width:920px;
	padding:30px 40px 30px 40px;
}
/*==========================================*/



/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   mittlerer Bereich  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/
/* Tabellen */
table{
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
}

.tab_head_2 {
	background-color: #CFCFCF;
	color:#000066;
	font-size:14px;
	height:20px;
	border: 1px solid #000066;
	padding: 2px 2px 0 4px;
}
.tab_content {
	font-weight:normal;
	border: 1px solid #000066;
	padding: 2px 4px 2px 4px;
}
.td_1 {
	font-size:0.875em;
	padding: 6px 0 0 0;
}
.td_1_imp {
	width:50px;
}
.td_1_sem{
	width:120px;
}
.td_2_sem{
	width:40em;
}
.td_3 {
	font-size:0.875em;
}

/* Bilder im Textbereich, die links oder rechts vom Text umflossen werden */
.images_left {
	float:left;
	margin-top:3px;
	padding: 0 20px 0 0;
}
.images_right {
	float:right;
	margin-top:-20px;
	padding: 0 0 0 20px;
}
.holunder {
	position:absolute;
	padding: 0 0 0 20px;
	margin-left:430px;
}

/*==========================================*/

/* die gesamte Google Map*/
#twGmap {
	margin-top:-1.5em;
	float:right;
	margin-left:20px;
	width: 65%; 
	height: 38em;
}
/* fuer das Infofenster */
.twGmapInfo {
	width: 310px; 
	background-color: #FFFFFF;
	border:1px solid #ffbb60;
	padding:10px;
}
.twGmapInfo .headline {
	margin: 5px 0px 0px 0px;
	font-weight:bold;
}
.twGmapInfo .text {
	/*float: right;*/
	margin-top:4px;
	padding: 0px;
	font-size:0.875em;
}
.twGmapInfo .img {
	float: right;
	margin: -12px 4px 2px 4px;
	padding: 0px;
}
.twGmapInfo .video {
	float: left;
	margin: 0px 4px 2px 4px;
	padding: 3px;
	background-color: #ffbb60;
	font-size: 0.8em;
	font-weight: bold;
	border: 4px inset #ffbb60;
}
.twClear {
	clear: both;
	margin: 0px;
	padding: 0px;
	line-height: 1px;
}

/* Liste*/
.liste_1 li {
	font-size: 1em;
	padding-bottom:2px;
}
.liste_3 li {
	font-size: 1em;
	margin-left:150px;
	padding-bottom:2px;
}

/* Space Angaben*/
.row_1{
	margin-left:205px;
}

/*==========================================*/

/* Kontaktformular */
.btn_1 {
	background-color: #0066FF;
	border:outset #FFFFFF;
	color:#FFFFFF;
	width:8.5em;
}
.label {
	float:left;
	width:100px;
	height:40px;
}
.field_1{
	float:left;
	padding-right:20px;
}
.field_2{
	padding-bottom:20px;
}
.field_in_1 {
	width:250px;
}
.field_in_2 {

	width:430px;
}
/*==========================================*/
.line_1 {
	height:1em;
}
.line_2 {
	height:2em;
}
.line_6 {
	height:6em;
}
.line_9 {
	height:9.1em;
}
/* xxxxxxxxxxxxxxxxxx Lage POI*/
.images_left_2 {
	float:left;
	padding: 0 20px 20px 0;
	
}
/* Links im Text */
#link {
	margin-left:20px;
	font-size:0.875em;
}
#link a {
	font-size: 0.983em;
	color: #000177;
	text-decoration:none;
}
/* ====== */
.einzug_links{
	margin-left: 40px;
}
.marker{
	font-size:1.2em;
	position:absolute;
	margin-left:6px;
	margin-top:4px;
}

/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   unterer Bereich  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

#foot_space {
	background-color: #FFFFFF;	
	margin-left:auto;
	margin-right:auto;
	width:1000px;
	height:12px;
}
/* Hintergrund unterer Bereich */
#foot_area {
	background-image:url(../images/footer_02.png);
	/* background-color: #005A00;  RGB 0, 90, 0 */
	border-top:solid 1px #005A00;
	border-right:solid 1px #005A00;
	margin-left:auto;
	margin-right:auto;
	width:1000px;
	height: 30px;
	padding-top:8px;
}
/*==========================================*/

/* Fusszeile*/
#foot_line {
	text-align:left;
	background-color:transparent;
	color: #000066;
	font-size:  0.75em;
	margin-top: -35px;
}
/*==========================================*/

/* Navigation Seitenanfang unten rechts */
#foot_nav {
	
	text-align: right;
	margin-right:30px;
	background-color:transparent;
}

#foot_nav li {
	position:absolute;
	margin: 0 0 0px 0px; 				
	padding: 0px 0px;					
}
#foot_nav a {
	font-size: 0.7em;
	font-weight: bold;
	padding: 0 2px 0 5px; 						/* Abstand 2 px links; 5 px rechts im Button */
	background-color:transparent;
	color: #000066;
	text-decoration: none;
	border-left: 1px solid #FFFFFF;
}

#foot_nav a:hover {
	width: 50px;
	background-color:#000066;
	text-decoration: none;
	color:#FFFFFF;
}
/*==========================================*/

/* Navigation zur Druckversion */
#foot_nav_print {
	position:absolute;
	right: 150px;
	margin-top: 3px;
	background-color: transparent;
}
/*==========================================*/

/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   Media Query  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>*/

/* Tablets und mittlere Bildschirme */
@media only screen and ( min-width: 440px ) and ( max-width: 950px ) 
{

}
/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */

/* mobile Geraete */
@media only screen and ( max-width: 800px ) 
{
	body {
		font-size: 1.25em;
	}
	img {
     	max-width: 100%;
    	height: auto;
	}
	#header {
		background-image: url(../images/header_01_small.png);
		background-repeat: no-repeat;
		background-size: contain;
		margin-top:4%;
		width:100%;
		height:60px;
	}
	
	/* Hintergrund Bereich oberes Menue */
	#top_area {
		width:100%;
	}
	/*==========================================*/

	/* Hauptbereich */
	#main_area {
		width:92%;
		padding:4% 4% 4% 4%;
	}
	/*==========================================*/
	
	/* die gesamte Google Map*/
	#twGmap {
		margin-top:0em;
		width: 100%; 
		height: 30em;
		margin-bottom:1em;
	}
	/*==========================================*/
	.line_1 {
		height:0em;
	}
	.line_2 {
		height:1em;
	}
	.line_6 {
		height:1em;
	}
	.line_9 {
		height:1em;
	}
	.row_1{
		margin:0;
	}
	.images_right {
		margin-top:0px;
		padding: 0 0 0 0px;
	}
	.images_left {
		padding: 0 20px 10px 0;
	}
	.holunder {
		position:relative;
		padding: 0 0 0 20px;
		margin-left:100px;
	}
	ul {
		padding: 0;
		margin-left: -10px;
	}
	.liste_3 li {
		margin-left:0px;
	}

	/* Tabellen */
	tab_1{
		width:100%;
	}
	.w_1 {
		width:120px;
	}
	.table-scrollable {
		width: 100%;
		overflow-y: auto;
		margin: 0 0 0 0;
	}
	
	.table-scrollable::-webkit-scrollbar {
		-webkit-appearance: none;
		width: 14px;
		height: 14px;
	}
	
	.table-scrollable::-webkit-scrollbar-thumb {
		border-radius: 8px;
		border: 3em solid grey;
		margin-top:0.5em;
		background-color: rgba(0, 0, 0, .3);
	}
	/*==========================================*/
		
	/* Kontaktformular */
	input , select{
		font-size:0.983em;
	}	
	.label {
		float:none;
		width:100%;
		height:auto;
	}
	.field_1{
		float:none;
		padding-right:0px;
		padding-bottom:1em;
	}
	.field_2{
		padding-bottom:1em;
	}
	.field_in_1 {
		width:100%;
	}
	.field_in_2 {
		width:100%;
	}
	/*==========================================*/
	.clear {
		clear:both;
	}
	/* Hintergrund unterer Bereich */
	#foot_area {
		background-image:url(../images/footer_02.png);
		width:100%;
		height:35px;
	}
	/*==========================================*/
	#foot_space {
		width:100%;
	}	
	
	/* Fusszeile*/
	#foot_line {
		font-size:  0.75em;
		margin-top: 0;
		margin-top: -16px;
	}
	#validator{
		display:none;
	}
	/*==========================================*/
} 
