Oracle is not complaining about your sql statement being larger than 255 characters.

You are getting the error at line 24; dbms_output.put_line cannot print more than 255 characters in a single line and that's a hard coded limit.
You can always do it by yourself perhaps resorting to dbms_output.new_line function.