@charset "UTF-8";
/*
	* Bootstrap 単独ページに掛かる関するカスタムCSS

	@media screen and (max-width: 1619px) {}
	@media (max-width: 991.98px) {}
	@media print {}
	@media screen and (max-width: 767px) {}
 
	xl-1620(max-1619) 左右余白15pxを含む（1290）
	lg-992(max-991)
	md-768(max-767)
	sm-576(max-575)
 
	-------------------

*/

/* mv */
	.cus-mv{
		position: relative;
		background: linear-gradient(to bottom, transparent 70%, #ebfaf7 70%);
		padding-left: 10%;
		width: 100%;
		height: 960px;
	}

	.cus-mv .mv-text{
		position: absolute;
		top: 50%;
		left: 5%;
		z-index: 3;
	}
	.cus-mv .mv-text .text-txt{
		display: flex;
		align-items: center;
		margin-bottom: 25px;
		font-size: 40x;
		font-weight: 700;
		color: white;
		line-height: 1;
		letter-spacing: 0.1em;
	}
	.cus-mv .mv-text .text-txt .pic{
		background-color: white;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
		padding: 20px;
		width: auto;
		font-size: 68px;
		color: #00aa96;
		line-height: 1;
	}
	.cus-mv .mv-text .text-txt .min{
		padding: 26px 0 0 20px;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	}

	.cus-mv .mv-text .text-txt .pic{/* アニメーション用 */
		opacity: 0;
		display: inline-block;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
		transform: rotate(-45deg) scale(0.5);
		animation: rotateIn 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;
		animation-play-state: paused;
	}
	.cus-mv .mv-text .text-txt .min{
		display: flex;
	}
	.cus-mv .mv-text .text-txt .min span{
		display: inline-block;
		opacity: 0;
		transform: translateX(-20px);
		animation: slideIn 0.5s ease-out forwards;
		animation-play-state: paused;
	}
	.cus-mv .mv-text .text-txt .is-active{
		animation-play-state: running !important;
	}
	@keyframes rotateIn {
	0% { opacity: 0; transform: rotate(-70deg) scale(0.5); }
	100% { opacity: 1; transform: rotate(0) scale(1); }
	}
	@keyframes slideIn {
	0% { opacity: 0; transform: translateX(-20px); }
	100% { opacity: 1; transform: translateX(0); }
	}

	.cus-mv .mv-photo{
		overflow: hidden;
		position: absolute;
		top: 0;
		right: 0;
		background-color: #fff;
		width: 90%;
		height: 100%;
	}
	.cus-mv .mv-photo .img{
		position: absolute;
		top: 0;
		left: 0;
		margin: 0;
		width: 100%;
		height: 100%;
		opacity: 0;
		z-index: 1;
		transition: opacity 2s ease-in-out;
	}
	.cus-mv .mv-photo .img.is-active{
		opacity: 1;
		z-index: 2;
	}
	.cus-mv .mv-photo .img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		transform: scale(1.15);
		transition: transform 10s linear, opacity 2s ease-in-out;
	}
	.cus-mv .mv-photo .img.is-active img{
		transform: scale(1.0);
		transition: none;
	}
	.cus-mv .mv-photo .img.is-active.is-visible img{
		transform: scale(1.15);
		transition: transform 10s linear;
	}

	.cus-mv .mv-link{
		position: absolute;
		bottom: 80px;
		right: 3%;
		z-index: 10;
	}
	.cus-mv .mv-link a{
		position: relative;
		display: flex;
		justify-content: center;
    align-items: center;
		width: 142px;
		height: 138px;
	}
	.cus-mv .mv-link a::before{
		content: '';
		position: absolute;
		top: 69px;
		left: 50%;
		display: block;
		background-color: white;
		width: 1px;
		height: 220px;
		z-index: -1;
	}
	.cus-mv .mv-link a img {
		width: 100%;
		height: auto;
		animation: slowRotate 20s linear infinite;
	}
	@keyframes slowRotate {
		0% {transform: rotate(0deg);}
		100% {transform: rotate(360deg);}
	}
	@media screen and (max-width: 1619px) {
		.cus-mv{
			height: 700px;
		}
	
		.cus-mv .mv-text{
			top: 45%;
			left: 4%;
		}
		.cus-mv .mv-text .text-txt{
			margin-bottom: 20px;
			font-size: 32x;
		}
		.cus-mv .mv-text .text-txt .pic{
			padding: 16px;
			font-size: 50px;
		}
		.cus-mv .mv-text .text-txt .min{
			padding: 18px 0 0 16px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-mv{
			height: 520px;
		}
	
		.cus-mv .mv-text{
			top: 45%;
			left: 3%;
		}
		.cus-mv .mv-text .text-txt{
			margin-bottom: 16px;
			font-size: 24x;
		}
		.cus-mv .mv-text .text-txt .pic{
			padding: 14px;
			font-size: 40px;
		}
		.cus-mv .mv-text .text-txt .min{
			padding: 12px 0 0 10px;
		}
	}
	@media print {
		.cus-mv{
			height: 400px;
		}
	
		.cus-mv .mv-text{
			top: 45%;
			left: 3%;
		}
		.cus-mv .mv-text .text-txt{
			margin-bottom: 12px;
			font-size: 20x;
		}
		.cus-mv .mv-text .text-txt .pic{
			padding: 10px;
			font-size: 32px;
		}
		.cus-mv .mv-text .text-txt .min{
			padding: 8px 0 0 6px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-mv{
			background: linear-gradient(to bottom, transparent 80%, #ebfaf7 70%);
			padding-left: 0%;
			height: 96vh;
		}
	
		.cus-mv .mv-text{
			top: 60%;
			left: 3%;
		}
		.cus-mv .mv-text .text-txt{
			margin-bottom: 15px;
			font-size: 18x;
		}
		.cus-mv .mv-text .text-txt .pic{
			padding: 12px;
			font-size: 26px;
		}
		.cus-mv .mv-text .text-txt .min{
			padding: 6px 0 0 10px;
		}
	
		.cus-mv .mv-photo{
			width: 100%;
		}
	
		.cus-mv .mv-link{
			position: absolute;
			bottom: 40px;
			right: 3%;
			z-index: 10;
		}
		.cus-mv .mv-link a{
			width: 85px;
			height:83px;
		}
		.cus-mv .mv-link a::before{
			top: 42px;
			left: 50%;
			height: 100px;
		}
	}


/* area01 */
	.cus-home-area01-con{
		display: flex;
		padding: 200px 0 200px 30%;
	}
	.cus-home-area01-con .con-midashi{
		width: 500px;
		font-size: 48px;
		font-weight: 700;
		color: #3d8078;
	}
	.cus-home-area01-con .con-text{
		flex-grow: 1;
		width: auto;
		font-size: 18px;
	}

	.cus-home-area01-con .con-text .text-hight{
		line-height: 2.4;
	}

	.cus-home-area01-text01{
		display: flex;
		align-items: center;
	}
	.cus-home-area01-text01 .cus-reverse-bgtext{
		margin-right: 10px;
	}

	.cus-home-area01-bt01{
		margin: 0;
		width: 240px;
	}
	@media screen and (max-width: 1699px) {
		.cus-home-area01-con{
			padding: 200px 0 200px 25%;
		}
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area01-con{
			padding: 160px 0 160px 15%;
		}
		.cus-home-area01-con .con-midashi{
			width: 40vw;
			font-size: 36px;
		}
		.cus-home-area01-con .con-text{
			font-size: 17px;
		}
	
		.cus-home-area01-bt01{
			width: 220px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area01-con{
			padding: 120px 0 120px 0%;
		}
		.cus-home-area01-con .con-midashi{
			width: 55vw;
			font-size: 28px;
		}
		.cus-home-area01-con .con-text{
			font-size: 17px;
		}
	
		.cus-home-area01-bt01{
			width: 220px;
		}
	}
	@media print {
		.cus-home-area01-con{
			padding: 80px 0 80px 0%;
		}
		.cus-home-area01-con .con-midashi{
			width: 55vw;
			font-size: 20px;
		}
		.cus-home-area01-con .con-text{
			font-size: 15px;
		}
	
		.cus-home-area01-bt01{
			width: 220px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area01-con{
			display: block;
			padding: 80px 0;
		}
		.cus-home-area01-con .con-midashi{
			width: auto;
			font-size: 24px;
		}
		.cus-home-area01-con .con-text{
			font-size: 16px;
		}
	
		.cus-home-area01-con .con-text .text-hight{
			line-height: 2;
		}
		
		.cus-home-area01-text01{
			flex-wrap: wrap;
		}
		.cus-home-area01-text01 .cus-reverse-bgtext{
			margin: 0 10px 10px 0 !important;
		}
	
		.cus-home-area01-bt01{
			width: 100%;
		}
	}


/* area02 */
	.cus-home-area02{
		padding: 90px 0;
	}

	.cus-home-area02-header{
		display: flex;
		align-items: center;
	}
	.cus-home-area02-header .header-title{
		width: 50%;
	}
	.cus-home-area02-header .header-bt{
		display: flex;
		justify-content: flex-end;
		margin-left: auto;
		text-align: right;
	}

	.cus-home-area02-list{
		display: flex;
	}
	.cus-home-area02-list .list-col{
		box-sizing: content-box;
		background-image: url("../img/site/dot-single-vertical.png");
		background-position: right 4% top;
		background-repeat: repeat-y;
		padding-right: 2%;
		width: 23.5%;
	}
	.cus-home-area02-list .list-col:last-child{
		background-image: none !important;
		padding-right: 0%;
	}

	.cus-home-area02-box{
		overflow: hidden;
		text-align: center;
	}
	.cus-home-area02-box .box-img{
		background: linear-gradient(to bottom, #ebfaf7 94%, transparent 94%);
		padding: 60px 0 0 0;
	}
	.cus-home-area02-box .box-img .img{
		margin-bottom: 50px;
	}
	.cus-home-area02-box .box-img .text01{
		margin: 0;
		font-size: 14px;
		color: #3d8078;
	}
	.cus-home-area02-box .box-img .text02{
		margin: 0;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 24px;
		color: #3d8078;
	}
	.cus-home-area02-box .box-text{
		overflow: hidden;
		position: relative;
		padding-top: 20px;
	}
	.cus-home-area02-box .box-text::before{
		content: '';
		position: absolute;
		top: 0px;
		left: 50%;
		background-image: url("../img/site/dot-single-vertical.png");
		background-position: center top;
		background-repeat: repeat-y;
		width: 1px;
		height: 20px;
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area02{
			padding: 70px 0;
		}

		.cus-home-area02-box .box-img{
			padding: 50px 0 0 0;
		}
		.cus-home-area02-box .box-img .img{
			margin-bottom: 40px;
		}
		.cus-home-area02-box .box-img .text01{
			font-size: 13px;
		}
		.cus-home-area02-box .box-img .text02{
			font-size: 20px;
		}
		.cus-home-area02-box .box-text{
			padding-top: 20px;
			text-align: left;
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area02{
			padding: 60px 0;
		}

		.cus-home-area02-box .box-img{
			padding: 40px 0 0 0;
		}
		.cus-home-area02-box .box-img .img{
			margin-bottom: 30px;
		}
		.cus-home-area02-box .box-img .text01{
			font-size: 13px;
		}
		.cus-home-area02-box .box-img .text02{
			font-size: 18px;
		}
		.cus-home-area02-box .box-text{
			padding-top: 20px;
			text-align: left;
		}
	}
	@media print {
		.cus-home-area02{
			padding: 50px 0;
		}

		.cus-home-area02-box .box-img{
			padding: 40px 0 0 0;
		}
		.cus-home-area02-box .box-img .img{
			margin-bottom: 30px;
		}
		.cus-home-area02-box .box-img .text01{
			font-size: 11px;
		}
		.cus-home-area02-box .box-img .text02{
			font-size: 16px;
		}
		.cus-home-area02-box .box-text{
			padding-top: 20px;
			text-align: left;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area02{
			padding: 50px 0;
		}
	
		.cus-home-area02-header{
			display: block;
		}
		.cus-home-area02-header .header-title{
			margin-bottom: 20px;
			width: auto;
		}
		.cus-home-area02-header .header-bt{
			display: block;
		}
	
		.cus-home-area02-list{
			display: block;
		}
		.cus-home-area02-list .list-col{
			background-image: none;
			padding-right: 2%;
			margin-bottom: 20px;
			width: auto;
		}
		.cus-home-area02-list .list-col:last-child{
			margin-bottom: 0px;
		}
	
		.cus-home-area02-box .box-img{
			padding: 30px 0 0 0;
		}
		.cus-home-area02-box .box-img .img{
			margin-bottom: 30px;
		}
		.cus-home-area02-box .box-img .text01{
			font-size: 14px;
		}
		.cus-home-area02-box .box-img .text02{
			font-size: 18px;
		}
	}


/* area03 */
	.cus-home-area03-con{
		display: flex;
	}
	.cus-home-area03-con .con-text{
		flex-shrink: 0;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: 30%;
	}

	.cus-home-area03-link{
		overflow: hidden;
		padding: 0;
		margin: 0;
		list-style: none;
		width: 375px;
	}
	.cus-home-area03-link li{
		border-bottom: #cacfce solid 1px;
	}
	.cus-home-area03-link li a{
		overflow: hidden;
		position: relative;
		display: block;
		padding: 18px 14px;
		color: inherit;
		text-decoration: none;
		transition: color 0.3s ease;
		z-index: 1;
	}
	.cus-home-area03-link li a::before{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #30b7a8;
		z-index: -1;
		transform: translateX(-100%);
		transition: transform 0.3s ease;
	}
	.cus-home-area03-link li a::after{
		position: absolute;
		top: 50%;
		right: 20px;
		content: '\f061';
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #30b7a8;
		width: 26px;
		height: auto;
		aspect-ratio: 1 / 1;
		font-family: "Font Awesome 6 Free";
		font-size: 10px;
		font-weight: 900;
		color: white;
		transform: translate(50%, -50%);
		transition: all 0.3s ease;
		z-index: 2;
	}
	.cus-home-area03-link li a:hover::before {
		transform: translateX(0);
	}
	.cus-home-area03-link li a:hover{
		color: white;
	}
	.cus-home-area03-link li a:hover::after{
		background-color: white;
		color: #30b7a8;
	}

	.cus-home-area03-con .con-img{
		overflow: hidden;
		position: relative;
		flex: 1;
		margin-right: calc(50% - 50vw);
	}
	.cus-home-area03-con .con-img .img{
		overflow: hidden;
		position: relative;
		margin: 0;
		width: 100%;
		height: 780px;
	}
	.cus-home-area03-con .con-img .img img{
		width: 100%;
		height: 100%;
		object-fit: cover; 
		opacity: 0;
		transition: opacity 0.01s 0.4s;
	}
	.cus-home-area03-con .con-img .img::after{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #30b7a8;
		transform: translateX(-101%); /* 左側に待機 */
		transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
		z-index: 3;
	}
	.cus-home-area03-con .con-img.is-active .img img{
		opacity: 1;
	}
	.cus-home-area03-con .con-img.is-active .img::after{
		animation: revealLTR 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
	}
	@keyframes revealLTR {
		0% {transform: translateX(-101%);}
		50% {transform: translateX(0); /* 完全に覆う */}
		100% {transform: translateX(101%); /* 右へ抜ける */}
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area03-con .con-text{
			width: 40%;
		}
	
		.cus-home-area03-link{
			width: 360px;
		}
		.cus-home-area03-link li a{
			padding: 16px 12px;
		}

		.cus-home-area03-con .con-img .img{
			height: 600px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area03-con .con-text{
			width: 50%;
		}
	
		.cus-home-area03-link{
			width: 90%;
		}
		.cus-home-area03-link li a{
			padding: 14px 10px;
		}

		.cus-home-area03-con .con-img .img{
			height: 500px;
		}
	}
	@media print {
		.cus-home-area03-con .con-text{
			width: 50%;
		}
	
		.cus-home-area03-link{
			width: 90%;
		}
		.cus-home-area03-link li a{
			padding: 12px 6px;
		}

		.cus-home-area03-con .con-img .img{
			height: 400px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area03-con{
			display: block;
		}
		.cus-home-area03-con .con-text{
			margin-bottom: 20px;
			width: auto;
		}
	
		.cus-home-area03-link{
			width: 100%;
		}

		.cus-home-area03-link li a{
			padding: 10px;
		}
	
		.cus-home-area03-con .con-img{
			margin-right: 0;
		}
		.cus-home-area03-con .con-img .img{
			height: 64vw;
		}
	}


/* area04-5 */
	.cus-home-area04to5-con{
		overflow: hidden;
		position: relative;
		background: transparent;
		padding: 40px 0;
		width: 100%;
	}

	.cus-marquee-text{
		position: absolute;
		top: 50%;
		left: 0px;
		display: flex;
		padding: 0;
		margin: 0;
		width: max-content;
		white-space: nowrap;
		list-style: none;
		animation: marquee-scroll 100s linear infinite;
		z-index: -2;
	}
	.cus-marquee-text li{
		padding-right: 20px;
		font-size: 160px;
		font-weight: 900;
		color: #daede9;
		line-height: 1;
	}
	@keyframes marquee-scroll {
		from {
			transform: translateX(0);
		}
		to {
			transform: translateX(-50%); 
		}
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area04to5-con{
			padding: 30px 0;
		}

		.cus-marquee-text li{
			padding-right: 20px;
			font-size: 140px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area04to5-con{
			padding: 25px 0;
		}

		.cus-marquee-text li{
			padding-right: 20px;
			font-size: 100px;
		}
	}
	@media print {
		.cus-home-area04to5-con{
			padding: 25px 0;
		}

		.cus-marquee-text{
			display: none;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area04to5-con{
			padding: 20px 0;
		}

		.cus-marquee-text li{
			padding-right: 15px;
			font-size: 70px;
		}
	}


/* area04 */
	.cus-home-area04-con{
		display: flex;
		align-items: center;
	}
	.cus-home-area04-con .con-text{
		padding-left: 20%;
		width: 50%;
	}
	.cus-home-area04-con .con-img{
		width: auto;
		flex: 1;
	}
	.cus-home-area04-con .con-img .img{
		position: relative;
		padding: 35px 35px 0 0;
		margin: 0;
	}
	.cus-home-area04-con .con-img .img::before{
		content: '';
		position: absolute;
		top: 0px;
		right: 0px;
		background-color: #f0f7f6;
		width: 96%;
		height: 94%;
		z-index: -1;

		clip-path: polygon(
			0% 170px,/* 左上（ここから170px下げる） */
			50% 0%,/* 頂点（真ん中上） */
			100% 170px,/* 右上（ここから170px下げる） */
			100% 100%,/* 右下 */
			0% 100%/* 左下 */
		);
	}
	.cus-home-area04-con .con-img .img img{
		width: 100%; /* 任意の横幅 */
		height: 615px; /* 任意の高さ */
		object-fit: cover;

		clip-path: polygon(
			0% 170px,/* 左上（ここから170px下げる） */
			50% 0%,/* 頂点（真ん中上） */
			100% 170px,/* 右上（ここから170px下げる） */
			100% 100%,/* 右下 */
			0% 100%/* 左下 */
		);
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area04-con .con-text{
			padding-left: 10%;
		}
		.cus-home-area04-con .con-img .img{
			padding: 30px 30px 0 0;
		}
		.cus-home-area04-con .con-img .img::before{
			clip-path: polygon(
				0% 150px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 150px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
		.cus-home-area04-con .con-img .img img{
			height: 540px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 150px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 150px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area04-con .con-text{
			padding-left: 0%;
		}
		.cus-home-area04-con .con-img .img{
			padding: 25px 25px 0 0;
		}
		.cus-home-area04-con .con-img .img::before{
			clip-path: polygon(
				0% 100px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 100px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
		.cus-home-area04-con .con-img .img img{
			height: 440px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 100px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 100px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
	}
	@media print {
		.cus-home-area04-con .con-text{
			padding-left: 0%;
		}
		.cus-home-area04-con .con-img .img{
			padding: 20px 20px 0 0;
		}
		.cus-home-area04-con .con-img .img::before{
			clip-path: polygon(
				0% 60px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 60px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
		.cus-home-area04-con .con-img .img img{
			height: 340px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 60px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 60px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area04-con{
			display: block;
		}
		.cus-home-area04-con .con-text{
			padding-left: 0%;
			margin-bottom: 20px;
			width: auto;
		}

		.cus-home-area04-con .con-img .img{
			padding: 15px 15px 0 0;
		}
		.cus-home-area04-con .con-img .img::before{
			clip-path: polygon(
				0% 60px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 60px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
		.cus-home-area04-con .con-img .img img{
			height: 80vw; /* 任意の高さ */
	
			clip-path: polygon(
				0% 60px,/* 左上（ここから170px下げる） */
				50% 0%,/* 頂点（真ん中上） */
				100% 60px,/* 右上（ここから170px下げる） */
				100% 100%,/* 右下 */
				0% 100%/* 左下 */
			);
		}
	}


/* area05 */
	.cus-home-area05-con{
		display: flex;
		flex-direction: row-reverse;
		align-items: center;
	}
	.cus-home-area05-con .con-text{
		padding-left: 80px;
		width: 50%;
	}
	.cus-home-area05-con .con-img{
		width: auto;
		flex: 1;
	}
	.cus-home-area05-con .con-img .img{
		position: relative;
		padding: 35px 0 0 35px;
		margin: 0;
	}
	.cus-home-area05-con .con-img .img::before{
		content: '';
		position: absolute;
		top: 0px;
		left: 0px;
		background-color: #f0f7f6;
		width: 96%;
		height: 94%;
		z-index: -1;

		clip-path: polygon(
			0% 0%,/* 左上：ここを一番上（0%）に */
			100% 100px,/* 右上：100px下げる */
			100% 100%,/* 右下：一番下 */
			0% 100%/* 左下：一番下 */
		);
	}
	.cus-home-area05-con .con-img .img img{
		width: 100%; /* 任意の横幅 */
		height: 525px; /* 任意の高さ */
		object-fit: cover;

		clip-path: polygon(
			0% 0%,/* 左上：ここを一番上（0%）に */
			100% 100px,/* 右上：100px下げる */
			100% 100%,/* 右下：一番下 */
			0% 100%/* 左下：一番下 */
		);
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area05-con .con-text{
			padding-left: 40px;
		}
		.cus-home-area05-con .con-img .img{
			padding: 25px 0 0 25px;
		}
		.cus-home-area05-con .con-img .img::before{
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 80px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
		.cus-home-area05-con .con-img .img img{
			height: 440px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 80px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area05-con .con-text{
			padding-left: 20px;
		}
		.cus-home-area05-con .con-img .img{
			padding: 20px 0 0 20px;
		}
		.cus-home-area05-con .con-img .img::before{
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 60px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
		.cus-home-area05-con .con-img .img img{
			height: 360px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 60px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
	}
	@media print {
		.cus-home-area05-con .con-text{
			padding-left: 15px;
		}
		.cus-home-area05-con .con-img .img{
			padding: 20px 0 0 20px;
		}
		.cus-home-area05-con .con-img .img::before{
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 50px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
		.cus-home-area05-con .con-img .img img{
			height: 300px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 50px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area05-con{
			display: block;
		}
		.cus-home-area05-con .con-text{
			padding-left: 0px;
			margin-bottom: 20px;
			width: auto;
		}
		.cus-home-area05-con .con-img .img{
			position: relative;
			padding: 15px 0 0 15px;
			margin: 0;
		}
		.cus-home-area05-con .con-img .img::before{
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 50px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
		.cus-home-area05-con .con-img .img img{
			height: 70vw; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：ここを一番上（0%）に */
				100% 50px,/* 右上：100px下げる */
				100% 100%,/* 右下：一番下 */
				0% 100%/* 左下：一番下 */
			);
		}
	}


/* area06 */
	.cus-home-area06{
		overflow: hidden;
		background: linear-gradient(to right, #f8e4e0 55%, #ffffff 55%);
		padding: 100px 0;
	}

	.cus-home-area06-con{
		position: relative;
		display: flex;
	}

	.cus-home-area06-con .con-title{
		position: absolute;
		top: -60px;
		left: 21%;
		display: flex;
		flex-direction: column-reverse;
		z-index: 3;
	}
	.cus-home-area06-con .con-title .main{
		margin: 0;
		font-size: 18px;
		font-weight: 700;
		color: #d04525;
	}
	.cus-home-area06-con .con-title .sub{
		margin: 0;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 120px;
		color: #d04525;
		line-height: 1;
	}

	.cus-home-area06-con .con-text{
		flex-shrink: 0;
		display: flex;
		padding: 60px 0 0 60px;
		width: 20%;
	}
	.cus-home-area06-con .con-text .text-jp{
		writing-mode: vertical-rl;
		-webkit-text-orientation: mixed;
		text-orientation: mixed;
		padding-top: 40px;
		text-indent: -40px;
		margin: 0;
		font-size: 46px;
		font-weight: 700;
		line-height: 1.6;
		letter-spacing: 0.1em;
	}
	.cus-home-area06-con .con-text .text-en{
		writing-mode: vertical-rl;
		-webkit-text-orientation: mixed;
		text-orientation: mixed;
		margin: 0;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 12px;
		color: #d04525;
		letter-spacing: 0.1em;
	}

	.cus-home-area06-con .con-img{
		overflow: hidden;
		position: relative;
		flex: 1;
		margin-right: calc(50% - 50vw);
	}
	.cus-home-area06-con .con-img .img{
		overflow: hidden;
		position: relative;
		background-color: ##f8e4e0;
		margin: 0;
		width: 100%;
		height: 640px;
	}
	.cus-home-area06-con .con-img .img img{
		width: 100%;
		height: 100%;
		object-fit: cover; 
		object-position: 50% 60%;
		opacity: 0;
    transition: opacity 0.01s 0.6s;
	}
	.cus-home-area06-con .con-img .img::after{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #d04525;
		transform: translateX(-101%); /* 左側に待機 */
		transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
		z-index: 3;
	}
	.cus-home-area06-con .con-img.is-active .img img{
		opacity: 1;
	}
	.cus-home-area06-con .con-img.is-active .img::after{/* animationha
		area03共通 */
		animation: revealLTR 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
	}

	.cus-home-area06-bt01{
		margin: 0;
		width: 360px;
	}
	@media screen and (max-width: 1619px) {
		.cus-home-area06{
			padding: 80px 0;
		}
	
		.cus-home-area06-con .con-title{
			top: -60px;
			left: 21%;
		}
		.cus-home-area06-con .con-title .main{
			font-size: 18px;
		}
		.cus-home-area06-con .con-title .sub{
			font-size: 94px;
		}
	
		.cus-home-area06-con .con-text{
			padding: 50px 0 0 20px;
		}
		.cus-home-area06-con .con-text .text-jp{
			padding-top: 40px;
			text-indent: -40px;
			font-size: 40px;
		}
		.cus-home-area06-con .con-text .text-en{
			font-size: 12px;
		}

		.cus-home-area06-con .con-img .img{
			height: 560px;
		}

		.cus-home-area06-bt01{
			width: 340px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-home-area06{
			padding: 60px 0;
		}
	
		.cus-home-area06-con .con-title{
			top: -40px;
			left: 21%;
		}
		.cus-home-area06-con .con-title .main{
			font-size: 17px;
		}
		.cus-home-area06-con .con-title .sub{
			font-size: 66px;
		}
	
		.cus-home-area06-con .con-text{
			padding: 40px 0 0 0px;
		}
		.cus-home-area06-con .con-text .text-jp{
			padding-top: 34px;
			text-indent: -34px;
			font-size: 32px;
		}
		.cus-home-area06-con .con-text .text-en{
			font-size: 11px;
		}

		.cus-home-area06-con .con-img .img{
			height: 500px;
		}

		.cus-home-area06-bt01{
			width: 300px;
		}
	}
	@media print {
		.cus-home-area06{
			padding: 40px 0;
		}
	
		.cus-home-area06-con .con-title{
			top: -30px;
			left: 21%;
		}
		.cus-home-area06-con .con-title .main{
			font-size: 15px;
		}
		.cus-home-area06-con .con-title .sub{
			font-size: 50px;
		}
	
		.cus-home-area06-con .con-text{
			padding: 30px 0 0 0px;
		}
		.cus-home-area06-con .con-text .text-jp{
			padding-top: 28px;
			text-indent: -28px;
			font-size: 24px;
		}
		.cus-home-area06-con .con-text .text-en{
			font-size: 10px;
		}

		.cus-home-area06-con .con-img .img{
			height: 460px;
		}

		.cus-home-area06-bt01{
			width: 100%;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-home-area06{
			padding: 50px 0;
		}

		.cus-home-area06-con .con-title{
			top: -20px;
			left: 0%;
		}
		.cus-home-area06-con .con-title .main{
			font-size: 16px;
		}
		.cus-home-area06-con .con-title .sub{
			font-size: 32px;
		}
	
		.cus-home-area06-con .con-text{
			position: relative;
			left: -6px;
			padding: 50px 0 0 0px;
			width: 20%;
		}
		.cus-home-area06-con .con-text .text-jp{
			padding-top: 40px;
			text-indent: -40px;
			font-size: 18px;
		}
		.cus-home-area06-con .con-text .text-en{
			font-size: 6px;
		}

		.cus-home-area06-con .con-img .img{
			height: 300px;
		}

		.cus-home-area06-bt01{
			width: 100%;
		}
	}


/* 会社概要 */
	.cus-company-area01-text{
		padding-right: 40px;
	}
	.cus-company-area01-sign{
		display: flex;
		flex-direction: row-reverse;
		color: #3d8078;
	}

	.cus-company-area01-img{
		position: relative;
		top: -40px;/* 縦位置少し調整 */
		padding: 35px 35px 0 0;
		margin: 0;
		width: 100%;
		height: 450px;
	}
	.cus-company-area01-img::before{
		content: '';
		position: absolute;
		top: 0px;
		right: 0px;
		background-color: #f0f7f6;
		width: 96%;
		height: 94%;
		z-index: -1;

		clip-path: polygon(
			0% 80px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
			100% 0%,/* 右上：右端の上（0px） */
			100% 100%,/* 右下：右端の下 */
			0% 100%/* 左下：左端の下 */
		);
	}
	.cus-company-area01-img img{
		width: 100%; /* 任意の横幅 */
		height: 480px; /* 任意の高さ */
		object-fit: cover;

		clip-path: polygon(
			0% 80px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
			100% 0%,/* 右上：右端の上（0px） */
			100% 100%,/* 右下：右端の下 */
			0% 100%/* 左下：左端の下 */
		);
	}
	@media screen and (max-width: 1619px) {
		.cus-company-area01-text{
			padding-right: 20px;
		}
	
		.cus-company-area01-img{
			top: -20px;/* 縦位置少し調整 */
			padding: 30px 30px 0 0;
			height: 450px;
		}
		.cus-company-area01-img::before{
			clip-path: polygon(
				0% 60px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-company-area01-img img{
			height: 450px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 60px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}
	@media (max-width: 991.98px) {
		.cus-company-area01-text{
			padding-right: 0px;
		}
	
		.cus-company-area01-img{
			top: -20px;/* 縦位置少し調整 */
			padding: 25px 25px 0 0;
			height: 40vw;
		}
		.cus-company-area01-img::before{
			clip-path: polygon(
				0% 40px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-company-area01-img img{
			height: 40vw;
	
			clip-path: polygon(
				0% 40px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}
	@media print {
		.cus-company-area01-text{
			padding-right: 0px;
		}
	
		.cus-company-area01-img{
			top: -20px;/* 縦位置少し調整 */
			padding: 20px 20px 0 0;
			height: 40vw;
		}
		.cus-company-area01-img::before{
			clip-path: polygon(
				0% 30px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-company-area01-img img{
			height: 52vw;
	
			clip-path: polygon(
				0% 30px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}
	@media screen and (max-width: 767px) {
		.cus-company-area01-text{
			padding-right: 0px;
			margin-bottom: 40px;
		}
	
		.cus-company-area01-img{
			top: 0px;/* 縦位置少し調整 */
			padding: 15px 15px 0 0;
			height: 80vw;
		}
		.cus-company-area01-img::before{
			clip-path: polygon(
				0% 50px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-company-area01-img img{
			height: 80vw;
	
			clip-path: polygon(
				0% 50px,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				100% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}


/* area02 */
	.cus-company-area02-policy{
		position: relative;
		display: flex;
	}
	.cus-company-area02-policy .text{
		position: relative;
		padding-right: 60px;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 20px;
	}
	.cus-company-area02-policy .text::first-letter{
		color: #00aa96;
	}
	.cus-company-area02-policy .text::before{
		content: '';
		position: absolute;
		top: 0px;
		right: 30px;
		background-color: #00aa96;
		width: 1px;
		height: 100%;
		transform: rotate(45deg);
	}
	.cus-company-area02-policy .number{
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 50px;
		color: #00aa96;
	}

	.cus-company-area02-text{
		border: #00aa96 solid 1px;
		padding: 20px;
	}
	@media screen and (max-width: 1619px) {
		.cus-company-area02-policy .text{
			padding-right: 50px;
			font-size: 19px;
		}
		.cus-company-area02-policy .text::before{
			right: 25px;
			height: 110%;
		}
		.cus-company-area02-policy .number{
			font-size: 42px;
		}
	
		.cus-company-area02-text{
			padding: 15px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-company-area02-policy .text{
			padding-right: 40px;
			font-size: 18px;
		}
		.cus-company-area02-policy .text::before{
			right: 20px;
			height: 120%;
		}
		.cus-company-area02-policy .number{
			font-size: 36px;
		}
	
		.cus-company-area02-text{
			padding: 15px;
		}
	}
	@media print {
		.cus-company-area02-policy .text{
			padding-right: 25px;
			font-size: 16px;
		}
		.cus-company-area02-policy .text::before{
			right: 12px;
			height: 130%;
		}
		.cus-company-area02-policy .number{
			font-size: 28px;
		}
	
		.cus-company-area02-text{
			padding: 15px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-company-area02-policy .text{
			padding-right: 50px;
			font-size: 19px;
		}
		.cus-company-area02-policy .text::before{
			right: 25px;
			height: 110%;
		}
		.cus-company-area02-policy .number{
			font-size: 42px;
		}
	
		.cus-company-area02-text{
			margin: 0 3%;
			padding: 15px;
			width: 94%;
		}
	}


/* area03 */
	.cus-company-area03-list{
		display: flex;
		flex-wrap: wrap;
		text-align: justify;
		text-justify: inter-ideograph;
  }
	.cus-company-area03-list li{
		position: relative;
		padding: 0 30px 5px 0;
	}
	.cus-company-area03-list li::before{
		content: '・';
	}

	.cus-company-area03-img01 .img{
		overflow: hidden;
		position: relative;
		margin: 0;
		width: 100%;
		height: 50vw;
		max-height: 500px;
	}
	.cus-company-area03-img01 .img::after{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #30b7a8;
		transform: translateX(-101%); /* 左側に待機 */
		z-index: 3;
	}
	.cus-company-area03-img01 .img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		opacity: 0;
		transition: opacity 0.01s 0.6s;
	}

	.cus-company-area03-img01.is-active .img img{
		opacity: 1;
	}
	.cus-company-area03-img01.is-active .img::after{
		animation: revealLTR 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
	}
	@media screen and (max-width: 767px) {
		.cus-company-area03-list{
			display: block;
		}
		.cus-company-area03-list li{
			padding: 0 0 5px 0;
		}
	}


/* area04 */
	.cus-company-area04-text01{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		gap: 20px;
	}
	.cus-company-area04-text01 .text01-title{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 160px;
		background-color: #3d8078;
		border-radius: 6px;
		padding: 12px 0;
		margin: 0;
		font-weight: 700;
		color: white;
		text-align: center;
	}
	.cus-company-area04-text01 .text01-honbun{
		display: flex;
		align-items: center;
		flex: 1;
		margin: 0;
	}

	.cus-company-area04-text02{
		border: #00aa96 solid 1px;
		padding: 10px;
	}
	@media screen and (max-width: 1619px) {
		.cus-company-area04-text01 .text01-title{
			width: 10vw;
		}
	}
	@media (max-width: 991.98px) {
		.cus-company-area04-text01 .text01-title{
			padding: 10px 0;
			width: 70px;
		}
	}
	@media print {
		.cus-company-area04-text01 .text01-title{
			padding: 8px 0;
			width: 70px;
		}
	}
	@media screen and (max-width: 767px) {	
		.cus-company-area04-text01 .text01-title{
			padding: 10px 0;
			width: 80px;
		}

		.cus-company-area04-text02{
			margin-bottom: 20px;
		}
	}


/* 事業内容 */
	.cus-service-area01-text{
		position: relative;
		left: -50px;
		padding-left: 40px;
	}

	.cus-service-area01-img{
		position: relative;
		top: -20px;/* 縦位置少し調整 */
		padding: 35px 35px 0 0;
		margin: 0;
		width: 100%;
		height: 400px;
	}
	.cus-service-area01-img::before{
		content: '';
		position: absolute;
		top: 0px;
		right: 0px;
		background-color: #f0f7f6;
		width: 96%;
		height: 96%;
		z-index: -1;

		clip-path: polygon(
			0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
			100% 0%,/* 右上：右端の上（0px） */
			80% 100%,/* 右下：右端の下 */
			0% 100%/* 左下：左端の下 */
		);
	}
	.cus-service-area01-img img{
		width: 100%; /* 任意の横幅 */
		height: 400px; /* 任意の高さ */
		object-fit: cover;

		clip-path: polygon(
			0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
			100% 0%,/* 右上：右端の上（0px） */
			80% 100%,/* 右下：右端の下 */
			0% 100%/* 左下：左端の下 */
		);
	}
	@media screen and (max-width: 1619px) {
		.cus-service-area01-text{
			left: -40px;
			padding-left: 20px;
		}
	
		.cus-service-area01-img{
			top: -10px;
			padding: 30px 30px 0 0;
			height: 360px;
		}
		.cus-service-area01-img::before{
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				85% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-service-area01-img img{
			height: 360px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				85% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}
	@media (max-width: 991.98px) {
	.cus-service-area01-text{
			left: -20px;
			padding-left: 0;
		}
	
		.cus-service-area01-img{
			top: -10px;
			padding: 25px 25px 0 0;
			height: 300px;
		}
		.cus-service-area01-img::before{
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				90% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-service-area01-img img{
			height: 300px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				90% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}
	@media print {
	.cus-service-area01-text{
			left: -20px;
			padding-left: 0;
		}
	
		.cus-service-area01-img{
			top: 0px;
			padding: 20px 20px 0 0;
			height: 260px;
		}
		.cus-service-area01-img::before{
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				95% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-service-area01-img img{
			height: 260px; /* 任意の高さ */
	
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				95% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}
	@media screen and (max-width: 767px) {
		.cus-service-area01-text{
			left: 0px;
			padding-left: 0px;
			margin-bottom: 30px;
		}
	
		.cus-service-area01-img{
			top: 0px;/* 縦位置少し調整 */
			padding: 15px 15px 0 0;
			height: 56vw;
		}
		.cus-service-area01-img::before{
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				90% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
		.cus-service-area01-img img{
			height: 56vw;
			clip-path: polygon(
				0% 0%,/* 左上：左から0%, 上から80px（ここだけ下げる） */
				100% 0%,/* 右上：右端の上（0px） */
				90% 100%,/* 右下：右端の下 */
				0% 100%/* 左下：左端の下 */
			);
		}
	}


/* area02 */
	.cus-service-area02-point{
		overflow: hidden;
		padding: 0 15px 15px 15px;
	}
	.cus-service-area02-point li{
		display: flex;
		align-items: center;
		margin-bottom: 60px;
	}
	.cus-service-area02-point li:nth-child(2n){
		flex-direction: row-reverse;
	}
	.cus-service-area02-point li:last-child{
		margin-bottom: 0px;
	}

	.cus-service-area02-point .point-number{
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background-color: white;
		border-radius: 50%;
		width: 156px;
		height: 156px;
	}
	.cus-service-area02-point .point-number::before{
		content: '';
		position: absolute;
		bottom: -15px;
		right: -15px;
		background-color: #f0f7f6;
		border-radius: 50%;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.cus-service-area02-point .point-number.reverse::before{
		left: -15px;
	}
	.cus-service-area02-point .point-number .point{
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 28px;
		color: white;
		line-height: 1;
		letter-spacing: 0.1em;
		text-shadow: 
			1px 1px 0 #00aa96,
			-1px 1px 0 #00aa96,
			1px -1px 0 #00aa96,
			-1px -1px 0 #00aa96;
	}
	.cus-service-area02-point .point-number .number{
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 80px;
		color: #00aa96;
		line-height: 1;
	}

	.cus-service-area02-point .point-text{
		padding-left: 60px;
	}
	.cus-service-area02-point .point-text.reverse{
		padding-left: 0px;
		padding-right: 60px;
	}
	@media screen and (max-width: 1619px) {
		.cus-service-area02-point{
			padding: 0 12px 12px 12px;
		}
		.cus-service-area02-point li{
			margin-bottom: 50px;
		}
	
		.cus-service-area02-point .point-number{
			width: 140px;
			height: 140px;
		}
		.cus-service-area02-point .point-number::before{
			bottom: -12px;
			right: -12px;
		}
		.cus-service-area02-point .point-number.reverse::before{
			left: -12px;
		}
		.cus-service-area02-point .point-number .point{
			font-size: 24px;
		}
		.cus-service-area02-point .point-number .number{
			font-size: 60px;
		}
	
		.cus-service-area02-point .point-text{
			padding-left: 45px;
		}
		.cus-service-area02-point .point-text.reverse{
			padding-right: 45px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-service-area02-point{
			padding: 0 10px 10px 10px;
		}
		.cus-service-area02-point li{
			margin-bottom: 40px;
		}
	
		.cus-service-area02-point .point-number{
			width: 100px;
			height: 100px;
		}
		.cus-service-area02-point .point-number::before{
			bottom: -10px;
			right: -10px;
		}
		.cus-service-area02-point .point-number.reverse::before{
			left: -10px;
		}
		.cus-service-area02-point .point-number .point{
			font-size: 20px;
		}
		.cus-service-area02-point .point-number .number{
			font-size: 46px;
		}
	
		.cus-service-area02-point .point-text{
			padding-left: 30px;
		}
		.cus-service-area02-point .point-text.reverse{
			padding-right: 30px;
		}
	}
	@media print {
		.cus-service-area02-point{
			padding: 0 10px 10px 10px;
		}
		.cus-service-area02-point li{
			margin-bottom: 40px;
		}
	
		.cus-service-area02-point .point-number{
			width: 70px;
			height: 70px;
		}
		.cus-service-area02-point .point-number::before{
			bottom: -10px;
			right: -10px;
		}
		.cus-service-area02-point .point-number.reverse::before{
			left: -10px;
		}
		.cus-service-area02-point .point-number .point{
			font-size: 16px;
		}
		.cus-service-area02-point .point-number .number{
			font-size: 32px;
		}
	
		.cus-service-area02-point .point-text{
			padding-left: 20px;
		}
		.cus-service-area02-point .point-text.reverse{
			padding-right: 20px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-service-area02-point{
			padding: 0 10px 10px 10px;
		}
		.cus-service-area02-point li{
			display: block;
			margin-bottom: 30px;
			text-align: center;
		}
		.cus-service-area02-point li:last-child{
			margin-bottom: 0px;
		}
	
		.cus-service-area02-point .point-number{
			margin: 0 auto 30px auto;
			width: 100px;
			height: 100px;
		}
		.cus-service-area02-point .point-number::before{
			bottom: -10px;
			right: -10px;
		}
		.cus-service-area02-point .point-number.reverse::before{
			left: 10px;
		}
		.cus-service-area02-point .point-number .point{
			font-size: 16px;
		}
		.cus-service-area02-point .point-number .number{
			font-size: 32px;
		}
	
		.cus-service-area02-point .point-text{
			padding-left: 0px;
			text-align: left;
		}
		.cus-service-area02-point .point-text.reverse{
			padding-right: 0px;
		}
	}


/* area03 */
	.cus-service-area03-con01{
		display: flex;
		align-items: center;
	}
	.cus-service-area03-con01 .con01-img{
		overflow: hidden;
		position: relative;
		margin: 0;
		width: 50%;
		height: 500px;
	}
	.cus-service-area03-con01 .con01-text{
		padding-left: 40px;
		width: 810px;
	}

	.cus-service-area03-con01 .con01-img .img{
		width: 100%;
		height: 500px;
	}
	.cus-service-area03-con01 .con01-img .img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		font-family: 'object-fit: cover;';
		opacity: 0;/* 初期状態非表示 */
	}
	.cus-service-area03-con01 .con01-img .title{
		position: absolute;
		top: 0px;
		left: 0px;
		background-color: #d04525;
		padding: 16px 20px;
		width: 100%;
		height: auto;
		font-size: 24px;
		font-weight: 700;
		color: white;
		text-align: right;
		z-index: 10;
		opacity: 0;/* 初期状態非表示 */
	}

	.cus-service-area03-con02{
		display: flex;
		flex-direction: row-reverse;
		align-items: center;
	}
	.cus-service-area03-con02 .con02-img{
		overflow: hidden;
		position: relative;
		margin: 0;
		width: 50%;
		height: 500px;
	}
	.cus-service-area03-con02 .con02-text{
		padding-right: 40px;
		width: 810px;
	}

	.cus-service-area03-con02 .con02-img .img{
		width: 100%;
		height: 500px;
	}
	.cus-service-area03-con02 .con02-img .img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		font-family: 'object-fit: cover;';
		opacity: 0;/* 初期状態非表示 */
	}
	.cus-service-area03-con02 .con02-img .title{
		position: absolute;
		top: 0px;
		left: 0px;
		background-color: #00a591;
		padding: 16px 20px;
		width: 100%;
		height: auto;
		font-size: 24px;
		font-weight: 700;
		color: white;
		z-index: 10;
		opacity: 0;/* 初期状態非表示 */
	}

	.cus-service-area03-con01 .con01-img::after,
	.cus-service-area03-con02 .con02-img::after{/* 以降アニメーションに関するCSS	 */
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 20;
		transform: translateX(-101%);
	}
	.cus-service-area03-con01 .con01-img::after{
		background-color: #d04525;
	}
	.cus-service-area03-con02 .con02-img::after{
		background-color: #00a591;
	}
	@keyframes service-revealBar{
		0% { transform: translateX(-101%); }
		50% { transform: translateX(0); }
		100% { transform: translateX(101%); }
	}
	@keyframes service-revealContent {
		0% { opacity: 0; }
		100% { opacity: 1; }
	}
	.cus-service-area03-con01 .con01-img.is-active::after, 
	.cus-service-area03-con02 .con02-img.is-active::after{
		animation: service-revealBar 1.2s cubic-bezier(0.19, 1, 0.22, 1) forwards;
	}
	.cus-service-area03-con01 .con01-img.is-active img,
	.cus-service-area03-con01 .con01-img.is-active .title,
	.cus-service-area03-con02 .con02-img.is-active img,
	.cus-service-area03-con02 .con02-img.is-active .title{
		animation: service-revealContent 0.1s 0.6s forwards;
	}

	.cus-service-area03-list01{
		display: flex;
	}
	.cus-service-area03-list01 .list01-title{
		display: flex;
		padding-right: 80px;
		width: auto;
		font-size: 18px;
		font-weight: 700;
	}
	.cus-service-area03-list01 .list01-text{
		position: relative;
		flex: 1;
		padding-left: 60px;
	}
	.cus-service-area03-list01 .list01-text.red::before{
		content: '';
		position: absolute;
		top: -20%;
		left: -10px;
		background-color: #d04525;
		width: 1px;
		height: 140%;
		transform: rotate(45deg);
	}
	.cus-service-area03-list01 .list01-text.green::before{
		content: '';
		position: absolute;
		top: -20%;
		left: -10px;
		background-color: #00a591;
		width: 1px;
		height: 140%;
		transform: rotate(45deg);
	}

	.cus-service-area03-list01 .list01-text .text-flex{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		padding: 0;
		margin: 0;
		list-style: none;
	}
	.cus-service-area03-list01 .list01-text .text-flex li{
		padding: 4px 8px;
		margin: 3px;
	}
	.cus-service-area03-list01 .list01-text .text-flex.red li{
		border: #d04525 solid 1px;
	}
	.cus-service-area03-list01 .list01-text .text-flex.green li{
		border: #00a591 solid 1px;
	}
	.cus-service-area03-list01 .list01-text .text-flex li:last-child{
		border: none;
		padding-left: 20px;
	}
	@media screen and (max-width: 1619px) {
		.cus-service-area03-con01 .con01-img{
			height: 400px;
		}
		.cus-service-area03-con01 .con01-text{
			padding: 0 3% 0 30px;
			width: 50%;
		}
	
		.cus-service-area03-con01 .con01-img .img{
			height: 400px;
		}
		.cus-service-area03-con01 .con01-img .title{
			padding: 14px 16px;
			font-size: 20px;
		}

		.cus-service-area03-con02 .con02-img{
			height: 400px;
		}
		.cus-service-area03-con02 .con02-text{
			padding: 0 30px 0 3%;
			width: 50%;
		}
	
		.cus-service-area03-con02 .con02-img .img{
			height: 400px;
		}
		.cus-service-area03-con02 .con02-img .title{
			padding: 14px 16px;
			font-size: 20px;
		}
	
		.cus-service-area03-list01{
			display: flex;
		}
		.cus-service-area03-list01 .list01-title{
			padding-right: 60px;
			font-size: 17px;
		}
		.cus-service-area03-list01 .list01-text{
			padding-left: 40px;
		}
		.cus-service-area03-list01 .list01-text.red::before{
			top: -20%;
			height: 140%;
		}
		.cus-service-area03-list01 .list01-text.green::before{
			top: -20%;
			height: 140%;
		}

		.cus-service-area03-list01 .list01-text .text-flex li:last-child{
			padding-left: 16px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-service-area03-con01 .con01-img{
			height: 340px;
		}
		.cus-service-area03-con01 .con01-text{
			padding: 0 3% 0 20px;
			width: 50%;
		}
	
		.cus-service-area03-con01 .con01-img .img{
			height: 340px;
		}
		.cus-service-area03-con01 .con01-img .title{
			padding: 12px 14px;
			font-size: 18px;
		}

		.cus-service-area03-con02 .con02-img{
			height: 340px;
		}
		.cus-service-area03-con02 .con02-text{
			padding: 0 20px 0 3%;
			width: 50%;
		}
	
		.cus-service-area03-con02 .con02-img .img{
			height: 340px;
		}
		.cus-service-area03-con02 .con02-img .title{
			padding: 12px 14px;
			font-size: 18px;
		}
	
		.cus-service-area03-list01{
			display: flex;
		}
		.cus-service-area03-list01 .list01-title{
			padding-right: 40px;
			font-size: 16px;
		}
		.cus-service-area03-list01 .list01-text{
			padding-left: 30px;
		}
		.cus-service-area03-list01 .list01-text.red::before{
			top: -20px;
			left: -10px;
			height: 80px;
		}
		.cus-service-area03-list01 .list01-text.green::before{
			top: -20px;
			left: -10px;
			height: 80px;
		}

		.cus-service-area03-list01 .list01-text .text-flex li{
			font-size: 14px;
		}
		.cus-service-area03-list01 .list01-text .text-flex li:last-child{
			padding-left: 14px;
		}
	}
	@media print {
		.cus-service-area03-con01 .con01-img{
			height: 340px;
		}
		.cus-service-area03-con01 .con01-text{
			padding: 0 3% 0 15px;
			width: 50%;
		}
	
		.cus-service-area03-con01 .con01-img .img{
			height: 340px;
		}
		.cus-service-area03-con01 .con01-img .title{
			padding: 12px 14px;
			font-size: 16px;
		}

		.cus-service-area03-con02 .con02-img{
			height: 340px;
		}
		.cus-service-area03-con02 .con02-text{
			padding: 0 15px 0 3%;
			width: 50%;
		}
	
		.cus-service-area03-con02 .con02-img .img{
			height: 340px;
		}
		.cus-service-area03-con02 .con02-img .title{
			padding: 12px 14px;
			font-size: 16px;
		}
	
		.cus-service-area03-list01{
			display: flex;
		}
		.cus-service-area03-list01 .list01-title{
			padding-right: 40px;
			font-size: 16px;
		}
		.cus-service-area03-list01 .list01-text{
			padding-left: 30px;
		}
		.cus-service-area03-list01 .list01-text.red::before{
			top: -20px;
			left: -10px;
			height: 80px;
		}
		.cus-service-area03-list01 .list01-text.green::before{
			top: -20px;
			left: -10px;
			height: 80px;
		}

		.cus-service-area03-list01 .list01-text .text-flex li{
			font-size: 12px;
		}
		.cus-service-area03-list01 .list01-text .text-flex li:last-child{
			padding-left: 14px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-service-area03-con01{
			display: block;
		}
		.cus-service-area03-con01 .con01-img{
			margin-bottom: 20px;
			width: auto;
			height: 50vw;
		}
		.cus-service-area03-con01 .con01-text{
			padding: 0;
			margin: 0 auto;
			width: 94%;
		}
	
		.cus-service-area03-con01 .con01-img .img{
			height: 50vw;
		}
		.cus-service-area03-con01 .con01-img .title{
			padding: 12px;
			font-size: 18px;
		}
	
		.cus-service-area03-con02{
			display: block;
		}
		.cus-service-area03-con02 .con02-img{
			margin-bottom: 20px;
			width: auto;
			height: 50vw;
		}
		.cus-service-area03-con02 .con02-text{
			padding: 0;
			margin: 0 auto;
			width: 94%;
		}
	
		.cus-service-area03-con02 .con02-img .img{
			height: 50vw;
		}
		.cus-service-area03-con02 .con02-img .title{
			padding: 12px;
			font-size: 18px;
		}
	
		.cus-service-area03-list01{
			display: block;
		}
		.cus-service-area03-list01 .list01-title{
			position: relative;
			display: block;
			padding-right: 0px;
			margin-bottom: 15px;
			font-size: 17px;
		}
		.cus-service-area03-list01 .list01-text{
			padding-left: 0px;
		}
		.cus-service-area03-list01 .list01-text.red::before{
			display: none;
		}
		.cus-service-area03-list01 .list01-text.green::before{
			display: none;
		}
	}


/* area04 */
	.cus-service-area04-map{
		position: relative;
		display: inline-block;
		padding: 160px 200px 160px 0;
		margin: 0 auto;
		text-align: start;
	}
	.cus-service-area04-map::before{
		content: '';
		position: absolute;
		top: 0px;
		left: 0px;
		background-image: url("../img/service/area04-map.png");
		background-position: right center;
		background-repeat: no-repeat;
		background-size: auto 80%;
		width: 100%;
		height: 100%;
		opacity: 0.3;
	}
	@media print {
		.cus-service-area04-map{
			padding: 80px 30% 80px 0;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-service-area04-map{
			padding: 80px 30% 80px 0;
		}
	}

/* 施工実績 */
	.works-nav-wrapper {
		position: relative;
	}

	.cus-works-nav{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		background-color: #00aa96;
		border-radius: 12px;
		padding: 6px 10px;
		margin: 0;
		list-style: none;
	}
	.cus-works-nav li{
		width: 16.666%;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 1.5px;
	}
	.cus-works-nav li .nav-link{
		flex: 1;
		text-align: center;
		background-color: white;
		border-radius: 10px;
	}
	.cus-works-nav li .nav-link a{
		overflow: hidden;
		position: relative;
		display: block;
		padding: 12px;
		color: #00aa96;
		text-decoration: none;
	}
	.cus-works-nav li .nav-link a::after{
		font-family: "Font Awesome 6 Free";
		content: "\f063";
		font-weight: 900;
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
		transition: none;
	}
	.cus-works-nav li .nav-link a:hover::after{
		animation: works-arrowScroll 0.8s forwards;
	}
	@keyframes works-arrowScroll {
    0% {
        transform: translateY(-50%);
        opacity: 1;
    }
    49% {
        transform: translateY(150%);
        opacity: 1;
    }
    50% {
        transform: translateY(-250%);
        opacity: 0; /* 移動中は見えないように */
    }
    51% {
        opacity: 1;
    }
    100% {
        transform: translateY(-50%);
        opacity: 1;
    }
	}

	.cus-works-nav.is-collapsed li:nth-child(n+13){/* アコーディオンに関するCSS */
    display: none;
	}
	@media screen and (max-width: 767px) {
    .cus-works-nav.is-collapsed li:nth-child(n+13){
    	display: flex; /* 一旦PC設定をリセット */
    }
    .cus-works-nav.is-collapsed li:nth-child(n+7){
    	display: none;
    }
	}

	.works-nav-toggle{
    display: none;
    margin-top: 20px;
    text-align: center;
	}
	.works-nav-toggle button{
    background: none;
    border: #00aa96 solid 1px;
    color: #00aa96;
    font-weight: bold;
    text-decoration: none;
    cursor: pointer;
    font-size: 16px;
    padding: 10px 20px;
    transition: opacity 0.3s;
	}
	.works-nav-toggle button:hover {
    opacity: 0.7;
    text-decoration: none;
	}
	.works-nav-toggle button::after {
    content: ' ▼';
    font-size: 0.8em;
	}
	.works-nav-toggle.is-open button::after {
		content: ' ▲';
	}
	@media screen and (max-width: 1619px) {
		.cus-works-nav{
			padding: 6px 8px;
		}
		.cus-works-nav li .nav-link a{
			padding: 10px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-works-nav{
			padding: 6px 8px;
		}
		.cus-works-nav li .nav-link a{
			padding: 10px;
		}
	}
	@media print {
		.cus-works-nav{
			display: none;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-works-nav{
			border-radius: 10px;
			padding: 6px;
		}
		.cus-works-nav li{
			width: 33.3%;
		}
		.cus-works-nav li .nav-link{
			border-radius: 8px;
		}
		.cus-works-nav li .nav-link a{
			padding: 10px;
		}
	}


/* area01 */
	.cus-works-area01-year{
		position: relative;
		display: inline-block;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 28px;
		color: #3d8078;
	}
	.cus-works-area01-year::before{
		content: '';
		position: absolute;
		top: 50%;
		right: -220px;
		background-color: #3d8078;
		width: 200px;
		height: 1px;
	}
	@media screen and (max-width: 1619px) {
		.cus-works-area01-year{
			font-size: 24px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-works-area01-year{
			font-size: 22px;
		}
		.cus-works-area01-year::before{
			right: -180px;
			width: 160px;
		}
	}
	@media print {
		.cus-works-area01-year{
			font-size: 18px;
		}
		.cus-works-area01-year::before{
			right: -160px;
			width: 140px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-works-area01-year{
			font-size: 18px;
		}
		.cus-works-area01-year::before{
			right: -160px;
			width: 140px;
		}
	}


/* 施工の流れ */
	.cus-flow-area01-text01{
    overflow: hidden;
		position: relative;
		background-color: #fff;
		visibility: hidden;
	}
	.cus-flow-area01-text01::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: url("../img/flow/area01-photo01.jpg");
		background-position: center center;
		background-size: cover;
		opacity: 0; /* 最初は隠す */
		transition: opacity 0.1s ease 0.5s; /* 帯が画面を覆う瞬間に表示 */
		z-index: 1;
	}
	.cus-flow-area01-text01 .text01-main{
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 40px;
		font-weight: 700;
		color: white;
		height: 600px;
		text-align: center;
		text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
		opacity: 0;
		transition: opacity 0.3s ease 0.6s;
		z-index: 3;
	}
	.cus-flow-area01-text01::after{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #0052a5; /* 指定の青色 */
		transform: scaleX(0);
		transform-origin: left;
		z-index: 5;
	}
	.cus-flow-area01-text01.is-active{
		visibility: visible;
	}
	.cus-flow-area01-text01.is-active::before {
		opacity: 1; /* 帯が走るタイミングで背景を表示 */
	}
	.cus-flow-area01-text01.is-active::after{
		animation: flow-reveal-bar 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
	}
	.cus-flow-area01-text01.is-active .text01-main{
		opacity: 1;
	}
	@keyframes flow-reveal-bar{
    0% {
			transform: scaleX(0);
			transform-origin: left;
    }
    50% {
			transform: scaleX(1);
			transform-origin: left;
    }
    51% {
			transform: scaleX(1);
			transform-origin: right;
    }
    100% {
			transform: scaleX(0);
			transform-origin: right;
    }
	}
	@media screen and (max-width: 1619px) {
		.cus-flow-area01-text01 .text01-main{
			font-size: 34px;
			height: 520px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-flow-area01-text01 .text01-main{
			font-size: 28px;
			height: 440px;
		}
	}
	@media print {
		.cus-flow-area01-text01 .text01-main{
			font-size: 20px;
			height: 360px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-flow-area01-text01 .text01-main{
			font-size: 18px;
			height: 70vw;
			min-height: 280px;
			text-align: left;
		}
	}

	.cus-flow-area01-step{
		display: flex;
		justify-content: space-between;
		gap: 4px;
		padding: 0;
		margin: 0;
		list-style: none;
	}
	.cus-flow-area01-step li{
		flex: 1;
	}
	.cus-flow-area01-step li a{
		overflow: hidden;
		display: block;
		border: #00a591 solid 1px;
		border-radius: 150px;
		padding: 2px;
		height: 420px;
		color: inherit;
		text-decoration: none;
		text-align: center;
	}

	.cus-flow-area01-switch{
		position: relative;
		width: 100%;
		height: 100%;
		transition: background-color 0.4s ease;
	}
	.cus-flow-area01-switch .switch-number{
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background-color: #00a591;
		border-radius: 150px;
		width: 100%;
		aspect-ratio: 1 / 1;
		color: white;
		z-index: 2;
	}
	.cus-flow-area01-switch .switch-number .text{
		display: block;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 24px;
		line-height: 2;
	}
	.cus-flow-area01-switch .switch-number .number{
		display: block;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 72px;
		line-height: 1.2;
	}
	.cus-flow-area01-switch .switch-text01{
		position: relative;
		display: table;
		width: 100%;
		height: 100px;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.4;
		text-align: center;
		z-index: 1;
	}
	.cus-flow-area01-switch .switch-text01 .tb{
		display: table-cell;
		vertical-align: middle;
	}
	.cus-flow-area01-switch .switch-img{
		display: block;
		position: relative;
		margin: 0;
	}

	.cus-flow-area01-switch .switch-number,
	.cus-flow-area01-switch .switch-text01,
	.cus-flow-area01-switch .switch-img{/* 動作に関する動き */
		transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.6s ease;
	}
	.cus-flow-area01-switch:hover .switch-number{
		transform: translateY(200px); 
	}
	.cus-flow-area01-switch:hover .switch-text01{
		transform: translateY(-190px);
	}
	.cus-flow-area01-switch:hover .switch-img{
		transform: translateY(-200px);
	}
	.cus-flow-area01-switch:hover{
		background-color: #e8fcfa;
		transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.6s ease;
	}
	@media screen and (max-width: 1619px) {
		.cus-flow-area01-stepsize{
			width: 1500px;
		}

		.cus-flow-area01-step li a{
			height: 410px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 22px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 68px;
		}
		.cus-flow-area01-switch .switch-text01{
			font-size: 18px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(199px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-190px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-200px);
		}
	}
	@media screen and (max-width: 1519px) {
		.cus-flow-area01-stepsize{
			width: 1400px;
		}

		.cus-flow-area01-step li a{
			height: 400px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 21px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 66px;
		}
		.cus-flow-area01-switch .switch-text01{
			font-size: 18px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(202px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-180px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-190px);
		}
	}
	@media screen and (max-width: 1419px) {
		.cus-flow-area01-stepsize{
			width: 1300px;
		}

		.cus-flow-area01-step li a{
			height: 380px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 20px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 64px;
		}
		.cus-flow-area01-switch .switch-text01{
			font-size: 17px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(197px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-170px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-180px);
		}
	}
	@media screen and (max-width: 1319px) {
		.cus-flow-area01-stepsize{
			width: 1200px;
		}

		.cus-flow-area01-step li a{
			height: 360px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 19px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 62px;
		}
		.cus-flow-area01-switch .switch-text01{
			height: 90px;
			font-size: 17px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(192px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-150px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-160px);
		}
	}
	@media screen and (max-width: 1219px) {
		.cus-flow-area01-stepsize{
			width: 1100px;
		}

		.cus-flow-area01-step li a{
			height: 340px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 18px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 58px;
		}
		.cus-flow-area01-switch .switch-text01{
			height: 80px;
			font-size: 16px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(186px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-130px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-140px);
		}
	}
	@media screen and (max-width: 1119px) {
		.cus-flow-area01-stepsize{
			width: 974px;
		}

		.cus-flow-area01-step li a{
			height: 320px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 17px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 52px;
		}
		.cus-flow-area01-switch .switch-text01{
			height: 70px;
			font-size: 15px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(184px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-100px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-100px);
		}
	}
	@media (max-width: 991.98px) {
		.cus-flow-area01-stepsize{
			width: 750px;
		}

		.cus-flow-area01-step li a{
			height: 260px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 16px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 42px;
		}
		.cus-flow-area01-switch .switch-text01{
			height: 76px;
			font-size: 15px;
		}
		.cus-flow-area01-switch .switch-img img{
			width: 80px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(154px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-78px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-78px);
		}
	}
	@media print {
		.cus-flow-area01-stepsize{
			width: 750px;
		}

		.cus-flow-area01-step li a{
			height: 260px;
		}

		.cus-flow-area01-switch .switch-number .text{
			font-size: 14px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 34px;
		}
		.cus-flow-area01-switch .switch-text01{
			height: 76px;
			font-size: 13px;
		}
		.cus-flow-area01-switch .switch-img img{
			width: 80px;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(154px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(-78px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(-78px);
		}
	}
	@media screen and (max-width: 767px) {
		.cus-flow-area01-stepsize{
			width: 100%;
		}

		.cus-flow-area01-step{
			display: block;
			gap: 0px;
		}
		.cus-flow-area01-step li{
			margin: 0 auto 6px auto;
			width: 94%;
		}
		.cus-flow-area01-step li a{
			height: auto;
		}
	
		.cus-flow-area01-switch{
			display: flex;
			align-items: center;
			width: 100%;
			height: 70px;
		}
		.cus-flow-area01-switch .switch-number{
			width: 100px;
		}
		.cus-flow-area01-switch .switch-number .text{
			font-size: 13px;
		}
		.cus-flow-area01-switch .switch-number .number{
			font-size: 20px;
		}
		.cus-flow-area01-switch .switch-text01{
			display: block;
			padding: 0 20px;
			height: auto;
			font-size: 16px;
			text-align: left;
		}
		.cus-flow-area01-switch .switch-img{
			padding-right: 10px;
			margin-left: auto;
		}

		.cus-flow-area01-switch:hover .switch-number{
			transform: translateY(0px); 
		}
		.cus-flow-area01-switch:hover .switch-text01{
			transform: translateY(0px);
		}
		.cus-flow-area01-switch:hover .switch-img{
			transform: translateY(0px);
		}
	}


/* area02 */
	.cus-flow-area02-con{
		position: relative;
		padding: 80px 0 0 80px;
	}
	.cus-flow-area02-con .con-step{
		position: absolute;
		top: 0px;
		left: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background-color: #00a591;
		border-radius: 150px;
		width: 160px;
		aspect-ratio: 1 / 1;
		color: white;
		z-index: 3;
	}
	.cus-flow-area02-con .con-step .text{
		display: block;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 22px;
		line-height: 1.6;
	}
	.cus-flow-area02-con .con-step .number{
		display: block;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		font-size: 66px;
		line-height: 1.2;
	}

	.cus-flow-area02-box{
		display: flex;
		align-items: center;
		border: #3d8078 solid 1px;
		background-color: #ebfaf7;
		padding: 0 0 0 100px;
	}
	.cus-flow-area02-box .box-text{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		padding-right: 30px;
		width: 60%;
	}
	.cus-flow-area02-box .box-img{
		width: 40%;
	}
	.cus-flow-area02-box .box-img .img{
		margin: 0;
		width: 100%;
		height: 360px;
	}
	.cus-flow-area02-box .box-img .img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		font-family: 'object-fit: cover;';
	}

	.cus-flow-area02-box .box-text .box-title{
		display: inline !important;
		font-size: 34px;
	}
	.cus-flow-area02-box .box-text .box-text{
		padding-top: 20px;
		width: 100%;
	}
	@media screen and (max-width: 1619px) {
		.cus-flow-area02-con{
			position: relative;
			padding: 70px 0 0 70px;
		}
		.cus-flow-area02-con .con-step{
			width: 140px;
		}
		.cus-flow-area02-con .con-step .text{
			font-size: 20px;
		}
		.cus-flow-area02-con .con-step .number{
			font-size: 60px;
		}
	
		.cus-flow-area02-box{
			padding: 0 0 0 80px;
		}
		.cus-flow-area02-box .box-text{
			padding-right: 20px;
		}
		.cus-flow-area02-box .box-img .img{
			height: 320px;
		}
		.cus-flow-area02-box .box-text .box-title{
			font-size: 30px;
		}
		.cus-flow-area02-box .box-text .box-text{
			padding-top: 15px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-flow-area02-con{
			position: relative;
			padding: 60px 0 0 60px;
		}
		.cus-flow-area02-con .con-step{
			width: 120px;
		}
		.cus-flow-area02-con .con-step .text{
			font-size: 18px;
		}
		.cus-flow-area02-con .con-step .number{
			font-size: 50px;
		}
	
		.cus-flow-area02-box{
			padding: 0 0 0 40px;
		}
		.cus-flow-area02-box .box-text{
			padding-right: 15px;
		}
		.cus-flow-area02-box .box-img .img{
			height: 300px;
		}
		.cus-flow-area02-box .box-text .box-title{
			font-size: 26px;
		}
		.cus-flow-area02-box .box-text .box-text{
			padding-top: 15px;
		}
	}
	@media print {
		.cus-flow-area02-con{
			position: relative;
			padding: 50px 0 0 50px;
		}
		.cus-flow-area02-con .con-step{
			width: 100px;
		}
		.cus-flow-area02-con .con-step .text{
			font-size: 15px;
		}
		.cus-flow-area02-con .con-step .number{
			font-size: 34px;
		}
	
		.cus-flow-area02-box{
			padding: 0 0 0 20px;
		}
		.cus-flow-area02-box .box-text{
			padding-right: 10px;
		}
		.cus-flow-area02-box .box-img .img{
			height: 280px;
		}
		.cus-flow-area02-box .box-text .box-title{
			font-size: 20px;
		}
		.cus-flow-area02-box .box-text .box-text{
			padding-top: 15px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-flow-area02-con{
			padding: 40px 0 0 20px;
		}
		.cus-flow-area02-con .con-step{
			width: 80px;
		}
		.cus-flow-area02-con .con-step .text{
			font-size: 16px;
		}
		.cus-flow-area02-con .con-step .number{
			font-size: 28px;
		}
	
		.cus-flow-area02-box{
			display: block;
			padding: 50px 0 0 0;
		}
		.cus-flow-area02-box .box-text{
			padding: 0px;
			margin: 0 auto 15px auto;
			width: 94%;
		}
		.cus-flow-area02-box .box-img{
			width: auto;
		}
		.cus-flow-area02-box .box-img .img{
			height: 60vw;
		}
	
		.cus-flow-area02-box .box-text .box-title{
			font-size: 18px;
		}
		.cus-flow-area02-box .box-text .box-text{
			padding-top: 15px;
		}
	}


/* 採用情報 */
	.cus-recruit-area01-con{
		display: flex;
		flex-direction: row-reverse;
		align-items: center;
	}
	.cus-recruit-area01-con .con-text{
		padding-left: 30px;
		width: 45%;
	}
	.cus-recruit-area01-con .con-photo{
		flex: 1;
		display: flex;
	}
	.cus-recruit-area01-con .con-photo .img01{
		position: relative;
		padding: 35px 35px 0 0;
		margin: 0;
		width: 50%;
		height: 460px;
	}
	.cus-recruit-area01-con .con-photo .img01::before{
		content: '';
		position: absolute;
		top: 14%;
		right: 0px;
		background-color: #f0f7f6;
		width: 94%;
		height: 90%;
		z-index: -1;

		clip-path: polygon(
			0% 0%,
			100% 0%,
			calc(100% - 40px) 100%,
			0% 100%/* 左下 */
		);
	}
	.cus-recruit-area01-con .con-photo .img01 img{
		width: 100%; /* 任意の横幅 */
		height: 400px; /* 任意の高さ */
		object-fit: cover;

		clip-path: polygon(
			0% 0%,
			100% 0%,
			calc(100% - 40px) 100%,
			0% 100%/* 左下 */
		);
	}

	.cus-recruit-area01-con .con-photo .img02{
		position: relative;
		left: -30px;
		padding: 35px 35px 0 0;
		margin: 60px 0 0 0;
		width: 50%;
		height: 460px;
	}
	.cus-recruit-area01-con .con-photo .img02::before{
		content: '';
		position: absolute;
		top: 14%;
		right: 0px;
		background-color: #f0f7f6;
		width: 94%;
		height: 90%;
		z-index: -1;

		clip-path: polygon(
			40px 0%,
			100% 0%,
			100% 100%,
			0% 100%
		);
	}
	.cus-recruit-area01-con .con-photo .img02 img{
		width: 100%; /* 任意の横幅 */
		height: 400px; /* 任意の高さ */
		object-fit: cover;

		clip-path: polygon(
			40px 0%,
			100% 0%,
			100% 100%,
			0% 100%
		);
	}

	.cus-recruit-area01-text01{
		position: relative;
		display: inline-block;
		font-size: 28px;
		font-weight: 700;
		color: #3d8078;
	}
	.cus-recruit-area01-text01::before{
		content: '';
		position: absolute;
		top: 50%;
		right: -220px;
		background-color: #3d8078;
		width: 200px;
		height: 1px;
	}

	.cus-recruit-area01-list01{
		display: flex;
		flex-wrap: wrap;
		padding: 0;
		margin: 0;
		list-style: none;
	}
	.cus-recruit-area01-list01 li{
		position: relative;
		width: 50%;
		padding-left: 70px;
		margin: 15px 0;
	}
	.cus-recruit-area01-list01 li::before{
		content: '';
		position: absolute;
		top: 50%;
		left: 0px;
		background-image: url("../img/site/ic-check.svg");
		background-size: cover;
		margin-top: -21px;
		width: 50px;
		height: 42px;
		z-index: 3;
	}
	@media screen and (max-width: 1619px) {
		.cus-recruit-area01-con .con-text{
			padding-left: 20px;
		}
		.cus-recruit-area01-con .con-photo .img01{
			padding: 30px 30px 0 0;
			height: 420px;
		}

		.cus-recruit-area01-con .con-photo .img01 img{
			height: 360px;
			object-fit: cover;
		}
	
		.cus-recruit-area01-con .con-photo .img02{
			padding: 30px 30px 0 0;
			margin: 40px 0 0 0;
			height: 380px;
		}
		.cus-recruit-area01-con .con-photo .img02 img{
			height: 380px;
		}

		.cus-recruit-area01-text01{
			font-size: 24px;
		}
		.cus-recruit-area01-text01::before{
			right: -200px;
			width: 180px;
		}

		.cus-recruit-area01-list01 li{
			padding-left: 60px;
			margin: 13px 0;
		}
		.cus-recruit-area01-list01 li::before{
			margin-top: calc(-21px * 0.8);
			width: calc(50px * 0.8);
			height: calc(42px * 0.8);
		}
	}
	@media (max-width: 991.98px) {
		.cus-recruit-area01-con .con-text{
			padding-left: 0px;
		}
		.cus-recruit-area01-con .con-photo .img01{
			padding: 25px 25px 0 0;
			height: 340px;
		}

		.cus-recruit-area01-con .con-photo .img01 img{
			height: 300px;
			object-fit: cover;
		}
	
		.cus-recruit-area01-con .con-photo .img02{
			padding: 25px 25px 0 0;
			margin: 40px 0 0 0;
			height: 300px;
		}
		.cus-recruit-area01-con .con-photo .img02 img{
			height: 300px;
		}

		.cus-recruit-area01-text01{
			font-size: 20px;
		}
		.cus-recruit-area01-text01::before{
			right: -180px;
			width: 160px;
		}
		.cus-recruit-area01-list01 li{
			padding-left: 50px;
			margin: 11px 0;
		}
		.cus-recruit-area01-list01 li::before{
			margin-top: calc(-21px * 0.6);
			width: calc(50px * 0.6);
			height: calc(42px * 0.6);
		}
	}
	@media print {
		.cus-recruit-area01-con .con-text{
			padding-left: 0px;
		}
		.cus-recruit-area01-con .con-photo .img01{
			padding: 20px 20px 0 0;
			height: 280px;
		}

		.cus-recruit-area01-con .con-photo .img01 img{
			height: 240px;
			object-fit: cover;
		}
	
		.cus-recruit-area01-con .con-photo .img02{
			padding: 20px 20px 0 0;
			margin: 40px 0 0 0;
			height: 240px;
		}
		.cus-recruit-area01-con .con-photo .img02 img{
			height: 240px;
		}

		.cus-recruit-area01-text01{
			font-size: 17px;
		}
		.cus-recruit-area01-text01::before{
			right: -160px;
			width: 140px;
		}
		.cus-recruit-area01-list01 li{
			padding-left: 30px;
			margin: 10px 0;
		}
		.cus-recruit-area01-list01 li::before{
			margin-top: calc(-21px * 0.5);
			width: calc(50px * 0.5);
			height: calc(42px * 0.5);
		}
	}
	@media screen and (max-width: 767px) {
		.cus-recruit-area01-con{
			display: block;
		}
		.cus-recruit-area01-con .con-text{
			padding-left: 0px;
			margin-bottom: 15px;
			width: auto;
		}
		.cus-recruit-area01-con .con-photo{
			padding-bottom: 15px;
		}
		.cus-recruit-area01-con .con-photo .img01{
			padding: 15px 15px 0 0;
			height: 50vw;
		}
		.cus-recruit-area01-con .con-photo .img01 img{
			height: 46vw;
		}
	
		.cus-recruit-area01-con .con-photo .img02{
			left: -30px;
			padding: 15px 15px 0 0;
			margin: 4vw 0 0 0;
			height: 46vw;
		}
		.cus-recruit-area01-con .con-photo .img02::before{
			height: 100%;
		}
		.cus-recruit-area01-con .con-photo .img02 img{
			height: 46vw;
		}
	
		.cus-recruit-area01-text01{
			font-size: 18px;
		}
		.cus-recruit-area01-text01::before{
			right: -100px;
			width: 80px;
		}
	
		.cus-recruit-area01-list01{
			display: block;
		}
		.cus-recruit-area01-list01 li{
			width: auto;
			padding-left: 40px;
			margin: 10px 0;
		}
		.cus-recruit-area01-list01 li::before{
			margin-top: calc(-21px * 0.5);
			width: calc(50px * 0.5);
			height: calc(42px * 0.5);
		}
	}


/* area02 */
	.cus-recruit-area02-con{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
	}
	.cus-recruit-area02-con .con-box{
		box-sizing: content-box;
		padding-right: 2%;
		margin-bottom: 40px;
		width: 32%;
	}
	.cus-recruit-area02-con .con-box:nth-child(3){
		padding-right: 0%;
	}
	.cus-recruit-area02-con .con-box:nth-child(4),
	.cus-recruit-area02-con .con-box:nth-child(5){
		width: 49%;
	}
	.cus-recruit-area02-con .con-box:nth-child(5){
		padding-right: 0%;
	}

	.cus-recruit-area02-col{
		position: relative;
		padding: 25px 0 0 25px;
	}
	.cus-recruit-area02-col .col-title{
		position: absolute;
		top: 0px;
		left: 0px;
		background-color: #00a591;
		padding: 6px 15px;
		font-size: 24px;
		font-weight: 700;
		color: white;
	}
	.cus-recruit-area02-col .col-text{
		background-color: #f0f7f6;
		padding: 40px 15px 30px 15px;
	}
	.cus-recruit-area02-list01{
		padding: 0;
		margin: 0;
		list-style: none;
	}
	.cus-recruit-area02-list01 li{
		position: relative;
		padding-left: 70px;
		margin: 20px 0;
		font-size: 18px;
		font-weight: 700;
	}
	.cus-recruit-area02-list01 li::before{
		content: '';
		position: absolute;
		top: 50%;
		left: 0px;
		background-image: url("../img/site/ic-check.svg");
		background-size: cover;
		margin-top: -21px;
		width: 50px;
		height: 42px;
		z-index: 3;
	}
	.cus-recruit-area02-col .col-img{
		position: absolute;
		bottom: -25px;
		right: 15px;
		z-index: 3;
	}

	.cus-recruit-area02-marquee{/* 親となる要素に指定必要なCSS（paddingは必要に応じて） */
		overflow: hidden;
		position: relative;
		background: transparent;
		padding: 40px 0;
		width: 100%;
		z-index: 1;
	}
	.cus-marquee-img{
		display: flex;
		padding: 0;
		margin: 0;
		width: max-content;
		white-space: nowrap;
		list-style: none;
		animation: marquee-scroll-img 100s linear infinite;
		will-change: transform;
		transform: translateZ(0);
		z-index: 1;
	}
	.cus-marquee-img li{
		padding-right: 20px;
		line-height: 1;
	}
	.cus-marquee-img li img{
		display: block;
		height: 300px;
		width: auto;
	}
	@keyframes marquee-scroll-img {
		from {
			transform: translate3d(0, 0, 0);
		}
		to {
			transform: translate3d(-50%, 0, 0);
		}
	}
	@media screen and (max-width: 1619px) {
		.cus-recruit-area02-con .con-box{
			margin-bottom: 40px;
			width: 49%;
		}
		.cus-recruit-area02-con .con-box:nth-child(2n){
			padding-right: 0%;
		}
		.cus-recruit-area02-con .con-box:nth-child(3){
			padding-right: 2%;
		}
		.cus-recruit-area02-con .con-box:nth-child(4),
		.cus-recruit-area02-con .con-box:nth-child(5){
			width: 49%;
		}
		.cus-recruit-area02-con .con-box:nth-child(5){
			padding-right: 0%;
			width: 100%;
		}
	
		.cus-recruit-area02-col{
			padding: 22px 0 0 20px;
		}
		.cus-recruit-area02-col .col-title{
			padding: 6px 12px;
			font-size: 20px;
		}
		.cus-recruit-area02-col .col-text{
			padding: 35px 15px 25px 15px;
		}
		.cus-recruit-area02-list01 li{
			padding-left: 60px;
			margin: 15px 0;
			font-size: 17px;
		}
		.cus-recruit-area02-list01 li::before{
			margin-top: calc(-21px * 0.8);
			width: calc(50px * 0.8);
			height: calc(42px * 0.8);
		}
		.cus-recruit-area02-col .col-img{
			bottom: -20px;
			right: 10px;
		}
		.cus-recruit-area02-col .col-img{
			width: calc(165px * 0.8);
		}

		.cus-marquee-img li img{
			height: 280px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-recruit-area02-con .con-box{
			margin-bottom: 40px;
			width: 49%;
		}
		.cus-recruit-area02-con .con-box:nth-child(2n){
			padding-right: 0%;
		}
		.cus-recruit-area02-con .con-box:nth-child(3){
			padding-right: 2%;
		}
		.cus-recruit-area02-con .con-box:nth-child(4),
		.cus-recruit-area02-con .con-box:nth-child(5){
			width: 49%;
		}
		.cus-recruit-area02-con .con-box:nth-child(5){
			padding-right: 0%;
			width: 100%;
		}
	
		.cus-recruit-area02-col{
			padding: 20px 0 0 15px;
		}
		.cus-recruit-area02-col .col-title{
			padding: 6px 12px;
			font-size: 18px;
		}
		.cus-recruit-area02-col .col-text{
			padding: 30px 10px 20px 10px;
		}
		.cus-recruit-area02-list01 li{
			padding-left: 50px;
			margin: 12px 0;
			font-size: 16px;
		}
		.cus-recruit-area02-list01 li::before{
			margin-top: calc(-21px * 0.6);
			width: calc(50px * 0.6);
			height: calc(42px * 0.6);
		}
		.cus-recruit-area02-col .col-img{
			bottom: -20px;
			right: 10px;
		}
		.cus-recruit-area02-col .col-img{
			width: calc(165px * 0.6);
		}

		.cus-marquee-img li img{
			height: 260px;
		}
	}
	@media print {
		.cus-recruit-area02-con .con-box{
			margin-bottom: 40px;
			width: 49%;
		}
		.cus-recruit-area02-con .con-box:nth-child(2n){
			padding-right: 0%;
		}
		.cus-recruit-area02-con .con-box:nth-child(3){
			padding-right: 2%;
		}
		.cus-recruit-area02-con .con-box:nth-child(4),
		.cus-recruit-area02-con .con-box:nth-child(5){
			width: 49%;
		}
		.cus-recruit-area02-con .con-box:nth-child(5){
			padding-right: 0%;
			width: 100%;
		}
	
		.cus-recruit-area02-col{
			padding: 16px 0 0 10px;
		}
		.cus-recruit-area02-col .col-title{
			padding: 6px 10px;
			font-size: 15px;
		}
		.cus-recruit-area02-col .col-text{
			padding: 25px 10px 15px 10px;
		}
		.cus-recruit-area02-list01 li{
			padding-left: 40px;
			margin: 10px 0;
			font-size: 14px;
		}
		.cus-recruit-area02-list01 li::before{
			margin-top: calc(-21px * 0.5);
			width: calc(50px * 0.5);
			height: calc(42px * 0.5);
		}
		.cus-recruit-area02-col .col-img{
			bottom: -15px;
			right: 10px;
		}
		.cus-recruit-area02-col .col-img{
			width: calc(165px * 0.5);
		}

		.cus-marquee-img li img{
			height: 240px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-recruit-area02-con{
			display: block;
		}
		.cus-recruit-area02-con .con-box{
			margin-bottom: 30px;
			width: auto;
		}
		.cus-recruit-area02-con .con-box:nth-child(2n){
			padding-right: 0%;
		}
		.cus-recruit-area02-con .con-box:nth-child(3){
			padding-right: 0%;
		}
		.cus-recruit-area02-con .con-box:nth-child(4),
		.cus-recruit-area02-con .con-box:nth-child(5){
			width: auto;
		}
		.cus-recruit-area02-con .con-box:nth-child(5){
			padding-right: 0%;
			width: auto;
		}
	
		.cus-recruit-area02-col{
			padding: 16px 0 0 10px;
		}
		.cus-recruit-area02-col .col-title{
			padding: 6px 10px;
			font-size: 16px;
		}
		.cus-recruit-area02-col .col-text{
			padding: 25px 10px 15px 10px;
		}
		.cus-recruit-area02-list01 li{
			padding-left: 40px;
			margin: 10px 0;
			font-size: 16px;
		}
		.cus-recruit-area02-list01 li::before{
			margin-top: calc(-21px * 0.5);
			width: calc(50px * 0.5);
			height: calc(42px * 0.5);
		}
		.cus-recruit-area02-col .col-img{
			bottom: -10px;
			right: 10px;
		}
		.cus-recruit-area02-col .col-img{
			width: calc(165px * 0.5);
		}

		.cus-marquee-img li img{
			height: 240px;
		}
	}


/* area04 */
	.cus-recruit-area04-step{
		overflow: hidden;
		display: flex;
		align-items: stretch;
		padding: 0;
		margin: 0;
		list-style: none;
	}
	.cus-recruit-area04-step li{
		display: flex;
		flex-shrink: 0;
		position: relative;
		width: 20%;
		filter: drop-shadow(2px 0 0 #fff);
		z-index: 1;
	}
	.cus-recruit-area04-step li:not(:first-child) {
		margin-left: -20px; 
    width: calc(20% + 20px);
	}
	.cus-recruit-area04-step li:nth-child(1) { z-index: 5; }
	.cus-recruit-area04-step li:nth-child(2) { z-index: 4; }
	.cus-recruit-area04-step li:nth-child(3) { z-index: 3; }
	.cus-recruit-area04-step li:nth-child(4) { z-index: 2; }
	.cus-recruit-area04-step li:nth-child(5) { z-index: 1; filter: none; }

	/* 個別背景色 */
	.cus-recruit-area04-step li:first-child .cus-recruit-area04-col{
		background-color: #66c9bd;
	}
	.cus-recruit-area04-step li:nth-child(2) .cus-recruit-area04-col{
		background-color: #4cc0b2;
	}
	.cus-recruit-area04-step li:nth-child(3) .cus-recruit-area04-col{
		background-color: #33b7a7;
	}
	.cus-recruit-area04-step li:nth-child(4) .cus-recruit-area04-col{
		background-color: #19ae9c;
	}
	.cus-recruit-area04-step li:nth-child(5) .cus-recruit-area04-col{
		background-color: #00a591;
	}

	.cus-recruit-area04-col{
		display: flex;
		flex-direction: row-reverse;
		justify-content: center;
		align-items: center;
		padding: 30px 0;
		width: 100%;
		height: auto;
		min-height: 100%;
		clip-path: polygon(0% 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0% 100%, 20px 50%);
	}
	.cus-recruit-area04-step li:first-child .cus-recruit-area04-col {
		clip-path: polygon(0% 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0% 100%);
	}
	.cus-recruit-area04-step li:last-child .cus-recruit-area04-col {
		clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 20px 50%);
	}

	.cus-recruit-area04-col .col-text{
		position: revert;
		padding: 0 0 40px 15px;
		margin: 0;
		width: 60%;
		font-family: "Zalando Sans Expanded", sans-serif;
		font-optical-sizing: auto;
		font-weight: 700;
		font-style: normal;
		color: white;
		text-align: left;
	}
	.cus-recruit-area04-col .col-text .step{
		margin: 0;
		font-size: 24px;
	}
	.cus-recruit-area04-col .col-text .pic{
		margin: 0;
		font-size: 40px;
	}
	.cus-recruit-area04-col .col-text .text{
		position: absolute;
		bottom: 40px;
		left: 45%;
		display: inline-block;
		margin: 0;
		background-color: rgba(255, 255, 255, 0.9);
		border-radius: 8px;
		padding: 2px 10px;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 18px;
		font-weight: 400;
		color: #00a591;
		white-space: nowrap;
		z-index: 3;
	}

	.cus-recruit-area04-col .col-img{
		flex: 1;
		margin: 0;
	}
	.cus-recruit-area04-col .col-img .img{
		position: relative;
		left: 30px;
		margin: 0;
		width: 90px;
	}
	@media screen and (max-width: 1619px) {
		.cus-recruit-area04-step{
			margin: 0 auto;
			width: 1340px;
		}
		.cus-recruit-area04-step li::before{
			transform: skewX(-6deg); 
		}
	
		.cus-recruit-area04-col{
			padding: 25px 0;
		}
	
		.cus-recruit-area04-col .col-text{
			padding: 0 0 40px 10px;
		}
		.cus-recruit-area04-col .col-text .step{
			font-size: 20px;
		}
		.cus-recruit-area04-col .col-text .pic{
			font-size: 32px;
		}
		.cus-recruit-area04-col .col-text .text{
			bottom: 36px;
			left: 43%;
			padding: 2px 10px;
			font-size: 17px;
		}

		.cus-recruit-area04-col .col-img .img{
			left: 25px;
			width: 80px;
		}
	}
	@media screen and (max-width: 1396px) {
		.cus-recruit-area04-step{
			margin: 0 auto;
			width: 950px;
		}
		.cus-recruit-area04-step li::before{
			transform: skewX(-4deg); 
		}
	
		.cus-recruit-area04-col{
			padding: 20px 0;
		}
	
		.cus-recruit-area04-col .col-text{
			padding: 0 20px 40px 10px;
		}
		.cus-recruit-area04-col .col-text .step{
			font-size: 18px;
		}
		.cus-recruit-area04-col .col-text .pic{
			font-size: 26px;
		}
		.cus-recruit-area04-col .col-text .text{
			bottom: 10px;
			left: 50%;
			padding: 2px 8px;
			transform: translateX(-50%);
			font-size: 14px;
		}
	
		.cus-recruit-area04-col .col-img .img{
			top: -20px;
			left: 20px;
			width: 70px;
		}
	}
	@media (max-width: 991.98px) {
		.cus-recruit-area04-step{
			margin: 0 auto;
			width: 740px;
		}
		.cus-recruit-area04-step li::before{
			transform: skewX(-6deg); 
		}
	
		.cus-recruit-area04-col{
			padding: 30px 0;
		}
	
		.cus-recruit-area04-col .col-text{
			padding: 0 0 20px 15px;
		}
		.cus-recruit-area04-col .col-text .step{
			display: block;
			font-size: 16px;
		}
		.cus-recruit-area04-col .col-text .pic{
			display: block;
			font-size: 24px;
			line-height: 1.2;
			text-align: center;
		}
		.cus-recruit-area04-col .col-text .text{
			bottom: 10px;
			left: 50%;
			padding: 2px 8px;
			transform: translateX(-50%);
			font-size: 14px;
		}
	
		.cus-recruit-area04-col .col-img .img{
			top: -25px;
			left: 15px;
			width: 60px;
		}
	}
	@media print {
		.cus-recruit-area04-step{
			margin: 0 auto;
			width: 100%;
		}
		.cus-recruit-area04-step li::before{
			transform: skewX(-6deg); 
		}
	
		.cus-recruit-area04-col{
			padding: 30px 0;
		}
	
		.cus-recruit-area04-col .col-text{
			padding: 0 0 20px 15px;
		}
		.cus-recruit-area04-col .col-text .step{
			display: block;
			font-size: 14px;
		}
		.cus-recruit-area04-col .col-text .pic{
			display: block;
			font-size: 20px;
			line-height: 1.2;
			text-align: center;
		}
		.cus-recruit-area04-col .col-text .text{
			bottom: 10px;
			left: 50%;
			padding: 2px 8px;
			transform: translateX(-50%);
			font-size: 12px;
		}
	
		.cus-recruit-area04-col .col-img .img{
			top: -25px;
			left: 15px;
			width: 40px;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-recruit-area04-step{
			display: block;
			width: auto;
		}
		.cus-recruit-area04-step li{
			display: block;
			width: auto;
			filter: drop-shadow(0 0 0 #fff);
		}
		.cus-recruit-area04-step li::before{
			display: none;
		}
		.cus-recruit-area04-step li:not(:first-child) {
			margin-left: 0px;
			width: auto;
		}
	
		.cus-recruit-area04-col{
			display: block;
			padding: 15px;
			width: 100%;
			height: auto;
			text-align: center;
			clip-path: none;
		}
		.cus-recruit-area04-step li:first-child .cus-recruit-area04-col {
			clip-path: none;
		}
		
		/* Step 5：左端は斜め、右端は垂直（終わり） */
		.cus-recruit-area04-step li:last-child .cus-recruit-area04-col {
			clip-path: none;
		}
	
		.cus-recruit-area04-col .col-text{
			padding: 0 0 0 20px;
			margin-bottom: 0px;
			width: auto;
			text-align: center;
		}
		.cus-recruit-area04-col .col-text .step{
			display: inline-block;
			margin-bottom: 0px;
			font-size: 22px;
		}
		.cus-recruit-area04-col .col-text .pic{
			display: inline-block;
			margin-bottom: 0px;
			font-size: 30px;
		}
		.cus-recruit-area04-col .col-text .text{
			bottom: 10vw;
			margin: 0 0 0 20px;
			font-size: 16px;
		}
	
		.cus-recruit-area04-col .col-img .img{
			top: -4vw;
			left: 0px;
			width: 20vw;
		}
	}


/* お問い合わせ */
	.cus-contact-area01{
		position: relative;
		background-color: #3d8078;
		padding: 120px 0;
	}
	.cus-contact-area01::before{
		content: '';
		position: absolute;
		top: 0px;
		left: 0px;
		background-image: url("../img/contact/area01-photo01.jpg");
		background-size: cover;
		background-position: center center;
		width: 100%;
		height: 100%;
		z-index: 1;
		opacity: 0.3;
	}

	.cus-contact-midashi{
		position: relative;
		padding-bottom: 30px;
		font-size: 32px;
		font-weight: 700;
		color: white;
		text-align: center;
		z-index: 3;
	}
	.cus-contact-midashi::before{
		content: '';
		position: absolute;
		bottom: 0px;
		left: 50%;
		background-color: white;
		margin-left: -130px;
		width: 260px;
		height: 2px;
		z-index: 3;
	}
	
	.cus-contact-text01{
		position: relative;
		color: white;
		text-align: center;
		z-index: 3;
	}

	.cus-telephone{
		position: relative;
		text-align: center;
		z-index: 3;
	}
	.cus-telephone .telephone-box{
		display: inline-block;
		background-color: rgba(255, 255, 255, 0.8);
		padding: 30px 0;
		width: 100%;
	}
	.cus-telephone .telephone-txt{
		position: relative;
		display: inline-block;
		font-size: 1.125rem;
		font-weight: 700;
	}
	.cus-telephone .telephone-txt::before{
		content: '';
		position: absolute;
		top: 50%;
		left: -40px;
		display: block;
		background-color: #2d3332;
		width: 25px;
		height: 1px;
	}
	.cus-telephone .telephone-txt::after{
		content: '';
		position: absolute;
		top: 50%;
		right: -40px;
		display: block;
		background-color: #2d3332;
		width: 25px;
		height: 1px;
	}
	.cus-telephone .telephone-phone{
		font-size: 42px;
		color: #00aa96;
	}
	.cus-telephone .telephone-phone .ic01{
		position: relative;
		margin-right: 15px;
		top: -2px;
		width: 36px;
	}
	.cus-telephone .telephone-phone .ic02{
		position: relative;
		margin-right: 15px;
		top: -3px;
		width: 40px;
	}
	@media screen and (max-width: 1619px) {
		.cus-contact-area01{
			padding: 100px 0;
		}

		.cus-contact-midashi{
			padding-bottom: 24px;
			font-size:28px;
		}
		.cus-contact-midashi::before{
			margin-left: -115px;
			width: 230px;
		}
		
		.cus-contact-text01{
			text-align: center;
		}

		.cus-telephone .telephone-phone{
			font-size: 3vw;
		}
		.cus-telephone .telephone-phone .ic01{
			width: 2.6vw;
		}
		.cus-telephone .telephone-phone .ic02{
			width: 3vw;
		}
	}
	@media screen and (max-width: 991.98px) {
		.cus-contact-area01{
			padding: 80px 0;
		}

		.cus-contact-midashi{
			padding-bottom: 20px;
			font-size: 24px;
		}
		.cus-contact-midashi::before{
			margin-left: -100px;
			width: 200px;
		}
		
		.cus-contact-text01{
			text-align: center;
		}

		.cus-telephone .telephone-box{
			padding: 20px 0;
			width: 100%;
		}

		.cus-telephone .telephone-txt::before{
			left: -30px;
			width: 20px;
		}
		.cus-telephone .telephone-txt::after{
			right: -30px;
			width: 20px;
		}
	}
	@media print {
		.cus-contact-area01{
			padding: 60px 0;
		}

		.cus-contact-midashi{
			padding-bottom: 16px;
			font-size: 19px;
		}
		.cus-contact-midashi::before{
			margin-left: -70px;
			width: 140px;
		}
		
		.cus-contact-text01{
			text-align: center;
		}

		.cus-telephone .telephone-box{
			padding: 20px 0;
			width: 100%;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-contact-area01{
			padding: 60px 0;
		}

		.cus-contact-midashi{
			padding-bottom: 20px;
			font-size: 18px;
		}
		.cus-contact-midashi::before{
			margin-left: -60px;
			width: 120px;
		}
		
		.cus-contact-text01{
			text-align: left;
		}

		.cus-telephone .telephone-txt{
			font-size: 1rem;
		}
		.cus-telephone .telephone-phone{
			font-size: 22px;
		}
		.cus-telephone .telephone-phone .ic01{
			width: 22px;
		}
		.cus-telephone .telephone-phone .ic02{
			width: 24px;
		}
	}











