/*!
 * 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/)
 */

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

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

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


@media only screen and (min-width :1025px){
	.drawer-nav {
		position:relative;
		right:0 !important;
		padding:0;
		width:auto;
		white-space:nowrap;
		}
}


.drawer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
	}
.drawer-menu > *{
	border-bottom:#ccc solid 1px;
	}
.drawer-menu-item {
  display: block;
  padding: 15px;
  text-decoration: none;
	font-weight:bold;
	color:#333;
	}
.drawer-menu-item .dw-en{
	display:inline-block;
	margin-left:10px;
	font-size:0.6em;
	color:#666;
	font-weight:400;
	}
.drawer-menu-item:hover {
	background-color:var(--l-pink);
	color:var(--pink);
	}

/*sp*/
.dw-sp{}

/**/
.dw-logo{ padding-right:50px;}
/**/
.dw-tel a{
	display:block;
	text-align:center;
	background-color:var(--pink);
	text-decoration:none;
	color:#fff;
	}
.dw-mail a{
	display:block;
	text-align:center;
	background-color:var(--green);
	text-decoration:none;
	color:#fff;
	}
.dw-tel a:hover,
.dw-tel a:active,
.dw-mail a:hover,
.dw-mail a:active{
	background-color:var(--pink);
	color:#fff;
	}
.dw-insta img{
	display:inline-block;
	vertical-align:middle;
	max-height:20px;
	margin-right:5px;
	}



@media only screen and (min-width :1025px){
	.drawer-menu{
		display:flex;
		align-items:center;
		justify-content:flex-end;
		gap:3%;
		padding:10px 0;
		}
	.drawer-menu li{
		position:relative;
		overflow: visible;
		border:none;
		}
	.drawer-menu-item {
		padding:15px 0;
		text-align:center;
		background:none;
		}
	.drawer-menu-item .dw-en{
		display:block;
		margin-left:0;
		font-size:0.7em;
		}
	.drawer-menu-item:hover {
		background:none;
		}

	/*sp*/
	.dw-sp{ display:none;}
	
}


/*!------------------------------------*\
    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;
}

.drawer-dropdown-menu > li {
  width: 100%;
  list-style: none;
	border-top:#ccc dotted 1px;
	}
.drawer-dropdown-menu-item {
  display: block;
  padding: 10px 15px;
	padding-left:25px;
  text-decoration: none;
	font-weight:bold;
  color: #333;
	font-size:0.9em;
	}
.drawer-dropdown-menu-item:hover{
	color:var(--pink);
	}
.drawer-dropdown-menu-item span{
	display:block;
	font-size:0.8em;
	line-height:1.5em;
	}
.drawer-dropdown-menu-item i{
	color:var(--pink);
	}


/*! 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 var(--pink);
  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 :1025px){

	.drawer-nav,
	.drawer-menu{ overflow:visible;}

	/*! open*/

	.drawer-menu li.drawer-dropdown.open,
	.drawer-menu li.drawer-dropdown:hover{
		}
	.drawer-dropdown:hover > .drawer-dropdown-menu {
		display: block;
		/*display:flex;*/
		}
	.drawer-dropdown.open .drawer-caret {
		-webkit-transform: rotate(0);
						transform: rotate(0);
		}
	.drawer-dropdown-menu{
		position:absolute;
		top: 100%;   /* 親メニューの直下に配置 */
		right:50%;
		-webkit-transform: translateX(50%);
		-ms-transform: translateX(50%);
		transform: translateX(50%);	
		/*width:100%;*/
		min-width:100%;
		white-space: nowrap;
		z-index:99;
		box-shadow: 0 0 3px 0px rgba(0,0,0,0.3);
		-moz-box-shadow: 0 0 3px 0px rgba(0,0,0,0.3);
		-o-box-shadow: 0 0 3px 0px rgba(0,0,0,0.3);
		-webkit-box-shadow: 0 0 3px 0px rgba(0,0,0,0.3);
		}
	.drawer-dropdown-menu:before{
    display:block;
		content:'';
    width: 0;
    height: 0;
		margin-left:auto;
		margin-right:auto;
		margin-top:-15px;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #ccc;
		}
	.drawer-dropdown-menu > li{
		border:none;
		}
	.drawer-dropdown-menu-item{
		padding:12px 20px;
		font-weight:500;
		min-width:200px;
		font-size:0.9em;
		border-bottom:#ccc dotted 1px;
		}


	.drawer-dropdown .drawer-caret{ display:none;}
}




/*! 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: 4%;
}

/*!------------------------------------*\
    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: 104;
  top: 8px;
  display: block;
  width: 44px;
	height:44px;
  padding: 0 10px 1.2rem;
  -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;
  background-color: var(--pink);
}

.drawer-hamburger:hover {
  cursor: pointer;
  background-color: var(--pink-on);
}

.drawer-hamburger-icon {
  position: relative;
  display: block;
  margin-top: 2px;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  width: 100%;
  height: 2px;
  -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: -7px;
  left: 0;
  content: ' ';
}

.drawer-hamburger-icon:after {
  top: 7px;
}
.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 :1025px){
	.drawer-hamburger {
		display:none;
		}
}

/*!------------------------------------*\
    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;
}


