The problem is that you've added some custom CSS for the header & footer, which is overriding the CSS for the media query which controls the responsiveness. All you need to do is recopy the media query to the end of your custom CSS:
/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
#wrapper {width: 100%; margin: 0 auto; padding: 10px 0;}
#header, #footer {
overflow: hidden;
width: auto;
position: static;
padding: 0 20px;
}