Свойства border, как сделать?
Ну можно так, https://codepen.io/aliencash/pen/Bmdpqx?editors=1100
Только посчитайте по точнее размеры.
4 элемента это перебор, конечно. Ведь достаточно всего двух! Ну и изменять :before, :after у них.
Если по-нормальному, то градиентом.