JSFiddle - React, Tailwind, and code Playground

HTML

<section id="fast_signup" class="content">
                <h3>Hi!</h3>
                <form>
                    <span id="full_name_label" class="input input_jiro">
                        <input class="input__field input__field--jiro" type="text" id="input-1" />
                        <label class="input__label input__label--jiro" for="input-1">
                            <span class="input__label-content input__label-content--jiro">Full Name</span>
                        </label>
                    </span>
                    <span class="input input_jiro">
                        <input class="input__field input__field--jiro" type="text" id="input-2" />
                        <label class="input__label input__label--jiro" for="input-2">
                            <span class="input__label-content input__label-content--jiro">Email</span>
                        </label>
                    </span>
                    <span class="input input_jiro">
                        <input class="input__field input__field--jiro" type="password" id="input-3" />
                        <label class="input__label input__label--jiro" for="input-3">
                            <span class="input__label-content input__label-content--jiro">Password</span>
                        </label>
                    </span>

                    <span class="input input_jiro">
                        <button id="btn_start_account" class="btn">Sign Up</button>
                    </span>

                </form>
            </section>

CSS

body {
    background: #666;
}


*:focus {
  outline: 0;
}

.input {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin: 1em;
  max-width: 200px;
  width: calc(100% - 2em);
  vertical-align: top;
}

.input__field {
  position: relative;
  display: block;
  float: right;
  border: none;
  border-radius: 0;
  background: #333;
  color: #fff;
  font-weight: 600;
  -webkit-appearance: none;
  /* for box shadows to show on iOS */
}

.input__field:focus {
  outline: none;
}

.input__label {
  display: inline-block;
  float: right;
  padding: 0 1em;
  width: 40%;
  color: #eee;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.input__label-content {
  position: relative;
  display: block;
  padding: 1.6em 0;
  width: 100%;
}

.input_jiro {
  margin: 2em 40px 0 0;
}

.input__field--jiro {
  opacity: 0;
  display: block;
  padding: 20px 0;
  width: 100%;
  color: #DDE2E2;
  text-align: center;
  font-size: 1.125em;
  text-indent: 20px;
  background: transparent;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  overflow: hidden;
}

.input__label--jiro {
  position: absolute;
  left: 0;
  padding: 0 0.85em;
  width: 100%;
  height: 100%;
  text-align: left;
}

.input__label-content--jiro {
  -webkit-transition: -webkit-transform 0.3s 0.3s;
  transition: transform 0.3s 0.3s;
}

.input__label--jiro::before,
.input__label--jiro::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}

.input__label--jiro::before {
  border-top: 2px solid #333;
  -webkit-transform: translate3d(0, 100%, 0) translate3d(0, -2px, 0);
  transform: translate3d(0, 100%, 0) translate3d(0, -2px, 0);
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.input__label--jiro::after {
  z-index: -1;
  background: #333;
 ...