@charset 'UTF-8';

/*----------------------------------------

	- kv
	- news
	- product / strength
	- recruit / company / sustainability
	- contact

-----------------------------------------*/

/*----------------------------------------
	kv
-----------------------------------------*/

/* kv */
#kv {
	overflow: hidden;
	position: relative;
	width: 100%;
	max-height: 1080px;
	height: 100svh;
	aspect-ratio: 16 / 9;
}

#kv video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

#kv_t {
	z-index: 10;
	position: relative;
	top: 38.8%;
	left: 15%;
	/* height: 300px; */
}

#kv_t p:nth-of-type(1) {
	max-width: 547px;
    width: 43vw;
}

/* #kv_t p:nth-of-type(2) {
	max-width: 455px;
	width: 35.54vw;
	margin: 43px 0 0 50px;
} */

/* scroll down */
#scroll_down {
	opacity: 1;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	transition: var(--transition05secEaseinout);
}

#scroll_down p {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	height: 100%;
	color: var(--color_white);
	line-height: 1;
}

#scroll_down p::after {
	content: '';
	width: 1px;
	height: 36px;
	margin-top: 15px;
	background: var(--color_white);
}

.scrolled #scroll_down {
	opacity: 0;
}

@media screen and (max-width: 1280px) {
	#kv_t p:nth-of-type(2) {
		margin: 2.3vw 0 0 3.9vw;
	}
}

@media screen and (max-width: 768px) {
	#kv {
		width: auto;
		height: 100svh;
		aspect-ratio: initial;
	}

	#kv video {
		width: 100%;
		height: 100%;
	}

	#kv_t {
		top: 47.8%;
		left: 4.9%;
	}

	#kv_t p:nth-of-type(1) {
		max-width: 402px;
		width: 89.74vw;
	}

	/* #kv_t p:nth-of-type(2) {
		max-width: 273px;
		width: 85.38vw;
		margin: 3vw 0 0 4.7vw;
	} */

	/* scroll down */
	#scroll_down p::after {
		height: 8.46vw;
		margin-top: 2.82vw;
	}
}

/*----------------------------------------
	news
-----------------------------------------*/

#news {
	margin-top: 75px;
}

.news_2column {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 10.784%;
	margin-top: 8px;
}

/* 上部 */
.news_2column .news_category {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.news_2column .news_category .news_label {
	gap: 20px;
}

.news_2column .news_category .news_label::before {
	height: 3px;
}

.news_2column .news_category a {
	display: flex;
	gap: 15px;
	align-items: center;
	margin-right: 3px;
}

.news_2column .notice .news_category a {
	color: var(--color_basicblue);
}

.news_2column .technology .news_category a {
	color: var(--color_pointgold);
}

.news_2column .news_category a::after {
	content: '';
	width: 24px;
	height: 17px;
	background-position: center;
	background-size: 24px 17px;
	background-repeat: no-repeat;
}

.news_2column .notice .news_category a::after {
	background-image: url(../img/c_ic_arw_r_s_basicblue.svg);
}

.news_2column .technology .news_category a::after {
	background-image: url(../img/c_ic_arw_r_s_pointgold.svg);
}

/* hover */
@media (hover: hover) {
	.news_2column .news_category a:hover::after {
		animation: arrow_animation 1s ease-in-out infinite forwards;
	}
}

/* 記事リスト */
.news_2column ul {
	margin-top: 28px;
}

.news_2column li {
	padding: 22px 0 44px;
	border-top: 1px solid var(--color_silver);
}

.news_2column li a {
	display: grid;
	gap: 13px 0;
	grid-template-columns: auto auto 1fr;
	grid-template-areas: 'date tag new'
	'title title title';
	align-items: center;
}

.news_2column .news_date {
	grid-area: date;
	margin-right: 27px;
}

.news_2column .news_tag {
	grid-area: tag;
	margin-right: 14px;
}

.news_2column .news_new {
	grid-area: new;
}

.news_2column .news_title {
	grid-area: title;
	letter-spacing: 0.03em;
}

/* hover */
@media (hover: hover) {
	.news_2column li a:hover .news_title {
		text-decoration: underline;
	}
}

/* sp用 */
@media screen and (max-width: 768px) {
	#news {
		margin-top: 11.2vw;
	}

	.news_2column {
		grid-template-columns: 1fr;
		row-gap: 6.92vw;
		margin-top: 2.14vw;
	}

	.news_2column .news_category .news_label {
		gap: 3.07vw;
	}

	.news_2column .news_category .news_label::before {
		min-height: 2px;
		height: 0.51vw;
	}

	.news_2column .news_category a {
		gap: 3.16vw;
		margin-right: 0;
	}

	.news_2column .news_category a::after {
		width: 6.15vw;
		height: 4.35vw;
		background-size: 6.15vw 4.35vw;
	}

	.news_2column ul {
		margin-top: 4.87vw;
	}

	.news_2column li {
		padding: 4.35vw 0 6.2vw;
	}

	.news_2column li a {
		gap: 3.58vw 0;
	}

	.news_2column .news_date {
		margin-right: 4.1vw;
	}

	.news_2column .news_tag {
		margin-right: 3.58vw;
	}
}

/*----------------------------------------
	product / strength 共通
-----------------------------------------*/

/* 背景 */
#product_strength {
	overflow: hidden;
	position: relative;
	margin-top: 73px;
	padding: 75px 0 0;
	background-image: url(../img/i_product_bg01.webp);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

/* 見出し */
#product_strength .heading {
	display: grid;
}

#product_strength .heading p {
	color: var(--color_white);
}

/* english */
#product_strength .heading p.font90_48 {
	grid-area: eng;
}

/* 頭文字 */
#product_strength .heading p.font90_48::first-letter {
	color: var(--color_pointgold);
}

/* japanese */
#product_strength .heading p.font24_18 {
	display: flex;
	grid-area: jpn;
	align-items: center;
	color: var(--color_white);
	letter-spacing: 0.03em;
}

#product_strength .heading p.font24_18::before {
	content: '';
	width: 30px;
	height: 3px;
	margin-right: 20px;
}

@media screen and (max-width: 768px) {
	#product_strength {
		margin-top: 13.58vw;
		padding-top: 10.53vw;
		background-position: left center;
	}

	#product_strength .heading p.font24_18::before {
		width: 7.69vw;
		height: 0.51vw;
		margin-right: 3.07vw;
	}

	#product_strength .heading>span {
		display: none;
	}
}

/*----------------------------------------
	product
-----------------------------------------*/

#product_strength .product .heading {
	gap: 0 5.303%;
	grid-template-columns: auto 1fr;
	grid-template-areas: 'eng border'
	'jpn link';
}

#product_strength .product .heading p.font24_18 {
	justify-content: flex-end;
}

#product_strength .product .font90_48,
#product_strength .strength .font90_48 {
	line-height: 1.25;
}

#product_strength .product .heading p.font24_18::before {
	background: var(--color_white);
}

#product_strength .product .heading p:nth-of-type(3) {
	display: flex;
	grid-area: link;
	justify-content: flex-end;
	align-items: center;
}

#product_strength .product .heading p:nth-of-type(3) a.btn-inline {
	grid-area: link;
	width: initial;
	letter-spacing: 0;
}

/* hover */
@media (hover: hover) {
	#product_strength .product .heading p:nth-of-type(3) a.btn-inline:hover::after {
		animation: arrow_animation 1s ease-in-out infinite forwards;
	}
}

/* border */
#product_strength .product .heading>span {
	display: block;
	position: relative;
	width: 100%;
}

#product_strength .product .heading>span::before {
	content: '';
	opacity: 0.8;
	position: absolute;
	top: 50%;
	right: 0;
	width: 100%;
	height: 1px;
	border-image-source: linear-gradient(var(--color_flashwhite), var(--color_flashwhite));
	border-image-slice: 0 fill;
	border-image-outset: 0 100vw 0 0;
}

#product_strength .product .card_box {
	margin-top: 64px;
}

/* spサイズ */
@media screen and (max-width: 768px) {
	#product_strength .product .heading {
		gap: 1.4vw;
		grid-template-columns: repeat(4, 1fr);
		grid-template-areas: 'eng eng eng border'
		'jpn jpn link link';
	}

	#product_strength .product .heading p.font24_18 {
		justify-content: flex-start;
	}

	#product_strength .product .heading>span::before {
		width: 66%;
	}

	#product_strength .product .card_box {
		margin-top: 9.74vw;
	}

	#product_strength .product .heading p:nth-of-type(3) a.btn-inline::after {
		width: 6.15vw;
		height: 4.35vw;
		margin-left: 5.12vw;
	}
}

/*----------------------------------------
	strength
-----------------------------------------*/

#product_strength .strength {
	width: calc((100% - 1056px) / 2 + 1056px);
	margin: 149px auto 0 0;
}

#product_strength .strength>div {
	margin-left: 0;
	padding-top: 19px;
	border-top: 1px solid var(--color_pointgold);
}

#product_strength .strength .bg {
	display: grid;
	grid-template-columns: auto 44.321%;
	align-items: flex-end;
	max-width: 1168px;
	width: 100%;
	margin: 0 0 0 auto;
}

#product_strength .strength .img {
	display: flex;
	align-items: flex-end;
	z-index: 2;
	position: relative;
	max-width: 588px;
	width: 45.93vw;
	max-height: 409px;
	height: 100%;
}

#product_strength .strength .inner_box {
	display: grid;
	grid-template-columns: 100%;
	width: 100%;
	margin-right: 0;
}

#product_strength .strength .heading {
	display: flex;
	flex-direction: column;
	margin-top: 26px;
}

#product_strength .strength .heading p.font24_18 {
	justify-content: flex-start;
	padding-left: 0;
}

#product_strength .strength .heading p.font24_18::before {
	background: var(--color_pointgold);
}

#product_strength .strength .detail {
	display: flex;
	align-items: center;
	z-index: 1;
	position: relative;
	width: 100%;
	max-height: 220px;
	height: 17.18vw;
	margin-top: 46px;
	padding: 50px 0;
}

#product_strength .strength .detail::before {
	content: '';
	opacity: 0.7;
	z-index: -1;
	position: absolute;
	width: 100%;
	height: 100%;
	border-image-source: linear-gradient(var(--color_pointgold), var(--color_pointgold));
	border-image-slice: 0 fill;
	border-image-outset: 0 100vw;
}

#product_strength .strength .detail p.font18_16 {
	padding: 14px 0 0 5px;
	color: var(--color_white);
	letter-spacing: 0.04em;
}

#product_strength .strength .detail>p:first-of-type {
	position: absolute;
	top: 0;
	right: 0;
	transform: translateY(-50%);
}

#product_strength .strength .detail p.font18_16 span {
	display: block;
}

#product_strength .strength .detail p.font18_16 br {
	display: none;
}

/* 中間サイズ */
@media screen and (min-width: 769px) and (max-width: 1280px) {
	/* フォントサイズ */
	#product_strength .strength .font16_14 {
		font-size: 1.25vw;
	}

	#product_strength .strength .font18_16 {
		font-size: 1.4vw;
	}

	#product_strength .product .font24_18,
	#product_strength .strength .font24_18 {
		font-size: 1.87vw;
	}

	#product_strength .product .font90_48,
	#product_strength .strength .font90_48 {
		font-size: 7.03vw;
	}

	#product_strength .strength {
		width: calc(100% - 8.75%);
	}

	#product_strength .strength .inner_box {
		width: 100%;
	}
}

/* spサイズ */
@media screen and (max-width: 768px) {
	#product_strength .strength {
		width: 100%;
		margin: 23.07vw auto 0;
	}

	#product_strength .strength>div {
		display: block;
		position: relative;
		width: 100%;
		margin: 0 auto;
		border: initial;
	}

	#product_strength .strength>div::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 76.923%;
		height: 1px;
		background: var(--color_pointgold);
	}

	#product_strength .strength .bg {
		display: flex;
		flex-flow: column-reverse;
		flex-direction: column;
		gap: 10.2vw;
		grid-template-areas: initial;
		position: relative;
		margin: 0;
	}

	#product_strength .strength .bg::after {
		content: '';
		opacity: 0.7;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 133vw;
		background: var(--color_pointgold);
	}

	#product_strength .strength .heading {
		width: 100%;
		margin-top: 1.4vw;
	}

	#product_strength .strength .heading p.font24_18 {
		margin-top: 1vw;
	}

	#product_strength .strength .inner_box {
		display: block;
		grid-area: main;
		width: 89.744%;
		margin: 0 auto;
	}

	#product_strength .strength .detail {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		max-height: initial;
		height: 100%;
		margin-top: 3.58vw;
		padding: 0;
	}

	#product_strength .strength .detail::before {
		display: none;
	}

	#product_strength .strength .detail>p:first-of-type {
		display: block;
		position: initial;
		transform: initial;
		width: 100%;
	}

	#product_strength .strength .detail>p a {
		margin: 0 0 0 auto;
	}

	#product_strength .strength .detail>div {
		margin-top: 5.45vw;
	}

	#product_strength .strength .detail p.font18_16 {
		padding: 0;
	}

	#product_strength .strength .detail p.font18_16 span {
		display: inline;
	}

	#product_strength .strength .detail p.font18_16 br {
		display: block;
	}

	#product_strength .strength .img {
		grid-area: img;
		order: 2;
		position: relative;
		right: 0;
		max-width: initial;
		width: 100%;
		max-height: initial;
	}
}

/*----------------------------------------
	recruit / company / sustainability 共通
-----------------------------------------*/

#recruit_company {
	margin-top: calc(138px + 89.5px);
}

#recruit_company .heading {
	display: flex;
	flex-direction: column;
}

/* フォント */
#recruit_company .heading p.font90_48 {
	color: var(--color_basicblue);
}

#recruit_company .heading p.font56_32 {
	color: var(--color_white);
}

#recruit_company .heading p.font24_18 {
	display: flex;
	align-items: center;
	letter-spacing: 0.03em;
}

#recruit_company .heading p.font24_18::before {
	content: '';
	width: 30px;
	height: 3px;
	margin-right: 20px;
	background: var(--color_white);
}

/* 中間サイズ */
@media screen and (min-width: 769px) and (max-width: 1280px) {
	/* フォントサイズ */
	#recruit_company .recruit .font16_14,
	#recruit_company .sustainability .font16_14 {
		font-size: 1.25vw;
	}

	#recruit_company .company .font17_14 {
		font-size: 1.32vw;
	}

	#recruit_company .recruit .font18_16,
	#recruit_company .sustainability .font18_16 {
		font-size: 1.4vw;
	}

	#recruit_company .recruit .font24_18,
	#recruit_company .company .font24_18,
	#recruit_company .sustainability .font24_18 {
		font-size: 1.87vw;
	}

	#recruit_company .company .font56_32,
	#recruit_company .sustainability .font56_32 {
		font-size: 4.37vw;
	}

	#recruit_company .recruit .font90_48 {
		font-size: 7.03vw;
		line-height: 1.25;
	}

	#recruit_company {
		margin-top: calc(138px + 7vw);
	}
}

/* spサイズ */
@media screen and (max-width: 768px) {
	#recruit_company {
		margin-top: calc(31.79vw);
	}

	/* company / sustainability */
	#recruit_company .recruit+.inner_box {
		display: grid;
		gap: 5.12vw;
		grid-template-columns: 1fr;
		max-width: initial;
		width: 100%;
		margin-top: 5.12vw;
	}

	#recruit_company .heading p.font24_18::before {
		width: 7.69vw;
		height: 0.51vw;
		margin-right: 3.07vw;
	}
}

/*----------------------------------------
	recruit
-----------------------------------------*/

#recruit_company .recruit {
	display: flex;
	flex-direction: column;
}

#recruit_company .recruit .inner_box {
	display: grid;
	grid-template-columns: 60.3% 1fr;
	grid-template-areas: 'img main';
	max-width: 1280px;
	width: 100%;
}

/* 画像 */
#recruit_company .recruit figure {
	grid-area: img;
}

/* 右側 */
#recruit_company .recruit .inner_box>div {
	display: flex;
	grid-area: main;
	justify-content: center;
	position: relative;
	width: 76.3%;
	margin: 0 auto 0 0;
	padding-left: 23px;
}

/* グレー背景 */
#recruit_company .recruit .inner_box>div::before {
	content: '';
	z-index: -1;
	position: absolute;
	width: 100%;
	height: 100%;
	border-image-source: linear-gradient(var(--color_flashwhite), var(--color_flashwhite));
	border-image-slice: 0 fill;
	border-image-outset: 0 100vw;
}

/* 見出し */
#recruit_company .recruit .heading {
	grid-area: heading;
	position: absolute;
	top: -100px;
}

#recruit_company .recruit .heading p.font24_18 {
	justify-content: flex-end;
}

#recruit_company .recruit .heading p.font24_18::before {
	background: var(--color_pointgold);
}

#recruit_company .recruit .heading+div p.font24_18 {
	letter-spacing: 0.04em;
}

/* 説明文 */
#recruit_company .recruit .heading+div {
	display: grid;
	grid-template-rows: auto 1fr;
	margin-top: 108px;
	padding-bottom: 50px;
	height: calc(100% - 108px);
}

#recruit_company .recruit .heading+div p:last-of-type {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	margin-top: 65px;
}

#recruit_company .recruit .heading+div p.font18_16 {
	padding-left: 12px;
	letter-spacing: 0.04em;
}

/* 中間サイズ */
@media screen and (min-width: 769px) and (max-width: 1280px) {
	#recruit_company .recruit .heading {
		top: -7vw;
	}

	#recruit_company .recruit .heading+div {
		margin-top: 8.13vw;
		padding-bottom: 3.906vw;
		height: calc(100% - 8.13vw);
	}

	#recruit_company .recruit .heading+div p.font18_16 {
		padding-left: 0.93vw;
	}

	#recruit_company .recruit .heading+div p:last-of-type {
		margin-top: 5.1vw;
	}
}

/* spサイズ */
@media screen and (max-width: 768px) {
	#recruit_company .recruit .inner_box {
		display: flex;
		flex-flow: column-reverse;
	}

	#recruit_company .recruit .inner_box>div {
		width: 89.744vw;
		margin: 0 auto;
		padding-bottom: 7.8vw;
		padding-left: 0;
	}

	#recruit_company .recruit .heading {
		top: -25.8vw;
		width: 100%;
		margin-top: 12.2vw;
	}

	#recruit_company .recruit .heading p.font24_18 {
		justify-content: flex-start;
		margin-top: 1.4vw;
	}

	/* 画像調整 */
	#recruit_company .recruit figure {
		overflow: hidden;
		height: 61.53vw;
	}

	#recruit_company .recruit figure img {
		height: 100%;

		object-fit: cover;
		object-position: left;
	}

	/* 説明文 */
	#recruit_company .recruit .heading+div {
		display: block;
		margin-top: 19.91vw;
		padding-bottom: 0;
		height: auto;
	}

	#recruit_company .recruit .heading+div p.font18_16 {
		padding-left: 0;
	}

	#recruit_company .recruit .heading+div p:last-of-type {
		justify-content: center;
		align-items: flex-start;
		margin-top: 7vw;
	}
}

/*----------------------------------------
	company
-----------------------------------------*/

/* company / sustainability */
#recruit_company .recruit+.inner_box {
	display: grid;
	grid-template-columns: 1fr;
	max-width: 100%;
	width: 100%;
	height: 100%;
	margin-top: 100px;
	background: linear-gradient(45deg, #216699 0%, #173461 100%);
	position: relative;
}

#recruit_company .recruit+.inner_box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/i_company_bg01.svg);
	background-position: right top;
	background-size: min(630px, 49.22%) auto;
	background-repeat: no-repeat;
}

#recruit_company .company {
	max-width: 1280px;
	width: 100%;
	margin-inline: auto;
	z-index: 1;
}

#recruit_company .company>div {
	width: min(1060px, 82.813vw);
	margin-inline: auto;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 9.8%;
	padding-block: 70px 81px;
}

#recruit_company .company .heading p.font90_48 {
	color: var(--color_white);
}

#recruit_company .company .heading p.font24_18 {
	color: var(--color_white);
}

#recruit_company .company .heading p.font24_18::before {
	background: var(--color_pointgold);
}

/* リスト */
#recruit_company .company ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 12.5%;
	padding-right: 16.5%;
}

#recruit_company .company li {
	position: relative;
	color: var(--color_white);
}

/* 白線 */
#recruit_company .company li::before {
	content: '';
	opacity: 0.7;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-top: 1px solid var(--color_flashwhite);
	z-index: -1;
}

#recruit_company .company li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 13.7px 10px;
	transition: background-color var(--transition02secEaseout);
}

/* hover */
@media (hover: hover) {
	#recruit_company .company li a:hover {
		background-color: var(--color_white_light);
	}
}

/* 矢印 */
#recruit_company .company li a::after {
	content: '';
	width: 6px;
	height: 10px;
	background-image: url(../img/c_ic_arw_r_white.svg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

/* 中間サイズ */
@media screen and (min-width: 769px) and (max-width: 1280px) {
	#recruit_company .company ul {
		margin-top: 2vw;
	}

	#recruit_company .company li a {
		padding: 1vw 0.78vw;
	}
}

/* spサイズ */
@media screen and (max-width: 768px) {
	#recruit_company .recruit+.inner_box::before {
		background-size: 100%;
	}

	#recruit_company .company {
		aspect-ratio: initial;
	}

	#recruit_company .company::before {
		background-image: url(../img/i_company_bg02.webp);
		background-size: cover;
	}

	#recruit_company .company>div {
		width: 89.744vw;
		margin: 0 auto;
		padding-block: 11vw;
		grid-template-columns: 1fr;
		gap: 8vw;
	}

	#recruit_company .company .heading p.font24_18 {
		margin-top: 2.8vw;
	}

	#recruit_company .company ul {
		grid-template-columns: 1fr;
		border-bottom: 1px solid var(--color_flashwhite);
		padding-right: 0;
	}

	#recruit_company .company li a {
		padding: 3.7vw 2.56vw 2.76vw;
	}

	#recruit_company .company li a::after {
		width: 1.53vw;
		height: 2.56vw;
	}
}

/*----------------------------------------
	sustainability
-----------------------------------------*/

/* #recruit_company .sustainability {
	position: relative;
	aspect-ratio: 1.4 / 1;
}

#recruit_company .sustainability::before {
	content: '';
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/i_sustainability_bg01.webp);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

#recruit_company .sustainability>div {
	width: 69.524%;
	margin: 66px auto 0 12.698%;
}

#recruit_company .sustainability .heading p.font24_18 {
	color: var(--color_greenlizard);
}

#recruit_company .sustainability .heading p.font24_18::before {
	background: var(--color_greenlizard);
}

#recruit_company .sustainability .heading+div {
	margin-top: 24px;
}

#recruit_company .sustainability .heading+div p.font18_16 {
	color: var(--color_white);
	letter-spacing: 0.04em;
}

#recruit_company .sustainability .heading+div p:last-of-type {
	display: flex;
	justify-content: flex-end;
	margin-top: 10px;
}

#recruit_company .sustainability .heading+div a {
	color: var(--color_kellygreen);
} */

/* 中間サイズ */
/* @media screen and (min-width: 769px) and (max-width: 1280px) {
	#recruit_company .sustainability>div {
		margin-top: 5.2vw;
	}

	#recruit_company .sustainability .heading+div {
		margin-top: 1.87vw;
	}

	#recruit_company .sustainability .heading+div p:last-of-type {
		margin-top: 0.82vw;
	}
} */

/* spサイズ */
/* @media screen and (max-width: 768px) {
	#recruit_company .sustainability {
		aspect-ratio: initial;
	}

	#recruit_company .sustainability::before {
		background-position: top right;
	}

	#recruit_company .sustainability>div {
		width: 89.744vw;
		margin: 10.83vw auto 0;
		padding-bottom: 10.8vw;
	}

	#recruit_company .sustainability .heading p.font24_18 {
		margin-top: 2.7vw;
	}

	#recruit_company .sustainability .heading+div {
		margin-top: 7.1vw;
	}

	#recruit_company .sustainability .heading+div p:last-of-type {
		margin-top: 2.3vw;
	}
} */

/*----------------------------------------
	contact
-----------------------------------------*/

/* #contact {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	max-width: 1280px;
	width: 100%;
	height: 187.81px;
	margin: 124px auto 0;
}

#contact::before {
	content: '';
	opacity: 0.1;
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/i_contact_bg01.svg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

#contact .btn-l {
	width: 700px;
	height: 120px;
	margin: 21px auto 0;
}

#contact .btn-l span:first-of-type {
	position: relative;
	margin: 0 57px 0 2px;
	letter-spacing: 0;
}

#contact .btn-l span:first-of-type::before {
	content: ' ';
	display: inline-block;
	width: 34.6px;
	height: 23.3px;
	margin: 0 20px 0 0;
	background: transparent url(../img/c_ic_contact_white.svg) no-repeat center center/contain;
}

#contact .btn-l span:nth-of-type(2) {
	letter-spacing: 0.04em;
} */

/* 背景調整 */
/* @media screen and (min-width: 1281px) {
	#contact::before {
		background-size: contain;
	}
} */

/* 中間サイズ */
/* @media screen and (min-width: 769px) and (max-width: 1280px) {
} */

/* spサイズ */
/* @media screen and (max-width: 768px) {
	#contact {
		align-items: flex-end;
		max-height: initial;
		height: 25.12vw;
		margin-top: 14.87vw;
	}

	#contact::before {
		opacity: 0.2;
		background-position: top;
		background-size: contain;
	}

	#contact p {
		width: 89.744vw;
		margin: auto auto 0;
	}

	#contact .btn-l {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: 18.46vw;
		margin: 0 auto;
	}

	#contact .btn-l span:first-of-type {
		margin: 0;
	}

	#contact .btn-l span:first-of-type::before {
		transform: translateY(-0.05em);
		width: 4.61vw;
		height: 3.07vw;
		margin: 0 2.56vw 0 0;
	}

	#contact .btn-l span:nth-of-type(2) {
		letter-spacing: 0.03em;
	}
} */
