@charset "utf-8";


/* *********************************
　
  トップページ

********************************** */

/* -----  p-home-strengths ---- */
.p-home-strengths {
	position: relative;
	}
	.p-home-strengths__bg {
		position: absolute;
		top: 0px;
		right: 0;
		width: 100%;
		height: 100%;
		mix-blend-mode: multiply;
		}
	.p-home-strengths__contents {
		position: relative;
		top: 0px;
		right: 0;
		}
	.p-home-strengths__contents01 > dt::before {
		content: "―";
		display: inline-block;
		width: 40px;
		}
@media print, screen and (min-width: 768px) {
	.p-home-strengths__wrap {
		padding: 13% 0 10% 0;
		background-size: 100% auto;
		}
	.p-home-strengths {
		max-width: 910px;
		width: 50%;
		margin: 0 0 0 auto;
		padding: 5% 0 5% 5%;
		}
	.p-home-strengths__bg {
		background: -moz-linear-gradient(left, rgba(60,93,161,0) 0%, rgba(60,93,161,0.8) 40%, rgba(60,93,161,0.8) 100%);
		background: -webkit-linear-gradient(left, rgba(60,93,161,0) 0%, rgba(60,93,161,0.8) 40%, rgba(60,93,161,0.8) 100%);
		background: linear-gradient(to right, rgba(60,93,161,0) 0%, rgba(60,93,161,0.8) 40%, rgba(60,93,161,0.8) 100%);
		}
}
@media (min-width:768px) and (max-width:999px){
	.p-home-strengths__wrap {
		padding: 8% 0 8% 0;
		}
	.p-home-strengths {
		width: 80%;
		padding: 3% 0 3% 5%;
		}
}
@media (max-width: 767px) {
	.p-home-strengths__wrap {
		background-size: cover;
		}
	.p-home-strengths {
		padding: 50px 20px;
		}
	.p-home-strengths__bg {
		background-color: rgba(60,93,161,0.8);
		}
}


/* -----  p-home-company ---- */
.p-home-company {
	position: relative;
	}
		.p-home-company__img img {
			width: auto;
			height: 100%;
			}
	.p-home-company_contents {
		position: relative;
		}
@media print, screen and (min-width: 768px) {
	.p-home-company__wrap {
		background: url("../img/home/contents-bg02.webp") no-repeat center top;
		padding: 90px 0 10px 0;
		margin-top: -100px;
		}
	.p-home-company__wrap-a {
		background: url("../img/home/contents-bg02-a.webp") no-repeat center top;
		}
	.p-home-company {
		margin: 160px auto;
		}
	.p-home-company__img {
		position: absolute;
		top: 0px;
		left: 0;
		}
		.p-home-company_reverse .p-home-company__img {
			right: 0;
			text-align: right;
			}
	.p-home-company__img,
	.p-home-company {
		height: 462px;
		}
	.p-home-company__contents {
		width: 500px;
		margin: auto 0 auto auto;
		}
		.p-home-company_reverse .p-home-company__contents {
			margin: auto auto auto 0;
			}
	.p-home-company dl {
		margin-bottom: 50px;
		}
	.p-home-company__name {
		font-size: 4.8rem;
		}
}
@media (min-width:768px) and (max-width:1750px){
	.p-home-company__wrap {
		background: none;
		}
	.p-home-company__img,
	.p-home-company {
		height: 400px;
		}
}
@media (min-width:768px) and (max-width:1500px){
	.p-home-company__img,
	.p-home-company {
		height: 350px;
		}
	.p-home-company__name {
		font-size: 4.0rem;
		}
}
@media (min-width:768px) and (max-width:1200px){
	.p-home-company__img,
	.p-home-company {
		height: 300px;
		}
}
@media (min-width:768px) and (max-width:1100px){
	.p-home-company__img,
	.p-home-company {
		height: 250px;
		}
	.p-home-company dl {
		margin-bottom: 40px;
		}
	.p-home-company__name {
		font-size: 3.6rem;
		}
}
@media (min-width:768px) and (max-width:1000px){
	.p-home-company__img,
	.p-home-company {
		height: 200px;
		}
}
@media (min-width:768px) and (max-width:860px){
	.p-home-company__img,
	.p-home-company {
		height: 180px;
		}
	.p-home-company dl {
		margin-bottom: 30px;
		}
	.p-home-company__name {
		font-size: 3.0rem;
		}
}
@media (min-width:768px) and (max-width:800px){
	.p-home-company__img,
	.p-home-company {
		height: 150px;
		}
}
@media (max-width: 767px) {
	.p-home-company__contents {
		max-width: 380px;
		margin-left: auto;
		margin-right: auto;
		}
	.p-home-company {
		margin-bottom: 80px;
		}
	.p-home-company dl {
		margin-top: 20px;
		margin-bottom: 30px;
		}
	.p-home-company__name {
		font-size: 2.2rem;
		}
}


/* -----  p-home-recruit ---- */

@media print, screen and (min-width: 768px) {
	.p-home-recruit  {
		margin-top: 80px;
		padding: 150px 0 180px;
		background-position: center top;
		}
}
@media (max-width: 767px) {
	.p-home-recruit  {
		padding: 80px 0 50px 20px;
		background-position: center top;
		}
}




