On large screens, the vertical line of the gradient is obviously thinner then the horizontal one, allthough they both should be 1vw, which is why it does not overlap properly with the items behind it.
Seting the gradient 'to right' resolves the issue
<div class="container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<br />
</div>