.hidden {
    position: absolute;
    clip: rect(1px 1px 1px 1px); /* IE6 & 7 */
    clip: rect(1px, 1px, 1px, 1px);
}

.toggleMobile, #MobileMenu, #MobileReservationForm, .MobileTitle, #MobileAddress { display: none; }

@media screen and (max-width: 1200px) {
    #eguma-ribbon, #icombat-ribbon { display: none; }
}

@media screen and (max-width: 1000px) {
    #content_normal { padding: 0; margin: 0; }
    .centered { width: 100%; }

    h1 { font-size: 46px; }

    #subnavigation_background, #subnavigation_wrapper, #navigation { display: none; }
    #head_wrapper { background: #000; height: 66px; border-bottom: 2px solid #ff4e00; margin-bottom: 20px; }
    #head { height: auto; }
    #head a img { margin-top: 5px; height: 56px; }
    /*footer, #footer_wrapper { display: none; }*/
    footer div { display: block !important; float: none !important; }
    #copyright_wrapper, #copyright { position: relative; width: 100%; }
    #copyright { padding: 10px 0; }
    #copyright_wrapper .left span { display: block; text-align: center; margin: 5px 0; }
    #copyright_wrapper .left .fb-like { margin: 0 auto; width: 250px; position: relative; }
    #copyright_wrapper .left .space { display: none; }
    #copyright_wrapper .right { float: none; width: 100%; text-align: center; margin-top: 20px; }

    /** home **/
    #letsplay, #video_control { display: none; }
    .homebox { position: relative; display: block; width: 100%; margin: 0; padding: 10px; top: 0 !important; left: 0 !important; box-sizing: border-box; }

    /** contents */
    .boxcontainer { padding: 0; }
    .boxcontainer .box-w3 { float: none; width: 100%; }
    .boxcontainer h3 { margin: 30px 0 10px 0; }

    .offerltbox .offerltboxleft { float: none; width: 100%; box-sizing: border-box; padding: 0 16px; margin: 0; }
    .offerltbox .offerltboxright { float: none; width: 100%; box-sizing: border-box; padding: 0 16px; margin: 0; }
    .offerltbox .offerltboxleft .heading { width: 100%; box-sizing: border-box; }

    /** calendar **/
    .calendar { float: none !important; width: 100% !important; }
    .calendar .content, .calendar_legend { display: none; }
    .calendar .content.caption { display: block; padding: 0 40px; }

    #MobileReservationForm { display: block; padding: 20px; background: rgba(20, 20, 22, 0.67); }
    #MobileReservationForm input[type=text],
    #MobileReservationForm input[type=submit],
    #MobileReservationForm select { display: block; box-sizing: border-box; width: 100%; padding: 5px; margin: 5px 0; }

    /** contacts **/
    #gmap { display: none !important; }
    #contact_wrapper { margin: 10px; padding: 10px; }
    #contactcaption { display: none; }
    .MobileTitle { display: block; background: #ff4e00; color: #fff; font-size: 32px; padding: 3px 0; margin: 0 0 10px 0;}
    #contact_opentimes.left, #contact_form.right { float: none; width: 100%; }
    #contact_opentimes, #MobileAddress { margin-bottom: 30px; }
    #contact_opentimes table td { text-align: right; }
    .hsw_contact_form { float: none; width: 100%; padding-right: 0; }
    .hsw_contact_form input[type=checkbox] { margin: 20px 0; }
    .cbutton { display: block; width: 100%; box-sizing: border-box; }
    #MobileAddress { display: block; font-size: 18px; }

    /** Menu **/
    #MobileMenu { list-style: none; padding: 0; margin: 0; position: absolute; top: 66px; left: 0; width: 100%; display: none; }
    #MobileMenu li a { display: block; background: #000; color: #ff4e00; font-size: 30px; padding: 12px 0; text-decoration: none; letter-spacing: 0.1em; text-align: center; text-transform: uppercase; border-bottom: 1px solid #ff4e00; }
    #MobileMenu li a:hover, #MobileMenu li a.active { color: #fff; }
    #MobileMenu ul li { display: block; }
    #MobileMenu ul a { font-size: 16px; background: #ff4e00; color: #fff; }
    #MobileMenu ul li a:hover, #MobileMenu ul li a.active { color: #000; }

    .toggleMobile { display: block; position: absolute; top: 15px; right: 15px; width: 40px; height: 36px; cursor: pointer; z-index: 999; }
    .toggleMobile span { display: block; position: absolute; width: 40px; height: 8px; left: 0; background: #ff4e00; 
      -webkit-transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
                transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95); }
    .toggleMobile span.menu1 { top: 0; }
    .toggleMobile span.menu2 { top: 14px; }
    .toggleMobile span.menu3 { top: 28px; }

    .toggleMobile.active span.menu1 { top: 14px;
            -webkit-transform: rotate(45deg);
            -moz-transform: rotate(45deg);
            -o-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg);
            -webkit-transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
            transition: all 0.5s cubic-bezier(0.75, 0.25, 0.10, 0.95);
    }
    .toggleMobile.active span.menu2 {
            -webkit-transform: rotate(-45deg);
            -moz-transform: rotate(-45deg);
            -o-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
            -webkit-transition: all 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
            transition: all 0.5s cubic-bezier(0.75, 0.25, 0.10, 0.95);
    }
    .toggleMobile.active span.menu3 {
            opacity: 0;
            -webkit-transition: opacity 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
            transition: opacity 0.35s cubic-bezier(0.75, 0.25, 0.10, 0.95);
    }
}