Необходимо добавить анимацию изменения ширины. Без использования js, при условии что мы не знаем начальную ширину элемента.
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>
.element {
position: absolute;
left: 0;
transition: ease opacity .5s, ease left 0s;
transition-delay: 0s, 0s;
&:not(.is-active) {
left: -99999px;
opacity: 0;
transition-delay: 0s, 0.5s;
}
}