@charset "utf-8";
/* CSS Document */

.base_humburg{
		position: fixed;
		width: 100%;
		height: 60px;
		 background-color: rgba(255, 255, 255, 0.9);
		z-index: 28;
}
/*ハンバーガーボタン*/
.humburger_icon {
		  position: fixed;
		  top: 6px;
		  right: 16px;
		  width: 48px;
		  height: 48px;
		  padding-top: 12px;
		  -webkit-box-sizing: border-box;
		  box-sizing: border-box;
/*		  padding-top: 0px;*/
		  z-index: 29;
		  cursor: pointer;
		  pointer-events: auto;
		  color: #000;
		  text-align: center;
/*	background-color: #6b6a6a;*/
	background-color: #b8987d;
}
@media screen and (min-width: 1080px) {
.humburger_icon{
display: none;
}
.humburger_icon_wrapper{
display: none;
}
}
@media screen and (max-width: 840px) {
.humburger_icon {
		    display: block;
		    right: 0;
		    top: 0;
		    padding-top: 17px;
		    width: 60px;
		    height: 60px;
}
/*#factory .humburger_icon {
		      display: none;
} */
}

.humburger_icon_wrapper {
		  margin-bottom: 5px;
		  width: 35px;
		  display: inline-block;
}
@media screen and (max-width: 840px) {
	.humburger_icon_wrapper {
		    margin-bottom: 5px;
		    width: 30px;
	}
}

.humburger_icon_text {
		  font-size: 12px;
/*		  letter-spacing: 0.1em;*/
	  font-family: "游ゴシック Medium", YuGothic, "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
.js_humburgerOpen .humburger_icon_text.humburger_icon_text__menu {
		  display: none;
}
.humburger_icon_text.humburger_icon_text__close {
		  display: none;
}
.js_humburgerOpen .humburger_icon_text.humburger_icon_text__close {
		  display: block;
}
@media screen and (max-width: 840px) {
.humburger_icon_text {
		    font-size: 10px;
		    padding-top: 2px;
}
}

@media screen and (max-width: 840px) {
.humburger_icon_text svg path {
	-webkit-transition: all 200ms cubic-bezier(0.16, 0.52, 0.25, 1);
	-o-transition: all 200ms cubic-bezier(0.16, 0.52, 0.25, 1);
	transition: all 200ms cubic-bezier(0.16, 0.52, 0.25, 1);
	fill: #fff;
}
}
@media screen and (max-width: 840px) {
.js_humburgerOpen .humburger_icon_text svg path {
	fill: #fff;
}
}
.humburger_icon span.humburger_icon_bar {
	display: block;
	width: 100%;
	margin: 0 auto 9px;
	height: 2px;
	background: #fff;
	-webkit-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.humburger_icon span.humburger_icon_bar:last-child {
	margin-bottom: 0;
}
.js_humburgerOpen .humburger_icon span.humburger_icon_bar {
	background: #fff;
}
@media screen and (max-width: 840px) {
.humburger_icon span.humburger_icon_bar {
	left: 0;
	top: 0;
	background: #fff;
}
}
.js_humburgerOpen .humburger_icon span.humburger_icon_bar.top {
	-webkit-transform: translateY(9px) rotate(-45deg);
	-ms-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
}
.js_humburgerOpen .humburger_icon span.humburger_icon_bar.middle {
	opacity: 0;
}
.js_humburgerOpen .humburger_icon span.humburger_icon_bar.bottom {
	-webkit-transform: translateY(-12px) rotate(45deg);
	-ms-transform: translateY(-12px) rotate(45deg);
	transform: translateY(-12px) rotate(45deg);
}
.humburger_iconButton.humburger_iconButton__close {
	top: 2%;
	right: 2%;
}
.humburger_iconButton__close span.humburger_icon_bar {
	display: block;
	width: 35px;
	margin: 0 auto;
	height: 4px;
	background: #000;
}
.humburger_iconButton__close span.humburger_icon_bar.top {
	-webkit-transform: translateY(5px) rotate(-45deg);
	-ms-transform: translateY(5px) rotate(-45deg);
	transform: translateY(5px) rotate(-45deg);
}
.humburger_iconButton__close span.humburger_icon_bar.bottom {
	-webkit-transform: translateY(-6px) rotate(45deg);
	-ms-transform: translateY(-6px) rotate(45deg);
	transform: translateY(-6px) rotate(45deg);
}

.sp_navi {
  position: fixed;
  right: 0;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  width: 450px;
  z-index: 23;
top:60px;
/*	  padding-top: 40px;*/
/*  padding-top: 100px;*/
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 600ms ease-out;
  -o-transition: all 600ms ease-out;
  transition: all 600ms ease-out;
  transform:translateZ(0) translateX(100%);
  overflow: auto;
}
  .js_humburgerOpen .sp_navi {
    transform:translateZ(0) translateX(0);
	}
    @media screen and (max-width: 840px) {
      .sp_navi {
		          padding: 40px 5% 0;
/*        padding: 100px 5% 0;*/
		}
      .js_humburgerOpen .sp_navi {
        width: 100%;
		}
	}

.navi_item {
position:relative;
  margin-bottom: 24px;
  font-size: 16px;
		font-family: "メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",Hiragino Sans,"Noto Sans JP",sans-serif;
/*  font-family: "Marcellus", serif !important;*/
  white-space: nowrap;
  margin-left: 90px;
	}
.navi_item a{
	color: #040404;
	text-decoration: none;
}
.navi_item.op_innerLink {
    cursor: pointer;
}
@media screen and (max-width: 840px) {
.navi_item {
    margin-left: 0;
    font-size: 16px;
 } 
}

.sp_ChildNavOpen {
  position: absolute;
  top: -6px;
  left: 16em;
  z-index: 20;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  padding: 10px;
	}

.js_openParent.js_fire > .sp_ChildNavOpen {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }
  .js_openParent.js_fire > .sp_ChildNavOpen > .sp_ChildNavOpen_wrapper:after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
	}

.sp_ChildNavOpen_wrapper {
  position: relative;
  width: 15px;
  height: 15px;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}
.sp_ChildNavOpen_wrapper:before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #111;
    position: absolute;
    top: calc(50% - 1px);
}
.sp_ChildNavOpen_wrapper:after {
    content: "";
    width: 1px;
    height: 100%;
    background-color: #111;
    position: absolute;
    left: calc(50% - 1px);
    -webkit-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}

.nav_child{
  padding-top:20px;
}
.nav_child_item{
  position: relative;
  font-size:16px;
  padding-left:20px;
  margin-bottom:8px;
}
.nav_child_item > a{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  top:0;
}
.nav_child_item:last-child{
  margin-bottom:0px;
}
.js_openSwitch {
  cursor: pointer;
}
.js_openTarget {
  display: none;
}	
.sp_nav_logo{
	width: 180px;
	height: auto;
	margin: 12px 0 12px 12px;
}