/*▼ ハンバーガーメニュー  ここから▼*/

#header-sp{ width:100%; height:80px; z-index: 999; top:0; transition: 0.7s ease; position: fixed; transition:.5s; transition-timing-function:cubic-bezier(.4,0,.2,1);}
#header-sp #logo-sp{ padding:20px 15px 0;}
#header-sp #logo-sp .left { display:inline-block;}
#header-sp #logo-sp .left a{ display:inline-block; text-decoration:none; transition:0.5s ease-out; transition-timing-function:cubic-bezier(.4,0,.2,1);}
#header-sp #logo-sp .left a p { font-size:24px; font-weight:400; color:#fff; letter-spacing:4px; font-family: "Marcellus", serif; transition:.3s;}
#header-sp #logo-sp .left a p span{ font-size:14px; font-weight: bold; display:inline-block; line-height:1.2em; letter-spacing:1px; margin-left:5px; vertical-align: middle; font-family: "Klee One", cursive; position: relative; top:-3px;}


/*切り替え*/

.open #header-sp #logo-sp .left a p { color:#333;}
#header-sp.bk-white{ background:rgba(255,255,255,.5); backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px);}
#header-sp.bk-white .toggle_btn span { background:#0f3575;}
#header-sp.bk-white #logo-sp .left a p { color:#333;}


/*============
ナビ
#navArea
=============*/
#navArea{ position:relative; z-index:999;}
#navArea .inner{ position:relative; z-index:999; padding:80px 30px 120px; overflow:scroll;}



nav {
  display: block;
  position: fixed;
  top:0px;/*上からの距離*/
  right:0px;/*左から出すか右から出すか*/
  bottom: 0;
  width:100%;
  background: #fff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  z-index: 20;
  opacity: 0;
  pointer-events: none;
}
.open nav {
  right: 0;  /*左から出すか右から出すか*/
  opacity: 1;
  top:0px;
  pointer-events:auto;
}
nav .inner .ul-01 {
  margin-top: 0;
}
nav .inner .ul-01 li {
  position: relative;
	border-bottom:1px solid #3c5a8d;
  padding-left:0;
  margin-bottom: 0;
  letter-spacing: 3px;
  font-family: "Klee One", cursive;
}
nav .inner .ul-01 li a {
  font-size:16px;
  font-weight:600;
  color:#333;
	line-height:1.5;
	padding:25px 0 25px 15px;
  transition-duration: 0.2s;
  display:block;
  text-decoration: none;
  position:relative;
  background:url(../images/common/ico-arrow.png)right 15px top 50% no-repeat;
}



nav .inner .ul-01 li:nth-child(3){ margin-bottom:50px;}
nav .inner .ul-01 li:last-child{ border-bottom: none;}
nav .inner .ul-01 li:last-child a{ background:#0f3575 url(../images/common/ico-mail.png)60px 52% no-repeat; font-size:17px; font-weight:bold; color:#fff; text-align: center; padding:18px 0 15px; letter-spacing:1px; border-radius:50px; text-decoration:none; display:block; background-size:25px auto;}
nav .inner .ul-01 li:last-child a img{ vertical-align: middle; margin-right:10px; height:15px; position: relative; top: -2px;}
  

/*============
メニュー（3本線）
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top: 0px;
  right: 0px;
  width: 80px;
  height: 80px;
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 25px;
  width:36px;
  height:1px;
  background:#fff;
  transition:.5s;
}
.toggle_btn span:nth-child(1) {
  top:35px;
}
.toggle_btn span:nth-child(2) {
  top: 47px;
  width:25px;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(5px) rotate(-45deg);
  transform: translateY(5px) rotate(-45deg);
}
.open .toggle_btn span:nth-child(2) {
  -webkit-transform: translateY(-7px) rotate(45deg);
  transform: translateY(-7px) rotate(45deg);
  width:36px;}
.open .toggle_btn span{ background:#0f3575;}
.open #header-sp{ background: none;}

/*============
背景（マスク）
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: .7;
  z-index: 2;
  cursor: pointer;}
