@media (max-width: 764px) {
    /* Telas mobile */
    #fotos{
        display: flex;
        flex-direction: column;
        max-width: 100%;
        overflow-x: hidden;
    }
    img{
        width: 100%;
        max-width: 100%;
        height: auto;
        display: block;
        text-align: center;
        padding: 10px;
    }
}

@media (min-width: 764px) and (max-width:994px){
    /* Telas tablet */
    #fotos {     
        display: flex;     
        flex-flow: row wrap;     
    }     
    div.coluna {         
        padding: 0px 5px;         
        flex: 1 1 50%;     
    }      
    div > img {         
        width: 100%;         
        padding-bottom: 10px; 
    }
}

@media (min-width: 995px){
    /* Telas pc */
    #fotos{
        display: flex;
        flex-direction: row;
    } 
    .coluna{
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    img{
        width: 100%;
        padding: 5px;
    }
}