.dn {
    display:none;
}
.fl {
    float:left;
}
.fr {
    float:right;
}
.fwb {
    font-weight:bold;
}
.pd0 {
    padding:0;
}
.pd10 {
    padding:10px;
}
.pdb10 {
    padding-bottom:10px;
}
.pdt10 {
    padding-top:10px;
}
.tl {
    text-align:left;
}
.w-100 {
    width: 100%!important;
}
.mw100 {
    min-width:100px;
}
.mw120 {
    min-width:120px;
}
.carousel-inner>.active {
    left:5px !important;
}
.carousel-item {
    right:5px !important;
}
.fa-chevron-left:before {
    font-size: 25px;
}
.fa-chevron-right:before {
    font-size: 25px;
}

.flex-row {
  display: flex;
  display: -ms-flexbox;
  flex-wrap: wrap;
  justify-content: center;
}
.header_presentation_droite {
    position:absolute;
    right:0;
    bottom:10px;
}
.header_presentation_droite .ligne1 {
    text-align:left;
}
.colonne_gauche_haut {
    position: absolute;
    bottom: -60px;
    left:0;
}
.colonne_gauche_haut .bloc1 {
    font-size: 13px;
    display: inline-block;
    background-color: #073069;
    padding: 0;
    border:5px solid #e5e5e5;
}
.colonne_gauche_haut .bloc1 .logo {
    background:#fff;
}
.colonne_gauche_haut .bloc1 .logo img {
    max-width:290px;
}
.colonne_gauche {
    position: relative;
    top: 60px;
}
.colonne_centrale {
}

.header_bgimg {
    background-size:cover; /*100%*/
    /*box-shadow:4px 4px 6px #888;*/
    margin-top:15px;
}

.colonne_gauche_haut .bloc1_logo_bottom {
    position:relative;
    bottom:-20px;
    border-top:1px solid #073069;
}
.colonne_gauche_haut .bloc-col-gauche-top-white {
    background-color:#fff;
    float:left;
    max-width: 48%;
    padding:1em;
    font-size:12px;
    min-height: 57px;
    line-height: 15px;
    position:relative;
    top:-20px;
}
.colonne_gauche_haut .bloc-col-gauche-top-bleu {
    background-color:#073069;
    float:left;
    color:#FFF;
    max-width: 52%;
    padding:1em;
    font-size:12px;
    min-height: 57px;
    line-height: 15px;
    position:relative;
    top:-20px;
}
.bgwhite {
    background-color:#fff;
}
.bgbleu {
    background-color:#073069;
}
.colorwhite {
    color:#fff;
}
.ligne1 .colwhite, .ligne2 .colwhite {
    text-shadow: #000 1px 0 10px;
}
.colorbleu {
    color:#167ac6;
}

.offre_gauche {
    padding-top:10px;
}
.offre_aff {
    font-size:13px;
    text-align:left;
    padding:10px 0 10px 10px;
    border-bottom:2px solid #E9E9E9;
}
.offre_aff a {
    font-weight:bold;
    text-align:left;
    color:#000;
}
.offre_all {
    display:grid;
    padding-top:10px;
}
.offre_all a {
    background-color: #084878;
    color: #fff;
    font-size: 14px;
    padding: 10px 20px;
    clear: both;
    cursor:pointer;
}

.bloc2, .bloc3, .bloc4 {
    clear: both;
    margin-top: 20px;
    padding-top: 10px;
    border:7px solid #eee;
}
.bloc2 {
    margin-top: 10px;    
}
.bloc4 {
    margin-bottom:70px;
}
.bloc3 .titre_facultatif {
    font-weight:bold;
    font-size:16px;
    padding-top:5px;
}
.bloc3 .texte_facultatif {
    font-size:13px;
    text-align:justify;
    padding:13px;
    line-height:20px;
}
.bloc3 .texte_facultatif ul {
    margin-left:15px;
}
.bloc3 .texte_facultatif li {
    line-height:2em;
}
.bloc4 .adresse_postale {
    font-weight:bold;
    font-size:14px;
}

/*CENTRE*/
.onglets_centre {
    float:left;
}

.onglets_centre, .informations, .presentation, .locaux, .chantier {
    clear:both;
    margin-top:2px;
}
.informations, .presentation, .locaux, .chantier {
    margin-bottom:30px;
}
.onglets_centre a {
    color:#000;
    height:38px;
}
.onglets_centre a:hover {
    border-bottom:4px solid #167ac6;
    text-decoration:none;
}

.profil-onglet, .equipe-onglet, .chantier-onglet, .emploi-onglet, .actu-onglet {
    float:left;
    padding:10px 20px;
}
.profil-onglet {
    padding:10px 20px 10px 10px;
}

.ligne_hor {
    border-bottom:1px solid #eee;
    clear: both;
}
.informations h3 {
    text-align:left;
}
.informations .info_texte {
    font-size:14px;
    text-align:justify;
    line-height:25px;
}




/*Présentation et interview / Locaux et équipes / Les plus beaux chantiers*/
.presentation_titre {
    text-align:left;
    font-weight:bold;
    padding:20px 0 10px;
    /*float:left;*/
}
.presentation_media {
    background-color:#f9f9f9;
    padding:5px 0;
}

span.nb_off {
    display: inline-block;
    margin-left: 0.5rem;
    transform: translateY(-0.4rem);
    line-height: 1;
    background-color: #0077b3;
    color: rgb(255, 255, 255);
    font-size: 0.7rem;
    padding: 0.3rem 0.5rem;
    border-radius: 20px;
}

.ligne2_texte {
    color: #fff;
    float: left;
    /*background-color: rgba(153, 153, 153, 0.8);*/
    padding: 0px 10px 2px 4px;
}


@media (max-width: 990px) {
    .colonne_centrale {
        top:60px;
    }
}

@media (max-width: 770px) {
    .container {
        max-width:100%;
    }
    .header_presentation_droite {
        top:0;
    }
    .colonne_gauche {        
        max-width: 100%;
        flex: 100%;
    }
    .colonne_centrale {
        top:100px;
        max-width: 100%;
        flex: 100%;
    }
    .colonne_gauche_haut {
    }
    .flex-row :nth-child(1) {
        order:2;
    }
    .colonne_gauche_haut .bloc1 {
        position:relative;
        top:50px;
    }
    .colonne_gauche_haut .bloc1 .logo img {
        border:1px solid #000;
    }
    .bloc2 {
        margin-top:70px;
    }
}

@media (max-width: 500px) {
    .carousel-control-prev {
        left:-10px !important;
    }
    .carousel-control-next {
        right:-10px !important;
    }
}

@media (max-width: 305px) {
    .colonne_centrale {
        top:130px;
    }
    .colonne_gauche_haut {
        padding:0;
    }
}