@charset "utf-8";

/* ------------------------------
 人を知る
------------------------------ */

/* -- アンカーリンク -- */
.person-box a:hover{
	text-decoration: none;
}
.person-box .w1-3{
	border: solid 1px #ebeff8;
	border-radius: 10px;
	text-align: center;
	color: #000;
}
.person-box .w1-3 img{
	border-radius: 10px 10px 0 0;
	margin-bottom: 10px;
}
.person-box .w1-3 h3{
	padding-bottom: 20px;
	border-bottom: 1px dotted #000;
	line-height: 1.4;
}
.person-box .w1-3 h4{
	font-family: 'Montserrat', sans-serif;
	font-size: 2.2rem;
	margin-bottom: 10px;
	line-height: 1;
}
.person-box-in {
	padding: 10px 30px 30px;
}
.person-box-in:after {
	content: "";
	width: 46px;
	height: 46px;
	display: block;
	background: url(../img/arrow_gray_bottom.svg) no-repeat 0 0 / cover;
	margin: 10px auto 0;
}
@media screen and (max-width: 767px) {
	.person-box-in {
		padding: 10px 20px 20px;
	}
	.person-box .w1-3:not(:last-child){
		margin-bottom: 20px;
	}
}
/* -- 個人ブロック -- */
.contentsWide > .inBlock > .cms_block.wide .cms_text.wide{
	width: 100%;
	position: relative;
	margin-bottom: 120px;
}
.photo{
	width: 59%;
	height: 580px;
	position: relative;
}
.float-right .photo{
	width: 59%;
	float: right;
	position: relative;
}
.photo img{
	height: 580px;
	border-radius: 0 10px 10px 0;
	object-fit: cover;
}
.float-right .photo img{
	border-radius: 10px 0 0 10px;
}
.white-box{
	width: 480px;
	height: 348px;
	background: #fff;
	position: absolute;
	left: 55%;
	top: 265px;
	padding: 50px 60px 0 60px;
	box-shadow: 0 0 15px 3px rgba(0,58,166,0.15);
	border-radius: 10px;
}
.float-right .white-box{
	left: auto;
	right: 55%;
}
.white-box h3{
	width: 100%;
	font-size: 3.7rem;
	font-weight: bold;
	padding: 10px 0 20px 0;
	display: inline-block;
	border-bottom: dotted 1px #000;
	overflow: visible;
	margin-bottom: 30px;
	line-height: 1.4;
}
.white-box h3:before{
	content: "";
	width: 42px;
	height: 54px;
	background: url(../img/icon_decoration.svg) no-repeat 0 center / 42px auto;
	display: inline-block;
	overflow: visible;
	vertical-align: middle;
	margin-left: -15px;
	margin-top: -10px;
	margin-right: 10px;
}
.white-box h4{
	font-size: 2.8rem;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 0;
}


@media screen and (max-width: 767px) {
	.contentsWide > .inBlock > .cms_block.wide .cms_text.wide{
		margin-bottom: 60px;
		height: 480px;
	}
	.photo{
		width: 105%;
		margin-left: -6%;
		height: 260px;
	}
	.photo img{
		width: 100%;
		height: 260px;
	}
	.float-right .photo{
		width: 96%;
		margin-right: 0;
	}
	.white-box{
		width: 110%;
		height: 240px;
		position: absolute;
		padding: 20px 40px 0 20px;
		top: 237px;
		right: 5%;
		left: 0;
	}
	.float-right .white-box{
		width: 95%;
		right: 5%;
		left: auto;
		padding-left: 20px;
		border-radius: 0 10px 10px 0;
	}
	.white-box h3{
		font-size: 2.6rem;
		padding: 10px 0 10px 0;
		margin-bottom: 20px;
	}
	.white-box h3:before{
		content: "";
		width: 23px;
		height: 30px;
		background: url(../img/icon_decoration.svg) no-repeat 0 center / 23px auto;
		margin-left: -2px;
		margin-top: -5px;
		margin-right: 10px;
	}
	.white-box h4{
		font-size: 2.4rem;
	}
	.no-bg .cms_text:not(.wide){
		margin-left: 5%;
		margin-right: 5%;
	}
	.cms_block.bgBox{
		margin-top: -50px;
		background: linear-gradient(180deg, #fff 0%, #fff 6%, #ebeff8 6%, #ebeff8 100%);
	}
}

/* -- 見出し -- */
h4.number{
	position: relative;
}
h4.number:after{
	content: "";
	width: 50px;
	height: 2px;
	background: #e50000;
	display: block;
	margin-top: 10px;
}
h4.number span:first-child{
	font-size: 6.8rem;
	line-height: 1;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 0;
	color: #ebecf3;
	font-weight: 600;
	position: absolute;
	top: -0.6em;
	z-index: 0;
	margin-left: -15px;
}
.bgBox h4.number span:first-child{
	margin-bottom: 0;
	color: #fff;
}
h4.number span:last-child{
	position: relative;
	z-index: 2;
}
.contentsWide > .inBlock {
	padding-bottom: 0;
}
@media screen and (max-width: 767px) {
	h4.number span:first-child{
		font-size: 5.5rem;
		line-height: 1;
		margin-left: -20px;
	}
	.w1-2 .mb70 { 
		margin-bottom: 70px !important;
	}
	.w1-2 img { 
		margin-top: 20px;
		margin-bottom: 30px;
	}
	.foot-btn-block {
		margin-top: 0;
	}
}