@charset "UTF-8";



/* 共通
***************************************************************/

.philosophy_h1Box {
    width: 100%;
    height: auto;
    position: relative;
}
.philosophy_h1 {
    width: 100%;
    height: 100%;
     display: flex; 
     flex-flow: column; 
    justify-content: center;
    padding-top: 1em;
}
.philosophy_h1 .s1 {
    color: #02426E;
    font-size: 35px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.2;
    position: relative;
    z-index: 2;
}

.sec{
  padding-top: 70px;
  padding-bottom: 100px;
}

@media all and (min-width: 600px) {
	.contentsNavList .btn1 {
	    background: #fff;
	}
}

@media all and (max-width: 599px) {
	.philosophy_h1Box {
	    padding: 0 20px;
	    height: auto;
	}
	.philosophy_h1 {
	    height: auto;
	    padding-right: 0;
	    padding-top: 8px;
	    line-height: 1.4;
	}
	.philosophy_h1 .s1 {
	    font-size: 28px;
	}

	.sec{
		padding-top: 35px;
		padding-bottom: 0;
	}

}
@media all and (max-width: 370px) {

}

/* philosophy
***************************************************************/

.contents_clm2Box{
	position: relative;
	overflow: hidden;
}

.philosophy{
	position: relative;
	z-index: 1;
}
.philosophy_ttlh2{
	font-size: 30px;
	font-weight: 500;
	text-align: center;
}
.philosophy_lead{
	font-size: 17px;
	line-height: 2;
	margin-top: 30px;
}

.poImage{
	margin-top: 30px;
	height: 470px;
	position: relative;
}
.poImage__sub{
	color: #02426E;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.poImage__sub01{
	position: absolute;
	top: 35px;
	left: 375px;
}
.poImage__sub02{
	position: absolute;
	top: 250px;
	left: 250px;
}
.poImage__sub03{
	position: absolute;
	top: 250px;
	left: 500px;
}
.poImage__sub--num{
	font-size: 31px;
	letter-spacing: 0.02em;
}
.poImage__sub--eng{
	font-size: 14px;
	letter-spacing: 0.04em;
}
.poImage__sub--cat{
	font-size: 28px;
	font-weight: 700;
	line-height: 1.46;
	text-align: center;
}
.poImage__sub03 .poImage__sub--cat{
	margin-left: 5px;
}

.philosophy_ttlh3{
	font-size: 30px;
	font-weight: 500;
	color: #02426E;
	text-align: center;
	margin-top: 50px;
	margin-bottom: 30px;
}

.poBox + .poBox{
	margin-top: 30px;
}
.poBox__sub{
	color: #fff;
	background-color: #02426E;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 20px 0;
}
.poBox__sub--num{
	font-size: 18px;
	letter-spacing: 0.04em;
	border-bottom: 2px solid #fff;
	display: inline-block;
	text-align: center;
}
.poBox__sub--num span{
	font-size: 26px;
	letter-spacing: 0.02em;
	margin-right: 10px;
}
.poBox__sub--ttl{
	font-size: 30px;
	font-weight: 700;
	margin-top: 5px;
}
.poBox__sub--txt{
	font-size: 17px;
	line-height: 2;
	background-color: #E8ECF8;
	padding: 30px 45px;
	text-align: justify;
}
.contents_link h3 {
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 0;
    color: #02426E;
    border-bottom: 5px solid #E0E0E0;
    padding: 0 5px;
}
.f_aside_box2 .link1{
	width: calc((100% - 30px) / 3);
}
.f_aside_box2 .link1 .s1{
	padding-left: 76px;
}
.f_aside_box2 .link1 .s1::before {
    width: 60.86px;
    height: 39.63px;
    background-image: url(../img/company/philosophy/icon_reason.svg);
}
.f_aside_box2 .link1.type2 .s1::before {
    width: 48.14px;
    height: 42.01px;
    background-image: url(../img/reason/icon01.svg);
}
.f_aside_box2 .link1.type2 .s1 {
    padding-left: 76px;
}
.f_aside_box2 .link1.type3 .s1::before {
    width: 48.14px;
    height: 42.01px;
    background-image: url(../img/company/philosophy/ico_world.svg);
}
.f_aside_box2 .link1.type3 .s1 {
    padding-left: 55px;
}

@media all and (min-width: 600px) {
	.contents_clm2Box_aside{
		z-index: 3;
	}
	.contents_clm2Box:after{
		content: '';
		background: url("../img/company/philosophy/bg.svg") center / 100% no-repeat;
		width: 1587px;
		height: 983px;
		position: absolute;
		top: 50px;
		left: calc((100% - 1200px) / 2);
		z-index: 0;
		margin-left: -20px;
	}
	.contents_clm2Box{
		padding-bottom: 120px;
	}

}
@media all and (max-width:599px) {

	.philosophy{
		padding-left: 20px;
		padding-right: 20px;
		width: auto;
	}
	.philosophy_ttlh2{
		font-size: 24px;
	}
	.philosophy_lead{
		font-size: 15px;
		margin-top: 15px;
		text-align: justify;
	}

	.poImage{
		margin-top: 30px;
		height: 285px;
		position: relative;
		z-index: -1;
	}
	.poImage:after{
		content: '';
		background: url("../img/company/philosophy/bg_sp.svg") center / 100% no-repeat;
		width: 660px;
		height: 586px;
		position: absolute;
		top: -156px;
		left: 50%;
		z-index: 0;
		margin-left: -330px;
	}

	.poImage__sub01{
		position: absolute;
		top: 25px;
		left: 50%;
		margin-left: calc(-83.2px / 2);
		z-index: 1;
	}
	.poImage__sub02{
		position: absolute;
		top: 160px;
		left: initial;
		right: 50%;
		margin-right: 40px;
		z-index: 1;
	}
	.poImage__sub03{
		position: absolute;
		top: 160px;
		left: 50%;
		margin-left: 14px;
		z-index: 1;
	}
	.poImage__sub--num{
		font-size: 20px;
		line-height: 1;
	}
	.poImage__sub--eng{
		font-size: 14px;
	}
	.poImage__sub--cat{
		font-size: 16px;
	}

	.philosophy_ttlh3{
		font-size: 18px;
		margin-top: 20px;
		margin-bottom: 10px;
	}

	.poBox__sub{
		padding: 10px 0;
	}
	.poBox__sub--num{
		font-size: 16px;
	}
	.poBox__sub--num span{
		font-size: 22px;
	}
	.poBox__sub--ttl{
		font-size: 18px;
		text-align: center;
		margin-top: 10px;
	}
	.poBox__sub--txt{
		font-size: 14px;
		padding: 20px;
	}

	.contents_link{
		padding-bottom: 0;
		padding-left: 20px;
		padding-right: 20px;
		width: auto;
		margin-top: 50px;
	}
	.contents_link h3 {
	    padding-bottom: 2px;
	    border-bottom: 4px solid #e0e0e0;
	    font-size: 18px;
	    line-height: 1.4;
	}
	.f_aside_box2 .link1{
		width: 100%;
	}

	.contentsNav{
		padding-bottom: 100px;
	}
}
@media all and (max-width:370px) {
	.contents_clm2Box:after{
		top: 220px;
	}
	.poImage__sub01{
		top: 10px;
	}
	.poImage__sub02{
		top: 145px;
	}
	.poImage__sub03{
		top: 145px;
		margin-left: 10px;
	}
}
