@charset "utf-8";

/* -----------------------------
	intro-area
-------------------------------- */
.intro-area{
	margin: 100px 0 0;
	
}
.intro-area > .inner{
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}
.intro-area .catch-m {
	line-height: 1.6;
}
.intro-area .catch-m .s{
	color: var(--blue);
	margin: 0 0 10px;
	display: block;
}
.intro-area .basic-txt{
	padding: 20px 0 0;
}
.intro-area > .inner img{
	width: 450px;
	margin: 0 0 0 30px;
}
@media screen and (max-width: 768px){
	.intro-area{
		margin: 50px 0 0;
		position: relative;
	}
	.intro-area > .inner{
		display: block;
	}
	.intro-area .catch-m{
	 text-shadow    : 
       1px  1px 0px #ffffff,
      -1px  1px 0px #ffffff,
       1px -1px 0px #ffffff,
      -1px -1px 0px #ffffff,
       1px  0px 0px #ffffff,
       0px  1px 0px #ffffff,
      -1px  0px 0px #ffffff,
       0px -1px 0px #ffffff; 
}
	.intro-area .catch-m .s{
		width: 62%;
	}
	.intro-area .basic-txt{
		padding: 10px 0 0;
	}
	.intro-area > .inner img{
		width: 200px;
		margin: 0;
		position: absolute;
        right: -10px;
        top: -50px;
	}
}

/* -----------------------------
	description-area
-------------------------------- */
.description-area{
	margin: 50px 0 0;
	background: var(--darkblue);
	padding: 250px 0 300px;
	position: relative;
}
.deco-block img{
	position: absolute;
}
.deco-block img.produce-deco01{
	top: 80px;
	right: -100px;
}
.deco-block img.produce-deco02{
	top: 300px;
	left: -100px;
}
.deco-block img.produce-deco03{
	top: 260px;
    right: 130px;
}
.deco-block img.produce-deco04{
	top: 935px;
    left: 10px;
}
.deco-block img.produce-deco05{
	bottom: 600px;
    right: -100px;
}
.deco-block img.produce-deco06{
	bottom: 100px;
    left: -100px;
}
.description-area::before{
	content: '';
	position: absolute;
	width: 101%;
	height: 235px;
	top: -1px;
	left: 0;
	background: url("../img/top-recruit-wave01.png") no-repeat bottom center / cover;
	z-index: 1;
}
.description-area::after{
	content: '';
	position: absolute;
	width: 101%;
	height: 235px;
	bottom: -1px;
	left: 0;
	background: url("../img/top-recruit-wave02.png") no-repeat top center / cover;
}
.description-area .txt-area{
	color: #fff;
}
.description-area .txt-area .catch-m{
	padding: 30px 0 0;

}
.description-area .txt-area .catch-s{
	padding: 30px 0 0;

}
.description-area .txt-area .basic-txt{
	padding: 30px 0 0;
}

/* box */
.description-area .block{
	background: #fff;
	border-radius: 15px;
	padding: 30px;
	margin: 30px 0 0;
}
.description-area .block .top-box{
		display: flex;
	align-items: center;
}
.description-area .block img{
	/*border-radius: 10px;
	margin: 0 30px 0 0;
	width: 300px;*/
}
.description-area .block .title{
	text-decoration: 2px underline wavy var(--blue);
    text-underline-offset: 10px;
	font-weight: bold;
    font-size: 2.2rem;
    line-height: 1.3;
    letter-spacing: 0.1em;
}
.description-area .block .catch-s{
	padding: 30px 0 0;
    display: block;
}
.description-area .block .catch-s span{
	text-decoration: none;
	color: var(--blue);
}

.description-area .block .basic-txt{
	padding: 20px 0 0;
}

.description-area .box .subtitle{
	color: var(--blue);
	font-weight: bold;
	font-size: 2rem;
	padding: 10px 0 0;
}
.description-area .box .basic-txt{
	padding: 0 0 0;
}
.description-area .gallaery{
	display: flex;
	gap: 30px;
	margin: 30px 0 0;
	flex-wrap: wrap;
}
.description-area .gallaery a{
	width: calc((100% / 3) - 20px);
	position: relative;
}
.description-area .gallaery a img{
	width: 100%;
}
.description-area .gallaery a::before{
	content: '\f002';
	position: absolute;
	bottom: 0;
	right: 0;
	font-family: var(--webicon);
	font-weight: 900;
	background: var(--blue);
	width: 30px;
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}
@media screen and (max-width: 768px){
	.description-area{
		padding: 100px 0 100px;
		margin: 20px 0 0;
	}
			.deco-block img{
	}
	.deco-block img.produce-deco01{
	}
	.deco-block img.produce-deco02{
		width: 139px;
		height: 200px;
		top: 0;
		left: -60px;
	}
	.deco-block img.produce-deco03{
		width: 300px;
		height: 455px;
		top: 80px;
		right:-60px;
	}
	.deco-block img.produce-deco04{
	}
	.deco-block img.produce-deco05{
	}
	.deco-block img.produce-deco06{
	}
	.description-area::before{
		background-size: contain;
		background-position: top center;
	}
	.description-area::after{
		background-size: contain;
		background-position: bottom;
	}
	.description-area .txt-area{
	}
	.description-area .txt-area .catch-m{
	}
	.description-area .txt-area .basic-txt{
	}
	.description-area .block{
		padding: 15px;
		margin: 20px 0 0;
	}

	/* box */
	.description-area .block{
		border-radius: 10px;
		padding: 15px;
	}
	.description-area .block img{

	}
	.description-area .block .title{
		line-height: 1.8;
		    text-underline-offset: 5px;

	}
	.description-area .block .catch-s{
		padding: 10px 0 0;
	}
	.description-area .block .basic-txt{
		padding: 10px 0 0;
	}
	.description-area .box .subtitle{
		font-size: 1.8rem;
	}
	.description-area .box .basic-txt{
		padding: 0;
	}
	.description-area .gallaery{
		margin: 10px 0 0;
		flex-wrap: wrap;
		gap: 10px;
	}
	.description-area .gallaery a{
		width: calc((100% / 2) - 5px);
	}
	.description-area .gallaery a img{
		width: 100%;
	}
}

/* -----------------------------
	intro-area
-------------------------------- */
.intro-area.intro02 .inner{
	display: flex;
}
.intro-area.intro02 .inner img{
	width: 450px;
	border-radius: 15px;
	margin: 0 0 0 50px;
}
@media screen and (max-width: 768px){
	.intro-area.intro02{
		margin: 20px 0 0;
	}
	.intro-area.intro02 .inner{
		display: block;
	}
	.intro-area.intro02 .inner img{
		width: 100%;
		border-radius: 5px;
		margin: 0 0 0;
		position: inherit;
	}
	.intro-area.intro02 .txt-area{
		padding: 10px 0 0;
	}
	.intro-area.intro02 .catch-s.blue{
		font-size: 1.6rem;
	}
	.intro-area.intro02 .basic-txt{
		padding: 10px 0 0;
	}
}

/* -----------------------------
	benefits-area
-------------------------------- */
.benefits-area{
	margin: 100px 0;
}
.benefits-area .box{
	margin: 30px 0 0;
}
.benefits-area .box ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.benefits-area .box ul li{
	background: var(--lightblue);
	padding: 15px 20px;
	border-radius: 10px;
	margin: 20px 0 0;
	width: calc((100% / 2) - 10px);
}
.benefits-area .box ul li .title{
	font-size: 2rem;
	font-weight: bold;
	color: var(--blue);
}
@media screen and (max-width: 768px){
	.benefits-area{
		margin: 50px 0;
	}
	.benefits-area .box{
	}
	.benefits-area .box ul{
		display: block;
	}
	.benefits-area .box ul li{
		margin: 10px 0 0;
		border-radius: 5px;
		padding: 15px;
		width: 100%;
	}
	.benefits-area .box ul li .title{
		font-size: 1.8rem;
	}
}

