.photogalleryFrame { width: 100%; float: left; margin: 30px 0 0 0; display: flex; flex-wrap: wrap; justify-content: center; }
.photogalleryFrame a { width: 20%; *outline: 0; overflow: hidden; }
.photogalleryFrame img { width: 100%; }


@media screen and (min-width: 1001px)
{
  .photogalleryFrame a { -webkit-flex-basis: calc(25% - 1px); }
  .photogalleryFrame a { width: calc(25% - 1px); flex-basis: calc(25% - 1px); margin-bottom: 1px;}
  .photogalleryFrame a:not(:nth-child(-n + 4)) { *margin-top: 25px; }  
  .photogalleryFrame a:not(:nth-child(4n)) { margin-right: 1px; }
}

@media screen
and (max-width: 1001px)
and (min-width: 701px)
{
  .photogalleryFrame a { -webkit-flex-basis: 33.33%; }
  .photogalleryFrame a { width: 33.33%; flex-basis: 33.33%; }
  .photogalleryFrame a:not(:nth-child(-n + 3)) { *margin-top: 20px; }
  .photogalleryFrame a:not(:nth-child(3n)) { *margin-right: 2.5%; }
}

@media screen
and (max-width: 700px)
and (min-width: 481px)
{
  .photogalleryFrame a { -webkit-flex-basis: 50%; }
  .photogalleryFrame a { width: 50%; flex-basis: 50%; }
  .photogalleryFrame a:not(:nth-child(-n + 2)) { *margin-top: 15px; }
  .photogalleryFrame a:not(:nth-child(2n)) { *margin-right: 2.5%; }
}

@media screen and (min-width: 481px)
{
  .photogalleryFrame { display: flex; flex-wrap: wrap; justify-content: flex-start; }
}

@media screen and (max-width: 480px)
{
  .photogalleryFrame a { width: 100%; float: left; }
  .photogalleryFrame a:not(:last-child) { *margin-bottom: 15px; }
}
