JSFiddle - React, Tailwind, and code Playground

HTML

<div class="container">
    <div class="color-1">
        <a class="link link--dumet" href="#" data-letters="DUMET School">DUMET School</a>
    </div>
</div>

CSS

* {margin: 0; padding: 0;}
body {
    font-family: arial;
}

.container {
    background-color: #1F1F20;
    padding: 100px 0;
}

.color-1 {
    width: 475px;
    margin: auto;
}

/* General link styles */
.link {
	outline: none;
	text-decoration: none;
	position: relative;
	font-size: 58px;
	line-height: 1;
	color: #9e9ba4;
	display: inline-block;
}

/* Style Efek Hover */
.link--dumet {
	text-transform: uppercase;
	font-weight: 900;
	overflow: hidden;
	line-height: 2.75;
	color: #FFF;
}

.link--dumet:hover {
	color: #FFF;
}

.link--dumet::after {
	content: '';
	position: absolute;
	height: 5px;
	width: 100%;
	top: 50%;
	margin-top: -5px;
	right: 0;
	background: #F9F9F9;
	-webkit-transform: translate3d(-100%,0,0);
	transform: translate3d(-100%,0,0);
	-webkit-transition: -webkit-transform 0.4s;
	transition: transform 0.4s;
	-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.link--dumet:hover::after {
	-webkit-transform: translate3d(100%,0,0);
	transform: translate3d(100%,0,0);
}

.link--dumet::before {
	content: attr(data-letters);
	position: absolute;
	z-index: 2;
	overflow: hidden;
	color: #2B4C7E;
	white-space: nowrap;
	width: 0%;
	-webkit-transition: width 0.4s 0.3s;
	transition: width 0.4s 0.3s;
}

.link--dumet:hover::before {
	width: 100%;
}