

.secPositions {
	position: relative;
}
.secPositions .secInr {
	position: relative;
	z-index: 1;
}
.secPositions .secInr .secTtl .ttl {
	font-size: 3.8rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.secPositions .secInr .secDtlWrap {
	margin-top: 8px;
}
.secPositions .secInr .secDtlWrap .secDtl {
	border-top: 1px solid #efeeef;
}
.secPositions .secInr .secDtlWrap .secDtl:first-child {
	border-top: none;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr {
	display: flex;
	box-sizing: border-box;
	padding: 50px 0;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlTtl {
	width: 310px;
	box-sizing: border-box;
	padding-right: 20px;
	overflow: hidden;
	transition: all 0.3s ease-out;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlTtl .ttl {
	display: table;
	padding-left: 22px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 2;
	letter-spacing: 0.05em;
	position: relative;
	overflow: hidden;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlTtl .ttl::before {
	content: " ";
	width: 6px;
	height: 0;
	background: #343434;
	position: absolute;
	left: 0;
	bottom: 0;
	transition: all 0.4s ease-in-out;
	z-index: 2;
}
.secPositions .secInr .secDtlWrap .secDtl.js-active .dtlInr .dtlTtl .ttl::before {
	height: 100%;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlTtl .ttl .js-str {
	opacity: 0;
	transition: opacity 0.4s ease-in-out;
}
.secPositions .secInr .secDtlWrap .secDtl.js-active .dtlInr .dtlTtl .ttl .js-str {
	opacity: 1;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap {
	flex: 1 0 0%;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine {
	display: flex;
	align-items: flex-start;
	margin-top: 20px;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine:first-child {
	margin-top: 0;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .ttl {
	width: 138px;
	box-sizing: border-box;
	padding-right: 20px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2.3;
	letter-spacing: 0.05em;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol {
	flex: 1 0 0%;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol .txt {
	font-size: 1.5rem;
	line-height: 2.3;
	letter-spacing: 0.02em;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol a.txt {
	color: #333;
	text-decoration: none;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol a.txt::after {
	content: " ";
	display: inline-block;
	width: 22px;
	height: 22px;
	margin-left: 6px;
	background: url(/common/images/icn_map_address.svg) no-repeat center center;
	background-size: cover;
	vertical-align: middle;
}
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol .list,
.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol .note {
	padding-left: 1em;
	text-indent: -1em;
}


.secPositions .secInr .secDtlWrap .entryBtn {
	width: 306px;
	height: 64px;
	margin: 18px auto 0;
}
.secPositions .secInr .secDtlWrap .entryBtn .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	box-sizing: border-box;
	padding: 10px 40px;
	background: #333;
	text-decoration: none;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.5;
	position: relative;
	transition: all 0.3s ease-out;
}
.secPositions .secInr .secDtlWrap .entryBtn .btn::after {
	content: " ";
	width: 8px;
	height: 16px;
	background: url(/common/images/icn_arow_right_wt.svg) no-repeat center center;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}
.secPositions .secInr .secDtlWrap .entryBtn .btn:hover {
	opacity: 0.7;
}

/* SP
----------------------------------*/
@media screen and (max-width: 768px) {
	.secPositions .secInr .secTtl .ttl {
		font-size: 2.4rem;
		letter-spacing: 0.06em;
	}
	.secPositions .secInr .secDtlWrap {
		margin-top: 0;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr {
		display: block;
		padding: 35px 0;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlTtl {
		width: 100%;
		padding-right: 0;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlTtl .ttl {
		padding-left: 20px;
		font-size: 1.7rem;
		line-height: 1.6;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap {
		margin-top: 18px;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine {
		display: block;
		margin-top: 25px;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .ttl {
		width: 100%;
		padding-right: 0;
		line-height: 1.5;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol {
		margin-top: 10px;
	}
	.secPositions .secInr .secDtlWrap .secDtl .dtlInr .dtlCtsWrap .ctsLine .txtCol .txt {
		line-height: 1.6;
		letter-spacing: 0.04em;
	}

	.secPositions .secInr .secDtlWrap .entryBtn {
		width: 238px;
		height: 50px;
		margin: 10px auto 0;
	}
	.secPositions .secInr .secDtlWrap .entryBtn .btn {
		padding: 10px 20px;
	}
	.secPositions .secInr .secDtlWrap .entryBtn .btn::after {
		width: 6px;
		height: 12px;
		right: 10px;
	}
}