/* ドロワーメニュー*/
#l-menu {
position: fixed;
background:;
width: 0;height:0;
top:0;right:0;
z-index: 100;
}

#toggle {
display: none;
position: fixed;
top: 42px;right: 42px;
}

#toggle-box {
position: relative;
width: 36px;
height: 24px;
cursor: pointer;
}
#toggle-box > span {
width: 100%;
height: 2px;
left: 0;
display: block;
background: #54C9C1;
position: absolute;
transition: transform .6s ease-in-out, top .5s ease, bottom .5s ease;
}

#toggle-box > span:nth-child(1) {top: 0;}
#toggle-box > span:nth-child(2) {top:45%;}
#toggle-box > span:nth-child(3) {bottom: 0;}

.is-open #toggle-box > span {background: #54C9C1;}
.is-open #toggle-box > span:nth-child(1) {top: 40%;transform: rotate(45deg) translatey(-10%);}
.is-open #toggle-box > span:nth-child(2) {width: 0;}
.is-open #toggle-box > span:nth-child(3) {top: 40%;transform: rotate(-45deg) translatey(-10%);}

.is-open {overflow: hidden;}
.is-open #nav-content {z-index: 1;transform: translateX(0);}
.is-open #nav-content a {pointer-events: auto;}

/* z-index */
#toggle {z-index: 500;}

#main {position: relative; z-index: 0;}

#nav-content {
display:block;
z-index: 1;
overflow-x: hidden;
width: 100%;
height: 100%;
background:#FDFBF3;
position: fixed;
top: 0;
left: 0;
padding: 100px 0 0 0;
text-align:center;
transform: translateX(100%); 
transition:transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
font-size: 22px;
}

#nav-content nav {margin-bottom: 18px;}

.nav-logo{
position: absolute;
top:0;
left:0;
background: #fff;
padding:12px;width:100%;text-align:left;
height: 55px;
}

.nav-logo img {width: 200px;height: auto;}

#menu-txt{
font-size:12px;
  font-weight:bold;
margin-top:6px;
color: #5FCFC8;
}




/*レスポンシブ対応------------------------------------------------------------------*/

@media screen and (max-width: 1080px) {
.page #toggle {
display: block;
position: fixed;
top: 12px;right: 12px;
}
.page #l-menu {width: 10px;height: 10px;display: block;}
.page #nav-content {display: block;}
.page #toggle-box {
position: relative;
width: 28px;
height: 21px;
cursor: pointer;
}
.page #toggle {display: block;}

.page #menu-txt{
font-size:9px;
  font-weight:bold;
margin-top:6px;
color: #5FCFC8;
}

#nav-content nav {margin-bottom: 20px;}
}

@media screen and (max-width: 768px) {
#toggle {
display: block;
position: fixed;
top: 12px;right: 12px;
}
#l-menu {width: 10px;height: 10px;display: block;}
#nav-content {display: block;}
#toggle-box {
position: relative;
width: 28px;
height: 21px;
cursor: pointer;
}
#toggle {display: block;}

#menu-txt{
font-size:9px;
  font-weight:bold;
margin-top:6px;
color: #5FCFC8;
}

#nav-content nav {margin-bottom: 20px;}
}

@media screen and (max-width: 480px) {
.nav-logo{padding:16px 12px 0 12px;}
.nav-logo img {width: 150px;height: auto;}
#nav-content {padding:80px 0 0 0;font-size: 18px;}
#nav-content ul {list-style: none;margin-bottom: 0;}
#nav-content ul li {margin: 0 0 15px 0;}
}
@media screen and (max-width:360px){
.nav-logo img {width: 135px;height: auto;}
}
/*--------------------------------------------------------------------------------*/

.ac {
  width: 90%;
  max-width: 600px;
  margin: 0 auto;
  padding-bottom:3px;
}
.ac-parent {
  height: 40px;
  line-height: 40px;
  text-align: center;
  cursor: pointer;
  transition: .3s;
  color: #4ca5a0;
}

.ac-child {
padding: 0.2em 0 0.5em 0;
font-size:14px;
}

.ac-child ul li {
margin: 0 0 10px 0 !important;
color: #155BA0;
}
.ac-child ul li a {
color: #155BA0;
}

.ac-none  {
  height: 40px;
  line-height: 40px;
  text-align: center;
  cursor: pointer;
  transition: .3s;
  color: #155BA0;
}

/*--------------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
.ac-parent {height: 35px;line-height: 35px;}
.ac-none {height: 35px;line-height: 35px;}
.ac-child ul li {margin: 0 0 8px 0 !important;}
.ac-child {padding: 0.3em 0 0.0 0;font-size:13px;}
}
/*--------------------------------------------------------------------------------*/

/* 下 */
.under-box{background-color: 1px solid #155BA0;padding: 25px 0;margin: 0 25px ;}
.under-box .btn{
display: inline-block;
vertical-align: middle;
line-height:1.5;
}

.under-box a{
color: #fff;
display:block;padding: 0 50px;
}

/*レスポンシブ対応------------------------------------------------------------------*/
@media screen and (max-width:480px){
.otoiawase{margin-top: 5px;}
.form-icon{
font-size:12px;
padding:8px 5px 6px 5px;
width:100%;
margin:8px 0;
}
.form-icon::before {width: 16px;
height: 16px;

}

}
/*--------------------------------------------------------------------------------*/