/*!
 * 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: 10001;
	/* overflow: hidden; */
	width: 300px;
	height: 100%;

box-sizing: border-box;/*width:100%で､padding分をハミ出させないためのスタイル*/
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-ms-box-sizing: border-box;
	
	/*背景色はstyle.cssで指定*/
	
}

.drawer-brand {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 3.75rem;
	display: block;
	padding-right: .75rem;
	padding-left: .75rem;
	text-decoration: none;
	color: #ffffff;
}

/*開いたメニュー欄 div*/
.drawer-menu {
	display: block;
	position: relative;
}

/*
.drawer-menu ul {
	display: block;
	visibility: visible;
	position: relative;
	list-style: none;
	text-align: left;
}
*/

.drawer-menu-item {
	font-size: 1rem;
	display: block;
	padding: .75rem;
	text-decoration: none;
	color: #ffffff;
}

.drawer-menu-item:hover {
	text-decoration: underline;
	color: #555;
	background-color: transparent;
}

/*! overlay */

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

.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: -26.00rem;
	-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: 26.00rem;*/
	left: 0;
}

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

.drawer--right.drawer-open .drawer-hamburger {
	/*right: 80%;*//*←開いた時、開いたドロワーの端にメニューボタンを追従させる場合はここを有効にする*/
}

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

.drawer-hamburger {
	position: absolute;
	z-index: 10004;
	top: 17px;
	right: 10px;
	display: block;
	box-sizing: content-box;
	width: 60px;/* IE8以下とAndroid4.3以下用フォールバック */
	height: 60px;
	padding: 0;
	padding-top: 14px;
	padding-right: .75rem;
	padding-bottom: 30px;
	padding-left: .75rem;
	-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: transparent;/**/
	
	pointer-events: visible;
	
	border-radius: 60px;
	-webkit-border-radius: 60px;
	-moz-border-radius: 60px;
	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.drawer-hamburger:hover {
	cursor: pointer;
	background-color: #dcdcdc;
	
	/*左：ブルーから、右：ピンクのグラデ*/
	/*
	background: -moz-linear-gradient(left, #80ccd9, #f4b2bc);
	background: -webkit-linear-gradient(left, #80ccd9, #f4b2bc);
	background: linear-gradient(to right, #80ccd9, #f4b2bc);
	*/
}

/*開いている時のbuttonの背景*/
.drawer-open .drawer-hamburger {
	background-color: #dcdcdc;
	/*左：ブルーから、右：ピンクのグラデ*/
	/*
	background: -moz-linear-gradient(left, #80ccd9, #f4b2bc);
	background: -webkit-linear-gradient(left, #80ccd9, #f4b2bc);
	background: linear-gradient(to right, #80ccd9, #f4b2bc);
	*/

}

.drawer-open .drawer-hamburger:hover {
	cursor: pointer;
	background-color: #dcdcdc;
}

/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
.header_navi_area.scroll_change .drawer-hamburger {
}

.header_navi_area.scroll_change .drawer-hamburger:hover {
}

.header_navi_area.scroll_change .drawer-open .drawer-hamburger {
}



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

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	width: 22px;
	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: #000000;
}

/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
.header_navi_area.scroll_change .drawer-hamburger-icon,
.header_navi_area.scroll_change .drawer-hamburger-icon:before,
.header_navi_area.scroll_change .drawer-hamburger-icon:after {
	background-color: #000000;
}



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

.drawer-hamburger-icon:after {
	top: 8px;
}

/*メニューが開いている時、ハンバーガーの三本線の真ん中を透明に*/
.drawer-open .drawer-hamburger-icon {
	background-color: transparent !important;
}

/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
.drawer-open .header_navi_area.scroll_change .drawer-hamburger-icon {
	background-color: transparent !important;
}

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
	top: 0;
	/*background-color: #ffffff !important;*/
}

.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);
}

/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
.drawer-hamburger:hover .drawer-hamburger-icon,
.drawer-hamburger:hover .drawer-hamburger-icon:before,
.drawer-hamburger:hover .drawer-hamburger-icon:after  {
	/*background-color: #ffffff;*/
}


.hamburger-text{
	display: block;
	position: relative;
	margin: 0 auto;
	top: 14px;
	font-size: 9px;
	color: #000000;
}

.drawer-open .hamburger-text{
	color: #000000;
}


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

/*!------------------------------------*\
		Sidebar
\*!------------------------------------*/

.drawer--sidebar {
	background-color: #fff;
}

.drawer--sidebar .drawer-contents {
	background-color: #fff;
}

@media (min-width: 64em) {
	.drawer--sidebar .drawer-hamburger {
		display: none;
		visibility: hidden;
	}

	.drawer--sidebar .drawer-nav {
		display: block;
		-webkit-transform: none;
						transform: none;
		position: fixed;
		width: 100%;
		height: 100%;
	}

	/*! Left */
	.drawer--sidebar.drawer--left .drawer-nav {
		left: 0;
		border-right: 1px solid #ddd;
	}

	.drawer--sidebar.drawer--left .drawer-contents {
		margin-left: 12.5rem;
	}

	/*! Right */
	.drawer--sidebar.drawer--right .drawer-nav {
		right: 0;
		border-left: 1px solid #ddd;
	}

	.drawer--sidebar.drawer--right .drawer-contents {
		margin-right: 12.5rem;
	}

	/*! container */
	.drawer--sidebar .drawer-container {
		max-width: 48rem;
	}
}

@media (min-width: 75em) {
	.drawer--sidebar .drawer-nav {
		width: 26.00rem;
	}

	.drawer--sidebar.drawer--left .drawer-contents {
		margin-left: 26.00rem;
	}

	.drawer--sidebar.drawer--right .drawer-contents {
		margin-right: 26.00rem;
	}

	/*! container */
	.drawer--sidebar .drawer-container {
		max-width: 60rem;
	}
}

/*!------------------------------------*\
		Navbar
\*!------------------------------------*/

.drawer--navbarTopGutter {
	padding-top: 3.75rem;
}

.drawer-navbar .drawer-navbar-header {
	border-bottom: 1px solid #ddd;
	background-color: #fff;
}

.drawer-navbar {
	z-index: 10002;
	top: 0;
	width: 100%;
}

/*! .drawer-navbar modifier */

.drawer-navbar--fixed {
	position: fixed;
}

.drawer-navbar-header {
	position: relative;
	z-index: 10002;
	box-sizing: border-box;
	width: 100%;
	height: 3.75rem;
	padding: 0 .75rem;
	text-align: center;
}

.drawer-navbar .drawer-brand {
	line-height: 3.75rem;
	display: inline-block;
	padding-top: 0;
	padding-bottom: 0;
	text-decoration: none;
}

.drawer-navbar .drawer-brand:hover {
	background-color: transparent;
}

.drawer-navbar .drawer-nav {
	padding-top: 3.75rem;
}

.drawer-navbar .drawer-menu {
	padding-bottom: 7.5rem;
}

@media (min-width: 64em) {
	.drawer-navbar {
		height: 3.75rem;
		border-bottom: 1px solid #ddd;
		background-color: #fff;
	}

	.drawer-navbar .drawer-navbar-header {
		position: relative;
		display: block;
		float: left;
		width: auto;
		padding: 0;
		border: 0;
	}

	.drawer-navbar .drawer-menu--right {
		float: right;
	}

	.drawer-navbar .drawer-menu li {
		float: left;
	}

	.drawer-navbar .drawer-menu-item {
		line-height: 3.75rem;
		padding-top: 0;
		padding-bottom: 0;
	}

	.drawer-navbar .drawer-hamburger {
		display: none;
	}

	.drawer-navbar .drawer-nav {
		position: relative;
		left: 0;
		overflow: visible;
		width: auto;
		height: 3.75rem;
		padding-top: 0;
		-webkit-transform: translate3d(0, 0, 0);
						transform: translate3d(0, 0, 0);
	}

	.drawer-navbar .drawer-menu {
		padding: 0;
	}

	/*! dropdown */
	.drawer-navbar .drawer-dropdown-menu {
		position: absolute;
		width: 26.00rem;
		border: 1px solid #ddd;
	}

	.drawer-navbar .drawer-dropdown-menu-item {
		padding-left: .75rem;
	}
}

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

.drawer-dropdown-menu {
	display: none;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #fff;
}

.drawer-dropdown-menu > li {
	width: 100%;
	list-style: none;
}

.drawer-dropdown-menu-item {
	line-height: 3.75rem;
	display: block;
	padding: 0;
	padding-right: .75rem;
	padding-left: 1.5rem;
	text-decoration: none;
	color: #ffffff;
}

.drawer-dropdown-menu-item:hover {
	text-decoration: underline;
	color: #555;
	background-color: transparent;
}

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

/*!------------------------------------*\
		Container
\*!------------------------------------*/

.drawer-container {
	margin-right: auto;
	margin-left: auto;
}

@media (min-width: 64em) {
	.drawer-container {
		max-width: 60rem;
	}
}

@media (min-width: 75em) {
	.drawer-container {
		max-width: 70rem;
	}
}




/*スマホ用（スマホでは開いたメニューは横幅いっぱい　※320pxにあわせる場合は「20.00rem」）*/
@media screen and ( max-width: 767px ) {/*元767*/

	/*開いたメニュー欄 div*/
	.drawer-menu {
		margin: 0;
		padding: 0;
		
		pointer-events: visible;
	}
	
	.drawer-menu ul {
		list-style: none;
		text-align: left;
		pointer-events: visible;
	}
	
	
	
	.drawer-nav {
		/*width: 20.00rem;*/
		z-index: 10001;
		top: 0px;
		height: 100%;
		width: 100%;
	}
	
	/*※開いていない時は左側に隠れている*/
	.drawer--right .drawer-nav{
		right:-100%;
	}
	
	/*PCのトップページのみ隠すのやめる*/
	/*.drawer--right.body_frontpage .drawer-nav*/
	.body_frontpage .drawer-nav	{
		
		/*
		position:absolute;
		width: 100%;
		right: -100%;
		left: auto;
		*/
	}
	
	
	
	
	
	/*!------------------------------------*\
			Hamburger
	\*!------------------------------------*/
	
	.drawer-hamburger {
		z-index: 10004;
		top: 0px;
		right: 0px;
		display: block;
		box-sizing: content-box;
		width: 46px;
		height: 46px;
		padding: 0;
		-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: color(display-p3 0.29 0.573 0.824);/**/
		pointer-events: visible;
		
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	
	.drawer-hamburger:hover {
		cursor: pointer;
		background-color: color(display-p3 0.29 0.573 0.824 / 0.8);/**/
	}
	
	/*開いている時のbuttonの背景*/
	.drawer-open .drawer-hamburger {
		background-color: color(display-p3 0.29 0.573 0.824);/**/
	}
	
	.drawer-open .drawer-hamburger:hover {
		cursor: pointer;
		background-color: color(display-p3 0.29 0.573 0.824 / 0.8);/**/
	}
	
	/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
	.header_navi_area.scroll_change .drawer-hamburger {
	}
	
	.header_navi_area.scroll_change .drawer-hamburger:hover {
	}
	
	.header_navi_area.scroll_change .drawer-open .drawer-hamburger {
	}
	
	
	.drawer-hamburger-icon {
		position: relative;
		display: block;
		margin: 0 auto;
		margin-top: 0px;
	}
	
	.drawer-hamburger-icon,
	.drawer-hamburger-icon:before,
	.drawer-hamburger-icon:after {
		width: 16px;
		height: 1px;
		-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: #ffffff;
	}
	
	/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
	.header_navi_area.scroll_change .drawer-hamburger-icon,
	.header_navi_area.scroll_change .drawer-hamburger-icon:before,
	.header_navi_area.scroll_change .drawer-hamburger-icon:after {
		background-color: #ffffff;
	}
	
	
	
	.drawer-hamburger-icon:before,
	.drawer-hamburger-icon:after {
		position: absolute;
		top: -5px;
		left: 0;
		content: ' ';
	}
	
	.drawer-hamburger-icon:after {
		top: 5px;
	}
	
	/*メニューが開いている時、ハンバーガーの三本線の真ん中を透明に*/
	.drawer-open .drawer-hamburger-icon {
		background-color: transparent !important;
	}
	
	/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
	.drawer-open .header_navi_area.scroll_change .drawer-hamburger-icon {
		background-color: transparent !important;
	}
	
	.drawer-open .drawer-hamburger-icon:before,
	.drawer-open .drawer-hamburger-icon:after {
		top: 0;
		background-color: #ffffff !important;
	}
	
	.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);
	}
	
	/*　※「scroll_change」：スクロールによりJSで付加されるclass*/
	.drawer-hamburger:hover .drawer-hamburger-icon,
	.drawer-hamburger:hover .drawer-hamburger-icon:before,
	.drawer-hamburger:hover .drawer-hamburger-icon:after  {
		/*background-color: #ffffff;*/
	}
	
	
	.hamburger-text{
		display: none;
		/*
		position: relative;
		margin: 0 auto;
		top: 12px;
		font-size: 9px;
		color: #ffffff;
		*/
	}
	
	.drawer-open .hamburger-text{
		color: #ffffff;
	}
	
	/*! overlay */
	
	.drawer-overlay {
		z-index: 10000;
		width: 100%;
	}
	
}/*@media screen and ( max-width: 767px ) {*/


