body:before{
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:url(https://alicex.jp/data/snkk/img/snkk_upld_9.png);
  background-repeat;
}

a{
  position: relative;
  display: inline-block;
  transition: .3s;
}

a::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: '';
  width: 0;
  height: 2px;
  background-color: #ccff00;
  transition: .3s;
  transform: translateX(-50%);
}

a:hover::after{
  width: 100%;
}

<style type="text/css">
<!--
table{
	border-spacing: 0;
	border-collapse: separate;
}
table th,table td{
	border-top: 1px solid #A2A2A2;
	border-left: 1px solid #A2A2A2;
}
table th{
	width: 300px;
	padding: 2px 3px;
	background: #FFFFFF;
	color: #000000;
	font-weight: normal;
}
table tr:nth-child(even) th{
	background: #FFFFFF;
}
table td{
	padding: 1px 5px;
	background: #FCFCFC;
	color: #000000;
}
table th:last-child,table td:last-child{
	border-right: 1px solid #A2A2A2;
}
table tr:last-child th,table tr:last-child td{
	border-bottom: 1px solid #A2A2A2;
}
table tr:first-child :first-child{
	border-top-left-radius: 10px;
}
table tr:first-child :last-child{
	border-top-right-radius: 10px;
}
table tr:last-child :first-child{
	border-bottom-left-radius: 10px;
}
table tr:last-child :last-child{
	border-bottom-right-radius: 10px;
}
table tr:not(:first-child) th,table tr:not(:first-child) td{
	border-top:none;
}

--> 
</style>