I was previously using this answer to hide checkout fields based on chosen shipping method, it worked fine until an update (3.4.2 current version) I think not sure what has
you can easily use css in this
.woocommerce form .form-row .required{ display: none ; } .woocommerce form .form-row .optional{ display: none ; }