Customize a checkbox input is always a good case to practice pseudo-class, pseudo-element, and adjacent sibling combinator selectors.
But if you like fontawesome, maybe you can try this.
See the Pen dpenA by naiting (@sliiice) on CodePen.