@charset "utf-8";
html{
	width:100%;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
/*	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;*/
}

body{
	width:100%;
	color:#333;
}
em{
	font-style:normal;
	font-weight:bold;
}
.sp{display:block;}
.pc{display:none;}
a:link,
a:visited{
	color:#333;
	text-decoration:underline;
	}
a:active,
a:hover{
	color:#333;
	text-decoration:underline;
	}
img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
	width /***/:auto;　
}
.img100{
	width:100%;
}
.w1000{
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}
.w800{
	max-width:800px;
	margin-left:auto;
	margin-right:auto;
}
.w600{
	max-width:600px;
	margin-left:auto;
	margin-right:auto;
}
.w90{
	width:90%;
	margin-left:auto;
	margin-right:auto;
}
.w96{
	width:96%;
	margin-left:auto;
	margin-right:auto;
}
.bold{
	font-weight:bold;
}
.fMin{
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
@media screen and (min-width:768px) {
	.sp{display:none;}
	.pc{display:block;}
	a{
		transition-duration:0.3s;
		}
	a:hover{
		opacity: 0.7;
		}
}/* base */





/*header
----------------------------------------------------------- */
header{
	width:100%;
	height:50px;
	background-color: #fff;
	z-index:200;
	left:0;
	top:0;
	transition: all 0.3s ease-out;
	position:fixed;
}
main{
	padding-top:50px;
}
.anchor{
	display:block;
	margin-top:-50px;
	padding-top:50px;
}
#hWrap{
	margin:0 auto;
	width:96%;
}
@media (min-width:1000px) {
	header{
		position:fixed;
		height:80px;
	}
	main{
		padding-top:80px;
	}
	.anchor{
		margin-top:-80px;
		padding-top:80px;
	}
	#hWrap{
		display:flex;
		justify-content: space-between;
		align-items: center;
		height: 80px;
	}
}
#hLogo{
	width:160px;
	margin: 5px 0;
	text-align:left;
	display:flex;
	justify-content: center;
	align-items: flex-start;
	flex-direction: column;
}
#hTel{
	display: none;
}
@media (min-width:1000px) {
	#hLogo{
		width:208px;
		margin:0;
	}
	#hLogo .copy01{
		display: block;
		font-size: 1.4rem;
		font-weight: normal;
		margin-top:5px;
	}
	#hTel{
		width:300px;
		display:flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		padding:0;
	}
	#hTel01{
		font-size: 3rem;
		font-weight: bold;
		line-height:1.2;
		color:#004fc0;
	}
	#hTel01 i{
		font-size: 2.5rem;
		margin-right:5px;
	}
	#hTel02{
		font-size: 1.1rem;
		line-height:1.2;
	}
	#hBtnMenu{
		display:none;
	}
}
/*gnav*/
#gNav{
	position:absolute;
	display:none;
	top:50px;
	left:0;
	z-index:100;
	text-align:center;
	width:100%;
	}
#gNav ul{
	width:100%;
	background-color:#fff;
}
#gNav a{
	width:100%;
	display:block;
	text-align:center;
	text-decoration:none;
	line-height:50px;
	color: #004fc0;
	font-size: 1.6rem;
	font-weight: bold;
}
@media (min-width:1000px) {
	#gNav{
		width:calc(100% - 300px - 208px);
		position:static;
		display:block !important;
		height:auto;
		padding: 15px 0;
		}
	#gNav ul{
		width:100%;
		display:flex;
		justify-content: flex-end;
		flex-wrap:wrap;
	}
	#gNav li:first-child{
		border-left:1px solid #fff;
	}
	#gNav li{
		width:auto;
		display:block;
		margin-right:20px;
		border-right:1px solid #fff;
	}
}
/*ハンバーガーボタン*/	
#hBtnMenu{
	position:fixed;
	top:0;
	right:0;
	width:50px;
	height:50px;
	padding-top:10px;
	text-align:center;
	z-index:10;
}
#hBtnMenu span {
	position: absolute;
	top: 0;
	left: 13px;
	display: block;
	width: 24px; /* 横幅 */
	height: 2px; /* 1本辺りの高さ */
	background: #1157a8; /* 線の色 */
	transition: all 0.3s ease-out;
  }
#hBtnMenu .hbBar01 { top: 8px; }
#hBtnMenu .hbBar02 { top: 18px; }
#hBtnMenu .hbBar03 { top: 28px; }
#hBtnMenu p{
	display:block;
	padding:22px 0 0 0;
	font-size:0.625em;
	color:#1157a8;
	text-align:center;
	}
#hBtnMenu.open span{
	background: #1157a8; /* 線の色 */
	}
/* 最上部の線のスタイル ---------------------- */
#hBtnMenu.open .hbBar01 {
  top: 20px; /* 上から2番目の線の位置に変更 */
  transform: rotate(45deg);
}
/* 上から2番目の線のスタイル ---------------------- */
#hBtnMenu.open .hbBar02 {
  opacity: 0; /* 不透明度を下げて線を消す */
}
/* 最下部の線のスタイル ---------------------- */
#hBtnMenu.open .hbBar03 {
  top: 20px; /* 上から2番目の線の位置に変更 */
  transform: rotate(135deg);
}


/*footer
----------------------------------------------------------- */
footer{
	padding:0;
	margin:0;
}
#footer01{
	background-color: #003a8d;
	color: #fff;
	padding: 40px 5%;
	line-height: 1.5;
}
#footer01 .fTel{
	font-size: 3rem;
	font-weight: bold;
	display:flex;
	justify-content: center;
	align-items: center;
	line-height: 1.5;
}
#footer01 .txt12{
	line-height: 1.5;
	font-weight: normal;
	color:#333;
}
#footer01 .fTel i{
	font-size:80%;
	margin-right:10px;
}
#footer01 .cBtn01{
	color:#003a8d !important;
	background-color:#fff;
	border-radius:50px;
	height:100px;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin-bottom:20px;
}
@media(min-width:768px){
	#footer01 .wrap01{
		width:90%;
		margin:0 auto;
		max-width:820px;
		display:flex;
		justify-content: space-between;
		align-items: stretch;
	}
	#footer01 .cBtn01{
		width:48%;
		max-width:400px;
	}
}

#footer02{
	background-color: #0e1d3a;
	color: #fff;
	padding: 40px 5%;
	line-height: 1.5;
}
#footer02 .fLogo{
	width:228px;
	margin:0 auto 20px;
	padding:10px;
	background-color: #fff;
}
#footer02 .fLogo img{
	width:208px;
}

/*section
----------------------------------------------------------- */
.sec4{padding-top:4rem;padding-bottom:4rem;}
.sec4t{padding-top:4rem;}
.sec4b{padding-bottom:4rem;}
.sec6{padding-top:6rem;padding-bottom:6rem;}
.sec6t{padding-top:6rem;}
.sec6b{padding-bottom:6rem;}
.sec8{padding-top:8rem;padding-bottom:8rem;}
.sec8t{padding-top:8rem;}
.sec8b{padding-bottom:8rem;}
.sec10{padding-top:10rem;padding-bottom:10rem;}
.sec10t{padding-top:10rem;}
.sec10b{padding-bottom:10rem;}
.sec12{padding-top:12rem;padding-bottom:12rem;}
.sec12t{padding-top:12rem;}
.sec12b{padding-bottom:12rem;}
/**/

/**/
.lh15{line-height:1.5 !important;}
.lh20{line-height:2 !important;}
.lh25{line-height:2.5 !important;}
.palt{font-feature-settings: "palt";}
.txt50{font-size:50% !important;}
.txt75{font-size:75% !important;}
.txt120{font-size:120%;}
.txt150{font-size:150%;}
.txt200{font-size:200%;}
.txt16r{font-size:clamp(1.4rem,1.6vw,1.6rem);}
.txt18r{font-size:clamp(1.5rem,1.8vw,1.8rem);}
.txt20r{font-size:clamp(1.6rem,2vw,2rem);}
.txt24r{font-size:clamp(1.8rem,2vw,2.4rem);}
.txt25r{font-size:clamp(1.8rem,2vw,2.5rem);}
.txt28r{font-size:clamp(1.8rem,3vw,2.8rem);}
.txt32r{font-size:clamp(2rem,3vw,3.2rem);}
.txt36r{font-size:clamp(2rem,3vw,3.6rem);}
.txt40r{font-size:clamp(3rem,4vw,4rem);}
/**/


/*title
----------------------------------------------------------- */
.pageTtl{
	background-position: center center;
	background-size: cover;
	height: 200px;
	height:max(150px, min(20vw, 200px) );
	display: flex;
	justify-content: center;
	align-items: center;
	background-image:url(../images/common/pagettl_bg.jpg);
}
.pageTtl h2{
	color: #fff;
	font-size:3rem;
	font-size:max(2.25rem, min(3vw, 3rem) );
}


/**/
.cTtl01{
	color:#004fc0;
	font-size:2rem;
	font-size:clamp(1.6rem,2vw, 2rem);
	font-weight: bold;
	line-height: 1.5;
}
/**/
.cTtl02{
	font-size:2.5rem;
	font-size:max(2rem, min(2.5vw, 2.5rem) );
	font-weight: bold;
	line-height: 1.5;
}
/**/

/*btn
----------------------------------------------------------- */
.cBtn01{
	display:block;
	width:100%;
	max-width:400px;
	margin:0 auto;
	line-height:60px;
	border-radius:30px;
	color:#fff !important;
	font-size:2rem;
	font-weight: bold;
	text-decoration: none !important;
	background-color:#0063C6;
}
.cBtn02{
}


/*lnav
----------------------------------------------*/
.lnav{
	width: 100%;
	border-top: 1px dotted #cccccc;
	padding: 30px 0;
	border-bottom: 1px dotted #cccccc;
	z-index: 1000;
	margin-bottom: 150px;
}
.lnav a{
	display: inline-block;
	width: 200px;
	border: 1px solid #8dc21f;
	color: #8dc21f;
	font-weight: bold;
	line-height: 50px;
	font-size: 1.6rem;
	border-radius: 4px;
	text-decoration: none;
	margin: 0 5px;
}
.lnav a.active{
	background-color: #8dc21f;
	color: #fff;
}




.cBg01{
	background-color:#e7f7ff;
}



