* {
	margin: 0;
	padding: 0;
	outline: none;
}

img {
	border: 0 none;
}

body {
	color:#778F95;
	font: 12px "Lucida Sans Unicode", "Lucida Grande", arial, sans-serif;
	text-align: center;
}

/* Preload Images */

body:after {
	content: url(s+h.png) url(sarrowh.png) url(sch.png) url(sfh.png) url(shh.png) url(arrowrb.png) url(arrowrg.png) url(arrowrw.png);
	position: fixed;
	display: block;
	left: -999em;
}

#header, #header-img, #footer, #wrap {
	width: 1000px;
	display: block;
	clear: both;
	margin: 0 auto;
}

#wrap {
	background: url(wrapbg.gif) repeat-y center #fff;
}

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

#header {
	background: url(http://demo.baseplus-server.de/bso/templates/gfx/bg-header.png) no-repeat bottom left #fff;
}

/* Language Menu */

.tx-srlanguagemenu-pi1 {
	display:block;
	line-height: 0;
	padding-bottom: 2px;
}

#header .tx-srlanguagemenu-pi1 img {
	margin: 0;
	border: 1px solid #5582aa;
}

.tx-srlanguagemenu-pi1 div, .tx-srlanguagemenu-pi1 div a, .tx-srlanguagemenu-pi1 div a img {
	display: inline;
}

.tx-srlanguagemenu-pi1 div.CUR, .tx-srlanguagemenu-pi1 div.NO {
	margin-left: 4px;
}
.tx-srlanguagemenu-pi1 div.CUR a img, .tx-srlanguagemenu-pi1 div.NO a img, .tx-srlanguagemenu-pi1 div.CUR a {
	display: inline;
	height: 13px;
}

.tx-srlanguagemenu-pi1 div.INACT img, .tx-srlanguagemenu-pi1 div.INACT {
	display: none;
}

#header .tx-srlanguagemenu-pi1 div.CUR a:hover img, #header .tx-srlanguagemenu-pi1 div.NO a:hover img {
	border-color: #eee;
}

/* Language Menu End */

#logolang {
	display: block;
	float: right;
	text-align: right;
}

#logolang img {
	line-height: 0;
	margin-top: 5px;
}

#logo {
	display: block;
}
#area {
	width: 191px;
	float: left;
}

#right a img {
	display: block;
	margin: 0px auto;
	border: none;
}

#area span {
	text-align: right;
	display: block;
	margin: 0;
}

#area span a, #title span a, #area h2 a {
	color: #778F95;
	text-decoration: none;
}

#area h2 {
	display: block;
	height: 22px;
	position: relative;
	top: 2px;
	margin: 0;
	font-weight: normal;
	font-size: 16px;
	text-align: right;
}

#title, #area {
	padding-top: 23px;
	display: block;
	line-height: 26px;
}

#title {
	text-align: left;
	margin: 0px 300px 0px 206px;
}

#title h1 {
	font-size: 22px;
	height: 22px;
}

#title span {
		font-weight: bold;
}

#header-img {
	height: 260px;
}

#left {
	width: 206px;
	display: block;
	float: left;
	text-align: left;
}

#left a img  {
	display: block;
	margin: 15px auto;
	border: 1px solid #000;
}

#left a img:hover, #right a img:hover {
}

#right {
	display: block; 
	width: 206px;
	float: right;
	background: #eee;
}

#online-booking {
	line-height: 32px;	
	height: 32px;
	color: #333;
	background: url(bg_external.png) repeat-x center #ABB7B8;
	text-align: center;
	display: block;
	margin-right: 206px;
}

#online-booking div {
	background: none;
	display: inline;
	margin-right: 6px;
}

#online-booking h1 {
	display: inline;
	line-height: 20px;
	font-size: 17px;
	margin-right: 16px;
}

#online-booking h1 a {
	color: #333;
	text-decoration: none;
}

#content {
	margin: 0px 206px;
	text-align: left;
	padding: 5px 20px 40px;
}

#content ul, #content ol {
	padding: 4px 10px 4px 40px;
}

#content ul {
	list-style-position: inside;
	list-style: square;
}

#content h1 {
	font-size: 18px;
	line-height: 22px;
	margin: 16px 0;
}

#content h2 {
	color: #1C9BC3;
	font-size: 18px;
	line-height: 22px;
}

#content h3 {
	font-size: 14px;
	line-height: 17px;
	margin: 10px 0;
}

#content h4 {
	font-size: 12px;
	line-height: 14px;
	margin: 15px 0;
}

#content h5 {
	font-size: 10px;
	line-height: 11px;
	margin: 15px 0;
}

#content p {
	padding: 2px 0px 10px;
}

#content a {
	color: #3D90B7;
	text-decoration: underline;
}

#content a:hover, #title span a:hover, #area span a:hover, #footer a:hover {
	color: #333;
}

#content .contenttable p {
	padding: 0;
}

/* Indexed Search */

div.tx-indexedsearch-searchbox {
	background: #ABB7B8;
	margin: 15px 0;
	display: block;
}

.tx-indexedsearch-searchbox form fieldset {
	border: none;
	padding: 10px;
}

.tx-indexedsearch-searchbox form fieldset legend {
	text-align: center;
	color: #fff;
	font-weight: bold;
	display: block;
	width: 100%;
	padding: 4px 0;
	border-bottom: 1px solid #999;
}

.tx-indexedsearch-searchbox form fieldset label {
	width: 150px;
	margin-bottom: 6px;
	display: block;
	color: #000;
}

#tx-indexedsearch-searchbox-button-submit {
	display: block;
	background: #eee url(arrowrg.png) 98px center no-repeat;
	color: #666;
	width: 140px;
	padding: 20px 10px;
	text-align: left;
	border: none;
}

#tx-indexedsearch-searchbox-button-submit:hover {
	color: #000;
	background-color: #fff;
	background-image: url(arrowrb.png);
	cursor: pointer;
}

.tx-indexedsearch-searchbox form fieldset select {
	margin-bottom: 6px;
	width: 250px;
}

#tx-indexedsearch-searchbox-sword {
	border: 2px solid #ccc;
	color: #666;
	background: #eee;
	padding: 1%;
	margin-bottom: 6px;
	line-height: 16px;
	height: 16px;
	width: 97%;
}

#tx-indexedsearch-searchbox-sword:hover,  #tx-indexedsearch-searchbox-sword:focus {
	color: #333;
	background: #fff;
	border-color: #eee;
}

#content div.tx-indexedsearch-searchbox p {
	padding: 0 10px 10px;
}

#content div.tx-indexedsearch-searchbox p a {
	color: #eee;
}

#content div.tx-indexedsearch-searchbox p a:hover {
	color: #000;
}

#content ul.browsebox {
	display: block;
	width: 100%;
	background: #ABB7B8;
	text-align: center;
	padding: 4px 0;
	list-style: none outside none;
}

#content ul.browsebox li {
	display: inline;
	padding: 0px 5px;
}

#content ul.browsebox li:before {
	content: '|';
	margin-right: 10px;
}

#content ul.browsebox li:first-child:before {
	content: '';
}

#content ul.browsebox li a {
	color: #fff;
}

#content ul.browsebox li a:hover {
	color: #000;
}

#content dl.tx-indexedsearch-info {
}

#content dl.tx-indexedsearch-info dt:before {
	display: block;
	width: 100px;
	height: 1px;
	content: '';
	margin-top: -1px;
}

#content dl.tx-indexedsearch-info dt {
	font-weight: bold;
	display: inline;
}

#content dl.tx-indexedsearch-info dd {
	display: inline;
}

#content div.tx-indexedsearch-res {
	padding: 5px 0;
	border-bottom: 1px solid #eee;
	margin-bottom: 5px;
}

div.tx-indexedsearch-browsebox > p {
float: right;
position: relative;
right: 0;
top: -17px
}

/* End of Indexed Search */

/* Begin Online-Booking CSS */

#booking-form, #booking-form div, #availability-checker, #availability-checker form {
	display: inline;
}

#date-in {
	text-align: center;
	width: 86px !important;
}

#form-date-in {
	margin-right: 41px;
	width: 225px !important;
	text-align: center;
}

div#form-datewrap label#form-date-format-helper {
	color:#666;
	float:right;
	font-size:10pt;
	padding-right:45px;
	width:auto;
}

#use-calendar {
	margin: 0px 0px -7px;
	height: 21px;
	background: #fff;
	border: 1px solid #000;
}

#datewrap {
	margin-right: 0 !important;
}

#form-use-calendar {
	display: block;
	height: 21px;
	float: right;
	margin: 1px 0px 0px;
	background: #fff;
	border: 1px solid #000;
}

#form-us-date-in {
	display: none !important;
}

p.formerror {
	color: #c00;
	margin-left: 10px;
}

#use-calendar:hover, #form-use-calendar:hover {
	border-color: #ccf;
}

.go {
	margin-bottom: 0px;
}

.go:hover, #use-calendar:hover, #form-use-calendar:hover {
	cursor: pointer;
}

#availability-checker form div select {
	margin-right: 0px;
	width: 45px;
}

#availability-checker form div select option {
	text-indent: 4px;
}

#availability-checker label {
	font-weight: normal;
	font-style: normal;
}

#newsletter {
	width: 20px !important;
}

/* End of Online-Booking CSS */

/* Begin Menu (Left) */

.menu-level1 {
	margin: 15px 15px 0 1px;
	list-style: none;
}

.menu-level1 li {
	display: block;
	margin-top: 1px;
}

.menu-level1 li a {
	display: block;
	font-size: 14px;
	line-height: 18px;
	padding: 6px 0 5px 10%;
	text-decoration: none;
	width: 90%;
	background: #fff;
	color: #778F95;
}

.menu-level1 li:first-child {
}

.menu-level2 li:first-child {
}

.menu-level1 li a:hover {
	background: url(bg_external.png) repeat-x center #ABB7B8;
	color: #fff;
}

.menu-level1 li ul {
	background: #ABB7B8;
}

.menu-level1 li ul a {
	background: #ABB7B8;
	color: #fff;
}

.menu-level1 li ul a:hover {
	background: url(bg_menu_left_sub.png) repeat-x center #fff;
	color: #778F95;
}

#left .menu-level1-active a, #left .menu-level2-active a, #left .menu-level2-current-active a, #left .menu-level1-current-active a {
	background: url(bg_menu_left_select.png) repeat-x center #5582aa;
	color: #fff;
}

#left .menu-level1-active a:hover, #left .menu-level2-active a:hover {
	background: #eee;
	color: #5582aa;
}

#left .menu-level3-current-active a {
	text-indent: 1em;
	color: #333;
}

.menu-level1 li ul li ul {
	background: #e5e5e5;
}

.menu-level1 li ul li ul li a {
	background: #fff;
	color: #778F95;
	font-size: 12px;
	padding: 4px 0 4px 15%;
	width: 85%
}

.menu-level1 li ul li ul li a:hover {
	background: url(bg_external.png) repeat-x center #ABB7B8;
	color: #fff;
}

.menu-level3-current-active a {
}

/* End Menu (Left) */

/* Begin Menu (Right) */

.service-header {
	display: block;
	background: #5580a6;
	text-align: left;
	padding: 10px 10%;
	color: #fff;
	font-size: 16px;
	line-height: 21px;
}

.services {
	background: #5582aa;
}

.services, .external-services {
	text-align: left;
	list-style: none outside none;
}

.external-services li {
	background: transparent url(bg_external.png) repeat-x center;
}

.services li, .external-services li {
	display: block;
}

.services li {
	background: transparent url(bg_servicemenu.png) repeat-x center;
}

#right .services li:hover {
	background: url(bg_external.png) repeat-x center #ABB7B8;
}

.services li a {
	background: transparent url(sarrow.png) no-repeat 10% center;
	width: 70%;
	padding: 10px 0px 10px 30%;
}

.services li a, .external-services li a {
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	display: block;
	line-height: 20px;
}

/* BEGIN CSS3 Individual Images */

.services li:last-child a {
	background-image: url(sc.png);
}

#right .services li:last-child a:hover {
	background-image: url(sch.png);
}

.services li:nth-last-child(2) a {
	background-image: url(sf.png);
}

#right .services li:nth-last-child(2) a:hover {
	background-image: url(sfh.png);
}

.services li:nth-last-child(3) a {
	background-image: url(sh.png);
}

#right .services li:nth-last-child(3) a:hover {
	background-image: url(shh.png);
}

.services li:nth-last-child(4) a {
	background-image: url(s+.png);
}

#right .services li:nth-last-child(4) a:hover {
	background-image: url(s+h.png);
}
/* END CSS3 Individual Images */

#right .service-active a {
	color: #333;
}

#right .service-active {
	background: transparent url(bg_menu_left_sub.png) repeat-x center;
}

.services li a:hover, #right .service-active a:hover {
	background-image: url(sarrowh.png);
	color: #fff;
}

.external-services li a {
	width: 90%;
	padding: 10px 0px 10px 10%;
	background: transparent url(arrowrw.png) no-repeat 164px center;
}

.external-services li a:hover {
	background-image: url(arrowrb.png);
	background-color: #eee;
	color: #333;
}

/* End Menu (Right) */

/* Service (Right) Definitions */

div.r_service {
	display: block;
	padding: 71px 0 10px;
	width: 100%;
	background: url(contact.jpg) no-repeat center top #a2c9d8;
}

div.r_service a {
	text-align: left;
	text-decoration: none;
	line-height: 17px;
	color: #fff;
	font-size: 12px;
	display: block;
	background: url(arrowrg.png) no-repeat 164px bottom #a2c9d8;
	padding: 10px 42px 0 10%;
}

div.r_service a strong {
	display: block;
	font-size: 14px;
	font-weight: bold;
	padding-bottom: 4px;
}

div.r_service a:hover {
	background-image: url(arrowrw.png);
}

/* End Service (Right) Definitions */

/* Johann's Gruppenbuchung */

div#content .tx-pilmailform-pi1 form fieldset legend {
	padding: 2px 10px;
	font-size: 13px;
}

div#content .tx-pilmailform-pi1 form {
	width: 464px;
	padding: 4px 0px;
	margin: 0px auto;
}

div#content .tx-pilmailform-pi1 form fieldset {
	width: 442px;
	padding: 0px 10px;
	border: 1px solid #666;
	margin-bottom: 10px;
}

div#content .tx-pilmailform-pi1 form fieldset label {
	padding: 0px 10px;
	text-align: right;
	display: inline-block;
	float: left;
	width: 150px;
	margin-bottom: 6px;
}

div#content .tx-pilmailform-pi1 form fieldset input.error {
	border-color: #c00;
}

.email-error {
	color: #c00;
	text-align: center;
	display: block;
}

div#content .tx-pilmailform-pi1 form fieldset input[type="radio"], div#content .tx-pilmailform-pi1 form fieldset input[type="checkbox"] {
	margin: 0px 16px 0px 0px;
	display: inline;
	vertical-align: middle;
	width: 20px;
	border: none;
}

div#content .tx-pilmailform-pi1 form fieldset select {
	border: 3px double #ccc;
	height: 22px;
	margin-bottom: 6px;
	font-size: 11px;
	height: 22px;
}

div#content .tx-pilmailform-pi1 form fieldset select option {
	text-indent: 4px;
}

.check_form_area {
	padding-top: 4px;
	display:block;
	height: 24px;
}

div#content .tx-pilmailform-pi1 form fieldset input {
	border: 3px double #ccc;
	display: block;
	color: #666;
	width: 266px;
	font-size: 11px;
	margin-bottom: 6px;
	height: 13px;
	padding: 2px 0px;
}

div#content .tx-pilmailform-pi1 form fieldset input:hover, div#content .tx-pilmailform-pi1 form fieldset textarea:hover, div#content .tx-pilmailform-pi1 form fieldset select:hover {
	background: #eee;
	color: #000;
}

div#content .tx-pilmailform-pi1 form fieldset input:focus, div#content .tx-pilmailform-pi1 form fieldset textarea:focus, div#content .tx-pilmailform-pi1 form fieldset select:focus {
	background: #fff;
	color: #000;
	border-color: #666;
}

div#content .tx-pilmailform-pi1 form fieldset textarea {
	display: block;
	width: 266px;
	height: 186px;
	margin-bottom: 10px;
	border: 3px double #ccc;
}

#submit {
	display: block;
	font-weight: bold;
	color: #333;
	float: right;
	padding: 2px 4px;
	margin: 10px 0px 20px;
}

#submit:hover {
	cursor: pointer;
	color: #c00;
}

#kind1, #kind2 {
	width: 131px !important;
}

.sub {
	font-size: 9px !important;
	color: #666;
	text-align: center !important;
	width: 131px !important;
	padding: 0px !important;
	display: block;
	margin-bottom: 0 !important;
}

.childage {
	display: inline;
	float: left;
	width: 131px;
	margin-right: 10px;
}

.last {
	margin-right: 0px !important;
}

#strasse {
	float: left;
	width: 162px !important;
	margin-right: 10px !important;
}

#land {
	width: 73px !important;
}

#mobil_land, #phone_land, #land {
	text-align: center;
	width: 40px !important;
}

#phone_vor, #mobil_vor {
	width: 106px !important;
}

#land, #mobil_land, #phone_land, #phone_vor, #mobil_vor {
	margin-right: 10px;
	float:left;
}

#plz {
	width: 210px !important;
	float: left;
}

#phone, #mobile, #nummer {
	width: 88px !important;
	float: left;
}

#anreise_jahr, #abreise_jahr {
width: 122px !important;
float: left;
}

/* Child Box */

#content ol.child-container {
	display: block;
	margin-left: 170px;
	padding: 0;
	text-align: center;
}
ol.child-container li {
	display: inline;
	padding: 0 4px;
}
ol.child-container + span {
	text-align: center;
	display: block;
	margin-left: 170px;
}

/* End Child Box */

#reiseart, #unterkunft {
		width: 272px;
}

/* Group Footer styles */

#footer {
	text-align: center;
	display: block;
	background: #eee;
	padding: 0 0 24px;
}

#footer a {
	text-decoration: none;
	color: #666;
	margin: 0px 10px;
}

#footer a:hover {
	text-decoration: underline;
}

#footer div.f_menu {
	padding: 8px 0;
	background: url(bg_external.png) repeat-x center #ABB7B8;
}

#footer div.f_menu a {
	color: #fff;
	font-size: 10px;
}

#footer div.f_standards {
	display: block;
	padding: 4px 0px;
	font-size: 9px;
	color: #ccc;
}

#footer div.f_standards a {
	margin: 0;
	color: #999;
}

div#footer div.f_group ul.footer-column a {
	margin: 0;
	font-size: 11px;
}

div.f_group ul {
	text-align: left;
}

div.f_group ul li {
	font-size: 10px;
	margin-left: 10px;
}

div.f_group ul li.groupheader {
	list-style: none outside none;
	font-weight: bold;
	padding-bottom: 1px;
	border-bottom: 1px solid #999;
	margin-bottom: 4px;
	text-align: center;
}

div#footer .f_group {
	display: block;
	clear: both;
	text-align: left;
	padding: 5px 0px 15px;
	margin: 5px 0px 0px;
}

div#footer .Hotel_Group a {
	color: #333;
}

div#footer .f_group h1 {
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	padding: 7px 0px;
	color: #666;
}

ul.footer-column {
	width: 96px;
	padding: 0px 4px 0 24px;
	display: block;
	float: left;
	list-style: square;
}

/* SEARCH BOX */

#searchFunction {
	display:block;
	padding: 10px 15px 10px 10px;
}

#searchFunction form {
	display: block;
}

#searchFunction form fieldset {
	display: block;
	border: none;
	padding: 0;
}

#sucheingabe:hover, #sucheingabe:active, #sucheingabe:focus {
	color: #333;
}

#sucheingabe {
	float: left;
	width: 143px;
	height: 14px;
	line-height: 14px;
	font-size: 11px;
	display:block;
	padding: 7px 9px;
	border: none;
	color: #c7c7c7;
	background: transparent url(suchbox.png) no-repeat 0 0;
}

.search-submit {
	padding: 5px 0px 4px;
	display: block;
	float: right;
}

/* Hack to fix width on objects */

#content object {
width: 548px !important;
overflow: hidden;
}
