Это не совсем та форма, которая у вас есть на изображении, но она проста и, вероятно, достаточно близка:
#box {
border:1px solid #000;
border-radius: 10px 0px 0px 10px / 50% 0% 0% 50%;
width: 200px;
height: 100px;
background-color: #ccc;
}
<div id="box"></div>
Приведенное выше решение использует эллиптический радиус границы, который задается с помощью косой черты (/).
Другой подход здесьгораздо ближе к исходному изображению, но для его реализации требуется значительно больше кода, и его тоже немного ломче:
#wrapper {
overflow: hidden;
width: 200px;
}
#box::before {
position: relative;
display: block;
content: "";
margin-left: -20px;
background: #ccc;
height: 400px;
width: 400px;
margin-top: -75%;
border-radius: 50%;
z-index: -10;
}
#box {
float: left;
position: relative;
margin-left: 20px;
width: 200px;
height: 100px;
background-color: #ccc;
}
#content {
position: absolute;
height: 100%;
width: 100%;
top: 0px;
}
<div id="wrapper">
<div id="box">
<div id="content">
</div>
</div>
</div>
В этом подходе используется большой круг, который затем обрезается на #wrapper
делением с использованием overflow: hidden;
.#content
div не является строго необходимым для фигуры, но может упростить размещение чего-либо внутри коробки.