@charset "utf-8";

/* CSS Document */

	* {
		box-sizing: border-box; margin: 0; padding: 0;
	}

	html, body {
		height: 100%;
		margin: 0;
		padding:0;
		border: none;
		background: #ffffff;
		font-family: 'Roboto', sans-serif;
		font-size: 1em;
		-webkit-font-smoothing: antialiased;
		-webkit-overflow-scrolling: touch;
	}
	#container {
		text-align: center;
		max-width: 1600px;
		margin: 0 auto;
	}

/* ------ Header Menu ------- */
	.header_menu {
		background-color: #dedede;
		text-align: center;
	}

/* ------- Menu -------- */
	#menu {
		background-color: #fff;
	}
	.menu_hide {
		display:none;
	}
	.telbox {
		/*float:left;
		width: 25%;*/
		margin-top: -10px;
		padding:1.2em 0.6em 0.95em 0.5em;
		font-size:0.93em;
		/*font-size: calc(3px + (32 - 16) * ((100vw - 320px) / (1600 - 320))); */
		font-weight:bold;
		color:#0080c7;
		background-color:#C7C7C7;
	}
	.telbox a {
		color:#FFFFFF;
		
	}
	.telbox a:hover {
		text-decoration:underline;
	}
/* ----- Columns ----- */
	.column {
		float: left;
		padding: 10px;
	}

	@media only screen and (max-width: 378px) {
		.column {padding: 0;}
	}

/* ----- Left and right column ----- */
/* ------ Finder column --------- */
	.column.side_finder {
		width: 25%;
		background-color: #C7C7C7;
	}

	.logo {
		float: left;
		margin: -17px 0 -28px 7px;
		width: 28%;
		padding: 0;
		position: relative;
	}
	.logo img {
		width: 100%;
	}
/* ------ Banner column --------- */
	.column.side_banner {
		width: 20%;
		padding-left: 0;
		background-color: #FFFFFF;
	}

/* ------- Content column -------- */
	.column.middle_content {
		width: 55%;
	}

	.col-1 {
			width: 98%;
			float: left;
			margin: 1%;
			background-color: #fafafa;
		}
	.col-1 img {
			width: 100%;
			height: auto;
			display: block;
		}
	.col-2 {
			width: 48%;
			float: left;
			margin: 1%;
			background-color: #fafafa;
		}

	.col-3 {
			width: 31.3%;
			float: left;
			margin: 1%;
			background-color: #fafafa;
		}

	.col-3 img, .col-2 img {
			width: 100%;
			height: auto;
			display: block;
		}

/* ------ Angebot -------*/

	.angebot {
		border: 0.11em #909090 solid;
	}
	.angebot_hotelname {
		text-align:left;
		width:100%;
		background-color: #A1A1A1;
		padding: 0.5em 0 0.5em 0.5em;
		color:#FFFFFF;
		font-weight:bold;
	}

	.angebot_HP {
		float: right;
		padding: 0 0.5em 0 0;
	}

	.angebot_preis {
		float: right;
		width:40%;
		padding: 0.5em 0 0.5em 0;
		text-align:center;
		color:#FFFFFF;
		font-weight:bold;
		background-color: #0080c8;
	}
	.angebot_col1_text {
		float: right;
		width:50%;
		color:#0080c8;
		background-color: #FFFFFF;
	}

	.angebot_preis_col1 {
		padding: 0.5em 0 0.5em 0;
		text-align:center;
		width: 80%;
		margin-left: 10%;
		border-radius: 4px;
		color:#FFFFFF;
		font-weight:bold;
		background-color: #0080c8;
	}
	.angebot_preis_col3 {
		padding: 0.5em 0 0.5em 0;
		text-align:center;
		color:#FFFFFF;
		font-weight:bold;
		background-color: #0080c8;
	}

	.angebot_bild {
		clear: both;
		width:100%;
		margin: 0 auto;
	}

	.angebot_bild_col1 {
		width:50%;
		background-color: #FFFFFF;
	}

	.angebot_img, .angebot_img_small {
		width: 100%;
		background-position: center;
		background-size: cover;
	}

	.angebot_img {
		height: 16.05em;
	}

	.angebot_img_small {
		height: 10.4em;
	}

	.angebot_kind {
		background: #ECECEC;
	}
	.angebot_kind_text {
		text-align:center;
		font-size:0.8em;
		color:#0080c8;
		padding:0.5em 0 0.5em 0;
	}
	.angebot_person {
		margin-right: 40%;
		background: #CDCDCD;
	}
	.angebot_person_col3 {
		background: #CDCDCD;
	}
	.angebot_person_text {
		color: #414141;
		text-align:center;
		font-size:0.8em;
		padding:0.7em 0 0.7em 0;
	}
	.angebot_hotel_text {
		font-size:0.8em;
		padding:0.5em;
		text-align: left;
		text-align: justify;
		background-color: #FFFFFF;
	}



.bannerz {
	width: 100%;
	margin: 0 auto 1em;
	color: #0280c7;
	font-size: 0.8rem;
}

.bannerzz {
	width: 100%;
	background: aliceblue;
	padding: 0.3em 0.3em 0.4em;
	margin-bottom: 0.4em;
	font-weight: bold;
	font-size: 0.8rem;
}


/* Clear floats after the columns */
	.row_layaut:after {
		content: "";
		/*display: table;*/
		clear: both;
	}

/* ------- Footer_menu -------- */
	.footer_menu {
		background-color: #E3E3E3;
		padding: 10px;
		text-align: center;
	}
	.footer_menu label {
		font-size: 0.8em;
		font-weight:bold;
		color:#777;
	}
	.footer_menu ul {
		display:block;
		font-weight:bold;
		color:#0058a5;
		list-style: none;
	}
	.footer_menu_item {
		/*display: -webkit-flex;
		display: -ms-flexbox;
		float: left;*/
		display:block;
		text-align: left;
	}
	.footer_menu_item a:hover{
		text-decoration:underline;
	}
	.footer_menu_block {
		float: left;
		display: contents;
	}
/* ------- Footer -------- */
	.footer {
		background-color: #0080c8;
		padding:1em;
		color:#FFFFFF;
		text-align: center;
	}

/* --------------- */
	.hidden { display: none; }
	.clear { clear: both; }
	.fleft { float: left; }
	.fright { float: right; }
	.clearfix { overflow: auto; }
/* --------------- */

a {
	text-decoration:none;
	color:#0080c8;
}

img {border: none;}
	
.responsiveimg {
	 width: 100%;
	 height: auto;
}
/* ------- Banner -------- */
	.banner img{
		width: 100%;
		height: auto;
		display: block;
		padding:0.5em 0 0.5em 0;
	}


/*#headerlogo {
	margin: -10px 0 0 30px;
	width: 792px;
	height: 233px;
	float: left;
	background: #fff url(https://www.ost-west-reisen.eu/images/header.jpg) no-repeat;
}*/

#headerlogo {
	margin: 0 1% 0;
	width: 97.9%;
	max-height: 247px;
	height: calc(100vw * 0.155);
	background: #fff url(https://www.ost-west-reisen.eu/images/header.jpg) no-repeat;
	background-size: cover;
}
#headerlogo table {
	margin: 0;
	padding: 0;
	width: 100%;
}
#headerlogo marquee {
	margin: 4.4% 8% 1.5% 0;
	color: #b5e2f9;
	width: 75%;
	font-size: 12px;
	font-style: italic;
	font-weight: bold;
	font-family: Verdana;
}
#headerlogo img {
	width: 82%;
}
@media only screen and (max-width: 1000px) {
	#headerlogo marquee {margin: 4.9% 8% 1% 0;}
}

@media only screen and (min-width: 600px) and (max-width: 1328px) {
	.logo {
		display: none;
	}
}

@media only screen and (max-width: 1384px) {
	.angebot_kind_text {
		font-size:0.7em;
	}
}

@media only screen and (max-width: 1217px) {
	.angebot_kind_text {
		font-size:0.6em;
	}
}

@media only screen and (max-width: 600px) {
	.logo {
		margin: -12px -23px -28px 9px;
		width: 82px;
	}

	.footer_menu_block {
		display: block;
	}
	#headerlogo {
		height: calc(100vw * 0.275);
	}
}

/* Responsive layout */
@media only screen and (min-width: 600px) and (max-width: 1000px) {
	.column.side_finder {
		width: 40%;
	}

	.column.middle_content {
		 width: 60%;
	}

	.column.side_banner {
		width: 100%;
	}

	.telbox {
		float: none;
		width: 100%;
		font-size:1em;
		padding:0.5em 0.6em 0.5em 0.5em;
	}

	.banner img {
		float: left;
		width: 45%;
		padding: 0.5em 0 0.5em 0;
		margin: 0 0.5em 0 0.5em;
	}

	.bannerz {
		width: 40%;
		padding: 0.5em 0 0.5em 0;
		margin: 0 0.5em 0 0.5em;
	}

	.col-3, .col-2, .col-1 {
		width: 98%;
	}

	.footer_menu_item {
		display: -webkit-flex;
		display: -ms-flexbox;
		display:block;
		float: left;
		text-align: left;
	}
}
@media only screen and (max-width: 600px) {
	.column.side_finder, .column.side_banner, .column.middle_content, .column.footer_menu, .column.footer, .angebot_bild_col1, .angebot_col1_text, .angebot_preis_col1 {
		width: 100%;
	}
	.angebot_preis_col1 {
		margin: 0;
		border-radius: 0;
	}
	.telbox {
		float: none;
		width: 100%;
		font-size:1em;
		padding:0.5em 0.6em 0.5em 0.5em;
	}
	.menu_hide {
		display:inline;
	}
	.banner {
		width: 98%;
	}
	.col-3, .col-2, .col-1 {
		width: 98%;
	}
}

/* --------------------------------------------------------------------- */
/* Navigation */
	/* Add a background color to the top navigation */
		.navbar {
			overflow: hidden;
			background-color: #0080c8;
			/* width: 100%; */
		}
	/* Style the links inside the navigation bar */
		.navbar a {
			float: left;
			display: block;
			color: #ffffff;
			text-align: center;
			padding: 15px 16px;
			text-decoration: none;
			font-size: 1.1em;
			font-family: 'Roboto Slab', sans-serif;
		}

		.navbar a:hover {
			background-color: #ddd;
			color: #777;
		}


	/* Add an active class to highlight the current page */
		.navbar a.active {
			background-color: #0075be;
			color: #ffffff;
		}
	/* Hide the link that should open and close the topnav on small screens */
		.navbar .icon {
			display: none;
		}

	/* Dropdown container - needed to position the dropdown content */
		.dropdown {
			float: left;
			overflow: hidden;
		}

	/* Style the dropdown button to fit inside the topnav */
		.dropdown .dropbtn {
			font-size: 1.1em;
			border: none;
			outline: none;
			color: white;
			padding: 14px 16px;
			background-color: inherit;
			font-family: 'Roboto Slab', sans-serif;
			margin: 0;
		}

	/* Style the dropdown content (hidden by default) */
		.dropdown-content {
			display: none;
			position: absolute;
			background-color: #ddd;
			min-width: 140px;
			box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
			z-index: 1;
		}

	/* Style the links inside the dropdown */
		.dropdown-content a {
			float: none;
			color: black;
			padding: 12px 16px;
			text-decoration: none;
			display: block;
			text-align: left;
			color: #0080c8;
		}

	/* Add a dark background on topnav links and the dropdown button on hover */
		.navbar a:hover, .dropdown:hover .dropbtn {
			background-color: #ddd;
			color: #0080c8;
		}


	/* Add a grey background to dropdown links on hover */
		.dropdown-content a:hover {
			 background-color: #0080c8;
			 color: #fff;
		}

	/* Show the dropdown menu when the user moves the mouse over the dropdown button */
		.dropdown:hover .dropdown-content {
			 display: block;
		}

/* When the screen is less than 600 pixels wide, hide all links, except for the first one ("Home"). Show the link that contains should open and close the topnav (.icon) */
@media screen and (max-width: 750px) {
	.navbar a:not(:first-child), .dropdown .dropbtn {display: none;}
	.navbar a.icon {float: right; display: block; padding: 12px 16px;}
	
}
/* The "responsive" class is added to the topnav with JavaScript when the user clicks on the icon. This class makes the topnav look good on small screens (display the links vertically instead of horizontally) */
@media screen and (max-width: 7500px) {
	.navbar.responsive {position: relative;}
	.navbar.responsive .icon {position: absolute; right: 0; top:0;}
	.navbar.responsive a {float: none; display: block; text-align: left;}
	.navbar.responsive .dropdown {float: none;}
	.navbar.responsive .dropdown-content {position: relative;}
	.navbar.responsive .dropdown .dropbtn {display: block;width: 100%;text-align: left;}
	
}

/* Responsive layout - when the screen is less than 600px wide, make the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
	.col-100 {
		width: 100%;
		text-align:left;
	}
	input[type=submit], input[type=reset] {
		width: 100%;
		margin: 10px 0px 10px 0px;
		text-align: center;
	}
	.flug_zug, .flug_zug u {
		font-size: 13px;
	}
}

@media screen and (max-width: 900px) {
	.flex-container {
	flex-direction: column;
	-ms-flex-direction: column;
	align-items: center;
	}
}

/* --------------------------------------------------------------------- */

/* ------------ Form ----------------- */

	input:invalid { background: #E7E7E7; border-color: #0080c8;}
	.error {color: #FF0000;}

	/* Style inputs, select elements and textareas */
		input[type=text], select, textarea {
			width: 100%;
			padding: 2px; /*padding: 12px;*/
			border: 1px solid #ddd;
			border-radius: 4px;
			box-sizing: border-box;
			resize: vertical;
			height: 33px;
			font-size: 1em;
		}

	/* Style the label to display next to the inputs */
		label {
			padding: 12px 12px 12px 0;
			display: inline-block;
			text-align:left;
			color:#0080c8;
			font-size: 0.9em;
			font-family: Verdana, sans-serif, Helvetica, Arial, sans-serif, 'Roboto Slab', sans-serif;
		}

	/* Style the submit button */
		.btn-lg {
			background-color: #0080c8;
			color: white;
			padding: 12px 20px;
			border: 1px solid #ddd;
			border-radius: 4px;
			cursor: pointer;
			float: left;
			width: 100%;
			margin:10px 0px 0px 0px;
			font: 400 19px 'Roboto', sans-serif;
		}
		.btn-lg:hover {
			background-color: #fff;
			color: #0080c8;
			border: 1px solid #ddd;
		}
		input[type=reset] {
			background-color: #aaa;
			color: white;
			padding: 12px 20px;
			border: 1px solid #ddd;
			border-radius: 4px;
			cursor: pointer;
			float: right;
			margin:10px 0px 50px 0px;
		}

	/* Style the container */
		.containerform {
			display:block;
			padding: 0 3px 3px;
		}

	/* Floating column for inputs: 100% width */
		.col-100 {
			float: left;
			width: 100%;
		}

	/* Clear floats after the columns */
		.row:after {
			content: "";
			/*display: table;*/
			clear: both;
		}

	.flex-container {
		display: -webkit-flex;
		display: -ms-flexbox;
		display:flex;
		flex-direction: row;
		-ms-flex-direction: row;
		align-items: stretch;
		-ms-flex-align: center;
		-ms-flex-pack: justify;
		justify-content: space-around;
		
	}
	.flex-item{
		display: -webkit-flex;
		display: -ms-flexbox;
		display:block;
		width: 100%;
		text-align: center;
	}

	.oneliner select, .oneliner input,.oneliner textarea {
		width: 220px;
		margin: 0.4em 0 0 0;
	}

	.oneliner {
		text-align: right;
	}

	.flug_zug input {
		width: auto;
	}

	.form_header {
		color: #FFF;
		text-align: left;
		border-top: 1px solid #FFF;
		margin: 6px 0 -1.4em 0;
	}







/* Hotels List */
	.trResponse {
		background: #fff;
		height: 18px;
	}
	.trResponse_Bild_titel {width: 200px; }
	.trResponse_hoteltitel {width: 830px; text-align: left;}
	.trResponse_boardtitel {width: 100px; text-align: left; }
	.trResponse_pricetitel {width: 85px; text-align: left; }

	.tdResponseHotel {
		vertical-align: top;
		width: 586px;
		padding: 5px 0 5px 20px;
		font-size: 14px;
		display: inline-block;
	}
	.tdResponseimg {
		width: 165px;
		height: 165px;
		cursor: zoom-in;
		/*margin: 0.5em;*/
		background-size: cover !important;
		background-repeat: no-repeat !important;
		background-position: 50% 50% !important;
	}

	.film {
		display: none;
	}

	.film div {
		height: 82px;
		margin: 14px 2px 0;
		width: 78px;
		border-radius: 7px;
		display: inline-block;
	}

	.film .film_l {
		margin: 0;
		width: 37px;
		border-radius: 0 7px 7px 0;
	}

	.film .film_r {
		margin: 0;
		width: 38px;
		border-radius: 7px 0 0 7px;
	}

	@media only screen and (max-width: 600px) {
		.tdResponseimg {
			width: 100%;
		}

		.film div {
			margin: 7px 3px 0;
			width: 32%;
		}

		.film .film_l, .film .film_r {
			width: 32%;
			border-radius: 7px;
		}
	}

	@media only screen and (max-width: 360px) {

		.film div, .film .film_l, .film .film_r {
			width: 31%;
		}
	}


	/*.tdResponseimg:hover {background-size: contain !important;}*/
	.tdResponseBoard {
		width: 70px;
		padding: 5px 0 5px 0;
		text-align: center;
		font-size: 16px; 
	}
	.tdResponsePrice {
		width: 84px;
		padding: 5px 0 5px 0;
		text-align: center;
		font-family: trebuchet ms;
		font-size: 25px;
		font-weight: bold;
		color: #3bb514;
	}

	.tdResponse_button {
		width: 100px; 
		padding: 5px 0 5px 30px;
		
	}

	.titlehotels {
		font-size: 16px;
		font-style: italic;
		font-weight: bold;
		color:#ee2200;
		padding: 15px 0 5px 5px;
		text-align: center;
	}
	#hotellists {margin: 0;}
	.hotellist {
		text-decoration: none;
		display: -moz-inline-box;
		display: inline-block;
		vertical-align: top;
		text-align: left;
		margin: 0;
	}
	.hotelelem { 
		text-decoration: none;
		display: -moz-inline-box;
		display: inline-block;
		vertical-align: middle;
		text-align: center;
		margin: 0;
	}
	#thotel {margin: 0;}
	.hotellist .ih {
		position: relative;
		float: left;
	}
	.hotelelem .ihh {
		position: relative;
		float: left;
	}
	.mehr_info {
		text-decoration: underline;
		font-weight: bold;
		cursor: pointer;
	}
	.page {
		font-size: 90%;
		font-style: italic;
		margin-top: 5px;
	}
	.notransfer {
		font-size: 90%;
		color:#ff0000;
		margin-left: 10px;
	}
	.hotel_ok {}
	.hotel_rq {background: #f7efdc;}
	.hotel_ss {background: #f7e2dc; color: #af2a2a;}
	.hotelprice_ok {
		font-weight: bold;
		color:#e11f27;
	}
	.fontSmall {font-size: small;}
	.hotel_rq_b { 
		color:#fc7802;
		font-weight: bold;
	}
	.hotelprice_ok_green_b {
		font-weight: bold;
		color: #066e36;
	}
	.hotel_ss_b {
		color:#ff0000;
		font-weight: bold;
	}
	.strike {
		color: #555;
		text-decoration: line-through;
	}
/* End Hotels List */










/***    ----   FROM MAIN.CSS   ---   ***/

	.hideblock {display: none;}

	.butt_grupp {
		margin: 0 0 7px 0;
		background-image: url("../images/ok.png");
		background-position: 0 0;
		background-repeat: no-repeat;
		color: #fff;
		font-size: 17px;
		font-weight: bold;
		text-align: center;
		cursor: pointer;
		display: block;
		padding: 2px 4px 2px 4px;
		width: 55px;
		height: 25px;
	}

	.margin05 {margin: 0 5px 0 5px;}

	.select40 {width: 50px !important;}

	.margin_left5 {/*margin-left: 5px;*/}

	.margin_top07_text {
		width: 100%;
		margin-top: 7px;
		text-align: left;
		text-decoration: underline;
	}

	fieldset {
		border: none;
	}

	.selectAge {
		margin: 0 0 0 7px;
		display: none;
		width: 60px !important;
	}

	.select60 {
		width: 138px !important;
	}

	.select160 {
		width: 160px !important;
	}

	#parent_div {
		background: url(../images/bg_verlauf.png) repeat;
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 100;
		top: 0;
		left: 0;
	}
	#stopsale_div {
		height: 100%;
		position: fixed;
		width: 100%;
		z-index: 100;
		top: 0;
		left: 0;
	}
	#info_div {
		background: #fff;
		padding: 10px;
		height: 600px;
		position: absolute;
		left: 50%;
		margin-left: -400px;
		width: 800px;
		border: 1px solid #000;
		z-index: 110;
	}
	.verlauf {
		margin: 0 auto;
		width: 400px;
		height: 400px;
		position: absolute;
		margin-top: -200px;
		margin-left: -200px;
		top: 50%;
		left: 50%;
		color: #ffffff;
		font-weight: bold;
	}
	.verlauf_cancel{
	margin:0 auto; 
	width:400px; 
	height:400px; 
	position: absolute; 
	margin-top:-200px; 
	margin-left:-200px; 
	top:50%; 
	left:50%;
	color: #ffffff;
	font-weight:bold;
	}
.verlauf_cancel:hover { cursor: pointer;}
	.verlaufPR {
		margin: 0 auto;
		width: 200px;
		height: 25px;
		position: relative;
		color: #ffffff;
		font-weight: bold;
		z-index: 25;
	}
	.pSorry {
		margin: 10px;
		background: #d3edfc;
		padding: 5px;
		border: 1px solid #ffffff;
		font-weight: normal;
		font-style: italic;
		color: #2a56a3;
	}
	 #info_div1 {
		background: #fff;
		padding: 10px;
		min-height: 100px;
		height: auto;
		position: absolute;
		left: 50%;
		margin-left: -150px;
		top: 30%;
		width: 300px;
		text-align: center;
		vertical-align: middle;
		font-size: 14px;
		border: 1px solid #999;
		-webkit-box-shadow: 0px 0px 8px -4px #151B2B;
		-moz-box-shadow: 0px 0px 8px -4px #151B2B;
		box-shadow: 0px 0px 8px -4px #151B2B;
		z-index: 110;
	}
	#infobutton {
		color: #fff;
		padding: 5px 10px;
		background-color : #999;
		-webkit-box-shadow: 0px 0px 8px -4px #151B2B;
		-moz-box-shadow: 0px 0px 8px -4px #151B2B;
		box-shadow: 0px 0px 8px -4px #151B2B;
	}
	.button_p {
		padding-top: 25px;
	}

.margin_top5_text {
	text-align: right;
	margin: 0 0 5px;
}

#expand {
	cursor: pointer;
	width: 22px;
	margin: 0 0 -4px 5px;
	float: right;
}

.mapSize {
	width: 100%;
	height: 20em;
}
.suggest_select{height: 100px;  width:350px; resize: horizontal;}
.suggest_select1{height: 100px;  width:350px; resize: horizontal; position:absolute; z-index:10;}
@media screen and (min-width: 1200px) {
	#listhotels{
 		height:900px;
 		overflow-x: hidden;
 		overflow-y: auto;
	}
}
.namer {
	color: #FFF;
}

.x_td4 {
	white-space: normal !important;
}
.arptr{
	width:220px;
	height:150px;
	margin:0.4em 0 0 0;
	overflow-y:auto;
	background-color:#fff;
	text-align:left;
	padding-left:1em;
	padding-top:0.3em;
	float:right;
}