JSFiddle - React, Tailwind, and code Playground

HTML

<div class="menu">
    <div class="menu-item">
        <div class="menu-item__line"></div>
        <a href="#" class="menu-item__link">My bag</a>
    </div>
    <div class="menu-item">
        <div class="menu-item__line"></div>
        <a href="#" class="menu-item__link active">Shipping and Billing</a>
    </div>
    <div class="menu-item">
        <div class="menu-item__line"></div>
        <a href="#" class="menu-item__link">Payment</a>
    </div>
    <div class="menu-item">
        <div class="menu-item__line"></div>
        <a href="#" class="menu-item__link">Confirmation</a>
    </div>
</div>

CSS

.menu {
    position: relative;
    float: left;
    font-family: Georgia, "Time New Roman", Times, serif;
    font-style: italic;
}
.menu-item {
    position: relative;
    float: left;
    text-align: center;
     padding: 10px 10px 25px;
}
.menu-item__line {
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%;
    height: 1px;
    background: #000;
    z-index: 1;
}

.menu-item:first-child .menu-item__line {
    left: 50%; width: 50%;
}
.menu-item:last-child .menu-item__line {
    width: 50%;
}

.menu-item__link {
    display: inline-block;
    z-index: 2;
    color: #000;
    text-decoration: none;
}
.menu-item__link:after {
    position: absolute;
    display: block;
    content: "";
    z-index: 3;
    bottom: 0;
    left: 50%;
    width: 18px;
    height: 18px;
    border: 1px solid #000;
    background: #fff;
    border-radius: 50%;
    margin-left: -10px;
}
.menu-item__link.active:after,
.menu-item__link:hover:after {
    background: #000;
}