JSFiddle - React, Tailwind, and code Playground
HTML
<div class="line">
<div class="ci"><span>one</span></div>
<div class="cl"><span>two</span></div>
<div class="ci"><span>one</span></div>
<div class="cl"><span>two</span></div>
<div class="ci"><span>one</span></div>
<div class="cl"><span>two</span></div>
</div>
CSS
.line{width:930px; margin:0 auto;}
.line div {
width: 408px;
background-color:#ffffff;
border:solid 1px #B4BBCD;
min-height:35px;
text-align:justify;
word-wrap:break-word;
list-style:none;
}
.ci{ position:relative; float:right;}
.cl{ position: relative; text-align:right;}
.ci,.cl span{padding:10px;}
.line:before {
content: "";
position: absolute;
top: 0;
left: 50%;
}
.ci:before, .cl:after, .ci span:before, .cl span:after {
content: "";
position: absolute;
top: 0;
left: 0;
}
.line:before {
width: 3px;
top: -20px;
bottom: -20px;
background:#000;
}
.ci:before {
width: 5px;
height: 5px;
border: 3px solid #CCC;
border-radius: 100px;
margin: 10px 0 0 -38px;
box-shadow: 0 1px 1px rgba(0,0,0,0.2), inset 0 1px 1px rgba(0,0,0,0.1);
background: #000;
}
.ci:hover:before {
background: #090;
}
.ci span:before {
top: 12px;
left: -6px;
width: 9px;
height: 9px;
border-width: 0 0 1px 1px;
border-style: solid;
border-color: #e5e5e5;
background: #fff;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
}
/*gggggg*/
.cl:after {
width: 5px;
height: 5px;
border: 3px solid #CCC;
border-radius: 100px;
margin: 10px 0 0 445px;
background: #000;
}
.cl:hover:after {
background: #090;
}
.cl span:after {
top: 12px;
left: 404px;
width: 9px;
height: 9px;
border-width: 1px 1px 0 0;
border-style: solid;
border-color: #e5e5e5;
background: #fff;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
}