@charset "UTF-8";

/*--------------------------------------*/
/*# common layout  #                    */
/*--------------------------------------*/

.smtblock{
	display:none;
}
.smt_select_lang{
	display:none;
}

*{box-sizing:border-box;}

html,
body{
	padding:0px;
	margin:0px;
}
html{font-size:62.5%;}
body{
	padding:0px;
	margin:0px;
	font-size:1.0rem;
	font-weight:200;
	font-family:"メイリオ", "Meiryo", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Noto Sans Japanese", "sans-serif";
	letter-spacing:1px;
	color:#292929;	
	line-height:1.6;
	background-color:#FFF;
}
/* ie11 hack start */
@media all and (-ms-high-contrast:none) {
	body {
		font-family: "メイリオ",Meiryo,"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "sans-serif";
	}
}
/* ie11 hack  end  */
#wrapper{
	width:100%;
	height:100%;
}

header{
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:120px;
	background-color:#FFFFFF;
	z-index:1000000;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	box-sizing:border-box;
	transition:all 0.3s ease;
}
	header h1{
		width:400px;
		margin:18px 0 0 20px;
		transition:all 0.3s ease;
	}
	header .header_nav{
		margin-top:45px;
	}

footer{
	font-size:1.6rem;
	margin-top:100px;
	padding:50px 0 20px 0;
	background-color:#F0F0F0;
	box-sizing:border-box;
	.footer_section{
		.ftrlogo{
			width:300px;
			margin:0 auto 0;
			img{
				display:block;
				width:100%;
			}
		}
		.ftrnav{
			nav{
				margin:20px 0 0 0;
				ul{
					text-align:center;
					li{
						padding:0 10px 0 10px;
						display:inline-block;
					}
				}
			}
		}
		.copy{
			font-size:1.4rem;
			text-align:center;
			margin:20px 0 0 0;
			padding:0 0 5px 0;
		}
	}
}

/***--- pagepath ---***/
.pagepath{
	font-size:1.6rem;
	margin:0 0 50px 0;
	padding:0 0 10px 0;
}
	.pagepath ul{
		
	}
		.pagepath ul li{
			color:#333;
			margin:0 10px 0 0;
			padding:0 10px 0 0;
			display:inline-block;
		}
		.pagepath ul li:after{
			content:">";
			position:relative;
			left:10px;
			font-weight:normal;
		}
			.pagepath ul li a{
				font-weight:normal;
				text-decoration:underline;
			}
			.pagepath ul li:last-child{
				margin:0;
			}
				.pagepath ul li:last-child:after{
					content:none;
				}

/***--- container ---***/
#container{
	font-size:1.8rem;
	width:100%;
	padding-top:50px;
}
	article{
		width:100%;
		margin:0 0 100px 0;
	}
	section{
		width:1200px;
		margin:0 auto 0;
		box-sizing:border-box;
	}
		section p{
			margin:0 0 20px 0;
		}
		section p:last-child{
			margin:0 0 0 0;
		}


	
	
/***--- flex_content ---***/
.flex_between{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
	.flex_between .flex_item{
		width:47.5%;
		margin-bottom:50px;
	}
		.flex_between .flex_item h4{
			text-align:left;
		}
.flex_between.vertical_center{
	align-items:center;
}


/***--- h style ---***/
h1{

}

h2{
	font-size:3.2rem;
	font-weight:bold;
	text-align:center;
	margin-bottom:30px;
}

h3{
	font-size:2.8rem;
	font-weight:bold;
	margin:0 0 30px 0;
	position:relative;
	border-bottom:2px solid #DDDDDD;
}
	h3:after{
		content:" ";
		height:2px;
		width:150px;
		display:block;
		position:absolute;
		left:0;
		bottom:-2px;
		line-height:1.0;
		background-color:#3D69B9;
	}
h2 + h3{
	margin-top:0;
}

h4{
	font-size:2.2rem;
	font-weight:bold;
	color:#004C9F;
	margin:0 0 20px 0;
}


/***--- btn style ---***/
.linkbtn{
	margin:0 auto 0;
	width:350px;
}
	.linkbtn a{
		color:#415B9A;
		font-size:1.6rem;
		font-weight:bold;
		text-align:left;
		text-decoration:none;
		width:100%;
		padding:20px 30px 20px 20px;
		display:block;
		background-color:#FFF;
		border:1px solid #415B9A;
		box-sizing:border-box;
		transition:all 0.3s ease;
		position:relative;
	}
	/*- after -*/
	.linkbtn a:after{
		color:#415B9A;
		position:absolute;
		font-family: "Font Awesome 5 Free";
		font-weight:900;
		font-size:18px;
		content:"\f0da";
		position:absolute;
		right:15px;
		top:50%;
		transform: translateY(-50%);
		transition:all 0.3s ease;
	}
	/*- hover -*/
	.linkbtn a:hover{
		color:#FFF;
		background-color:#415B9A;
		border:1px solid #415B9A;
		transition:all 0.3s ease;
	}
	.linkbtn a:hover:after{
		color:#FFF;
		transition:all 0.3s ease;
	}
	
.linkbtn.left{
	margin-left:0;
}
.linkbtn.right{
	margin-right:0;
}


/***--- table ---***/
#container .contents table tr td p:last-child{margin-bottom:0;}

/***--- table layout ---***/
/*- normal table -*/
table{
	font-size:1.8rem;
	width:100%;
	border-collapse:separate;
	margin-bottom:50px;
}
	table tr th{
		color:#004CA0;
		font-weight:bold;
		text-align:left;
		width:150px;
		padding:30px 20px 30px 0px;
		border-bottom:1px solid #C4C4C4;
	}
	table tr td{
		padding:30px 20px 30px 0;
		border-bottom:1px solid #C4C4C4;
	}
	table tr td.center{
		text-align:center;
	}
	table tr td.v_center{
		vertical-align:middle;
	}

.table1{
	width:100%;
	border:1px solid #D3D3D3;
	table-layout:fixed;
}
	.table1 tr th{
		text-align:left;
		padding:15px 30px 15px 30px;
		background-color:#F3F3F3;
		border:1px solid #D3D3D3;
	}
	.th_w_30 tr th{
		width:30%;
	}
	.th_w_50 tr th{
		width:50%;
	}
	.table1 tr td{
		padding:15px 30px 15px 30px;
		border:1px solid #D3D3D3;
	}

.table2{
	width:100%;
	border:1px solid #D3D3D3;
}
	.table2 tr th{
		text-align:left;
		padding:15px 30px 15px 30px;
		background-color:#F3F3F3;
		border:1px solid #D3D3D3;
	}
	.table2 tr td{
		padding:15px 30px 15px 30px;
		border:1px solid #D3D3D3;
	}
	
.column2 tr td br{
	display:none;
}

/***--- list ---***/
.content_section ul{
	margin:0 0 20px 0;
}
	.content_section ul li{
		margin:0 0 10px 0;
		padding:0 0 0 20px;
		position:relative;
	}
		.content_section ul li:before{
			color:#004EA2;
			content:"\f0da";
			font-family: "Font Awesome 5 Free";
			font-weight:900;
			font-size:1.4rem;
			position:absolute;
			left:5px;
			top:0px;
		}
	.content_section ul li:last-child{
		margin:0 0 0 0;
	}
	.content_section table tr td ul:last-of-type{
		margin-bottom:0;
	}
	
.content_section ul.list1{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
	.content_section ul.list1 li{
		width:45%;
	}

.content_section ul.list2{
	margin:0 0 20px 0;
}
	.content_section ul.list2 li{
		margin:0 0 10px 0;
		padding:0 0 0 20px;
		position:relative;
	}
		.content_section ul.list2 li:before{
			color:#004EA2;
			content:"\f105";
			font-family: "Font Awesome 5 Free";
			font-weight:900;
			font-size:1.4rem;
			position:absolute;
			left:3px;
			top:0px;
		}
	.content_section ul.list2 li:last-child{
		margin:0 0 0 0;
	}
	.content_section table tr td ul.list2:last-of-type{
		margin-bottom:0;
	}


section ol{
	margin:0 0 20px 20px;
}
	section ol li{
		list-style:decimal;
		padding:0 0 5px 0px;
	}
		section ol li ul{
			padding: 0 0 0 5px;
		}
			section ol li ul li{
				list-style:none;
			}
	section ol li::marker{
		color:#004EA2;
		font-weight:bold;
	}
	

.relative{
	position:relative;
}

/***--- backbtn ---***/
.backbtn{
	font-size:1.4rem;
	font-weight:bold;
	color:#0C6193;
	margin:0 0 20px 0;
}
	.backbtn i{
		margin:0 10px 0 0;
	}

/***--- span confirm ---***/
span.confirm{
	color:#FFF;
	padding:3px 6px 3px 6px;
	background-color:#0B5E8E;
}

blockquote{
	margin:0 0 50px 0;
	padding:30px 30px 30px 30px;
	background-color:#F6F6F6;
}
	blockquote strong{
		color:#004EA2;
		font-style:normal;
		font-weight:bold;
		font-size:2.4rem;
	}

/***--- p align ---***/
p.left{
	text-align:left !important;
}
p.right{
	text-align:right !important;
}
p.center{
	text-align:center !important;
}
div.center{
	text-align:center !important;
}
span.min{
	padding-left:5px;
	font-size:1.2rem;
}


/***--- pagetop ---***/
#pagetop {
	width:100%;
	padding:0 0 0 300px;
	background-color:#343434;
}
#pagetop a {
	color:#FFF;
	font-size:2.0rem;
	width:calc(100%-300px);
	padding:20px 0 20px 0;
	display:block;
	position:relative;
	text-align:center;
	text-decoration:none;
}
	#pagetop a:before{
		color:#343434;
		content:"\f0d8";
		font-family: "Font Awesome 5 Free";
		font-weight:900;
		font-size:6.0rem;
		position:absolute;
		left:50%;
		top:-4.0rem;
		transform:translateX(-50%) scale(6.0,2);
		line-height:1.0;
	}
#pagetop a:hover {
	
}

a[href^="tel:"] {
    pointer-events: none;
    color:#333;
    text-decoration:none;
}
a.out:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f360";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}
a[href$=".pdf"]:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f1c1";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}
a.textpdf[href$=".pdf"]:after{
	padding-right:20px;
}
a[href$=".xlsm"]:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f1c3";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}
a[href$=".xlsx"]:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f1c3";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}
a[href$=".xls"]:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f1c3";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}
a[href$=".doc"]:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f1c2";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}
a[href$=".docx"]:after{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content:"\f1c2";
	position:relative;
	left:15px;
	top:50%;
	transform: translateY(-50%);
}

.linkbtn a[href$=".pdf"]:after,
.linkbtn2 a[href$=".pdf"]:after,
.linkbtn a[href$=".xlsm"]:after,
.linkbtn2 a[href$=".xlsm"]:after,
.linkbtn a[href$=".xls"]:after,
.linkbtn2 a[href$=".xls"]:after,
.linkbtn a[href$=".doc"]:after,
.linkbtn2 a[href$=".doc"]:after,
.linkbtn a[href$=".docx"]:after,
.linkbtn2 a[href$=".docx"]:after{
	position:absolute;
	right:15px;
	left:unset;
}
h3 a[href$=".pdf"]:after,
h4 a[href$=".pdf"]:after,
h3 a[href$=".xlsm"]:after,
h4 a[href$=".xlsm"]:after,
h3 a[href$=".xls"]:after,
h4 a[href$=".xls"]:after,
h3 a[href$=".doc"]:after,
h4 a[href$=".doc"]:after,
h3 a[href$=".docx"]:after,
h4 a[href$=".docx"]:after{
	display:none;
}

a.noicon[href$=".pdf"]:after,
a.noicon[href$=".xlsm"]:after,
a.noicon[href$=".xlsx"]:after,
a.noicon[href$=".xls"]:after,
a.noicon[href$=".doc"]:after,
a.noicon[href$=".docx"]:after{
	content:none;
}

/*--- editor template ---***/
.ImgLeft,.ImgRight{
	margin:0 0 50px 0;
	overflow:hidden;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
	.ImgLeft .img,
	.ImgRight .img{
		max-width:300px;
	}
		.ImgLeft .img p,
		.ImgRight .img p{
			padding:10px 0 0 0;
			text-align:center;
		}
		.ImgLeft .img a[href$=".pdf"]:after,
		.ImgRight .img a[href$=".pdf"]:after{
			content:none;
		}
	.ImgLeft .img{
		max-width:350px;
	}
	.ImgRight .img{
		max-width:350px;
	}
	.ImgLeft .text{
		width:calc(100% - 400px);
	}
	.ImgRight .text{
		width:calc(100% - 400px);
	}
	.ImgRight{
		flex-direction:row-reverse;
	}

/***--- detail_box ---***/
.detail_box{
	.detail_item{
		margin:0 0 20px 0;
		.detail_title{
			color:#FFF;
			font-size:1.6rem;
			font-weight:bold;
			margin:0 0 0 0;
			padding:20px 0 20px 20px;
			background-color:#004EA2;
			position:relative;
		}
		.detail_content{
			& > p{
				font-weight:bold;
				margin-top:30px;
			}
			table tr th{
				padding-left:20px;
			}
		}
	}
}
			
/*- no_link -*/
ul li.nolink a{
	pointer-events:none;
	background-color:#DDD;
}

/***--- first_section ---***/
.first_section{
	section{
		.notice{
			padding:20px;
			background-color:var(--maincolor);
			border:4px solid var(--maincolor);
			p{
				color:#FFF;
				text-align:center;
				strong{
					font-size:2.4rem;
				}
			}
		}
	}
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*-----------------------------------------------------	*/
/*	for - 1200px					*/
/*-----------------------------------------------------	*/

@media screen and (max-width: 1200px) {

.noscroll{
	overflow:hidden;
}

/***--- container ---***/
#container{}
	article{}
	section{
		width:100%;
		padding:0 20px 0 20px;
		box-sizing:border-box;
	}

.pagepath{
	padding:10px 20px 10px 20px;
}

}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*-----------------------------------------------------	*/
/*	for - 800px					*/
/*-----------------------------------------------------	*/

@media screen and (max-width: 800px) {

a[href^="tel:"] {
    pointer-events:auto;
}

}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*-----------------------------------------------------	*/
/*	for - 768px					*/
/*-----------------------------------------------------	*/

@media screen and (max-width: 768px) {


.formbtn{
	width:100%;
	margin:0 10px 30px 10px;
	text-align:center;
	display:inline-block;
}
	.formbtn input{
		position:relative;
		text-align:center;
		color:#FFF;
		font-weight:400;
		width:180px;
		margin:0 10px 20px 10px;
		text-decoration:none;
		display:inline-block;
		line-height:40px;
		background-color:#0C6193;
		border:1px solid #0C6193;
		
		transition-property:background-color;
		transition-duration:1s;
		transition-timing-function:ease;
		transition-delay:0s;
	}

	.formbtn input:hover{
		color:#0B93D3;
		background-color:#FFF;
		border:1px solid #0C6193;
		
		transition-property:background-color;
		transition-duration:0.5s;
		transition-timing-function:ease;
		transition-delay:0s;
	}

/***--- flex_content ---***/
.flex_between{}
	.flex_between .flex_item{
		width:100%;
	}
	
/*--- editor template ---***/
.ImgLeft,.ImgRight{}
	.ImgLeft .img,
	.ImgRight .img{
		max-width:250px;
	}
	.ImgLeft .img{
		max-width:250px;
	}
	.ImgRight .img{
		max-width:250px;
	}
	.ImgLeft .text{
		width:calc(100% - 300px);
	}
	.ImgRight .text{
		width:calc(100% - 300px);
	}

.table tr th{
	width:100%;
	display:block;
	border:none;
	padding-bottom:0;
}
.table tr td{
	width:100%;
	display:block;
	padding-top:10px;
}

.table1{
	border-bottom:none;
}
.table1 tr th{
	width:100%;
	display:block;
	border:none;
	padding-bottom:0;
}
.th_w_30 tr th,
.th_w_50 tr th{
	width:100%;
	padding-bottom:10px;
	border:none;
	border-bottom:1px solid #D3D3D3;
}
.table1 tr td{
	width:100%;
	display:block;
	padding-top:10px;
	border:none;
	border-bottom:1px solid #D3D3D3;
}

}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*-----------------------------------------------------	*/
/*	for - 650					*/
/*-----------------------------------------------------	*/

@media screen and (max-width: 650px) {

#container{
	padding-top:0;
}

/***--- table layout ---***/
/*- normal table -*/
table.block tr th{
	display:block;
	width:100%;
	border:none;
	padding:15px 10px 10px 0;
}
table.block tr td{
	display:block;
	width:100%;
	padding:0 10px 15px 0;
}

/*--- editor template ---***/
.ImgLeft,.ImgRight{
	display:block;
}
	.ImgLeft .img{
		max-width:100%;
		width:100%;
	}
	.ImgRight .img{
		max-width:100%;
		width:100%;
	}
	.ImgLeft .text{
		width:100%;
		margin:0 0 30px 0;
	}
	.ImgRight .text{
		width:100%;
		margin:0 0 30px 0;
	}
	
	br.sp_none{
		display:none;
	}
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*-----------------------------------------------------	*/
/*	for - 420px					*/
/*-----------------------------------------------------	*/

@media screen and (max-width: 420px) {

/***--- btn style ---***/
.linkbtn{
	margin:0 auto 0;
	width:80%;
}
	.linkbtn a{
		font-size:1.6rem;
		width:100%;
		padding:20px 20px 20px;
	}

}
