Использование кирпичной кладки здесь не лучший вариант. Поскольку каждый список должен начинаться и заканчиваться в одном столбце (каждый список имеет первый элемент, который является своего рода заголовком).
Другой вариант - у вас есть 4 столбца, тогда вы можете сложить 2 списка в один столбец (вам нужно найти хорошую комбинацию, чтобы она выглядела упорядоченной)
Пример:
.list-container {
display: flex;
}
.col {
flex: 1;
}
ul {
list-style-type: none;
margin: 0;
padding: 0;
margin-bottom: 16px;
}
ul li {
}
ul li:first-of-type {
font-weight: bold;
padding-bottom: 10px;
}
<div class="list-container">
<div class="col">
<ul>
<li>Group 1</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
</ul>
<ul>
<li>Group 2</li>
<li>Item</li>
<li>Item</li>
</ul>
</div>
<div class="col">
<ul>
<li>Group 3</li>
<li>Item</li>
<li>Item</li>
</ul>
<ul>
<li>Group 4</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
</ul>
</div>
<div class="col">
<ul>
<li>Group 5</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
</ul>
<ul>
<li>Group 6</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
<li>Item</li>
</ul>
</div>
<div class="col"></div>
</div>
И если вы ищете способ сгруппировать их автоматически, чтобы они имели почти одинаковую высоту, вам нужно либо вручную, либо использовать javascript или код сервера для обработки этого (который по-прежнему требует наличия хороших комбинаций)