*,
::before,
::after {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

html {
	font: 62.5%/1.5 'Noto Sans JP', sans-serif;
}

@media (max-width: 375px) {
	html {
		font-size: 2.666vw;
	}
}

a {
	text-decoration: none;
	transition: opacity 0.2s;
	color: #000;
}

a:hover {
	opacity: 0.7;
}

ul {
	list-style-type: none;
}

.observer-fade-in,
.observer-fade-in-10 {
	transform: translateY(clamp(5rem, 10vw, 10rem));
	opacity: 0;
	transition: transform 0.7s ease, opacity 0.7s ease;
}

.fade-in-visible {
	transform: translateY(0);
	opacity: 1;
	will-change: transform;
}

/* subpage-header */
.subpage-header {
	margin: 8rem 0 0;
	height: clamp(16rem, 24vw, 18rem);
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(to bottom, #F2F4E2, #ffffff);
}

.subpage-header h1 {
	font-family: momochidori, sans-serif;
	font-size: clamp(3.2rem, 7vw, 6rem);
	line-height: 1;
	font-weight: 500;
	color: #000;
}

/* header */
.header {
	position: fixed;
	z-index: 10;
	top: 0;
	width: 100%;
	height: 8rem;
	background-color: #fffc;
	transition: height 0.3s ease;
}

.header-min {
	height: 5.5rem;
}

.header__container {
	max-width: 120rem;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	padding: 0 1.5rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	opacity: 1;
}

.header__banner {
	display: flex;
	align-items: center;
	font-size: 1.7rem;
	font-weight: 700;
	gap: 2rem;
	text-shadow: 0 0 0.3rem #fff;
}

.header__banner:hover {
	transform: none;
}

.header__banner img {
	width: 5.2rem;
	height: auto;
}

.header__right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-grow: 1;
}

.header__nav {
	max-width: 100%;
	flex-grow: 1;
	pointer-events: none;
}

.header__nav ul {
	display: flex;
	flex-grow: 1;
	justify-content: flex-end;
	padding: 0 1%;
	text-shadow: 0 0 0.3rem #fff;
	pointer-events: auto;
}

.header__nav li {
	padding: 0 2%;
}

.header__nav li>a {
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 500;
	padding: 0.8rem 0.5rem;
	transition: transform 0.3s ease;
}

.header__nav li>a:hover {
	transform: scale(1.1);
	opacity: 1;
	will-change: transform;
}

.header__contact {
	border-radius: 2.5rem;
	height: 5rem;
	max-width: 24rem;
	padding: 0 4%;
	background-color: #E64747;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: height 0.3s ease;
	font-size: 1.8rem;
	font-weight: 500;
	transition: all 0.3s ease;
}

.header-min .header__contact {
	height: 4rem;
}

.header__contact--text {
	color: #fff;
	display: inline-block;
	transition: transform 0.3s ease;
	transform-origin: center;
}

.header__contact:hover>.header__contact--text {
	transform: scale(1.1);
}

.header__contact:hover {
	opacity: 1;
	will-change: transform;
}

@media (max-width:900px) {
	.index-main {
		padding: 10rem 0 0;
	}

	.header {
		height: 6rem;
		padding: 0;
	}

	.header__nav {
		position: absolute;
		top: 6rem;
		left: 0;
		width: 100%;
		height: 5rem;
		overflow: hidden;
	}

	.header__nav ul {
		justify-content: center;
		width: 100%;
		background-color: #fffd;
		text-shadow: 0 0 0.3rem #fff;
		font-size: 1.6rem;
		gap: 2.5%;
	}

	.header__contact {
		height: 4rem;
		padding: 0 3rem;
		font-size: 1.8rem;
	}
}

@media (max-width:500px) {
	.header__container {
		padding: 0 1rem;
	}

	.header__banner {
		font-size: 1.7rem;
		gap: 1rem;
	}

	.header__nav ul {
		gap: 0;
		justify-content: space-around;
	}

	.header__nav li {
		padding: 0;
		margin: 0;
	}

	.header__nav a {
		font-size: 1.6rem;
		padding: 0.5rem 0;
	}

	.header__contact {
		padding: 0 2rem;
		font-size: 1.6rem;
	}

	.header__contact--text-last {
		display: none;
	}
}

/* breadcrumbs */
.breadcrumbs {
	width: min(100%, 124rem);
	padding: 0.3rem clamp(2rem, 4vw, 4rem);
	margin: 0 auto;
	color: #000;
	font-weight: 500;
	line-height: 1.5;
}

.breadcrumbs>span {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.breadcrumbs>span>span {
	font-size: clamp(1.4rem, 2.4vw, 1.6rem);
}

.breadcrumb_separator {
	display: inline-block;
	padding: 0 1.5rem;
}

.breadcrumb_last {
	font-weight: 500;
	color: #989898;
	line-height: 1.5;
	font-size: 1.6rem;
}

/* footer */
.footer {
	width: 100%;
	max-width: 120rem;
	height: 12rem;
	margin: 0 auto;
	padding: 0 2rem;
	display: flex;
	align-items: center;
	justify-content: space-around;
}

.footer__banner-sm,
.footer__banner {
	display: flex;
	align-items: center;
	gap: 2rem;
	font-size: 1.5rem;
	font-weight: 700;
}

.footer__banner-sm img,
.footer__banner img {
	width: 5.2rem;
	height: auto;
}

.footer__banner-sm {
	display: none;
}

.footer__nav {
	display: flex;
	align-items: center;
	margin: 0 auto;
	flex-grow: 1;
}

.footer__nav ul {
	display: flex;
	flex-grow: 1;
	justify-content: center;
	margin: 0 auto;
}

.footer__nav li {
	padding: 0 2%;
}

.footer__nav li>a {
	font-size: 1.4rem;
	font-weight: 500;
	padding: 0.5rem;
}

.footer__small {
	font-family: 'josefin sans', 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
	display: block;
	padding: 0.5rem 0 0;
}

@media(max-width:768px) {
	.footer {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		margin: 0 auto;
		padding: 0;
	}

	.footer__banner {
		display: none;
	}

	.footer__banner-sm {
		display: flex;
		gap: 1rem;
	}

	.footer__sm {
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 clamp(1.5rem, 3vw, 4rem);
	}

	.footer__small {
		padding: 0.7rem 0 0;
	}

	.footer__nav {
		display: flex;
		justify-content: center;
		margin: 1rem auto 1.5rem;
		width: 100%;
		flex-grow: 0;
		align-self: flex-start;
	}

	.footer__nav ul {
		display: flex;
		justify-content: center;
		margin: 0 auto;
		flex-grow: 0;
		gap: clamp(4rem, 7%, 7rem);
	}

	.footer__nav li {
		padding: 0;
	}

	@media(max-width:500px) {
		.footer__banner {
			font-size: 1.7rem;
		}

		.footer__nav ul {
			gap: 0;
			padding: 0;
			justify-content: space-around;
			width: 100%;
		}

		.footer__nav li>a {
			font-size: 1.4rem;
		}
	}
}

/* index-main */
.index-main {
	width: 100%;
	overflow-x: hidden;
	min-height: calc(100vh - 12rem);
	min-height: 30rem;
	padding: 8rem 0 0;
}

@media (max-width:900px) {
	.index-main {
		padding: 10rem 0 0;
	}
}

/*index-fv */
.index-fv {
	height: 62rem;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	z-index: 1;
	/* アニメーションのため追記 */
	--bg1-x: 0;
	--bg1-y: 0;
	--bg2-x: 0;
	--bg2-y: 0;
}

.index-fv::before,
.index-fv::after {
	content: "";
	position: absolute; 
	inset: -100%;
	background-position: center;
	transform: rotate(45deg);
	backface-visibility: hidden;
	z-index: -1;
	background-image: url('../images/common/cachica_bg.svg');
	background-repeat: repeat;
	background-size: 64rem 48rem;
	/* background-position: calc(50% - 6rem) calc(50% - 14rem); */
	/* アニメーションのため変更 */
	background-position:
		calc(50% - 6rem + var(--bg1-x))
		calc(50% - 14rem + var(--bg1-y));
	height: auto;
	width: auto;
}

.index-fv::after {
	transform: rotate(225deg);
	/* background-position: calc(50% - 26rem) calc(50% - 18rem); */
	/* アニメーションのため変更 */
	background-position:
		calc(50% - 26rem + var(--bg2-x))
		calc(50% - 18rem + var(--bg2-y));
}

.index-fv>img {
	position: absolute;
	width: auto;
	height: auto;
}

.index-fv>img:nth-of-type(1) {
	top: calc(50% - 9rem);
	left: calc(50% - 23rem);
}

.index-fv>img:nth-of-type(2) {
	top: calc(50% + 24rem);
	left: calc(50% - 57rem);
}

.index-fv>img:nth-of-type(3) {
	top: calc(50% - 26.5rem);
	left: calc(50% + 28rem);
}

.index-fv>img:nth-of-type(4) {
	top: calc(50% - 16rem);
	left: calc(50% + 61rem);
}

.index-fv>* {
	position: relative;
	z-index: 0;
}

.index-fv__catch-container {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 95%;
	height: 100%;
	max-width: 124rem;
	margin: 0 auto;
	padding: 12rem 0 0;
}

.index-fv__catch {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.index-fv__charge {
	margin: 0 0 -7rem 1.5rem;
	padding: 0.5rem 2.5rem;
	display: flex;
	align-items: center;
	transform: rotate(-8deg);
	font-size: 4.1rem;
	font-family: aralet-n, 'Noto Sans JP', sans-serif;
	color: #fff;
	background-color: #000;
	z-index: 2;
}

.index-fv__hourly {
	position: relative;
	margin: 6.5rem 0 0;
	font-size: clamp(5rem, 5.5vw, 6.2rem);
	font-family: aralet-n, 'Noto Sans JP', sans-serif;
	height: 10.9rem;
	padding: 1rem 3rem 0;
	border: clamp(0.2rem, 0.3vw, 0.3rem) solid #000;
	display: flex;
	align-items: center;
	background-color: #fff;
}

.index-fv__hourly::after {
	content: '';
	position: absolute;
	box-sizing: content-box;
	z-index: -1;
	top: 9%;
	left: 1.7%;
	width: 100%;
	height: 100%;
	background-color: #000;
	border: clamp(0rem, 0.3vw, 0.3rem) solid #000;
}

.index-fv__monthly {
	position: relative;
	margin: 2.1rem 0 0;
	font-size: clamp(5rem, 5.5vw, 6.2rem);
	color: #fff;
	font-family: aralet-n, 'Noto Sans JP', sans-serif;
	height: 10.9rem;
	padding: 1rem 3rem 0;
	display: flex;
	align-items: center;
	background-color: #000;
}

.index-fv__monthly::after {
	content: '';
	position: absolute;
	z-index: -1;
	top: 11.5%;
	left: 1.75%;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border: clamp(0.2rem, 0.3vw, 0.3rem) solid #000;
}


@media(max-width: 1000px) {
	.index-fv__catch-container {
		padding: 5rem 2rem 0;
	}

	.index-fv__charge {
		margin: 0 0 -0 1.2vw;
		padding: 0.48vw 2.4vw 0;
		height: auto;
		font-size: 3.96vw;
	}

	.index-fv__hourly {
		margin: -1.5% 0 0;
		font-size: 5.52vw;
		height: auto;
		padding: 0.84vw 3vw 0.24vw;
		border: 0.3vw solid #000;
	}

	.index-fv__monthly {
		margin: 1.92vw 0 0;
		font-size: 5.52vw;
		height: auto;
		padding: 0.84vw 3vw 0.24vw;
	}
}

@media(max-width: 768px) {
	.index-fv {
		height: 55rem;
	}

	.index-fv__catch-container {
		justify-content: center;
		align-items: flex-end;
		margin: 0 auto;
		padding: 0 2rem 4rem;
	}

	.index-fv::before,
	.index-fv::after {
		background-size: 50rem 36rem;
		/* background-position: calc(50% - 8rem) calc(60% + 2rem); */
		/* アニメーションのため変更 */
		background-position:
		calc(50% - 8rem + var(--bg1-x))
		calc(50% + 2rem + var(--bg1-y));
		inset: -100%;
	}

	.index-fv::after {
		/* background-position: calc(50% - 17.3rem) calc(40% + 10rem); */
		/* アニメーションのため変更 */
		background-position:
		calc(50% - 17.3rem + var(--bg2-x))
		calc(40% + 10rem + var(--bg2-y));
	}

	.index-fv>img {
		width: 5rem;
		z-index: -5;
	}

	.index-fv>img:nth-of-type(1) {
		top: 3%;
		left: 13%;
	}

	.index-fv>img:nth-of-type(2) {
		top: 20%;
		left: 80%;
	}

	.index-fv>img:nth-of-type(3) {
		top: 85%;
		left: 10%;
	}

	.index-fv>img:nth-of-type(4) {
		top: 93%;
		left: 70%;
	}

	.index-fv__charge {
		margin: 0 0 0 1rem;
		padding: 0.7rem 1.5rem 0;
		font-size: 2.5rem;
	}

	.index-fv__hourly {
		margin: -0.5rem 0 0;
		padding: 0.4rem 2rem 0;
		font-size: 3.5rem;
	}

	.index-fv__monthly {
		margin: 1.2rem 0 0;
		padding: 0.4rem 2rem 0;
		font-size: 3.5rem;
	}
}

@media(max-width: 500px) {
	.index-fv {
		height: 50rem;
	}

	.index-fv__catch-container {
		padding: 0 2rem calc(14rem - 20vw) 2rem;
	}

	.index-fv__charge {
		font-size: 5.5vw;
	}

	.index-fv__hourly,
	.index-fv__monthly {
		font-size: 7.5vw;
	}
}

/* index-concept */
.index-concept {
	position: relative;
	z-index: 2;
	width: 100%;
	padding: 0 0 clamp(4rem, 6vw, 6rem);
	background-color: #F2F4E2;
}

.index-concept__container {
	position: relative;
	z-index: 3;
	max-width: 140rem;
	width: 100%;
	margin: 0 auto;
}

.index-concept__png-negima {
	position: absolute;
	left: calc(50% - clamp(50rem, 52vw, 63rem));
	top: calc(-57rem);
	width: clamp(45rem, 45vw, 58rem);
	height: auto;
	transform: rotate(-4.35deg);
	z-index: 1;
}

.index-concept__png-kushi2 {
	position: absolute;
	top: 2rem;
	right: 6%;
	width: 13%;
	height: auto;
	z-index: 1;
}

.index-concept__bg-text {
	position: absolute;
	z-index: -3;
	width: 100%;
	height: 50rem;
	padding: clamp(1rem, 2vw, 2rem) 0;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.index-concept__bg-text--kase {
	width: 36.5%;
	height: auto;
}

.index-concept__bg-text--ge {
	width: 33.5%;
	height: auto;
}

.index-concept__bg-text--ru {
	width: 28.5%;
	height: auto;
}

.index-concept__content {
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding: 0 1% 0;
}

.index-concept__png-human1 {
	position: absolute;
	z-index: -1;
	top: clamp(-8.5rem, -6vw, -4rem);
	left: -1.5rem;
	width: 29rem;
	height: auto;
}

.index-concept__png-human2 {
	position: absolute;
	z-index: -1;
	top: 2%;
	right: -5rem;
	width: 29rem;
	height: auto;
}

.index-concept__png-human3 {
	position: absolute;
	z-index: -1;
	bottom: -18rem;
	right: 3rem;
	width: auto;
	height: auto;
	padding: 0 5rem;
	background-color: #F2F4E2;
}

.index-concept__content h2 {
	position: relative;
	z-index: 3;
	font-family: momochidori, 'Noto Sans JP', sans-serif;
	font-size: clamp(1.6rem, 9vw, 13rem);
	font-weight: 900;
	line-height: 120%;
	margin: 0 auto;
	padding: 6% 0 4% 5.5%;
	text-align: center;
}

.index-concept__content p {
	text-align: center;
}

.index-concept__content p span {
	z-index: 2;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: clamp(1.6rem, calc(1.4vw + 1.1rem), 2.8rem);
	line-height: 2.3;
	text-align: center;
	white-space: nowrap;
	text-shadow: 0 0 0.5rem #F2F4E2, 0 0 0.6rem #F2F4E2, 0 0 0.7rem #F2F4E2, 0 0 0.8rem #F2F4E2, 0 0 1rem #F2F4E2, 0 0 1.2rem #F2F4E2, 0 0 1.5rem #F2F4E2;
}

.index-concept__img-container {
	display: inline-block;
	width: 3.2em;
	height: 2em;
}

.index-concept__img-container img {
	margin: auto;
	width: auto;
	height: auto;
	vertical-align: middle;
	max-height: 2.7em;
}

.index-concept__bottom-space {
	width: 100%;
	height: 0.5rem;
	z-index: -5;
	background-color: #F2F4E2;
	border-top: 0.5rem solid #FFF;
	margin: clamp(3rem, 8vw, 9.5rem) 0 0;
}

@media(max-width:1000px) {
	.index-concept__png-negima {
		top: -57rem;
		left: -3vw;
		width: 47vw;
		height: auto;
	}

	.index-concept__png-human1 {
		left: -2rem;
		top: -5.5vw;
		width: 28%;
		height: auto;
	}

	.index-concept__png-human2 {
		top: 23%;
		right: -7%;
		width: 30%;
		height: auto;
	}

	.index-concept__png-human3 {
		bottom: -16vw;
		right: 7%;
		width: 35%;
		height: auto;
		padding: 0 5%;
	}
}

@media(max-width:768px) {
	.index-concept__png-negima {
		left: calc(50% - 16rem);
		top: -58rem;
		width: 32rem;
		transform: rotate(-10deg);
	}
}

@media(max-width:500px) {
	.index-concept__png-negima {
		left: calc(50% - 13rem);
		top: -54rem;
		width: 26rem;
		transform: rotate(-13deg);
	}
}

/* index-reel */
.index-reel {
	position: relative;
	z-index: 5;
	width: 100%;
	background-color: #F2F4E2;
}

.index-reel__container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 100%;
	max-width: 120rem;
	margin: 0 auto 1em;
	padding: 0 clamp(1rem, 4vw, 3rem) clamp(3rem, 4vw, 5rem);
	gap: clamp(1rem, 4vw, 3rem);
}

.index-reel__container iframe {
	/* width: 100%; */
	/* height: clamp(40rem, 47vw, 60rem); */
	/* display: block; */
	width: 100%;
	aspect-ratio: 270 / 584;
	display: block;
	border: none;
	overflow: hidden;
}

.index-reel__bottom-space {
	height: clamp(5rem, 6vw, 7rem);
	width: 100%;
	border-top: 0.5rem solid #FFF;
}

@media (max-width:768px) {
	.index-reel__container {
		grid-template-columns: repeat(2, 1fr);
	}

	.index-reel iframe {
		width: 100%;
		/* height: clamp(40rem, 90vw, 60rem); */
		display: block;
	}
}

/* index-promise */
.index-promise {
	width: 100%;
	max-width: 120rem;
	margin: clamp(4rem, 4vw, 5rem) auto 0;
}

.index-promise h2 {
	font-family: momochidori, 'Noto Sans JP', sans-serif;
	font-size: clamp(2.5rem, calc(7vw + 1rem), 10.5rem);
	font-weight: 900;
	padding: 0 clamp(2.5rem, 4vw, 3rem);
}

.index-promise__wrap {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	margin: clamp(1rem, 2vw, 2rem)0 0;
}

.index-promise__vertical {
	transform: rotate(-90deg);
	transform-origin: left top;
	font-size: clamp(1.4rem, calc(1vw + 1.5rem), 2.5rem);
	font-family: 'josefin sans', 'Noto Sans JP', sans-serif;
	font-weight: 400;
	width: 11.5rem;
	overflow-x: visible;
}

.index-promise ul {
	display: flex;
	flex-direction: column;
	border-left: solid 0.2rem #000;
	padding: 0 0 4rem calc(12% - 2rem);
	flex-grow: 1;
}

.index-promise li {
	position: relative;
	margin: clamp(1.5rem, 2vw, 2rem) 0 clamp(1.3rem, 5vw, 5rem);
	flex-grow: 1;
	padding: clamp(2rem, 3.5rem, 4rem) 0 0;
}

.index-promise li>h3 {
	font-family: 'josefin sans', 'Noto Sans JP', sans-serif;
	font-size: clamp(6rem, calc(9vw + 2rem), 12rem);
	font-weight: 300;
	line-height: 1.1;
}

.index-promise li:first-child h3 {
	font-weight: 400;
}

.index-promise li p {
	display: flex;
	flex-direction: column;
	font-weight: 700;
	font-size: clamp(2rem, calc(1.5vw + 1.2rem), 3.5rem);
	line-height: 1.7;
	text-shadow: 0 0 0.5em #fff, 0 0 0.5em #fff, 0 0 0.5em #fff, 0 0 0.5em #fff;
}

.index-promise__border {
	position: relative;
	border-bottom: 0.1rem solid #000;
	z-index: -2;
	width: calc(100% - 7rem);
	margin: 2.5rem 0 3rem;
}

.index-promise small {
	font-size: 1.6rem;
	font-weight: 500;
	text-shadow: 0 0 0.5em #fff, 0 0 0.5em #fff, 0 0 0.5em #fff, 0 0 0.5em #fff;
}

.index-promise li img {
	position: absolute;
	z-index: -1;
	height: auto;
	width: auto;
}

.index-promise li:nth-child(1) img {
	top: -6rem;
	left: 59rem;
}

.index-promise li:nth-child(2) img {
	top: 1rem;
	left: 41rem;
}

.index-promise li:nth-child(3) img {
	top: 6rem;
	left: 59rem;
}

@media (max-width: 1400px) {
	.index-promise__vertical {
		width: 10vw;
		transform: rotate(-90deg) translateY(2vw);
	}

	.index-promise li:nth-child(1) img {
		top: clamp(-4vw, calc(-4vw + 2rem), 1rem);
		right: 2vw;
		left: auto;
		width: clamp(18.5rem, calc(12rem + 19vw), 40rem);
	}

	.index-promise li:nth-child(2) img {
		top: 1rem;
		right: clamp(2vw, calc(15vw - 5rem), 15rem);
		left: auto;
		width: clamp(16rem, calc(11rem + 19vw), 38rem);
	}

	.index-promise li:nth-child(3) img {
		top: 4vw;
		right: 2vw;
		left: auto;
		width: clamp(14.5rem, calc(11rem + 17vw), 35rem);
	}
}

/* index-instagram */
.index-instagram {
	background-color: #F2F4E2;
	width: 100%;
	padding: clamp(2rem, 3vw, 3rem) 0;
}

.index-instagram__h2-container {
	background-color: #F2F4E2;
	width: 100%;
	padding: 2.5rem 0 0;
	border-bottom: solid 0.5rem #fff;
}

.index-instagram__h2-container>h2 {
	font-family: 'josefin sans', 'Noto Sans JP', sans-serif;
	width: 100%;
	max-width: 120rem;
	font-size: clamp(2.5rem, 3vw, 3.5rem);
	font-weight: 600;
	margin: 0 auto 1rem;
	padding: 0 2.5rem;
}

.index-instagram__wrap {
	width: 100%;
	max-width: 120rem;
	margin: 0 auto;
	padding: 1.5rem 2.5rem 0;
}

.index-instagram__wrap p {
	font-size: clamp(1.6rem, 1.5vw, 2rem);
	font-weight: 700;
	margin: clamp(2rem, 1.5vw, 2rem) 0;
}

.index-instagram__feed {
	margin: clamp(2rem, 1.5vw, 3rem) 1rem;
	height: clamp(30rem, 80vw, 50rem);
	overflow-y: auto;
}

/* insert-contact */
.insert-contact {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 120rem;
	margin: clamp(5rem, 7vw, 9rem) auto 0;
}

.insert-contact__img-wrap {
	position: relative;
	width: 100%;
}

.insert-contact__cachica_bg {
	display: block;
	margin: 0 auto;
	width: clamp(30rem, 100vw, 64rem);
	height: auto;
}

.insert-contact__negima {
	position: absolute;
	top: clamp(-5rem, calc(10rem - 20vw), -3rem);
	right: calc(-2rem + clamp(0rem, calc(10vw - 10rem), 2rem));
	width: clamp(18rem, 48vw, 33.8rem);
	height: auto;
	transform: scaleX(-1);
	z-index: -1;
}

.insert-contact__kushi2 {
	position: absolute;
	top: clamp(50%, calc(40% + 10vw), calc(100% - 60rem));
	left: clamp(calc(50% - 52rem), calc(50% - 51vw), calc(100vw));
	width: 30vw;
	max-width: 23rem;
	height: auto;
	z-index: -1;
}

.insert-contact__contact {
	position: relative;
	font-weight: 500;
	max-width: 96rem;
	width: 90%;
	height: clamp(5.5rem, 11vw, 10rem);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: clamp(0.5rem, 1vw, 1rem);
	background-color: #E64747;
	margin: clamp(2rem, 3vw, 4rem) auto 0;
}

.insert-contact__contact a {
	display: flex;
	align-items: center;
}

.insert-contact__contact span {
	font-size: clamp(1.8rem, 4vw, 4rem);
	color: #fff;
	transition: transform 0.3s ease;
}

.insert-contact__contact:hover span {
	transform: scale(1.1);
	opacity: 1;
	will-change: transform
}

.insert-contact__contact:hover {
	opacity: 1;
}

.insert-contact__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-40%);
	right: 8%;
	max-width: 2.7rem;
	width: 3%;
	height: auto;
}

/* insert-access */
.insert-access {
	background-color: #000;
	border-radius: 15rem 15rem 0 0;
	width: 100%;
	color: #fff;
	margin: clamp(6rem, 7vw, 9rem) 0 0;
	padding: clamp(4rem, 5vw, 6rem) 1rem clamp(2rem, 4vw, 5rem);
}

.insert-access h2 {
	font-family: 'josefin sans', 'Noto Sans JP', sans-serif;
	font-size: clamp(3rem, 4vw, 4.5rem);
	font-weight: 600;
	width: 100%;
	text-align: center;
}

.insert-access__container {
	display: flex;
	flex-direction: row-reverse;
	width: 100%;
	max-width: 125rem;
	margin: clamp(3rem, 5vw, 6rem) auto 0;
	padding: 0 4rem;
}

.insert-access__route {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	flex-grow: 1;
	padding: 0 6rem 0 0;
	font-size: 1.6rem;
	line-height: 3rem;
	gap: 0.5rem;
}

.insert-access h3 {
	font-size: 2rem;
	font-weight: 400;
}

.insert-access h3 img {
	margin: 0 2rem 0 0;
	vertical-align: text-bottom;
	width: auto;
	height: auto;
}

.insert-access__walk {
	padding: 0 0 3rem 0;
	border-bottom: 0.2rem solid #fff;
}

.insert-access__walk p {
	margin: 4rem 0 1.5rem;
}

.insert-access__bus {
	margin: 5.5rem 0 0;
}

.insert-access__line-wrap {
	/* display: flex; */
	margin: 3.5rem 0 0;
	gap: 4rem;
}

.insert-access__line-wrap div {
	font-size: 18px;
	font-weight: 700;
}

.insert-access__line_wrap dl {
	margin: 3.5rem 0 0;
}

.insert-access__line-wrap dd {
	margin: 0 0 3rem;
}

.insert-access__map iframe {
	margin: 2.5rem 0 0;
	max-width: 50rem;
	width: 45vw;
	height: 44rem;
	border-radius: clamp(1.5rem, 2vw, 2rem);
}

@media(max-width:1000px) {
	.insert-access {
		border-radius: 14vw 14vw 0 0;
	}

	.insert-access__container {
		max-width: 92%;
		padding: 0;
		flex-direction: column;
		align-items: stretch;
	}

	.insert-access__walk {
		padding: 0 0 1.5rem 0;
	}

	.insert-access__route {
		border-top: 0.2rem solid #fff;
		padding: 4rem 0 0;
		margin: 4rem 0 0;
	}

	.insert-access__bus {
		margin: 4rem 0 0;
	}

	.insert-access__map iframe {
		width: 100%;
		max-width: 100%;
		max-height: 75vw;
	}
}

@media(max-width:500px) {
	.insert-access__walk p {
		margin: 2rem 2vw;
	}

	.insert-access__line-wrap {
		flex-direction: column;
		margin: 2rem 2vw;
		gap: 1rem;
	}
}

/* page-recruit */
.page-recruit__header {
	margin: 8rem 0 0;
	height: clamp(10rem, 18vw, 18rem);
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(to bottom, #F2F4E2, #ffffff);
}

.page-recruit__header h1 {
	font-family: momochidori, sans-serif;
	font-size: clamp(4rem, 6vw, 6rem);
	line-height: 1;
	font-weight: 500;
	color: #000;
}

@media(max-width:900px) {
	.page-recruit__header {
		margin: 12rem 0 0;
	}
}

.page-recruit__introduction {
	width: min(90%, 80rem);
	margin: clamp(4rem, 5vw, 4.5rem) auto 0;
	font-family: momochidori, sans-serif;
	font-weight: 700;
	color: #000;
	font-size: clamp(1.8rem, 3vw, 2.2rem);
	line-height: 1.9;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.page-recruit__introduction span {
	white-space: nowrap;
}

.page-recruit__details {
	width: min(97rem, 100%);
	margin: clamp(7rem, 7vw, 7.5rem) auto clamp(8rem, 15vw, 13rem);
	padding: 0 clamp(2rem, 4vw, 4rem);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(2rem, 3vw, 3.5rem);
}

.page-recruit__details h2 {
	font-family: momochidori, sans-serif;
	font-weight: 700;
	color: #000;
	font-size: clamp(2.4rem, 4vw, 3.5rem);
	line-height: 1.2;
}

.page-recruit__details ul {
	width: 100%;
}

.page-recruit__details ul li {
	border-bottom: solid #000 0.1rem;
}

.page-recruit__details ul li dl {
	display: flex;
	align-items: center;
	gap: clamp(1.5rem, 3vw, 2.2rem);
}

.page-recruit__details ul li dt {
	flex-basis: clamp(9rem, 22vw, 24rem);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-weight: 700;
	color: #000;
	font-size: clamp(1.8rem, 2vw, 2.2rem);
	line-height: 5.5rem;
	background-color: #F2F4E2;
	border-radius: 1rem;
	margin: 1.6rem 0 1rem;
}

.page-recruit__details ul li dd {
	font-weight: 500;
	color: #000;
	font-size: 1.6rem;
	max-width: 49rem;
	line-height: clamp(2.7rem, 3.2vw, 2.8rem);
	margin: clamp(1.8rem, 3.5vw, 2.5rem) 0 clamp(1.6rem, 3vw, 1.9rem);
}

.page-recruit__details ul li:not(:first-child) dd {
	min-height: clamp(8rem, 10vw, 8.5rem);
	display: flex;
	align-items: center;
}

/* page-flow */
.page-flow__introduction {
	width: min(95%, 70rem);
	margin: clamp(4rem, 5vw, 4.5rem) auto 0;
	font-family: momochidori, sans-serif;
	font-weight: 700;
	color: #000;
	font-size: clamp(1.8rem, 2.9vw, 2.2rem);
	line-height: 1.9;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.page-flow__introduction span {
	white-space: nowrap;
}

.page-flow__details {
	width: 100%;
	background-color: #F2F4E2;
	margin: 5rem 0 -1rem;
}

.page-flow__details-container {
	position: relative;
	margin: 0 auto;
	width: min(95%, 125rem);
}

.page-flow__side-title {
	position: absolute;
	right: 100%;
	top: 3rem;
	transform-origin: top right;
	transform: rotate(-90deg);
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 700;
	font-size: clamp(11rem, 22vw, 20rem);
	line-height: clamp(9.5rem, 23vw, 20rem);
	color: #fff;
	z-index: 1;
}

.page-flow__details ol {
	width: min(calc(96% - clamp(7rem, 18vw, 22rem)), 103rem);
	margin-left: clamp(7rem, 20vw, 25rem);
	padding: clamp(3rem, 5vw, 4.6rem) 0;
	display: flex;
	flex-direction: column;
	gap: clamp(2rem, 4vw, 3rem);
}

.page-flow__details ol li {
	display: flex;
	flex-direction: column;
	display: grid;
	grid-template-columns: auto 1fr;
	background-color: #fff;
	padding: clamp(1.5rem, 2vw, 2rem) clamp(1rem, 2.8vw, 3rem) clamp(2rem, 2.4vw, 3rem);
	border-radius: 1rem;
}

.page-flow__details ol li h2 {
	grid-area: 1 / 2 / 2 / 3;
	font-weight: 700;
	font-size: clamp(1.8rem, 3vw, 2.5rem);
	line-height: 1.4;
	color: #000;
	margin: clamp(0.95rem, 1.25vw, 1.25rem) 0 1.6rem;
	padding-left: clamp(0.5rem, 1.5vw, 2.5rem);
}

.page-flow__details ol li p {
	grid-area: 2 / 2 / 3 / 3;
	font-size: clamp(1.6rem, 2.4vw, 1.6rem);
	font-weight: 500;
	padding: 1.4rem 0 0.3rem clamp(1rem, 1.5vw, 2.5rem);
	line-height: clamp(2.7rem, 4vw, 3rem);
	border-top: solid 0.1rem #000;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.page-flow__details ol li p span {
	max-width: 65rem;
}

.page-flow__details-count {
	position: relative;
	grid-area: 1 / 1 / 2 / 2;
	width: clamp(7rem, 9vw, 9.5rem);
	font-family: 'Josefin Sans', sans-serif;
	font-size: clamp(5rem, 7vw, 7rem);
	font-weight: 300;
	line-height: 0.8;
	margin: auto;
	padding: 1.5rem 0 0;
}

.page-flow__details ol li:not(:first-child) .page-flow__details-count:after {
	content: '';
	position: absolute;
	z-index: 3;
	width: 0.5rem;
	height: 7rem;
	background-color: #fff;
	bottom: 100%;
	left: clamp(3rem, calc(3.5vw + 0.5rem), 4rem);
}


@media(max-width:500px) {
	.page-flow__details ol li p {
		grid-area: 2 / 1 / 3 / 3;
	}

	.page-flow__details-count {
		padding: 0 0 0 0.7rem;
	}
}

.page-flow__details ol li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24rem;
	height: 5rem;
	border-radius: 2.5rem;
	background-color: #E64747;
	margin-bottom: -0.5rem;
}

@media(max-width:500px) {
	.page-flow__details ol li a {
		align-self: center;
		margin-right: 1rem;
	}
}

.page-flow__details ol li a>span {
	font-size: 1.8rem;
	transition: transform 0.3s ease;
	color: #fff;
}

.page-flow__details ol li a:hover {
	opacity: 1;
	will-change: transform;
}

.page-flow__details ol li a:hover>span {
	transform: scale(1.1);
}

/* page-contact */
.page-contact__introduction {
	width: min(95%, 70rem);
	margin: clamp(4rem, 5vw, 4.5rem) auto 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.page-contact__introduction span {
	font-family: momochidori, sans-serif;
	font-weight: 700;
	color: #000;
	font-size: clamp(1.8rem, 2.9vw, 2.2rem);
	line-height: 1.9;
}

.page-contact__cf7 {
	position: relative;
	width: min(100%, 120rem);
	margin: 5.8rem auto clamp(6rem, 20vw, 22rem);
}

.page-contact__cf7 h2 {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 100%;
	transform: rotate(-90deg) translateY(calc(40% - 0.5rem)) translateX(13%);
	transform-origin: right;
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 700;
	font-size: clamp(8.5rem, 20vw, 20rem);
	color: #F2F4E2;
}

.cf7__container {
	display: flex;
	flex-direction: column;
	gap: clamp(2rem, 3.2vw, 3.2rem);
	align-items: stretch;
	width: min(83%, 76rem);
	padding: 0 3rem;
	margin: 0 auto;
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0rem, rgba(255, 255, 255, 0.9) 1rem, rgba(255, 255, 255, 1) 100%);
}

@media(max-width:1150px) {
	.cf7__container {
		padding: 0 clamp(1rem, 3vw, 3rem);
		margin: 0 0 0 clamp(6rem, 16vw, 24rem);
	}
}

.cf7__form-group {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.cf7__form-group label {
	font-weight: 500;
	font-size: clamp(1.7rem, 2vw, 1.8rem);
}

.cf7__address-container {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.cf7__input-container input,
.cf7__textarea-container textarea,
.cf7__post-input-container input {
	width: 100%;
	height: clamp(5rem, 5.8vw, 5.8rem);
	background-color: #F4F4F4;
	border: solid 0.1rem #D3D3D3;
	border-radius: 1rem;
	font-size: 1.6rem;
	font-weight: 400;
	color: #000;
	line-height: 1.5;
	padding: 0 clamp(1.3rem, 3vw, 3.2rem);
	letter-spacing: clamp(0.1rem, 0.4vw, 0.208rem);
	font-family: 'Noti Sans JP', sans-serif;
}

.wpcf7-not-valid-tip {
	font-size: 1.55rem;
	line-height: 1.3;
	color: #E64747;
}

.cf7__input-container input.wpcf7-not-valid,
.cf7__textarea-container textarea.wpcf7-not-valid,
.cf7__post-input-container input.wpcf7-not-valid {
	border: solid 0.15rem #E64747;
}

.cf7__input-container input::placeholder,
.cf7__textarea-container textarea::placeholder,
.cf7__post-input-container input::placeholder {
	color: #D5D5D5;
	letter-spacing: 0.18rem;
}

.cf7__post-container {
	display: flex;
	align-items: center;
	gap: clamp(1rem, 2vw, 1.6rem);
}

.cf7__post-input-container {
	width: clamp(12rem, 30vw, 20rem);
	display: flex;
	align-items: center;
	gap: clamp(0.8rem, 1.5vw, 1.25rem);
}

.cf7__post-input-container p {
	width: clamp(12rem, 30vw, 20rem);
	gap: clamp(0.8rem, 1.5vw, 1.25rem);
}

.cf7__post-input-container input {
	width: clamp(12rem, 30vw, 20rem);
}

.cf7__post-input-container input::placeholder {
	color: #D5D5D5;
}

.cf7__post-search {
	display: flex;
	align-items: center;
	justify-content: center;
	width: clamp(9rem, 13vw, 12.2rem);
	height: 3.8rem;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.18rem;
	background-color: #D3DB8C;
	border-radius: 1rem;
	color: #fff;
	border: solid 0.1rem #D3D3D3;
	margin: 0 0.8rem;
	cursor: pointer;
}

.cf7__textarea-container textarea {
	height: 22rem;
	padding: clamp(1rem, 2vw, 1.9rem) clamp(1.3rem, 3vw, 3.2rem);
}

.cf7__submit-container {
	width: 100%;
	display: flex;
	flex-direction: column;
	margin: clamp(2rem, 4vw, 4rem) 0 0;
	padding: 1.5rem;
}

.cf7__acceptance {
	display: flex;
	gap: 0.4rem;
	align-items: center;
	margin: 0 auto;
}

.cf7__acceptance input[type="checkbox"][name="your-consent"] {
	width: 1.8rem;
	height: 1.8rem;
	font-size: 1.6rem;
	transform: translateY(30%);
}

.cf7__policy {
	display: flex;
	align-items: center;
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
	font-size: 1.8rem;
	font-weight: 500;
	margin-top: 0.1rem;
}

.cf7__policy-link {
	display: block;
	border-bottom: solid 0.1rem #000;
	padding: 0 0.2rem;
	margin: 0 0.2rem;
	line-height: 1.3;
}

.cf7__submit {
	position: relative;
	margin: 2.4rem auto 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: clamp(28rem, 38vw, 38.6rem);
	height: clamp(5.3rem, 8vw, 8rem);
	border-radius: 4rem;
	overflow: hidden;
	border: none;
}

.wpcf7-form-control {
	border: none;
}

.cf7__submit::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 3.3rem;
	width: clamp(1.8rem, 2.7vw, 2.7rem);
	height: clamp(1.27rem, 1.9vw, 1.9rem);
	background-size: cover;
	transform: translateY(-50%);
	background-image: url('../images/common/arrow.svg');
}

.wpcf7-submit {
	width: clamp(28rem, 38vw, 38.6rem);
	height: clamp(5.3rem, 8vw, 8rem);
	border-radius: 4rem;
	background-color: #E64747;
	color: #fff;
	margin: 0 auto;
	font-size: clamp(2rem, 2.5vw, 2.5rem);
	letter-spacing: clamp(0.16rem, 0.2vw, 0.2rem);
	font-weight: 500;
	cursor: pointer;
	clip-path: inset(0 round 50px);
	transition: transform 0.3s ease;
}

.wpcf7-submit:hover {
	transform: scale(1.1);
	will-change: transform;
}

.wpcf7-spinner {
	position: absolute;
	display: none;
}

.wpcf7-form {
	width: min(100%, 120rem);
	display: flex;
	flex-direction: column;
}

.wpcf7-response-output {
	width: min(90%, 65rem);
	font-size: 1.6rem;
	align-self: center;
	margin: 0 auto;
}

/* page-thanks */
.page-thanks__response {
	font-size: clamp(2rem, 2.2vw, 2.2rem);
	font-weight: 700;
	line-height: 1.25;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 5rem 0 0;
}

.page-thanks__response span {
	white-space: nowrap;
}

.page-thanks__reply {
	display: flex;
	align-items: center;
	flex-direction: column;
	width: min(100%, 120rem);
	margin: clamp(3rem, 5vw, 5rem) auto 0;
	padding: 0 clamp(2rem, 7vw, 7rem);
}

.page-thanks__reply span {
	font-size: clamp(1.6rem, 2.4vw, 1.8rem);
	font-weight: 500;
	line-height: 1.67;
	white-space: nowrap;
}

.page-thanks__reply .page-thanks__reply--nowrap {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

@media(max-width:600px) {
	.page-thanks__reply {
		display: block;
	}

	.page-thanks__reply span {
		display: inline;
		white-space: normal;
	}

	.page-thanks__reply .page-thanks__reply--nowrap {
		display: inline;
	}
}

.page-thanks__missing {
	width: 90%;
	max-width: 90rem;
	margin: clamp(5rem, 7vw, 7rem) auto clamp(10rem, 19vw, 21rem);
	padding: clamp(4rem, 5vw, 5rem) clamp(1rem, 2vw, 2rem);
	border-radius: 4rem;
	border: solid 0.1rem #000;
}

.page-thanks__missing h2 {
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.67;
}

.page-thanks__missing p {
	font-size: clamp(1.6rem, 2.4vw, 1.8rem);
	font-weight: 500;
	line-height: 1.67;
	width: 100%;
	max-width: 78.3rem;
	text-align: center;
	margin: clamp(2.4rem, 3vw, 3rem) auto 0;
	padding: 0 clamp(0rem, 2vw, 2rem);
}

.page-thanks__missing p span {
	white-space: nowrap;
}

@media(max-width:600px) {
	.page-thanks__missing p {
		text-align: left;
	}

	.page-thanks__missing p span {
		display: inline;
		white-space: normal;
	}
}

/* page-policy */
.page-policy__details {
	width: min(100%, 126rem);
	padding: 0 clamp(2rem, 4vw, 4rem);
	margin: 5rem auto clamp(12rem, 20vw, 23rem);
}

.page-policy__details * {
	font-size: clamp(1.6rem, 2.4vw, 1.8rem);
	font-weight: 500;
}

.page-policy__details h2 {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 700;
}

.page-policy__guideline {
	margin: 5rem 0 0;
}

.page-policy__details>ul {
	display: flex;
	flex-direction: column;
	gap: clamp(2.4rem, 3vw, 2.8rem);
	margin: clamp(2.4rem, 3vw, 3rem) 0 0;
	list-style-position: inside;
}

.page-policy__details dt span {
	margin: 0 1rem 0 0.3rem;
}

.page-policy__details dd ul {
	margin: clamp(2.4rem, 3vw, 2.8rem) 0 0;
}

.page-policy__details dd li {
	text-indent: -1em;
	padding-left: 1em;
}

.page-policy__notice {
	margin: clamp(2.4rem, 3vw, 2.8rem) 0 0;
}

.page-policy__company {
	margin: clamp(5rem, 7vw, 7rem) 0 0;
}

.page-policy__company p {
	text-align: right;
}

/* page-concept */
.page-concept__suggestion {
	width: 100%;
	margin: 0 auto;
	padding: 4rem 0 7.5rem;
	overflow: hidden;
}

.page-concept__suggestion h2 {
	font-family: Momochidori, sans-serif;
	font-size: clamp(2.4rem, 6vw, 7rem);
	line-height: 1.29;
	font-weight: 800;
	text-align: center;
}

.page-concept__suggestion-container {
	position: relative;
	width: min(94%, 103rem);
	margin: 3rem auto 0;
	padding: 0 1.5rem 0 clamp(2rem, 3.5vw, 4rem);
	align-items: center;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: clamp(1rem, calc(20vw - 18rem), 4rem);
}

@media(max-width:600px) {
	.page-concept__suggestion-container {
		padding: 0 clamp(1.5rem, 2vw, 2rem);
	}
}

.page-concept__suggestion--kasegeru {
	width: clamp(20rem, 30vw, 28.9rem);
	grid-area: 1/1/1/1;
}

@media(max-width:600px) {
	.page-concept__suggestion--kasegeru {
		width: clamp(25rem, 40vw, 40rem);
		grid-area: 1/1/1/4;
		margin: 1rem auto 0;
	}
}

.page-concept__suggestion--negima {
	position: absolute;
	transform: rotate(58.93deg);
	bottom: -5.5rem;
	right: -3rem;
	width: clamp(12rem, 16vw, 16rem);
	height: auto;
}

@media(max-width:600px) {
	.page-concept__suggestion--negima {
		bottom: -7.5rem;
		right: -2rem;
		width: clamp(10rem, 20vw, 20rem);
	}
}

.page-concept__suggestion p {
	font-family: Momochidori, sans-serif;
	font-weight: 700;
	font-size: clamp(1.8rem, 2.2vw, 2.2rem);
	line-height: 2.18;
	margin: -1rem 0.5rem 0 0;
	grid-area: 1/2/1/4;
}

@media(max-width:600px) {
	.page-concept__suggestion p {
		margin: 2rem -1rem 3rem 0;
		grid-area: 2/1/3/3;
	}
}

.page-concept__suggestion p span {
	white-space: nowrap;
}

/* page-concept__summary */
.page-concept__summary {
	width: min(90%, 118rem);
	margin: 0 auto 0;
	padding: 2rem 0 clamp(1.9rem, 3.5vw, 3.5rem);
	border-radius: 2rem 2rem 0 0;
	border: solid 0.3rem #000;
}

.page-concept__summary h2 {
	font-size: clamp(1.8rem, 4vw, 3.5rem);
	margin: 0 auto;
	width: 100%;
	font-weight: 700;
	line-height: 2.86;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-concept__summary h2 span {
	display: block;
	font-size: clamp(1.8rem, 5vw, 5rem);
	font-weight: 900;
	line-height: 2;
	padding: 0 clamp(0.3rem, 2.9vw, 2.9rem) 0 clamp(0.2rem, 1.7vw, 1.7rem);
}

.page-concept__summary p {
	font-weight: 500;
	font-size: 1.6rem;
	line-height: clamp(2.7rem, 3.5vw, 3.5rem);
	text-align: center;
	max-width: 105rem;
	margin: clamp(1rem, 1.5vw, 1.5rem) auto 1.5rem;
	padding: 0 clamp(2rem, 4vw, 4rem);
}

.page-concept__summary p span {
	white-space: nowrap;
}

@media(max-width:600px) {
	.page-concept__summary p {
		text-align: left;
	}

	.page-concept__summary p span {
		white-space: normal;
	}
}

/* page-concept__target */
.page-concept__target {
	width: min(90%, 118rem);
	margin: 0 auto;
	padding: 1rem clamp(3.5rem, 6vw, 9rem) clamp(4rem, 5.5vw, 5.5rem);
	color: #fff;
	border-radius: 0 0 2rem 2rem;
	background-color: #000;
	border: solid 0.3rem #000;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.page-concept__target h2 {
	font-family: Momochidori, sans-serif;
	font-size: clamp(2rem, 4vw, 3.5rem);
	line-height: 2.87;
	text-align: center;
	border-bottom: solid 0.1rem #fff;
	width: 100%;
}

.page-concept__target ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 3rem auto 2.5rem;
	width: min(100%, 88rem);
}

@media(max-width:1000px) {
	.page-concept__target ul {
		flex-direction: column;
		align-items: center;
		margin: 2rem auto 3rem;
	}
}

.page-concept__target ul li {
	font-size: clamp(1.8rem, 2.3vw, 2.5rem);
	line-height: 1.4;
	margin: 1.5rem -0.5rem 0;
}

.page-concept__target p {
	font-size: 1.6rem;
	line-height: 1.7;
	display: flex;
	margin: 0 -1.3rem;
}

/* page-concept__feature */
.page-concept__feature {
	position: relative;
	z-index: -1;
	width: 100%;
	margin: clamp(-19rem, -19vw, -20rem) 0 clamp(8rem, 11vw, 11rem);
	background-color: #F2F4E2;
	overflow: hidden;
	padding: 0 0 clamp(5rem, 10vw, 10rem);
}

.page-concept__feature h2 {
	position: absolute;
	width: min(46vw, 51.6rem);
	top: max(15rem, calc(37rem - 20vw));
	left: calc(50% - min(50vw, 72rem) + 1rem);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: min(3.4vw, 3.4rem);
}

@media(max-width:768px) {
	.page-concept__feature h2 {
		left: 50%;
		transform: translateX(-50%);
	}
}

.page-concept__feature h2 img:nth-child(1) {
	width: min(46vw, 51.6rem);
	height: auto;
	aspect-ratio: 516/501;
}

.page-concept__feature h2 img:nth-child(2) {
	width: min(42vw, 46.5rem);
	height: auto;
	aspect-ratio: 465/489;
}

.page-concept__feature h2 img:nth-child(3) {
	width: min(36vw, 39.7rem);
	height: auto;
	aspect-ratio: 398/490;
}

@media(max-width:768px) {
	.page-concept__feature h2 img:nth-child(1) {
		width: calc(56vw + max(0rem, calc(8.4rem - 11.2vw)));
	}

	.page-concept__feature h2 img:nth-child(2) {
		width: calc(52vw + max(0rem, calc(7.6rem - 10.4vw)));
	}

	.page-concept__feature h2 img:nth-child(3) {
		width: calc(44vw + max(0rem, calc(6.6rem - 8.8vw)));
	}
}

.page-concept__feature ul {
	position: relative;
	z-index: 2;
	width: min(100%, 144rem);
	padding: clamp(26rem, 29vw, 29.5rem) 0 0 clamp(2rem, calc(40vw - 20rem), 38rem);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: clamp(6.5rem, 9vw, 9rem);
}

@media(max-width:768px) {
	.page-concept__feature ul {
		padding-left: clamp(2.5rem, 4vw, 4rem);
	}
}

.page-concept__feature li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: clamp(1.5rem, 2.5vw, 2.5rem) clamp(1.5rem, 3.5vw, 3.5rem);
	padding: 0 2rem 0 0;
}

.page-concept__feature li>span {
	grid-area: 1/1/2/2;
	font-family: 'Josefin Sans', sans-serif;
	font-size: clamp(4rem, 10vw, 10rem);
	line-height: 0;
	text-align: right;
	font-weight: 300;
	width: clamp(5rem, 12vw, 12rem);
	align-self: center;
	margin: clamp(0.5rem, 1vw, 1rem) 0 0;
}

.page-concept__feature li h3 {
	grid-area: 1/2/1/3;
	align-self: center;
	font-family: Momochidori, sans-serif;
	font-weight: 900;
	font-size: clamp(2rem, 4vw, 5rem);
	margin-right: -1rem;
	line-height: 1.2;
}

.page-concept__feature li:first-child h3 {
	padding-left: 0;
	text-indent: clamp(-3rem, -2.5vw, -1rem);
}

.page-concept__feature li p {
	grid-area: 2/2/3/3;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: clamp(2.6rem, 2.8vw, 2.8rem);
}

@media(max-width:500px) {
	.page-concept__feature li p {
		grid-area: 2/1/3/3;
		padding: 1rem 1rem 0 1.5rem;
	}
}

/* page-job */
.page-job__introduction {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 3rem auto 0;
	width: min(100%, 82rem);
	padding: 0 clamp(1.5rem, 3vw, 3rem);
}

.page-job__introduction span {
	font-family: Momochidori, sans-serif;
	font-size: clamp(2rem, 2.8vw, 2.8rem);
	font-weight: 700;
	line-height: 1.7;
	white-space: nowrap;
}

@media(max-width:900px) {
	.page-job__introduction .nowrap {
		white-space: normal;
		text-align: center;
	}
}

.page-job__introduction>span {
	font-family: Momochidori, sans-serif;
	font-size: clamp(2rem, 2.8vw, 2.8rem);
	font-weight: 700;
	line-height: 1.7;
	white-space: nowrap;
}

/* .page-job__work { */
.page-job__work {
	width: 100%;
	margin: clamp(5rem, 7vw, 7rem) auto clamp(7rem, 10vw, 12rem);
	padding: clamp(5rem, 6vw, 7rem) 0 clamp(5rem, 6vw, 6.5rem);
	background-color: #F2F4E2;
	overflow: hidden;
}

.page-job__work-container {
	width: min(100%, 126rem);
	margin: 0 auto;
	padding: 0 clamp(2rem, 4vw, 4rem);
	--container: calc(var(--work-container-width) - min(60vw, 38rem) - clamp(4rem, 8vw, 8rem));
}

.page-job__work h2 {
	font-family: Momochidori, sans-serif;
	font-weight: 900;
	font-size: clamp(3.2rem, 7vw, 6rem);
	line-height: 1;
}

.page-job__work--btns-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

@media(max-width:700px) {
	.page-job__work--btns-container {
		flex-direction: column;
		align-items: stretch;
	}
}

.page-job__work--btns-container p {
	font-weight: 700;
	font-size: clamp(1.8rem, 2vw, 2rem);
	margin: 2.2rem 0;
}

.page-job__work--btns {
	display: flex;
	justify-content: flex-end;
	gap: 3rem;
}

.page-job__work--plus-btn,
.page-job__work--minus-btn {
	width: 4.2rem;
	height: auto;
	aspect-ratio: 1;
	background-image: url('../images/common/arrow.svg');
	background-size: 33% 45%;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 4.2rem;
	border: solid 0.1rem #000;
	cursor: pointer;
	transition: opacity 0.2s;
}

.page-job__work--minus-btn {
	transform: scaleX(-1);
}

.page-job__work--plus-btn:hover,
.page-job__work--minus-btn:hover {
	opacity: 0.7;
}

.page-job__work-cards {
	width: 100%;
	display: grid;
	margin: clamp(2.5rem, 3vw, 3.5rem) 0 0;
}

.page-job__work-card {
	width: min(60vw, 38rem);
	grid-area: 1/1/1/1;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: clamp(3rem, 4vw, 5rem) clamp(1.5rem, 3.5vw, 3.5rem) clamp(2rem, 4vw, 4rem);
	gap: clamp(1.5rem, 2vw, 2rem);
	border-radius: 2rem;
	background-color: #fff;
	box-shadow: 1.5rem 0 1.5rem -0.5rem rgba(0, 0, 0, 0.1);
	transform-origin: right;
	transition: transform 0.8s cubic-bezier(0.3, 0, 0.6, 1), box-shadow 0.2s ease;
	will-change: transform;
	pointer-events: none;
}

.page-job__work-card--transition {
	transition: transform 0.4s cubic-bezier(0.3, 0, 0.7, 1), box-shadow 0.2s ease;
}

.page-job__work-card--event-auto {
	pointer-events: auto;
}

.page-job__work-card--moving {
	box-shadow: 0.5rem 0 0.5rem -0.5rem rgba(0, 0, 0, 0.1);
}

.page-job__work-card h3 {
	font-family: Momochidori, sans-serif;
	font-weight: 700;
	font-size: clamp(2.5rem, 5.5vw, 4rem);
}

.page-job__work-card img {
	width: 87%;
	height: auto;
	aspect-ratio: 27/20;
}

.page-job__work-card p {
	font-weight: 500;
	font-size: 1.6rem;
}

/*page-job card animation */
.page-job__work-card[data-pos="1"] {
	z-index: 6;
}

.page-job__work-card[data-pos="2"] {
	z-index: 5;
	cursor: pointer;
	transform: scale(0.9) translateX(calc(var(--container) * 0.29 / 0.9));
}

.page-job__work-card.card_hover_2:hover {
	transform: scale(0.9) translateX(calc(var(--container) * 0.29 / 0.9 + 10%));
}

.page-job__work-card[data-pos="3"] {
	z-index: 4;
	cursor: pointer;
	transform: scale(0.8) translateX(calc(var(--container) * 0.54 / 0.8));
}

.page-job__work-card.card_hover_3:hover {
	transform: scale(0.8) translateX(calc(var(--container) * 0.54 / 0.8 + 10%));
}

.page-job__work-card[data-pos="4"] {
	z-index: 3;
	cursor: pointer;
	transform: scale(0.7) translateX(calc(var(--container) * 0.74 / 0.7));
}

.page-job__work-card.card_hover_4:hover {
	transform: scale(0.7) translateX(calc(var(--container) * 0.74 / 0.7 + 10%));
}

.page-job__work-card[data-pos="5"] {
	z-index: 2;
	cursor: pointer;
	transform: scale(0.6) translateX(calc(var(--container) * 0.885 / 0.6));
}

.page-job__work-card.card_hover_5:hover {
	transform: scale(0.6) translateX(calc(var(--container) * 0.885 / 0.6 + 10%));
}

.page-job__work-card[data-pos="6"] {
	z-index: 1;
	cursor: pointer;
	transform: scale(0.5) translateX(calc(var(--container) * 1 / 0.5));
}

.page-job__work-card.card_hover_6:hover {
	transform: scale(0.5) translateX(calc(var(--container) * 1 / 0.5 + 10%));
}

/* .page-job__work-image */
.page-job__work-image-container {
	width: min(100%, 118rem);
	display: flex;
	justify-content: center;
	gap: clamp(2.5rem, 4vw, 5rem);
	padding: clamp(3rem, 5vw, 6rem) clamp(3rem, 4.5vw, 4.5rem);
	background-color: #fff;
	margin: clamp(4rem, 6vw, 6rem) auto 0;
	border-radius: 1rem;
}

.page-job__work-image {
	width: calc(50%);
	display: flex;
	flex-direction: column;
	align-items: stretch;
	border-radius: 1rem;
}

.page-job__work-image h3 {
	font-family: Momochidori, sans-serif;
	font-weight: 500;
	font-size: clamp(2.1rem, 2.5vw, 2.5rem);
	line-height: 2.2;
	border: solid 0.1rem #000;
	border-width: 0.1rem 0 0.1rem 0;
	text-align: center;
}

.page-job__work-image>p {
	font-weight: 500;
	font-size: 1.4rem;
	margin: 1.8rem 0 0;
}

.page-job__work-image ul {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	margin: 0;
	padding: 0;
}

.page-job__work-image li {
	position: relative;
	z-index: 1;
	border-bottom: #03AD88 dashed 0.2rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 1rem 0 1rem clamp(2rem, 2vw, 2.5rem);
	width: 100%;
}

.page-job__work-image--header {
	position: relative;
	z-index: 2;
	flex-shrink: 0;
	flex-direction: column;
}

.page-job__work-image li h4 {
	font-family: Momochidori, sans-serif;
	font-weight: 700;
	font-size: clamp(1.8rem, 1.8vw, 2.3rem);
	line-height: 1.1;
}

.page-job__work-image--time {
	position: relative;
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 600;
	font-size: clamp(2rem, 2vw, 2.5rem);
}

.page-job__work-image--time::before {
	content: '';
	position: absolute;
	width: clamp(1.3rem, 1.3vw, 1.6rem);
	height: auto;
	aspect-ratio: 1;
	border-radius: 0.8rem;
	top: clamp(48%, 0.3vw, 50%);
	left: clamp(-2.5rem, -2vw, -1.8rem);
	transform: translateY(-60%);
	background-color: #03AD88;
}

/*page-job__work--comment */
.page-job__work--comment {
	position: relative;
	z-index: 2;
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	color: #F47016;
	background-color: #F2F4E2;
	max-width: 34rem;
	padding: 1.3rem clamp(1rem, calc((100vw - 90rem) * 2 / 20 + 1rem), 2rem) 1.5rem;
	border-radius: 2rem;
	border: solid #F47016 0.2rem;
	flex-grow: 0;
}

.page-job__work--comment>span {
	white-space: nowrap;
}

@media(max-width:520px) {
	.page-job__images2>li:nth-child(1) p span {
		white-space: normal;
	}
}

@media(max-width:460px) {
	.page-job__images2>li:nth-child(3) p span {
		white-space: normal;
	}
}

.page-job__work-white {
	position: absolute;
	z-index: 1;
	display: block;
	background-color: #fff;
	width: clamp(12rem, 15vw, 20rem);
	height: clamp(10rem, 10vw, 13rem);
}

.page-job__work-image img {
	position: absolute;
	display: block;
	z-index: 3;
	width: clamp(10rem, 10vw, 13rem);
	height: auto;
	aspect-ratio: 1;
	transform: translateX(1.5rem);
}

.page-job__images1>li:nth-child(1)>div {
	margin: 14rem 0 0.5rem;
}

.page-job__images1>li:nth-child(2)>div {
	margin: 2.5rem 0;
}

.page-job__images1>li:nth-child(3)>div {
	margin: 2.5rem 0;
}

.page-job__images1>li:nth-child(4)>div {
	margin: 3.5rem 0 2rem;
}

.page-job__images1>li:nth-child(1)>p {
	margin: 0 0 -8rem clamp(2rem, calc((100vw - 105rem) * 9 / 20 + 2rem), 10rem);
}

.page-job__images1>li:nth-child(2)>p {
	margin: 2.5rem 5rem 0 clamp(3rem, 7vw, 11rem);
}

.page-job__images1>li:nth-child(3)>p {
	margin: 2.5rem 0 0 clamp(3rem, 7vw, 11rem);
}

.page-job__images1>li:nth-child(4)>p {
	margin: 0 0 0 clamp(2rem, calc((100vw - 90rem) * (5.5 - 1) / 35 + 2rem), 5.5rem);
}

.page-job__images2>li:nth-child(1)>div {
	margin: 1.5rem 0 12rem;
}

.page-job__images2>li:nth-child(2)>div {
	margin: 4rem 0 2.5rem;
}

.page-job__images2>li:nth-child(3)>div {
	margin: 4rem 0 2.5rem;
}

.page-job__images2>li:nth-child(4)>div {
	margin: 1rem 0 2.5rem;
}

.page-job__images2>li:nth-child(1)>p {
	margin: 4rem 0 0 clamp(5rem, calc((100vw - 90rem) * 4 / 35 + 5rem), 9rem);
}

.page-job__images2>li:nth-child(2)>p {
	margin: 4rem 6rem 0 clamp(3rem, 7vw, 11rem);
}

.page-job__images2>li:nth-child(3)>p {
	margin: 2rem clamp(10rem, 13vw, 16.5rem) 0 clamp(1rem, 1.7vw, 2rem);
}

.page-job__images2>li:nth-child(4)>p {
	margin: 0 6rem 0 clamp(3rem, 7vw, 11rem);
}

.page-job__images1>li:nth-child(1)>p::after,
.page-job__images1>li:nth-child(2)>p::after,
.page-job__images1>li:nth-child(3)>p::after,
.page-job__images2>li:nth-child(1)>p::after,
.page-job__images2>li:nth-child(2)>p::after {
	content: '';
	position: absolute;
	background-image: url('../images/common/check.svg');
	width: clamp(6rem, 6.5vw, 7.3rem);
	height: auto;
	aspect-ratio: 7.3/5.2;
	background-size: cover;
	top: -2.5rem;
	left: -4.7rem;
}

.page-job__images1>li>p::before,
.page-job__images2>li>p::before {
	content: '';
	position: absolute;
	height: 0.2rem;
	background-color: #F47016;
}

.page-job__images1>li:nth-child(1)>p::before,
.page-job__images1>li:nth-child(2)>p::before,
.page-job__images1>li:nth-child(3)>p::before,
.page-job__images2>li:nth-child(2)>p::before,
.page-job__images2>li:nth-child(4)>p::before {
	bottom: 2.5rem;
	right: 100%;
	width: clamp(4rem, 5vw, 7.3rem);
}

.page-job__images1>li:nth-child(4)>p::before,
.page-job__images2>li:nth-child(3)>p::before {
	z-index: 1;
	bottom: 50%;
	left: 100%;
	width: clamp(3rem, 6vw, 9rem);
	transform: rotate(19deg);
	transform-origin: left top;
}

.page-job__images2>li:nth-child(1)>p::before {
	bottom: 50%;
	right: 100%;
	width: clamp(6rem, 7vw, 9rem);
	transform: rotate(19deg);
	transform-origin: right bottom;
}

.page-job__images1>li:nth-child(1) img {
	top: 3rem;
	left: clamp(-2rem, calc((100vw - 105rem) * 8rem / 20rem + -2rem), 6rem);
}

.page-job__images1>li:nth-child(4) .page-job__work-white {
	top: calc(50% - clamp(0rem, calc(20vw - 19rem), 1rem) - 0.5rem);
	right: -4rem;
	transform: translateY(-50%);
}

.page-job__images1>li:nth-child(4) img {
	top: calc(50% - clamp(0rem, calc(20vw - 19rem), 1rem));
	right: clamp(0rem, calc((100vw - 110rem) * 2rem / 15rem + 0rem), 2rem);
	transform: translateY(-50%);
}

.page-job__images2>li:nth-child(1) .page-job__work-white {
	top: 12rem;
	left: -1rem;
}

.page-job__images2>li:nth-child(1) img {
	top: 11.5rem;
	left: clamp(1rem, calc((100vw - 90rem) * 2rem / 35rem + 1rem), 3rem);
}

.page-job__images2>li:nth-child(3) img {
	right: 2rem;
}

/* page-job__work-image max900 */
@media(max-width:900px) {
	.page-job__work-image-container {
		flex-direction: column;
		align-items: center;
		gap: clamp(6rem, 10vw, 9rem);
		padding: clamp(4rem, 7vw, 5rem) clamp(1.5rem, 4vw, 4rem) clamp(4rem, 7vw, 5rem) clamp(1rem, 4vw, 4rem);
	}

	.page-job__work-image {
		width: min(60rem, 100%);
	}

	.page-job__work-image--header {
		padding: 0 clamp(0rem, clamp(4vw - 3rem), 2rem);
	}

	.page-job__images2>li:nth-child(3)>div {
		margin: 2.5rem 0 3rem;
	}

	.page-job__images2>li:nth-child(4)>div {
		margin: 2rem 0;
	}

	.page-job__work-image h3 {
		font-size: clamp(1.8rem, 3vw, 2.3rem);
	}

	.page-job__work-image--time {
		font-size: clamp(2rem, 3.5vw, 2.5rem);
	}

	.page-job__work-image--time::before {
		width: clamp(1.3rem, 1.8vw, 1.6rem);
		left: clamp(-2.5rem, -3vw, -1.8rem);
	}

	.page-job__work-image li h4 {
		font-size: clamp(1.75rem, 3vw, 2.3rem);
		min-width: clamp(4rem, 7vw, 7rem);
	}

	.page-job__work-image img {
		width: clamp(8.5rem, 18vw, 12rem);
	}

	.page-job__work-white {
		position: absolute;
		z-index: 1;
		display: block;
		background-color: #fff;
		width: clamp(10rem, 22vw, 15rem);
		height: clamp(7rem, 16vw, 13rem);
	}

	.page-job__images1>li:nth-child(1)>p::before,
	.page-job__images1>li:nth-child(2)>p::before,
	.page-job__images1>li:nth-child(3)>p::before,
	.page-job__images2>li:nth-child(2)>p::before,
	.page-job__images2>li:nth-child(4)>p::before {
		bottom: 40%;
		right: 100%;
		width: clamp(2rem, calc(11vw - 2rem), 7.3rem);
	}

	.page-job__images1>li:nth-child(1)>p::before {
		width: clamp(5rem, calc(11vw - 2rem), 7.3rem);
	}

	.page-job__images1>li:nth-child(4)>p::before,
	.page-job__images2>li:nth-child(3)>p::before {
		z-index: 1;
		bottom: 50%;
		left: 100%;
		width: clamp(7rem, 10vw, 12rem);
		transform: rotate(19deg);
		transform-origin: left top;
	}

	.page-job__images2>li:nth-child(1)>p::before {
		bottom: 45%;
		right: 100%;
		width: clamp(5rem, 10vw, 10rem);
		transform: rotate(19deg);
		transform-origin: right bottom;
	}

	.page-job__images1>li:nth-child(1)>p::after,
	.page-job__images1>li:nth-child(2)>p::after,
	.page-job__images1>li:nth-child(3)>p::after,
	.page-job__images2>li:nth-child(1)>p::after,
	.page-job__images2>li:nth-child(2)>p::after {
		width: clamp(6rem, 11vw, 7.3rem);
		top: clamp(-4rem, calc(-2rem - 2.5vw), -2.5rem);
		left: clamp(-3rem, -4vw, -2.5rem);
	}

	.page-job__images1>li:nth-child(1) img {
		left: clamp(0rem, calc((100vw - 40rem) * 6 / 50 + 0rem), 6rem);
	}

	.page-job__images1>li:nth-child(4) .page-job__work-white {
		top: calc(50% - clamp(0rem, calc(20vw - 19rem), 1rem) - 0.5rem);
		right: 0;
		transform: translateY(-50%);
		display: none;
	}

	.page-job__images1>li:nth-child(4) img {
		top: calc(50% - clamp(0rem, calc(20vw - 19rem), 1rem));
		right: clamp(-1rem, calc((100vw - 40rem) * 11 / 28 + -1rem), 10rem);
		transform: translateY(-50%);
	}

	.page-job__images2>li:nth-child(1) .page-job__work-white {
		top: 12rem;
		left: clamp(1rem, calc((100vw - 90rem) * 2 / 35 + 1rem), 3rem);
	}

	.page-job__images2>li:nth-child(1) img {
		top: clamp(10rem, 15vw, 11.5rem);
		left: clamp(1rem, calc((100vw - 90rem) * 2 / 35 + 1rem), 3rem);
	}

	.page-job__images2>li:nth-child(3) img {
		right: clamp(0.5rem, calc((100vw - 55rem) * 6.5 / 10 + 0.5rem), 6rem);
	}

	.page-job__work--comment {
		padding: 1.3rem clamp(1rem, calc((100vw - 40rem) * 2 / 25 + 1rem), 3rem) 1.5rem;
		border-radius: 2rem;
		border: solid #F47016 0.2rem;
		flex-grow: 0;
	}

	.page-job__images1>li:nth-child(1)>p {
		margin: 0 -1rem -8rem clamp(0.5rem, calc((100vw - 40rem) * 14 / 40 + 1rem), 15rem);
		max-width: 27rem;
	}

	.page-job__images1>li:nth-child(2)>p {
		margin: 2.5rem 5rem 0 clamp(0rem, calc(14vw - 3rem), 15rem);
		max-width: 26rem
	}

	.page-job__images1>li:nth-child(3)>p {
		margin: 2.5rem 0 0 clamp(0rem, calc(14vw - 3rem), 15rem);
	}

	.page-job__images1>li:nth-child(4)>p {
		margin: 0 0 0 clamp(0.5rem, calc((100vw - 45rem) * (6 - 0.5) / 30 + 0.5rem), 6rem);
	}

	.page-job__images2>li:nth-child(1)>p {
		margin: clamp(-1rem, calc((100vw - 45rem) * 6 / 30 + -1rem), 5rem) -1rem 0 clamp(0.5rem, calc((100vw - 37rem) * 9.5 / 50 + 0.5rem), 10rem);
	}

	.page-job__images2>li:nth-child(2)>p {
		margin: 1.5rem 0 0 clamp(0rem, calc(14vw - 3rem), 15rem);
		max-width: 22rem;
	}

	.page-job__images2>li:nth-child(3)>p {
		margin: 0rem clamp(7.7rem, 15vw, 16.5rem) 0 clamp(0rem, calc((100vw - 35rem) * 6 / 25 + 0rem), 6rem);
		max-width: clamp(15rem, calc((100vw - 35rem) * 11 / 40 + 15rem), 25rem);
	}

	.page-job__images2>li:nth-child(4)>p {
		margin: 0 0 0 clamp(0rem, calc(14vw - 3rem), 15rem);
	}
}

/* 404 */
.main-404 {
	width: 100%;
	overflow-x: hidden;
	min-height: calc(100vh - 12rem);
	padding: 18rem 0;
	display: flex;
	justify-content: center;
}

.main-404 p {
	font-size: 1.6rem;
}