Что создает проблему в вашей анимации - это отступы, вы знаете, отступы на расстоянии от вышеуказанного элемента, поэтому здесь в вашем случае вам нужно добавить свойство translate для анимации ваших текстов один за другим, не влияя друг на друга, просто так :
@import url('https://fonts.googleapis.com/css?family=Roboto:400,500,700&display=swap');
.slide-heading {
font-size: 50px;
font-family: 'Roboto', sans-serif;
font-weight: 900;
margin: 100px 0 30px 0;
width: 75%;
animation: slide-up 2s;
animation-iteration-count: 1;
animation-delay: 1s;
}
.slide-text {
line-height: 1.75;
font-family: 'Roboto', sans-serif;
font-size: 13px;
font-weight: 300;
width: 60%;
margin: 0 0 60px 0;
animation: slide-up 5s;
animation-iteration-count: 1;
animation-delay: 1s;
}
.slide-btn {
font-family: 'Roboto', sans-serif;
animation: slide-up 5s;
animation-iteration-count: 1;
animation-delay: 1s;
}
@keyframes slide-up {
from {
transform: translateY(100px);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
<div class="slide-heading">Lorem Ipsum </div>
<div class="slide-text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas venenatis est metus, ac viverra quam rutrum vitae. Phasellus eget egestas arcu. Nulla porttitor at justo egestas ornare. </div>
<div class="slide-btn"><button class="btn btn-primary" type="submit">More</button></div>
Работает, я проверил. Надеюсь, это поможет вам.