CSS
/* ------------------------------
#menuList
------------------------------ */

#contents {
    margin: 0 auto;
    padding: 40px 0;
    width: 800px;
    text-align: left;
}

#contents p {
    padding-bottom: 2em;
    font-size: 1em;
    line-height: 2em;
}

/* ------------------------------
MEDIAQUERIES LAYOUT
------------------------------ */

@media only screen and (max-width: 800px) {
    #menuList ul {
        width: 100%;
    }

    #menuList ul li {
        width: 20%;
    }
}

/* ------------------------------
MEDIAQUERIES[SP]LAYOUT
------------------------------ */

@media only screen and (max-width: 960px) {
    #menuList {
        display: none;
    }

    #menuOverlay {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.6);
        display: none;
        position: fixed;
        z-index: 9997;
    }

    #switchBtnArea {
        width: 100%;
        height: 50px;
        background: #f2f2f2;
        border-bottom: #8CB900 1px solid;
        position: fixed;
        z-index: 9997;
    }
    #switchBtnArea:after {
        position: absolute;
        top: 15px;
        right: 10px;
        content: " ";
        display: inline-block;
        width: 100px;
        height: 20px;
        background: url(../image/logo.png);
        background-repeat: no-repeat;
        background-size: contain;
        vertical-align: middle;
    }
    #switchBtnArea #switchBtn {
        top: 5px;
        left: 10px;
        width: 40px;
        height: 40px;
        display: block;
        background: #8CB900;
        position: absolute;
        border-radius: 5px;
        z-index: 9998;
    }

    #switchBtnArea #switchBtn span {
        left: 20%;
        width: 60%;
        height: 4px;
        display: block;
        position: absolute;
        background-color: #fff;
        border-radius: 5px;
        transition: all 0.2s linear;
    }
    #switchBtnArea #switchBtn span:nth-of-type(1) {
        top: 10px;
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    #switchBtnArea #switchBtn span:nth-of-type(2) {
        top: 18px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    #switchBtnArea #switchBtn span:nth-of-type(3) {
        bottom: 10px;
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    #switchBtnArea #switchBtn.btnClose {
        background: transparent;
    }
    #switchBtnArea #switchBtn.btnClose span:nth-of-type(1) {
        top: 18px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        background-color: #8CB900;

    }
    #switchBtnArea #switchBtn.btnClose span:nth-of-type(2) {
        -webkit-transform: scale(0);
        transform: scale(0);
        background-color: #8CB900;
    }
    #switchBtnArea #switchBtn.btnClose span:nth-of-type(3) {
        bottom: 18px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        background-color: #8CB900;
    }

    #rwdMenuWrap {
        top: 0;
        left: -200px;
        width: 200px;
        height: 100%;
        background: #8CB900;
        overflow: auto;
        position: fixed;
        z-index: 9999;
    }

    #rwdMenuWrap ul {
        width: 100%;
    }

    #rwdMenuWrap ul li {
        width: 100%;
        border-bottom: #8CB900 1px solid;
    }

    #rwdMenuWrap ul li a {
        padding: 10px 20px;
        text-align: left;
        display: block;
        background: #fff;
        position: relative;
    }

    #rwdMenuWrap ul li a:after {
        content: '';
        margin-top: -4px;
        top: 50%;
        right: 15px;
        width: 8px;
        height: 8px;
        color: #888;
        font-size: 1em;
        font-weight: bold;
        line-height: 1.2em;
        display: block;
        position: absolute;
        border-top: 2px solid #b0b0b0;
        border-right: 2px solid #b0b0b0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    #contents {
        width: 100%;
    }

    #contents p {
        padding: 0 20px 2em 20px;
    }
}

/* ------------------------------
CLEARFIX ELEMENTS
------------------------------ */

#menuList > ul:before,
#menuList > ul:after {
    content: " ";
    display: table;
}

#menuList > ul:after {
    clear: both;
}

#menuList > ul {
    *zoom: 1;
}
