Причиной вертикального перемещения кнопки является появление полосы прокрутки после развертывания панели навигации, мы можем исправить это, заставив полосу прокрутки появляться, даже если панель навигации не развернута. Чтобы исправить это, мы можем использовать:
body
overflow: scroll
Что касается горизонтального движения, мы можем исправить это, добавив верхнее значение для кнопки меню:
top: 1.3rem
вот ссылка jsfiddle к исправлению: https://jsfiddle.net/6jt4hL9v/