@charset "UTF-8";

/*======================
*
header
*
=======================*/
header {
	position: sticky;
	z-index: 9995;
	top: 0;
	left: 0;
	width: 100%;
	height: 88px;
	background-color: var(--white);
}

@media (min-width:2000px) {
	header {
		max-width: 1920px;
		margin: auto;
	}
}

header .inner {
	display: flex;
	justify-content: space-between;
	max-width: 1920px;
	width: calc((1326 / 1366) * 100%);
	height: 100%;
	margin-left: auto;
}

header .inner .logo {
	display: flex;
	align-items: center;
	width: calc((224 / 1326) * 100%);
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	header .inner .logo:hover {
		opacity: 0.75;
	}
}

header .inner nav ul {
	display: flex;
	align-items: center;
	column-gap: 30px;
	height: 100%;
}

header .inner nav ul li {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	transition: 0.3s ease-in-out;
}

header .inner nav ul li::after {
	content: "";
	position: absolute;
	transform: translate(-50%, 0) scaleX(0);
	bottom: 0;
	left: 50%;
	width: 100%;
	height: 2px;
	background-color: var(--green);
	transition: 0.3s ease-in-out;
	will-change: transform;
}

header .inner nav ul li a {
	display: flex;
	align-items: center;
	height: 100%;
	font-family: var(--NotoSansJP);
	font-size: clamp(12px, 1.32vw, 18px);
	font-weight: 700;
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	header .inner nav ul li:hover::after {
		transform: translate(-50%, 0) scaleX(1);
	}

	header .inner nav ul li:hover a {
		color: var(--green);
	}
}

header .inner .link-area {
	width: calc((373/ 1326) * 100%);
	height: 100%;
}

header .inner .link-area .wrapper {
	display: flex;
	gap: calc((40 / 373) * 100%);
	height: 100%;
}

header .inner .link-area a {
	width: calc((163 / 373) * 100%);
}

header .inner .link-area .top {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
}

header .inner .link-area .top img {
	max-width: 14.5px;
}

header .inner .link-area .top span {
	font-family: var(--Cabin);
	font-weight: 700;
	font-size: clamp(16px, 1.76vw, 24px);
	color: var(--navy);
}

header .inner .link-area .bottom {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	margin-top: -7px;
}

header .inner .link-area .bottom img {
	max-width: 80px;
}

header .inner .link-area .bottom span.time {
	position: relative;
	top: 1px;
	font-family: var(--Cabin);
	font-weight: 400;
	font-size: 12px;
	line-height: 1.0;
	color: #797979;
}

header .inner .link-area .bottom span:not(.time) {
	font-family: var(--NotoSansJP);
	font-size: 12px;
	color: #797979;
}

header .inner .link-area .wrapper>a:has(*) {
	display: block;
	margin: auto;
	min-width: fit-content;
}

header .inner .link-area .wrapper>a:not(:has(*)) {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	height: auto;
	font-family: var(--NotoSansJP);
	font-size: 18px;
	font-weight: 700;
	border: solid 1px var(--yellow);
	background-color: var(--yellow);
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	header .inner .link-area .wrapper>a:not(:has(*)):hover {
		opacity: 0.75;
	}
}

/*pc*/
@media (max-width:1260px) {
	header .inner .link-area .top span {
		font-size: 16px;
	}

	header .inner .link-area .bottom span {
		font-size: 10px !important;
	}
}

/*tb*/
@media (max-width:1024px) {
	header {
		height: 70px;
	}

	header .inner nav ul {
		column-gap: 15px;
	}

	header .inner .link-area {
		gap: 20px;
		width: 41%;
	}

	header .inner .link-area .bottom {
		margin-top: -5px;
	}
}

/*sp*/
@media (max-width:767px) {
	header .inner {
		width: calc(100% - 20px);
	}

	header {
		height: 60px;
	}

	header .inner .logo {
		width: 167px;
	}
}

/*ハンバーガーメニュー*/
@media (max-width:767px) {
	.hamMenu-area label[for="ham-btn"] {
		position: absolute;
		right: 0;
		display: flex;
		height: 100%;
		aspect-ratio: 1 / 1;
		background-color: #FFD522;
	}

	.hamMenu-area .btn-wraper {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 20px;
		height: 14px;
	}

	.hamMenu-area label[for="ham-btn"] span {
		display: block;
		width: 100%;
		height: 2px;
		background-color: var(--black);
		transition: 0.3s;
	}

	.hamMenu-area label[for="ham-btn"] span:first-of-type {
		top: 0;
	}

	.hamMenu-area label[for="ham-btn"] span:last-of-type {
		bottom: 0;
	}

	.hamMenu-area input[type="checkbox"]:checked~label[for="ham-btn"] span:first-of-type {
		transform: translateY(7px) rotate(45deg);
	}

	.hamMenu-area input[type="checkbox"]:checked~label[for="ham-btn"] span:nth-of-type(2) {
		opacity: 0;
	}

	.hamMenu-area input[type="checkbox"]:checked~label[for="ham-btn"] span:last-of-type {
		transform: translateY(-5px) rotate(-45deg);
	}

	/*menu*/
	.hamMenu-area .ham-menu {
		opacity: 0;
		pointer-events: none;
		position: fixed;
		top: var(--header);
		left: 0;
		width: 100vw;
		height: calc(100vh - var(--header));
		padding: 56px 24px 43px 24px;
		background-color: var(--white);
		transition: 0.3s ease-in-out;
		overflow: auto;
	}

	.hamMenu-area input[type="checkbox"]:checked~.ham-menu {
		opacity: 1.0;
		pointer-events: auto;
	}

	header .inner nav ul {
		display: block;
	}

	header .inner nav ul li a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		font-size: 18px;
		padding-bottom: 24px;
		border-bottom: #D7D7D7 1px solid;
	}

	header .inner nav ul li+li {
		margin-top: 26px;
	}

	header .inner nav ul li a::after {
		content: "";
		background: url(img/common/arrow-b.webp) no-repeat center / 100%;
		width: 6px;
		height: 9px;
	}

	header .inner .link-area .wrapper {
		display: block;
		height: auto;
	}

	header .inner .link-area {
		width: 100%;
		height: auto;
	}

	header .inner .link-area .wrapper>a:has(*) {
		margin-top: 44px;
	}

	header .inner .link-area .top {
		gap: 6px;
	}

	header .inner .link-area .top img {
		max-width: 21.76px;
	}

	header .inner .link-area .top span {
		font-size: 40px;
		color: var(--black);
	}

	header .inner .link-area .bottom {
		gap: 0;
		margin-top: 4px;
	}

	header .inner .link-area .bottom span:not(.time) {
		font-size: 15px;
		color: var(--black);
		margin: 0 3px 0 6px;
	}

	header .inner .link-area .bottom span.time {
		top: initial;
		font-size: 15px !important;
		color: var(--black);
	}

	header .inner .link-area .bottom span:first-of-type {
		display: block;
		color: #FFF;
		font-size: 15px;
		padding: 0 8px 2px;
		border-radius: 2px;
		background-color: var(--black);
	}

	header .inner .link-area .bottom span:not(.time) {
		font-size: 15px !important;
	}

	header .inner .link-area .wrapper>a.contact-link {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: 100%;
		font-family: var(--NotoSansJP);
		font-size: 16px;
		font-weight: 700;
		padding: 28px 5px;
		margin-top: 24px;
		border-radius: 4px;
		background-color: var(--yellow);
	}

	header .inner .link-area .wrapper>a.contact-link img {
		width: 24px;
	}

	header .inner .link-area .wrapper>a.contact-link::after {
		content: "";
		background: url(img/common/arrow-b.webp) no-repeat center / 100%;
		width: 6px;
		height: 9px;
		margin-left: 13px;
	}

	/*ここまで*/
}

/*======================
*
front-page
*
=======================*/
.front-page {
	background-color: var(--navy);
}

/*======================
mv
=======================*/
.top-mv {
	position: relative;
	height: calc(100dvh - var(--header));
	overflow: hidden;
	opacity: 1.0;
}

.top-mv.active::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	width: 100%;
	height: calc((250 / 680) * 100%);
	background-image: linear-gradient(180deg, #19191900 0%, #191919 100%);
	opacity: 0.5;
}

@media (min-width:2000px) {
	.top-mv {
		max-width: 1920px;
		margin: auto;
	}
}

.top-mv .mv-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(6, 1fr);
}

.top-mv .mv-grid .img-area {
	position: relative;
	height: 100%;
	opacity: 1.0;
	transform: scale(1.01);
}

.top-mv .mv-grid .img-area:nth-of-type(odd) {
	clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}

.top-mv .mv-grid .img-area:nth-of-type(even) {
	clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
}

.top-mv .mv-grid .img-area.active {
	animation: imgFade 1.0s cubic-bezier(0.4, 0, 0.2, 1) var(--delay) forwards;
}

@keyframes imgFade {
	to {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	}
}

.top-mv .mv-grid img {
	position: absolute;
	z-index: 3;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.top-mv .mv-cont {
	position: absolute;
	z-index: 4;
	left: 0;
	bottom: 0;
	width: 100%;
}

.top-mv .mv-cont.active {
	animation: common-animation 1.0s ease-in-out var(--delay) forwards;
}

.top-mv .mv-cont .hd-scroll {
	position: absolute;
	z-index: 3;
	left: 50%;
	bottom: 24px;
	transform: translateX(-50%);
	min-width: fit-content;
}

.top-mv .mv-cont .hd-scroll h1 {
	max-width: 570px;
}

.top-mv .mv-cont .hd-scroll h1 span {
	display: none;
}

.top-mv .mv-cont .hd-scroll .scroll {
	width: fit-content;
	margin: 32px auto 0;
}

.top-mv .mv-cont .hd-scroll .scroll p {
	font-family: var(--Cabin);
	font-size: 12px;
	font-weight: 700;
	color: #FFF;
	line-height: 1.0;
}

.top-mv .mv-cont .hd-scroll .scroll span {
	display: block;
	width: 1px;
	height: 48px;
	margin: 12px auto 0;
	background-color: var(--white);
	animation: scroll-line 3.0s cubic-bezier(0.51, 0.7, 0.36, 1) 0.5s infinite;
}

@keyframes scroll-line {
	0% {
		clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
	}

	50% {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
		opacity: 1.0;
	}

	100% {
		clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
		opacity: 0;
	}
}

.top-mv .mv-cont .mv-deco {
	position: relative;
	z-index: 2;
	display: flex;
	gap: 20px;
	width: 100%;
}

.top-mv .mv-cont .mv-deco img {
	animation: loopX 15s linear 2.0s infinite;
}

@keyframes loopX {
	to {
		translate: calc((100% + 20px) * -1) 0;
	}
}

/*pc*/
@media (min-width:1025px) {
	.top-mv .mv-grid {
		height: 100%;
	}
}

/*tb*/
@media (max-width:1024px) {
	.top-mv {
		height: 50svh;
	}

	.top-mv .mv-grid {
		height: 100%;
	}
}

/*sp*/
@media (max-width:767px) {
	.top-mv {
		height: calc(100svh - var(--header));
	}

	.top-mv::after {
		height: calc((350 / 607) * 100%);
	}

	.top-mv .mv-grid {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(3, 1fr);
	}

	.top-mv .mv-cont .hd-scroll h1 {
		width: 240px;
	}

	.top-mv .mv-cont .hd-scroll .scroll {
		margin: 69px auto 0;
	}
}

/*======================
top about
=======================*/
.front-page section.about-sec {
	padding: 120px 0;
	background-color: var(--green);
}

.front-page section.about-sec .cont-area {
	align-items: center;
	justify-content: space-between;
	width: calc((1233 / 1366) * 100%);
}

@media (min-width:2000px) {
	.front-page section.about-sec .cont-area {
		max-width: 1920px;
		margin: auto;
	}
}

.front-page section.about-sec .cont-area img {
	width: calc((603 / 1233) * 100%);
	border-radius: 0 4px 4px 0;
}

.front-page section.about-sec .cont-area img.active {
	animation: common-animation var(--duration) ease-in-out forwards;
}

.front-page section.about-sec .cont-area .text-cont {
	position: sticky;
	top: var(--header);
	width: calc((440 / 1233) * 100%);
}

.front-page section.about-sec .cont-area .text-cont :is(p, h2) {
	font-size: 20px;
	font-weight: 400;
	line-height: 2.0;
	color: var(--white);
}

.front-page section.about-sec .cont-area .text-cont :is(p, h2).active {
	animation: common-animation var(--duration) ease-in-out forwards;
}

@media (max-width:1300px) {
	.front-page section.about-sec .cont-area .text-cont {
		width: calc((550 / 1233) * 100%);
	}

	.front-page section.about-sec .cont-area .text-cont :is(p, h2) {
		font-size: 18px;
	}
}

/*tb*/
@media (max-width:1024px) {
	.front-page section.about-sec .cont-area {
		width: 96%;
	}

	.front-page section.about-sec .cont-area img {
		width: 45%;
	}

	.front-page section.about-sec .cont-area .text-cont {
		width: 48%;
	}

	.front-page section.about-sec .cont-area .text-cont :is(p, h2) {
		font-size: 16px;
	}
}

/*sp*/
@media (max-width:767px) {
	.front-page section.about-sec {
		padding: 64px 0 80px;
	}

	.front-page section.about-sec .cont-area {
		display: block;
		width: 100%;
	}

	.front-page section.about-sec .cont-area img {
		width: calc((351/ 375) * 100%);
		margin-left: auto;
		border-radius: 4px 0 0 4px;
	}

	.front-page section.about-sec .cont-area .text-cont {
		width: calc((351/ 375) * 100%);
		margin-top: 44px;
		margin-left: auto;
	}
}

/*======================
top service
=======================*/
.front-page section.service-sec {
	position: relative;
	z-index: 1;
	padding: 120px 0 160px;
}

.front-page section.service-sec .text-deco {
	position: absolute;
	z-index: -1;
	left: -10px;
	bottom: 160px;
	width: calc((592 / 1366) * 100%);
}

.front-page section.service-sec .cont-area {
	width: calc((1233 / 1366) * 100%);
	justify-content: space-between;
	align-items: center;
	margin-left: auto;
}

@media (min-width:2000px) {
	.front-page section.service-sec .cont-area {
		max-width: 1920px;
		margin: auto;
	}
}

.front-page section.service-sec .cont-area .text-area {
	width: calc((411 / 1233) * 100%);
}

.front-page section.service-sec .cont-area .text-area.active {
	animation: common-animation ease-in-out var(--duration) forwards;
}

.front-page section.service-sec .cont-area .text-area h3 {
	margin-top: 41px;
	margin-bottom: 26px;
}

.front-page section.service-sec .cont-area .text-area p {
	font-family: var(--NotoSansJP);
	font-size: 16px;
	font-weight: 700;
	color: var(--white);
	line-height: calc(30 / 16);
	margin-bottom: 41px;
}

.front-page section.service-sec .cont-area .img-area {
	width: calc((748 / 1233) * 100%);
}

.front-page section.service-sec .cont-area .img-area.active {
	animation: common-animation ease-in-out var(--duration) forwards;
}

@media (max-width:1300px) {
	.front-page section.service-sec .cont-area .text-area h3 {
		margin-top: 30px;
		margin-bottom: 20px;
	}

	.front-page section.service-sec .cont-area .text-area p {
		font-size: 14px;
		margin-bottom: 30px;
	}
}

/*tb*/
@media (max-width:1024px) {
	.front-page section.service-sec .cont-area {
		width: 96%;
	}

	.front-page section.service-sec .cont-area .text-area {
		width: 47%;
	}

	.front-page section.service-sec .cont-area .img-area {
		width: 48%;
	}

	.front-page section.service-sec .text-deco {
		bottom: 122px;
	}
}

/*sp*/
@media (max-width:767px) {
	.front-page section.service-sec {
		padding: 48px 0 77px;
	}

	.front-page section.service-sec .cont-area {
		flex-direction: column-reverse;
		width: 100%;
	}

	.front-page section.service-sec .cont-area .img-area {
		width: 100%;
	}

	.front-page section.service-sec .cont-area .text-area {
		width: calc((327 / 375) * 100%);
		margin: 35px auto 0;
	}

	.front-page section.service-sec .cont-area .text-area h2 {
		position: relative;
	}

	.front-page section.service-sec .cont-area .text-area h2 img {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 228px;
	}

	.front-page section.service-sec .cont-area .text-area h3 {
		line-height: calc(36 / 30);
		margin-top: 27px;
		margin-bottom: 16px;
	}

	.front-page section.service-sec .cont-area .text-area p {
		line-height: calc(26 / 14);
		margin-bottom: 22px;
	}

	.front-page section.service-sec .cont-area .text-area .btn01 {
		width: 100%;
	}
}


/*======================
top company
=======================*/
.front-page section.company-sec {
	position: relative;
	z-index: 1;
	margin: 0 0 113px;
}

.front-page section.company-sec .img-area {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: calc((1302 / 1366) * 100%);
	height: 100%;
}

.front-page section.company-sec .img-area img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.front-page section.company-sec .img-area.active {
	animation: common-animation var(--duration) ease-in-out forwards;
}

.front-page section.company-sec .cont-area {
	width: calc((1233 / 1366) * 100%);
	padding: 138px 0 138px;
	margin-left: auto;
}

@media (min-width:2000px) {
	.front-page section.company-sec .cont-area {
		max-width: 1920px;
		margin: auto;
	}
}

.front-page section.company-sec .cont-area .text-area {
	width: calc((411 / 1233) * 100%);
}

.front-page section.company-sec .cont-area .text-area.active {
	animation: common-animation ease-in-out var(--duration) var(--delay) forwards;
}

.front-page section.company-sec .cont-area .text-area h3 {
	margin-top: 41px;
	margin-bottom: 26px;
}

.front-page section.company-sec .cont-area .text-area p {
	font-family: var(--NotoSansJP);
	font-size: 16px;
	font-weight: 700;
	color: var(--white);
	line-height: calc(30 / 16);
	margin-bottom: 41px;
}

.front-page section.company-sec .cont-area .text-deco {
	position: absolute;
	right: calc(100% - ((1302 / 1366) * 100%));
	bottom: 0;
	width: calc((734 / 1233) * 100%);
}

@media (max-width:1300px) {
	.front-page section.company-sec .cont-area .text-area h3 {
		margin-top: 30px;
		margin-bottom: 20px;
	}

	.front-page section.company-sec .cont-area .text-area p {
		font-size: 14px;
		margin-bottom: 30px;
	}
}

/*tb*/
@media (max-width:1024px) {
	.front-page section.company-sec .cont-area {
		width: 96%;
	}
}

/*sp*/
@media (max-width:767px) {
	.front-page section.company-sec {
		display: flex;
		flex-direction: column-reverse;
		margin: 0 0 80px;
	}

	.front-page section.company-sec .img-area {
		position: relative;
		right: initial;
		bottom: initial;
		width: 100%;
		height: auto;
	}

	.front-page section.company-sec .img-area .text-deco {
		position: absolute;
		transform: translateX(-50%);
		left: 50%;
		bottom: 0;
		width: 299px;
		height: auto;
	}

	.front-page section.company-sec .cont-area {
		width: calc((327 / 375) * 100%);
		padding: 0;
		margin: 33px auto 0;
	}

	.front-page section.company-sec .cont-area .text-area {
		width: 100%;
	}

	.front-page section.company-sec .cont-area .text-area h2 {
		border-color: #2C476C;
	}

	.front-page section.company-sec .cont-area .text-area h3 {
		line-height: calc(36 / 30);
		margin-top: 27px;
		margin-bottom: 16px;
	}

	.front-page section.company-sec .cont-area .text-area p {
		line-height: calc(26 / 14);
		margin-bottom: 22px;
	}

	.front-page section.company-sec .cont-area .text-area .btn01 {
		width: 100%;
	}
}

/*======================
top recruit
=======================*/
.front-page section.recruit-sec {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column-reverse;
}

.front-page section.recruit-sec .cont-area {
	position: relative;
	z-index: 2;
	width: calc((1080 / 1366) * 100%);
	margin: -94px auto 0;
	padding: 49px calc((80 / 1366) * 100%) 22px;
	background-color: var(--navy);
}

.front-page section.recruit-sec .cont-area.active {
	animation: common-animation ease-in-out var(--duration) var(--delay) forwards;
}

.front-page section.recruit-sec .cont-area>img {
	position: absolute;
	z-index: -1;
	left: calc((80 / 1080) * 100%);
	bottom: 0;
	width: calc((604 / 1080) * 100%);
}

.front-page section.recruit-sec .cont-area .text-area {
	display: flex;
	justify-content: space-between;
	margin-top: 41px;
}

.front-page section.recruit-sec .cont-area p {
	font-family: var(--NotoSansJP);
	font-size: 16px;
	font-weight: 700;
	color: var(--white);
	line-height: calc(30 / 16);
	margin-bottom: 41px;
}

@media (max-width:1300px) {
	.front-page section.recruit-sec .cont-area h3 {
		margin-top: 30px;
	}

	.front-page section.recruit-sec .cont-area p {
		font-size: 14px;
		margin-bottom: 30px;
	}
}

@media (min-width:2000px) {
	.front-page section.recruit-sec .cont-area {
		max-width: 1920px;
	}
}

.front-page section.recruit-sec .slider-area {
	display: flex;
	width: 100vw;
}

.front-page section.recruit-sec .slider-area.active {
	animation: common-animation ease-in-out var(--duration) var(--delay) forwards;
}

.front-page section.recruit-sec .slider-area ul {
	display: flex;
	min-width: 100%;
	animation: loop-X 18s linear 0.5s infinite;
}

@keyframes loop-X {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-100%);
	}
}

/*tb*/
@media (max-width:1024px) {
	.front-page section.recruit-sec .cont-area {
		width: 96%;
	}
}

/*sp*/
@media (max-width:767px) {
	.front-page section.recruit-sec .cont-area {
		flex-direction: column-reverse;
		width: 100%;
		padding: 0;
		margin: 0 auto 80px;
		opacity: 1.0;

	}

	.front-page section.recruit-sec .slider-area {
		display: none;
	}

	.front-page section.recruit-sec .cont-area .img-area {
		width: 100%;
	}

	.front-page section.recruit-sec .cont-area h2 {
		position: relative;
		width: calc((327 / 375) * 100%);
		margin: auto;
		border-color: #2C476C;
		margin-top: 33px;
	}

	.front-page section.recruit-sec .cont-area h2 img {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 245px;
	}

	.front-page section.recruit-sec .cont-area .text-area {
		display: block;
		width: calc((327 / 375) * 100%);
		margin: 35px auto 0;
	}

	.front-page section.recruit-sec .cont-area .text-area h3 {
		line-height: calc(36 / 30);
		margin-top: 27px;
		margin-bottom: 16px;
	}

	.front-page section.recruit-sec .cont-area .text-area p {
		line-height: calc(26 / 14);
		margin-bottom: 22px;
	}

	.front-page section.recruit-sec .cont-area .text-area .btn01 {
		width: 100%;
	}

	.front-page section.recruit-sec .cont-area .text-area.active {
		animation: none;
	}

	.front-page section.recruit-sec .cont-area h2.active+.text-area {
		animation: common-animation var(--duration) var(--delay) ease-in-out forwards;
	}
}

/*======================
top service company recruit 共通
=======================*/
.front-page section:is(.service-sec, .company-sec, .recruit-sec) .text-deco.active {
	animation: common-animation ease-in-out var(--duration) var(--delay) forwards;
}

/*======================
top event
=======================*/
.front-page section.event-sec.active {
	animation: common-animation ease-in-out var(--duration) var(--delay) forwards;
}

.front-page section.event-sec .cont-area {
	display: flex;
	justify-content: space-between;
	width: calc((1238 / 1366) * 100%);
	padding: 100px calc((80 / 1366) * 100%);
	margin: 132px auto 0;
	border: solid 1px var(--border-color);
	border-radius: 4px;
}

.front-page section.event-sec .cont-area .hd01 {
	padding-bottom: 40px;
}

.front-page section.event-sec .cont-area .hd01.has-img img {
	max-width: 120px;
}

@media (min-width:2000px) {
	.front-page section.event-sec .cont-area {
		max-width: 1920px;
	}
}

.front-page section.event-sec .cont-area ul {
	width: calc((760 / 1238) * 100%);
}

.front-page section.event-sec .cont-area ul li {
	padding-bottom: 38.5px;
	border-bottom: 1px solid var(--border-color2);
}

.front-page section.event-sec .cont-area ul li+li {
	margin-top: 33.5px;
}

.front-page section.event-sec .cont-area ul li a {
	position: relative;
	display: block;
	font-family: var(--NotoSansJP);
	font-weight: 700;
	color: #FFF;
	padding-right: 78px;
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	.front-page section.event-sec .cont-area ul li a:hover {
		opacity: 0.75;
	}
}

.front-page section.event-sec .cont-area ul li a:after {
	content: "";
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	right: 0;
	width: 48px;
	height: 48px;
	border: solid 1px var(--border-color2);
	border-radius: 50%;
	background: url("img/common/arrow-w.webp") no-repeat center center/ 6px;
}

.front-page section.event-sec .cont-area ul li a time {
	font-family: var(--Cabin);
	font-size: 15px;
}

.front-page section.event-sec .cont-area ul li a h3 {
	font-size: 18px;
	margin-top: 15px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/*tb*/
@media (max-width:1024px) {
	.front-page section.event-sec .cont-area {
		width: 96%;
		flex-direction: column;
	}

	.front-page section.event-sec .cont-area .hd-area {
		display: flex;
		justify-content: space-between;
	}

	.front-page section.event-sec .cont-area .hd-area .has-img {
		flex-direction: column;
		align-items: flex-start;
		width: fit-content;
	}

	.front-page section.event-sec .cont-area .hd-area .hd-img {
		width: fit-content;
	}

	.front-page section.event-sec .cont-area ul {
		width: 100%;
		margin-top: 40px;
	}

	.front-page section.event-sec .cont-area ul li a time {
		font-size: 13px;
	}

	.front-page section.event-sec .cont-area ul li a h3 {
		font-size: 14px;
	}
}

/*sp*/
@media (max-width:767px) {
	.front-page section.event-sec .cont-area {
		width: 100%;
		padding: 60px 0 47px;
		margin: 0;
		border: solid 1px var(--border-color);
		border-width: 2px 0 2px 0;
		border-radius: 0;
	}

	.front-page section.event-sec .cont-area .hd-area {
		width: calc((327 / 375) * 100%);
		margin: auto;
	}

	.front-page section.event-sec .cont-area .hd-area .btn01 {
		font-size: 12px;
		width: 160px;
		height: 40px;
		padding-left: 16px;
	}

	.front-page section.event-sec .cont-area .hd-area .btn01::before {
		right: 33px;
	}

	.front-page section.event-sec .cont-area .hd-area .btn01::after {
		width: 70px;
	}

	.front-page section.event-sec .cont-area ul {
		width: calc((327 / 375) * 100%);
		margin: auto;
	}

	.front-page section.event-sec .cont-area ul li {
		padding-bottom: 27px;
	}

	.front-page section.event-sec .cont-area ul li+li {
		margin-top: 23px;
	}

	.front-page section.event-sec .cont-area ul li a time {
		font-size: 12px;
	}
}

/*======================
*
under
*
=======================*/
.under-page {
	font-family: var(--NotoSansJP);
}

.under-page .header01 {
	text-align: center;
	padding: 99px 0 49px;
}

.under-page .header01 .hd-area {
	position: relative;
	z-index: 1;
}

.under-page .header01 .hd-area h1 {
	font-size: 40px;
	font-weight: 900;
}

/*entry header*/
.under-page .header01 .hd-area.entry::after {
	content: "";
	position: absolute;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
	z-index: -1;
	width: 363px;
	aspect-ratio: 363 / 86;
	background: url(img/recruit/entry-hd.webp) no-repeat center / contain;
}

/*sp*/
@media (max-width:767px) {
	.under-page .header01 {
		padding: 85px 0 33px;
	}

	.under-page .header01 .hd-area h1 {
		font-size: 30px;
	}

	/*entry header*/
	.under-page .header01 .hd-area.entry::after {
		transform: translate(-50%, 0);
		top: -23px;
		width: 157px;
		aspect-ratio: 157 / 37;
	}
}

/*======================
recruit
=======================*/
.recruit .mv-area {
	position: relative;
	background-image: linear-gradient(to bottom, var(--blue) 80.1%, transparent 80.1%);
	padding-top: 64px;
}

@media (min-width:2000px) {
	.recruit .mv-area {
		max-width: 1920px;
		margin: auto;
	}
}

@media(min-width:1025px) and (max-width:1280px) {
	.recruit .mv-area {
		padding-top: 50px;
		background-image: linear-gradient(to bottom, var(--blue) 90%, transparent 90%);
	}
}

.recruit .mv-area .flex-cont {
	width: calc((1286 / 1366) * 100%);
	height: 100%;
	margin-left: auto;
	justify-content: space-between;
}

@media(min-width:1025px) and (max-width:1280px) {
	.recruit .mv-area .flex-cont {
		width: 95%;
	}
}

.recruit .mv-area .text-area {
	width: calc((401 / 1286) * 100%);
}

@media(min-width:1025px) and (max-width:1280px) {
	.recruit .mv-area .text-area {
		width: 35%;
	}
}

.recruit .mv-area .text-area .wrapper {
	width: 100%;
}


.recruit .mv-area .text-area h1 {
	font-family: var(--NotoSansJP);
	font-weight: 900;
	font-size: clamp(25px, 2.93vw, 40px);
	line-height: calc(58 / 40);
	color: #FFF;
	margin-top: min(30px, calc((30 / 401) * 100%));
	margin-bottom: 20px;
}

.recruit .mv-area .text-area .btn-area {
	margin-top: 49px;
}

@media(min-width:1025px) and (max-width:1280px) {
	.recruit .mv-area .text-area .btn-area {
		margin-top: 25px;
	}
}

.recruit .mv-area .text-area .btn-area a:not(.recruit-info) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	padding-bottom: 20px;
	border-bottom: 1px solid #FFF;
}

.recruit .mv-area .text-area .btn-area a:not(.recruit-info)>span {
	display: flex;
	align-items: center;
	gap: 16px;
	font-family: var(--Cabin);
	font-size: 12px;
	font-weight: 700;
}

.recruit .mv-area .text-area .btn-area a:not(.recruit-info) span span {
	width: 24px;
	aspect-ratio: 1 / 1;
	background: url(img/common/arrow-blue.webp) #FFF no-repeat center center / 9px;
	border-radius: 50%;
}

.recruit .mv-area .text-area .btn-area a:not(.recruit-info)+a {
	margin-top: 20px;
}

@media (min-width:768px) {
	.recruit .mv-area .text-area .btn-area .recruit-btn {
		margin-top: 20px;
	}
}

.recruit .mv-area .text-area .btn-area a.recruit-info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	width: fit-content;
	font-size: 15px;
	font-weight: 700;
	color: #FFF;
	border-radius: 50px;
	padding: 12px;
	background-color: #0B6EC3;
}

.recruit .mv-area .text-area .btn-area a.recruit-info span {
	transform: rotate(-90deg);
	width: 24px;
	aspect-ratio: 1 / 1;
	background: url(img/common/arrow-blue.webp) #FFF no-repeat center center / 9px;
	border-radius: 50%;
}

.recruit .mv-area .img-area {
	width: calc((806 / 1286) * 100%);
}

@media(min-width:1025px) and (max-width:1280px) {
	.recruit .mv-area .img-area {
		width: 61%;
	}
}

.recruit .mv-area .img-area img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.recruit .mv-area .scroll {
	display: flex;
	align-items: center;
	gap: 8px;
	position: absolute;
	bottom: 15%;
	left: 40px;
	font-family: var(--Cabin);
	font-size: 14px;
	font-weight: 700;
	color: var(--blue);
}

@media(min-width:1025px) and (max-width:1280px) {
	.recruit .mv-area .scroll {
		bottom: 3px;
	}
}

.recruit .mv-area .scroll img {
	width: 9px;
	animation: arrow_scroll 3.0s ease infinite;
}

@keyframes arrow_scroll {
	0% {
		transform: translateY(-4px);
	}

	20% {
		transform: translateY(0);
	}

	40% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(0px);
		opacity: 0;
	}

	65% {
		transform: translateY(0px);
		opacity: 0;
	}

	100% {
		transform: translateY(0px);
		opacity: 0;
	}
}

/*tb*/
@media (max-width:1024px) {
	.recruit .mv-area {
		height: auto;
		max-height: initial;
		min-height: 607px;
		padding-top: 0;
		padding-bottom: 37px;
		margin-bottom: -37px;
		background-image: initial;
	}

	.recruit .mv-area .flex-cont {
		flex-direction: column-reverse;
		width: 100%;
		height: 100%;
		justify-content: flex-end;
	}

	.recruit .mv-area .img-area {
		width: 100%;
		height: calc((300 / 667) * 100%);
		background-color: var(--blue);
	}

	.recruit .mv-area .text-area .wrapper {
		width: 100%;
	}

	.recruit .mv-area .text-area {
		display: flex;
		align-items: center;
		width: 100%;
		padding: 30px calc((100% - ((327 / 375) * 100%)) / 2) 24px;
		background-color: var(--blue);
	}

	.recruit .mv-area .text-area h1 {
		margin-top: 0;
	}

	.recruit .mv-area .scroll {
		transform: translateX(-50%);
		bottom: 8px;
		left: 50%;
		font-size: 17px;
	}

	.recruit .mv-area .scroll {
		bottom: 0;
	}
}

/*sp*/
@media (max-width:767px) {
	.recruit .mv-area .text-area {
		padding: 17px calc((100% - ((327 / 375) * 100%)) / 2) 24px;
	}

	.recruit .mv-area .text-area h1 {
		font-size: 30px;
		line-height: calc(40 / 30);
		text-align: center;
		margin-bottom: 11px;
	}

	.recruit .mv-area .text-area .btn-area {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 20px 15px;
		margin-top: 26px;
	}

	.recruit .mv-area .text-area .btn-area a:not(.recruit-info) {
		flex: 1;
		display: block;
		font-size: 16px;
		text-align: center;
		padding-bottom: 8px;
	}

	.recruit .mv-area .text-area .btn-area a:not(.recruit-info)+a {
		margin: 0;
	}

	.recruit .mv-area .text-area .btn-area a:not(.recruit-info)>span {
		display: block;
		font-size: 12px;
		margin-top: 6px;
	}

	.recruit .mv-area .text-area .btn-area a:not(.recruit-info) span span {
		display: block;
		width: 16px;
		margin: 5px auto 0;
		background: url(img/common/arrow-blue.webp) #FFF no-repeat center center / 6px;
	}

	.recruit .mv-area .text-area .btn-area .recruit-btn {
		width: 100%;
	}

	.recruit .mv-area .text-area .btn-area .recruit-btn a {
		margin: auto;
	}

	.recruit .mv-area .scroll {
		font-size: 12px;
	}
}

/*MESSAGE*/
.under-page .recruit-message {
	width: calc((1080 / 1366) * 100%);
	margin: 160px auto 0;
}

@media (min-width:2000px) {
	.under-page .recruit-message {
		max-width: 2000px;
	}
}

.under-page .recruit-message .cont-area {
	position: relative;
	width: calc(100% - 8px);
	background: #FFF;
}

.under-page .recruit-message .cont-area::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 8px;
	left: 8px;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(242deg, #2A80CB 0%, #71C445 100%);
}

.under-page .recruit-message .cont-area h2 {
	font-family: var(--Cabin);
	font-size: 12px;
	font-weight: 700;
	color: rgba(0, 0, 0, 0.15);
	line-height: 1.0;
	padding: 20px 28px 18px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

.under-page .recruit-message .cont-area .text-area {
	font-size: clamp(14px, 1.46vw, 20px);
	font-weight: 700;
	line-height: calc(48 / 20);
	padding: 125px 0 125px calc((116 / 1080) * 100%);
}

.under-page .recruit-message .cont-area .text-area span {
	display: inline-block;
	color: #FFF;
	margin-right: 3px;
	padding: 7px 6px 9px;
	line-height: 1.0;
}

.under-page .recruit-message .cont-area .text-area span.green {
	background-color: var(--lightgreen);
}

.under-page .recruit-message .cont-area .text-area span.blue {
	background-color: var(--blue);
}

.under-page .recruit-message .slider-area {
	flex-wrap: nowrap;
	flex-direction: column;
	gap: 0;
	position: absolute;
	top: 0;
	right: calc((116 / 1080) * 100%);
	z-index: 2;
	width: calc((280 / 1080) * 100%);
	height: 100%;
	background-color: #FFF;
	overflow: hidden;
}

.under-page .recruit-message .slider-area .slider {
	animation: loopY 18s linear infinite;
}

@keyframes loopY {
	to {
		translate: 0 -100%;
	}
}

.under-page .recruit-message .slider-area img {
	padding-top: 8px;
}

/*tb*/
@media (max-width:1024px) {
	.under-page .recruit-message {
		width: 96%;
	}

	.under-page .recruit-message .cont-area .message-wrapper>* {
		display: flex;
		flex-direction: column-reverse;
	}

	.under-page .recruit-message .cont-area .text-area {
		font-size: 20px;
		line-height: calc(48 / 20);
		padding: 0 calc((100% - ((327 / 375) * 100%)) / 2) 45px;
	}

	.under-page .recruit-message .slider-area {
		flex-wrap: nowrap;
		flex-direction: row;
		position: static;
		width: 100%;
		padding: 32px 0 34px;
	}

	.under-page .recruit-message .slider-area .slider {
		width: 100%;
		padding-bottom: 0;
		animation: recruitSlider-loopX 18s linear infinite;
	}

	.under-page .recruit-message .slider-area .slider {
		min-width: 200%;
	}

	.under-page .recruit-message .slider-area .slider>* {
		display: flex;
	}

	.under-page .recruit-message .slider-area img {
		padding-top: 0;
		padding-right: 8px;
	}

}

/*sp*/
@media (max-width:767px) {
	.under-page .recruit-message {
		width: calc((359 / 375) * 100%);
		margin: 64px auto 0;
	}

	.under-page .recruit-message .slider-area .slider {
		min-width: 124%;
	}

}

@keyframes recruitSlider-loopX {
	to {
		translate: -100% 0;
	}
}

/*JOB ENVIROMENT*/
.under-page :is(.recruit-job, .recruit-enviroment) {
	--color1: #2A80CB;
	--color2: #228CB5;
	--color3: #27A3A8;
	--color4: #26A385;
	--color5: #42BA45;
	--color6: #71C445;
	--color7: #9DCC1D;
}

/*JOB*/
.under-page .recruit-job {
	margin: 200px auto 0;
}

@media (min-width:2000px) {
	.under-page .recruit-job {
		max-width: 1920px;
	}
}

.under-page .recruit-job .wrapper .cont-area+.cont-area {
	margin-top: -64px;
}

.under-page .recruit-job .wrapper>div .cont-area:nth-of-type(even) .cont-wrapper {
	flex-direction: row-reverse;
	margin-left: auto;
}

.under-page .recruit-job .cont-area.cont01 {
	position: relative;
	z-index: 8;
	background-image: linear-gradient(to right, transparent 50%, var(--color1) 50%);
}

.under-page .recruit-job .cont-area.cont02 {
	position: relative;
	z-index: 7;
	background-image: linear-gradient(to left, transparent 50%, var(--color2) 50%);
}

.under-page .recruit-job .cont-area.cont03 {
	position: relative;
	z-index: 6;
	background-image: linear-gradient(to right, transparent 50%, var(--color3) 50%);
}

.under-page .recruit-job .cont-area.cont04 {
	position: relative;
	z-index: 5;
	padding-top: 128px;
	padding-bottom: 128px;
	background-color: var(--color4);
}

.under-page .recruit-job .cont-area.cont05 {
	position: relative;
	z-index: 6;
	background-image: linear-gradient(to right, transparent 50%, var(--color5) 50%);
}

.under-page .recruit-job .cont-area.cont06 {
	position: relative;
	z-index: 7;
	background-image: linear-gradient(to left, transparent 50%, var(--color6) 50%);
}

.under-page .recruit-job .cont-area.cont07 {
	position: relative;
	z-index: 8;
	background-image: linear-gradient(to right, transparent 50%, var(--color7) 50%);
}

.under-page .recruit-job .cont-area:not(.cont04) .cont-wrapper {
	justify-content: space-between;
	align-items: center;
	gap: 0;
	width: calc((1223 / 1366) * 100%);
}

.under-page .recruit-job .cont-area.cont04 .slider-area {
	gap: 0;
	width: 200%;
}

.under-page .recruit-job .cont-area.cont04 .slider-area .slider {
	gap: 0;
	animation: loop-X 18s linear 0.5s infinite;
}

@keyframes loop-X {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-100%);
	}
}

.under-page .recruit-job .cont-area.cont04 .slider-area .slider figure {
	margin-right: 10px;
}

.under-page .recruit-job .cont-area figure {
	width: calc((726/ 1223) * 100%);
}

.under-page .recruit-job .cont-area:not(.cont04) figure img {
	width: 100%;
	height: 100%;
	padding: 64px 0;
}

.under-page .recruit-job .cont-area .text-area {
	color: #FFF;
}

.under-page .recruit-job .cont-area:not(.cont04) .text-area {
	width: calc(100% - ((726/ 1223) * 100%));
	padding: 30px 0;
}

.under-page .recruit-job .cont-area.cont04 .text-wrapper {
	gap: 0;
	justify-content: space-between;
	align-items: flex-start;
	width: calc((1080 / 1366) * 100%);
	margin: auto;
}

.under-page .recruit-job .cont-area.cont04 .text-wrapper .text-area {
	width: calc((500 / 1080) * 100%);
	margin-top: 24px;
}

.under-page .recruit-job .wrapper>div .cont-area:not(.cont04):nth-of-type(odd) .cont-wrapper .text-area {
	padding-left: calc((97 / 1233) * 100%);
}

.under-page .recruit-job .wrapper>div .cont-area:not(.cont04):nth-of-type(even) .cont-wrapper .text-area {
	padding-right: calc((97 / 1233) * 100%);
}

.under-page .recruit-job .cont-area .text-area .cont-hd {
	font-size: 40px;
	margin-bottom: 29px;
}

.under-page .recruit-job .cont-area .text-area .cont-hd h3 {
	font-size: 1.0em;
	font-weight: 900;
}

.under-page .recruit-job .cont-area .text-area .cont-hd h3 span {
	font-size: calc((14 / 40) * 1.0em);
	font-weight: 400;
}

.under-page .recruit-job .cont-area .text-area .cont-hd p {
	font-family: var(--Cabin);
	font-size: calc((18 / 40) * 1.0em);
	font-weight: 700;
}

.under-page .recruit-job .cont-area .text-area p.cont-text {
	font-size: 16px;
	font-weight: 700;
	color: var(--white);
	line-height: calc(30 / 16);
	margin-bottom: 18px;
}

.under-page .recruit-job .cont-area .text-area .point-text {
	--x-gradient: linear-gradient(90deg, #FFF 0 20px, transparent 20px calc(100% - 20px), #FFF calc(100% - 20px));
	--y-gradient: linear-gradient(#FFF 0 20px, transparent 20px calc(100% - 20px), #FFF calc(100% - 20px));
	padding: 24px 24px 23.5px;
	background-image: var(--x-gradient), var(--y-gradient), var(--x-gradient), var(--y-gradient);
	background-repeat: no-repeat;
	background-size: 100% 4px, 4px 100%, 100% 4px, 4px 100%;
	background-position: top, right, bottom, left;
	color: var(--white);
}

.under-page .recruit-job .cont-area .text-area .point-text h4 {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 12.5px;
	text-align: center;
}

.under-page .recruit-job .cont-area .text-area .point-text p {
	font-size: 14px;
	line-height: calc(26 / 14)
}

/*pc*/
@media screen and (min-width:1025px) and (max-width:1260px) {
	.under-page .recruit-job .wrapper .cont-area:not(.cont04) {
		height: 497px;
		display: flex;
		align-items: center;
	}

	.under-page .recruit-job .cont-area:not(.cont04) figure img {
		width: 100%;
		height: calc(497px - 128px);
		padding: 0;
		object-fit: cover;
	}

	.under-page .recruit-job .cont-area .text-area .cont-hd {
		font-size: 30px;
	}

	.under-page .recruit-job .cont-area .text-area p.cont-text {
		font-size: 14px;
	}

	.under-page .recruit-job .cont-area .text-area .point-text h4 {
		font-size: 14px;
	}

	.under-page .recruit-job .cont-area .text-area .point-text p {
		font-size: 12px;
	}
}

/*tb*/
@media (max-width:1024px) {
	.under-page .recruit-job .wrapper .cont-area+.cont-area {
		margin-top: -50px;
	}

	.under-page .recruit-job .cont-area.cont01 {
		z-index: 1;
		background-image: linear-gradient(to bottom, transparent 50px, var(--color1) 50px);
	}

	.under-page .recruit-job .cont-area.cont02 {
		z-index: 2;
		background-image: linear-gradient(to bottom, transparent 50px, var(--color2) 50px);
	}

	.under-page .recruit-job .cont-area.cont03 {
		z-index: 3;
		background-image: linear-gradient(to bottom, transparent 50px, var(--color3) 50px);
	}

	.under-page .recruit-job .cont-area.cont04 {
		z-index: 4;
		padding-top: 0;
		background: linear-gradient(to bottom, transparent 50px, var(--color4) 50px);
	}

	.under-page .recruit-job .cont-area.cont05 {
		z-index: 5;
		background-image: linear-gradient(to bottom, transparent 50px, var(--color5) 50px);
	}

	.under-page .recruit-job .cont-area.cont06 {
		z-index: 6;
		background-image: linear-gradient(to bottom, transparent 50px, var(--color6) 50px);
	}

	.under-page .recruit-job .cont-area.cont07 {
		z-index: 7;
		background-image: linear-gradient(to bottom, transparent 50px, var(--color7) 50px);
	}

	.under-page .recruit-job .cont-area:not(.cont04) .cont-wrapper {
		flex-wrap: wrap;
		justify-content: center;
		width: 96%;
		margin: auto;
	}

	.under-page .recruit-job .cont-area figure {
		width: 80%;
	}

	.under-page .recruit-job .cont-area:not(.cont04) figure img {
		padding: 0;
	}

	.under-page .recruit-job .cont-area.cont04 .text-wrapper {
		width: 80%;
	}

	.under-page .recruit-job .cont-area:not(.cont04) .text-area {
		width: 80%;
		padding: 0 0 100px !important;
		margin-top: 40px;
	}

	.under-page .recruit-job .cont-area .text-area .cont-hd h3 span {
		display: block;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page .recruit-job {
		margin: 120px auto 0;
	}

	.under-page .recruit-job .cont-area:not(.cont04) .cont-wrapper {
		width: calc((327 / 375)* 100%);
	}

	.under-page .recruit-job .cont-area.cont04 {
		padding-bottom: 96px;
	}

	.under-page .recruit-job .cont-area.cont04 .text-wrapper {
		display: block;
		width: calc((327 / 375)* 100%);
	}

	.under-page .recruit-job .cont-area.cont04 .slider-area .slider figure {
		width: calc((160/ 375) * 100vw);
	}

	.under-page .recruit-job .cont-area figure {
		width: 100%;
	}

	.under-page .recruit-job .cont-area:not(.cont04) .text-area {
		width: 100%;
		margin-top: 24px;
		padding: 0 0 96px !important;
	}

	.under-page .recruit-job .cont-area.cont04 .text-wrapper .text-area {
		width: 100%;
		margin-top: 24px;
	}

	.under-page .recruit-job .cont-area.cont04 .text-wrapper .text-area+.text-area {
		margin-top: 40px;
	}

	.under-page .recruit-job .cont-area .text-area .cont-hd {
		font-size: 30px;
		margin-bottom: 22px;
	}

	.under-page .recruit-job .cont-area .text-area .cont-hd h3 span {
		display: inline-block;
		font-size: calc((12 / 30) * 1.0em);
		padding-left: 6px;
	}

	.under-page .recruit-job .cont-area .text-area .cont-hd p {
		font-size: calc((14 / 30) * 1.0em);
	}

	.under-page .recruit-job .cont-area .text-area p.cont-text {
		font-size: 14px;
		line-height: calc(26 / 14);
		margin-bottom: 14px;
	}

	.under-page .recruit-job .cont-area .text-area .point-text {
		padding: 20px 24px 19px;
	}

	.under-page .recruit-job .cont-area .text-area .point-text h4 {
		font-size: 14px;
		margin-bottom: 12px;
	}

	.under-page .recruit-job .cont-area .text-area .point-text p {
		font-size: 12px;
		line-height: calc(22 / 12);
	}
}

/*JOB*/
.under-page .recruit-enviroment {
	margin: 200px auto 0;
}

.under-page .recruit-enviroment .cont-area {
	width: calc((1080 / 1366) * 100%);
	margin: auto;
}

.under-page .recruit-enviroment .cont-area.active {
	opacity: 1.0;
	animation: initial;
}

@media (min-width:2000px) {
	.under-page .recruit-enviroment .cont-area {
		max-width: 1920px;
	}
}

.under-page .recruit-enviroment .cont-area>div {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(2, auto);
	gap: 15px;
}

.under-page .recruit-enviroment .cont-area .cont {
	color: #FFF;
	padding: 40px calc((24 / 350) * 100%) 42px;
	opacity: 0;
	translate: 0 15px;
}

.under-page .recruit-enviroment .cont-area.active .cont {
	animation: common-animation 0.5s ease-in-out 0.5s forwards;
}

.under-page .recruit-enviroment .cont-area .cont1 {
	background-color: var(--color1);
}

.under-page .recruit-enviroment .cont-area .cont2 {
	background-color: var(--color2);
}

.under-page .recruit-enviroment .cont-area.active .cont2 {
	animation-delay: 0.7s;
}

.under-page .recruit-enviroment .cont-area .cont3 {
	background-color: var(--color3);
}

@media (min-width:768px) {
	.under-page .recruit-enviroment .cont-area .cont3 p {
		text-align: center;
	}
}

.under-page .recruit-enviroment .cont-area.active .cont3 {
	animation-delay: 0.9s;
}

.under-page .recruit-enviroment .cont-area .cont4 {
	background-color: var(--color4);
}

.under-page .recruit-enviroment .cont-area.active .cont4 {
	animation-delay: 1.1s;
}

.under-page .recruit-enviroment .cont-area .cont5 {
	background-color: var(--color5);
}

.under-page .recruit-enviroment .cont-area.active .cont5 {
	animation-delay: 1.3s;
}

.under-page .recruit-enviroment .cont-area .cont6 {
	background-color: var(--color6);
}

.under-page .recruit-enviroment .cont-area.active .cont6 {
	animation-delay: 1.5s;
}

.under-page .recruit-enviroment .cont-area .cont figure {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	margin: auto;
}

.under-page .recruit-enviroment .cont-area .cont figure img {
	aspect-ratio: initial !important;
	object-fit: contain !important;
	max-height: 100%;
	width: fit-content;
}

.under-page .recruit-enviroment .cont-area .cont h3 {
	font-size: 20px;
	font-weight: 900;
	text-align: center;
	margin: 40px auto 16px;
}

.under-page .recruit-enviroment .cont-area .cont p {
	font-size: 16px;
	font-weight: 700;
	line-height: calc(30 / 16);
}

/*tb*/
@media (max-width:1025px) {
	.under-page .recruit-enviroment .cont-area {
		width: 96%;
	}

	.under-page .recruit-enviroment .cont-area>div {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: auto;
		gap: 15px;
	}

}

/*sp*/
@media (max-width:767px) {
	.under-page .recruit-enviroment {
		margin: 120px auto 0;
	}

	.under-page .recruit-enviroment .cont-area {
		width: calc((327 / 375) * 100%);
	}

	.under-page .recruit-enviroment .cont-area .cont {
		color: #FFF;
		padding: 32px 24px 22px;
	}

	.under-page .recruit-enviroment .cont-area .cont3 p br {
		display: none;
	}

	.under-page .recruit-enviroment .cont-area>div {
		grid-template-columns: repeat(1, 1fr);
		gap: 10px;
	}

	.under-page .recruit-enviroment .cont-area .cont figure {
		width: 40px;
		height: 40px;
	}

	.under-page .recruit-enviroment .cont-area .cont h3 {
		font-size: 18px;
		margin: 26px auto 13px;
	}

	.under-page .recruit-enviroment .cont-area .cont p {
		font-size: 14px;
		line-height: calc(26 / 14);
	}
}

/*DISCUSSION*/
.under-page .recruit-discussion {
	margin: 200px auto 200px;
}

.under-page .recruit-discussion .discussion-header {
	position: relative;
}

.under-page .recruit-discussion .discussion-header .text-cont {
	position: absolute;
	transform: translateX(-50%);
	left: 50%;
	bottom: 64px;
	width: calc((1080 / 1366) * 100%);
}

@media (min-width:2000px) {
	.under-page .recruit-discussion .discussion-header .text-cont {
		max-width: 1920px;
	}
}

.under-page .recruit-discussion .discussion-header .text-cont>div {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.under-page .recruit-discussion .discussion-header .text-cont .hd-area {
	width: calc((305 / 1080) * 100%);
	color: #FFF;
}

.under-page .recruit-discussion .discussion-header .text-cont .hd-area h3 {
	font-weight: 900;
	font-size: clamp(20px, 2.93vw, 40px);
	margin-bottom: 33px;
}

.under-page .recruit-discussion .discussion-header .text-cont .hd-area p {
	font-weight: 700;
	font-size: clamp(12px, 1.17vw, 16px);
	line-height: calc(30 / 16);
}

.under-page .recruit-discussion .discussion-header .text-cont .member {
	width: calc((740 / 1080) * 100%);
	color: #FFF;
}

.under-page .recruit-discussion .discussion-header .text-cont .member>div>p:not(.deco-text) {
	font-weight: 700;
	font-size: clamp(12px, 1.17vw, 16px);
	margin-bottom: 17px;
}

.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area {
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, auto);
}

.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont {
	align-items: flex-start;
	gap: 10px;
}

.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont figure {
	max-width: 64px;
}

.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont .profile {
	font-weight: 700;
	font-size: clamp(12px, 1.17vw, 16px);
}

.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont .profile p:first-of-type {
	margin-bottom: 4px;
}

.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont .profile p:not(:first-of-type) {
	font-weight: 400;
	font-size: clamp(9px, 0.88vw, 12px);
	line-height: calc(20 / 12);
}

.under-page .recruit-discussion .discussion-header .text-cont .member>div>p.deco-text {
	position: absolute;
	z-index: -1;
	transform: translateX(-50%);
	left: 50%;
	bottom: calc(100% - 70px);
	line-height: 1.0;
	font-family: var(--Cabin);
	font-size: 120px;
	font-weight: 700;
	color: rgba(0, 0, 0, 0.2);
	margin: 0;
}

/*tb*/
@media (max-width:1024px) {
	.under-page .recruit-discussion .discussion-header .text-cont {
		width: 96%;
	}

	.under-page .recruit-discussion .discussion-header .text-cont>div {
		display: block;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .hd-area {
		width: 100%;
		margin-bottom: 25px;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .hd-area h3 {
		margin-bottom: 20px;
		text-align: center;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .hd-area p {
		width: fit-content;
		margin: auto;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .hd-area p br {
		display: none;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member {
		width: 100%;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member>div>p.deco-text {
		font-size: 80px;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page .recruit-discussion {
		margin: 120px auto 60px;
	}

	.under-page .recruit-discussion .discussion-header .text-cont {
		position: initial;
		transform: initial;
		width: calc((327 / 375) * 100%);
		margin: 56px auto 0;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .hd_area p {
		font-size: 14px;
		font-weight: 700;
		line-height: calc(26 / 14);
		text-align: center;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member {
		color: var(--black);
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member>div>p:not(.deco-text) {
		font-size: 14px;
		text-align: center;
		margin-top: 20px;
		margin-bottom: 14px;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area {
		gap: 28px;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: auto;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont {
		align-items: center;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont figure {
		max-width: 48px;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont .profile {
		font-size: 16px;
	}

	.under-page .recruit-discussion .discussion-header .text-cont .member .cont-area .cont .profile p:not(:first-of-type) {
		font-size: 12px;
	}
}

/*question*/
.under-page .recruit-discussion .question-cont {
	max-width: 720px;
	margin: 120px auto 0;
}

.under-page .recruit-discussion .question-cont .hd-area {
	text-align: center;
	margin-bottom: 32px;
}

.under-page .recruit-discussion .question-cont .hd-area .hd {
	position: relative;
	color: var(--blue);
	padding-bottom: 32px;
	margin-bottom: 37px;
}

.under-page .recruit-discussion .question-cont .hd-area .hd::after {
	content: "";
	position: absolute;
	transform: translateX(-50%);
	left: 50%;
	bottom: 0;
	min-width: 30px;
	height: 5px;
	background-image: linear-gradient(to right, var(--blue) 0 5px, transparent 5px 10px, var(--blue) 10px 15px, transparent 15px 20px, var(--blue) 20px 25px);
	background-repeat: no-repeat;
	background-size: 25px 5px;
	background-position: center;
}

.under-page .recruit-discussion .question-cont .hd-area .hd p {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	aspect-ratio: 1/1;
	font-size: 30px;
	font-weight: 900;
	margin: 0 auto 21px;
	border-radius: 50%;
	background-color: #FFF;
}

.under-page .recruit-discussion .question-cont .hd-area .hd h3 {
	font-size: 20px;
	font-weight: 900;
}

.under-page .recruit-discussion .question-cont .hd-area h4 {
	font-size: 30px;
	font-weight: 900;
	line-height: calc(44 / 30);
}

.under-page .recruit-discussion .question-cont .hd-area+figure {
	margin-bottom: 32px;
}

.under-page .recruit-discussion .question-cont .cont+.cont {
	margin-top: 8px;
}

.under-page .recruit-discussion .question-cont .cont>div>div {
	display: flex;
	align-items: stretch;
	gap: 32px;
}

.under-page .recruit-discussion .question-cont .cont .img-area {
	width: 48px;
}

.under-page .recruit-discussion .question-cont .cont .img-area p {
	font-size: 16px;
	font-weight: 700;
	color: var(--navy);
	text-align: center;
	margin-top: 2px;
}

.under-page .recruit-discussion .question-cont .cont .text {
	display: flex;
	align-items: center;
	position: relative;
	width: calc(100% - 48px - 32px);
	font-size: 16px;
	font-weight: 700;
	line-height: calc(30 / 16);
	color: var(--navy);
	padding: 17px 20px;
	background-color: #FFF;
	border-radius: 8px;
}

.under-page .recruit-discussion .question-cont .cont .text::before {
	content: "";
	position: absolute;
	top: 24px;
	right: 100%;
	width: 16px;
	aspect-ratio: 1 / 1;
	background-color: #FFF;
	clip-path: polygon(0 0, 100% 0, 100% 100%);
}

/*sp*/
@media (max-width:767px) {
	.under-page .recruit-discussion .question-cont {
		margin: 64px auto 0;
	}

	.under-page .recruit-discussion .question-cont .hd-area .hd {
		padding-bottom: 24px;
		margin-bottom: 25px;
	}

	.under-page .recruit-discussion .question-cont .hd-area .hd p {
		width: 64px;
		font-size: 24px;
		margin: 0 auto 24px;
	}

	.under-page .recruit-discussion .question-cont .hd-area .hd h3 {
		font-size: 18px;
	}

	.under-page .recruit-discussion .question-cont .hd-area h4 {
		font-size: 24px;
		line-height: calc(36 / 24);
	}

	.under-page .recruit-discussion .question-cont .cont>div>div {
		gap: 32px;
		width: calc((327 / 375) * 100%);
		margin: auto;
	}

	.under-page .recruit-discussion .question-cont .cont .text {
		width: calc(100% - 48px - 32px);
		font-size: 14px;
		line-height: calc(26 / 14);
		padding: 13px 16px;
	}
}

/*======================
cta
=======================*/
.recruit-cta {
	padding: 132px 0 124px;
	background-color: var(--blue);
}

.recruit-cta .cont {
	width: fit-content;
	margin: auto;
}

.recruit-cta .cont .entry-hd {
	text-align: center;
}

.recruit-cta .cont .entry-hd img {
	max-width: 363px;
	margin: 0 auto 17px;
}

.recruit-cta .cont .entry-hd h2 {
	font-family: var(--NotoSansJP);
	font-size: 20px;
	font-weight: 900;
	color: #FFF;
}

.recruit-cta .cont .wrapper {
	display: flex;
	gap: 40px;
	margin: 33px auto 0;
}

.recruit-cta .cont .wrapper .engageLink-area span {
	display: block;
	font-family: var(--NotoSansJP);
	font-size: 13px;
	font-weight: 700;
	color: #FFF;
	margin-top: 16px;
}

/*sp*/
@media (max-width:767px) {
	.recruit-cta {
		padding: 110px 0 92px;
	}

	.recruit-cta .cont .entry-hd img {
		max-width: 157px;
		margin: 0 auto 21px;
	}

	.recruit-cta .cont .entry-hd h2 {
		font-size: 16px;
	}

	.recruit-cta .cont .wrapper {
		flex-direction: column;
		gap: 20px;
	}

	.recruit-cta .cont .wrapper .engageLink-area span {
		margin-top: 10px;
	}
}

/*======================
anker_btn
=======================*/
.under-page .anker_btn-area {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
}

.under-page .anker_btn-area a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	font-size: clamp(10px, 1.1vw, 15px);
	font-weight: 700;
	color: #FFF;
	padding: 24px;
	transition: 0.3s ease-in-out;
}

.under-page .anker_btn-area a+a::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 1px;
	height: 32px;
	background-color: rgba(255, 255, 255, 0.2);
}

.under-page .anker_btn-area a span {
	display: block;
	width: 32px;
	aspect-ratio: 1 / 1;
	background: url(img/common/arrow-navy.webp) var(--white) no-repeat center center / 9px;
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	.under-page .anker_btn-area a:hover {
		opacity: 0.75;
	}

	.under-page .anker_btn-area a:hover span {
		translate: 0 5px;
	}
}

/*tb*/
@media (max-width:1024px) {
	.under-page .anker_btn-area {
		grid-template-columns: repeat(3, 1fr);
	}

	.under-page .anker_btn-area a {
		font-size: 15px;
	}

	.under-page .anker_btn-area a:nth-of-type(n+4) {
		border-top: 1px solid rgba(255, 255, 255, 0.2);
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	}

	.under-page .anker_btn-area a:nth-of-type(4):after {
		content: none;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page .anker_btn-area {
		grid-template-columns: repeat(1, 1fr);
		width: calc((327 / 375) * 100%);
		margin: auto;
	}

	.under-page .anker_btn-area a {
		padding: 16px 0;
	}

	.under-page .anker_btn-area a+a::after {
		content: none;
	}

	.under-page .anker_btn-area a+a {
		border-top: 1px solid rgba(255, 255, 255, 0.2);
		border-bottom: 0;
	}
}

/*アクセスマップ*/
.under-page .access-cont .cont-area>* {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.under-page .access-cont .cont-area .text-area {
	width: calc((380 / 1080) * 100%);
	color: #FFF;
}

.under-page .access-cont .cont-area .text-area p {
	font-size: 16px;
	font-weight: 700;
	line-height: calc(30 / 16);
}

.under-page .access-cont .cont-area .text-area .navi-text {
	margin-top: 12px;
	padding: 25px;
	padding-left: 18px;
	background-color: rgba(25, 25, 25, 0.1);
}

.under-page .access-cont .cont-area .text-area .navi-text p:first-of-type {
	width: fit-content;
	font-size: 14px;
	color: var(--navy);
	padding: 0 5px;
	margin-bottom: 5px;
	background-color: #FFF;
}

.under-page .access-cont .cont-area .text-area .navi-text p:last-of-type {
	padding-left: 7px;
}

.under-page .access-cont .cont-area .text-area p.annotation {
	font-size: 12px;
	font-weight: 400;
	line-height: 2.0;
	margin-top: 10px;
}

.under-page .access-cont .cont-area .map-area {
	width: calc((668 / 1080) * 100%);
}

.under-page .access-cont .cont-area .map-area>* {
	aspect-ratio: 334 / 225;
}

/*pc*/
@media (max-width:1300px) {
	.under-page .access-cont .cont-area .text-area p {
		font-size: 14px;
	}
}

/*tb*/
@media (max-width:1024px) {
	.under-page .access-cont .cont-area .text-area {
		width: 45%;
	}

	.under-page .access-cont .cont-area .text-area .navi-text {
		padding: 18px;
	}

	.under-page .access-cont .cont-area .map-area {
		width: 50%;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page .access-cont .cont-area>* {
		flex-direction: column-reverse;
		gap: 26px;
	}

	.under-page .access-cont .cont-area .text-area {
		order: 2;
		width: calc((327 / 375) * 100%);
		margin: 0 auto;
	}

	.under-page .access-cont .cont-area .map-area {
		order: 3;
		width: 100%;
	}

	.under-page .access-cont .cont-area .text-area p {
		line-height: calc(26 / 14);
	}

	.under-page .access-cont .cont-area .text-area .navi-text {
		padding: 24px;
		margin-top: 15px;
	}

	.under-page .access-cont .cont-area .text-area .navi-text p:last-of-type {
		font-size: 16px;
		line-height: 1.5;
		margin-top: 10px;
	}

	.under-page .access-cont .cont-area .text-area p.annotation {
		margin-top: 16px;
	}
}

/*アクセス トピックス*/
.under-page .access-cont .cont-area .topics-area {
	width: 100%;
	margin-top: 15px;
}

.under-page .access-cont .cont-area .topics-area h3 {
	font-size: 20px;
	font-weight: 700;
	color: #FFF;
	text-align: center;
	margin-bottom: 8px;
	padding: 10px 0;
	background-color: var(--blue2);
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper {
	display: flex;
	align-items: stretch;
	gap: 8px;
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: calc((34 / 536) * 100%);
	flex: 1;
	padding: 24px calc((24 / 1080) * 100%) 21px calc((34 / 1080) * 100%);
	background-color: #FFF;
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .img-cont {
	width:calc((100% - 16px) / 3);
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .img-cont img{
	width:100%;
	object-fit:cover;
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .icn {
	width: 64px;
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area {
	width: fit-content;
	flex: 1 1;
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area h4 {
	font-size: 20px;
	color: var(--black);
	margin-bottom: 21px;
	padding-bottom: 16px;
	border-bottom: solid 1px #E5E5E5;
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area p {
	font-size: 16px;
	font-weight: 700;
	color: var(--black);
	line-height: calc(30 / 16);
}

.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area p a {
	color: var(--blue2);
	text-decoration: underline;
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area p a:hover {
		opacity: 0.75;
	}
}

/*tb*/
@media (max-width:899px) {
	.under-page .access-cont .cont-area .topics-area h3 {
		font-size: 18px;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .icn {
		width: 50px;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area h4 {
		font-size: 18px;
		margin-bottom: 16px;
		padding-bottom: 11px;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area p {
		font-size: 14px;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page .access-cont .cont-area .topics-area {
		order: 1;
		width: calc((327 / 375) * 100%);
		margin: auto;
	}

	.under-page .access-cont .cont-area .topics-area h3 {
		line-height: calc(30 / 18);
		padding: 9px 12px;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper {
		flex-direction: column;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont {
		column-gap: calc((20 / 327) * 100%);
		padding: 24px calc((24 / 375) * 100%) 21px calc((20 / 375) * 100%);
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .img-cont {
		width:100%;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area h4 {
		margin-bottom: 21px;
		padding-bottom: 16px;
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area p {
		line-height: calc(26 / 14);
	}

	.under-page .access-cont .cont-area .topics-area .topics-wrapper .cont .text-area p a {
		word-break: break-all;
	}
}

/*======================
事業情報 会社情報
=======================*/
@media (min-width:2000px) {
	.under-page:is(.service, .company) .mv-area {
		max-width: 1920px;
		margin: auto;
	}
}



/*======================
事業情報
=======================*/
.under-page.service {
	background-color: var(--navy);
}

.under-page.service .mv-area {
	position: relative;
}

.under-page.service .mv-area .hd-area {
	position: absolute;
	left: 0;
	bottom: -1px;
	color: #FFF;
	width: 100%;
	padding-top: 36px;
	background-color: var(--navy);
	clip-path: polygon(0 0, calc((517 / 1366) * 100%) 0, calc((600 / 1366) * 100%) 100%, 0 100%);
}

.under-page.service .mv-area .hd-area .inner {
	width: calc((1080 / 1366) * 100%);
	margin: auto;
}

.under-page.service .mv-area .hd-area .inner h1 {
	font-size: 40px;
	font-weight: 700;
	margin-top: 10px;
}

.under-page.service .anker_btn-area {
	margin-top: 64px;
	border-top: solid 1px rgba(255, 255, 255, 0.2);
	border-bottom: solid 1px rgba(255, 255, 255, 0.2);
}

@media (min-width:2000px) {
	.under-page.service .anker_btn-area {
		max-width: 1920px;
		margin: auto;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.service .mv-area .hd-area {
		z-index: 2;
		bottom: -56px;
		padding-top: 32px;
		clip-path: polygon(0 0, calc((255 / 375) * 100%) 0, calc((300 / 375) * 100%) 50%, calc((300 / 375) * 100%) 100%, 0 100%);
	}

	.under-page.service .mv-area .hd-area .inner h1 {
		font-size: 30px;
		margin-top: 15px;
	}

	.under-page.service .anker_btn-area {
		margin-top: 96px;
	}

}

/*======================
事業情報 about
=======================*/
.under-page.service .service-about {
	width: calc((1223/ 1366) * 100%);
	padding: 120px 0;
}

@media (min-width:2000px) {
	.under-page.service .service-about {
		max-width: 1920px;
		margin: auto;
	}
}

.under-page.service .service-about .cont-area {
	display: flex;
	gap: calc((64 / 1223) * 100%);
}

.under-page.service .service-about .cont-area figure {
	width: calc((683 / 1223) * 100%);
}

.under-page.service .service-about .cont-area .text-area {
	width: calc((477 / 1223) * 100%);
}

.under-page.service .service-about .cont-area .text-area h3 {
	font-family: 'NotoSerifJP', 'Noto Sans', 'メイリオ';
	font-size: clamp(30px, 3.51vw, 48px);
	font-weight: 700;
	color: #FFF;
	line-height: calc(56 / 48);
	margin: 72px 0 39px;
}

.under-page.service .service-about .cont-area .text-area p {
	font-size: clamp(14px, 1.17vw, 16px);
	font-weight: 700;
	color: #FFF;
	line-height: calc(30 / 16);
}

@media (min-width:1025px) {
	.under-page.service .service-about .cont-area .text-area .hd04 {
		margin: 0;
	}

	.under-page.service .service-about .cont-area .text-area .hd04 .hd-deco {
		text-align: start;
	}
}

/*tb*/
@media (max-width:1024px) {
	.under-page.service .service-about {
		width: 96%;
	}

	.under-page.service .service-about .cont-area .text-area p {
		font-size: clamp(13px, 1.17vw, 16px);
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.service .service-about {
		width: calc((351 / 375) * 100%);
		padding: 80px 0;
	}

	.under-page.service .service-about .cont-area {
		gap: 34px;
		flex-wrap: wrap;
	}

	.under-page.service .service-about .cont-area figure {
		width: 100%;
	}

	.under-page.service .service-about .cont-area .text-area {
		width: 100%;
		padding-left: calc((24 / 375) * 100%);
	}

	.under-page.service .service-about .cont-area .text-area h3 {
		line-height: calc(36 / 30);
		margin: 38px 0 20px;
	}

	.under-page.service .service-about .cont-area .text-area p {
		font-size: 14px;
		line-height: calc(26 / 14);
	}
}

/*======================
事業情報 point
=======================*/
.under-page.service .service-point {
	padding: 120px 0;
	background-color: var(--green);
}

.under-page.service .service-point .cont-area>* {
	display: grid;
	gap: 4px;
	grid-template-columns: repeat(2, 1fr);
}

.under-page.service .service-point .cont-area .cont {
	padding: 35px calc((32 / 538)* 100%);
	background-color: rgba(25, 25, 25, 0.1);
}

.under-page.service .service-point .cont-area .cont .cont-top {
	gap: calc((20 / 538)* 100%);
	margin-bottom: 30px;
}

.under-page.service .service-point .cont-area .cont .cont-top .img-area {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 140px;
	height: 140px;
	margin-left: 30px;
}

.under-page.service .service-point .cont-area .cont.point3 .cont-top .img-area {
	width: 170px;
	height: 140px;
	margin: 0;
}

.under-page.service .service-point .cont-area .cont .cont-top figure img {
	height: 140px;
	object-fit: contain;
}

.under-page.service .service-point .cont-area .cont.point3 .cont-top figure img {
	height: 97px;
}

.under-page.service .service-point .cont-area .cont .cont-top .hd-area p {
	width: fit-content;
	font-family: var(--Cabin);
	font-size: 12px;
	font-weight: 700;
	color: var(--green);
	padding: 2px 5px;
	background-color: #FFF;
}

.under-page.service .service-point .cont-area .cont .cont-top .hd-area h3 {
	font-size: clamp(22px, 2.05vw, 28px);
	font-weight: 700;
	color: #FFF;
	line-height: calc(37 / 28);
	margin-top: 23px;
}

.under-page.service .service-point .cont-area .cont .cont-top+p {
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
	line-height: calc(30 / 16);
}

/*sp*/
@media (max-width:767px) {
	.under-page.service .service-point {
		padding: 80px 0;
	}

	.under-page.service .service-point .cont-area>* {
		grid-template-columns: repeat(1, 1fr);
	}

	.under-page.service .service-point .cont-area .cont {
		padding: 30px calc((20 / 375)* 100%) 45px;
	}

	.under-page.service .service-point .cont-area .cont .cont-top {
		gap: calc((10 / 287)* 100%);
		margin-bottom: 21px;
	}

	.under-page.service .service-point .cont-area .cont .cont-top .img-area {
		width: 70px;
		height: 70px;
		margin-left: 0;
	}

	.under-page.service .service-point .cont-area .cont.point3 .cont-top .img-area {
		width: 80px;
		height: 80px;
	}

	.under-page.service .service-point .cont-area .cont .cont-top figure img {
		height: 70px;
		object-fit: contain;
	}

	.under-page.service .service-point .cont-area .cont.point3 .cont-top figure img {
		height: 48px;
	}

	.under-page.service .service-point .cont-area .cont .cont-top .hd-area h3 {
		line-height: calc(30 / 22);
		margin-top: 17px;
	}

	.under-page.service .service-point .cont-area .cont .cont-top+p {
		font-size: 14px;
		line-height: calc(26 / 14);
	}
}

/*======================
事業情報 product
=======================*/
.under-page.service section.service-product {
	padding: 120px 0;
}

.under-page.service section.service-product .cont-area .product-list>* {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 27px 24px;
}

.under-page.service section.service-product .cont-area .product-list h3 {
	font-size: 16px;
	line-height: calc(30 / 16);
	color: #FFF;
	text-align: center;
	margin-top: 6px;
}

@media (min-width:768px) {
	.under-page.service section.service-product .cont-area .product-list .cont:nth-of-type(2) {
		--delay: 0.4s;
	}

	.under-page.service section.service-product .cont-area .product-list .cont:nth-of-type(3) {
		--delay: 0.6s;
	}

	.under-page.service section.service-product .cont-area .product-list .cont:nth-of-type(4) {
		--delay: 0.8s;
	}

	.under-page.service section.service-product .cont-area .product-list .cont:nth-of-type(5) {
		--delay: 1.0s;
	}
}

.under-page.service section.service-product .cont-area .text-area {
	font-size: 16px;
	font-weight: 700;
	line-height: calc(30 / 16);
	color: #FFF;
	text-align: center;
	margin-top: 24px;
	padding: 21px 24px;
	border: solid 1px #FFF;
}

/*tb*/
@media (max-width:1024px) {
	.under-page.service section.service-product .cont-area .text-area {
		font-size: 14px;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.service section.service-product {
		padding: 80px 0;
	}

	.under-page.service section.service-product .cont-area .product-list>* {
		grid-template-columns: repeat(1, 1fr);
	}

	.under-page.service section.service-product .cont-area .text-area {
		line-height: calc(26 / 14);
		padding: 20px 18px;
		text-align: start;
	}
}

/*リード文*/
.read-text {
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
	line-height: calc(30 / 16);
	margin-bottom: 45px;
	text-align: center;
}

/*tb*/
@media (max-width:1024px) {
	.read-text {
		font-size: 14px;
	}
}

/*sp*/
@media (max-width:767px) {
	.read-text {
		line-height: calc(26 / 14);
		margin-bottom: 29px;
	}
}

/*======================
事業情報 factory
=======================*/
.under-page.service section.service-factory {
	padding: 120px 0;
	background-color: var(--green);
}

/*sp*/
@media (max-width:767px) {
	.under-page.service section.service-factory {
		padding: 80px 0;
	}

	.under-page.service section.service-factory .cont-area.w108 {
		width: 100%;
	}

	.under-page.service section.service-factory .cont-area .read-text {
		width: calc((327 / 375) * 100%);
		margin-right: auto;
		margin-left: auto;
	}

	.under-page.service section.service-factory .cont-area .access-cont .cont-area>* {
		flex-direction: column;
	}
}

/*設備情報*/
.under-page.service section.service-factory .cont-area .equipment-cont {
	color: #FFF;
	margin-top: 49px;
}

.under-page.service section.service-factory .cont-area .equipment-cont .read-text {
	text-align: start;
	margin-bottom: 70px;
}

.under-page.service section.service-factory .cont-area .equipment-cont .cont-area>* {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0 24px;
}

.under-page.service section.service-factory .cont-area .equipment-cont .cont-area :is(.cont, .cont > *) {
	display: grid;
	grid-template-rows: subgrid;
	gap: 0;
	grid-row: 2 span;
}

.under-page.service section.service-factory .cont-area .equipment-cont .cont-area p {
	font-weight: 700;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	line-height: calc(30 / 16);
	margin-top: 6px;
}

.under-page.service section.service-factory .cont-area .equipment-cont .cont-area p a {
	display: inline-block;
	padding-right: 5px;
	text-decoration: underline;
	transition: 0.3s ease-in-out;
}

.under-page.service section.service-factory .cont-area .equipment-cont .cont-area p a::after {
	content: "";
	display: inline-block;
	position: relative;
	top: 3px;
	left: 3px;
	width: 15px;
	aspect-ratio: 1 / 1;
	background: url(img/common/link-icn.webp) no-repeat bottom / 100%;
}

@media (any-hover:hover) {
	.under-page.service section.service-factory .cont-area .equipment-cont .cont-area p a:hover {
		opacity: 0.75;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.service section.service-factory .cont-area .equipment-cont {
		width: calc((327 / 375) * 100%);
		margin: 30px auto 0;
	}

	.under-page.service section.service-factory .cont-area .equipment-cont .read-text {
		width: 100%;
		margin-bottom: 15px;
	}

	.under-page.service section.service-factory .cont-area .equipment-cont .cont-area>* {
		grid-template-columns: repeat(1, 1fr);
		gap: 30px 0;
	}

	.under-page.service section.service-factory .cont-area .equipment-cont .cont-area p {
		font-size: 14px;
	}
}

/*======================
事業情報 inquiry
=======================*/
.under-page.service section.service-inquiry {
	padding: 120px 0;
}

.under-page.service section.service-inquiry .cont-area>* {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: calc((2 / 1080) * 100%);
}

.under-page.service section.service-inquiry .cont-area .cont {
	padding: 50px calc((48 / 538) * 100%);
	background-color: rgba(25, 25, 25, 0.1);
}

.under-page.service section.service-inquiry .cont-area .cont.contact {
	--color: #FFD522;
}

.under-page.service section.service-inquiry .cont-area .cont.supplier {
	--color: #22DDFF;
}

.under-page.service section.service-inquiry .cont-area .cont .mail {
	padding-bottom: 27px;
	margin-bottom: 24px;
	border-bottom: 1px solid #FFF;
}

.under-page.service section.service-inquiry .cont-area .cont .link {
	gap: 24px;
	align-items: center;
}

.under-page.service section.service-inquiry .cont-area .cont .img-area {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background-color: var(--color);
}

.under-page.service section.service-inquiry .cont-area .cont .img-area img {
	height: 24px;
	object-fit: contain;
}

.under-page.service section.service-inquiry .cont-area .cont .text-area {
	width: calc((100% - 64px));
	color: #FFF;
}

.under-page.service section.service-inquiry .cont-area .cont .text-area p {
	font-size: 16px;
	font-weight: 700;
}

.under-page.service section.service-inquiry .cont-area .cont .text-area p:not(:has(a)) {
	line-height: calc(30 / 16);
	margin-bottom: 7px;
}

.under-page.service section.service-inquiry .cont-area .cont .text-area p.sub {
	font-size: 12px;
	font-weight: 400;
	line-height: calc(20 / 12);
	margin-top: 13px;
	margin-bottom: 0;
}

.under-page.service section.service-inquiry .cont-area .cont .text-area a {
	font-family: var(--Cabin);
	font-size: 24px;
	color: var(--color)
}

.under-page.service section.service-inquiry .cont-area .cont .text-area .tel {
	display: flex;
	align-items: center;
	gap: 7px;
}

.under-page.service section.service-inquiry .cont-area .cont .text-area .tel span {
	font-family: 'NotoSansJP', 'Noto Sans', 'メイリオ';
	color: var(--color);
	font-size: 12px;
	display: block;
	font-weight: 700;
}

/*tb*/
@media (min-width:768px) and (max-width:1024px) {
	.under-page.service section.service-inquiry .cont-area .cont .text-area p br {
		display: none;
	}
}

@media (max-width:1024px) {
	.under-page.service section.service-inquiry .cont-area>* {
		grid-template-columns: repeat(1, 1fr);
		gap: 2px;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.service section.service-inquiry {
		padding: 80px 0;
	}

	.under-page.service section.service-inquiry .cont-area .cont {
		padding: 32px 20px;
	}

	.under-page.service section.service-inquiry .cont-area .cont .mail {
		padding-bottom: 17px;
		margin-bottom: 17px;
	}


	.under-page.service section.service-inquiry .cont-area .cont .link {
		flex-direction: column;
		gap: 17px;
		align-items: center;
	}

	.under-page.service section.service-inquiry .cont-area .cont .text-area {
		width: 100%;
	}

	.under-page.service section.service-inquiry .cont-area .cont .text-area p {
		font-size: 14px;
		text-align: center;
	}

	.under-page.service section.service-inquiry .cont-area .cont .text-area p:not(:has(a)) {
		line-height: calc(26 / 14);
		margin-bottom: 3px;
	}

	.under-page.service section.service-inquiry .cont-area .cont .text-area p.sub {
		text-align: start;
	}

	.under-page.service section.service-inquiry .cont-area .cont .text-area p.sub br {
		display: none;
	}

	.under-page.service section.service-inquiry .cont-area .cont .text-area .tel {
		justify-content: center;
		gap: 7px;
	}
}

/*======================
会社情報
=======================*/
.under-page.company {
	background-color: var(--navy);
}

.under-page.company .mv-area {
	position: relative;
}

.under-page.company .mv-area .hd-area {
	position: absolute;
	left: 0;
	bottom: -1px;
	color: #FFF;
	width: 100%;
	padding-top: 36px;
	background-color: var(--navy);
	clip-path: polygon(0 0, calc((517 / 1366) * 100%) 0, calc((600 / 1366) * 100%) 100%, 0 100%);
}

.under-page.company .mv-area .hd-area .inner {
	width: calc((1080 / 1366) * 100%);
	margin: auto;
}

.under-page.company .mv-area .hd-area .inner h1 {
	font-size: 40px;
	font-weight: 700;
	margin-top: 10px;
}

.under-page.company .head-message {
	padding: 64px 0;
	background-color: var(--navy);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.under-page.company .head-message p {
	width: fit-content;
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
	line-height: calc(30 / 16);
	text-align: center;
	margin: auto;
}

/*sp*/
@media (max-width:767px) {
	.under-page.company .mv-area .hd-area {
		z-index: 2;
		bottom: -56px;
		padding-top: 32px;
		clip-path: polygon(0 0, calc((255 / 375) * 100%) 0, calc((300 / 375) * 100%) 50%, calc((300 / 375) * 100%) 100%, 0 100%);
	}

	.under-page.company .mv-area .hd-area .inner h1 {
		font-size: 30px;
		margin-top: 15px;
	}

	.under-page.company .head-message {
		padding: 90px 0 45px;
	}

	.under-page.company .head-message p {
		font-size: 14px;
		line-height: calc(26 / 14);
	}
}

/*======================
会社情報 message
=======================*/
.under-page.company .company-message {
	padding: 120px 0;
	background-color: var(--green);
}

.under-page.company .company-message .cont-area {
	align-items: flex-start;
	justify-content: space-between;
}

.under-page.company .company-message .cont-area figure {
	width: calc((508 / 1080) * 100%);
}

.under-page.company .company-message .cont-area .text-area {
	width: calc((508 / 1080) * 100%);
}

.under-page.company .company-message .cont-area .text-area p {
	font-size: 18px;
	font-weight: 700;
	line-height: 2.0;
	color: #FFF;
}

.under-page.company .company-message .cont-area .text-area p.name {
	font-size: 16px;
	text-align: end;
	margin-top: 16px;
}

/*tb*/
@media (max-width:1024px) {
	.under-page.company .company-message .cont-area {
		flex-direction: column;
		gap: 25px;
	}

	.under-page.company .company-message .cont-area figure {
		width: 85%;
		margin: auto;
	}

	.under-page.company .company-message .cont-area .text-area {
		width: 100%;
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.company .company-message {
		padding: 60px 0 80px;
	}

	.under-page.company .company-message .cont-area figure {
		width: 100%;
	}

	.under-page.company .company-message .cont-area .text-area p {
		font-size: 16px;
	}

	.under-page.company .company-message .cont-area .text-area p br {
		display: none;
	}

	.under-page.company .company-message .cont-area .text-area p.name {
		font-size: 14px;
	}
}

/*======================
会社情報 info
=======================*/
.under-page.company .company-info {
	margin-top: 120px;
}

.under-page.company .company-info .info-table>* {
	display: grid;
	grid-template-columns: auto 1fr;
}

.under-page.company .company-info .info-table :is(.th, .td) {
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
	line-height: calc(30 / 16);
	margin-top: 4px;
	padding-top: 28px;
	padding-bottom: 28px;
	background-color: rgba(25, 25, 25, 0.1);
}

.under-page.company .company-info .info-table .th {
	white-space: nowrap;
	padding-left: 32px;
}

.under-page.company .company-info .info-table .td {
	padding-left: 104px;
	padding-right: 32px;
}

/*sp*/
@media (max-width:767px) {
	.under-page.company .company-info {
		margin-top: 80px;
	}

	.under-page.company .company-info .info-table :is(.th, .td) {
		font-size: 14px;
		line-height: calc(30 / 14);
		margin-top: 2px;
		padding-top: 22px;
		padding-bottom: 22px;
	}

	.under-page.company .company-info .info-table .th {
		white-space: nowrap;
		padding-left: 24px;
	}

	.under-page.company .company-info .info-table .td {
		padding-left: 30px;
		padding-right: 24px;
	}
}

/*======================
会社情報 access
=======================*/
.under-page.company .company-access {
	margin-top: 120px;
}

.under-page.company .company-access .cont-area+.cont-area {
	margin-top: 32px;
}


/*sp*/
@media (max-width:767px) {
	.under-page.company .company-access {
		width: 100%;
		margin-top: 80px;
	}
}

/*======================
沿革
=======================*/
.under-page.company .company-history {
	margin-top: 120px;
}

.under-page.company .company-history .history-table>* {
	display: grid;
	align-items: center;
	grid-template-columns: auto 1fr;
}

.under-page.company .company-history .history-table :is(.th, .td) {
	font-size: 16px;
	font-weight: 700;
	margin-top: 4px;
}

.under-page.company .company-history .history-table .th {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	color: #FFF;
	white-space: nowrap;
	padding-right: 58px;
}

.under-page.company .company-history .history-table .th::before {
	content: "";
	position: relative;
	left: 3px;
	display: block;
	transform: rotate(45deg);
	width: 14px;
	height: 14px;
	border: solid 5px var(--white);
	margin-right: 22px;
}

.under-page.company .company-history .history-table .th::after {
	position: absolute;
	right: 0;
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	background-color: var(--white);
}

@media (min-width:768px) {
	.under-page.company .company-history .history-table .th.v-start {
		align-items: flex-start;
	}

	.under-page.company .company-history .history-table .th.v-start::before {
		top: 4px
	}

	.under-page.company .company-history .history-table .th.v-start::after {
		top: 11px;
	}
}

.under-page.company .company-history .history-table .td {
	padding: 33px;
	margin-left: 20px;
	background-color: var(--white);
}

.under-page.company .company-history .history-table .flex-td {
	font-size: 16px;
	font-weight: 700;
	padding: 33px;
	margin-left: 20px;
	margin-top: 4px;
	background-color: var(--white);
}

.under-page.company .company-history .history-table .flex-td>* {
	display: flex;
	justify-content: space-between;
}

.under-page.company .company-history .history-table .flex-td p {
	width: calc(100% - 240px - 45px);
}

.under-page.company .company-history .history-table .flex-td figure {
	max-width: 240px;
}

.under-page.company .company-history .history-table .flex-td figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*sp*/
@media (max-width:767px) {
	.under-page.company .company-history {
		margin-top: 80px;
	}

	.under-page.company .company-history .history-table>* {
		display: block;
	}

	.under-page.company .company-history .history-table :is(.th, .td) {
		font-size: 14px;
	}

	.under-page.company .company-history .history-table .th {
		padding-right: 0;
		margin-top: 17px;
	}

	.under-page.company .company-history .history-table .th::after {
		content: none;
	}

	.under-page.company .company-history .history-table .td {
		padding: 25px;
		margin-left: 36px;
		margin-top: 8px;
	}

	.under-page.company .company-history .history-table .flex-td {
		font-size: 14px;
		padding: 25px;
		margin-left: 36px;
		margin-top: 8px;
	}

	.under-page.company .company-history .history-table .flex-td>* {
		display: block
	}

	.under-page.company .company-history .history-table .flex-td p {
		width: 100%;
	}

	.under-page.company .company-history .history-table .flex-td figure {
		width: 100%;
		max-width: initial;
		margin-top: 16px;
	}
}

/*======================
company clients
=======================*/
.under-page.company .company-clients {
	margin-top: 120px;
}

.under-page.company .company-clients ul.clients-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	opacity: 1.0;
}

.under-page.company .company-clients ul.clients-list li {
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
	padding: 16px;
	background-color: rgba(25, 25, 25, 0.1);
	opacity: 0;
	translate: 0 10px;
}

.under-page.company .company-clients ul.clients-list.active li {
	animation: common-animation var(--duration) var(--delay) ease-in-out forwards;
}

/*tb*/
@media (max-width:1024px) {
	.under-page.company .company-clients ul.clients-list {
		grid-template-columns: repeat(2, 1fr);
	}
}

/*sp*/
@media (max-width:767px) {
	.under-page.company .company-clients {
		margin-top: 80px;
	}

	.under-page.company .company-clients ul.clients-list {
		grid-template-columns: repeat(1, 1fr);
		gap: 4px;
	}

	.under-page.company .company-clients ul.clients-list li {
		font-size: 14px;
		padding: 16px;
	}

}

/*======================
company clients
=======================*/
.under-page.company .company-chart {
	padding: 120px 0;
}

.under-page.company .company-chart figure img {
	width: 100%;
}

/*sp*/
@media (max-width:767px) {
	.under-page.company .company-chart {
		padding: 80px 0;
	}
}

/*======================
entry
=======================*/
.entry .breadcrumbs ul {
	flex-wrap: wrap;
	padding-top: 30px;
}

/*sp*/
@media (max-width:767px) {
	.entry .breadcrumbs ul {
		padding-top: 17px;
	}
}

/*ステータス*/
section.entry-form .status-area {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	gap: 64px;
	width: fit-content;
	margin: 0 auto;
}

section.entry-form .status-area::after {
	content: "";
	position: absolute;
	top: 15px;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #FFF;
}

section.entry-form .status-area .status-cont span {
	position: relative;
	z-index: 2;
	display: block;
	width: 32px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background-color: #FFF;
}

section.entry-form .status-area .status-cont.current span {
	background-color: var(--blue);
	border: solid 11px #FFF;
}

section.entry-form .status-area .status-cont.completion span {
	background: url(img/common/check-w.webp) var(--blue) no-repeat 50% calc(50% + 1px) / 11px;
	border: solid 6px #FFF;
}

section.entry-form .status-area .status-cont p {
	font-size: 12px;
	font-weight: 700;
	color: #B2B2B2;
	text-align: center;
	margin-top: 7px;
}

section.entry-form .status-area .status-cont.current p {
	color: var(--black);
}

section.entry-form .status-area .status-cont.completion p {
	color: var(--blue);
}

/*form*/
section.entry-form .cont-wrapper {
	--placeholder-color: #B2B2B2;
	width: 100%;
	max-width: 840px;
	margin: 40px auto 160px;
	padding: 64px calc((64 / 1366) * 100%);
	background-color: #FFFF;
}

section.entry-form .cont-wrapper .form-cont_area .cont {
	display: flex;
	gap: 16px;
}

section.entry-form .cont-wrapper .form-cont_area .cont+.cont {
	margin-top: 24px;
}

section.entry-form .cont-wrapper .form-cont_area .cont h2 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: calc((176 / 712) * 100%);
	font-size: 16px;
}

section.entry-form .cont-wrapper .form-cont_area .cont h2 span {
	font-size: 14px;
	font-weight: 700;
	color: #FFF;
	padding: 0 5px;
	background-color: #797979;
}

section.entry-form .cont-wrapper .form-cont_area .cont h2 span.required {
	background-color: #F21D1D;
}

section.entry-form .cont-wrapper .form-cont_area .cont p {
	position: relative;
}

section.entry-form .cont-wrapper .form-cont_area .cont>:is(p, .free-wrapper) {
	position: relative;
	width: calc((100% - ((176 / 712) * 100%)) - 16px);
}

section.entry-form .cont-wrapper .form-cont_area .cont>:is(p, .free-wrapper) .error {
	position: absolute;
}

section.entry-form .cont-wrapper .form-cont_area .cont :is(select, input, textarea) {
	width: 100%;
	padding: 12.5px 15px;
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, 0.15);
}

section.entry-form .cont-wrapper .form-cont_area .cont select {
	position: relative;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

section.entry-form .cont-wrapper .form-cont_area .cont p:has(select)::after {
	content: "";
	position: absolute;
	transform: translateY(-50%) rotate(90deg);
	top: 50%;
	right: 10px;
	width: 30px;
	height: 30px;
	border-radius: 3px;
	background: url(img/common/arrow-w.webp) var(--blue) no-repeat center / 6px;
	pointer-events: none;
}

section.entry-form .cont-wrapper .form-cont_area .cont select option {
	color: #191919;
}

section.entry-form .cont-wrapper .form-cont_area textarea {
	resize: none;
	overflow: auto;
}

section.entry-form .cont-wrapper .form-cont_area .free-wrapper {
	position: relative;
}

section.entry-form .cont-wrapper .form-cont_area .free-wrapper .annotation {
	display: flex;
	position: absolute;
	bottom: -18px;
	font-size: 12px;
	font-weight: 400;
}

section.entry-form .cont-wrapper .form-cont_area .free-wrapper .annotation::before {
	content: "※";
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	width: fit-content;
	height: 60px;
	font-family: var(--NotoSansJP);
	font-size: 15px;
	font-weight: 700;
	color: var(--white);
	margin-top: 70px;
	margin-left: calc(((176 / 712) * 100%) + 16px);
	border-radius: 0;
	overflow: hidden;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area :is(.submit-cont, .back-cont) {
	position: relative;
	width: 320px;
	height: 100%;
	transition: 0.3s ease-in-out;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area div:empty {
	display: none;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area .submit-cont {
	background-color: #007BE5;
	clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area .back-cont {
	background-color: #797979;
	clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area .submit-cont::before {
	content: "";
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	right: 50px;
	z-index: 4;
	width: 6px;
	aspect-ratio: 6 / 9;
	background: url("img/common/arrow-w.webp") no-repeat center / 100%;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area .back-cont::before {
	content: "";
	position: absolute;
	transform: translateY(-50%) rotate(180deg);
	top: 50%;
	left: 50px;
	z-index: 4;
	width: 6px;
	aspect-ratio: 6 / 9;
	background: url("img/common/arrow-w.webp") no-repeat center / 100%;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area .submit-cont::after {
	content: "";
	position: absolute;
	z-index: 3;
	top: 0;
	right: 0;
	width: 105px;
	height: 100%;
	background-image: linear-gradient(90deg, #000000 0%, #00000000 100%);
	opacity: 0.1;
	clip-path: polygon(calc((45 / 105) * 100%) 0, 100% 0, calc(100% - ((45 / 105) * 100%)) 100%, 0 100%);
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area .back-cont::after {
	content: "";
	position: absolute;
	z-index: 3;
	top: 0;
	left: 0;
	width: 105px;
	height: 100%;
	background-image: linear-gradient(to left, #000000 0%, #00000000 100%);
	opacity: 0.1;
	clip-path: polygon(calc((45 / 105) * 100%) 0, 100% 0, calc(100% - ((45 / 105) * 100%)) 100%, 0 100%);
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area input {
	width: 100%;
	height: 100%;
	text-align: start;
	border: 0;
	background-color: transparent;
	cursor: pointer;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area input.submit-btn {
	padding-left: 68px;
}

section.entry-form .cont-wrapper .form-cont_area+.btn-area input.back-btn {
	text-align: end;
	padding-right: 68px;
}

@media (any-hover:hover) {
	section.entry-form .cont-wrapper .form-cont_area+.btn-area :is(.submit-cont, .back-cont):hover {
		opacity: 0.75;
	}
}

/*プレースホルダ*/
section.entry-form .cont-wrapper .form-cont_area .cont select.is-placeholder {
	color: var(--placeholder-color);
}

section.entry-form .cont-wrapper .form-cont_area .cont input::placeholder,
section.entry-form .cont-wrapper .form-cont_area .cont textarea::placeholder {
	color: var(--placeholder-color);
}

section.entry-form .cont-wrapper .form-cont_area .cont input::-webkit-input-placeholder,
section.entry-form .cont-wrapper .form-cont_area .cont textarea::-webkit-input-placeholder {
	color: var(--placeholder-color);
}

section.entry-form .cont-wrapper .form-cont_area .cont input::-moz-placeholder,
section.entry-form .cont-wrapper .form-cont_area .cont textarea::-moz-placeholder {
	color: var(--placeholder-color);
}

section.entry-form .cont-wrapper .form-cont_area .cont input:-ms-input-placeholder,
section.entry-form .cont-wrapper .form-cont_area .cont textarea:-ms-input-placeholder {
	color: var(--placeholder-color);
}

/*確認画面*/
section.entry-form.form-confirmation .cont-wrapper .form-cont_area .cont+.cont {
	padding-top: 24px;
	margin-top: 24px;
	border-top: 1px solid rgba(0, 0, 0, 0.15);
}

section.entry-form.form-confirmation .cont-wrapper .form-cont_area .cont h2 span {
	display: none;
}

section.entry-form.form-confirmation .cont-wrapper .form-cont_area .cont>:is(p, .free-wrapper) {
	font-weight: 700;
	word-break: break-all;
}

section.entry-form.form-confirmation .cont-wrapper .form-cont_area .cont p.annotation {
	display: none;
}

section.entry-form.form-confirmation .cont-wrapper .form-cont_area+.btn-area {
	justify-content: center;
	gap: 16px;
	width: 100%;
	margin-top: 49px;
	margin-left: 0;
}

/*サンクスページ*/
section.entry-form.form-thanks .cont-wrapper {
	padding: 37px calc((64 / 1366) * 100%) 94px;
}

section.entry-form.form-thanks .cont-wrapper h2 {
	font-size: 32px;
	text-align: center;
	margin-bottom: 30px;
}

section.entry-form.form-thanks .cont-wrapper p {
	font-size: 16px;
	font-weight: 700;
	line-height: calc(30 / 16);
}

section.entry-form.form-thanks .cont-wrapper .btn01 {
	width: 320px;
	margin: 45px auto 0;
}

/*tb*/
@media (max-width:1024px) {
	section.entry-form .cont-wrapper {
		width: 96%;
	}
}

/*sp*/
@media (max-width:767px) {
	section.entry-form .cont-wrapper {
		width: 100%;
		margin: 25px auto 80px;
		padding: 20px calc((20 / 375) * 100%) 30px;
	}

	section.entry-form .cont-wrapper .form-cont_area .cont {
		flex-wrap: wrap;
		gap: 0;
	}

	section.entry-form .cont-wrapper .form-cont_area .cont+.cont {
		margin-top: 27px;
	}

	section.entry-form .cont-wrapper .form-cont_area .cont h2 {
		width: 100%;
		font-size: 14px;
	}

	section.entry-form .cont-wrapper .form-cont_area .cont>:is(p, .free-wrapper) {
		width: 100%;
		font-size: 14px;
	}

	section.entry-form .cont-wrapper .form-cont_area .cont p:has(select)::after {
		top: calc(50% + 4.5px);
	}

	section.entry-form .cont-wrapper .form-cont_area .cont :is(select, input, textarea) {
		padding: 10px;
		margin-top: 9px;
	}

	section.entry-form .cont-wrapper .form-cont_area .free-wrapper .annotation {
		position: static;
		margin-top: -1px;
	}

	section.entry-form .cont-wrapper .form-cont_area+.btn-area {
		flex-wrap: wrap;
		gap: 16px;
		width: 100%;
		height: auto;
		margin-top: 32px;
		margin-left: 0;
	}

	section.entry-form .cont-wrapper .form-cont_area+.btn-area :is(.submit-cont, .back-cont) {
		width: 100%;
		height: 60px;
	}

	section.entry-form .cont-wrapper .form-cont_area+.btn-area input.submit-btn {
		padding-left: 30px;
	}

	section.entry-form .cont-wrapper .form-cont_area+.btn-area input.back-btn {
		padding-right: 30px;
	}

	/*確認画面*/
	section.entry-form.form-confirmation .cont-wrapper .form-cont_area .cont+.cont {
		padding-top: 17px;
		margin-top: 17px;
	}

	section.entry-form.form-confirmation .cont-wrapper .form-cont_area .cont>:is(p, .free-wrapper) {
		margin-top: 9px;
	}

	section.entry-form.form-confirmation .cont-wrapper .form-cont_area+.btn-area {
		flex-direction: column-reverse;
	}

	/*サンクスページ*/
	section.entry-form.form-thanks .cont-wrapper {
		padding-top: 34px;
		padding-bottom: 32px;
	}

	section.entry-form.form-thanks .cont-wrapper h2 {
		font-size: 24px;
		margin-bottom: 15px;
	}

	section.entry-form.form-thanks .cont-wrapper p {
		font-size: 14px;
		line-height: calc(26 / 14);
	}

	section.entry-form.form-thanks .cont-wrapper .btn01 {
		width: 100%;
		padding-left: 30px;
		margin: 60px auto 0;
	}

}

/*======================
*
archive
*
=======================*/
#archive .mv-area {
	display: flex;
	align-items: flex-end;
	gap: 30px;
	justify-content: space-between;
	width: calc(100% - ((143 / 1366) * 100%));
	margin-left: auto;
}

@media (min-width:2000px) {
	#archive .mv-area {
		max-width: 1920px;
		margin: auto;
	}
}

#archive .mv-area .hd-area {
	margin-bottom: calc((55 / 1223) * 100%);
}

#archive .mv-area .hd-area h1 {
	font-size: 40px;
	margin-top: 13px;
}

#archive .mv-area .img-area {
	position: relative;
	width: calc((900 / 1223) * 100%);
}

#archive .mv-area .img-area::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: calc((150 / 900) * 100%);
	height: 100%;
	background-image: linear-gradient(to right, #F1F8FA 0%, transparent 100%);
}

#archive .post_list {
	margin-top: 60px;
}

#archive .post_list li {
	width: 100%;
	border-bottom: 1px solid #D8DFE1;
}

#archive .post_list li a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding-bottom: 38px;
	transition: 0.3s ease-in-out;
}

#archive .post_list li+li a {
	padding-top: 38px;
}

@media (any-hover:hover) {
	#archive .post_list li a:hover {
		opacity: 0.75;
	}
}

#archive .post_list li a::after {
	content: "";
	display: block;
	transform: rotate(-90deg);
	min-width: 48px;
	aspect-ratio: 1 / 1;
	background: url(img/common/arrow-blue.webp) no-repeat center / 9px;
	border-radius: 50%;
	border: solid 1px #D8DFE1;
}

#archive .post_list li .text-area {
	width: 100%;
}

#archive .post_list li h2 {
	display: -webkit-box;
	font-size: 18px;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	width: calc(100% - 60px);
	margin-top: 14px;
}

#archive .post_list li time {
	font-family: var(--Cabin);
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 14px;
}

/*ページネーション*/
#archive .pagination {
	margin-top: 64px;
	margin-bottom: 160px;
}

#archive .pagination ul.page-numbers {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;    
}

#archive .pagination > ul.page-numbers {
	width: calc((1080 / 1366) * 100%);
	margin: auto;
}

@media (min-width:2000px) {
	#archive .pagination > ul.page-numbers {
		max-width: 1920px;
	}
}

/*tb*/
@media (max-width:1024px) {
	#archive .pagination > ul.page-numbers {
		width: 96%;
	}
}

/*sp*/
@media (max-width:767px) {
	#archive .pagination > ul.page-numbers {
		width: calc((327 / 375) * 100%);
	}
}

#archive .pagination ul.page-numbers ul{
	justify-content: flex-start;
	max-width: calc(100% - 16px - 200px);
}

#archive .pagination ul.page-numbers ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	aspect-ratio: 1 / 1;
	font-size: 15px;
	font-weight: 700;
	color: #FFF;
	background-color: var(--blue2);
}

#archive .pagination ul.page-numbers ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

#archive .pagination ul li:is(.next, .prev) {
	position: relative;
	width: 64px;
	height: 42px;
	font-size: 15px;
	font-weight: 700;
	color: #FFF;
	background-color: var(--blue2);
}

#archive .pagination ul li.prev {
	margin-right: 16px;
}

#archive .pagination ul li.next {
	margin-left: 16px;
}

#archive .pagination ul li:is(.next, .prev)::after {
	content: "";
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	width: 6px;
	height: 9px;
	margin-top: 1px;
	background: url(img/common/arrow-w.webp) no-repeat center / 100%;
	pointer-events: none;
}

#archive .pagination ul li.prev::after {
	left: 10px;
	rotate: 180deg;
	transform-origin: top;
}

#archive .pagination ul li.next::after {
	right: 10px;
}

#archive .pagination ul li:is(.next, .prev) a {
	display: flex;
	align-items: center;
	height: 100%;
}

#archive .pagination ul li.prev:not(:has(span)) a {
	padding-left: 26px;
}

#archive .pagination ul li.next:not(:has(span)) a {
	padding-left: 10px;
}

#archive .pagination ul li:is(.next, .prev) span {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #D8DFE1;
}


#archive .pagination ul li.prev span {
	padding-left: 26px;
}

#archive .pagination ul li.next span {
	padding-left: 10px;
}

/*tb*/
@media (max-width:1024px) {
	#archive .mv-area {
		flex-direction: column-reverse;
		align-items: flex-start;
		gap: 0;
		width: 100%;
		margin-left: initial;
	}

	#archive .mv-area .hd-area {
		margin: 17px 0 0 2%;
	}

	#archive .mv-area .img-area {
		width: 100%;
	}

	#archive .post_list li h2 {
		font-size: 14px;
	}
}


/*sp*/
@media (max-width:767px) {
	#archive .mv-area .hd-area {
		margin-left: calc((100% - ((327 / 375) * 100%)) / 2);
	}

	#archive .mv-area .hd-area h1 {
		font-size: 30px;
		margin-top: 15px;
	}

	#archive .post_list {
		margin-top: 30px;
	}

	#archive .post_list li a {
		padding-bottom: 27px;
	}

	#archive .post_list li+li a {
		padding-bottom: 27px;
	}

	#archive .post_list li h2 {
		width: calc(100% - 40px);
		margin-top: 10px;
	}

	/*ページネーション*/
	#archive .pagination {
		margin-top: 48px;
		margin-bottom: 80px;
	}

	#archive .pagination ul.page-numbers {
		gap: 4px;
	}

	#archive .pagination ul.page-numbers ul{
		max-width: calc(100% - 8px - 160px);
	}

	#archive .pagination ul.page-numbers ul li {
		width: 36px;
	}

	#archive .pagination ul li:is(.next, .prev) {
		height: 38px;
	}

	#archive .pagination ul li.prev {
		margin-right: 16px;
	}

	#archive .pagination ul li.next {
		margin-left: 16px;
	}

	#archive .pagination ul li.prev:not(:has(span)) a {
		padding-left: 24px;
	}

	#archive .pagination ul li.next:not(:has(span)) a {
		padding-left: 12px;
	}

	#archive .pagination ul li.prev span {
		padding-left: 24px;
	}

	#archive .pagination ul li.next span {
		padding-left: 12px;
	}
}

/*======================
*
single
*
=======================*/
.single .breadcrumbs ul {
	flex-wrap: wrap;
	padding-top: 30px;
}

#single .cont-wrapper {
	max-width: 800px;
	margin: 70px auto 160px;
}

#single .cont-wrapper .info-area time {
	font-family: var(--Cabin);
	font-size: 15px;
	font-weight: 700;
}

#single .cont-wrapper .info-area h1 {
	font-size: 40px;
	margin: 15px auto 37px;
}

#single .cont-wrapper .info-area h2 {
	font-size: 30px;
	margin-top: 40px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--blue);
}

#single .cont-wrapper .info-area h3 {
	font-size: 18px;
	margin-top: 25px;
	margin-bottom: 10px;
	padding-left: 5px;
	border-left: 6px solid var(--blue);
}

#single .cont-wrapper .single-cont p {
	font-weight: 16px;
	font-weight: 700;
	line-height: calc(30 / 16);
}

#single .cont-wrapper .single-cont p+p {
	margin-top: 25px;
}

#single .cont-wrapper .btn01 {
	width: 320px;
	padding-left: 65px;
	margin: 60px auto 0;
}

/*tb*/
@media (max-width:1024px) {
	#single .cont-wrapper {
		width: calc((1080 / 1366) * 100%);
		max-width: initial;
	}
}

/*sp*/
@media (max-width:767px) {
	.single .breadcrumbs ul {
		padding-top: 17px;
	}

	#single .cont-wrapper {
		width: calc((327 / 375) * 100%);
		margin: 30px auto 80px;
	}

	#single .cont-wrapper .info-area time {
		font-size: 12px;
	}

	#single .cont-wrapper .info-area h1 {
		font-size: 30px;
		line-height: calc(44 / 30);
		margin: 7px auto 23px;
	}

	#single .cont-wrapper .info-area h2 {
		font-size: 20px;
		margin-top: 30px;
	}

	#single .cont-wrapper .info-area h3 {
		font-size: 16px;
	}

	#single .cont-wrapper .single-cont p {
		font-weight: 14px;
		line-height: calc(26 / 14);
	}

	#single .cont-wrapper .single-cont p+p {
		margin-top: 20px;
	}

	#single .cont-wrapper .btn01 {
		width: calc((287 / 327) * 100%);
		padding-left: 32px;
		margin: 75px auto 0;
	}

}

/*======================
breadcrumbs
=======================*/
.breadcrumbs ul li {
	font-size: 14px;
	font-family: var(--NotoSansJP);
}

.recruit .breadcrumbs ul li {
	position: relative;
	font-weight: 900;
	color: #FFF;
	padding: 0 16px 0 0;
}

.recruit .breadcrumbs ul li:not(:first-of-type) {
	margin-left: 16px;
}

.recruit .breadcrumbs ul li:not(:last-of-type)::after {
	content: "";
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	right: 0;
	width: 1px;
	height: 20px;
	background-color: #FFF;
}

/*sp*/
@media (max-width:767px) {
	.recruit .breadcrumbs ul {
		justify-content: center;
	}
}

:is(.company, .service) .breadcrumbs ul {
	gap: 10px;
}

:is(.company, .service) .breadcrumbs ul li {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
}

:is(.company, .service) .breadcrumbs ul li a {
	font-weight: 700;
	border-bottom: 1px solid #FFF;
}

:is(.company, .service) .breadcrumbs ul li:not(:last-of-type)::after {
	content: "";
	display: block;
	width: 12px;
	height: 1px;
	background-color: #FFF;
}

.under-breadcrumbs ul {
	display: flex;
	align-items: center;
	gap: 5px 32px;
}

.under-breadcrumbs ul li {
	font-size: 12px;
	color: #797979;
}

.under-breadcrumbs ul li a {
	position: relative;
	font-weight: 700;
	color: var(--blue2);
}

.under-breadcrumbs ul li a::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 1px;
	width: 100%;
	height: 2px;
	background-color: var(--blue2);
}

.under-breadcrumbs ul li a::after {
	content: "";
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	right: -22px;
	width: 12px;
	height: 1px;
	background-color: #797979;
}

/*sp*/
@media (max-width:767px) {
	.under-breadcrumbs ul li a::before {
		height: 1px;
	}
}

/*======================
*
404
*
=======================*/
#page.page-404 {
	display: flex;
	height: 65vh;
	background-color: var(--navy);
}

#page.page-404 .cont-area {
	width: calc((1100 / 1366) * 100%);
	max-width: 1366px;
	padding: 80px 0;
	margin: auto;
	text-align: center;
	color: #FFF;
	border: 2px solid var(--border-color2);
	border-radius: 2px;
}

#page.page-404 .cont-area .hd-area {
	position: relative;
}

#page.page-404 .cont-area .hd-area h1 {
	margin-bottom: 30px;
}

#page.page-404 .cont-area .hd-area span {
	position: absolute;
	top: -17px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	font-family: var(--Cabin);
	font-size: 40px;
	line-height: 1.0;
	opacity: 0.25;
}

#page.page-404 .cont-area p {
	font-size: 18px;
	line-height: 2.0;
}

#page.page-404 .cont-area .btn01 {
	margin: 30px auto 0;
}

/*sp*/
@media (max-width:767px) {
	#page.page-404 .cont-area {
		width: 96%;
	}

	#page.page-404 .cont-area .hd-area h1 {
		font-size: 26px;
	}

	#page.page-404 .cont-area .hd-area span {
		font-size: 35px;
	}

	#page.page-404 .cont-area p {
		font-size: 14px;
	}
}

/*======================
*
footer
*
=======================*/
footer {
	padding: 100px 0;
	background-color: var(--navy);
}

footer .footer-cont {
	display: flex;
	justify-content: space-between;
	align-items: start;
	width: calc((1238 / 1366) * 100%);
	margin: auto;
}

@media (min-width:2000px) {
	footer .footer-cont {
		max-width: 1920px;
	}
}

footer .footer-cont .left {
	width: calc((600 / 1238) * 100%);
}

footer .footer-cont .left .footer-contact-hd {
	display: flex;
	align-items: start;
	justify-content: space-between;
	margin-bottom: 32px;
	border-bottom: solid 1px var(--border-color);
}

footer .footer-cont .left .footer-contact-hd p {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--NotoSansJP);
	font-size: 15px;
	font-weight: 700;
	color: var(--white);
}

footer .footer-cont .left .footer-contact-hd p span {
	display: block;
	width: 4px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background-color: var(--white);
}

footer .footer-cont .left .footer-contact-hd>img {
	width: calc((216 / 600) * 100%);
	padding-top: 13px;
}

footer .footer-cont .left .footer-contact-link {
	display: flex;
	justify-content: space-between;
	width: 100%;
	font-family: var(--NotoSansJP);
}

footer .footer-cont .left .footer-contact-link a {
	width: calc((290 / 600) * 100%);
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	footer .footer-cont .left .footer-contact-link a:hover {
		opacity: 0.75;
	}
}

footer .footer-cont .left .footer-contact-link a .top {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
}

footer .footer-cont .left .footer-contact-link a .top img:first-of-type {
	width: 21.5px;
}

footer .footer-cont .left .footer-contact-link a .top span.tel-no {
	font-family: var(--Cabin);
	font-weight: 700;
	font-size: clamp(20px, 2.93vw, 40px);
	color: #FFF;
}

footer .footer-cont .left .footer-contact-link a .bottom {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: -2px;
}

footer .footer-cont .left .footer-contact-link a .bottom span {
	display: block;
	font-size: clamp(10px, 1.1vw, 15px);
	font-weight: 400;
	color: var(--white);
}

footer .footer-cont .left .footer-contact-link a .bottom span:first-of-type {
	padding: 1px 8px;
	color: var(--navy);
	border-radius: 2px;
	background-color: var(--white);
}

footer .footer-cont .left .footer-contact-link a .bottom span.time {
	font-family: var(--Cabin);
	line-height: 1.0;
	margin: 2px 3px 0 6px;
}

footer .footer-cont .left .footer-contact-link a.mail {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 50%;
	height: auto;
	color: var(--black);
	padding: 0 24px;
	border-radius: 4px;
	background-color: var(--yellow);
}

footer .footer-cont .left .footer-contact-link a.mail span {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: clamp(11px, 1.17vw, 16px);
	font-weight: 700;
}

footer .footer-cont .left .footer-contact-link a.mail span img {
	max-width: 24px;
}

footer .footer-cont .left .footer-contact-link a.mail>img {
	max-width: 9px;
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	footer .footer-cont .left .footer-contact-link a.mail:hover>img {
		translate: 5px 0;
	}
}

footer .footer-cont .right {
	font-family: var(--NotoSansJP);
	width: calc((415 /1238) * 100%);
}

footer .footer-cont .right .logo-info {
	width: calc((267 /415) * 100%);
}

footer .footer-cont .right .logo-info img {
	width: calc((224 /267) * 100%);
	max-width: 224px;
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	footer .footer-cont .right .logo-info img:hover {
		opacity: 0.75;
	}
}

footer .footer-cont .right .logo-info p {
	font-size: clamp(10px, 1.1vw, 15px);
	font-weight: 400;
	color: var(--white);
	margin-top: 17px;
	margin-bottom: 52px;
}

footer .footer-cont .right nav {
	width: 100%;
}

footer .footer-cont .right nav ul {
	display: flex;
	justify-content: space-between;
}

footer .footer-cont .right nav ul li {
	font-size: 15px;
	font-weight: 700;
	color: var(--white);
	transition: 0.3s ease-in-out;
}

@media (any-hover:hover) {
	footer .footer-cont .right nav ul li:hover {
		opacity: 0.75;
	}
}

footer .footer-cont .right nav ul li span {
	display: block;
	font-family: var(--Cabin);
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 4px;
	line-height: 1.0;
}

footer .footer-cont .right .copyright {
	width: 254px;
	margin: 50px 0 0 auto;
}

/*pc*/
@media (max-width:1366px) {
	footer .footer-cont .left {
		width: 55%;
	}

	footer .footer-cont .right {
		width: 40%;
	}
}

/*tb*/
@media screen and (min-width:768px) and (max-width:1024px) {
	footer .footer-cont {
		display: block;
		width: 98%;
	}

	footer .footer-cont .left {
		display: flex;
		justify-content: space-between;
		width: 90%;
		margin: auto;
	}

	footer .footer-cont .left .footer-contact-hd {
		width: 50%;
		margin: 0;
	}

	footer .footer-cont .left .footer-contact-link {
		justify-content: center;
		flex-direction: column;
		gap: 25px;
		width: fit-content;
		margin: 0;
	}

	footer .footer-cont .left .footer-contact-link a {
		width: fit-content;
	}

	footer .footer-cont .left .footer-contact-link a.mail {
		width: 250px;
		height: 55px;
	}

	footer .footer-cont .right {
		display: flex;
		flex-wrap: wrap;
		width: 85%;
		margin: 60px auto 0;
	}

	footer .footer-cont .right .logo-info {
		max-width: 267px;
		order: 2;
		margin: 46px auto 0;
	}

	footer .footer-cont .right .logo-info img {
		margin: auto;
	}

	footer .footer-cont .right .logo-info p {
		margin: 17px auto 20px;
		text-align: center;
	}

	footer .footer-cont .right .copyright {
		order: 3;
		width: 100%;
		margin: 0;
	}

	footer .footer-cont .right .copyright img {
		margin: auto;
	}
}


/*sp*/
@media (max-width:767px) {
	footer {
		padding: 65px 0;
	}

	footer .footer-cont {
		display: block;
		width: calc((327 / 375) * 100%);
	}

	footer .footer-cont .left {
		width: 100%;
	}

	footer .footer-cont .left .footer-contact-hd {
		position: relative;
		z-index: 1;
		display: flex;
		align-items: start;
		justify-content: space-between;
		margin-bottom: 29px;
		padding-bottom: 24px;
		border-bottom: solid 1px var(--border-color);
	}

	footer .footer-cont .left .footer-contact-hd>img {
		position: absolute;
		z-index: -1;
		right: 0;
		bottom: 0;
		width: calc((271 / 327) * 100%);
		padding: 0;
	}

	footer .footer-cont .left .footer-contact-link {
		display: block;
	}

	footer .footer-cont .left .footer-contact-link a {
		width: 100%
	}

	footer .footer-cont .left .footer-contact-link a .top span.tel-no {
		font-size: 40px;
	}

	footer .footer-cont .left .footer-contact-link a .bottom {
		margin-top: 4px;
	}

	footer .footer-cont .left .footer-contact-link a .bottom span {
		font-size: 15px;
	}

	footer .footer-cont .left .footer-contact-link a.mail {
		position: relative;
		justify-content: flex-start;
		width: 100%;
		padding: 28px 24px 28px 54px;
		margin-top: 37px;
	}

	footer .footer-cont .left .footer-contact-link a.mail span {
		font-size: 16px;
		font-weight: 700;
	}

	footer .footer-cont .left .footer-contact-link a.mail>img {
		position: absolute;
		top: 50%;
		right: 24px;
		transform: translateY(-50%);
		max-width: 9px;
	}

	footer .footer-cont .right {
		display: block;
		width: 100%;
		margin-top: 64px;
	}

	footer .footer-cont .right .logo-info {
		width: 100%;
		margin: 0;
	}

	footer .footer-cont .right .logo-info img {
		width: 169px;
		margin: 0;
		transition: 0.3s ease-in-out;
	}

	footer .footer-cont .right .logo-info p {
		font-size: 12px;
		margin-bottom: 44px;
		text-align: start;
	}

	footer .footer-cont .right nav {
		width: 100%;
	}

	footer .footer-cont .right nav ul {
		display: block;
	}

	footer .footer-cont .right nav ul li+li {
		margin-top: 20px;
	}

	footer .footer-cont .right nav ul li a {
		display: flex;
		align-items: center;
		gap: 8px;
	}

	footer .footer-cont .right nav ul li span {
		margin-bottom: 0;
	}

	footer .footer-cont .right .copyright {
		margin: 45px 0 0 0;
	}
}