Ваш предоставленный код не воссоздает показанные вами условия, но самый простой способ добиться того, что вы хотите, это изменить object-fit: contain;
на object-fit: cover;
Я старался изо всех сил воссоздать ваши условия и сделал несколько правок для упрощения элементов управления.
Значение justify: flex-end
в классе изображений не имеет смысла, и значения высоты% работали против вас, поэтому я обменял его на отступы.
.wrap-container {
background-color: yellow;
display: flex;
justify-content: center;
width: 100%;
}
.wrap {
background: grey;
display: flex;
width: 100%;
max-width: 450px;
}
.image {
background: aqua;
padding-top: 10%;
Width: 50%;
display: flex;
flex-direction: column;
}
img {
background: red;
object-fit: cover;
object-position: center;
max-height: 300px;
}
<div class="wrap-container">
<!-- Yellow container-->
<div class="wrap">
<!-- Grey container-->
<div class="image">
<!-- Aqua container-->
<img src="https://source.unsplash.com/random" />
<!-- Red container-->
</div>
</div>
</div>