main > .container {
    padding: 70px 15px 20px;
}

.footer {
    background-color: #f5f5f5;
    font-size: .9em;
    height: 60px;
}

.footer > .container {
    padding-right: 15px;
    padding-left: 15px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    content: '';
    left: 3px;
    display: inline-block;
    width: 0;
    height: 0;
    border: solid 5px transparent;
    margin: 4px 4px 2px 4px;
    background: transparent;
}

a.asc:after {
    border-bottom: solid 7px #212529;
    border-top-width: 0;
}

a.desc:after {
    border-top: solid 7px #212529;
    border-bottom-width: 0;
}

.grid-view th {
    white-space: nowrap;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.nav li > form > button.logout {
    padding-top: 7px;
    color: rgba(255, 255, 255, 0.5);
}

@media(max-width:767px) {
    .nav li > form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 0;
    }
}

.nav > li > form > button.logout:focus,
.nav > li > form > button.logout:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.75);
}

.nav > li > form > button.logout:focus {
    outline: none;
}

@media (min-width: 1200px) {
    .container, .container-sm, .container-md, .container-lg, .container-xl {
        max-width: 1500px;
    }
}

.homepage .header {
    background-color: #000;
    color: #fff;
    padding-top: 25px;
    padding-bottom: 25px;
}


.homepage .logo .fil10 {
    fill: #babd15;
    fill-rule: nonzero
}

.homepage .logo .fil8 {
    fill: url(#id9)
}

.homepage .logo .fil3 {
    fill: url(#id8)
}

.homepage .logo .fil0 {
    fill: url(#id7)
}

.homepage .logo .fil2 {
    fill: url(#id6)
}

.homepage .logo .fil1 {
    fill: url(#id5)
}

.homepage .logo .fil7 {
    fill: url(#id4)
}

.homepage .logo .fil4 {
    fill: url(#id3)
}

.homepage .logo .fil6 {
    fill: url(#id2)
}

.homepage .logo .fil5 {
    fill: url(#id1)
}

.homepage .logo .fil9 {
    fill: url(#id0);
    fill-rule: nonzero
}


.homepage .phones {
    font-size: 170%;
    font-weight: bold;
}

.homepage .social {
    fill: #fff;
    margin-top: 15px;
}

.homepage .social svg {
    width: 35px;
    height: 35px;
    color: #fff; !important;
}
.homepage .item-text {
    color: #fff;
    font-weight: bold;
    font-size: 215%;
    padding-top: 30px;
    text-shadow: 1px 1px 1px #000;
}
.homepage .footer {
    background-color: #000;
}

.site-index {
    position: relative;
}


.bg-black {
    background-color: #000;
}

.location-address {
    position: absolute;
    botton: 0px;
    right: 0px;
    width: 450px;
    height: 100px;
    font-weight: 400;
    font-size: x-large;
    color: #ffffff;
    text-shadow: 3px 3px 3px #000;
}

.area-description {
    display:none;
    position: absolute;
    top: 50px;
    left: 50px;
    background: url(../img/itemBg.svg);
    background-size: cover;
    border-radius: 2.5rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    padding-left: 20px;
    padding-right: 20px;
    text-align: left;
    font-weight:bold;
    font-size: large;
    color: #fff;
    text-shadow: 2px 2px 2px #000;
    max-width: 350px;


}

/*Title page*/

.body-site-index{
    background: url('/web/img/bg_title.jpg');
    background-size: cover;
    background-repeat: no-repeat;
}

.logo{
    width: 350px;
    margin-top: 30px;
    margin-left: 15px;

}

.header-tel-block{
    padding-top: 30px;
    padding-right: 30px;
}

.header-tel{
    color: white;
    color: white;
    font-size: 42px;
    font-weight: bold;
    text-shadow: 1px 2px 3px #00f;
}

.site-index-index{
    position: relative;
    background: rgba(255,255,255,0.4);
    margin-top: 50px;
    padding-top: 25px;
    padding-bottom: 25px;
}

.first-card{
    background-color: #002752 !important;
    color: #fff;
    font-size: 190%;
}

.second-card{
    padding-top: calc(50% - 60px) !important;
    font-size: 150%;
    font-weight: bold;
    min-height: 250px !important;
}

.third-card{
    background: url('/web/img/bg_title.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 250px !important;
}

/*view-map*/

.btn-white{
    color: #007bff !important;
    background-color: #fff !important;
    font-size: 180% !important;
    font-weight: bold !important;
    padding: .8rem 1.5rem !important;
    margin-top: 15px;
}
.view-map-img{
    width: calc(100% - 30px);
    margin-left: 15px;
}

.site-index-index img {
    width: calc(100% - 30px);
    margin-left: 15px;
}

.site-index-index #area_map {
    position: absolute;
    top: 15px;
    left: 0;
}
.site-index .area {
    fill: #d1ff2c;
    opacity: .3;
}

.site-index-index .area:hover {
    transition: opacity .2s ease;
    opacity: 0.5;
}

.area_description-card {
    position: absolute ;
    top: 40px;
    left: 35px;
    width: 350px;
    max-width: 100%;
    font-size: 100%;
}
a:hover {
    font-weight: bold;
    text-decoration: underline;
}
.close{
    display: none;
}

@media (min-width: 768px){
    .h-md-100 {
        height: 100% !important;
    }
    .header-tel{
        font-size: xx-large;
    }

}


@media (min-width: 370px) and (max-width: 425px){
    .logo{
    width: 95%;
    }
    .header-tel{
        font-size: xx-large;
    }
    .area_description-card{
        position:fixed;
        display:flex;
        align-items:center;
        justify-content:center;
        top:10px;
        left:5%;
        width:90vw;

    }
    .close{
        display: block;
        position: relative;
        color: #fff;
        padding-left: 315px;
        font-size: 2rem;
    }

    .site-index-index{
        margin-bottom: 50px;
    }


}
@media (min-width: 320px) and (max-width: 370px) {
    .logo{
        width: 95%;
    }
    .header-tel{
        font-size: x-large;
    }
    .area_description-card{
        position:fixed;
        display:flex;
        align-items:center;
        justify-content:center;
        top:10px;
        left:5%;
        width:90vw;

    }
    .close{
        display: block;
        position: relative;
        color: #fff;
        padding-left: 250px;
        font-size: x-large;
    }
    .site-index-index{
        margin-bottom: 50px;
    }
}
