MySQL riserva sempre l'importo massimo per un UTF8
campo che è di 4 byte quindi con 255 + 255
con il tuo DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
; hai superato il limite massimo di 767 chiavi.
Puoi solo ridurre la singola lunghezza varchar o non utilizzare una chiave composta.