@charset "UTF-8";
._1lHReid {
    overflow: hidden
}

._1lHReid video,
._3-KH24N {
    width: 100%
}

._3-KH24N {
    height: 0;
    padding-bottom: 56.25%;
    position: relative
}

._3-KH24N iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

._884P9fq {
    display: block
}

._4oTMvTY {
    background: #fff;
    background-color: #fff;
    border-radius: .39vw;
    cursor: auto;
    max-width: 14.06vw;
    min-width: 200px;
    padding: .39vw;
    position: relative;
    z-index: 50
}

._4oTMvTY:after,
._4oTMvTY:before {
    border: solid transparent;
    content: " ";
    height: 0;
    left: 50%;
    pointer-events: none;
    position: absolute;
    top: 100%;
    width: 0
}

._4oTMvTY:after {
    border-top-color: #fff;
    border-width: 10px;
    margin-left: -10px
}

.inner>a:first-child {
    -webkit-transition: color .4s cubic-bezier(.39, .575, .565, 1);
    transition: color .4s cubic-bezier(.39, .575, .565, 1)
}

.zoom-control-wrap .zoom-control rect {
    -webkit-transition: fill .4s cubic-bezier(.39, .575, .565, 1);
    transition: fill .4s cubic-bezier(.39, .575, .565, 1)
}

.zoom-control-wrap .zoom-control {
    -webkit-transition: background-color .4s cubic-bezier(.39, .575, .565, 1);
    transition: background-color .4s cubic-bezier(.39, .575, .565, 1)
}

.gmnoprint div {
    background: none !important
}

.gm-style {
    font: inherit !important
}

.gm-style>div:first-child>div:last-child>div>div:last-child>div>div:last-child {
    display: none !important;
    width: 0 !important
}

.inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: .39vw;
    margin-top: .78vw;
    padding-left: .59vw;
    padding-right: .59vw
}

.inner>a {
    -ms-flex-item-align: end;
    align-self: flex-end
}

@media only screen and (min-width:740px) {
    .inner>a:first-child {
        padding-right: 20px
    }
}

.inner>a:first-child:hover {
    color: grey
}

.inner>a:last-child {
    line-height: 1;
    text-align: right;
    width: 30px
}

@media only screen and (max-width:740px) {
    .inner>a:last-child {
        display: none
    }
}

.zoom-control-wrap {
    cursor: pointer;
    min-width: 45px;
    position: absolute;
    right: 15px;
    text-align: center;
    top: 15px;
    width: 2.81vw;
    z-index: 100
}

@media only screen and (max-width:1200px) {
    .zoom-control-wrap {
        width: 36px
    }
}

.zoom-control-wrap .zoom-control {
    background-color: #fff
}

.zoom-control-wrap .zoom-control:hover {
    background-color: #000
}

.zoom-control-wrap .zoom-control:active {
    -webkit-transform: scale(.95);
    transform: scale(.95)
}

.zoom-control-wrap .zoom-control svg {
    display: block;
    height: 2.81vw;
    min-height: 45px;
    min-width: 45px;
    width: 2.81vw
}

@media only screen and (max-width:1200px) {
    .zoom-control-wrap .zoom-control svg {
        height: 36px;
        width: 36px
    }
}

.zoom-control-wrap .zoom-control rect {
    fill: #000
}

.zoom-control-wrap .zoom-control:hover rect {
    fill: #fff
}

.zoom-control-wrap .zoom-in {
    margin-bottom: 2px
}

@media only screen and (max-width:1200px) {
    .zoom-control-wrap .zoom-in {
        margin-bottom: 5px
    }
}

.m {
    height: 0;
    overflow: hidden;
    padding-bottom: 70.76923%;
    position: relative;
    width: 100%
}

.m>a,
.m>div {
    -webkit-transform: translateY(-50%);
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.m>a,
.m>div,
.m video {
    height: 100%;
    width: 100%
}

.m video {
    -o-object-fit: cover;
    object-fit: cover
}

._1Jo1WLS {
    height: 100vh;
    position: relative
}

._1Jo1WLS>picture {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0
}

._1Jo1WLS>picture img {
    -o-object-fit: cover;
    height: 100%;
    min-width: 100%;
    object-fit: cover
}

.text-main {
    white-space: pre-wrap
}

.list-services {
    font-size: 3.33em;
    line-height: 1.2
}

@media only screen and (max-width:740px) {
    .list-services {
        font-size: 40px
    }
}

.services-footer {
    -ms-flex-align: end;
    -ms-flex-pack: justify;
    -webkit-box-align: end;
    -webkit-box-pack: justify;
    align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between
}

.services-footer a {
    -ms-flex-item-align: end;
    align-self: flex-end
}

.services-footer img {
    min-width: 100px;
    width: 7.42vw
}

.text-sign {
    min-width: 240px;
    width: 25vw
}

.sign {
    max-height: 15.28vh;
    min-height: 80px;
    min-width: 200px;
    width: 17.19vw
}

@media only screen and (max-width:992px) {
    .с {
        margin-top: 40px
    }
}

.cr>div:nth-child(n+2) {
    margin-top: 5.56vh !important
}

.sign-contact {
    min-width: 280px;
    width: 25.78vw
}

.contact-page {
    margin-bottom: 7.64vh
}

@media only screen and (max-width:740px) {
    .contact-page {
        margin-bottom: 40px
    }
}

.cmap {
    -o-object-fit: cover;
    height: calc(92.36vh - 1.25em);
    object-fit: cover
}

@media only screen and (max-width:740px) {
    .cmap {
        margin-left: -15px;
        margin-right: -15px;
        width: calc(100% + 30px)
    }
}

@media only screen and (max-width:740px) {
    .maMlnWf {
        padding-top: 15px !important
    }
}

._1mLFmhS>div {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: .67em;
    justify-content: space-between;
    margin-top: 0 !important;
    position: relative
}

@media only screen and (max-width:740px) {
    ._1mLFmhS>div {
        font-size: 14px
    }
}

._1mLFmhS>div:after {
    background-color: #ccc;
    bottom: 0;
    content: "";
    height: 1px;
    left: 1.17vw;
    position: absolute;
    right: 1.17vw
}

@media only screen and (max-width:740px) {
    ._1mLFmhS>div:after {
        left: 0;
        right: 0
    }
}

._1mLFmhS>div>* {
    -ms-flex-direction: row;
    -ms-flex-pack: justify;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-box-pack: justify;
    flex-direction: row;
    justify-content: space-between
}

@media only screen and (max-width:740px) {
    ._1mLFmhS>div>:nth-child(n+2) {
        margin-top: 20px !important
    }
    ._1mLFmhS>div>:nth-child(3) {
        margin-top: 10px !important
    }
}

@media only screen and (min-width:740px) {
    ._1mLFmhS>div>*>p {
        max-width: 85%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }
}

._1mLFmhS>div:first-child {
    color: #ccc;
    padding-bottom: .97vh;
    padding-top: .97vh
}

._1mLFmhS>div:nth-child(n+2) {
    padding-bottom: 2.22vh;
    padding-top: 2.22vh
}

._1mLFmhS>div a {
    font-size: 1em;
    text-decoration: underline;
    white-space: nowrap
}

._1mLFmhS>div a:hover {
    text-decoration: none
}

@media only screen and (max-width:740px) {
    ._3lcJBQy {
        padding-top: 15px !important
    }
}

._2NNQvq4>div {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: .67em;
    justify-content: space-between;
    margin-top: 0 !important;
    position: relative
}

@media only screen and (max-width:740px) {
    ._2NNQvq4>div {
        font-size: 14px
    }
}

._2NNQvq4>div:after {
    background-color: #ccc;
    bottom: 0;
    content: "";
    height: 1px;
    left: 1.17vw;
    position: absolute;
    right: 1.17vw
}

@media only screen and (max-width:740px) {
    ._2NNQvq4>div:after {
        left: 0;
        right: 0
    }
}

._2NNQvq4>div>* {
    -ms-flex-direction: row;
    -ms-flex-pack: justify;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-box-pack: justify;
    flex-direction: row;
    justify-content: space-between
}

@media only screen and (max-width:740px) {
    ._2NNQvq4>div>:nth-child(n+2) {
        margin-top: 20px !important
    }
    ._2NNQvq4>div>:nth-child(3) {
        margin-top: 10px !important
    }
}

@media only screen and (min-width:740px) {
    ._2NNQvq4>div>*>p {
        max-width: 85%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }
}

._2NNQvq4>div:first-child {
    color: #ccc;
    padding-bottom: .97vh;
    padding-top: .97vh
}

._2NNQvq4>div:nth-child(n+2) {
    padding-bottom: 2.22vh;
    padding-top: 2.22vh
}

._2NNQvq4>div a {
    font-size: 1em;
    text-decoration: underline;
    white-space: nowrap
}

._2NNQvq4>div a:hover {
    text-decoration: none
}

.gzyof5I {
    background: #000;
    height: 100%;
    left: 0;
    padding-left: 1.17vw;
    padding-right: 1.17vw;
    position: absolute;
    top: 0;
    width: 100%
}

@media only screen and (max-width:740px) {
    .gzyof5I {
        padding-left: 15px;
        padding-right: 15px
    }
}

@media only screen and (max-width:992px) {
    ._2h2bTiB {
        display: none
    }
}

@media only screen and (max-width:740px) {
    ._2h2bTiB {
        display: block
    }
}