/*!
 * jquery-drawer v3.2.2
 * Flexible drawer menu using jQuery, iScroll and CSS.
 * http://git.blivesta.com/drawer
 * License : MIT
 * Author : blivesta <design@blivesta.com> (http://blivesta.com/)
 */


/* =========================================
   PCではハンバーガーメニューを初期OPEN
   SPでは通常どおりCLOSE
========================================= */

/* PC */
@media only screen and (min-width: 768px) {

	/* メニューを開いた状態 */
	body.drawer-open .drawer-nav {
		top: 0;
	}

	/* ハンバーガーも表示 */
	body.drawer-open .drawer-hamburger {
		top: 0;
	}

}

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

	/* SPでは初期状態を閉じる */
	body:not(.drawer-open) .drawer-nav {
		top: -1000px;
	}

}



/*!------------------------------------*\
    Base
\*!------------------------------------*/

.drawer-open {
  overflow: hidden !important;
}

.drawer-nav {
  position: fixed;
  z-index: 8888;
  top: 0;
  overflow-y:auto;
  -webkit-overflow-scrolling: touch;
	/*width:100%;*/
	width: 100vw;
  hight: 100%;
  color: #222;
  background-color: #fff;
	padding:20px;
	}

@media only screen and (min-width :900px){
	.drawer-nav {
		padding:40px;
		}
}
@media only screen and (min-width :1200px){
	.drawer-nav {
		padding:40px 80px;
		}
}



.drawer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
	}
.drawer-menu > li{
	border-top:#ccc solid 1px;
	text-align:center;
	}
.drawer-menu-item {
  display: block;
  padding: 15px;
  text-decoration: none;
	font-size:1.1em;
	font-weight:bold;
	background:#f7fbef;
	color:#6d9715;
	border-bottom:#ccc solid 1px;
	}
.drawer-menu-item:hover,
.drawer-menu-item:active {
	background-color:#8dc21f;
	color:#fff;
	}


/*sp*/
.dw-sp{}
.drawer-menu > li.dw-sp{ border:none;}
.dw-sp .drawer-menu-item {}
.drawer-menu-item span.dw-sp{display:inline-block;}
/*pc*/
.dw-pc{ display:none;}

/*dw-sns*/
.dw-sns{ text-align:center;}
.dw-sns a{
	display:inline-block;
	margin:5px;
	max-width:250px;
	}

@media only screen and (min-width : 768px){
	.drawer-menu {
		display:flex;
		flex-wrap: wrap;
		gap:20px 2%;
		}
	.drawer-menu > li{
		flex-shrink: 0;
		width:49%;
		border:#ccc solid 1px;
		border-radius:5px;
		-moz-border-radius:5px;
		-webkit-border-radius:5px;
		overflow:hidden;
		}

	.drawer-menu-item{pointer-events: none;}
	.drawer-menu-stack .drawer-menu-item{pointer-events: auto;}


	.drawer-menu > li.dw-sp{
		width:100%;
		margin-bottom:-20px;
		}
	.drawer-menu > li.dw-sns{
		width:100%;
		border:none;
	}
}

@media only screen and (min-width : 900px){
	.drawer-menu > li{
		width:32%;
	}
}

/*!------------------------------------*\
    drawer-submenu 開きっぱなし
\*!------------------------------------*/

.drawer-submenu{
	}
.drawer-submenu > li{
	border-bottom:#ccc dotted 1px;
}
.drawer-submenu > li:last-child{
	border-bottom:none;
	}
.drawer-submenu-item{
	display: block;
  padding:10px;
	font-weight:bold;
	font-size:0.9em;
	text-decoration:none;
	color:#333;
	}
.drawer-submenu-item:hover,
.drawer-submenu-item:active{
	background:#f7f7f7;
	}

@media only screen and (min-width : 768px){
	.drawer-submenu{
		padding:0 20px 20px;
		}
	.drawer-submenu > li:last-child{
		border-bottom:#ccc dotted 1px;
		}
}


/*!------------------------------------*\
    Dropdown
\*!------------------------------------*/

.drawer-dropdown{
	/*position:relative;メガメニュー対応*/
	}
.drawer-dropdown-menu {
  display: none;
	position:relative;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #fff;
	border-top:#ccc solid 1px
	}
.drawer-dropdown-menu > li {
  width: 100%;
  list-style: none;
	border-bottom:#ccc dotted 1px;
	}
.drawer-dropdown-menu-item {
  display: block;
  padding:15px;
	padding-left:25px;
	font-weight:bold;
	color:#6d9715;
	text-decoration:none;
	}
.drawer-dropdown-menu-item:hover {
	}

/*! open */
.drawer-dropdown.open > .drawer-dropdown-menu {
  display: block;
	}

/*! drawer-caret */

.drawer-dropdown .drawer-caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 4px;
  -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, opacity .2s ease;
  transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  vertical-align: middle;
  border-top: 4px solid;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

/*! open */

.drawer-dropdown.open .drawer-caret {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

/***************************************************
@media only screen and (min-width :600px){
	.drawer-dropdown-menu{}
	.drawer-dropdown-menu:after{
		content:'';
		display: block;
		clear: both;
		height: 0;
		visibility: hidden;
		}
	.drawer-dropdown-menu > li {
		float:left;
		width:50%;
		}
}
@media only screen and (min-width :900px){
	.drawer-dropdown-menu > li {
		float:left;
		width:33.3333%;
		}
}
@media only screen and (min-width :1024px){
	.drawer-dropdown-menu > li {
		float:left;
		width:20%;
		}
}
*/

/*! overlay ******************************/

.drawer-overlay {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .7);
}

.drawer-open .drawer-overlay {
  /*display: block;*/
}




/*!------------------------------------*\
    Top
\*!------------------------------------*/

.drawer--top .drawer-nav {
  top: -100%;
  left: 0;
  width: 100%;
  height: auto;
  max-height: 100%;
  -webkit-transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

.drawer--top.drawer-open .drawer-nav {
  top: 0;
}

.drawer--top .drawer-hamburger,
.drawer--top.drawer-open .drawer-hamburger {
  right: 0;
}

/*!------------------------------------*\
    Left
\*!------------------------------------*/

.drawer--left .drawer-nav {
  left: -300px;
  -webkit-transition: left .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: left .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

.drawer--left.drawer-open .drawer-nav,
.drawer--left .drawer-hamburger,
.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
  left: 0;
}

.drawer--left.drawer-open .drawer-hamburger {
  left: 300px;
}

/*!------------------------------------*\
    Right
\*!------------------------------------*/

.drawer--right .drawer-nav {
  right: -300px;
  -webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
  right: 0;
}

.drawer--right.drawer-open .drawer-hamburger {
  right: 300px;
}




/*!------------------------------------*\
    Hamburger
\*!------------------------------------*/

.drawer-hamburger {
  position: fixed;
  z-index: 9999;
  top: 0;
  display: block;
  width: 60px;
	height:60px;
  padding: 0 12px;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  border: 0;
  outline: 0;
  cursor: pointer;
  background-color:#4c4c4c;
}

.drawer-hamburger:hover {
  background-color:#666666;
	}

.drawer-hamburger-icon {
  position: relative;
  display: block;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  width: 100%;
  height: 3px;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  background-color: #fff;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  position: absolute;
  top: -10px;
  left: 0;
  content: ' ';
}

.drawer-hamburger-icon:after {
  top: 10px;
}
.drawer-hamburger-text{
	position:absolute;
	bottom:5px;
	left:0;
	width:100%;
	display:block;
	text-align:center;
	font-size:0.9rem;
	line-height:1em;
	color:#fff;
	}


/*open*/

.drawer-open .drawer-hamburger-icon {
  background-color: transparent;
}

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
  top: 0;
}

.drawer-open .drawer-hamburger-icon:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.drawer-open .drawer-hamburger-icon:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media only screen and (min-width : 1024px){
	.drawer-hamburger {
		width: 80px;
		height:80px;
		padding:0 20px;
	}
	.drawer-hamburger-icon:before{
		top: -15px;
	}
	.drawer-hamburger-icon:after {
		top: 15px;
	}

}
@media only screen and (min-width : 1200px){
.drawer-hamburger {
  width: 94px;
	height:94px;
}
}

/*!------------------------------------*\
    accessibility
\*!------------------------------------*/

/*!
 * Only display content to screen readers
 * See: http://a11yproject.com/posts/how-to-hide-content
 */

.sr-only {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

/*!
 * Use in conjunction with .sr-only to only display content when it's focused.
 * Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
 * Credit: HTML5 Boilerplate
 */

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}


