Tramplin333,
0. Простыня кода - очень хорошо, но в голове компилировать не удобно. Делайте песочницы на сервисах типа jsfiddle.net
1.
<h2 class="map_data"><li>2020</li></h2>
Это что за конструкция из тегов?
Всегда если что-то идет не по плану, начинайте с проверки валидатором.
2. Дальше я написала - начните с ширины. На скрине видно, что темные блоки занимают меньше половины ширины родителя. У вас 690 и 440.
И я бы сделала общую обертку, чтобы было кому рисовать вертикальную палку.
3. Используйте одинаковые классы для блоков и nth-child, если блоки идут поочередно.
4. Дальше подумайте, зачем вы пишете space-between, если на скрине явно видно, что никакого space-between там в помине нет.
Необходимо использовать псевдокласс :nth-child(odd) для четных строк, и :nth-child(even) для нечётных. А дальше уже внутри каждой строки ориентировать элементы с помощью flexbox