@charset "utf-8";

/* -----------------------------------------------------------
    business
-------------------------------------------------------------- */
@media screen and (min-width: 769px) {
	#wrapper {
		overflow: clip;
	}
}

@media screen and (max-width: 768px) {
	.subpage-header .en {
		bottom: -5px;
		font-size: 4rem;
	}
}

/* -----------------------------------------------------------
    intro-area
-------------------------------------------------------------- */
#business .intro-area {
	padding-bottom: 60px;
}

/* -----------------------------------------------------------
    partner-intro
-------------------------------------------------------------- */
.partner-area {
	padding: 200px 0 0;
}

.partner-area .partner-intro {
	margin: 40px 0 0;
}

.partner-area .partner-intro-note p {
	font-size: 1.7rem;
	line-height: 2.2;
	margin: 30px 0 0;
}

.partner-area .partner-intro-note p:first-of-type {
	margin: 0;
}

.partner-area .partner-intro-list .cap {
	font-size: 1.8rem;
	margin: 5px 0 0;
	padding: 0 5px 0 0;
	text-align: right;
}

.partner-area .partner-intro-figure {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.partner-area .partner-intro-figure figure {
	width: calc((100% - 100px) / 6);
}

.partner-area .partner-intro-figure figcaption {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.2;
	margin: 10px 0 0;
	text-align: center;
}

.partner-area .partner-intro-figure figcaption span {
	font-size: 1.5rem;
}

.partner-area .partner-intro-icon {
	width: 100%;
	margin: 0 auto;
}

.partner-area .partner-intro-icon img {
	width: 100%;
}

.partner-area .partner-voice {
	display: flex;
	margin: 50px 0 0;
	gap: 30px;
}

.partner-area .partner-voice-item {
	width: calc((100% - 60px) / 3);
	background: #fff;
	flex-shrink: 0;
}

.partner-area .partner-voice-persona {
	width: 100%;
	flex-shrink: 0;
	aspect-ratio: 3/1.5;
}

.partner-area .partner-voice-persona img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.partner-area .partner-voice-ttl {
	font-size: 2.1rem;
	font-weight: bold;
	margin: 20px 0 0;
	padding: 0 30px;
	letter-spacing: .05em;
	color: var(--main);
}

.partner-area .partner-voice-dl {
	display: flex;
	margin: 20px 0 0;
	padding: 0 30px;
	align-items: center;
	flex-wrap: wrap;
	gap: 15px 30px;
}

.partner-area .partner-voice-dl dl {
	font-weight: 500;
	line-height: 1.2;
	display: flex;
	gap: 10px;
}

.partner-area .partner-voice-dl dt {
	line-height: 1.5;
	color: #78a1d4;
	flex-shrink: 0;
}

.partner-area .partner-voice-dl dd {
	line-height: 1.5;
	color: #888;
}

.partner-area .partner-voice-detail {
	position: relative;
	margin: 25px 30px 0;
	padding: 15px 0 30px;
	border-top: 2px solid var(--sub3);
}

.partner-area .partner-voice-detail p {
	position: relative;
	z-index: 2;
}

@media screen and (max-width: 768px) {
	.partner-area {
		padding: 100px 0 0;
	}

	.partner-area .partner-intro {
		margin: 30px 0 0;
	}

	.partner-area .partner-intro-note {
		margin: 20px 0 0;
	}

	.partner-area .partner-intro-note p {
		font-size: 1.6rem;
		margin: 20px 0 0;
	}

	.partner-area .partner-intro-list .cap {
		font-size: 1.6rem;
		line-height: 1;
		margin: 8px 0 0;
	}

	.partner-area .partner-intro-figure {
		gap: 15px;
	}

	.partner-area .partner-intro-figure figure {
		width: calc((100% - 15px) / 2);
	}

	.partner-area .partner-intro-figure figcaption {
		font-size: 1.6rem;
		margin: 5px 0 0;
	}

	.partner-area .partner-intro-figure figcaption span {
		font-size: 1.4rem;
		display: block;
	}

	.partner-area .partner-voice {
		flex-direction: column;
		margin: 30px 0 0;
		gap: 20px;
	}

	.partner-area .partner-voice-item {
		width: 100%;
		gap: 20px;
	}

	.partner-area .partner-voice-persona {
		width: 100%;
	}

	.partner-area .partner-voice-ttl {
		font-size: 1.9rem;
		padding: 0 15px;
	}

	.partner-area .partner-voice-dl {
		margin: 15px 0 0;
		padding: 0 15px;
		gap: 10px 0;
	}

	.partner-area .partner-voice-dl dl {
		font-size: 1.6rem;
		min-width: 50%;
		gap: 12px;
	}

	.partner-area .partner-voice-dl dt {
		font-size: 1.5rem;
	}

	.partner-area .partner-voice-dl dd {
		font-size: 1.5rem;
	}

	.partner-area .partner-voice-detail {
		font-size: 1.5rem;
		line-height: 2;
		margin: 20px 0 0;
		padding: 13px 15px 25px;
	}
}

/* -----------------------------------------------------------
    merit-area
-------------------------------------------------------------- */
.merit-area .business-reason2 {
	margin: 40px 0 0;
}

.merit-area .business-reason2-ttl {
	font-size: 2rem;
	font-weight: bold;
	flex-shrink: 0;
}

.merit-area .business-reason2-table {
	width: 100%;
	margin: 20px 0 0;
}

.merit-area .business-reason2-table tbody {
	display: flex;
	border: 1px solid #bec0c5;
	border-width: 1px 0 0 1px;
}

.merit-area .business-reason2-table tr {
	display: flex;
	flex-direction: column;
	width: 25%;
}

.merit-area .business-reason2-table th {
	font-size: 1.8rem;
	display: flex;
	height: 65px;
	padding: 20px;
	border: 1px solid #bec0c5;
	border-width: 0 1px 1px 0;
	background: var(--cmnbg3);
	align-items: center;
	gap: 8px;
	justify-content: center;
}

.merit-area .business-reason2-table td {
	font-size: 1.8rem;
	height: 65px;
	padding: 20px;
	text-align: center;
	border: 1px solid #bec0c5;
	border-width: 0 1px 1px 0;
}

.merit-area .business-reason2-table .vehicle {
	line-height: 1;
	display: inline-block;
	padding: 7px 8px 9px;
	background: #fff;
}

@media screen and (max-width: 768px) {
	.merit-area .business-reason2 {
		margin: 30px 0 0;
	}

	.merit-area .business-reason2-ttl {
		font-size: 1.8rem;
	}

	.merit-area .business-reason2-table {
		margin: 15px 0 0;
	}

	.merit-area .business-reason2-table tbody {
		flex-wrap: wrap;
	}

	.merit-area .business-reason2-table tr {
		flex-direction: row;
		width: 100%;
	}

	.merit-area .business-reason2-table th {
		font-size: 1.5rem;
		line-height: 1.3;
		width: 170px;
		height: 60px;
		padding: 10px;
		text-align: left;
		flex-shrink: 0;
		justify-content: flex-start;
	}

	.merit-area .business-reason2-table td {
		font-size: 1.5rem;
		line-height: 1.3;
		display: flex;
		height: 60px;
		padding: 10px;
		text-align: left;
		align-items: center;
		flex-grow: 1;
	}

	.merit-area .business-reason2-table .vehicle {
		font-size: 1.5rem;
		padding: 5px 7px 6px;
	}
}

/* -----------------------------------------------------------
    service
-------------------------------------------------------------- */
.business-service-area {
	padding: 120px 0 0;
}

.business-service-area .business-service {
	position: relative;
	display: flex;
	margin: 50px 0 0;
	justify-content: space-between;
}

.business-service-area .business-service-detail {
	width: 900px;
}

.business-service-area .business-service-detail .business-service-box:first-of-type {
	margin: 0;
}

.business-service-area .business-service-nav {
	position: -webkit-sticky;
	position: sticky;
	top: 110px;
	width: 200px;
	height: 300px;
}

.business-service-area .business-service-nav .enttl {
	font: 700 1.9rem/1 var(--en);
	padding: 0 0 12px;
	color: var(--main);
	border-bottom: 1px solid var(--border1);
}

.business-service-area .business-service-nav a {
	display: block;
	padding: 5px 0 20px;
	border-bottom: 1px solid var(--border1);
}

.business-service-area .business-service-nav a span {
	font-size: 1.8rem;
	position: relative;
	display: flex;
	padding: 0 0 0 15px;
	color: var(--cmnblack);
	align-items: center;
	gap: 10px;
}

.business-service-area .business-service-nav a span::before {
	font: 900 1.1rem/1 var(--webicon);
	position: absolute;
	top: 55%;
	left: 0;
	content: '\f054';
	transition: .05s;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	color: var(--main);
}

.business-service-area .business-service-nav ul {
	display: flex;
	flex-direction: column;
	margin: 13px 0 0;
	gap: 15px;
}

.business-service-area .business-service-box {
	margin: 60px 0 0;
}

.business-service-area .business-service-subttl {
	font-size: 2.1rem;
	font-weight: 600;
	margin: 0 0 30px;
	padding: 15px 20px;
	color: #fff;
	background: #4e6abd;
}

.business-service-area [data-servicebox="work"] .servicebox-work {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.business-service-area [data-servicebox="work"] figure {
	display: block;
	width: calc((100% - 60px) / 3);
}

.business-service-area [data-servicebox="work"] .service-list-img {
	width: 100%;
	aspect-ratio: 3/1.5;
}

.business-service-area [data-servicebox="work"] .service-list-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.business-service-area [data-servicebox="work"] figcaption {
	font-size: 2.1rem;
	font-weight: bold;
	display: flex;
	margin: 13px 0 0;
	text-align: center;
	color: var(--cmnblack);
	align-items: center;
	gap: 7px;
	justify-content: center;
}

.business-service-area [data-servicebox="work"] figcaption .cmn-vehicle-span {
	font-size: 1.7rem;
	font-weight: 500;
}

.business-service-area [data-vehicleitem=domestic] .vehicle-cate {
	margin: 0 0 5px;
}

.business-service-area [data-vehicleitem="imported"] .vehicle-cate {
	margin: 0 0 5px;
}

.business-service-area [data-servicebox="vehicle"] .vehicle-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

.business-service-area [data-servicebox="vehicle"] .vehicle-item {
	padding: 20px 30px;
	background: #fff;
}

.business-service-area [data-servicebox="vehicle"] .vehicle-item.w100 {
	width: 100%;
}

.business-service-area [data-servicebox="vehicle"] .vehicle-cate {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
	color: var(--sub2);
	flex-shrink: 0;
}

.business-service-area [data-servicebox="glass"] .cmn-service-list {
	gap: 10px 30px;
}

.business-service-area [data-servicebox="glass"] .cmn-service-list li {
	font-size: 1.7rem;
}

.business-service-area [data-servicebox="pay"] .servicebox-pay {
	display: flex;
	gap: 15px;
	flex-wrap: wrap;
}

.business-service-area [data-servicebox="pay"] .servicebox-pay dl {
	width: calc((100% - 15px) / 2);
	padding: 28px 25px;
	background: #fff;
}

.business-service-area [data-servicebox="pay"] .servicebox-pay dt {
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: .05em;
	color: var(--sub2);
}

.business-service-area [data-servicebox="pay"] .servicebox-pay dd {
	line-height: 1.8;
	margin: 13px 0 0;
	letter-spacing: .05em;
}

@media screen and (min-width: 769px) {
	.business-service-area [data-vehicleitem="imported"] .vehicle-inner {
		padding: 10px 0;
	}
}

@media screen and (max-width: 768px) {
	.business-service-area {
		padding: 60px 0 0;
	}

	.business-service-area .business-service {
		display: block;
		margin: 40px 0 0;
	}

	.business-service-area .business-service-detail {
		width: 100%;
		margin: 40px 0 0;
	}

	.business-service-area .business-service-nav {
		position: -webkit-static;
		position: static;
		width: 100%;
		height: auto;
	}

	.business-service-area .business-service-nav .enttl {
		font-size: 1.7rem;
		padding: 0 0 5px;
		border: none;
	}

	.business-service-area .business-service-nav a {
		padding: 15px;
		border: 1px solid #83868c;
	}

	.business-service-area .business-service-nav a span {
		font-size: 1.6rem;
		font-weight: bold;
		padding: 0 0 0 18px;
	}

	.business-service-area .business-service-nav a span::before {
		top: 60%;
		content: '\f078';
	}

	.business-service-area .business-service-nav ul {
		flex-direction: row;
		margin: 10px 0 0;
		flex-wrap: wrap;
	}

	.business-service-area .business-service-nav li {
		width: 100%;
	}

	.business-service-area .business-service-box {
		margin: 50px 0 0;
	}

	.business-service-area .business-service-subttl {
		font-size: 1.9rem;
		line-height: 1.4;
		margin: 0 0 20px;
		padding: 13px 15px 15px;
	}

	.business-service-area [data-servicebox="work"] .servicebox-work {
		gap: 20px;
	}

	.business-service-area [data-servicebox="work"] figure {
		display: flex;
		width: 100%;
		align-items: center;
		gap: 15px;
	}

	.business-service-area [data-servicebox="work"] .service-list-img {
		width: 50%;
		flex-shrink: 0;
	}

	.business-service-area [data-servicebox="work"] figcaption {
		font-size: 1.9rem;
		flex-direction: column;
		margin: 0;
		align-items: flex-start;
	}

	.business-service-area [data-vehicleitem="imported"] .vehicle-cate {
		margin: 0 0 15px;
	}

	.business-service-area [data-servicebox="vehicle"] .vehicle-item {
		display: block;
		padding: 20px 15px;
	}

	.business-service-area [data-servicebox="vehicle"] .vehicle-item.w100 {
		padding: 25px 15px;
	}

	.business-service-area [data-servicebox="vehicle"] .vehicle-cate {
		font-size: 1.7rem;
	}

	.business-service-area [data-servicebox="glass"] .cmn-service-list {
		gap: 15px;
	}

	.business-service-area [data-servicebox="glass"] .cmn-service-list li {
		font-size: 1.6rem;
	}

	.business-service-area [data-servicebox="pay"] .servicebox-pay dl {
		width: 100%;
		padding: 25px 20px;
	}

	.business-service-area [data-servicebox="pay"] .servicebox-pay dt {
		font-size: 1.6rem;
	}

	.business-service-area [data-servicebox="pay"] .servicebox-pay dd {
		margin: 12px 0 0;
	}
}