body {
	margin: 20px;
}
h2 {
	max-width: 1000px;
	margin: 0 auto;
	background-color: #6ba824;
	font-weight: normal;
	color: white;
	border-radius: 7px;
	padding: 10px 25px;
	text-align: center;
	text-shadow: 5px 5px 5px black;
}
#bookingform {
  position: relative;
	max-width: 1000px;
	min-width: 230px;
	height: auto;
	background-color: #ddddee;
	margin: 30px auto;
	border-radius: 15px;
	box-shadow: -1px -1px 15px white, 10px 20px 30px black;
	border: 2px outset #40aa40;
	font-size: 80%;
}

/* :invalid { border-color: #f88; border-width: 3px }
/* :valid { background: #aafaff } */
/* :required { border-color: #00f; border-width: 2px } */

#iconclose {
	position: absolute;
	top: -10px;
	right: -10px;
	z-index:6;width:48px;height:48px;opacity:0.6; }
#iconclose:hover{opacity:1 }
#iconclose a:hover   { text-decoration: none; background: none; }
#iconclose a:active  { text-decoration: none; background: none; }

#bookbox {
	width: 85%;
	margin: 0 7%;
}
input, select, textarea {
	border-radius: 4px;
}
#anreiseform,
#abreiseform,
#anreiseformfehler,
#abreiseformfehler {
	width: 50%;
	height: 2em;
}
#anreiseformfehler,
#abreiseformfehler {
	background: #fcc;
	border: 2px solid #6ba824;
}
#erwachseneform,
#kinderform,
#alterform {
	height: 2em;
}
#erwachsene {
	margin-left: 15%;
}
#kinder {
	margin-top: 10%;
	margin-left: 12%;
}
#alter {
	margin-top: 16%;
}
#altertext {
	font-size: 75%;
	color: #666;
}
#zimmer {
	display: none;
}
#mitteilung {
	margin-top: 5%;
}
#mitteilungform {
	width: 100%; 
	height: 5em;
}
#bettform {
	width: 25%;
}
#email {
	margin-top: 5%;
}
#iadres {
	display: none;
}
#emailform {
	width: 60%;
	height: 2em;
}
#urlform {
	width: 25%;
}
#datenschutz {
	font-size: 90%;
	margin-top: 5%;
}
#pflichtbox {
	width: 120px;
	margin: -100px 0 80px 3%;
}
#pflichttext {
	width: 100px;
	font-size: 75%;
	color: #666;
}
sup {
	color: red;
}
button, #button {
	display: inline-block;
	width: 50%;
	height: 50px;
	margin: 30px 25%;
	background-color: #6ba824;
	border-radius: 10px;
	border: 4px double #cccccc;
	color: white;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-ms-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}
button:hover, #button:hover {
	border: 5px double #666;
	-webkit-transform: scale(1.03);
	-moz-transform: scale(1.03);
	-ms-transform: scale(1.03);
	-o-transform: scale(1.03);
	transform: scale(1.03);
}
#inqbutton {
	font-size: 80%;
	text-align: center;
	margin: 4% 20%;
}
@media (max-width: 768px) {
	#bookingform {
		font-size: 100%;
	}
	#kinder {
		margin-left: 20%;
	}
}
@media (min-width: 521px) {
	.textboxwrap {
		padding-bottom: 0;
	}
	.textbox-halb {
		margin-top: -20px;
	}
}

#alert {
	position: absolute;
	top: 15%;
	left: 20%;
	padding: 20px;
	margin: 2px 0 0 0;
	background-color: #fcc;
	color: red;
	border: 3px outset #6ba824;
	border-radius: 10px;
	z-index: 2;
}

.closebtn {
	margin-left: 15px;
	color: white;
	font-weight: bold;
	float: right;
	font-size: 22px;
	line-height: 20px;
	cursor: pointer;
	transition: 0.3s;
}

.closebtn:hover {
	color: black;
}