@charset "UTF-8";

.hero {
	position: relative;
}
.hero__image img {
	width: 100%;
	height: auto;
	-webkit-mask-image: url("../images/top/hero-mask.svg");
	mask-image: url("../images/top/hero-mask.svg");
	mask-repeat: no-repeat;
	mask-size: cover;
	mask-size: 100%;
}

.hero__content {
	position: relative;
}

.hero__text {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: 2%;
	right: 2%;
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
	z-index: 1;
}

.hero__text--item {
	background: var(--color-yellow);
	display: block;
	padding: 20px 5px;
	font-size: clamp(1rem, 0.5824rem + 0.8688vw, 1.625rem);
}

.hero__image {
	position: relative;
}

.hero__svg {
	position: absolute;
	left: 10%;
	transform: translateY(-50%);
	top: 50%;
	width: 35%;
	z-index: 1;
}

.obj {
	background-color: var(--color-lightblue-gray);
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	padding-top: 13%;
	text-align: center;
	height: 0;
	mask-image: url(../images/common/clip-svg-value.svg);
	-webkit-mask-image: url(../images/common/clip-svg-value.svg);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	position: absolute;
	top: 20px;
	left: 20%;
	z-index: 1;
	width: 15%;
}
.obj02 {
	background-color: var(--color-lightgreen);
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	mask-image: url(../images/top/obj02-mask.svg);
	-webkit-mask-image: url(../images/top/obj02-mask.svg);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	position: absolute;
	bottom: -5em;
	left: -220px;
	width: 40%;
	height: 32%;
}

.obj03 {
	background-color: var(--color-beige);
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	padding-top: 13%;
	height: 0;
	mask-image: url(../images/common/clip-svg-value.svg);
	-webkit-mask-image: url(../images/common/clip-svg-value.svg);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	position: absolute;
	top: 50%;
	right: -100px;
	width: 15%;
}
/***************************************************************

values

*****************************************************************/
.values {
	position: relative;
}
.values::before {
	content: "";
	display: inline-block;
	position: absolute;
	z-index: -1;
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	right: -150px;
	bottom: 0%;
	width: 339px;
	height: 355px;
	background-color: var(--color-lightgreen);
	mask-image: url(../images/top/values-mask.svg);
	-webkit-mask-image: url(../images/top/values-mask.svg);
}
/***************************************************************

news

*****************************************************************/
.news.news--top {
	margin-top: -3em;
	position: relative;
	z-index: 1;
}

.news__inner-box {
	display: flex;
	gap: 0 20px;
	background: #fff;
	border-radius: 2em 0 0 2em;
	align-items: center;
	width: 35%;
}

.news__inner {
	display: flex;
	align-items: center;
	justify-content: right;
	gap: 0 20px;
}

.news__title {
	background: var(--color-brown);
	color: #fff;
	border-radius: 2em;
	padding: 2% 7%;
	font-size: clamp(1rem, 0.8333rem + 0.3472vw, 1.25rem);
	letter-spacing: 2px;
	font-weight: bold;
}

.news__item {
	line-height: 1.2;
	position: relative;
	width: 70%;
}
.news__item:hover a {
	text-decoration: underline;
}

.news__item-title {
	max-width: 400px;
}

.news__item-date {
	font-size: 12px;
}

.news__item-inner {
	width: 85%;
}

.news__item-link {
	color: var(--color-brown);
	position: relative;
}

.news__item::after {
	content: "";
	display: inline-block;
	background: url(../images/common/arrow_r.svg);
	width: 30px;
	height: 30px;
	position: absolute;
	right: 15px;
	top: 50%;
	background-color: var(--color-brown);
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 50%;
	background-size: 40%;
	transform: translateY(-50%);
	pointer-events: none;
}

.recruit__link.link__btn--arrow::after {
	background: var(--color-orange);
}
.recruit__inner {
	overflow-x: hidden;
}
/*service*/
.service__inner.inner-narrow {
	padding-bottom: 140px;
}

.box__link.link__btn--arrow::after {
	background: var(--color-teal);
}

.box__link.link__btn--arrow:hover::after {
	width: 180%;
}

.box__content {
	display: flex;
	align-items: center;
	margin-bottom: 4em;
	position: relative;
}

.box__content:last-child {
	margin-bottom: 0;
}

.box__content.box__content--even {
	flex-direction: row-reverse;
}

.box__image-wrapper {
	flex-shrink: 0;
	max-width: 55%;
	width: 53%;
	position: relative;
}

.box__subtitle {
	font-size: 36px;
	color: var(--color-teal);
	position: relative;
	font-family: var(--font-popins);
	margin-bottom: 40px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 2px;
}

.box__subtitle::before {
	position: absolute;
	content: attr(data-subtitle);
	bottom: -1.2em;
	left: 0;
	font-size: 18px;
	font-weight: bold;
	color: #000;
	font-family: var(--font-notosans);
}

.box__subtitle::after {
	content: "";
	display: inline-block;
	border-bottom: 2px solid;
	position: absolute;
	bottom: -1.5em;
	left: 0;
	width: 1em;
}

.box__description {
	padding: 40px 0;
}

.box__details {
	background: #fff;
	border-radius: 2em;
	padding: 4%;
}

.box__content.box__content--odd .box__details {
	width: 50%;
	border-radius: 2em;
	margin-left: -40px;
	position: relative;
}

.box__content::after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	z-index: -1;
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;

}
.box__content.--group::after {
	top: -20%;
	right: -15%;
	width: 388px;
	height: 360px;
	background-color: var(--color-lightblue-gray);
	mask-image: url(../images/top/group-home-mask.svg);
	-webkit-mask-image: url(../images/top/group-home-mask.svg);
}
.box__content.--living::after {
	top: -40%;
	left: -27%;
	width: 480px;
	height: 428px;
	mask-image: url(../images/top/living-mask.svg);
	-webkit-mask-image: url(../images/top/living-mask.svg);
	background-color: var(--color-lightblue);
}
.box__content.--visiting::after {
	top: initial;
	right: -30%;
	width: 480px;
	height: 428px;
	mask-image: url(../images/top/nursing-mask.svg);
	-webkit-mask-image: url(../images/top/nursing-mask.svg);
	background-color: var(--color-pink);
	bottom: -15%;
}
.box__content.--food::after {
	top: -20%;
	left: -30%;
	width: 492px;
	height: 448px;
	mask-image: url(../images/top/food-mask.svg);
	-webkit-mask-image: url(../images/top/food-mask.svg);
	background-color: var(--color-beige);
}

.box__content.box__content--even .box__details {
	width: 50%;
	border-radius: 2em;
	margin-right: -40px;
	position: relative;
}

.box__details.box__details-group .link__btn--arrow::after {
	background: var(--color-teal);
}

.box__details.box__details-living .box__subtitle {
	color: var(--color-clearblue);
}

.box__details.box__details-living .link__btn--arrow::after {
	background: var(--color-clearblue);
}

.box__details.box__details-visiting .box__subtitle {
	color: var(--color-brightpink);
}

.box__details.box__details-visiting .link__btn--arrow::after {
	background: var(--color-brightpink);
}

.box__details.box__details-partner .box__subtitle {
	color: var(--color-brightyellow);
}

.box__details.box__details-partner .link__btn--arrow::after {
	background: var(--color-brightyellow);
}

/***************************************************************

partner

*****************************************************************/

.partner__inner.inner-narrow {
	padding-bottom: 100px;
}
.partner__inner .box__subtitle {
	margin-bottom: 60px;
}
.box__title-shop {
	font-size: 20px;
	font-weight: 600;
}
.partner__inner .box__subtitle::after {
	bottom: -1.3em;
}
.partner__inner .box__description {
	padding: 20px 0 40px;
}
/***************************************************************

office

*****************************************************************/

.office {
	background-color: var(--color-lightgreen);
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	mask-image: url("../images/top/office-bg.svg");
	-webkit-mask-image: url("../images/top/office-bg.svg");
	mask-size: cover;
	-webkit-mask-size: cover;
	mask-position: center;
	-webkit-mask-position: center;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
}

.office__title.c__title {
	margin-bottom: 60px;
}

.office__header {
	position: static;
	background-image: url("../images/top/bg_contents-office.svg");
	background-position: center;
	background-repeat: no-repeat;
	padding: 10em 5em;
	background-size: contain;
	width: 40%;
	padding-top: 35%;
	height: 0;
	position: relative;
}

.office__header-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 70%;
}

.office__item-name {
	text-align: center;
	line-height: 1.2;
	font-size: 14px;
	color: var(--color-brown);
	font-weight: bold;
}

.office__inner {
	display: flex;
	align-items: center;
	padding: 8em 20px;
	gap: 0 40px;
}

.office__description {
	margin-bottom: 40px;
}

.office__gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px 20px;
	flex: 1;
}

.office__item {
	width: calc(100% / 3 - 16px);
	text-align: center;
}

.office__figure {
	margin-bottom: 10px;
}

.office__link-btn-wrapper {
	text-align: center;
}

.office__link-btn.link__btn--arrow::after {
	background: #000;
}

.link__btn--arrow:hover::after {
	width: 180%;
}
/***************************************************************

employment

*****************************************************************/
.partner_employ {
	overflow: hidden;
}
.partner_employ-inner.inner-narrow {
	padding-top: 100px;
	padding-bottom: 140px;
}
.employment__inner.inner-narrow {
	padding-bottom:140px;
}
.employment__contents {
	text-align: center;
}
.employment__company {
	font-weight: bold;
	font-size: 20px;
}
.partner_employ.inner-narrow {
	padding-bottom: 140px;
	padding-top: 140px;
}
.partner_employ .box__subtitle::before {
	bottom: -1.5em;
}
.partner_employ .box__subtitle {
	margin-bottom: 60px;
}
.partner_employ .box__description {
	padding-top: 20px;
}
.box__details-employ .box__subtitle {
	color: var(--color-clearblue);
}
.box__details-employ .box__subtitle::after {
	bottom: -1.4em;
}
.box__details-employ .link__btn--arrow::after {
	background: var(--color-clearblue);
}

.box__content.--employ::after {
	top: -20%;
	right: -15%;
	width: 388px;
	height: 360px;
	background-color: var(--color-lightblue);
	mask-image: url(../images/top/group-home-mask.svg);
	-webkit-mask-image: url(../images/top/group-home-mask.svg);
}
/***************************************************************

gallery

*****************************************************************/
.gallery__item::before {
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	z-index: -1;
	background-size: contain;
	position: absolute;
}

.gallery__item.gallery__item--1 {
	position: absolute;
	top: 0;
	left: -5%;
	width: 30%;
}

.gallery__item.gallery__item--1::before {
	background-image: url("../images/top/gallery__item--1.svg");
	left: -10%;
	bottom: -10%;
}

.gallery__item.gallery__item--2 {
	position: absolute;
	right: 30%;
	top: 0;
	width: 23%;
}

.gallery__item.gallery__item--2::before {
	background-image: url("../images/top/gallery__item--2.svg");
	left: -5%;
	bottom: -5%;
}

.gallery__item.gallery__item--3 {
	position: absolute;
	right: 0;
	top: 10%;
	width: 24%;
}

.gallery__item.gallery__item--3::before {
	background-image: url("../images/top/gallery__item--3.svg");
	right: -30%;
	bottom: -10%;
}

.gallery__item.gallery__item--4 {
	position: absolute;
	left: 25%;
	top: 40%;
	width: 20%;
}

.gallery__item.gallery__item--4::before {
	background-image: url("../images/top/gallery__item--3.svg");
	right: -20%;
	top: -5%;
}

.gallery__item.gallery__item--5 {
	position: absolute;
	top: 45%;
	left: 42%;
}

.gallery__item.gallery__item--6 {
	position: absolute;
	left: -3%;
	bottom: 0;
	width: 25%;
}

.gallery__item.gallery__item--6::before {
	background-image: url("../images/top/gallery__item--5.svg");
	right: -10%;
	top: 0;
}

.gallery__item.gallery__item--7 {
	position: absolute;
	right: 35%;
	bottom: 0;
	width: 20%;
}

.gallery__item.gallery__item--7::before {
	background-image: url("../images/top/gallery__item--5.svg");
	right: -10%;
	top: 0;
}

.gallery__item.gallery__item--8 {
	position: absolute;
	right: -3%;
	bottom: 0;
	width: 25%;
}

.gallery__item.gallery__item--8::before {
	background-image: url("../images/top/gallery__item--2.svg");
	left: -10%;
}

.gallery {
	position: relative;
	margin: 8vw 0;
	aspect-ratio: 5/4;
	overflow: hidden;
}

.gallery__item {
	max-width: 100%;
	height: auto;
}

.clip-svg {
	width: 100%;
	height: auto;
	/* 高さを自動調整 */
}
.service, .partner {
	overflow: hidden;
}
/***************************************************************

recruit

*****************************************************************/
.recruit {
	background-color: var(--color-lightgreen);
	background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	background-position: 10px 10px;
	background-size: 13px 13px;
	mask-image: url("../images/top/recruit-bg.svg");
	-webkit-mask-image: url("../images/top/recruit-bg.svg");
	mask-size: 150%;
	-webkit-mask-size: 150%;
	mask-position: center;
	-webkit-mask-position: center;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
}

.recruit__inner {
	display: flex;
	align-items: center;
	padding: 10em 20px;
	position: relative;
}

.recruit__line-link__text {
	text-align: center;
	width: 100%;
}

.recruit__content {
	padding: 10em 15em;
	padding-top: 38%;
	right: 130px;
	background-image: url("../images/top/bg_contents-recruit.svg");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	max-width: 40%;
	width: 100%;
	height: 0;
	position: relative;
}

.recruit__content-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 70%;
}

.recruit__title.c__title {
	margin-bottom: 60px;
}

.recruit__image {
	flex-shrink: 0;
	width: 70%;
}

.recruit__text {
	text-align: center;
	margin-bottom: 40px;
}

.recruit__line-svg {
	width: 40px;
	fill: #fff;
}

.recruit__line-link:hover {
	background: #fff;
	border: 2px solid var(--color-darkgreen);
	color: var(--color-darkgreen);
	transition: .3s;
}

.recruit__line-link:hover .recruit__line-link__name {
	color: var(--color-darkgreen);
}

.recruit__line-link:hover .recruit__line-svg {
	fill: var(--color-darkgreen);
}

.recruit__line-link img {
	max-width: 10%;
}

@media (max-width: 1280px) {
	.values::before {
		content: none;
	}
}
@media (min-width: 767.89px) and (max-width: 1024px) {
	.obj02 {
		width: 50%;
		left: -100px;
	}
	.obj03 {
		display:none;
	}
	.news__inner-box {
		width: 60%;
	}
	.box__subtitle {
		font-size: clamp(1.625rem, 2.0711rem + -0.9281vw, 1.375rem);
	}

	.box__content.box__content--odd .box__details {
		width: 70%;
		border-radius: 2em;
		transform: translateY(50%);
		margin-left: -200px;
	}

	.box__image-wrapper {
		max-width: 55%;
		width: 100%;
	}

	.box__content {
		margin-bottom: 150px;
		position: relative;
	}

	.box__content.box__content--even .box__details {
		width: 70%;
		border-radius: 2em 2em 0em 2em;
		margin-right: -200px;
		transform: translateY(50%);
	}

	.box__content:last-child {
		margin-bottom: 200px;
	}

	.office__description {
		margin-bottom: 20px;
		font-size: clamp(0.875rem, 0.498rem + 0.7843vw, 1rem);
	}

	.office__item-name {
		font-size: clamp(0.6875rem, 0.1221rem + 1.1765vw, 0.875rem);
	}

	.office__inner {
		padding: 5em 20px;
	}

	.recruit__inner {
		padding: 5em 20px;
	}

	.recruit__line-link__text {
		font-size: clamp(0.75rem, -0.0039rem + 1.5686vw, 1rem);
	}

	.recruit__content {
		right: 20px;
		max-width: 40%;
		width: 100%;
		padding: 10em 5em;
		position: absolute;
		padding-top: 33%;
	}

	.recruit__content-inner {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 70%;
	}
	.recruit__line-link__name {
		display: block;
	}
}

@media (max-width: 768px) {
	.obj {
		top: 60px;
		left: 35%;
		width: 20%;
		padding-top: 18%;
	}
	.obj02 {
		bottom: -4%;
		width: 60%;
		left: -2rem;
		height: 20%;
	}

	.hero__image img {
		-webkit-mask-image: url("../images/top/hero-mask-sp.svg");
		mask-image: url("../images/top/hero-mask-sp.svg");
	}

	.hero__svg {
		transform: initial;
		top: 10%;
		width: 16%;
	}

	.obj03 {
		width: 20%;
		right: 0;
	}
	.hero__text--item {
		font-size: clamp(0.875rem, 0.3393rem + 2.6786vw, 1.625rem);
		font-weight: 500;
	}

	.news.news--top {
		margin-top: -13%;
		overflow-x: hidden;
	}

	.news__title {
		padding: 3% 5%;
		font-size: clamp(0.75rem, 0.5714rem + 0.8929vw, 1rem);
	}

	.news__inner-box {
		width: 100%;
	}

	.news__item-link::after {
		right: 5%;
	}
	.service__inner.inner-narrow {
		padding-bottom: 0rem;
	}
	.box__details {
		padding: 8%;
	}
	.box__description {
		font-size: clamp(0.875rem, 0.6071rem + 1.3393vw, 1.25rem);
	}
	.box__content.--group::after {
		top: -20%;
		right: -70%;
	}
	.box__content.--living::after {
		top: 5%;
		left: -60%;
	}
	.box__content.--visiting::after {
		right: -70%;
		bottom: 30%;
	}
	.box__content.--food::after {
		top: 0%;
		left: -100%;
	}
	.partner__inner.inner-narrow {
		padding-top: 3em;
		padding-bottom: 4em;
	}

	.box__details::after {
		content: none;
	}

	.box__subtitle {
		font-size: clamp(1.625rem, 1.5357rem + 0.4464vw, 1.75rem);
	}

	.box__subtitle::before {
		font-size: clamp(0.875rem, 0.7857rem + 0.4464vw, 1rem);
	}

	.box__content {
		flex-direction: column;
	}

	.box__image-wrapper {
		max-width: 100%;
		width: 100%;
		position: relative;
	}

	.box__content.box__content--odd .box__details {
		position: static;
		width: 100%;
		margin: 0;
	}

	.box__content.box__content--even .box__details {
		position: static;
		width: 100%;
		margin: 0;
	}

	.box__content.box__content--even {
		flex-direction: column;
	}

	.office {
		mask-image: initial;
		-webkit-mask-image: initial;
		position: relative;
	}

	.office::before {
		content: "";
		display: inline-block;
		width: 100%;
		height: 101px;
		mask-image: url("../images/common/wave-top.svg");
		-webkit-mask-image: url("../images/common/wave-top.svg");
		position: absolute;
		top: -13vw;
		mask-size: 100%;
		-webkit-mask-size: 100%;
		mask-position: center top;
		-webkit-mask-position: center top;
		mask-repeat: no-repeat;
		-webkit-mask-repeat: no-repeat;
		background-color: var(--color-lightgreen);
		background-position: 10px 10px;
		background-size: 13px 13px;
		background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	}

	.office::after {
		content: "";
		display: inline-block;
		width: 100%;
		height: 86px;
		position: absolute;
		bottom: -11vw;
		mask-image: url("../images/common/wave-bottom.svg?ver=1");
		-webkit-mask-image: url("../images/common/wave-bottom.svg?ver=1");
		mask-repeat: no-repeat;
		-webkit-mask-repeat: no-repeat;
		mask-size: 100%;
		-webkit-mask-size: 100%;
		mask-position: center bottom;
		-webkit-mask-position: center bottom;
		background-color: var(--color-lightgreen);
		background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
		background-position: 10px 10px;
		background-size: 13px 13px;
	}

	.office__inner {
		flex-direction: column;
		padding: 0 4% 4em;
	}

	.office__header {
		width: 100%;
		padding-top: 100%;
		height: 0;
		position: relative;
	}

	.office__header-inner {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 70%;
	}

	.office__description {
		margin-bottom: 20px;
		font-size: clamp(0.875rem, 0.6071rem + 1.3393vw, 1.25rem);
	}

	.office__item {
		width: calc(100% / 2 - 15px);
	}

	.office__gallery {
		align-items: flex-start;
		justify-content: space-between;
		width: 100%;
	}

	.office__item:nth-child(2n) {
		position: relative;
		top: 5em;
	}

	.office__item:nth-child(3),
	.office__item:last-child {
		position: relative;
		left: 1.2em;
	}

	.partner_employ-inner.inner-narrow {
		padding-top: 0;
	}
	.employment__title.c__title {
		line-height: 1.3;
	}
	.employment__title.c__title::before {
		bottom: -2rem;
	}
	.box__content.--employ::after {
		top: initial;
		right: -70%;
		width: 100%;
		bottom: -20%;
	}
	.gallery {
		aspect-ratio: 3/4;
	}

	.gallery__item.gallery__item--3 {
		right: 10px;
		top: 10%;
		width: 50%;
	}
	.gallery__item.gallery__item--3::before {
		background-image: url("../images/top/gallery__item--2.svg");
	}

	.gallery__item.gallery__item--4 {
		left: -50px;
		top: 30%;
		width: 50%;
	}

	.gallery__item.gallery__item--5 {
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%) !important;
		width: 50%;
	}

	.gallery__item.gallery__item--7 {
		right: -30px;
		bottom: 23%;
		width: 50%;
		z-index: -1;
	}
    .gallery__item.gallery__item--7::before {
        right: 5%;
        top: 10%;
    }
	.gallery__item.gallery__item--8 {
		right: initial;
		bottom: 8%;
		width: 50%;
		left: 5%;
	}

	.gallery__item.gallery__item--8::before {
		right: -60px;
		bottom: -10%;
	}

	.gallery {
		position: relative;
		padding-top: 200%;
		height: 0;
		width: 100%;
	}

	.recruit {
		mask-image: initial;
		-webkit-mask-image: initial;
		position: relative;
	}

	.recruit__inner {
		flex-direction: column;
		padding: 2em 4%;
	}

	.recruit__image {
		width: 100%;
		order: 2;
		margin-top: -2em;
		z-index: 1;
	}

	.recruit::before {
		content: "";
		display: inline-block;
		width: 100%;
		height: 101px;
		mask-image: url("../images/common/wave-top.svg");
		-webkit-mask-image: url("../images/common/wave-top.svg");
		position: absolute;
		top: -13vw;
		mask-size: 100%;
		-webkit-mask-size: 100%;
		mask-position: center top;
		-webkit-mask-position: center top;
		mask-repeat: no-repeat;
		-webkit-mask-repeat: no-repeat;
		background-color: var(--color-lightgreen);
		background-position: 10px 10px;
		background-size: 13px 13px;
		background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
	}

	.recruit::after {
		content: "";
		display: inline-block;
		width: 100%;
		height: 86px;
		position: absolute;
		bottom: -11vw;
		mask-image: url("../images/common/wave-bottom.svg?ver=1");
		-webkit-mask-image: url("../images/common/wave-bottom.svg?ver=1");
		mask-repeat: no-repeat;
		-webkit-mask-repeat: no-repeat;
		mask-size: 100%;
		-webkit-mask-size: 100%;
		mask-position: center bottom;
		-webkit-mask-position: center bottom;
		background-color: var(--color-lightgreen);
		background-image: linear-gradient(90deg, #00000003 10px, transparent 10px), linear-gradient(#00000003 10px, transparent 10px);
		background-position: 10px 10px;
		background-size: 13px 13px;
	}

	.recruit__content {
		order: 1;
		padding: 130% 0 0 0;
		position: relative;
		right: 0;
		background-image: url("../images/top/bg_contents-office.svg");
		width: 100%;
		height: 0;
		max-width: 100%;
	}

	.recruit__line-link img {
		max-width: 20%;
	}

	.recruit__line-link {
		margin-bottom: 30px;
		justify-content: center;
		line-height: initial;
		padding: 5px 10px;
	}

	.recruit__line-link__text {
		display: flex;
		flex-direction: column;
	}

	.recruit__text {
		margin-bottom: 20px;
	}
}