@charset "utf-8";
#hero {
	width: 100%;
	height: auto;
}
	.hero__inner {
		width: 100%;
		height: auto;
	}
		.hero__contents {
			width: 100%;
			height: auto;
			padding: calc((128 / 1440) * 100vw) 0;
			position: relative;
		}
			.hero__logo {
				width: calc((520 / 1440) * 100%);
				max-width: 520px;
				margin: 0 auto;
				opacity: .04;
			}
				.hero__logo svg {
					width: 100%;
					height: auto;
					fill: var(--color--black);
				}
			.hero__text {
				font-size: 24px;
				font-weight: 400;
				line-height: 1;
				letter-spacing: 0.05em;
				text-align: center;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				z-index: 1;
			}
#company {
	width: 100%;
	height: auto;
	padding: 0 0 48px;
}
	.company__inner {
		width: 90%;
		max-width: 800px;
		height: auto;
		margin: 0 auto;
	}
		.company__list {
			width: 100%;
			height: auto;
		}
			.company__list__item {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				height: auto;
				padding: 40px 0;
				border-bottom: 1px solid var(--color--gray);
			}
				.company__list__item__ttl {
					width: calc((184 / 800) * 100%);
					min-width: 104px;
					padding: 0 0 0 24px;
					font-size: 14px;
					font-weight: 400;
					line-height: 1.8;
					letter-spacing: 0.05em;
				}
				.company__list__item__text {
					flex: 1;
					height: auto;
					font-size: 14px;
					font-weight: 400;
					line-height: 1.8;
					letter-spacing: 0.05em;
				}

#contact {
	width: 100%;
	height: auto;
}
	.contact__inner {
		width: 90%;
		height: auto;
		margin: 0 auto;
	}
		.contact__btn_wrap {
			width: 100%;
			height: auto;
		}
			.contact__btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 308px;
				height: 64px;
				padding: 0;
				margin: 0 auto;
				border-radius: 9999px;
				background-color: var(--color--black);
				border: solid 1px var(--color--black);
				font-size: 16px;
				font-weight: 400;
				line-height: 1;
				letter-spacing: 0.05em;
				color: var(--color--white);
			}
		@media (any-hover: hover) {
			.contact__btn {
				transition: .3s;
			}
			.contact__btn:hover {
				background-color: var(--color--white);
				color: var(--color--black);
			}
		}

/* PC ================================================== */
@media all and (min-width: 769px){

}

/* Tablet ================================================== */
@media all and (max-width: 768px){
/* hero */
		.hero__contents {
			padding: calc((80 / 375) * 100vw) 0;
		}
			.hero__logo {
				width: calc((296 / 375) * 100%);
			}
			.hero__text {
				font-size: 20px;
			}

/* company */
#company {
	padding: 0 0 40px;
}
	.company__inner {
		width: calc((327 / 375) * 100%);
	}
			.company__list__item {
				padding: 24px 0;
			}
				.company__list__item__ttl {
					width: calc((96 / 327) * 100%);
					min-width: initial;
					padding: 0;
				}

/* contact */
	.contact__inner {
		width: calc((327 / 375) * 100%);
	}
			.contact__btn {
				width: 236px;
				height: 56px;
				padding: 24px 0;
				margin: 0 auto;
				border-radius: 9999px;
				background-color: var(--color--black);
				border: solid 1px var(--color--black);
				font-size: 16px;
				font-weight: 400;
				line-height: 1;
				letter-spacing: 0.05em;
				color: var(--color--white);
			}
		@media (any-hover: hover) {
			.contact__btn {
				transition: .3s;
			}
			.contact__btn:hover {
				background-color: var(--color--white);
				color: var(--color--black);
			}
		}
}

/* SP ================================================== */
@media all and (max-width: 575px){

}