@charset "utf-8";
@import url("root.css");

/***************************************
------------- COMPANY -------------
***************************************/
#top .page_link li a[href*="company/"] {
	color: #333 !important;
	padding-bottom: .25em;
	border-bottom: 1px dotted #333;
	span { color:inherit; }
}


#company .center {text-align: center;}
#company .center span {text-align: center;}

#address .container,
#details .container {
  padding-top: 0;
}
.overview_left,
.overview_right {
	width: calc((100% - min(4%, 50px)) / 2);
	display: flex;
	flex-direction: column;
}
.overview_wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 0 min(4%, 50px);
	margin-top: min(10vw,50px);
	counter-reset: number 0;
	.overview_box {
		padding: 0 0 0 1.5rem;
		margin: 0 0 min(5vh, 30px) 2rem;
		border-left: 2px solid #333;
		text-align: left;
		position: relative;
		h4 {
			font-size: 1.15rem;
			font-weight: bold;
			margin-bottom: .5em;
		}
	}
	.overview_box::before {
		counter-increment: number 1;
		content: counter(number) "";
		position: absolute;
		top: 0;
		left: -1.5em;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 1.0;
	}
	.color01 {
		color: var(--service-nv);
		border-color: var(--service-nv);
	}
	.color02 {
		color: var(--service-gr);
		border-color: var(--service-gr);
	}
}
@media (max-width: 599px) {
	.overview_left,
	.overview_right {
		width: calc(100% - 2rem);
		margin: auto;
	}
}

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

#address .company_img {
	width: min(100%, 480px);
	aspect-ratio: 4/6;
	background: url(../img/company.webp) no-repeat top center / cover;
}
#address .row {
	align-items: center;
	gap: 50px;
}
#address dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 50px auto 0;
	padding: 0;
	border-left: 2px solid var(--base-color01);
	color: var(--base-color01);
}
#address dt{
	width: 20%;
	text-align: center;
	padding-bottom: 20px;
}
#address dd{
	width: 80%;
	text-align: left;
	padding-bottom: 20px;
}
#address dt:last-of-type {padding: 0;}
#address dd:last-of-type {padding: 0;}

@media (max-width: 768px) {
	#address .row {	margin: auto; }
	#address .col:nth-child(2n){ padding: 0;}
	#address dt { width: 25%; }
	#address dd { width: 75%; }
}

/*--------------------------------------------------*/
#details .center {text-align: center;}
#details .center span {text-align: center;}

.details_wrap {
	margin: 50px auto 0;
	dl {
		display: flex;
		flex-wrap: wrap;
		gap: 0 min(4%, 50px);
		border-left: 2px solid var(--base-color01);
		dt {
			width: clamp(150px, 20%, 200px);
			flex-shrink: 0;
			text-align: center;
			color: var(--base-color01);
		}
		dd {
			width: calc(100% - clamp(150px, 20%, 200px) - min(4%, 50px));
			text-align: left;
		}
	}
	dl:not(:last-of-type) dt {
		padding-bottom: 20px;
	}
}
@media (max-width: 599px) {
	.details_wrap dl {
		border-left: none;
		dt,dd {
			width:100%;
			text-align: left;
			padding: .5em 1em !important;
		}
		dt {
			background: #eff8fb;
		}
	}
}


/***************************************
------------- parallax -------------
***************************************/
.parallax {
  background: url(../img/parallax_bg05.webp) no-repeat center center / cover;
  height: clamp(300px,35vh,600px);
  background-attachment: fixed;
}