@charset "utf-8";

article h1 {
	margin:0 0 0.5em;
	font-size:22px;
	font-weight:bold;
	line-height:1.5;
	color:#242424;
}

article h2 {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 0 1.5em;
	font-family: 'Roboto', sans-serif;
	font-size:14px;
	font-weight:bold;
	color:#2B3779;
}

article h2 .img {
	width:24%;
}
article h2 .tx {
	width:72%;
	font-size:16px;
	font-weight:700;
	color:#242424;
}
article h2 .tx p {
	font-size:14px;
	font-weight:700;
	color:#0056A8;
}


article .mv	{
	position:relative;
	width:100%;
	margin:0;
}
article .mv	img {
	width: 100%;
}
article .mv a {
	color:#242424;
}
article .mv .tx {
	position:absolute;
	top:15px;
	left:15px;
	padding:15px;
	border-radius:5px;
	background:rgba(255,255,255,.75);
}
article .mv .ti {
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:700;
}
article .mv .tx p {
	padding-left:1.3em;
	color:#2B3779;
	font-size:12px;
	font-weight:400;
}



article h3 {
	margin:4em 0 1em;
	padding:0.5em 1.5em;
	font-size:18px;
	font-weight:700;
	background:#F2F2F2;
}

article h3 span {
	display:inline-block;
	padding-left:20px;
	font-size:14px;
	font-weight:400;
	color:#0056A8;
}


article .philosophy {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

article .philosophy .tx {
	width:56%;
	margin:0;
	font-size:16px;
	color:#585858;
}
article .philosophy .tx span {
	display:inline-block;
	width:20px;
	font-size:18px;
}
article .philosophy .tx p {
	margin:0.5em 0 3em;
	padding-left:24px;
	color:#585858;
	font-size:14px;
	font-weight:400;
}

article .philosophy .img {
	width:40%;
}
article .philosophy .img img {
	display:block;
	width:100%;
}


article .vision {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

article .vision .img {
	width:28%;
}
article .vision .img img {
	display:block;
	width:100%;
}

article .vision .tx {
	width:67%;
	color:#585858;
}

article .vision .tx div {
	display:block;
	margin:0 0 1em;
	padding-left:1.3em;
	font-size:14px;
	font-weight:400;
	text-indent:-1.3em;
}
article .vision .tx div > div {
	margin:0.2em 0;
}

article .making_progress {
	font-size:14px;
}

article .making_progress .boxWrap {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:30px 0;
}

article .making_progress .boxWrap .box {
	width:48%;
	margin:0;
	font-size:16px;
	font-weight:400;
	text-align: center;
	color:#000000;
}
article .making_progress .boxWrap .box img {
	margin:0 0 0.5em;
}
article .making_progress .boxWrap .box:nth-of-type(1) {
	border:1px solid #C4C4C4;
	padding-bottom:0.5em;
}

article .overview {

}

article .overview .label {
	display:block;
	width:7em;
	height:2.5em;
	line-height:2.5em;
	font-size:12px;
	font-weight:400;
	text-align:center;
	color:#585858;
	background:#EFEFEF;
}

article .overview dl {
	width:90%;
	margin:0 auto;
}

article .overview dl.jpn {
	margin-top:2em;
	padding-top:2em;
	border-top:1px solid #707070;
}

article .overview dt {
	clear:both;
	float:left;
	width:20%;
	margin:0 0 1em;
	font-size:14px;
	font-weight:400;
	color:#585858;
	letter-spacing:0.2em;
}
article .overview dd {
	float:right;
	width:75%;
	margin:0 0 1em;
	font-size:14px;
	font-weight:400;
	color:#585858;
}


article ol,
article li {
	list-style-type: decimal;
	list-style-position:inside;
}

article ol {
	width:90%;
	margin:0 auto;
}

article li {
	margin:0 0 1em;
	font-size:14px;
	font-weight:400;
	text-indent:-1em;
	padding-left:1em;
	color:#585858;
}


article .wrap {
	position:relative;
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	width:90%;
	max-width:1136px;
	margin:80px auto 60px;
	border-top:1px solid #D0D0D0;
}

article .wrap a {
	margin:40px 0 0;
	color:#242424;
}

article .wrap .tx {
	padding:15px;
	border-radius:5px;
	background:#F2F2F2;
}

article .wrap .ti {
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:700;
}
article .wrap .tx p {
	padding-left:1.3em;
	color:#2B3779;
	font-size:12px;
	font-weight:400;
}




@media (max-width: 768px) {
	article h1 {
		font-size:22px;
	}
}

@media (max-width: 600px) {
	article h1 {
		font-size:20px;
	}
	article h1 br {
		display:none;
	}

	article .philosophy .tx {
		width:100%;
	}
	article .philosophy .img {
		width:100%;
	}

	article .vision .img {
		width:100%;
		order:2;
	}

	article .vision .tx {
		width:100%;
		order:1;
	}
	
	article .overview dt {
		width:100%;
		margin:0 0 0.5em;
	}
	article .overview dd {
		width:100%;
		margin:0 0 1.5em;
	}
}

@media (max-width: 480px) {
	article h1 {
		font-size:18px;
	}

}

@media (max-width: 360px) {

}


/* greeting */
.greeting {
	width: 100%;
}

.greeting .inner {
	width: 98%;
	padding: 40px 0;
}

.greeting h2 {
	margin:0 0 0.5em;
	font-size:18px;
	font-weight:400;
	text-align:center;
}
.greeting .tx {
	font-size:14px;
	font-weight:400;
}
