.subp-mv {
	background-image: url(../images/common/subp-mv.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	.subp-mv__inner {
		padding-top: calc(136 / 1440 * 100vw);
		padding-bottom: 16px;
		.jp-title {
			display: flex;
			align-items: center;
			gap: calc(12 / 1440 * 100vw);
			.jp-title__hexagon {
				width: calc(24 / 1440 * 100vw);
				height: calc(24 / 1440 * 100vw);
			}
			.jp-title__text {
				color: var(--0-c-2-d-45, #0c2d45);

				/* JP-24B */
				font-family: "Noto Sans JP";
				font-size: calc(24 / 1440 * 100vw);
				font-style: normal;
				font-weight: 700;
				line-height: 160%; /* 38.4px */
				letter-spacing: calc(0.96 / 1440 * 100vw);
			}
		}
		.en-title {
			color: var(--0-c-2-d-45, #0c2d45);
			font-family: Montserrat;
			font-size: calc(80 / 1440 * 100vw);
			font-style: normal;
			font-weight: 700;
			line-height: 160%; /* 128px */
		}
		.anchor-links {
			padding: calc(24 / 1440 * 100vw);
			background-color: #fff;
			width: fit-content;

			display: flex;
			gap: calc(32 / 1440 * 100vw);

			.anchor-links__item {
				color: var(--0-c-2-d-4540, rgba(12, 45, 69, 0.4));
				text-align: center;

				/* JP-16B */
				font-family: "Noto Sans JP";
				font-size: calc(16 / 1440 * 100vw);
				font-style: normal;
				font-weight: 700;
				line-height: 160%; /* 25.6px */
				letter-spacing: calc(0.64 / 1440 * 100vw);

				display: flex;
				align-items: center;
				border-right: calc(1 / 1440 * 100vw) solid #0c2d45;

				transition: all 0.3s ease;

				&:after {
					content: "";
					display: flex;
					align-items: center;
					width: calc(16 / 1440 * 100vw);
					height: calc(16 / 1440 * 100vw);
					background-image: url(../images/common/arrow-down-gray.svg);
					background-size: contain;
					background-repeat: no-repeat;
					background-position: center;
					margin-left: calc(10 / 1440 * 100vw);
					margin-right: calc(20 / 1440 * 100vw);
				}
				&:hover {
					color: #0c2d45;
					&:after {
						background-image: url(../images/common/arrow-down-darkblue.svg);
					}
				}
			}
		}
		.breadcrumb {
			padding-top: calc(16 / 1440 * 100vw);
			.breadcrumb-list {
				display: flex;
				align-items: center;
				justify-content: flex-end;

				.breadcrumb-list__item {
					color: var(--959595, #959595);
					text-align: right;

					/* JP-12R */
					font-family: "Noto Sans JP";
					font-size: calc(12 / 1440 * 100vw);
					font-style: normal;
					font-weight: 400;
					line-height: 160%; /* 19.2px */
					letter-spacing: calc(0.48 / 1440 * 100vw);

					&:after {
						content: "-\00a0";
					}
					&:last-child {
						color: var(--0-c-2-d-45, #0c2d45);
						&:after {
							display: none;
						}
					}
				}
			}
		}
	}
}

@media screen and (max-width: 768px) {
	.subp-mv {
		background-image: url(../images/common/subp-mv.jpg);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		.subp-mv__inner {
			padding-top: calc(74 / 375 * 100vw);
			padding-bottom: calc(16 / 375 * 100vw);
			.jp-title {
				display: flex;
				align-items: center;
				gap: calc(12 / 375 * 100vw);
				.jp-title__hexagon {
					width: calc(16 / 375 * 100vw);
					height: calc(16 / 375 * 100vw);
				}
				.jp-title__text {
					color: var(--0-c-2-d-45, #0c2d45);

					/* JP-24B */
					font-family: "Noto Sans JP";
					font-size: calc(16 / 375 * 100vw);
					font-style: normal;
					font-weight: 700;
					line-height: 160%; /* 38.4px */
					letter-spacing: calc(0.96 / 375 * 100vw);
				}
			}
			.en-title {
				color: var(--0-c-2-d-45, #0c2d45);
				font-family: Montserrat;
				font-size: calc(32 / 375 * 100vw);
				font-style: normal;
				font-weight: 700;
				line-height: 160%; /* 128px */
			}
			.anchor-links {
				padding: calc(24 / 375 * 100vw);
				background-color: #fff;
				width: fit-content;

				display: none;
				gap: calc(32 / 375 * 100vw);

				.anchor-links__item {
					color: var(--0-c-2-d-4540, rgba(12, 45, 69, 0.4));
					text-align: center;

					/* JP-16B */
					font-family: "Noto Sans JP";
					font-size: calc(16 / 375 * 100vw);
					font-style: normal;
					font-weight: 700;
					line-height: 160%; /* 25.6px */
					letter-spacing: calc(0.64 / 375 * 100vw);

					display: flex;
					align-items: center;
					border-right: calc(1 / 375 * 100vw) solid #0c2d45;

					transition: all 0.3s ease;

					&:after {
						content: "";
						display: flex;
						align-items: center;
						width: calc(16 / 375 * 100vw);
						height: calc(16 / 375 * 100vw);
						background-image: url(../images/common/arrow-down-gray.svg);
						background-size: contain;
						background-repeat: no-repeat;
						background-position: center;
						margin-left: calc(10 / 375 * 100vw);
						margin-right: calc(20 / 375 * 100vw);
					}
					&:hover {
						color: #0c2d45;
						&:after {
							background-image: url(../images/common/arrow-down-darkblue.svg);
						}
					}
				}
			}
			.breadcrumb {
				padding-top: calc(16 / 375 * 100vw);
				.breadcrumb-list {
					display: flex;
					align-items: center;
					justify-content: flex-end;

					.breadcrumb-list__item {
						color: var(--959595, #959595);
						text-align: right;

						/* JP-12R */
						font-family: "Noto Sans JP";
						font-size: calc(12 / 375 * 100vw);
						font-style: normal;
						font-weight: 400;
						line-height: 160%; /* 19.2px */
						letter-spacing: calc(0.48 / 375 * 100vw);

						&:after {
							content: "-\00a0";
						}
						&:last-child {
							color: var(--0-c-2-d-45, #0c2d45);
							&:after {
								display: none;
							}
						}
					}
				}
			}
		}
	}
}

.tel-link{
	pointer-events: none;
}

.p-recruit{
	overflow: hidden;
}

@media screen and (max-width: 768px) {
	.tel-link{
		pointer-events: auto;
	}
}

/*
 伊藤さんのCSSをベースに改変しています。（ここだけモバイルファースト）
*/
/* Start of Selection */
.companyInfo {
	background: url(../images/common/company-info-bg.png) no-repeat center/cover;
	position: relative;

	padding:0 calc(20 / 375 * 100vw);
	.companyInfo__inner {
		margin-inline: auto;
		padding-top: calc(80 / 375 * 100vw);
		padding-bottom: calc(80 / 375 * 100vw);
		position: relative;
	}

	.companyInfo__head {
		.c-title {
			transition: clip-path 4.7s ease;
			margin-bottom: calc(24 / 375 * 100vw);
			.c-title__ja {
				margin-top: 0;
			}
		}
	}

	.companyInfo__list {
		/* margin-top: 80px; */
	}

	.companyInfo__item {
		background-color: var(--theme-white);
		border-radius: calc(8 / 375 * 100vw);
		box-shadow: 0 0 calc(24 / 375 * 100vw) rgba(227, 227, 227, 0.5);
		display: flex;
		align-items: center;
		flex-direction: row;
		/* min-height: 140px; */
		min-height: calc(86 / 375 * 100vw);
		overflow: hidden;
		/* padding: calc(14 / 768 * 100vw) calc(13 / 768 * 100vw) calc(10 / 768 * 100vw) calc(20 / 768 * 100vw); */
		padding:calc(24 / 375 * 100vw);
		position: relative;
	}

	.companyInfo__item:not(:first-child) {
		margin-top: calc(25 / 375 * 100vw);
	}

	.companyInfo__item:hover {
		.companyInfo__heading-ja {
			color: var(--theme-white);
		}

		.companyInfo__heading-ja::before {
			background: url(../images/common/ico_title-wt.svg) no-repeat center/contain;
		}

		.companyInfo__heading-en {
			color: rgba(255, 255, 255, 0.4);
		}

		.companyInfo__itemText {
			color: var(--theme-white);
		}

		.companyInfo__btn {
			border-color: var(--theme-white);
		}
	}

	.companyInfo__itemLink {
		border-radius: calc(8 / 375 * 100vw);
		display: block;
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
		z-index: 1;
	}

	.companyInfo__itemBg {
		background-color: var(--theme-primary);
		clip-path: polygon(50% 50%, 50% 50%, 50% 50%, 50% 50%, 50% 50%, 50% 50%);
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
	}

	.companyInfo__itemHead {
		display: flex;
		height: 100%;
		justify-content: space-between;
		position: relative;
	}

	.companyInfo__heading-ja {
		bottom: calc(-15 / 375 * 100vw);
		color: #050f2d;
		display: flex;
		/* flex-direction: column; */
		flex-direction: row;
		font-size: calc(24 / 375 * 100vw);
		font-weight: 500;
		height: fit-content;
		justify-content: center;
		/* margin-top: 20px; */
		position: relative;
		transition: 0.6s;
		position: initial;
	}

	.companyInfo__heading-ja::before {
		aspect-ratio: 1/1;
		background: url(../images/common/ico_title.svg) no-repeat center/contain;
		content: "";
		display: block;
		left: auto;
		position: relative;
		top: auto;
		transition: 0.6s;
		min-width: calc(18 / 375 * 100vw);
		width: calc(18 / 375 * 100vw);

		margin-right: calc(4 / 375 * 100vw);
	}

	.companyInfo__heading-en {
		color: rgba(5, 15, 45, 0.4);
		font-family: "Montserrat", sans-serif;
		font-size: calc(10 / 375 * 100vw);
		transition: 0.6s;
		writing-mode: vertical-rl;
	}

	.companyInfo__itemBody {
		bottom: auto;
		display: flex;
		justify-content: space-between;
		position: absolute;
		width: calc(100% - calc(33 / 375 * 100vw));
		margin-top: 0;
	}

	.companyInfo__itemText {
		color: #050f2d;
		font-family: "Montserrat", sans-serif;
		font-size: calc(13 / 375 * 100vw);
		position: relative;
		transition: 0.6s;

		display: none;
	}

	.companyInfo__btnWrap {
		/* margin-top: 35px; */
		position: relative;
		margin-left: auto;
	}

	.companyInfo__btn {
		height: auto;
		margin-right: calc(10 / 375 * 100vw);
		/* padding: 5px 28px; */
		padding: calc(5 / 375 * 100vw);
		/* position: absolute; */
		right: 0;
	}
}

/* アニメーション関連 */
[data-top-effect] {
	.companyInfo__item {
		opacity: 0;
		transform: translateY(5%);
	}

	.companyInfo__item:nth-of-type(1) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.5s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
	}

	.companyInfo__item:nth-of-type(2) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.65s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.75s;
	}

	.companyInfo__item:nth-of-type(3) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.8s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 0.9s;
	}

	.companyInfo__item:nth-of-type(4) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.95s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.05s;
	}

	.companyInfo__item:nth-of-type(5) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.1s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	}

	.companyInfo__item:nth-of-type(6) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.25s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.35s;
	}

	.companyInfo__item:nth-of-type(7) {
		transition:
			opacity 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.4s,
			transform 1.5s cubic-bezier(0.19, 1, 0.22, 1) 1.5s;
	}
}

[data-top-effect].is-show {
	.companyInfo__item {
		opacity: 1;
		transform: translateY(0);
	}
}

/* タブレット・デスクトップ対応（744px以上） */
/* Start of Selection */
@media screen and (min-width: 744px) {
	.companyInfo {
		background: url(../images/common/company-info-bg.png) no-repeat center/cover;

		.companyInfo__inner {
			margin:0;
			max-width: calc(1280 / 1440 * 100vw);
			padding-top: calc(80 / 1440 * 100vw);
			padding-bottom: calc(80 / 1440 * 100vw);
		}

		.companyInfo__head {
			margin-bottom: calc(64 / 1440 * 100vw);
		}

		.companyInfo__list {
			display: flex;
			flex-wrap: wrap;
			gap: calc(35 / 1440 * 100vw);
			justify-content: center;
			margin-top: 0;
		}

		.companyInfo__item {
			min-height: calc(140 / 1440 * 100vw);
			padding: calc(16 / 1440 * 100vw) calc(22 / 1440 * 100vw) calc(13 / 1440 * 100vw) calc(24 / 1440 * 100vw);
			width: calc(400 / 1440 * 100vw);
			flex-direction: column;
			align-items: normal;
			border-radius: calc(8 / 1440 * 100vw);
			position: relative;
		}

		.companyInfo__itemText {
			display: block;
			max-width: calc(263 / 1440 * 100vw);
			font-size: calc(14 / 1440 * 100vw);
		}

		.companyInfo__item:not(:first-child) {
			margin-top: 0;
		}

		.companyInfo__heading-ja {
			font-size: calc(32 / 1440 * 100vw);
			height: auto;
			justify-content: space-between;
			margin-top: 0;
			flex-direction: column;

			gap:calc(50 / 1440 * 100vw);
			/* position:relative; */
		}

		.companyInfo__heading-ja::before {
			left: calc(-8 / 1440 * 100vw);
			/* top: -10px; */
			min-width: calc(18 / 1440 * 100vw);
			width: calc(18 / 1440 * 100vw);

			margin-right: calc(4 / 1440 * 100vw);
		}

		.companyInfo__heading-en {
			font-size: calc(13 / 1440 * 100vw);
		}

		.companyInfo__itemBody {
			align-items: flex-start;
			bottom: auto;
			margin-top: calc(4 / 1440 * 100vw);
			position: relative;
			position: absolute;
			bottom:calc(13 / 1440 * 100vw);
			right:calc(10 / 1440 * 100vw);
			width: auto;

		}

		.companyInfo__btnWrap {
			margin-top: 0;
		}

		.companyInfo__btn {
			position: relative;
			height: calc(42 / 1440 * 100vw);
			margin-right: calc(10 / 1440 * 100vw);
			padding: calc(5 / 1440 * 100vw) calc(28 / 1440 * 100vw);

			right: 0;
		}
	}
}
/* End of Selection */

/* 伊藤さんのコードをベースにモバイルにCSSを追加 */


.google-map-link {
	display:flex;
	align-items: center;
	.google-map-link__text {
		color: var(--7-da-1-c-4, #7da1c4);

		/* JP-16B */
		font-family: "Noto Sans JP";
		font-size: calc(16 / 1440 * 100vw);
		font-style: normal;
		font-weight: 700;
		line-height: 160%; /* 25.6px */
		letter-spacing: calc(0.64 / 1440 * 100vw);
	}
	.google-map-link__icon {
		width: calc(16 / 1440 * 100vw);
		height: calc(16 / 1440 * 100vw);
		margin-left: calc(6 / 1440 * 100vw);
		img {
			width: 100%;
			height: 100%;
			object-fit: contain;
		}
	}
}

@media screen and (max-width: 768px) {
	.google-map-link {
		display:flex;
		align-items: center;
		.google-map-link__text {
			color: var(--7-da-1-c-4, #7da1c4);

			/* JP-16B */
			font-family: "Noto Sans JP";
			font-size: calc(16 / 375 * 100vw);
			font-style: normal;
			font-weight: 700;
			line-height: 160%; /* 25.6px */
			letter-spacing: calc(0.64 / 375 * 100vw);
		}
		.google-map-link__icon {
			width: calc(16 / 375 * 100vw);
			height: calc(16 / 375 * 100vw);
			margin-left: calc(6 / 375 * 100vw);
			img {
				width: 100%;
				height: 100%;
				object-fit: contain;
			}
		}
	}
}


.sp-br{
	display: none;
}

@media screen and (max-width: 768px) {
	.sp-br{
		display: inline;
	}
}

