/* Tablet */
@media all and (max-width: 960px) {
  .menu-icon {
    display: block;
  }
  .menu {
    display: block;
  max-width: 50%;
  }
  .menu li {
    list-style: none;
  }
  .header-right {
    display: none;
  }
  
  .menu > li.menu-single {
    position: relative;
  }
  
  li.menu-single ul.menu-second {
    position: absolute;
    top: 40px;
    width: 100%;
    background: navy;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    text-align: right;
  }
  
  li.menu-single:hover ul.menu-second {
    top: 50px;
    visibility: visible;
    opacity: 1;
  }
  
  .menu-second a {
    padding-right: 4px;
  }
  
  
  .menu {
    position: relative;
    /* position: absolute; */
    float: right;
    /* width: 100%; */
    height: 50px;
    max-width: 50%;
    margin: 0 auto;
  }
  
  .menu > li {
    float: right;
    width: 4.5em; 
    height: 45px;
    line-height: 45px;
    background: navy;
  }
  
  .menu > li a {
    display: block;
    color: #999;
    text-decoration: none;
    font-size: 0.8rem;
  }
  
  .menu > li a:hover {
    color: #fff;
    text-decoration: underline;
  }
  
  ul.menu-second {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
  }
  
  .menu-second li {
    border-top: 1px solid #111;
  }
  
  .menu-second li a:hover {
    background: #0000e0;
  }
  
  /* floatクリア */
  .menu:before,
  .menu:after {
    content: " ";
    display: table;
  }
  
  .menu:after {
    clear: both;
  }
  
  .menu {
    *zoom: 1;
  }
  
  /* MainVisual */
  #mainvisual img {
    width: 85%;
  }
  #mainvisual h2 {
    font-size: 28px;
    margin: 80px 0 40px;
  }
  .mainmessage {
    font-size: 28px;
  }
  @keyframes zoom{
    0% {
      background-size:180% auto;
    }
    100% {
      background-size: 150% auto;
    }
  }
  #mainvisual h2 span {
    display:initial;
  }
  
}
/* SmartPhone */
@media all and (max-width: 640px) {
  /* .header-left {
    font-size: 0.9rem;
  } */
  body {
    font-size: 0.9rem;
  }
  .top-spacer {
    display: none;
  }
  #mainvisual {
    font-size: 0.8rem;
    height: auto;
  }
  #mainvisual h2 {
    font-size: 22px;
    margin: 50px 0 30px;
  }
  .mainmessage {
    font-size: 22px;
  }
  #mainvisual img {
    width: 100%;
  }
  @keyframes zoom{
    0% {
      background-size:220% auto;
    }
    100% {
      background-size: 185% auto;
    }
  }
  /* #mainvisual h2{
    font-size: 0.9rem;
  }
  #mainvisual p {
    font-size: 0.9rem;
  } */
  #maincontents {
    height: auto;
  }
  .spbr {
    display: inline;
  }
  #btn {
    display: block;
  }
  .btns {
    margin-bottom: 20px;
  }
  
  #arrow {
    margin: 10px;
  }
  .rightarrow {
    display: none;
  }
  .rightarrow-s {
    display: block;
    margin: 40px auto 10px ;
  }  
  
  
}