* {
    margin: 0;
    padding: 0;
}

section {
    position: relative;
    height: 100vh;
    width: 100%;
    background: skyblue;
    overflow: hidden;
}

section .wave {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: url(wave.png);
    background-size: 1000px 100px;
}

section .wave.wave1 {
    z-index: 1000;
    animation: animate 30s linear infinite;
    opacity: 1;
    animation-delay: 0s;
    bottom: 0;
}

@keyframes animate {
    0% {
        background-position-x: 0;
    }
    100% {
        background-position-x: 1000px;
    }
}

section .wave.wave2 {
    z-index: 999;
    animation: animate2 15s linear infinite;
    opacity: 0.5;
    animation-delay: -5s;
    bottom: 10px;
}

@keyframes animate2 {
    0% {
        background-position-x: 0;
    }
    100% {
        background-position-x: -1000px;
    }
}

section .wave.wave3 {
    z-index: 998;
    animation: animate3 15s linear infinite;
    opacity: 0.2;
    animation-delay: -2s;
    bottom: 15px;
}

@keyframes animate3 {
    0% {
        background-position-x: 0;
    }
    100% {
        background-position-x: -1000px;
    }
}

section .wave.wave4 {
    z-index: 997;
    animation: animate2 15s linear infinite;
    opacity: 0.7;
    animation-delay: -7s;
    bottom: 20px;
}

@keyframes animate4 {
    0% {
        background-position-x: 0;
    }
    100% {
        background-position-x: -1000px;
    }
}