header.p_header {
	background: #fff;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	margin: 0 auto;
	z-index: 9999;
	overflow: initial;
	overflow: visible;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: 80px;
	padding: 0 40px
}
header.p_header.affix {
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out
}
.p_header__logo.sp-only {
	display: none
}
.p_header__logo a {
	position: relative
}
.p_header__logo img {
	width: 100%;
	max-width: 267px
}
.p_header__nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-left: auto
}
nav.p_header__nav__list ul.menu {
	width: auto
}
nav.p_header__nav__list ul.menu>li {
	font-weight: 700
}
nav.p_header__nav__list ul.menu>li a {
	text-decoration: none
}
nav.p_header__nav__list ul.menu>li:hover {
	cursor: pointer
}
nav.p_header__nav__list ul.menu>li:hover>a {
	text-decoration: none;
	opacity: 1;
	color: #bb2026
}
nav.p_header__nav__list ul.menu>li>a, nav.p_header__nav__list ul.menu>li>span {
	color: #333;
	line-height: 1.5;
	text-align: center;
	padding: 10px 12px;
	font-weight: 500;
	font-size: 13px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s
}
nav.p_header__nav__list ul.menu li.current>a {
	color: #bb2026
}

@media screen and (max-width: 575px) {
  nav.p_header__nav__list ul.menu>li>a, nav.p_header__nav__list ul.menu>li>span {
    -webkit-transition: none;
    transition: none
  }
}

.menu__child {
  position: relative
}

.menu__child.clicked::after {
  content: "";
  width: 100%;
  height: 100%;
  cursor: default;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5
}

.menu__secondary {
  position: absolute;
  display: none;
  background-color: #f7f7f7;
  width: 200px;
  font-size: 13px;
  font-weight: normal;
  z-index: 10
}

.menu__secondary>li>a {
  display: block;
  padding: 4px 8px;
  color: #333;
  -webkit-transition: all .3s;
  transition: all .3s
}

.menu__secondary>li>a:hover {
  background-color: #bb2026;
  color: white
}

.menu__child.clicked .menu__secondary {
  display: block;
  opacity: 1
}

@media screen and (max-width: 991px) {
  .menu__child::before {
    content: "+";
    position: absolute;
    top: 3vw;
    right: 3vw;
    z-index: 1
  }
  .menu__child.clicked::before {
    content: "-"
  }
  .menu__child.clicked::after {
    content: none
  }
  .menu__child.clicked>span {
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important
  }
  .menu__secondary {
    position: relative;
    width: 100%;
    background-color: #fff;
    border-bottom-right-radius: 2vw !important;
    border-bottom-left-radius: 2vw !important
  }
  .menu__secondary>li>a {
    padding: 10px 3vw;
  }
}

nav.p_header__nav__list .nav_btn {
	text-align: center;
	width: 75px;
	height: 75px;
	padding: 42px 0 0 !important;
	margin-left: 30px;
	margin-right: 2px
}
nav.p_header__nav__list .nav_btn:before {
	content: "";
	background: url("../images/icon-nav-btn.png") no-repeat center top/contain;
	width: 40px;
	height: 28px;
	position: absolute;
	top: 15px;
	left: 0;
	right: 0;
	margin: 0 auto
}
nav.p_header__nav__list .nav_btn:after {
	content: "";
	background: url("../images/nav-btn-circ.svg") no-repeat center top/cover;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.3s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.58, 1)
}
nav.p_header__nav__list .nav_btn span {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: bold;
	font-size: 12px;
	color: #FFFFFF
}
nav.p_header__nav__list .nav_btn:hover {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
	background: none !important
}
nav.p_header__nav__list .nav_btn:hover:after {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg)
}
.p_header__logo a, nav.p_header__nav__list ul.menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex
}
.cfix {
	clear: both;
	overflow: hidden;
	display: inline-block;
	vertical-align: top
}
.bg-nav-sp {
	display: none
}
.p_header__menu-toggle {
	display: none;
	color: #fff;
	font-size: 10px;
	line-height: 1;
	text-align: center;
	padding: 19px 2px 0;
	z-index: 9999;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	cursor: pointer
}
.p_header__menu-toggle span {
	display: block;
	position: absolute;
	height: 2px;
	width: 24px;
	border-radius: 5px;
	background: #333;
	opacity: 1;
	left: 0;
	right: 0;
	margin: 0 auto;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out
}
.p_header__menu-toggle span:nth-child(1) {
	top: 0
}
.p_header__menu-toggle span:nth-child(2) {
	top: 6px
}
.p_header__menu-toggle span:nth-child(3) {
	top: 12px
}
.p_header__menu-toggle small.op {
	color: #333;
	font-size: 10px
}
.p_header__menu-toggle.active small.op {
	color: #fff
}
.p_header__menu-toggle.active {
	padding-top: 20px
}
.p_header__menu-toggle.active span {
	background: #fff
}
.p_header__menu-toggle.navSpClose span:nth-child(1) {
	top: 8px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg)
}
.p_header__menu-toggle.navSpClose span:nth-child(2) {
	top: 8px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg)
}
.navSpOpen.disactive {
	display: none
}
.navSpClose {
	display: none
}
.p_header__login {
	vertical-align: top;
	font-size: 10px;
	color: #333;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	display: none
}
.p_header__login:hover {
	opacity: .7;
	text-decoration: none
}
.p_header__login:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f007';
	color: #333;
	text-align: center;
	display: block;
	margin-bottom: -10px;
	font-size: 14px;
	font-weight: 400
}
@media screen and (max-width: 1399px) {
	header.p_header {
		padding: 0 10px
	}
	nav.p_header__nav__list ul.menu>li>a, nav.p_header__nav__list ul.menu>li>span {
		padding: 10px 8px
	}
}
@media screen and (max-width: 1199px) {
	nav.p_header__nav__list ul.menu>li>a, nav.p_header__nav__list ul.menu>li>span {
		padding: 10px 6px;
		font-size: 12px
	}
	nav.p_header__nav__list .nav_btn {
		width: 60px;
		height: 60px;
		padding: 28px 0 0 !important;
		margin-left: 10px
	}
	nav.p_header__nav__list .nav_btn:before {
		width: 30px;
		top: 12px
	}
	nav.p_header__nav__list .nav_btn span {
		font-size: 10px
	}
	.p_header__logo img {
		max-width: 187px
	}
}
@media screen and (max-width: 991px) {
	header.p_header {
		min-height: 60px
	}
	.p_header__logo {
		padding: 0;
		max-width: 194px;
		width: calc(100% - 178px)
	}
	.p_header__logo.sp-only {
		display: block
	}
	.p_header__menu-toggle:hover {
		opacity: .7
	}
	header.p_header .container {
		position: initial
	}
	.navSpOpen {
		display: block
	}
	.p_header__login {
		display: inline-block;
		padding: 0 4px
	}
	nav.p_header__nav__list {
		padding: 0
	}
	.bg-nav-sp {
		position: fixed;
		top: 0;
		left: 0;
		background: rgba(32, 33, 64, 0.5);
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		height: 100vh;
		z-index: 9997;
		opacity: 0;
		display: none
	}
	nav.p_header__nav__list {
		overflow-y: scroll;
		position: fixed;
		top: 0;
		right: -100%;
		background: #bb2026;
		width: 100%;
		height: 100%;
		z-index: 9998;
		-webkit-overflow-scrolling: touch;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-moz-box-sizing: border-box
	}
	nav.p_header__nav__list ul.menu {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		width: 100%;
		padding: 63px 20px 20px;
		text-align: left
	}
	nav.p_header__nav__list ul.menu>li {
		width: 100%;
		display: block;
		float: none;
		font-size: 15px;
		line-height: 1.8;
		margin: 0;
		padding: 0;
		position: relative;
		margin-bottom: 5px
	}
	nav.p_header__nav__list ul.menu>li .sp-only {
		display: block
	}
	nav.p_header__nav__list ul.menu>li>a, nav.p_header__nav__list ul.menu>li>span {
		font-size: 15px;
		line-height: 1.8;
		padding-bottom: 0;
		display: block;
		text-align: left;
		color: #000;
		background: #FFFFFF;
		padding: 3vw;
		border-radius: 2vw
	}
	nav.p_header__nav__list ul.menu>li:hover>a {
		opacity: 0.7;
		border-bottom: 0
	}
	nav.p_header__nav__list ul.menu>li:first-child a img {
		display: none
	}
	nav.p_header__nav__list ul.menu>li>.nav_btn {
		margin: 20px 0 0 !important;
		line-height: 1.8;
		display: block;
		text-align: left;
		color: #000;
		background: #FFFFFF;
		padding: 3vw !important;
		border-radius: 2vw;
		width: 100%;
		height: auto;
		background: #FFFFFF !important
	}
	nav.p_header__nav__list ul.menu>li>.nav_btn span {
		color: #000;
		font-size: 15px
	}
	nav.p_header__nav__list ul.menu>li>.nav_btn:hover {
		-webkit-transform: none;
		transform: none
	}
	nav.p_header__nav__list ul.menu>li>.nav_btn:hover:after {
		-webkit-transform: none;
		transform: none
	}
	nav.p_header__nav__list ul.menu>li>.nav_btn:before, nav.p_header__nav__list ul.menu>li>.nav_btn:after {
		display: none
	}
	.bg-nav-sp.active {
		opacity: 0.8;
		display: block
	}
	.navSpClose.active {
		opacity: 1;
		display: block
	}
	nav.open {
		right: 0
	}
}
@media screen and (max-width: 575px) {
	.c_btn.small {
		margin-right: 4px
	}
}


	.br-narrow {
	  display: block;
	  line-height: 2.0;
	}

  
  
  
  
  