@charset "UTF-8";

/**
 * オリジナルcss
 */

.header_hm_button_wrap {
	display: none;
	position: relative;
	width: 62px;
}

.header_hm_button_wrap::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.hm_button {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 200;
	width: 100%;
	height: 100%;
	cursor: pointer;
	border: 1px solid #222222;
}

.hm_button1 {
	display: block;
	position: absolute;
	top: 25%;
	right: 20%;
	width: 60%;
	height: 1px;
	background: #222222;
	transition: .3s;
}

.hm_button2 {
	display: block;
	position: absolute;
	top: 50%;
	left: 20%;
	width: 60%;
	height: 1px;
	background:#222222;
	transition: .3s;
}

.hm_button3 {
	display: block;
	position: absolute;
	top: 75%;
	left: 20%;
	width: 60%;
	height: 1px;
	background: #222222;
	transition: .3s;
}

.hm_button_active .hm_button1 {
	transform:rotate(-45deg);
	top: 46%;
	width: 64%;
	right: 19%;
	background: #222222;
}

.hm_button_active .hm_button2, 
.hm_button_active .hm_button3 {
	transform:rotate(45deg);
	width: 64%;
	top: 46%;
	left: 19%;
	background: #222222;
}

.hm_main {
	position: fixed;
	width: 100%;
	height: calc(100% - 86px);
	bottom: 0;
	left: 0;
	z-index: 100;
	visibility: hidden;
	background: rgba(0, 0, 0, .7);
	transition: .6s;
	opacity: 0;
}

.hm_main_active {
	visibility: visible;
	opacity: 1;
}

.hm_main_inner {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	right: -100%;
	transition: .6s;
}

.hm_main_active .hm_main_inner {
	right: 0;
}

.hm_blank {
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.hm_body {
	background: #fff;
	width: 50%;
	height: calc(100% - 86px);
	position: absolute;
	bottom: 0;
	right: 0;
	overflow-y: auto;
	padding: 40px 40px 10px 40px;
	background-color: var(--color-bg-blue);
	background-image: url(../images/header/hm_body_bg.png);
	background-repeat: no-repeat;
	background-position: right bottom;
}

.hm_main_active .hm_body {
	right: 0;
}

.hm_logo {
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 30px;
	img {
		width: auto;
		height: 53px;
	}
}

.hm_list {
	margin: 0;
	padding-top: 80px;
}

.hm_menu_link a {
	text-decoration: none;
	display: block;
	text-align: center;
	padding: 12px;
	font-weight: 600;
}

.hm_menu_link a:hover {
	background: rgba(0, 0, 0, .1);
}

@media screen and (max-width: 1110px) {
}
@media screen and (max-width:900px){
	.hm_blank {
		display: none;
	}
	
	.hm_body {
		width: 100%;
		padding: 40px 20px 10px 20px;
	}
}
@media screen and (max-width:740px){
	.header_hm_button_wrap {
		display: block;
	}
}
@media screen and (max-width:639px){
	.header_hm_button_wrap {
		width: 48px;
	}
	.hm_main, 
	.hm_body {
		height: calc(100% - 64px);
	}
}
@media screen and (max-width:500px){
}

