Если через scale:
<header class="bggl">
<div class="bg-animation"></div>
<div class="ttop">
<div class="cnt">
<div class="nav">
<ul>
<li><a href="/" title="Каталог">Каталог</a></li>
<li><a href="/" title="О компании">О компании</a></li>
<li><a href="/" title="Медиа, новости, статьи">Медиа</a></li>
<li><a href="/" title="Контакты">Контакты</a></li>
</ul>
</div>
<div class="glcon">
контакты
</div>
</div>
<div class="cnt">
<div class="gth">
<h1>Заголовок</h1>
<p>Текст текст текст текст текст текст текст текст.</p>
</div>
</div>
</div>
</header>
.bg-animation{
background: #101402 url(https://naked-science.ru/wp-content/uploads/2016/04/article_-1_9.jpg) no-repeat center center;
background-size: auto;
background-size: cover;
transform: scale(1);
animation: pulse 20s ease-in-out infinite;
position: absolute;
top: 0;
left:0;
height: 100%;
width: 100%;
z-index: -1;
}
.bggl {
overflow: hidden;
height: auto;
min-height: 400px;
position: relative;
}
@keyframes pulse {
from {
transform: scale(1);
}
50% {
transform: scale(1.15);
}
to {
transform: scale(1);
}
}
.ttop{
padding: 25px 0 25px 0;
background: rgba(15, 23, 1, 0.5);
height: 40px;
}
.ttop>div>div:first-child,
.ttop>div>div:last-child{
flex: 1;
}
.gth{
padding: 60px 0 60px 0;
text-align:center;
}
.gth h1{
font-size:36px;
line-height: 42px;
color: #fff;
font-weight: 700;
text-transform: uppercase;
text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.3);
hyphens: manual !important;
}
.gth p {
font-size: 18px;
line-height: 24px;
color: #fff;
margin-top: 5px;
text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.3);
}
.cnt {
margin: 0 auto;
max-width: 1000px;
min-width: 280px;
width: 90%;
}
.nav ul li a{
color: #fff;
margin-right: 20px;
}
ul,li{
list-style-type: none;
}
.glcon {
justify-content: flex-end;
}
.ttop>div,
.nav ul,
.glcon{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.ttop>div{
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
Если именно для фона:
.bggl {
background: #101402 url(https://naked-science.ru/wp-content/uploads/2016/04/article_-1_9.jpg) no-repeat center center;
background-size: 100%;
height: auto;
min-height: 400px;
position: relative;
animation: pulse 20s ease-in-out infinite;
}
@keyframes pulse {
from {
background-size: 100%;
}
50% {
background-size: 150%;
}
to {
background-size: 100%;
}
}