@charset "UTF-8";
/*
	共通
-----------------------------------------------------------------------------------------------*/
.pageCompany #ctsWrapper{
	padding-bottom: 0;
}


/*
	事業紹介
-----------------------------------------------------------------------------------------------*/
/* 医療DXのその先へ。
============================== */
.pageCompanyIndex #ctsWrapper > .interviewArea{
	width: var(--width1000);
}
.pageCompanyIndex .cmnClm .cmnClmHead{
	color: var(--colorBlack);
	font-size: max(3.2rem, calc(32 / var(--baseWidth) * 100vw));
}
.pageCompanyIndex .cmnClm .cmnClmHead span{
	color: var(--colorMain);
}
.businessTxt{
	margin-top: max(10px, calc(10 / var(--baseWidth) * 100vw));
	font-weight: var(--fwMedium);
	font-size: max(1.8rem, calc(18 / var(--baseWidth) * 100vw));
}
.pageCompanyIndex .cmnClm .cmnClmTxt{
	margin-bottom: max(30px, calc(30 / var(--baseWidth) * 100vw));
	letter-spacing: .1rem;
}

/* 事業について
============================== */
.businessFieldArea{
	margin-top: max(70px, calc(70 / var(--baseWidth) * 100vw));
	position: relative;
}
.businessFieldArea .ctsArea{
	padding-block: max(110px, calc(110 / var(--baseWidth) * 100vw)) max(60px, calc(60 / var(--baseWidth) * 100vw));
}
/* イラスト */
.businessFieldImg{
	display: flex;
	gap: max(20px, calc(20 / var(--baseWidth) * 100vw));
	justify-content: center;
	width: 100%;
	position: absolute;
	transform: translateX(-50%);
	top: min(-70px, calc(-70 / var(--baseWidth) * 100vw));
	left: 50%;
}
.businessFieldImg li img{
	height: max(140px, calc(140 / var(--baseWidth) * 100vw));
}

.businessFieldArea{
	background: var(--bgCream);
	border-radius: var(--bdrs50);
}
.businessFieldTxt{
	margin-bottom: max(30px, calc(30 / var(--baseWidth) * 100vw));
}
.detaBtn{
	margin-bottom: max(30px, calc(30 / var(--baseWidth) * 100vw));
}
/* 画像リンク（外部） */
.imgBtn{
	width: max(800px, calc(800 / var(--baseWidth) * 100vw));
	margin: 0 auto;
	border-radius: max(10px, calc(10 / var(--baseWidth) * 100vw));
	overflow: hidden;
}

/* プロダクト紹介
============================== */
.productsArea .cmnClmBox{
	gap: max(30px, calc(30 / var(--baseWidth) * 100vw));
	justify-content: center;
	padding: max(75px, calc(75 / var(--baseWidth) * 100vw)) max(65px, calc(65 / var(--baseWidth) * 100vw));
	border: 1px solid var(--colorBlack);
	border-radius: var(--bdrs50);
}
.productsTxt{
	margin-bottom: max(30px, calc(30 / var(--baseWidth) * 100vw));
}
/* 画像 */
.productsArea .cmnClmPh{
	width: max(540px, calc(540 / var(--baseWidth) * 100vw));
}
/* テキスト */
.productsArea .cmnClm .cmnClmTxt{
	font-size: max(1.5rem, calc(15 / var(--baseWidth) * 100vw));
}


/*
	会社概要
-----------------------------------------------------------------------------------------------*/
.pageProfile #ctsWrapper > .ctsArea{
	width: max(860px, calc(860 / var(--baseWidth) * 100vw));
}


/*
	代表インタビュー
-----------------------------------------------------------------------------------------------*/
.pageMessage #ctsWrapper > .ctsArea{
	width: var(--width1000);
}
.mainCts{
	margin-bottom: max(80px, calc(80 / var(--baseWidth) * 100vw));
	position: relative;
}
/* 画像 */
.messageImg{
	border-radius: max(30px, calc(30 / var(--baseWidth) * 100vw));
	overflow: hidden;
}
/* トップ テキスト */
.messageTopTxt{
	display: flex;
	gap: max(5px, calc(5 / var(--baseWidth) * 100vw));
	flex-direction: column;
	padding: max(30px, calc(30 / var(--baseWidth) * 100vw)) max(30px, calc(30 / var(--baseWidth) * 100vw)) 0;
	text-align: left;
	font-weight: var(--fwBold);
	background: #fff;
	border-radius: 0 max(30px, calc(30 / var(--baseWidth) * 100vw)) 0 0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
.messageTopTxt .ttl{
	color: var(--colorMain);
	font-size: max(3.2rem, calc(32 / var(--baseWidth) * 100vw));
}
.messageTopTxt .name{
	font-size: max(2.2rem, calc(22 / var(--baseWidth) * 100vw));
}
.messageTopTxt .name span{
	font-size: max(1.4rem, calc(14 / var(--baseWidth) * 100vw));
}
/* テキスト調整 */
.pageMessage .cmnClmCts{
	gap: 0;
}
.pageMessage .cmnClmBox + .cmnClmBox{
	margin-top: max(80px, calc(80 / var(--baseWidth) * 100vw));
}
.pageMessage .cmnClmBox .cmnClmTxt{
	letter-spacing: 0.25rem;
}
.pageMessage .cmnClmBox + .cmnClmBox:not(:has(.cmnClmHead)) .cmnClmTxt{
	margin-top: 0;
}
.pageMessage .cmnClm:has(> .cmnClmHead) > .cmnClmTxt{
	margin-top: max(20px, calc(20 / var(--baseWidth) * 100vw));
}
.pageMessage .cmnClmBox + .cmnClmBox:not(:has(.cmnClmHead)){
	margin-top: max(25px, calc(25 / var(--baseWidth) * 100vw));
}


@media screen and (width <= 812px){
	/*
		事業紹介
	-----------------------------------------------------------------------------------------------*/
	/* 医療DXのその先へ。
	============================== */
	.businessTxt{
		font-size: 1.6rem;
	}
	.pageCompanyIndex .cmnClm{
		text-align: center;
	}
	.pageCompanyIndex .cmnClm .cmnClmHead,
	.pageCompanyIndex .cmnClm .businessTxt,
	.pageCompanyIndex .cmnClm .cmnClmTxt{
		text-align: left;
	}
	.pageCompanyIndex .cmnClm .cmnClmHead{
		font-size: 2.2rem;
	}
	.pageCompanyIndex .cmnClm .cmnClmTxt{
		margin-bottom: 20px;
	}

	/* 事業について
	============================== */
	.businessFieldArea{
		margin-top: 40px;
	}
	.businessFieldArea .ctsArea{
		padding-block: 70px 50px;
	}
	/* イラスト */
	.businessFieldImg{
		gap: 10px;
		flex-wrap: wrap;
		width: 100%;
		top: -40px;
	}
	.businessFieldImg li img{
		height: 80px;
	}
	.businessFieldImg li:nth-child(5),
	.businessFieldImg li:nth-child(6){
		display: none;
	}

	.businessFieldTxt{
		margin-bottom: 20px;
		text-align: left;
	}
	/* 画像リンク（外部） */
	.imgBtn{
		width: 100%;
	}

	/* プロダクト紹介
	============================== */
	.productsArea .cmnClmBox{
		gap: 25px;
		padding: 30px 20px;
	}
	.productsTxt{
		margin-bottom: 20px;
		text-align: left;
	}
	/* 画像 */
	.productsArea .cmnClmPh{
		width: 100%;
	}
	.productsArea .cmnClmHead{
		max-width: 250px;
		margin: 0 auto;
	}
	/* テキスト */
	.productsArea .cmnClm .cmnClmTxt{
		font-size: 1.4rem;
	}


	/*
		会社概要
	-----------------------------------------------------------------------------------------------*/
	.pageProfile #ctsWrapper > .ctsArea{
		width: 100%;
	}


	/*
		代表インタビュー
	-----------------------------------------------------------------------------------------------*/
	.pageMessage #ctsWrapper > .ctsArea{
		width: 100%;
	}
	.mainCts{
		margin-bottom: 25px;
		padding-bottom: 25px;
		border-bottom: 1px solid var(--colorGrey100);
	}
	/* トップ テキスト */
	.messageTopTxt{
		gap: 5px;
		margin-top: 15px;
		padding: 0;
		border-radius: 0;
		position: relative;
	}
	.messageTopTxt .ttl{
		font-size: 2.2rem;
	}
	.messageTopTxt .name{
		font-size: 1.8rem;
	}
	.messageTopTxt .name span{
		font-size: 1.4rem;
	}
	/* テキスト調整 */
	.pageMessage .cmnClmBox + .cmnClmBox{
		margin-top: 35px;
	}
	.pageMessage .cmnClm:has(> .cmnClmHead) > .cmnClmTxt{
		margin-top: 10px;
	}
	.pageMessage .cmnClmBox + .cmnClmBox:not(:has(.cmnClmHead)){
		margin-top: 10px;
	}
}