@charset	"utf-8";
:root {
	--common:#333;
	--corp1: #e60012;
	--corp2: #00a0e9;
	--red: #cc0000;
	--bd-line:1px solid #ccc;
}

/* section header	------------------------------------- */
#header{
	/* background: #fff; */
	background-color: rgba(255, 255, 255, 0.8);
	width: 100%;
	position: fixed;
	z-index: 5;
	top:0;
	left:0;
}

.header01 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.gnav__pc__box {
	max-width: 1300px;
	margin: 0 auto;
}
.gnav__pc {
	margin: 0 auto;
}
.gnav__pc a{
	text-decoration: none;
	padding: 15px;
	color: var(--common);
}
.gnav__pc a:hover{
	padding: 15px;
	/* background: #ccc; */
	border-bottom: 3px solid var(--honsya);
}
.gnav__pc ul{
	display: flex;
	list-style: none;
}
.header__logo {
width: 250px;
}
.head_rec_btn,
.head_rec_btn_inq {
	height: 50px;
}

nav ul li.current a,
nav ul li a:hover{
color:#001247;
}

.hr__line {
	width: 100px;
	padding: 20px;
}

.top__hd__inq {
	margin-top: -43px;
}

.header01-item a{	color: #333; text-decoration: none;}
.header01-item a:hover{	color: #666;}
.header01-item a:visited{	color: #333;}
.header01-item--contact a{	color: #fff; text-decoration: none;}
.header01-item--contact a:hover{	color: #efb;}
.header01-item--contact a:visited{	color: #fff;}
.header01-item--contact span{	color: #fff !important;}

.header01-list {
		display: flex;
		align-items: center;
		gap: 50px;
		font-size: 1.1rem;
		text-align: center;
}

.header01-item--contact {
		background-color: var(--corp1);
		color: #fff;
		padding: 20px 60px;
		border-bottom: 5px solid var(--corp2);
		/* border-radius: 6px; */
}

.header01-tx {
	display: block;
	font-size: 0.8rem;
	color: var(--corp1);
}






.hd_flex_box {
	display: flex;
	/* justify-content: space-between; */
	/* ustify-content: center; */
	align-items: center;
	margin: 0 auto;
	width: 100%;
	max-width: 1200px;
}

.hd_logo {
	display: inline-block;
}

.hd_nav {
	margin-left: auto;
}

.hd_nav_link {
	display: inline-block;
	margin: 0;
	padding: 0;
	background: #ccc;
}




#g-nav.panelactive{
position:fixed;
z-index:	999;
top:	0;
width:100%;
height:	100vh;
}

.circle-bg{
position:	fixed;
z-index:3;
width:	100px;
height:	100px;
border-radius:	50%;
background:	rgba(4,34,117,0.8);
transform:	scale(0);
left:-50px;
top:-50px;
transition:	all	.6s;
}

.circle-bg.circleactive{
transform:	scale(50);
}

#g-nav-list{
display:	none;
position:	fixed;
z-index:	999;
width:	100%;
height:	100vh;
overflow:	auto;
-webkit-overflow-scrolling:	touch;
}

#g-nav.panelactive	#g-nav-list{
display:	block;
}

/*ナビゲーション*/
#g-nav	ul	{
opacity:	0;
position:	absolute;
z-index:	999;
top:50%;
left:50%;
transform:	translate(-50%,-50%);
}

#g-nav.panelactive	ul	{
opacity:1;
}

#g-nav.panelactive	ul	li{
animation-name:gnaviAnime;
animation-duration:1s;
animation-delay:.2s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes	gnaviAnime{
0%	{
opacity:	0;
}
100%	{
opacity:	1;
}
}

/*リストのレイアウト設定*/
#g-nav	li{
text-align:	center;
list-style:	none;
}

#g-nav	li	a{
color:	#fff;
text-decoration:	none;
padding:10px;
display:	block;
text-transform:	uppercase;
letter-spacing:	0.1em;
font-weight:	bold;
}


/*=========	ボタンのためのCSS	===============*/
.openbtn4{
position:fixed;
top:0;
right:	3px;
z-index:	9999;/*ボタンを最前面に*/
cursor:	pointer;
width:	50px;
height:50px;
}

/*×に変化*/
.openbtn4	span{
display:	inline-block;
transition:	all	.4s;
position:	absolute;
left:	14px;
height:	3px;
border-radius:	2px;
background-color:	#666;
width:	45%;
}

.openbtn4	span:nth-of-type(1)	{top:15px;}
.openbtn4	span:nth-of-type(2)	{top:23px;}
.openbtn4	span:nth-of-type(3)	{top:31px;}
.openbtn4.active	span:nth-of-type(1)	{
top:	18px;
left:	18px;
transform:	translateY(6px)	rotate(-45deg);
width:	30%;
}

.openbtn4.active	span:nth-of-type(2)	{opacity:	0;}
.openbtn4.active	span:nth-of-type(3){
top:	30px;
left:	18px;
transform:	translateY(-6px)	rotate(45deg);
width:	30%;
}

#g-nav{
position:fixed;
z-index:	999;
top:0;
left:	-120%;
width:100%;
height:	100vh;
/* background-image: url(../img/logo.svg);
background-position: top center;
background-repeat: no-repeat;
background-size: 200px; */
background-color: rgb(255,255,255,0.9);
transition:	all	0.6s;
}

#g-nav.panelactive{
left:	0;
}


#g-nav.panelactive{
position:	fixed;
z-index:	999;
width:100%;
height:	100vh;
overflow:	auto;
-webkit-overflow-scrolling:	touch;
}

#g-nav	ul	{
position:	absolute;
z-index:	999;
top:50%;
left:50%;
transform:	translate(-50%,-50%);
}

#g-nav	li{
list-style:	none;
text-align:	center;
}

#g-nav	li	a{
color:	#111;
text-decoration:	none;
padding:10px 0;
display:	block;
text-transform:	uppercase;
letter-spacing:	0.1em;
font-weight:	bold;
}

/*	1280px〜
------------------------------	*/
@media	screen	and	(min-width:	1280px)	{
}
