  /* CSS Document */

/*index page style*/

h2.p-index_heading{
	padding: 0 0.5rem 3rem 0;
	color: #88929C;
	margin-top: 2.5rem;
}
h2.p-index_heading.first{
	margin-top: -0.5rem;
}
.p-index_heading__en{
	font-size: 3.375rem;
	line-height: 1;
	font-weight: 100;
	margin-bottom: 0.875rem;
	display: block;
}
.p-index_heading__jp{
	font-size: 1.6875rem;
	font-weight: 600;
	line-height: 1;
	display: block;
	color: #416EA0;
}

.p-thumb_link__img{
	position: relative;
}
.p-thumb_link__img .p-person_photo{
	position: absolute;
	width: 136px; height: 136px;
	border-radius: 50%;
	overflow: hidden;
	bottom: -67px;
	left: 50%;
	margin-left: -68px;
	border: #fff 2px solid;
}

.c-vertical .p-thumb_link__txt.p-front_line_label{
	text-align: center;
	padding-top: 5rem;
	padding-bottom: 2rem;
	z-index: 1;
}
.p-front_line_tech_name{
	background-color: #416EA0;
	padding: 0.25rem 0.5rem 0.375rem;
	min-height: 64px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	font-size: 1.125rem;
	font-weight: 400;
	color: #fff;
	line-height: 1.4;
	letter-spacing: 0;
}

.p-front_line_tech_name::before{
	display: block;
	content: "";
	border-color: transparent transparent #416EA0 transparent;
	border-style: solid;
	border-width: 0 10px 14px 10px;
	position: absolute;
	top: 0px; left: 50%;
	margin-top: -14px;
	margin-left: -10px;
	z-index: 0;
}

/*point_heading*/

.p-point_heading{
	position: relative;
	border-top: #618FB4 1px solid;
	margin-top: 2rem;
	height: 4.5rem;
	text-align: center;
}
.p-point_heading h3{
	line-height: 1;
	font-weight: 500;
}
.p-point_heading__label{
	display: inline-block;
	width: 360px;
	position: absolute;
	top:-1.5rem; left: 50%;
	margin-left: -180px;
	color: #fff;
	padding: 0.875rem 1rem;
	background-color: #416EA0;
	border-radius: 3px;
}
.p-point_heading__label::before{
	content: "";
	display: block;
	border-color: #416EA0 transparent transparent transparent;
	border-style: solid;
	border-width: 20px 14px 0px 14px;
	position: absolute;
	bottom: -20px; left: 50%;
	margin-left: -14px;
	z-index: 0;
}

/*p-practical*/
.p-practical{
	padding: 1.25rem 0 2rem;
}
.p-practical h3{
	color: #fff;
	font-weight: 500;
	margin-bottom: 1.5rem;
}
.p-practical__list li{
	text-align: center;
	font-size: 1.125rem;
	line-height: 1.5;
	border-radius: 4px;
	/*border: rgba(255,255,255,0.3) 2px solid;*/
	background-color: #325A8A;
	padding: 0.75rem 1rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	letter-spacing: 0;
	color: #fff;
}

/*p-ex_mov_area*/
.p-ex_mov_area{
	background-color: #A1A8B0;
}
.p-ex_mov_area h2{
	color: #fff;
	font-weight: 500;
	margin-bottom: 2.5rem;
}

.p-ex_mov{
	background-color: #fff;
}
.p-ex_mov__txt,
.p-ex_mov__mov{
	flex: 0 0 auto;
}
.p-ex_mov__txt{
	width: calc(100% - 760px);
	padding: 1.875rem 2rem 1.9375rem;
}
.p-ex_mov__mov{
	width: 760px;
	min-height: 427px;
	background-color: #f0f0f0;
}

/*mov_area*/

.mov_area{
	width: 760px;
}
.mov_area video{
	width: 760px;
}

/*sp*/
.sp .mov_area{
	width: 100%;
}
.sp .mov_area video{
	width: 100%;
}
.sp .p-article_main h2{
	text-align: center;
}
.sp .p-index_heading__en{
	font-size: 2.75rem;
}
.sp .p-index_heading__jp{
	font-size: 1.5rem;
}

.sp .p-point_heading{
	margin-top: 3.5rem;
}

.sp .p-practical__list li{
	margin-bottom: 0.75rem;
	font-size: 0.9375rem;
}
.sp .p-practical__list li.c-col{
	width: 100%;
}

/*mov*/
.sp .p-ex_mov__txt{
	width: 100%;
	padding: 1.25rem 1.25rem 1.25rem;
}
.sp .p-ex_mov__mov{
	width: 100%;
	min-height: inherit;
}