

#mainvisual {
	width:1080px;
	margin:30px auto;
	border-radius:25px;
	overflow:hidden;
	background:url(../img/bg_grad2.jpg) right;
	background-size:cover;
	display:flex;
}

#mainvisual div {
	text-align:center;
	width:690px;
	padding-top:110px;
}

#mainvisual div h2 {
	margin-bottom:25px;
}

#mainvisual div p {
	font-size:17px;
	color:#fff;
	font-weight:normal;
}

/**/
#outline {
}

#outline .inner {
	width:1080px;
	margin:0 auto;
	display:flex;
	padding:50px 0 100px 0;
}

#outline .inner h2 {
	font-size:17px;
	color:#fff;
	margin-bottom:30px;
	background:#6791DC;
	display:inline-block;
	border-radius:6px;
	padding:8px 10px;
	letter-spacing:2px;
}

#outline .inner h3 {
	font-size:36px;
	color:#1B3D79;
	margin-bottom:40px;
	letter-spacing:2px;
}

#outline .inner p {
	font-size:17px;
	color:#1B3D79;
	line-height:180%;
	letter-spacing:1px;
}

#outline .inner div {
	position:relative;
}

#outline .inner div img {
	position:absolute;
	top:-40px;
	left:20px;
}

/**/
#contents_link{
}

#contents_link ul {
	width:1080px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	padding:50px 0;
}

#contents_link ul li {
	width:320px;
	border-radius:15px;
	overflow:hidden;
	background:#fff;
	text-align:center;
	padding:0 0 75px 0;
	margin:0;
	position:relative;
}

#contents_link ul li img {
	margin-bottom:20px;
}

#contents_link ul li h2 {
	margin-bottom:15px;
	font-size:22px;
	padding:0 25px;
}

#contents_link ul li p {
	font-size:16px;
	padding:0 25px;
	text-align:left;
	margin-bottom:15px;
}

#contents_link ul li a {
	width:150px;
	color:#fff;
	background:#6791DC;
	border-radius:15px;
	border:5px solid #C8D7F2;
	padding:10px 20px;
	position:absolute;
	bottom:25px;
	left:60px;
}

/******* SP style *******/
@media only screen and (max-width: 767px) {
	
/**/
#mainvisual {
	width:90%;
	margin:30px auto;
	border-radius:25px;
	overflow:hidden;
	background:url(../img/bg_grad2.jpg) right;
	background-size:cover;
	display:flex;
	flex-wrap:wrap;
}

#mainvisual img.rainbow {
	width:100%;
	overflow:hidden;
}

#mainvisual div {
	text-align:center;
	padding:20px;
}

#mainvisual div h2 {
	margin-bottom:15px;
}

#mainvisual div h2 img {
	width:55%;
}

#mainvisual div p {
	font-size:18px;
	color:#fff;
	font-weight:normal;
}

/**/

#outline .inner {
	width:90%;
	margin:0 auto;
	display:flex;
	padding:50px 0 0 0;
}

#outline .inner h3 {
	font-size:40px;
	line-height:140%;
}

#outline .inner p {
	font-size:18px;
}

#outline .inner div {
	position:relative;
}

#outline .inner div img {
	position:static;
	width:90%;
	margin:0 auto 30px auto;
}

/**/
#contents_link {
}

#contents_link ul {
	width:80%;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	padding:50px 0;
}

#contents_link ul li {
	width:100%;
	margin:0 auto 25px auto;
	position:static;
	padding:0 0 25px 0;
}

#contents_link ul li img {
	margin-bottom:20px;
	width:100%;
}

#contents_link ul li h2 {
	margin-bottom:15px;
	font-size:22px;
	padding:0 25px;
}

#contents_link ul li p {
	font-size:16px;
	padding:0 25px;
	text-align:center;
	margin-bottom:15px;
}

#contents_link ul li a {
	width:150px;
	display:inline-block;
	position:static;
}



}

