#citymap {
	height: 500px;
}
#routemap {
	height: 265px;
}
#stopmap {
	height: 265px;
}
#schedule-tabContent{
	
}
.ex2{
	border: 1px solid #eee;
	height: 265px;
	border-radius: 4px;
}
.ex2 h1{
	font-size: 18px;
	line-height: 18px;
	margin: 0;
	padding: 0;
}
.ex2 h2{
	font-size: 16px;
	margin: 0;
	padding: 0;
	font-weight: normal;
	margin-bottom: 10px;
}
.ex3{
	padding: 15px 20px;
}
.ex4{
	font-size: 10px;
	color: #b7b7b7;
	margin-bottom: 20px;
}
.ex5{
	font-size: 16px;
	margin-bottom: 10px;
}
.ex6{
	font-size: 13px;
	padding-left: 22px;
}
.ex7{
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.ex7 a{
	text-align: left;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	margin: 0;
	background: transparent;
	position: relative;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	font-size: 16px;
	font-family: 'Exo 2', sans-serif;
	color: #212121;
	line-height: 1.2;
	transition: color 0.2s ease-in-out;
	padding: 0 0 0 45px;
	text-decoration: none;
}
.ex7 .arrow-link__icon{
	text-align: left;
	font-family: 'Exo 2', sans-serif;
	color: #212121;
	line-height: 1.2;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;	
}
.ex8{
	
}
.ex9{
	height: 140px;
}

.autocomplete-suggestions { border: 1px solid #999; background: #FFF; overflow: auto; }
.autocomplete-suggestion { padding: 2px 5px; white-space: nowrap; overflow: hidden; }
.autocomplete-selected { background: #F0F0F0; }
.autocomplete-suggestions strong { font-weight: normal; color: #3399FF; }
.autocomplete-group { padding: 2px 5px; }
.autocomplete-group strong { display: block; border-bottom: 1px solid #000; }
#commentform .alert{margin-top:10px;
	display:none;
}
#commentform .active{
	box-shadow: 0 0 10px #000;
}

.choicecity a {
	float: left;
	margin-right: 10px;
}
.choicecity strong {
	float: left;
	margin-right: 10px;
}
.choicecity hr {
	float: left;
	width: 100%;
}
/*Города на главной старт*/
#more_city_list a, #more_country_list a{
	float: left;
	clear: both;
}
#more_city_list2 a{
	color:#000;
	font-weight:bold;
	text-transform:uppercase;
	margin-bottom:5px;
}
#more_country_list2 a{
	color:#000;
	font-weight:bold;
	text-transform:uppercase;
	margin-bottom:5px;
}
@media (min-width: 970px) {
	#more_country_list2 a{
		float:left;
		clear:both;
		font-size: 14px;
	}
	#more_city_list2 a{
		float:left;
		clear:both;
		font-size: 14px;
	}
	.main_city_list .first{
		height:285px;
		background:#e3ffd2;
		padding:40px 0 0 40px;
	}
	.main_city_list{
		border-top:1px solid #eee;
		border-bottom:1px solid #eee;
		float:left;
		width:100%;
	}
	.main_city_list .second{
		height:285px;
		padding:10px 10px 10px 10px;
		border-right:1px solid #eee;
	}
	.main_city_list .second2{
		height:auto;
	}
	.main_city_list .second2 a{
		height:auto;
		text-transform:none;
		font-weight:normal;
	}

	.main_city_list .second a{
		width:100%;
		border-bottom:1px solid #eee;
		padding:0 10px;
		margin-bottom:5px;
	}
	.main_city_list .second a:last-child{
		border-bottom:none;
		margin-bottom:0px;
	}

}
/*Города на главной конец*/
/*Форма поиска для города*/
.citysearch input[type=radio] {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.citysearch label {
	margin-left: 7px;
	margin-bottom: 10px;
	font-size: 80%;
	color: #007bff;
	cursor: pointer;
    border-bottom-color: #007bff;
    border-bottom-width: 1px;
    border-bottom-style: dashed;
}
.citysearch label:hover  {
	color: #0056b3;
    border-bottom-color: #0056b3;
}
.citysearch label.active {
	color: #0056b3;
    border-bottom-color: #0056b3;
}
.citysearch input[type=radio]:checked+label {
	font-weight: bold;
}
/*Форма поиска для города конец*/
.block1 {
	min-height: 267px;
}
.block1 h1, .block1 h2{
	font-size: 100%;
	margin-bottom: 0;
}
.block1 .el1{
	font-size: 70%;
	margin-bottom: 15px;
}
.block1 .el2{
	line-height: 15px;
	margin-bottom: 15px;
}
/**/
.route-list-ul {
	color: #282828;
	outline: none;
	max-height: 999999px;
	margin: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	list-style: none;
}
.route-list-ul li{
	color: #282828;
	list-style: none;
	outline: none;
	max-height: 999999px;
	margin: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	cursor: pointer;
	position: relative;
	padding: 0 10px 0 20px;
	margin-top: 0;
}
.route-list-ul .level {
	font-family: 'PT Sans Narrow', sans-serif;
	color: #282828;
	list-style: none;
	cursor: pointer;
	outline: none;
	max-height: 999999px;
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	position: relative;
	font-weight: 300;
	transition: all 500ms ease;
}
.route-list-ul li .level:after {
    display: block;
    content: '';
    position: absolute;
    right: 100%;
    top: 1px;
    width: 14px;
    height: 14px;
    border-radius: 100%;
    box-sizing: border-box;
    border: 2px solid #f2f2f2;
    margin-right: 12px;
}
.route-list-ul li:hover .level:after {
	background: #ff0e52; border: 0;
}
/**/
.city-search {
	margin-bottom: 20px;
	position: relative; min-width: 320px; /*height: 403px;*/padding-bottom: 40px; background-color:#59d4d4; -webkit-background-size: cover; background-size: cover; box-shadow: 0 2px 3px rgba(0,0,0,.1); z-index: 100;
	color: #fff;
}
/*
.city-search:before {
	display: block; content: ''; position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: rgba(0,0,0,.65); box-shadow: 0 2px 3px rgba(0,0,0,.1);
}
*/
.city-search .title {
	padding-top: 110px; font-size: 36px; text-align: center; color: #fff; font-weight: 500;
}
.city-search .text {
	margin-top: 18px; font-size: 21px; text-align: center; color: #fff; line-height: 30px; font-weight: 300;
}
.city-search .text span {
	font-weight: 600;
}
.city-search .form {
	position: relative; max-width: 741px; margin: 25px auto 0; height: 43px;
}
.city-search .form input[type=text] {
	width: 74%; height: 43px; padding: 0 17px; float: left; border-radius: 5px; background: #f3f4f4; border: 1px solid #e1e2e3; float: left; font-weight: 300; font-size: 13px; color: #696969;
	width: 96%;
	margin: 2%;
}
.city-search .form button {
	width: 22%; height: 43px; background: #ff0e52; border-radius: 5px; float: right; font-size: 13px; color: #fff;
}
/* скрываем чекбоксы и блоки с содержанием */
.hide,
.hide + label ~ div {
    display: none;
}
/* вид текста label */
.hide + label {
    margin: 0;
    padding: 0;
    color: green;
    cursor: pointer;
    display: inline-block;
}
/* вид текста label при активном переключателе */
.hide:checked + label {
    color: red;
    border-bottom: 0;
}
/* когда чекбокс активен показываем блоки с содержанием  */
.hide:checked + label + div {
    display: block; 
    background: #efefef;
    -moz-box-shadow: inset 3px 3px 10px #7d8e8f;
    -webkit-box-shadow: inset 3px 3px 10px #7d8e8f;
    box-shadow: inset 3px 3px 10px #7d8e8f;
    margin-left: 20px;
    padding: 10px;
    /* чуточку анимации при появлении */
     -webkit-animation:fade ease-in 0.5s; 
     -moz-animation:fade ease-in 0.5s;
     animation:fade ease-in 0.5s; 
}
/* анимация при появлении скрытых блоков */
@-moz-keyframes fade {
    from { opacity: 0; }
to { opacity: 1 }
}
@-webkit-keyframes fade {
    from { opacity: 0; }
to { opacity: 1 }
}
@keyframes fade {
    from { opacity: 0; }
to { opacity: 1 }   
}
.hide + label:before {
    background-color: #1e90ff;
    color: #fff;
    content: "\002B";
    display: block;
    float: left;
    font-size: 14px; 
    font-weight: bold;
    height: 16px;
    line-height: 16px;
    margin: 3px 5px;
    text-align: center;
    width: 16px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.hide:checked + label:before {
    content: "\2212";
}

#map {
  width: 100%;
  height: 650px;
  margin-top: 70px;
}
 #controls {
  position: absolute;
  top: 5.5em;
  right: 1.5em;
  z-index: 10;
  background: #fff;
  padding: 1em 2em;
  opacity: 0.9;
  box-shadow: 2px 2px 0px rgba(0, 0, 0, 0.1);
}
#controls label {
  display: block;
  margin: 1em 0;
  font-size: 12pt;
}
#controls label span {
  display: inline-block;
  min-width: 3.5em;
}
#controls label input {
  font-size: 12pt;
  padding-bottom: .2em;
  width: 10em;
  border: none;
  border-bottom: solid 1px #999;
  color: #000;
  outline: none;
  webkit-appearance: none;
}