Я думаю, что для этого дизайна самой простой вещью может быть удержание заголовков внутри одного и того же div и использование отрицательного левого поля, чтобы создать иллюзию, что они находятся снаружи. Любое решение JS потребовало бы использования прослушивателя с прокруткой, который, вероятно, вызвал бы проблемы с производительностью, если бы не регулировался, или выглядел неуклюже, если регулировался. У меня нет времени кодировать примерную версию, но, надеюсь, это поможет