@charset "utf-8";

/*------------------------------*/
/* STYLE */
/*------------------------------*/

#main #mv {
	width: 100%;
	background: #000;
	position: relative;
	margin-top: -17px;
}

#main #mv h1 {
	width: 80%;
    position: absolute;
    letter-spacing: 4.6px;
    right: 0;
    bottom: -35px;
    left: 0;
    margin: auto;
    font-size: 86px;
    font-weight: lighter;
    color: #fff;
}

#main .read {
	margin: 110px 0;
}

.en #main .read {
    margin: 110px auto;
    width: 720px;
}

#main .service_ex h2 {
	color: #313E8B;
	font-size: 2.6em;
	padding-bottom: 46px;
}

#main .service_ex ul {
	width: 1247px;
	margin: 0 auto;
}

#main .service_ex ul li {
	width: 300px;
	height: 320px;
    float: left;
    margin-right: 10px;
    border: 2px solid #2F3D87;
	position: relative;
}

#main .service_ex ul li p {
	font-size: 1.4em;
    position: absolute;
    bottom: 12px;
    left: 0;
    right: 0;
    line-height: 1.2;
}

.en #main .service_ex ul li p {
    font-size: 1.2em;
    padding: 0 10px;
}

#main .service_ex ul li img {
	width: 100%;
	height: auto;
}

#main .service_ex ul li:last-child {
	margin-right: 0;
}

#main .list {
	text-align: left;
	color: #fff;
	margin: 173px 0 0;
}

#main .list h2 {
	font-size: 4.0em;
    font-weight: normal;
	letter-spacing: 4.4px;
	padding-bottom: 40px;
}

#main .list h2 span {
	display: block;
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"Hiragino Kaku Gothic Pro","メイリオ",sans-serif;
	font-size: 16px;
	font-weight: lighter;
    padding-top: 6px;
	letter-spacing: 0.5px;
}

#main .list .box01,
#main .list .box02,
#main .list .box03,
#main .list .box04,
#main .list .box05 {
	width: 1180px;
	margin: 0 auto;
}

#main .list .txt {
	width: 50%;
	float: left;
	background: #313E8B;
	position: relative;
}

#main .list .txt .inner {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 395px;
    height: 323px;
}

#main .list .box04 .txt .inner {
	height: 393px;
}

#main .list .box04 .photo {
	position: relative;
}

#main .list .box04 .photo a {
	position: absolute;
	right: 20px;
	bottom: 20px;
	color: #313E8B;
	text-decoration: underline;
	font-size: 12px;
	font-weight: bold;
}

#main .list .box01 .txt .inner {
	height: 449px;
}

#main .list .box05 .txt .inner {
	height: 343px;
}

.en #main .list .box01 .txt .inner {
	height: 440px;
}

.en #main .list .box02 .txt .inner {
	height: 344px;
}

.en #main .list .box03 .txt .inner {
	height: 425px;
}

.en #main .list .box04 .txt .inner {
	height: 317px;
}

.en #main .list .box05 .txt .inner {
    height: 293px;
}

#main .list .txt .inner p {
	font-size: 1.3em;
}

#main .list .txt .inner .btn {
	width: 60px;
	text-align: center;
    font-size: 1.2em;
    padding: 1px;
    font-weight: normal;
    color: #304183;
    background: #fff;
	border: 1px solid #304183;
    letter-spacing: 0.1em;
	margin-top: 24px;
}

#main .list .txt .inner .btn:hover {
	color: #fff;
	border: 1px solid #fff;
    background: #304183;
} 


.en #main .list .txt .inner p {
	line-height: 1.5;
}

#main .list h2 {
	font-size: 3.4em;
	padding-bottom: 30px;
}

#main .list h2 span {
	padding-top: 1px;
}

#main .list .txt .box2 .inner,
#main .list .txt .box3 .inner {
	height: 270px;
}

#main .list .photo {
	width: 50%;
	float: left;
}

#main .list .photo img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 1499px) {
	
	.btn03 {
   		height: 27px;
		padding-top: 6px;
		margin-top: 32px;
	}
	
	.btn03 span.icon {
		top: 12px;
	}
	
	.btn03 span.arrow {
		top: 9px;
	}
	
}

@media screen and (max-width: 1339px) {
	
	#main .service_ex ul li {
		width: 260px;
		height: 302px;
	}
	
	#main .service_ex ul {
    	width: 1088px;
	}
	
	#main .service_ex ul li p {
		font-size: 1.3em;
	}
	
	.en #main .service_ex ul li p {
		font-size: 1.2em;
		padding: 0 10px;
	}
	
}

@media screen and (min-width: 1500px) {
	
	#main .service_ex ul {
		width: 1350px;
	}
	
	#main .service_ex ul li {
		width: 298px;
		padding: 5px 1% 50px;
	}
	
}


@media all and (min-width: 0) and (max-width: 767px) {
	
	#main #mv {
		margin-top: -19px;
	}
	
	#main #mv h1 {
		font-size: 50px;
		bottom: -21px;
	}
	
	#main .mission h2 {
		font-size: 2.8em;
	}
	
	#main .mission h2 span {
		font-size: 14px;
    	padding-top: 0;
	}
	
	#main .read {
		margin: 40px 20px;
    	text-align: left;
	}
	
	.en #main .read {
		margin: 40px 20px;
		width: auto;
	}
	
	#main .service_ex h2 {
		font-size: 1.8em;
    	padding-bottom: 28px;
	}
	
	#main .service_ex ul {
		width: auto;
		margin: 0 20px;
	}
	
	#main .service_ex ul li {
		float: none;
		width: 100%;
		height: auto;
		margin-bottom: 10px;
		text-align: left;
	}
	
	#main .service_ex ul li p {
		width: 44%;
		height: 48px;
		margin: auto;
		font-size: 1.2em;
		line-height: 1.8;
		top: 0;
		bottom: 0;
		left: auto;
		right: 27px;
	}
	
	.en #main .service_ex ul li p {
		 line-height: 1.3;
		 right: 14px;
		 font-size: 1.0em;
	}
	
	#main .service_ex ul li img {
		width: 40%;
    	padding: 16px 16px 19px;
	}
	
	#main .list {
		margin: 53px 0 0;
	}
	
	#main .list .txt {
		width: 100%;
		height: auto !important;
		float: none;
	}
	
	#main .list .box01,
	#main .list .box02,
	#main .list .box03,
	#main .list .box04,
	#main .list .box05 {
		width: auto;
	}
	
	#main .list .txt .inner {
		position: inherit;
		margin: 0 30px;
		padding: 32px 0;
		width: auto;
		height: auto;
	}
	
	#main .list h2 {
		font-size: 3.0em;
    	padding-bottom: 20px;
	}
	
	#main .list h2 span {
		font-size: 12px;
    	padding-top: 0;
	}
	
	#main .list .photo {
		width: auto;
		height: auto !important;
		float: none;
		padding: 20px;
		background: #313E8B;
	}
	
	#main .list .box01,
	#main .list .box04,	
	#main .list .box05,
	#main .list .box02 {
		padding-bottom: 10px;
	}
	
	#main .list .box02 .txt .inner {
		height: auto;
	}
	
	.en #main .list .box01 .txt .inner {
		height: auto;
	}

	.en #main .list .box02 .txt .inner {
		height: auto;
	}

	.en #main .list .box03 .txt .inner {
		height: auto;
	}
	
	.en #main .list .box04 .txt .inner {
		height: auto;
	}

	.en #main .list .box05 .txt .inner {
		height: auto;
	}

	
	#main .list .box03 .txt .inner {
		height: auto;
	}
	
	#main .list .txt .inner p {
		font-size: 1.2em;
		line-height: 1.7;
	}
	
	#main .list .box05 h2 {
		font-size: 2.8em;
		letter-spacing: 0.06em;
	}
	
	#main .list .box04 .txt .inner {
		height: auto;
	}
	
	#main .list .box01 .txt .inner {
		height: auto;
	}
	
	#main .list .box05 .txt .inner {
		height: auto;
	}
	
	#main .list .box04 .photo a {
		position: absolute;
		right: 9%;
		bottom: 26px;
		color: #313E8B;
		text-decoration: underline;
		font-size: 12px;
		font-weight: bold;
	}
	
	#main .list .txt .inner .btn { 
		font-size: 1.0em;
	}
		
}

@media all and (min-width: 0) and (max-width: 321px) {

	#main .list .box05 h2 {
		font-size: 2.4em;
	}
	
}
