You will never get two events to happen simultaneously (or close) using delay.
During the delay call, nothing happens (except that interrupts get processed).
Start by modifying this code to get rid of the delay calls. Look at the Blink Without Delay example.
Basically, what you need to do is keep track of what time it is now (relative to some event) (that's what the millis function is for) and when some event last occurred (when was the LED last turned on/off). Then, determine if it is time to do something again. If not, do nothing. Otherwise, do something, and update the time when the event last occurred.