5 buttons on one pin.

I think your four if-statements in a row are a problem....

All of these if-statements are controlling the same LED. So no matter what happens with the 1st three statements, the LED might flash on or off so fast you can't see it, and then the last LED state (if > 300) will hold for your delay.

It doesn't look like your curly brackets are doing anything... You might need nested if-statements and/or if-else statements.

It will probably help your troubleshooting if you add some more delays and more serial outs so you can see what it's doing along the way...

P.S.
Some [u]Boolean and/or logic[/u] might help in your application too:

(This isn't code, it's just to show the logic)
(if X > 100 && X < 200) do A // If X is between 101 and 199...
(if X > 199 && X < 300) do B // if X is between 200 and 299...
(if X > 299 && X < 400) do A // If X is between 300 and 399...