@charset "utf-8";



/*-- 

content_kv

====================================================== --*/

/*-- content_kv --*/
#content_kv .kv_inner{
	position:relative;
	z-index:0;
	filter:drop-shadow(0px 0px rgba(0,0,0,0));
	outline:none;
	border:none;
}
#content_kv .kv_copy{
	position:absolute;
	top:50%;
	right:10.5%;
	transform:translate(0, -50%);
	z-index:100;
}
#content_kv .kv_copy .main{
	font-size:6.6rem;
	font-weight:700;
	line-height:1.45;
	letter-spacing:0.1em;
}
#content_kv .kv_copy .sub{
	font-size:2rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.6;
	margin-top:3rem;
}
#content_kv .kv_video{
	width:100%;
	position:relative;
	z-index:50;
}
#content_kv .kv_video video{
	display:block;
	width:100%;
}
@media screen and (max-width:1250px){
	#content_kv .kv_copy .main{
		font-size:5vw;
	}
	#content_kv .kv_copy .sub{
		font-size:1.6vw;
	}
}

/* sp */
@media screen and (max-width:750px){
	#content_kv{
		height:59.7rem;
		overflow:hidden;
	}
	#content_kv .kv_inner{
		height:100%;
	}
	#content_kv .kv_video{
		height:100%;
	}
	#content_kv .kv_video video{
		position:relative;
		top:50%;
		left:-20%;
		transform:translateY(-50%);
		width:280%;
		opacity:0.3;
	}
	#content_kv .kv_copy{
		position:absolute;
		top:50%;
		left:2rem;
	}
	#content_kv .kv_copy .main{
		font-size:3.6rem;
		line-height:1.35;
	}
	#content_kv .kv_copy .sub{
		font-size:1.4rem;
		margin-top:1.2rem;
	}
}



/*-- 

content_news

====================================================== --*/

#content_news{
	background-color:var(--c-gray-F9);
	padding:8rem 2rem;
}
#content_news .headline_type01{
	margin-bottom:4rem;
}
/* sp */
@media screen and (max-width:750px){
	#content_news{
		background-color:var(--c-gray-F9);
		padding:5rem 0;
	}
	#content_news .content_head{
		padding:0 2rem;
	}
	#content_news .headline_type01{
		margin-bottom:2rem;
	}
	#content_news .news_list{
		margin-bottom:2rem;
	}
	#content_news .news_list_item{
		padding:1rem 0 1rem 2rem;
		box-sizing:border-box;
		max-width:24.9rem;
		position:relative;
	}
	#content_news .slick-track{
		display:flex;
	}
	#content_news .slick-slide{
		height:auto !important;
	}
	#content_news .btn.for_sp{
		margin:0 auto;
	}
}



/*-- 

content_product-service

====================================================== --*/

#content_product-service{
	position:relative;
}
#content_product-service .headline_type01{
	margin-bottom:6rem;
}
#content_product-service .ps_item{
	background-color:var(--c-white);
	border-radius:4rem;
	box-shadow:0 0 2rem var(--c-shadow);
}
#content_product-service .ps_item_inner{
	display:flex;
	align-items:center;
	padding:7.5rem 7rem 8rem;
	position:relative;
}
#content_product-service .ps_item_inner .text{
	max-width:55.82%;
	width:100%;
}
#content_product-service .ps_item_inner .title .sub{
	display:block;
	font-size:1.8rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.6;
}
#content_product-service .ps_item_inner .title .main{
	display:block;
	font-size:4.6rem;
	font-weight:900;
	letter-spacing:0.1em;
	line-height:1.25;
	margin-top:0.8rem;
}
#content_product-service .ps_item_inner .desc{
	margin-top:2.8rem;
	line-height:1.9;
}
#content_product-service .ps_item_inner .tag{
	margin-top:2.7rem;
}
#content_product-service .ps_item_inner .btn{
	max-width:24rem;
	width:100%;
	margin-top:3.5rem;
}
#content_product-service .ps_item_inner .btn a{
	height:6rem;
}
#content_product-service .ps_item_inner .btn a .btn_inner{
	padding:0 2rem 0 2.5rem;
}
#content_product-service .ps_item_inner .image{
	max-width:52%;
	width:100%;
	position:absolute;
	top:50%;
	right:-11%;
	transform:translate(0, -50%);
}
#content_product-service .ps_item_inner .image img{
	filter:drop-shadow(0 0 1rem var(--c-shadow));
}
/* tb */
@media screen and (max-width:1000px){
	#content_product-service .ps_item_inner{
		padding:6%;
	}
	#content_product-service .ps_item_inner .text{
		max-width:50%;
	}
	#content_product-service .ps_item_inner .title .main br{
		display:none;
	}

	#content_product-service .ps_item_inner .title .sub{
		font-size:1.6rem;
	}
	#content_product-service .ps_item_inner .title .main{
		font-size:3.8rem;
	}
	#content_product-service .ps_item_inner .desc{
		margin-top:1.5rem;
		line-height:1.9;
		font-size:1.5rem;
	}
	#content_product-service .ps_item_inner .tag{
		margin-top:1.5rem;
	}
	#content_product-service .ps_item_inner .btn{
		margin-top:2.5rem;
	}

	#content_product-service .ps_item_inner .image{
		max-width:52%;
		right:-5%;
	}
}
/* sp */
@media screen and (max-width:750px){
	#content_product-service .headline_type01{
		margin-bottom:3rem;
	}

	#content_product-service .ps_item{
		border-radius:2rem;
		box-shadow:0 0 1rem var(--c-shadow);
	}
	#content_product-service .ps_item_inner{
		padding:3.5rem 2rem;
		display:block;
	}
	#content_product-service .ps_item_inner .title .main br{
		display:inline-block;
	}
	#content_product-service .ps_item_inner .text{
		max-width:100%;
	}
	#content_product-service .ps_item_inner .title .sub{
		font-size:1.2rem;
	}
	#content_product-service .ps_item_inner .title .main{
		font-size:2.8rem;
		line-height:1.35;
		margin-top:0.5rem;
	}
	#content_product-service .ps_item_inner .desc{
		margin-top:2.5rem;
		font-size:1.4rem;
		line-height:1.7;
	}
	#content_product-service .ps_item_inner .tag{
		margin-top:1.8rem;
	}
	#content_product-service .ps_item_inner .image{
		position:relative;
		max-width:100%;
		right:0;
		top:0;
		transform:none;
		margin-top:1.5rem;
	}

	#content_product-service .ps_item_inner .btn{
		margin:3rem auto 0 auto;
	}
}

/* .ps_item.-item_02 */

#content_product-service .ps_item.-item_02{
	margin-top:10rem;
}
#content_product-service .ps_item.-item_02 .ps_item_inner{
	justify-content:end;
}
#content_product-service .ps_item.-item_02 .ps_item_inner .image{
	right:0;
	left:-11%;
}
/* tb */
@media screen and (max-width:1000px){
	#content_product-service .ps_item.-item_02 .ps_item_inner .image{
		right:0;
		left:-7%;
	}
}
/* sp */
@media screen and (max-width:750px){
	/* .ps_item.-item_02 */
	#content_product-service .ps_item.-item_02{
		margin-top:4rem;
	}
	#content_product-service .ps_item.-item_02 .ps_item_inner .image{
		right:0;
		left:0;
	}
}

/* .ps_item.-item_03 */

#content_product-service .ps_item.-item_03{
	margin-top:19rem;
}
#content_product-service .ps_item.-item_03 .ps_item_inner{
	display:block;
	padding:0 6rem;
	top:-9rem;
}
#content_product-service .ps_item.-item_03 .image{
	margin-top:0;
	position:relative;
	max-width:100%;
	top:0;
	right:0;
	transform:none;
}
#content_product-service .ps_item.-item_03 .text{
	max-width:100%;
	margin-top:4rem;
	position:relative;
}
#content_product-service .ps_item.-item_03 .title .main{
	margin-top:0.3rem;
}
#content_product-service .ps_item.-item_03 .desc{
	margin-top:2.8rem;
}
#content_product-service .ps_item.-item_03 .btn{
	position:absolute;
	top:0;
	right:0;
	margin-top:0;
}
#content_product-service .ps_item.-item_03 .service_list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	row-gap:4rem;
	margin-top:3.7rem;
}
#content_product-service .ps_item.-item_03 .service_list_item{
	max-width:47.728%;
	width:100%;
	background-color:var(--c-white);
	border:0.1rem solid var(--c-gray-D);
	border-radius:2rem;
	text-align:center;
}
#content_product-service .ps_item.-item_03 .service_list_item_inner{
	padding:3rem 0;
	position:relative;
}
#content_product-service .ps_item.-item_03 .service_list_item_inner::after{
	font-family:'icon' !important;
	speak:never;
	font-style:normal;
	font-weight:normal;
	font-variant:normal;
	text-transform:none;
	line-height:1;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	position:relative;
	transition:all 0.3s;

	content:"\e902";
	font-size:1.8rem;
	color:var(--c-black);
	position:absolute;
	top:50%;
	right:1.5rem;
	transform:translate(0, -50%);
}
#content_product-service .ps_item.-item_03 a:hover .service_list_item_inner::after{
	right:0.7rem;
}
#content_product-service .ps_item.-item_03 .service_list_item .image{
	max-width:13rem;
	margin:0 auto;
}
#content_product-service .ps_item.-item_03 .service_list_item.-lab .image{
	padding:3.3rem 0;
	max-width:28rem;
}
#content_product-service .ps_item.-item_03 .service_list_item .image img{
	filter:none;
}
#content_product-service .ps_item.-item_03 .service_list_item .name{
	margin-top:1.2rem;
	font-size:1.4rem;
}
#content_product-service .ps_item.-item_03 .service_list_item .name .sub{
	display:block;
	font-weight:700;
	letter-spacing:0.1em;
}
#content_product-service .ps_item.-item_03 .service_list_item .name .main{
	display:block;
	margin-top:0.3rem;
	font-size:2.4rem;
	font-weight:700;
	letter-spacing:0em;
	line-height:1.4;
	color:var(--c-red);
}
/* tb */
@media screen and (max-width:1000px){
	/* .ps_item.-item_03 */
	#content_product-service .ps_item.-item_03 .ps_item_inner{
		padding:0 6%;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .name .main{
		font-size:2rem;
	}
}
/* 900px */
@media screen and (max-width:900px){
	/* .ps_item.-item_03 */
	#content_product-service .ps_item.-item_03 .service_list{
		row-gap:3rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .image{
		max-width:9rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item.-lab .image{
		padding:2.214rem 0;
		max-width:20rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .name .main{
		font-size:1.8rem;
	}
}
/* sp */
@media screen and (max-width:750px){
	/* .ps_item.-item_03 */
	#content_product-service .ps_item.-item_03{
		margin-top:8rem;
	}
	#content_product-service .ps_item.-item_03 .ps_item_inner{
		padding:0 2rem;
		top:-4rem;
	}
	#content_product-service .ps_item.-item_03 .btn{
		position:relative;
		margin-top:2.8rem;
	}
	#content_product-service .ps_item.-item_03 .text{
		margin-top:2.5rem;
	}
	#content_product-service .ps_item.-item_03 .title .main{
		margin-top:0.5rem;
	}
	#content_product-service .ps_item.-item_03 .desc{
		margin-top:1.6rem;
	}

	#content_product-service .ps_item.-item_03 .service_list{
		row-gap:2rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item{
		max-width:100%;
		border-radius:1.5rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item_inner{
		padding:2.5rem 0 2rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .image{
		max-width:10rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item.-lab .image{
		padding:2.214rem 0;
		max-width:20rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .name .main{
		font-size:1.7rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .name{
		margin-top:1rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .name .sub{
		font-size:1.2rem;
	}
	#content_product-service .ps_item.-item_03 .service_list_item .name .main{
		font-size:1.8rem;
	}
}

/* .business_list */

#content_product-service .business_list{
	display:flex;
	justify-content:space-between;
	column-gap:3.5%;
	margin-top:10rem;
}
#content_product-service .business_list_item{
	background-color:var(--c-white);
	border-radius:1.5rem;
	box-shadow:0 0 1rem var(--c-shadow);
	max-width:31%;
	width:100%;
	padding:3rem 2.5rem;
}
#content_product-service .business_list_item .image{
	height:21rem;
	display:block;
	text-align:center;
}
#content_product-service .business_list_item .image img{
	height:100%;
	width:auto;
}
#content_product-service .business_list_item .text .title{
	font-size:2rem;
	font-weight:700;
	line-height:1.4;
	margin-top:2.7rem;
}
#content_product-service .business_list_item .text ul{
	margin-top:1.1rem;
	margin-bottom:0;
}
#content_product-service .business_list_item .text ul li{
	font-size:1.4rem;
	line-height:1.3;
}
/* tb */
@media screen and (max-width:1000px){
	#content_product-service .business_list_item .image{
		height:17vw;
	}
}
/* sp */
@media screen and (max-width:750px){
	#content_product-service .business_list{
		flex-direction:column;
		column-gap:0;
		row-gap:2rem;
		margin-top:4rem;
	}
	#content_product-service .business_list_item{
		max-width:100%;
		padding:2.5rem;
	}
	#content_product-service .business_list_item .image{
		height:20.6rem;
	}
	#content_product-service .business_list_item .text .title{
		font-size:1.8rem;
		margin-top:1rem;
	}
}

/* bg_content */

#content_product-service .bg_content{
	position:absolute;
	z-index:-1;
}
#content_product-service .bg_content.bg-01,
#content_product-service .bg_content.bg-03,
#content_product-service .bg_content.bg-05{
	right:-12rem;
}
#content_product-service .bg_content.bg-02,
#content_product-service .bg_content.bg-04{
	left:-12rem;
}
#content_product-service .bg_content.bg-01{ top:1%; }
#content_product-service .bg_content.bg-02{ top:21.5%; }
#content_product-service .bg_content.bg-03{ top:45%; }
#content_product-service .bg_content.bg-04{ top:65%; }
#content_product-service .bg_content.bg-05{ top:84%; }
/* sp */
@media screen and (max-width:750px){
	#content_product-service .bg_content{
		display:none;
	}
}



/*-- 

content_award

====================================================== --*/

#content_award{
	background-color:var(--c-gray-F9);
	padding:10rem 2rem;
}
#content_award .award_list_item{
	border-top:0.1rem solid var(--c-gray-D);
}
#content_award .award_list_item a:hover{
	opacity:1;
}
#content_award .award_list_item_inner{
	display:flex;
	column-gap:4rem;
	padding:4rem 0;
}
#content_award .award_list_item:last-child{
	border-bottom:0.1rem solid var(--c-gray-D);
}
#content_award .award_list_item .image{
	max-width:31rem;
}
#content_award .award_list_item .text{
	max-width:65rem;
}
#content_award .award_list_item .text .title{
	font-size:2rem;
	font-weight:700;
	line-height:1.6;
	transition:all 0.3s;
}
#content_award .award_list_item a:hover .text .title{
	color:var(--c-orange);
}
#content_award .award_list_item .text .desc{
	margin-top:0.7rem;
	line-height:1.8;
}
/* sp */
@media screen and (max-width:750px){
	#content_award{
		padding:5rem 2rem;
	}
	#content_award .award_list_item_inner{
		flex-direction:column;
		padding:2rem 0;
	}
	#content_award .award_list_item .image{
		max-width:100%;
	}
	#content_award .award_list_item .text{
		max-width:100%;
	}
	#content_award .award_list_item .text .title{
		font-size:1.8rem;
		margin-top:1rem;
	}
	#content_award .award_list_item .text .desc{
		margin-top:0.5rem;
		font-size:1.4rem;
	}
}



/*-- 

content_company

====================================================== --*/
#content_company{
	padding:10rem 2rem 9rem 2rem;
}

#content_company .table_content td p .for_sp{
	display:inline;
}

#content_company .gmap_wrap{
	margin-top:4rem;
}
#content_company .gmap_inner{
	height:35rem;
}

#content_company .gmap_link{
	display:flex;
	align-items:center;
	justify-content:end;
	margin-top:0.5rem;
}
#content_company .gmap_link::after{
	font-family:'icon' !important;
	speak:never;
	font-style:normal;
	font-weight:normal;
	font-variant:normal;
	text-transform:none;
	line-height:1;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	position:relative;

	display:inline-block;
	content:"\e904";
	font-size:1.3rem;
	margin-left:0.5rem;
}
#content_company .gmap_link a{
	font-size:1.4rem;
	text-decoration:underline;
}

#content_company .gmap_link .icon{
	display:inline-block;
	margin-left:0.5rem;
}

/* sp */
@media screen and (max-width:750px){
	#content_company{
		padding:5rem 2rem;
	}
	#content_company .btn{
		margin:3rem auto 0;
	}
	#content_company .gmap_wrap{
		margin-top:3rem;
	}
	#content_company .gmap_inner{
		height:auto;
	}
}



/*-- 

content_link

====================================================== --*/

#content_link{
	padding:8rem 2rem;
}
#content_link .link_list{
	display:flex;
	column-gap:3.5rem;
	align-items:stretch;
}
#content_link .link_list_item{
	background-color:var(--c-white);
	box-shadow:0 0 1rem var(--c-shadow);
	border-radius:1.5rem;
	max-width:31%;
	width:100%;
}
#content_link .link_list_item a{
	padding:2rem;
	display:flex;
	justify-content:center;
	flex-direction:column;
	height:100%;
	position:relative;
}
#content_link .link_list_item a::after{
	font-family:'icon' !important;
	speak:never;
	font-style:normal;
	font-weight:normal;
	font-variant:normal;
	text-transform:none;
	line-height:1;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	position:relative;
	transition:all 0.3s;
	display:block;
	content:"\e902";
	font-size:1.6rem;
	position:absolute;
	top:50%;
	right:1.5rem;
	transform:translate(0, -50%);
	transition:all 0.3s;
}
#content_link .link_list_item a:hover::after{
	right:0.7rem;
}
#content_link .link_list_item .image{
	height:12.5rem;
	display:block;
	text-align:center;
}
#content_link .link_list_item .image img{
	height:100%;
	width:auto;
}
#content_link .link_list_item .text{
	text-align:center;
	margin-top:1.3rem;
}
#content_link .link_list_item .text .sub{
	display:block;
	font-size:1.3rem;
	line-height:1.3;
}
#content_link .link_list_item .text .main{
	display:block;
	font-size:2.2rem;
	font-weight:900;
	line-height:1.25;
	margin-top:1rem;
}
@media screen and (max-width:850px){
	#content_link .link_list{
		column-gap:2rem;
	}
	#content_link .link_list_item a::after{
		right:1rem;
	}
	#content_link .link_list_item .text .sub{
		font-size:1.2rem;
	}
	#content_link .link_list_item .text .main{
		font-size:1.8rem;
	}
}
/* sp */
@media screen and (max-width:750px){
	#content_link{
		padding:5rem 2rem;
	}
	#content_link .link_list{
		flex-direction:column;
		row-gap:2rem;
	}
	#content_link .link_list_item{
		max-width:100%;
	}
	#content_link .link_list_item a::after{
		right:1.5rem;
	}
	#content_link .link_list_item .text{
		margin-top:1.1rem;
	}
	#content_link .link_list_item .text .main{
		font-size:2rem;
		margin-top:0.8rem;
	}
}
