body {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-family: "Fredoka", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    box-sizing: border-box;
    
}

.bloc2{
    margin: 0;
    font-family: "Fredoka", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    box-sizing: border-box;
    background-color: #f5f9fc;
    background-image: url(bg-pagetitle.png);
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.barreFort{
    background-color: #121877;
    color: white;
    text-align: center;
    align-items: center;
    width: 100%;
    height: auto;
}

.texteBoutons:hover{
    color: #0865FF;
}

.texteBoutons{
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #041D79;
}


.bandeContact{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.barreFort p{
    font-weight: 600;
    font-size: 13px;
}
.menuBloc1{
    flex: 1;
    font-weight: 500;
    font-size: 16px;
    margin-top: 36px;
   
    display: flex;
	margin-left: 4%;
	justify-content: center; /*alignement*/
}

.menuBloc1 a{
    text-decoration: none;
    color: #000060;
    padding: 0 20px;
}

.menuBloc1 a:hover{
    color: #2D71F6;
}

.menuBloc1 a:focus{
    color: #2D71F6;
}

.accueilFaq{
    font-weight: 700;
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 80px;
}

.accueilFaq img{
    margin: 0px 5px 0px 5px;
}

.boutonContact{
    background-color:#0865FF;
    border: none;
    color: white;
    justify-content: center;
    display: flex;
    flex-direction: row;
    border-radius: 5px;
    width: 120px;
    align-items: center;
    height: 40px;
}

.suiteBoutons{
    background: none;
    border: none;
    justify-content: left;
    margin: 10px 30px auto;
}

.faqGauche{
    display: flex;
    flex-direction: column;
    width: 40%;
    justify-content: left;
}

.faqGauche img{
    width: 120px;
    height: 120px;
}

.faqDroite{
    display: flex;
    justify-content: right;
    flex-direction: column;
    width: 35%;
}

.menuFaq{
    display: none;
    margin: -40% auto 55% 40%;
}


.menuFaq img{
    width: 100px;
    height: 115px;
}

.fleche{
    width:25px;
    height: 25px;
}

.corps2{
    display: flex;
    flex-direction: row;
    justify-content: center;
    width: 80%;
    color: #121877;
    margin: 20px auto 4% auto;
}

.faqGauche p{
    font-size: 45px;
    font-weight: 700;
    margin-top: 10px;
}





/*2emeBloc*/

.bloc1main{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 5% 0 7% 0;
    width: 100%;
}

.deuxImages{
    width: 50px;
    height: 50px;
    margin-right: 20px;
}

.fleche2{
    width:25px;
    height: 25px;
    transform: rotate(-90deg);
}

.gauche{
    display: flex;
    width: 30%;
    flex-direction: column;
    justify-content: right;
    margin-left: 10%;
}

.droite{
    width: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-left: 5%;
}

.boutonFleche{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    background-color: #0865FF;
    border-radius: 5px;
    margin-left: 35%;
}

.infos{
    opacity: 0.8;
    line-height: 30px;
}

.grandTitre{
    color: #041D79;
    font-size: 45px;
    font-weight: 700;
    margin-bottom: 5px;
}

.sousTitre{
    color: #041D79;
    font-weight: 700;
    font-size: 30px;
    margin-bottom: -5px;
}

.divInfos{
    display: flex;
    flex-direction: row;
    align-items: center;
}

.titreEtInfos{
    display: flex;
    flex-direction: column;
}

.boutonProject{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    background-color: #0865FF;
    border-radius: 5px;
    color: white;
    width: 200px;
    font-weight: 600;
    margin-top: 20px;
}

.boutonProject img{
    transform: rotate(0deg);
    margin-left: 5px;
}

.premierSousTitre{
    color: #0865FF;
    font-weight: 600;
    margin-bottom: 0px;
}

/*3emebloc*/

.bloc2main{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background-color: #f4f8fc;
}

.blocHaut{
    display: flex;
    justify-content: center;
    flex-direction: column;
    background-color: #0865FF;
    height: auto;
    background-image: url(Pictures/bg-facts.png);
}

.blocServices{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: auto 10% 5% 10%;
}

.services{
    background-color: white;
    display: flex;
    flex-direction: row;
    border-radius: 5px;
    align-items: center;
    width: 23%;
    margin: 30px 15px auto 15px;
    padding: 5px 0px 10px;
}

.texteServices{
    display: flex;
    flex-direction: column;

}

.titreService{
    color: #041D79;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 0px;
}

.blocServices img{
    width: 60px;
    height: 50px;
    margin: auto 30px auto 40px;
}

.descServices{
    opacity: 0.8;
    display: flex;
    flex-wrap: wrap;
    line-height: 30px;
    margin-top: 5px;
}

.entete{
    text-align: center;
    color: white;
    margin-top: 3%;
}

.sousTitreEntete{
    font-size: 20px;
}

.suite1{
    display: flex;
    flex-direction: row;
}

.suite2{
    display: flex;
    flex-direction: row;
}

.suite1 div{
    background-color: white;
    border-radius: 10px;
    padding: 20px;
    margin: 15px;
}

.suite2 div{
    background-color: white;
    border-radius: 10px;
    padding: 20px;
    margin: 15px;
}


.suites{
    display: flex;
    flex-direction: column;
    text-align: center;
}

.grandTitre2{
    font-weight: 700;
    font-size: 45px;
    margin-bottom: 0px;
}

.nombres{
    display: flex;
    flex-direction: column;
    color: white;
    margin: auto 9% auto 9%;
}

.blocNombres{
    background-color: #0865FF;
    background-image: url(Pictures/bg-couter.png);
    display: flex;
    flex-direction: row;
    width: 70%;
    justify-content: center;
    border-radius: 10px;
    height: 170px;
    align-items: center;
    margin: 5% 0 5%;
}

.chiffres{
    font-weight: 700;
    font-size: 40px;
    margin: 0px auto 5px;
}

.numbers{
    font-size: 12px;
    font-weight: 600;
    margin-top: 0px;
}

.noms{
    font-weight: 700;
    font-size: 25px;
    color: #041D79;
    margin-bottom: 0px;
}

.metiers{
    color: #0865FF;
    margin-top: 5px;
}

.blocBas{
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: center;
}

.blocBas img{
    width: 750px;
    height: 750px;
    margin-top: -70px;
}

.titreBas{
    font-size: 40px;
    color: #041D79;
    font-weight: 700;
    margin-bottom: 0px;
    display: flex;
    flex-wrap: wrap;
}

.sousTitreBas{
    font-size: 16px;
    color: #0865FF;
    font-weight: 700;
    display: flex;
    flex-wrap: wrap;
    margin: 20px 0 30px 0;
}

.basGauche{
    display: flex;
    flex-direction: column;
    justify-content: right;
    width: 25%;
}

.basDroite{
    display: flex;
    justify-content: left;
    width: 30%;
}

.faq-answer {
    padding-top: 10px;
    display: none;
    width: 90%;
    color: #666;
    font-size: 0.9em;
    line-height: 30px;
    margin: -10px auto auto 5%;
}

.plus {
    width: fit-content;
    margin-left: auto;
    font-size: 25px;
}

.buttonRollDiv {
    display: flex;
    cursor: pointer;
    padding: 15px;
    margin-bottom: 5px;
    text-decoration: none;
    font-weight: bold;
    color: black;
    background-color: none;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.buttonRollDiv:hover{
    background-color: white;
    box-shadow: 10px 20px 30px rgba(240, 244, 255, 1);
    color: #041D79;
}

.buttonRollText {
    margin-left: 10px;
    width: fit-content;
    font-weight: 700;
    font-size: 18px;
}

.rollSection {
    display: flex;
    flex-direction: column;
    width: auto;
}

/*Bloc5*/

.bloc5 {
    margin: 0 auto;
    font-weight: 10;
    width: 100%;
}

.top5 {
    display: flex;
    background-color: #0b1263;
    background-image: url("bg-3.png");
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-top: 50px;
    padding-bottom: 50px;
}

.topTexte5 {
    display: flex;
    flex-direction: column;
    width: 40%;
    justify-content: right;
}

.topTexte5 h1 {
    width: 35vw;
    font-size: 40px;
    color: white;
    margin: 0;
}

.topTexte5 p {
    color: #08c197;
    font-size: medium;
    font-weight: 600;
}

.update img {
    width: 15px;
    height: 15px;
    margin-right: 5px;
}

.update p {
    color: white;
    opacity: 0.8;
}

.pics15 {
    display: flex;
    justify-content: left;
}

.update {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-bottom: 5px;
}

.topTexte5 button {
    padding: 10px 20px;
    font-size: 16px;
    color: white;
    background-color: #0063f4;
    border-color: #0063f4;
    border-radius: 4px;
    cursor: pointer;
    max-width: 157px;
}

.bottom5 {
    display: flex;
    margin-top: 40px;
    flex-direction: column;
    justify-content: center;
}

.menus {
    display: flex;
    flex-direction: row;
    width: 60%;
    align-self: flex-start;
    align-items: center;
    margin-left: 15vw;
}

.menu15,
.menu25,
.menu35,
.menu45 {
    display: flex;
    flex-direction: column;
    align-items: start;
    font-size: 20px;
}

.menu25,
.menu35,
.menu45 {
    margin-left: 2vw;
}

.menu15 {
    width: 15vw;
    margin-left: 5vw;
}

.menu25 {
    width: fit-content;
}

.menu35 {
    width: fit-content;
}

.menu45 {
    width: fit-content;
}

.menu4P {
    width: 18vw;
}


.menu15 p,
.menu25 p,
.menu35 p {
    opacity: 0.6;
    font-weight: 600;
    font-size: 17px;
    margin-bottom: 5px;
    width: 10vw;
}

.menu15 p,
.menu25 p,
.menu35 p,
.menu45 p {
    opacity: 0.6;
    font-weight: 600;
    font-size: 17px;
    margin-bottom: 5px;
}

.bottom5 h4 {
    color: #04006d;
    font-size: larger;
    margin-bottom: 5px;
}

.menu15 img {
    height: 17px;
}

.menu15 p {
    opacity: 1;
    color: #04006d;
    font-size: 18px;
}

.follow {
    align-items: center;
    display: flex;
    flex-direction: row;
}

.follow img {
    margin-left: 5px;
}

.copyright {
    display: flex;
    justify-content: center;
    width: 60%;
    font-weight: 600;
    opacity: 0.7;
    background-color: #F1F4FE;
    border-radius: 5px;
    margin-bottom: 20px;
    margin-top: 70px;
    height: 60px;
    margin-left: 20%;
}

.number {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.numberPhone {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.number p {
    font-size: 17px;

}

.number img {
    width: 15px;
    height: 15px;
    margin-right: 10px;
}

.follow p {
    color: #06007e;
    font-weight: bold;
    font-size: 22px;
    opacity: 1;
}

.menu45 img {
    width: 190px;
    height: 95px;
}

.rowMenus1 {
    display: flex;
}

.rowMenus2 {
    display: flex;
}



@media (max-width : 768px) {
    body {
        background-image: none;
    }

    .barreFort{
        width: 95%;
    }

    .suiteBoutons,
    .boutonContact{
        display: none;
    }

    .corps2{
        justify-content: space-between;
        width: 95%;
    }

    .bandeContact{
        flex-direction: column;
        justify-content: right;
        align-items: flex-end;
    }

    .menuFaq{
        display: flex;
    }

    .accueilFaq{
        margin-top: 0px;
    }
/**/
    .bloc111{
        width: 100%;
        flex-direction: column;
        justify-content: left;
        margin-left: 10%;
    }

    .gauche{
        width: 95%;
        margin-left: -20%;
        margin-bottom: 10%;
    }

    .boutonProject{
        width: 100%;
    }

    .boutonProject img{
        margin-right: -40%;
    }

    .boutonProject p{
        margin-right: 38%;
    }

    .droite{
        margin-left: 0%;
        width: 100%;
        margin-bottom: 10%;
    }

    .boutonFleche{
        position: absolute;
        top:69%;
        right: 2%;
    }
/**/
    .bloc112{
        width: 100%;
        flex-direction: column;
    }

    .blocServices{
        width: 95%;
        flex-direction: row;
        flex-wrap: wrap;
        column-count: 2;
        margin: 5% 0% 15% 1%;
    }

    .services{
        width: 45%;
        margin: 30px 0px auto 20px;
    }

    .service1{
        width: 53%;
        padding-right: 5%;
        margin: auto 0% auto 0%;
    }

    .suites{
        flex-direction: column;
    }

    .suite1,
    .suite2{
        flex-direction: row;
        flex-wrap: wrap;
        column-count: 2;
    }

    .blocNombres{
        width: 95%;
        flex-wrap: wrap;
        column-count: 2;
        padding: 5% 0 5% 0;
        margin: 10% auto 10% auto;
    }

    .nombres{
        text-align: center;
        margin: auto 19% auto 19%;
    }

    .blocBas{
        flex-direction: column;
        justify-content: center;
        width: 100%;
    }

    .basGauche{
        width: 95%;
        margin-left: 3%;
    }

    .blocBas img{
        width: 775px;
        height: 775px;
        margin-left: -5%;
    }

/**/
.top5 {
    flex-direction: column;
    height: auto;
    padding: 20px;
}

.topTexte5 {
    margin: 20px auto;
    width: 80%;
}

.pics15 {
    margin: 20px auto;
}

.bottom5 {
    width: 100%;
    margin: initial;
}

.menus {
    width: 100%;
    flex-direction: column;
    margin: initial;
    align-items: initial;
}

.number p {
    width: 16vw;
}

.copyright {
    width: 90%;
    align-self: center;
    margin-left: 0;
    margin-bottom: 40px;
}

.bottom5 {
    flex-direction: column;
}

.rowMenus1 {
    display: flex;
    flex-direction: row;
}

.rowMenus2 {
    display: flex;
    flex-direction: row;
    align-content: center;
}

.menu15,
.menu25,
.menu35,
.menu45 {
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
    width: 35%;
}

.menu15 p,
.menu25 p,
.menu35 p {
    width: 25vw;
}



.menu15 {

    margin-left: 2vw;
}

.menu25 {

    margin-right: 5%;
}

.menu4P {
    width: 58vw;
}

}