* {
	padding: 0;
	margin: 0;
}
#map {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.container_contacts {
	overflow: hidden;
	padding-top: 64px;
}
.container_contacts .row{
	max-width: 1300px;
	margin: 0 auto;
	width: 100%;
	padding: 0 30px;
}
.container_contacts .maps{
	position: relative;
	padding-bottom: 50px;
}
.container_contacts .maps iframe{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	border: none;
}
.container_contacts .maps .contacts{
	max-width: 610px;
	width: 100%;
	background: #fff;
	position: relative;
	z-index: 5;
	padding: 80px 20px 80px 60px;
	transform: translate(0, -100%);
    transition: 0.5s linear;
    text-align: left;
}
.container_contacts .maps .contacts .fade_in {
    opacity: 0;
    transition: 500ms linear;
}
.container_contacts .maps .contacts h2,.container_contacts .maps .contacts h1{
	font-weight: 700;
	font-size: 60px;
	line-height: 48px;
	color: #06060a;
	text-align: left;
	text-transform: uppercase;
	margin-bottom: 60px;
}
.container_contacts .maps .contacts h3{
	font-weight: 700;
	font-size: 24px;
	line-height: 30px;
	color: #06060a;
	text-align: left;
}
.container_contacts .maps .contacts h3 span{
	font-size: 30px;
}
.red_line {
	overflow: hidden;
	margin-top: 34px;
	margin-bottom: 37px;
}
.red_line hr{
	display: block;
	height: 1px;
	border:none;
	width: 0;
	background: #b61316;
	margin-right: auto;
	margin-left: 0;
	transition: 200ms linear;
}
.container_contacts .maps .contacts .phone{
	margin-bottom: 20px;
}
.container_contacts .maps .contacts .phone .icon{
	width: 29px;
	height: 29px;
	border-radius: 50%;
	background-color: #0095b7;
	display: flex;
	align-items: center;
	justify-content: center;
}
.container_contacts .maps .contacts .phone a{
	font-weight: 300;
	font-size: 16px;
	line-height: 24px;
	color: #06060a;
	text-align: left;
	text-decoration: none;
	display: grid;
	grid-template-columns: 29px auto;
	grid-gap: 28px;
	align-items: center;
}
.container_contacts .maps .contacts .phone p {
    font-weight: 300;
    font-size: 14px;
    line-height: 24px;
    color: #06060a;
    text-align: left;
    text-decoration: none;
}
.container_contacts .maps .contacts .phone a span{
	font-weight: 700;
}
.bg_block_service .white_blocks .phone .icon img {
	-webkit-transition: -webkit-transform ease-out .1s,background .2s;
    -moz-transition: -moz-transform ease-out .1s,background .2s;
    transition: transform ease-out .1s,background .2s;
}
.container_contacts .maps .contacts .phone .icon:after {
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    content: '';
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    top: 0;
    left: 0;
    padding: 0;
    z-index: -1;
    box-shadow: 0 0 0 2px rgba(0,149,183,.1);
    opacity: 0;
    -webkit-transform: scale(.9);
    -moz-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
}
.container_contacts .maps .contacts .phone a:hover div{
    background: rgba(0,149,183,1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
  transform: scale(1);
}
.container_contacts .maps .contacts .phone a:hover div img {
  -webkit-transform: scale(.93);
    -moz-transform: scale(.93);
    -ms-transform: scale(.93);
  transform: scale(.93);
}
.container_contacts .maps .contacts .phone a:hover div:after {
    -webkit-animation: sonarEffectBlue 1.3s ease-out 75ms;
    -moz-animation: sonarEffectBlue 1.3s ease-out 75ms;
    animation: sonarEffectBlue 1.3s ease-out 75ms;
}
.container_contacts .maps .contacts .adress{
	display: grid;
	grid-template-columns: 29px auto;
	grid-gap: 28px;
	margin-bottom: 20px;
}
.container_contacts .maps .contacts .adress .icon{
	width: 29px;
	height: 29px;
	border-radius: 50%;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.container_contacts .maps .contacts .adress p{
	font-weight: 300;
	font-size: 16px;
	line-height: 24px;
	color: #06060a;
	text-align: left;
}
.container_contacts .maps .contacts .adress p span{
	font-weight: 700;
}
.container_contacts .maps .contacts .email{
	display: grid;
	grid-template-columns: 29px auto;
	grid-gap: 28px;
	margin-bottom: 36px;
}
.container_contacts .maps .contacts .email .icon{
	width: 29px;
	height: 29px;
	border-radius: 50%;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.container_contacts .maps .contacts .email a{
	font-weight: 300;
	font-size: 16px;
	line-height: 24px;
	color: #06060a;
	text-align: left;
	text-decoration: none;
}
.container_contacts .maps .contacts .callback_open {
	background: none;
	border:none;
	font-weight: 300;
	font-size: 14px;
	line-height: 24px;
	color: #04aacc;
	text-align: left;
	cursor: pointer;
}
.container_contacts .text {
	font-weight: 300;
	font-size: 16px;
	line-height: 24px;
	color: #8c8c8c;
	text-align: left;
	width: 100%;
	background-color: #06060a;
	padding: 94px 0 108px 0;
	border-bottom: 1px solid #fff;
}
.container_contacts .text b{
	color: #ffffff;
	font-weight: 700;
}
.gm-style {
	left: 400px !important;
}
/********************************
media
********************************/
@media only screen and (max-width: 525px) {
	.container_contacts .row {
		padding: 0 10px;
	}
	.container_contacts .maps .contacts {
		padding: 30px 10px 30px 10px;
	}
	.container_contacts .maps .contacts h2,.container_contacts .maps .contacts h1 {
		font-size: 48px;
		line-height: 48px;
		margin-bottom: 30px;
	}
	.container_contacts .text {
		padding: 44px 0 58px 0;
	}
	.container_contacts .maps .contacts .phone,
	.container_contacts .maps .contacts .adress,
	.container_contacts .maps .contacts .email {
		grid-gap: 10px;
	}
	#map {
		position: relative;
		width: 100%;
		height: 320px;
	}
	#ymap_ctrl_display div {
		font-size: 14px;
		line-height: 24px;
	}
	.container_contacts .maps {
		display: flex;
		flex-direction: column-reverse;
		padding-bottom: 0;
	}
}