/********************************************************************************

parts-page.css

********************************************************************************/
/*============================================================
 for PC
*============================================================*/
/* common
---------------------------------------- */
.page-lower h2 {
	font-weight: bold;
	font-size: 24px;
	line-height: 180%;
	margin-bottom: 16px;
}
.page-lower h3 {
	font-weight: bold;
	font-size: 16px;
	line-height: 180%;
	margin: 8px 0;
}
.page-lower .title-img {
	margin-bottom: 32px;
}
.page-lower .title-lead {
	margin-bottom: 24px;
}

/* ページヘッダー(下層hero)
---------------------------------------- */
.page-lower #page-header {
	margin: 24px 0 32px 0;
}
.page-lower #page-header h1 {
	font-weight: bold;
	font-size: 36px;
	line-height: 200%;
}

/* セクションエリア
---------------------------------------- */
.page-lower .sec-area {
	background-color: #fff;
	padding: 24px 24px 32px 24px;
	margin-bottom: 32px;
	position: relative;
	overflow: hidden;
	border-radius: 4px;
}
.page-lower .sec-area::before {
	content: "";
	display: block;
	width: 88px;
	height: 8px;
	background-color: #1F272F;
	position: absolute;
	top: 0;
	left: 0;
}
/* 左右余白無し(内部でinner使用) */
.page-lower .sec-area[data-inner="none"] {
	padding: 24px 0 32px 0;
}
.page-lower .sec-area[data-inner="none"] .sec-area-inner {
	padding: 0 24px;
}
/* 背景色無し */
.page-lower .sec-area-nocolor {
	margin-bottom: 56px;
}
/* 最後のセクション */
.page-lower > *:last-child {
	margin-bottom: 72px;
}

/* カード型
---------------------------------------- */
.page-lower .block-column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 32px;
	margin-bottom: 32px;
}
.page-lower .block-column .item {
	margin: 0;
	background-color: #fff;
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}
.page-lower .block-column .item .item-img {
	-webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s;
	text-align: center;
}
.page-lower .block-column .item .item-info {
	padding: 12px;
}
.page-lower .block-column .item .item-info .item-title {
	font-weight: bold;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
    margin: 0;
}
.page-lower .block-column .item .item-info .item-lead {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.page-lower .block-column .item .item-info .item-business {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.page-lower .block-column .item .item-info .item-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 8px;
	font-size: 12px;
    line-height: 180%;
	margin-top: 8px;
}
.page-lower .block-column .item .item-info .item-tag-list li {
    display: inline-block;
    background: #43688A;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 200%;
    color: #fff;
    padding: 0 8px;
}

/* 2列 */
.page-lower .block-column[data-column="2"] .item {
    width: calc((100% - 32px) / 2);
}
/* .page-lower .block-column[data-column="2"] .item:nth-child(2n) {
	margin-right: 0;
} */
/* 3列 */
.page-lower .block-column[data-column="3"] .item {
    width: calc((100% - 64px) / 3);
}
/* .page-lower .block-column[data-column="3"] .item:nth-child(3n) {
	margin-right: 0;
} */
/* 4列 */
.page-lower .block-column[data-column="4"] .item {
    width: calc((100% - 96px) / 4);
}
/* .page-lower .block-column[data-column="4"] .item:nth-child(4n) {
	margin-right: 0;
} */

/* リンク */
.page-lower .block-column a.item {
    background-repeat: no-repeat;
    background-position: bottom 12px right 12px;
}
.page-lower .block-column a.item:hover .item-img {
	filter: brightness(120%);
	opacity: 0.8;
}
.page-lower .block-column a.item .item-img {
	text-align: center;
}
.page-lower .block-column a.item .item-info {
	padding-bottom: 32px;
}

/* サービスリスト用 */
.page-lower .block-column[data-type="service"] a.item .item-info {
    padding-bottom: 8px;
	flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px 0;
}
.page-lower .block-column[data-type="service"] a.item .item-info .item-title {
    height: 56px;
	font-size: 20px;
    line-height: 140%;
}
.page-lower .block-column[data-type="service"] a.item .item-info .item-description {
	flex: 1;
}
.page-lower .block-column[data-type="service"] a.item .item-info .item-title-en {
    font-weight: 500;
    font-size: 12px;
    line-height: 200%;
    color: #969696;
	padding-right: 20px;
}
.page-lower .block-column[data-type="service"] a.item .item-img {
    position: relative;
}
.page-lower .block-column[data-type="service"] a.item .item-img::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
	background: linear-gradient(180deg, rgba(31, 39, 47, 0.2) 16.18%, rgba(31, 39, 47, 0.72) 100%);
}

/* 実績・事例リスト用 */
.page-lower .block-column.case-list-item a.item {
	display: block;
}

/* 資料リスト用 */
.page-lower .block-column[data-type="whitepaper"] .item .item-img {
    position: relative;
}
/* .page-lower .block-column[data-type="whitepaper"] .item .item-img .item-icon {
    font-weight: bold;
    font-size: 16px;
    line-height: 40px;
    color: #FFF;
    background: rgba(89, 100, 109, 0.8);
    padding: 0 16px;
    position: absolute;
    top: 0;
    left: 0;
} */
.page-lower .block-column[data-type="whitepaper"] .item .item-info {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.page-lower .block-column[data-type="whitepaper"] .item .item-info .item-title {
    /* margin-bottom: 54px; */
	flex: 1;
}
.page-lower .block-column[data-type="whitepaper"] .item .item-btn {
    margin: 12px auto;
}

/* リンク(サイト内) */
.page-lower .block-column[data-link="inner"] a {
	background-image: url(../images/common/icon_arrow.png);
}
/* リンク(外部) */
.page-lower .block-column[data-link="ext"] a {
	background-image: url(../images/common/icon_window.png);
}

/* セクション内最終要素の下余白削除
---------------------------------------- */
.page-lower .sec-area > *:last-child,
.page-lower .sec-area-nocolor > *:last-child {
	margin-bottom: 0 !important;
}

/*============================================================
 for tablet
*============================================================*/
@media screen and (max-width: 1024px) {
	/* カード型
	---------------------------------------- */
	/* 3列 */
	.page-lower .block-column[data-column="3"] .item {
	    width: calc((100% - 32px) / 2);
	}
	/* .page-lower .block-column[data-column="3"] .item:nth-child(3n) {
		margin-right: 32px;
	}
	.page-lower .block-column[data-column="3"] .item:nth-child(2n) {
		margin-right: 0;
	} */
	/* 4列 */
	.page-lower .block-column[data-column="4"] .item {
	    width: calc((100% - 32px) / 2);
	}
	/* .page-lower .block-column[data-column="4"] .item:nth-child(4n) {
		margin-right: 32px;
	}
	.page-lower .block-column[data-column="4"] .item:nth-child(2n) {
		margin-right: 0;
	} */
}

/*============================================================
 for sp
*============================================================*/
@media screen and (max-width: 767px) {
	/* common
	---------------------------------------- */
	.page-lower h2 {
		font-size: 20px;
		margin-bottom: 12px;
	}

	/* ページヘッダー(下層hero)
	---------------------------------------- */
	.page-lower #page-header {
		margin-bottom: 16px;
	}
	.page-lower #page-header:has(button) {
		padding-top: 56px;
	}
	.page-lower #page-header h1 {
		font-size: 24px;
		line-height: 180%;
	}

	/* カード型
	---------------------------------------- */
	.page-lower .block-column .item {
		/* margin: 0 0 32px 0; */
	}
	/* 2列 */
	.page-lower .block-column[data-column="2"] .item {
	    width: 100%;
	}
	/* .page-lower .block-column[data-column="2"] .item:nth-child(2n) {
		margin-right: 0;
	} */
	/* 3列 */
	.page-lower .block-column[data-column="3"] .item {
	    width: 100%;
	}
	/* .page-lower .block-column[data-column="3"] .item:nth-child(3n),
	.page-lower .block-column[data-column="3"] .item:nth-child(2n) {
		margin-right: 0;
	} */
	/* 3列 */
	.page-lower .block-column[data-column="4"] .item {
	    width: 100%;
	}
	/* .page-lower .block-column[data-column="4"] .item:nth-child(4n),
	.page-lower .block-column[data-column="4"] .item:nth-child(2n) {
		margin-right: 0;
	} */

}
