Да, скорее всего причина именно в этом. Тем более, что тут тройная вложенность категорий. То есть запросов к базе вообще дофига. (Между прочим - можно же вроде бы через php отобразить их количество?)
И кстати это ещё не вся беда - стили css, которые я упомянул выше, присваиваются скриптом именно списку категорий. Тупо обходом всего списка.
Ещё есть отдельный вопрос: если кнопка скрыть/отобразить категории третьего уровня у вас не отображается (понятия не имею, зачем вы ей фон убили), то зачем на каждой странице в код выводить все категории третьего уровня? Ладно, если бы мы в их родительской оказались, а так - не понимаю.
Лишние запросы, лишний вес страницы, лишние тормоза скриптов