@charset "UTF-8";

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

.nav_toggle_wrap {
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 210;
}

.nav_toggle {
  display: inline-block;
  position: relative;
  width: 1.75rem;
  height: 1.2rem;
	transition: .5s;
	cursor: pointer;
	right: 0;
}
.nav_toggle i {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #111;
  position: absolute;
	transition: .5s;
}
.nav_toggle i:nth-child(1) {
  top: 0;
}
.nav_toggle i:nth-child(2) {
  top: 0;
  bottom: 0;
  margin: auto;
}
.nav_toggle i:nth-child(3) {
  bottom: 0;
}

.nav_toggle.show {
	height: 1.5em;
}

.nav_toggle.show i {
  background-color: #161616 !important;
}

.nav_toggle.show i:nth-child(1) {
  transform: translateY(10px) rotate(-45deg);
}
.nav_toggle.show i:nth-child(2) {
  opacity: 0;
}
.nav_toggle.show i:nth-child(3) {
  transform: translateY(-12px) rotate(45deg);
}



.nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 1rem;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s, visibility .5s;
  background: #fff;
  z-index: 210;
}


.nav.show {
  opacity: 1;
  visibility: visible;
}

.nav_logo {
	position: fixed;
	top: 16px;
	right: calc(50% + 390px);
	display: inline-block;
}

.nav_toggle_wrap.show {
	position: fixed;
	top: 35px;
	right: auto;
	left: calc(50% + 572px);
	display: inline-block;
	text-align: right;
	z-index: 1000;
}

.nav_content_sp, 
.nav_footer_sp {
	display: none;
}

.bm_page-top {
	position: fixed;
	top: 20px;
	width: 380px;
	left: calc(50% + 380px);
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 250;
}

.bm_page-top a {
	text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    transition: .3s;
    border-radius: 4px;
}

@media screen and (max-width: 1220px) {
	.nav_logo {
		right: auto;
		left: 0px;
	}
	
	.nav_toggle_wrap {
		right: 10px;
	}
	
	.nav_toggle_wrap.show {
		right: 10px;
		left: auto;
	}
	
	.bm_page-top {
		width: 100%;
		left: 0;
		right: 0;
		top: 80px;
		transform: translateX(0);
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
	}
	
	.bm_page-top .page-top-buttons li {
		margin-right: 0;
	}
	
	.bm_page-top .page-top-buttons li.page-top-button-raizyo {
		width: 28%;
	}
	
	.bm_page-top .page-top-buttons li.page-top-button-contact {
		width: 28%;
	}
	
	.bm_page-top .page-top-buttons li.page-top-button-line {
		width: 44%;
	}
	
	.nav_content_pc, 
	.nav_footer_pc {
		display: none;
	}
	
	.nav_content_sp, 
	.nav_footer_sp {
		display: block;
	}
	
	.nav_content_sp {
		position: fixed;
		width: 100%;
		height: calc(100% - 180px);
		top: 120px;
		left: 0;
		overflow: auto;
	}
	
	.sp_menu_parent {
		padding: 15px 15px 0 0;
	}
	
	.sp_menu_parent li {
		width: 50%;
		display: inline-block;
		padding: 0 0 15px 15px;
	}
	
	.sp_menu_parent li select {
		width: 100%;
		height: 4em;
		background: #51555B;
		color: #fff;
		border: none;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
	}
	
	.sp_menu_parent li select option {
		background: #fff;
		color: #161616;
	}
	
	.sp_menu_other li {
		width: 100%;
		padding: 0 15px 15px 15px;
	}
	
	.sp_menu_other li a {
		width: 100%;
		display: block;
		color: #161616;
		padding: 15px 10px 15px 20px;
		text-decoration: none;
		border: 1px solid #276F93;
		position: relative;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
	}
	
	.sp_menu_other li a .sp_menu_other_arrow img {
		position: absolute;
		right: 15px;
		top: 50%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
	}
	
	.nav_footer_sp {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background: #2A2C2F;
	}
	
	.nav_footer_sp_sns {
		text-align: center;
	}
	
	.nav_footer_sp_sns li {
		display: inline-block;
		padding: 12px;
	}
	
	.nav_footer_sp_sns li img {
		width: 37px;
	}
}
@media screen and (max-width:740px){
	#site-title a, 
	.nav_logo a img {
		width: 150px;
	}
	.nav_logo {
		left: 10px;
	}
}
@media screen and (max-width:639px){
}
@media screen and (max-width:500px){
}

