.cp_button07 {
position: relative;
display: flex;
justify-content: center;
align-items: center;
width: 160px;
padding: 1em;
cursor: pointer;
background: #009688;
color: #ffffff;
border: none;
border-radius: 100px;
transition: color 0.3s cubic-bezier(0.02,0.01,0.47,1),transform 0.3s cubic-bezier(0.02,0.01,0.47,1);
overflow: hidden;
z-index: 1;
}
.cp_button07:after,
.cp_button07:before {
position: absolute;
right: 0;
bottom: 0;
content: '';
width: 100px;
height: 100px;
border-radius: 50%;
background: #009688;
transition: transform 0.15s cubic-bezier(0.02,0.01,0.47,1),opacity 0.15s cubic-bezier(0.02,0.01,0.47,1);
transform: translate(100%,-25%) translateZ(0);
opacity: 0;
z-index: -1;
}
.cp_button07:after, .cp_button07:before {
background: #ffffff;
}
.cp_button07:hover {
color: #ffffff;
box-shadow: 0 1px 8px rgba(0,0,0,0.3);
transition: all 0.5s cubic-bezier(0.02,0.01,0.47,1);
transform: scale(1.1) translateZ(0);
}
.cp_button07:hover:before {
transition: transform 0.2s cubic-bezier(0.02,0.01,0.47,1),opacity 0.2s cubic-bezier(0.02,0.01,0.47,1);
transform: translate3d(50%,0,0) scale(0.9);
opacity: 0.15;
}
.cp_button07:hover:after {
transition: transform 0.2s cubic-bezier(0.02,0.01,0.47,1) 0.05s,opacity 0.2s cubic-bezier(0.02,0.01,0.47,1) 0.05s;
transform: translate(50%) scale(1.1);
opacity: 0.25;
}
.cp_button07:active {
opacity: 0.5;
}
.cp_button07:focus {
color: #ffffff;
}