@charset "utf-8";

/* -----------------------------------------------------------
    niwork-relation 一覧   ※全ページ共通のため編集不可
-------------------------------------------------------------- */
/* -----------------------------------------------------------
   cmn-works-list
-------------------------------------------------------------- */
.niwork-relation__scroll {
	overflow-x: scroll;
	margin: 45px 0 0;
}

.niwork-relation__list {
	display: flex;
	padding: 0 0 0 40px;
}

.niwork-relation__item {
	flex-shrink: 0;
	width: 720px;
	position: relative;
}

.niwork-relation__link {
	border: #EAEDED solid 5px;
	border-radius: 6px;
	background: #fff;
	display: block;
	padding: 45px 50px;
	position: relative;
	height: 100%;
	width: 680px;
}

.niwork-relation__link:hover {
	border-color: var(--sub2);
}

.niwork-relation__ttl {
	color: var(--cmnblack);
	font-weight: bold;
	font-size: 2.6rem;
	line-height: 1.5;
	letter-spacing: .05em;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	margin: 13px 0 0;
}

.niwork-relation__link .works-cate {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.niwork-relation__link .works-cate-main {
	align-items: center;
	background: var(--main);
	color: #fff;
	font-size: 1.7rem;
	display: flex;
	padding: 10px 12px;
	line-height: 1;
}

.niwork-relation__link .works-cate-service {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}

.niwork-relation__link .works-cate-service .tag {
	color: var(--main);
	line-height: 1;
	padding: 0 0 0 16px;
	position: relative;
}

.niwork-relation__link .works-cate-service .tag::before {
	content: "";
	background: var(--main);
	display: inline-block;
	width: 10px;
	height: 10px;
	transform: rotate(45deg);
	top: 3px;
	position: absolute;
	left: 0;
}

.niwork-relation__link .works-client {
	display: flex;
	border: 1px solid var(--border2);
	border-width: 1px 0;
	gap: 18px;
	padding: 18px 0;
	margin: 20px 0 0;
}

.niwork-relation__link .works-client dt {
	color: var(--border2);
	font: 700 2.4rem /1 var(--serif);
	flex-shrink: 0;
}

.niwork-relation__link .works-client dd {
	color: var(--cmnblack);
	font-size: 2.3rem;
	font-weight: bold;
	letter-spacing: .03em;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

.niwork-relation__link .works-table {
	display: flex;
	flex-wrap: wrap;
	gap: 25px 15px;
	margin: 35px 0 0;
}

.niwork-relation__link .works-table dl {
	align-items: flex-start;
	display: flex;
	color: var(--cmnblack);
	gap: 15px;
	flex-grow: 1;
	min-width: calc((100% - 15px) / 2);
	height: 60px;
}

.niwork-relation__link .works-table dt {
	align-items: center;
	background: #F4F7F7;
	border-radius: 2px;
	color: var(--gray3);
	display: flex;
	flex-shrink: 0;
	font-size: 1.7rem;
	font-weight: 500;
	justify-content: center;
	height: 100%;
	width: 115px;
}

.niwork-relation__link .works-table dd {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.36;
	letter-spacing: 0;
	width: 135px;
	height: 100%;
}

.niwork-relation__link .handout-dd {
	width: 100%;
}

.niwork-relation__link .table-txt {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	max-height: 52px;
}

.niwork-relation__link .handout-txt {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

.niwork-relation__link .works-table p {
	line-height: 1.5;
}

@media screen and (max-width: 768px) {
	.niwork-relation__scroll {
		margin: 25px 0 0;
	}

	.niwork-relation__list {
		padding: 0 0 15px 20px;
	}

	.niwork-relation__item {
		border: none;
		flex-shrink: 0;
		width: 325px;
	}

	.niwork-relation__link::before {
		font-size: 1.6rem;
		bottom: 20px;
		right: 20px;
	}

	.niwork-relation__link {
		border-radius: 4px;
		padding: 25px 20px;
		width: 300px;
	}

	.niwork-relation__link .works-cate {
		gap: 14px;
	}

	.niwork-relation__link .works-cate-main {
		font-size: 1.5rem;
		padding: 8px 10px;
	}

	.niwork-relation__link .works-cate-service {
		font-size: 1.5rem;
		gap: 15px;
	}

	.niwork-relation__link .works-cate-service .tag {
		padding: 0 0 0 12px;
	}

	.niwork-relation__link .works-cate-service .tag::before {
		width: 7px;
		height: 7px;
		top: 4px;
	}

	.niwork-relation__ttl {
		font-size: 2rem;
		letter-spacing: .03em;
		line-height: 1.5;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		max-height: 60px;
		white-space: wrap;
		margin: 20px 0 0;
	}

	.niwork-relation__link .works-client {
		flex-direction: column;
		gap: 8px;
		padding: 14px 0 16px;
	}

	.niwork-relation__link .works-client dt {
		font-size: 1.5rem;
	}

	.niwork-relation__link .works-client dd {
		font-size: 1.7rem;
		letter-spacing: .03em;
	}

	.niwork-relation__link .works-table {
		margin: 25px 0 0;
	}

	.niwork-relation__link .works-table dl {
		height: 40px;
		gap: 12px;
	}

	.niwork-relation__link .works-table dt {
		font-size: 1.4rem;
		width: 88px;
	}

	.niwork-relation__link .works-table dd {
		font-size: 1.5rem;
		line-height: 1.32;
	}

	.niwork-relation__link .works-table dd p {
		line-height: 1.32;
	}
}

/* -----------------------------------------------------------
    BeforeAfter画像
-------------------------------------------------------------- */
.niwork-relation__bawrap {
	align-items: center;
	display: flex;
	gap: 5%;
}

.niwork-relation__ba {
	flex-shrink: 0;
}

[data-workrel_ba="before"] {
	width: 38%;
	position: relative;
}

.niwork-relation__list .single-image [data-workrel_ba="before"] {
	display: none;
}

[data-workrel_ba="after"] {
	width: 57%;
}

[data-workrel_ba="before"]::before {
	border-style: solid;
	border-width: 22px 0 22px 11px;
	border-color: transparent transparent transparent #ddd;
	content: "";
	right: -19px;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0;
	height: 0;
}

.niwork-relation__ba .baimgwrap {
	position: relative;
}

.niwork-relation__ba .baimgwrap::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
}

.niwork-relation__ba .baimg {
	aspect-ratio: 3/2;
}

.niwork-relation__ba img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.niwork-relation__ba .bacap {
	color: #fff;
	font-family: var(--serif);
	left: 0;
	top: 0;
	position: absolute;
	padding: 6px 10px 7px;
}

[data-workrel_ba="before"] .bacap {
	background: var(--gray);
	font-size: 1.3rem;
	position: absolute;
}

[data-workrel_ba="after"] .bacap {
	background: var(--main);
	font-size: 1.7rem;
}

.niwork-relation__list .single-image [data-workrel_ba="after"] .bacap {
	display: none;
}

@media screen and (max-width: 768px) {
	.niwork-relation__bawrap {
		gap: 30px;
		flex-direction: column;
	}

	[data-workrel_ba="before"] {
		width: 50%;
	}

	[data-workrel_ba="after"] {
		width: 100%;
	}

	[data-workrel_ba="before"]::before {
		border-color: #ddd transparent transparent transparent;
		border-width: 12px 20px 0px 20px;
		bottom: -20px;
		right: 0;
		left: 50%;
		top: auto;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.niwork-relation__ba .bacap {
		padding: 4px 8px 5px;
	}

	[data-workrel_ba="before"] .bacap {
		font-size: 1.2rem;
	}

	[data-workrel_ba="after"] .bacap {
		font-size: 1.5rem;
	}
}