@media(min-width: 721px) {
    .sm-menu,
    .sm-button {
        display: none
    }
}

@media(max-width: 720px) {
    /**メニューサイズ**/
    body.sm-activate {
        overflow: hidden;
    }
    .sidemenu {
        text-align: center
    }
    .sm-menu {
        position: fixed;
        visibility: hidden;
        opacity: 0;
        width: 96%;
        height: 60%;
        left: 50%;
        top: 150%;
        margin-left: -48%;
        margin-top: -35%;
        z-index: 999;
    }
    .sm-menu.animated {
        -webkit-transition: all 0.5s ease-in-out;
        -moz-transition: all 0.5s ease-in-out;
        -o-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out;
    }
    .sm-menu.sm-bottom-left {
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
        top: 150%;
        left: -150%;
    }
    .sm-menu.sm-bottom-right {
        -webkit-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        -o-transform: rotate(135deg);
        transform: rotate(135deg);
        top: 150%;
        left: 150%;
    }
    .sm-menu.sm-top {
        top: -150%;
    }
    .sm-menu.sm-top-left {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: -150%;
        left: -150%;
    }
    .sm-menu.sm-top-right {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
        top: -150%;
        left: 150%;
    }
    .sm-menu.sm-left {
        top: 50%;
        left: -150%;
    }
    .sm-menu.sm-right {
        top: 150%;
        left: 150%;
    }
    .sm-menu.re-rotate {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
    }
    .sm-menu.ff-hack {
        opacity: 1;
        visibility: visible;
        top: 50%;
        left: 50%;
    }
    .sm-menu .sm-nav {
        -webkit-transform: translate3d(50%, 0, 0) scale(0.002, 1);
        -moz-transform: translate3d(50%, 0, 0) scale(0.002, 1);
        -ms-transform: translate3d(50%, 0, 0) scale(0.002, 1);
        -o-transform: translate3d(50%, 0, 0) scale(0.002, 1);
        transform: translate3d(50%, 0, 0) scale(0.002, 1);
        -webkit-transition: all 0.5s ease-in-out;
        -moz-transition: all 0.5s ease-in-out;
        -o-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out;
        width: 50%;
        height: 100%;
        position: absolute;
        top: 0;
        background: #85B4CC;
        padding-top: 15px;
    }
    .sm-menu.sm-horizontal .sm-nav {
        -webkit-transform: translate3d(25%, 0, 0) scale(0.5, 0.002);
        -moz-transform: translate3d(25%, 0, 0) scale(0.5, 0.002);
        -ms-transform: translate3d(25%, 0, 0) scale(0.5, 0.002);
        -o-transform: translate3d(25%, 0, 0) scale(0.5, 0.002);
    }
    .sm-menu.sm-horizontal .sm-nav:nth-child(2) {
        -webkit-transform: translate3d(-25%, 0, 0) scaleX(0.5) scaleY(0.002);
        -moz-transform: translate3d(-25%, 0, 0) scaleX(0.5) scaleY(0.002);
        -ms-transform: translate3d(-25%, 0, 0) scaleX(0.5) scaleY(0.002);
        -o-transform: translate3d(-25%, 0, 0) scaleX(0.5) scaleY(0.002);
        transform: translate3d(-25%, 0, 0) scaleX(0.5) scaleY(0.002);
        right: 0;
    }
    .sm-menu .sm-nav .nav-inner {
        display: none;
        -webkit-animation-duration: 1s;
        -moz-animation-duration: 1s;
        -o-animation-duration: 1s;
        animation-duration: 1s;
        -webkit-animation-fill-mode: both;
        -moz-animation-fill-mode: both;
        -o-animation-fill-mode: both;
        animation-fill-mode: both;
        vertical-align: middle;
        white-space: normal;
        text-align: left;
    }
    .sm-menu .sm-nav .nav-inner.animated {
        display: inline-block;
    }
    .sm-menu .sm-nav:nth-child(2) {
        -webkit-transform: translate3d(-50%, 0, 0) scaleX(0.002);
        -moz-transform: translate3d(-50%, 0, 0) scaleX(0.002);
        -ms-transform: translate3d(-50%, 0, 0) scaleX(0.002);
        -o-transform: translate3d(-50%, 0, 0) scaleX(0.002);
        transform: translate3d(-50%, 0, 0) scaleX(0.002);
        right: 0;
        padding-top: 30px;
    }
    .sm-menu .sm-nav.animated,
    .sm-menu.sm-horizontal .sm-nav.animated {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
        opacity: 1;
    }
    .sm-menu .sm-nav:after {
        content: "";
        position: relative;
        height: 100%;
        display: inline-block;
        vertical-align: middle;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: inline-block;
    }
    /**メニュー左側文字サイズ**/
    .left {
        color: #fff;
        padding: 0 9px 0;
        font-size: 10px
    }
    .concept {
        font-family: 'Julius Sans One';
        font-size: 18px;
        margin-bottom: 10px;
        padding-bottom: 5px;
        border-bottom: 1px solid #fff
    }
    .sm-menu .sm-nav .nav-inner>a {
        font-size: 16px;
        line-height: 10px;
        margin-bottom: 15px;
        font-weight: 300;
        display: block;
        color: white;
        font-family: 'Julius Sans One', sans-serif;
        text-decoration: none
    }
    .sm-menu .sm-nav .nav-inner>a span {
        font-size: 8.5px;
    }
    .sm-menu .sm-close {
        font-size: 16px;
        text-decoration: none;
        color: white;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 102;
        padding: 10px 15px;
        font-weight: 100;
    }
    .sm-menu .sm-close:hover {
        color: black;
    }
    .sm-menu .sm-nav .nav-inner>a:hover {
        color: #2E3B4E;
    }
    .sm-overlay {
        cursor: pointer;
        height: 100%;
        width: 100%;
        background: rgba(0, 21, 52, 0.70);
        opacity: 0;
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        z-index: 998;
        overflow: hidden;
        visibility: hidden;
        -webkit-transition: all 0.5s ease-in-out;
        -moz-transition: all 0.5s ease-in-out;
        -o-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out;
    }
    body.sm-activate .sm-overlay {
        opacity: 1;
        visibility: visible;
    }
}

@media screen and (orientation: landscape) and (max-width: 720px) {
    .sm-menu {
        position: fixed;
        visibility: hidden;
        opacity: 0;
        width: 96%;
        height: 75%;
        left: 50%;
        top: 130%;
        margin-left: -48%;
        margin-top: -20%;
        z-index: 999;
    }
}

@-webkit-keyframes flyInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes flyInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes flyInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes flyInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.flyInRight {
    -webkit-animation-name: flyInRight;
    animation-name: flyInRight;
}

.flyInLeft {
    -webkit-animation-name: flyInLeft;
    animation-name: flyInLeft;
}
