@charset "utf-8";
/* CSS Document */

:root {
	--main-color:#0A3E86;
	--sub:#568FDE;
	--light:#F5FBFF;
	
	--green:#009441;
}



/* ============================================
   Reset
   ============================================ */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
		font-style:normal;
}

body {
	text-align:center;
font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
color:#333;
  -webkit-text-size-adjust: 100%;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

ul{
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}

a img{
	transition:.8s}
a:hover img{
  opacity: 0.6;
}

/* ============================================
   Layout
   ============================================ */

	
	footer{
			font-size:.75rem;
		display:flex;
		justify-content:space-between;
			align-items:flex-end;
	}
		footer address{
			text-align:left;
			display:flex;
			align-items:flex-end;}
		footer address img{
			width:246px;
			margin: 0 30px 0 0;
		}

	
	footer .copy{
		text-align:right}
	.contents h2{
		margin: 0 0 .688em;
		color:var(--main-color);
		font-size:2.625rem;
	}
	.page-top {
		border-bottom:2px solid var(--main-color);}
		
	.page-top figure{
		text-align: right;
		
		margin:auto;
		padding:60px 0 0;
		max-width:1200px;
	}
	.page-top figure img{
		width:168px;
	}
.contents table {
  width: 100%;
  border-collapse: collapse;
}

.contents th,
.contents td {
  border: 1px solid var(--sub);
	vertical-align:middle;
  line-height: 1.8em;
		text-align:left;
		font-weight:bold;
}

.contents thead th {letter-spacing:2em;
	position:relative;
	text-align:center;
  background-color:var(--sub);
  color: #fff;
  text-align: center;
  padding: 1em 0 1em 2.6em;
}
.contents tbody th {
	white-space:nowrap;

  background-color:var(--light);
		color:var(--main-color);
  padding: 1.4em 1.6em;
}

.contents thead th+th::after{
	content:"";
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	width:1px;
	background:#FFF
	}
.contents td {

color:#4B4B4B;
  padding: 1.4em 1.6em;
  background-color: #fff;
}
.contents td ol{
	padding: .4em 0 0 1em;
	text-indent:-1em;
	list-style:none}
	
	
.contents td ul li{
	padding: .288em 0 0 1em;
	text-indent:-1em}
	
.contents td ul ul li{
	font-weight:normal}
.contents td ul.list-note li{
	font-weight:normal;
	padding: 0 0 0 3.6em;
	text-indent:-3.6em}
	.contents td ul.list-note.s-ub li{
		padding-left:1em;
		text-indent:-1em}

.contents .btns{
	display:flex;
	justify-content:space-between;}
	

	.blu{
		color:var(--sub);}
	
	/**/
h3.web-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2em;
  font-size: 2rem;
  color:var(--main-color);
  font-weight: bold;
  white-space: nowrap;
		margin:1.6em 0 .8em
}

h3.web-title::before,
h3.web-title::after {
  content: "";
  display: inline-block;
  width: 3px;
  height: 1.6em;
  background-color:#FDD000;
  flex-shrink: 0;
}

h3.web-title::after{
  transform: rotate(-340deg);
}

h3.web-title::before  {
  transform: rotate(340deg);
}
/**/
	.cv{
		border: 1px solid #4B4B4B;
		border-radius:20px;
		padding:40px 0}
		

.cv h2{
		margin: 0 0 1em;
		color:#000;
		font-size:2.625rem;
	}
	.cv h3{
		color:#FFf;
		background:var(--main-color);
		font-size:1.5rem;
		padding:.688em 0;
		border-radius:30px;
		margin:0 auto .6em;
	}
		

.cv p{
	font-size:1.5rem}
.cv p .ss{
	font-size:1rem}
	.cv h3:nth-of-type(1){
		background:var(--green);
	}
.cv p+h3{
	margin-top:1.2em}	
	
	
.cv ul li{
	
}
/* ======== */

@media screen and (min-width: 768px) {
	
	.sp{
		display:none}
.mv{
	padding: 60px 0;
	max-width:unset;
	background:url(../images/mian-bg.png) no-repeat center / cover;}
	
	.mv img{
		width:80%;
		max-width:1200px;
	}		
	/**/
		footer,
	section{
		margin:auto;
		padding:60px 0;
		max-width:1400px;
		min-width:1000px
	}	
			.cv h3{
		width:740px;
			}	

.contents tr:nth-of-type(odd) td{
	background:#f5f5f5}
	 .contents tbody th { width: 18%;
		}
	.contents .btns li{
	width:48.8%}
	
		/*閉じタグ */
}

@media screen and (max-width: 767px) {

.pc,.contents thead th{
	display:none;
  }
/**/
section{
	width:94%;
	margin:auto;
}
.mv{
	width:100%}
.contents h2{
	font-size:8vw;
	padding: 1em 0 0}
	
.contents table{
	border:1px solid var(--sub);
	border-top:2px solid var(--sub);}
	
.contents tbody th,
.contents td {
	display:block;
			font-size:4.36vw;
			text-align:center;
			padding:.8em .58em;
	width:100%}
	.contents td ul,.contents td ol{
		text-align:left}
		
		.contents td li{
			
			font-size:4.28vw;
		}
		.contents tbody th{
			line-height:1.4em;
		}
			.contents td ul.s-ub{
				margin-left:1.6em}

h3.web-title{
	gap:.688em;
	font-size:5.8vw}
	
	h3.web-title::before, h3.web-title::after{
		height:3em}

.contents .btns{
	flex-direction:column;
	padding: 0 0 1em
}

.contents .btns li{
	margin: 0 1em 1.4em}

.cv{
	padding: 2em 1em}
.cv h2{
	font-size:5.2vw}

.cv h3{
	font-size:3.88vw}

.cv ul{
	text-align:left}
	
	
.cv ul li{
	padding: 0 0 0 1em;
	text-indent:-1em;
	font-size:3.2vw;}
	.page-top figure{
		padding:30px 0 0;
		text-align:center}
		.page-top figure img{
			width:40%}

/**/

footer{
	padding: 2.6em 0;
	display:block;
}
footer .copy{
	text-align:center;
	font-size:2.4vw;
}
footer address img{
	width:64%;
	margin: 1em auto}
footer address{
	font-size:3vw;
	padding: 0 0 02em;
	text-align:center;
	align-items:center;
	flex-direction:column}
	/*閉じタグ */
}
