@charset "UTF-8";

/*================
事業紹介
================*/

/* MV（PC: 376 / SP: 542）
----------------------------------------------------------*/
#activities .mv-visual img {
	object-position: center center;
}
#activities .mv-wrap + .section {
	margin-top: 0;
}
#activities .sec-activities-intro + .sec-activities-group {
	margin-top: 0;
}
#activities .activities-offer-root {
	display: contents;
}
#activities .main > .sec-contact {
	margin-top: 160px;
}
#activities .bc-wrap.sp-mode-01 + .sec-contact {
	margin-top: 0;
}
#activities .section + .section{
	margin-top: 0;
}

/* リード＋事業図
----------------------------------------------------------*/
/* Figma: Mask group 5482:13216 / 1545×1365 @ y=215（タイトル〜事業図末尾） */
#activities .sec-activities-intro {
	position: relative;
	padding-top: 0;
	padding-bottom: 160px;
}
#activities .sec-activities-intro::before {
	content: "";
	position: absolute;
	z-index: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	aspect-ratio: 1600 / 1365;
	background: url(/imgs/activities/img_activities_bg.png) no-repeat center bottom / 100% 100%;
	pointer-events: none;
}
#activities .sec-activities-intro > .inner-1320 {
	position: relative;
	z-index: 1;
	gap: 0;
}
#activities .activities-intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	width: 100%;
}
#activities .activities-intro-graphic {
	margin: 0 0 40px;
}
#activities .activities-intro-graphic img {
	display: block;
	width: 375px;
	max-width: 100%;
	height: auto;
}
#activities .activities-intro-lead {
	margin: 0;
	max-width: 513px;
	position: relative;
	z-index: 1;
	color: #222;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.8;
}
#activities .activities-map {
	margin: -50px 0 0;
	width: 100%;
}
#activities .activities-map img {
	display: block;
	width: 100%;
	height: auto;
}

/* 事業グループ
----------------------------------------------------------*/
#activities .sec-activities-group {
	padding-top: 80px;
	padding-bottom: 80px;
}
#activities .sec-activities-care,
#activities .sec-activities-society {
	background-color: #F7F9F4;
}
#activities .sec-activities-group > .inner-1320 {
	gap: 80px;
}
#activities .activities-group-head {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 40px; /* Figma: 数字下端(1751) → 説明(1791) */
	width: 100%;
}
#activities .activities-group-title {
	display: flex;
	align-items: center;
	gap: 30px; /* Figma: 01右端(226) → タイトル(256) */
}
#activities .activities-group-num {
	margin: 0;
	color: #447D1A;
	font-size: 65px;
	font-weight: 300;
	line-height: 1.4;
}
#activities .activities-group-ttl {
	margin: 0;
	color: #447D1A;
	font-size: 42px;
	font-weight: 600;
	line-height: 1.4;
}
#activities .activities-group-lead {
	margin: 0;
	max-width: 644px;
	color: #222;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.8;
}
#activities .activities-card-list {
	width: 100%;
}
#activities .activities-card-list .col-box.type-img .col-box-body {
	gap: 20px;
}
#activities .activities-card-list .col-box.type-img .ttl-03 {
	color: #447D1A;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
}
#activities .activities-card-list .col-box.type-img .ttl-03 > .small{
	font-size: 80%;
}
#activities .activities-card-list .col-box.type-img .txt-01 {
	font-weight: 300;
	line-height: 1.8;
}
#activities .activities-card-list .list-02 {
	margin: 0;
}
#activities .activities-note {
	margin: 0;
	color: #222;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.8;
}
/* #activities .sec-activities-group.type-medical .col-box.type-img {
	background-color: #F7F9F4;
} */
#activities .sec-activities-medical{
	background-color: #F1F6EB;
}
#activities .sec-activities-society{
	background-color: #EAF2E0;
}
/* SP
----------------------------------------------------------*/
@media only screen and (max-width: 768px) {
	#activities .main > .bc-wrap.sp-mode-01{
		margin-top: 2.605vw;
	}
	/* SPデザインはヒーロー画像なし（タイトル開始 y=392） */
	#activities .mv-visual {
		display: none;
	}
	#activities .mv-inner {
		min-height: 0;
		padding-top: calc(51.042vw - var(--header-height)); /* 392 */
	}
	#activities .mv-inner .page-head .ttl-01 {
		margin-bottom: 16.407vw;
	}
	#activities .mv-wrap + .section {
		margin-top: 0;
	}
	#activities .main > .sec-contact,
	#activities .bc-wrap.sp-mode-01 + .sec-contact {
		margin-top: 0;
	}

	#activities .sec-activities-intro + .sec-activities-group {
		margin-top: 0;
	}

	/* Figma SP: Rectangle 321 / 768×1391 @ y=537（画像 1536×2782 = 2x） */
	#activities .sec-activities-intro {
		padding-top: 0;
		padding-bottom: 32.553vw;
	}
	#activities .sec-activities-intro::before {
		aspect-ratio: 768 / 1391;
		background-image: url(/imgs/activities/img_activities_bg_sp.png);
		background-size: 100% 100%;
	}
	#activities .sec-activities-intro > .inner-1320 {
		gap: 0;
	}
	#activities .activities-intro-graphic {
		margin-bottom: 7.813vw; /* 60 */
	}
	#activities .activities-intro-graphic img {
		width: 78.125vw; /* 600 */
	}
	#activities .activities-intro-lead {
		max-width: none;
		margin-bottom: 10.417vw; /* 80 */
		font-size: 4.167vw; /* 32 */
		line-height: 1.9;
	}
	#activities .activities-map {
		margin-top: 0;
	}

	#activities .sec-activities-group {
		padding-top: 19.531vw; /* 150 */
		padding-bottom: 19.531vw;
	}
	#activities .sec-activities-group > .inner-1320 {
		gap: 19.532vw;
	}
	#activities .activities-group-head {
		gap: 7.813vw; /* 60: タイトル下端(2286) → 説明(2346) */
	}
	#activities .activities-group-title {
		flex-direction: column;
		align-items: flex-start;
		gap: 0; /* Figma: 01下端とタイトル上端が接する */
	}
	#activities .activities-group-num {
		font-size: 10.417vw; /* 80 */
	}
	#activities .activities-group-ttl {
		font-size: 8.333vw; /* 64 */
		line-height: 1.5;
	}
	#activities .activities-group-lead {
		max-width: none;
		font-size: 4.167vw; /* 32 */
		line-height: 1.9;
	}
	#activities .activities-card-list {
		gap: 7.813vw; /* 60 */
	}
	#activities .activities-card-list .col-box.type-img .col-img {
		height: 52.083vw; /* 400 */
	}
	#activities .activities-card-list .col-box.type-img .col-box-body {
		gap: 5.208vw; /* 40 */
		padding: 7.813vw; /* 60 */
	}
	#activities .activities-card-list .col-box.type-img .ttl-03 {
		font-size: 5.208vw; /* 40 */
		line-height: 1.5;
	}
	#activities .activities-card-list .col-box.type-img .txt-01 {
		font-size: 4.167vw; /* 32 */
		line-height: 1.9;
	}
	#activities .activities-card-list .list-02 {
		font-size: 4.167vw; /* 32 */
		line-height: 1.3;
		padding-left: 6.25vw; /* 48 */
	}
	#activities .activities-card-list .list-02 li + li {
		margin-top: 5.208vw; /* 40 */
	}
	#activities .activities-note {
		font-size: 3.646vw; /* 28 */
		line-height: 1.9;
	}
}
