@charset "utf-8";
/* CSS Document */

header nav ul li:nth-child(4) {border-bottom: solid 3px #cc0000;}

@media screen and (max-width:834px){
	header nav ul li:nth-child(4){border-bottom:none;}
}

/**********************************************************************************

	#mv

**********************************************************************************/

#mv {
	width: 100%;
	height: 405px;
	text-align: center;
	position: relative;
	background: url(../img/mv_bg.jpg) center no-repeat;
	background-size: cover;
}

#mv h2 {
	position: absolute;
	background: url(../img/mv_h2.png) center no-repeat;
	width: 312px;
	height: 0;
	padding-top: 114px;
	background-size: 100%;
	overflow: hidden;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-20%);
}

#mv .border {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 7px;
	background-color: #cc0000;
}

@media screen and (max-width:834px){
	#mv {
		transition: 0.4s;
		height: 300px;
	}
	
	#mv h2 {transform: translate(-50%,-50%);}
}


@media screen and (max-width:480px){
	#mv h2 {
		width: 60%;
		padding-top: 25%;
	}
}

/**********************************************************************************

	#link

**********************************************************************************/

#link {
	width: 100%;
	margin: 30px auto 80px;
	display:-webkit-box;
  	display:-ms-flexbox;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#link li {
	margin-right: 40px;
	padding-top: 20px;
}
#link li:last-child {margin-right: 0;}

#link li a {
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.05em;
	color: #cc0000;
}

@media screen and (max-width:590px){
	#link {width: 90%;}
}

@media screen and (max-width:480px){
	#link {margin: 30px auto 60px;}
	#link li a {font-size: 16px;}
}

@media screen and (max-width:414px){
	#link li:nth-child(3) {margin-right: 0;}
}

@media screen and (max-width:320px){
	#link li:nth-child(2) {margin-right: 0;}
	#link li:nth-child(3) {margin-right: 40px;}
}



/**********************************************************************************

	#contents01

**********************************************************************************/

#contents01 {
	width: 100%;
	background: url(../img/contents01_bg.jpg) center no-repeat;
	background-size: cover;
	background-attachment: fixed;
	padding: 400px 0;
}

#contents01 .box {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 80px 70px;
	background-color: rgba(255,255,255,0.8);
	box-shadow: 0 0 8px gray;
	letter-spacing: 0.05em;
}

#contents01 .box h3 {
	text-align: center;
	font-size: 30px;
	font-weight: 500;
	color: #cc0000;
	padding-bottom: 50px;
}

#contents01 .box h4 {
	font-size: 24px;
	font-weight: bold;
	color: #cc0000;
	padding-bottom: 40px;
}

#contents01 .box .txt {
	text-align: justify;
	line-height: 2em;
	font-size: 16px;
	padding-bottom: 60px;
}

#contents01 .box .name {text-align: right;}
#contents01 .box .name p {padding-bottom: 15px;}

@media screen and (max-width: 1060px) {
	#contents01 {background-position: 70%;}
	
	#contents01 .box {
		width: 90%;
		transition: 0.4s;
	}
}

@media screen and (max-width: 640px) {
	#contents01 .box h3 {font-size: 25px;}
	#contents01 .box h4 {font-size: 20px;}
}

@media screen and (max-width: 480px) {
	#contents01 {
		padding: 80px 0;
		background-position: 80%;
	}
	
	#contents01 .box {padding: 60px 40px;}
	
	#contents01 .box h3 {
		font-size: 23px;
		padding-bottom: 30px;
	}
	#contents01 .box h4 {
		font-size: 18px;
		padding-bottom: 20px;
	}
	#contents01 .box .txt {
		font-size: 14px;
		line-height: 1.8em;
		padding-bottom: 30px;
		letter-spacing: 0.01em;
	}
	#contents01 .box .name p {font-size: 12px;}
}

@media screen and (max-width: 375px) {
	#contents01 .box .name img {width:60%;}
}

@media screen and (max-width: 320px) {
	#contents01 {padding: 60px 0;}
	#contents01 .box {padding: 50px 30px;}
	#contents01 .box h4 {font-size: 16px;}
	#contents01 .box .txt {font-size: 12px;}
}

@media screen and (max-height: 1366px) and (max-width: 1024px) {
	#contents01 {background-attachment: scroll;}
}


/**********************************************************************************

	#contents02

**********************************************************************************/

#contents02 {
	width: 100%;
	padding: 100px 0;
	background-color: #f6f6f6;
	margin: 0 auto;
}

#contents02 h3 {
	text-align: center;
	font-size: 30px;
	font-weight: 500;
	color: #cc0000;
	padding-bottom: 70px;
}

#contents02 table {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

#contents02 table tr td {
	border: solid 1px #565656;
	background-color: #ffe1e1;
	font-weight: bold;
	padding: 15px;
	width: 101px;
}

#contents02 table tr th {
	border: solid 1px #565656;
	background-color: #FFF;
	padding: 15px;
}
#contents02 table tr th ul{
	display: flex;
	align-items: flex-start;
}
#contents02 table tr th .number .mr12{margin-right: 12px;}
@media screen and (max-width: 1060px) {
	#contents02 table {
		width: 90%;
		transition: 0.4s;
	}
}
@media screen and (max-width: 750px) {
	#contents02 table tr th .number{flex-direction: column;}
	#contents02 table tr th .number .mr12{margin-right: 0;}
}
@media screen and (max-width: 640px) {
	#contents02 h3 {font-size: 25px;}
}

@media screen and (max-width: 480px) {
	#contents02 {padding: 80px 0;}
	
	#contents02 h3 {
		font-size: 23px;
		padding-bottom: 50px;
	}
	
	#contents02 table tr {font-size: 12px;}
	#contents02 table tr td {width: 91px;}
}


/**********************************************************************************

	#contents03

**********************************************************************************/

#contents03 {
	width: 100%;
	background: url(../img/contents03_bg.jpg) center no-repeat;
	background-size: cover;
	background-attachment: fixed;
	padding: 100px 0;
}

#contents03 h3 {
	text-align: center;
	font-size: 30px;
	font-weight: 500;
	color: #cc0000;
	padding-bottom: 70px;
}

#contents03 ul {
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	justify-content: center;
	margin: 0 auto;
}

#contents03 ul li:first-child {margin-right: 40px;}

@media screen and (max-width: 1060px) {
	#contents03 ul {
		width: 90%;
		transition: 0.4s;
	}
	#contents03 ul li {width: 47%;}
	#contents03 ul li a {width: 100%;}
	#contents03 ul li a img {width: 100%;}
}

@media screen and (max-width: 760px) {
	#contents03 ul {display: block;}
	
	#contents03 ul li {
		width: 100%;
		max-width: 480px;
		margin: 0 auto;
	}
	
	#contents03 ul li:first-child {
		margin-right: auto;
		margin-bottom: 40px;
	}
	
}

@media screen and (max-width: 640px) {
	#contents03 h3 {font-size: 25px;}
}

@media screen and (max-width: 540px) {
	#contents03 .pc {display: none;}
	#contents03 .sp {display: block;}
}

@media screen and (max-width: 480px) {
	#contents03 {padding: 80px 0;}
	
	#contents03 h3 {
		font-size: 23px;
		padding-bottom: 50px;
	}
	
	#contents03 ul li:first-child {margin-bottom: 30px;}
}

@media screen and (max-height: 1366px) and (max-width: 1024px) {
	#contents03 {background-attachment: scroll;}
}


/**********************************************************************************

	#contents04

**********************************************************************************/

#contents04 {
	width: 100%;
	padding: 100px 0;
	background-color: #f6f6f6;
	margin: 0 auto;
	text-align: center;
}

#contents04 h3 {
	font-size: 30px;
	font-weight: 500;
	color: #cc0000;
	padding-bottom: 70px;
}

#contents04 img {
	width: 100%;
	max-width: 640px;
}

@media screen and (max-width: 700px) {
	#contents04 img {
		width: 90%;
		transition: 0.4s;
	}
}

@media screen and (max-width: 640px) {
	#contents04 h3 {font-size: 25px;}
}

@media screen and (max-width: 480px) {
	#contents04 {padding: 80px 0;}
	
	#contents04 h3 {
		font-size: 23px;
		padding-bottom: 50px;
	}
	
	#contents04 .pc {display: none;}
	#contents04 .sp {display: inline-block;}
}

/**********************************************************************************

	#contents05

**********************************************************************************/

#contents05 {
	width: 100%;
	padding: 100px 0;
	margin: 0 auto;
}

#contents05 h3 {
	text-align: center;
	font-size: 30px;
	font-weight: 500;
	color: #cc0000;
	padding-bottom: 70px;
}

#contents05 table {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

#contents05 table tr td {
	border: solid 1px #565656;
	background-color: #ffe1e1;
	font-weight: bold;
	padding: 15px;
	width: 101px;
}

#contents05 table tr th {
	border: solid 1px #565656;
	background-color: #FFF;
	padding: 15px;
}

@media screen and (max-width: 1060px) {
	#contents05 table {
		width: 90%;
		transition: 0.4s;
	}
}

@media screen and (max-width: 640px) {
	#contents05 h3 {font-size: 25px;}
}

@media screen and (max-width: 480px) {
	#contents05 {padding: 80px 0;}
	
	#contents05 h3 {
		font-size: 23px;
		padding-bottom: 50px;
	}
	
	#contents05 table tr {font-size: 12px;}
	#contents05 table tr td {width: 91px;}
}
