Можно через js
У тебя 4 колонки, каждая из которых имеет примерно следующий вид:
<div class="overflow" style="overflow:hidden; height:800px;">
<div class="scroll" style="height:100%;">
<div class="item"></div>
</div>
</div>
.overflow - div в котором прокручивается карусель
.scroll - div в котором содержаться фото. Имеет высоту равную сумме высот фото и отступов. Желательно вычислять как .item.clientHeight, перебрав все фото через for и не забыв прибавить отступы.
.scroll можно установить в position:absolute и изменять top через js и перемещая ушедшие за экран item в конец через replaceChild
Реализация подобного функционала
https://learn.javascript.ru/task/carousel