*{
    margin: 0;
    padding: 0;
  }
  body{
    font-family: "游明朝体","Yu Mincho",YuMincho,"ヒラギノ明朝 Pro","Hiragino Mincho Pro","MS P明朝","MS PMincho",serif;
  }
  li{
    list-style: none;
  }
  img{
    display: block;
  }
  a{
    display: block;
  }
  @media screen and (max-width:767px){
    
    .pc{
      display: none;
    }
    .sp{
      display: block;
    }
    .wrap{
        overflow: hidden;
    }
    header{
        color: white;
        background-color: #000;
        width: 100%;
        height: auto;
    }
    #headerTop{
        display: flex;
        width: 90%;
    }
    #logo{
    float: left;   
    margin-top: 0.5em;
    }
    #logo:hover{
    opacity: 0.6;
    }
    #logo img{
    width: 12em;
    height: auto;
    }    
#headerMenu{
    clear: both;
    font-size: 0.9em;
    display: flex;
    padding-top: 0.8em;
    padding-bottom: 0.4em;
    } 
#nav-toggle span{
    background-color: #fff;
    width: 40%;
    height: 0.2em;
    display: block;
    position: absolute;
    left: 5px;
    transition:1.0s;
}
#nav-toggle span:nth-child(1){
    top: 0;           
}
#nav-toggle span:nth-child(2){
    top: 0.5em;
}
#nav-toggle span:nth-child(3){
    top: 1em;
}
#nav-toggle{
    position: relative;
    border-radius: 5px;
    border: 2px solid #000;
    cursor: pointer;    
    top: 0.3em;
    width: 4em;
    height: 2em;
    z-index: 10000;
}
.open #nav-toggle span:nth-child(1){
    top: 0.5em;
    transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2){
    opacity: 0;
}
.open #nav-toggle span:nth-child(3){
    top: 0.5em;
    transform: rotate(-45deg);
}       
    #menu-list{
        width: 100%;
        height: 100vh;
        background-color:#222;
        position: fixed;
        top: 0;
        left: 0;
        transform: translateY(-100vh);
        transition: 1.0s;
        z-index: 1000;
        color: #fff;
    }
    .open #menu-list{
        width: 100%;
        height: 100vh;
        background-color: #111;
        position: fixed;
        top: 0;
        left: 0;
        transform: translateY(0);
        color: #fff;
    }
    #menu-list ul{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        font-size: 1.5em;
    }
    #menu-list ul li{
        margin-bottom: 20px;
        cursor: pointer;  
    }
    .reservation{
        font-size: 24px;
        padding-top: 9px;
        background-color: #fff;
        color: #333;
        width: 196px;
        height: 70px;
        text-align: center;
        border-radius: 1px;
        float: right;
        margin-left: 30px;
        font-weight: bold;
        margin-left: auto;
        margin-right: auto;
    }
    #main{
        writing-mode: vertical-rl;
    }
    #main{
        color: #fff;
        writing-mode: vertical-rl;
        background-image: url(../../images/mainvisualsp.png);
        width: 100%;
        height: 500px;
        background-position: center;
    }
    #main h1{
        margin-top: 50px;
        margin-right: 1em;
        font-size: 2em;
    }
    #about{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        background-color: #fdfbf8;
        margin-top: 3em;
        padding-top: 0.8em;
        padding-bottom: 0.8em;
        font-size: 0.8em;
        color: #333;
    }
    #about h2{
        text-align: center;
        margin-bottom: 0.4em;
    }
    #news{
        margin-top: 2em;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        background-color: #fdfbf8;
        font-size: 0.8em; 
        padding-top: 0.8em;
        padding-bottom: 0.8em;
        color: #333;
    }
    #news h2{
        text-align: center;
        margin-bottom: 0.4em;
    }
    #news ul{
        padding-left: 2em;
    }
    #seasons{
        margin-top: 2em;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        background-color: #fdfbf8;
        font-size: 0.8em; 
        padding-top: 0.8em;
        padding-bottom: 0.8em;
        color: #333;
    }
    #seasons h2{
        text-align: center;
        margin-bottom: 0.4em;
    }
    #seasons span{
        display: block;
    }
    #seasons img{
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    #hotspring{
        margin-top: 2em;
        width: 90%;
        background-color: #fdfbf8;
        margin-left: auto;
        margin-right: auto;
        font-size: 0.8em;
        padding-top: 0.8em;
        padding-bottom: 0.8em;
        color: #333;
    }
    #hotspring h2{
       text-align: center;
       margin-bottom: 0.4em;
    }
    #hotspring img{
        width: 100%;
        height: auto;
        margin-bottom: 0.4em;
    }
    #restaurants{
        margin-top: 2em;
        width: 90%;
        background-color: #fdfbf8;
        margin-left: auto;
        margin-right: auto;
        font-size: 0.8em;
        padding-top: 0.8em;
        color: #333;
    }
    #restaurants h2{
       text-align: center;
       margin-bottom: 0.4em;
    }
    #restaurants img{
        width: 100%;
        height: auto;
        margin-bottom: 0.4em;
    }
    #foods h3{
        text-align: center;
        margin-top: 0.8em;
        margin-bottom: 0.2em;
    }
    #foods p{
        margin-top: 0.2em;
    }
    #access{
        margin-top: 2em;
        width: 90%;
        background-color: #fdfbf8;
        margin-left: auto;
        margin-right: auto;
        font-size: 0.8em;
        padding-top: 0.8em;
        color: #333;
    }
    #access h2{
        text-align: center;
        margin-bottom: 0.4em;
     }
     #access p{
        text-align: center;
     }
    #access img{
        width: 100%;
        height: auto;
        margin-bottom: 0.4em;
        padding-top: 0.4em;
    }
    #access ul li:nth-child(2n+1){
        text-align: center;
        padding-top: 0.4em;
    }
    footer{
        background-color: #000;
        color: #fff;
        margin-top: 4em;
    }
    #footerTop{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        padding-top: 1em;
    }
    #footerTop img{
        width: 90%;
        height: auto;
    }
    #reserve{
        font-size: 0.8em;
        padding-top: 0.2em;
        background-color: #fff;
        color: #333;
        height: 3.8em;
        text-align: center;
        border-radius: 1px;
        float: right;
        font-weight: bold;
      }
      #footerMenu{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        font-weight: bold;
        padding-bottom: 5em;
        font-size: 0.7em;
      }
      #left{
        float: left;
        margin-top: 1em;
      }
      #right{
        float: right;
        margin-top: 1.2em;
      }
      #sns{
        clear: both;
        padding-bottom: 1.2em;
        width: 100%;
        padding-top: 3em;
      }
      #sns h3{
        text-align: center;
      }
       #sns div{
        background-color: #fff;
        color: #333;
        height: 3.4em;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        margin-top: 1em;
        font-size: 1.2em;
      }
      #sns p{
       padding-top:0.8em;
       padding-left: 20px;
      }
      #sns img{
        padding-top:0.2em;
        width: 40px;
        height: 40px;
        padding-left: 10px;
      }
  }