/* セキュリティ環境
============================ */
body {
font-weight: 500;
}
/* wrap */
#contentsArea.philosophy .wrap {
	padding: 100px 0 120px;
}
#contentsArea.philosophy .wrap p {
	margin-bottom: 20px;
}
#contentsArea.philosophy .wrap h2 {
	margin: 60px 0 40px;
}
#contentsArea.philosophy #sec1 h2 {
	margin:0 0 40px;
}
#contentsArea.philosophy h2.under {
	margin:15px 0 80px;
	text-align:center;
	color: #4bc76d;
	padding:0;
}
#contentsArea.philosophy h2.under::before {
	position: absolute;
	display: block;
	content: "";
	top: initial;
	bottom:-25px;
	left: 50%;
	width: 50px;
	height: 3px;
	border-radius: 1.5px;
	background: #4bc76d;
	margin: auto;
	transform: translate(-50%, 0);
}
#contentsArea.philosophy .wrap .col2 {
	display: flex;
	align-items: start;
}

#contentsArea.philosophy .wrap .col2 .pic_box {
	flex-basis: 43.33333333333333%;
	max-width: 520px;
}

#contentsArea.philosophy #sec2 {
	background: #d5f7de url(../philosophy/images/sec02_bg.png)left top repeat;;
	overflow: hidden;
}
#contentsArea.philosophy #sec2 h2.under {
	color:#4bc76d;
}

#contentsArea.philosophy #sec2 .col2 div {
	background:#fff;
	border-radius:30px;
	padding:40px;
	flex-basis: calc(50% - 40px/2);
	margin:0 40px 0 0;

}
#contentsArea.philosophy .wrap .col2 .txtBox {
	flex-basis: calc(100% - 43.33333333333333%);
	margin: 0 40px 0 0;
}
#contentsArea.philosophy #sec2 div:nth-child(2) {
	margin:0;
}
#contentsArea.philosophy .sec3_copy {
	text-align:center;
	font-family: 'Zen Old Mincho', serif;
	font-size:3.8rem;
}
#contentsArea.philosophy .sec3_copy span {
	color:#ff7522;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight: 400;
	font-size:4.6rem;
	position: relative;
}
#contentsArea.philosophy .sec3_copy span::before {
	content:"";
	width:180px;
	height:1px;
	background:#d0d0d0;
	display:block;
	position: absolute;
	left:-200px;
	top:50%;
	transform: translate(0, -50%);
}
#contentsArea.philosophy .sec3_copy span::after {
	content:"";
	width:180px;
	height:1px;
	background:#d0d0d0;
	display:block;
	position: absolute;
	right:-200px;
	top:50%;
	transform: translate(0, -50%);
}
#contentsArea.philosophy .wrap .col3 {
	display: flex;
	align-items: stretch;
	margin:70px 0 0;
}
#contentsArea.philosophy .wrap .col3 div {
	flex-basis: calc(33.333333333333336% - 96px/3);
	background:#fff9dd;
	border-radius:30px;
	padding:40px;
	margin: 0 48px 0 0;
	position: relative;
}
#contentsArea.philosophy .wrap .col3 div:nth-child(3) {
	margin:0;
}

#contentsArea.philosophy #sec3 .ttl {
	text-align:center;
	font-family: 'Zen Old Mincho', serif;
	font-size:3rem;
	color:#ff7522;
	line-height: 1.4;
}
#contentsArea.philosophy #sec3 .ttl span {
	position: relative;
}
#contentsArea.philosophy #sec3 .col3 div::before {
	color:#ff7522;
	content:"01";
	font-size:6rem;
	font-family: 'Zen Old Mincho', serif;
	background: linear-gradient(to right, #f16e57, #fdae55);
	display:block;
	-webkit-background-clip: text;
	position: absolute;
	left: 50%;
	top: -60px;
	transform: translate(-50%,0);
}
#contentsArea.philosophy #sec3 .col3 div.num02::before {
	content:"02";
}
#contentsArea.philosophy #sec3 .col3 div.num03::before {
	content:"03";
}
#contentsArea.philosophy #sec3 .col3 ol {
counter-reset: count 0;
padding: 0 0 0 20px;
list-style: auto;
}
#contentsArea.philosophy #sec3 .col3 ol li {
content: counter(count) ". ";
counter-increment: count 1;
margin-bottom: 10px;
}
#contentsArea.philosophy #sec3 .wrap {
	padding:80px 0 0;
}
#contentsArea.philosophy #sec4 {
	background: #ebf8de;
}
#contentsArea.philosophy #sec4 .wrap {
	padding:20px 0 80px;
	margin-top: 100px;
}
#contentsArea.philosophy .wrap ul {
	list-style: disc;
	margin-left: 1.5em;
	padding-bottom: 10px;
}
#contentsArea.philosophy .vision .small {
	font-size:1.4rem;
}
@media screen and (max-width:1024px) {
	#contentsArea.philosophy .wrap {
		padding: 15px 0 50px;
	}
	#contentsArea.philosophy .wrap p {
		margin-bottom: 20px;
	}
	#contentsArea.philosophy .wrap h2 {
		margin: 40px 0 20px;
	}
	#contentsArea.philosophy #sec1 h2 {
		margin:0 0 20px;
	}
	#contentsArea.philosophy h2.under {
		margin: 10px 0 20px;
	}
	#contentsArea.philosophy h2.under::before {
		bottom:-12px;
	}
	#contentsArea.philosophy .wrap .col2,
	#contentsArea.philosophy .wrap .col3 {
		flex-direction: column;
	}
	#contentsArea.philosophy .wrap .col3 {
		margin:0;
	}
	#contentsArea.philosophy .wrap .col2 .txtBox {
		width:100%;
		margin:0 0 10px;
	}
	#contentsArea.philosophy #sec2 .col2 div {
		width:100%;
		padding:25px;
		margin:40px 0 0;
	}
	#contentsArea.philosophy .sec3_copy {
		font-size:1.9rem;
		margin-top: 40px;
	}
	#contentsArea.philosophy .sec3_copy span {
		font-size:2.3rem;
	}
	#contentsArea.philosophy .sec3_copy span::before {
		width:80px;
		left:-100px;
	}
	#contentsArea.philosophy .sec3_copy span::after {
		width:80px;
		right:-100px;
	}
	#contentsArea.philosophy .wrap .col3 div {
		width:100%;
		padding:25px;
		margin:40px 0 0;
	}
	#contentsArea.philosophy .wrap .col3 div:nth-child(3) {
		margin:40px 0 0;
	}
	#contentsArea.philosophy #sec3 .wrap {
		padding:40px 0 0;
	}
	#contentsArea.philosophy #sec3 .col3 div::before {
		font-size:4.6rem;
		top:-45px;
	}
	#contentsArea.philosophy #sec3 .ttl {
		font-size:2.4rem;
	}
	#contentsArea.philosophy #sec4 .wrap {
		padding:2px 0 40px;
		margin-top: 50px;
	}
	#contentsArea.philosophy .vision .small {
		font-size:1.2rem;
	}
}

