

/* ---------- ハンバーガー ---------- */


 /* ハンバーガー開いた時のデザイン */
 ul.jsmenu{
  position: fixed;
  right: -100vw; /* 右から出てくる */
  top: 0;
  width: 100vw;
  height: 100vh;
  background: linear-gradient(-225deg, #709999 0%, #fffce7 56%, #afccd1 100%);
  transition: all .6s;
  z-index: 80;
  color:#3E3A39; 
}

.ham_flex{
  display: flex;
  justify-content: center;
  align-items:center;
  height: 100%;
}


/* フレックス左 */
.ham_flexleft{
  width: 30%;
}


.subtitle img{
  width:120px;
  margin: 0 auto;
}

.ham_sns{
  display: flex;
  column-gap: 20px;
  vertical-align: middle;
  justify-content: center;
}

.ham_sns img{
  width: 35px;
  margin: 0 auto 20px;
}

li.jsmenu{
  margin-bottom: 40px;
}

.text_ham{
 font-size: 17px;
 line-height: 1.5em;
 margin-bottom: 10px;
 letter-spacing: 0.1em;
 text-align:center;
}

.text_ham span{
  font-size: 15px;
 }

/* フレックス右 */

.ham_flexright{
  width: 30%;
}

li.jsmenu a {
  display: block;
  color:#3E3A39;
  text-decoration: none;
  font-size: 23px;
  letter-spacing:0.07em ;
  line-height: 1.0em;
  text-align: center;
  font-weight: 400;
}

li.jsmenu a:hover {
  letter-spacing:0.1em ;
  transition:0.2s;
  color: #709999;
}

li.jsmenu a span {
  display: block;
  color:#3E3A39;
  text-decoration: none;
  font-size: 13px;
  letter-spacing:0.07em ;
  text-align: center;
}


  /* ハンバーガーボタンのデザイン */
 .jshamburger {
  position: fixed;
  right: 40px;
  top: 5px;
  width: 40px; /* クリックしやすい幅 */
  height: 40px; /* クリックしやすい高さ */
  cursor: pointer;
  z-index: 80;
}

/* ハンバーガーボタンの３本ライン*/
.hamburger_border {
  position: absolute;
  left: 10px;
  width: 18px;
  height: 1px;
  background-color:#6d6d6d;
  transition: all .6s;
}

.hamburger_border_top {
  top: 18px;
}
.hamburger_border_center {
  top: 25px;
}
.hamburger_border_bottom {
  top: 32px;
}

/* 表示されたのメイン画面*/
.black_bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9;
  background-color: rgba(240,240,240,0.6);
  visibility: hidden;
  transition: all .3s;
  cursor: pointer;
}

/* 表示された時用のCSS */
.nav-open ul.jsmenu {
  right: 0;
}
.nav-open .black_bg {
  opacity: .8;
  visibility: visible;
}

/* ハンバーガーボタンの×ライン*/
.nav-open .hamburger_border_top {
  transform: rotate(45deg);
  top: 20px;
}
.nav-open .hamburger_border_center {
  width: 0;
  left: 50%;
}
.nav-open .hamburger_border_bottom {
  transform: rotate(-45deg);
  top: 20px;
}





/* --------- Tab --------- */
@media only screen and (min-width:601px) and (max-width:1099px) {


 /* ハンバーガーボタンのデザイン */
 .jshamburger {
    right: 12px;
    top: 4.5px;
  }

/* ハンバーガーボタンの３本ライン*/
.hamburger_border {
  box-shadow: -1px -1px #fff;
}

/* フレックス右 */

li.jsmenu a {
  font-size: 20px;
  line-height: 1.1em;
}

}


/* --------- SP --------- */
@media only screen and (max-width: 600px) {


 /* ハンバーガーボタンのデザイン */
 .jshamburger {
  right: 12px;
  top: 4.5px;
}

/* ハンバーガーボタンの３本ライン*/
.hamburger_border {
  box-shadow: -1px -1px #fff;
}


/* ハンバーガー開いた時のデザイン */



.ham_flex{
 display: block;
 margin-top:7%
}


/* フレックス左 */
.ham_flexleft{
 width: 100%;
}

.subtitle img{
 width:50px;
}

.ham_sns{
 display: none;
}


li.jsmenu{
 margin-bottom: 15px;
}

.text_ham{
font-size: 17px;
line-height: 1.3em;
margin-bottom: 10px;
letter-spacing: 0.1em;
text-align:center;
}

.text_ham span{
 font-size: 13px;
}

/* フレックス右 */

.ham_flexright{
  width: 100%;
  margin-top:20px;
}

li.jsmenu a {
 display: block;
 color:#3E3A39;
 text-decoration: none;
 font-size: 17px;
 letter-spacing:0.07em ;
 line-height: 1.1em;
 text-align: center;
 font-weight: 300;
}

li.jsmenu a span {
 font-size: 11px;
}

  
}