@charset "utf-8";

/* -------------------------------------------------------------
page-mv-area
-------------------------------------------------------------- */
.slider_bg_mv {
	position: absolute;
	top: -100px;
	width: 100%;
	height: 500px;
	overflow: hidden;
}
.slider_bg_mv::before {
	content: "";
	display: block;
	position: absolute;
	background: url("../img/cmn_works_mv_pc2.png") repeat;
	background-size: contain;
	width: 100%;
	height: 2080px;
	top: 0;
	left: 0;
	animation: cmn-works-mv-slider 20s linear infinite;
}

@keyframes cmn-works-mv-slider {
  0% {
    -webkit-transform: rotate(0deg) translateY(0%);
    transform: rotate(0deg) translateY(0%);
  }
  100% {
    -webkit-transform: rotate(0deg) translateY(-50%);
    transform: rotate(0deg) translateY(-50%);
  }
}


.page-mv-area.wide {
	height: 400px;
}
.page-mv-area.wide .inner {
	z-index: 1;
}

.page-mv-area.wide::after {
	content: unset;
}

.page-mv-area.wide::before {
	content: "";
	position: absolute;
	top: -100px;
	left: 0;
	width: 100%;
	height: 500px;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.3) 100%);
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
}

.h1-area.page.wide {
	top: 500px;
}
.breadcrumbs.page.wide {
	top: 510px;
}

@media screen and (max-width: 768px) {
	
	.slider_bg_mv {
		top: 0;
		height: 300px;
	}
	.slider_bg_mv::before {
		background: url("../img/cmn_works_mv_sp2.png") repeat;
		background-size: 100%;
		width: 100%;
		height: 3052px;
		animation: cmn-works-mv-slider 30s linear infinite;
	}

	.page-mv-area.wide {
		height: 300px;
	}

	.page-mv-area.wide .inner {
		align-items: unset;
	}

	.page-mv-area.wide::before {
		top: 0;
		height: 300px;
	}

	.h1-area.page.wide {
		top: 320px;
	}

	.h1-area h1 {
		color: #fff;
	}


}

/* -------------------------------------------------------------
about-intro-area
-------------------------------------------------------------- */
.about-intro-area {
	position: relative;
	padding: 120px 0;
	background: var(--lightgray);
	overflow: hidden;
}

.about-intro-area .intro-cont {
	display: flex;
	align-items: center;
	gap: 64px;
}

.about-intro-area .intro-cont + .intro-cont {
	margin: 80px 0 0;
}

.about-intro-area .intro-cont .txt-box {
	width: 700px;
	flex-shrink: 0;
}

.about-intro-area .intro-cont .img {
	width: 100%;
	height: 400px;
}
.about-intro-area .intro-cont .img img {
	object-fit: cover;
	height: 100%;
	border-radius: 20px;
}

.about-intro-area .intro-cont.right {
	flex-direction: row-reverse;
}

.about-intro-area .list-base {
	margin: 20px 0;
	padding: 16px 0;
	border-top: solid 1px var(--lightgray02);
	border-bottom: solid 1px var(--lightgray02);
}

.about-intro-area .list-base li {
	flex-direction: unset;
}

.about-intro-area .list-base li::before {
	background: #ccc;
}

.about-intro-area .c-01 {
	margin: -6px 0 0;
	color: #FF6B00;
	font-size: 2rem;
	font-weight: 600;
}

.about-intro-area .c-02 {
	margin: -6px 0 0;
	color: #8CB500;
	font-size: 2rem;
	font-weight: 600;
}

.about-intro-area .c-03 {
	margin: -6px 0 0;
	color: #0033B9;
	font-size: 2rem;
	font-weight: 600;
}

.about-intro-area .c-04 {
	margin: -6px 0 0;
	color: #DEB100;
	font-size: 2rem;
	font-weight: 600;
}


@media screen and (max-width: 768px) {

	.about-intro-area {
		padding: 40px 0;
	}

	.about-intro-area .intro-cont {
		flex-direction: column-reverse;
		gap: 24px;
	}

	.about-intro-area .intro-cont + .intro-cont {
		margin: 40px 0 0;
	}

	.about-intro-area .intro-cont .txt-box {
		width: 100%;
	}

	.about-intro-area .intro-cont .img {
		width: 100%;
		height: 220px;
	}
	.about-intro-area .intro-cont .img img {
		object-position: top;
		border-radius: 10px;
	}

	.about-intro-area .intro-cont.right {
		flex-direction: column-reverse;
	}

}

#about .service-area {
	padding: unset;
	background: unset;
}
#about .service-area::after {
	content: unset;
}


/* -------------------------------------------------------------
.strengths-area-cont
-------------------------------------------------------------- */
.strengths-area {
	padding: 120px 0 60px;
}

.strengths-area-cont-area {
	margin: 60px 0 0;
}
.strengths-area-cont {
	gap: 0;
	padding: 90px 0;
	border-radius: 0;
	background: #fff;
}
.strengths-area-cont::before {
	opacity: .8;
}
.strengths-area-cont .img {
	height: 500px;
}

.strengths-area-cont .txt-box {
	padding: 0 80px;
}

@media screen and (max-width: 768px) {
	
	.strengths-area {
		padding: 40px 0 20px;
	}
	
	.strengths-area-cont-area {
		margin: 40px 0 0;
	}

	.strengths-area-cont {
		gap: 32px;
		padding: 40px 0;
	}
	.strengths-area-cont::before {
		display: none;
	}

	.strengths-area-cont .img {
		height: 250px;
	}
	
	.strengths-area-cont .txt-box {
		padding: unset;
	}
	
}


