/* =========================
   会社概要FV
========================= */
.about-fv{
	position:relative;
	width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	background:var(--green2);
	padding:56px 20px;
	overflow:hidden;
}

.about-fv__inner{
	position:relative;
	max-width:1100px;
	margin:0 auto;
	z-index:1;
}

/* 透かしロゴ */
.about-fv__watermark{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	pointer-events:none;
	z-index:0;
}

.about-fv__watermark img{
	display:block;
	height:auto;
	width:auto;
	max-width:none;
	max-height:220px;
	opacity:.06;
	filter:brightness(0) invert(1);
}

/* 左ライン＋文字 */
.about-fv__copy{
	position:relative;
	padding-left:26px;
	z-index:1;
}

.about-fv__copy::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	width:2px;
	height:60px;
	background:rgba(255,255,255,.7);
	transform:translateY(-50%);
	border-radius:999px;
}

/* タイトル */
.about-fv__title{
	margin:0;
	font-size:clamp(26px, 3.2vw, 38px);
	font-weight:800;
	line-height:1.3;
	letter-spacing:.04em;
	color:#fff;
}

.about-fv__sub{
	margin:8px 0 0;
	font-size:11px;
	font-weight:700;
	letter-spacing:.22em;
	text-transform:uppercase;
	color:rgba(255,255,255,.75);
}

@media screen and (max-width: 900px){
	.about-fv{
		padding:42px 16px;
	}

	.about-fv__watermark img{
		width:min(46vw, 220px);
		opacity:.05;
	}

	.about-fv__copy{
		padding-left:20px;
	}

	.about-fv__copy::before{
		height:50px;
	}

	.about-fv__title{
		font-size:clamp(22px, 7vw, 30px);
	}

	.about-fv__sub{
		font-size:10px;
		letter-spacing:.18em;
	}
}


/* =========================
   会社概要導入
========================= */
.about-content{
	padding:72px 20px 96px;
}

.about-content__inner{
	max-width:900px;
	margin:0 auto;
}

.about-head{
	text-align:center;
	margin-bottom:42px;
}

.about-head__lead{
	margin:0;
	font-size:clamp(22px, 2.8vw, 30px);
	font-weight:800;
	line-height:1.7;
	letter-spacing:.03em;
	color:#1d2b21;
}

@media screen and (max-width: 900px){
	.about-content{
		padding:56px 16px 74px;
	}

	.about-head{
		margin-bottom:30px;
	}

	.about-head__lead{
		font-size:clamp(20px, 6vw, 26px);
		line-height:1.6;
	}
}


/* =========================
   会社概要ブロック
========================= */
.about-block{
	margin-bottom:34px;
	padding:32px 32px 28px;
	background:#fff;
	border:1px solid #e3e7de;
	border-radius:22px;
	box-shadow:0 8px 20px rgba(0,0,0,.035);
}

.about-block:last-child{
	margin-bottom:0;
}

.about-block__title{
	margin:0 0 18px;
	font-size:clamp(24px, 2.2vw, 30px);
	font-weight:800;
	line-height:1.45;
	letter-spacing:.03em;
	color:#223127;
}

.about-block__body p{
	margin:0 0 14px;
	font-size:15px;
	line-height:2;
	color:#5d645d;
}

.about-block__body p:last-child{
	margin-bottom:0;
}

@media screen and (max-width: 900px){
	.about-block{
		margin-bottom:22px;
		padding:22px 16px 20px;
		border-radius:18px;
	}

	.about-block__title{
		margin-bottom:14px;
		font-size:22px;
		line-height:1.4;
	}

	.about-block__body p{
		margin-bottom:12px;
		font-size:14px;
		line-height:1.85;
	}
}


/* =========================
   会社情報テーブル
========================= */
.about-table{
	display:flex;
	flex-direction:column;
	border-top:1px solid #e3e7de;
}

.about-table__row{
	display:grid;
	grid-template-columns:160px 1fr;
	gap:18px;
	padding:16px 0;
	border-bottom:1px solid #e3e7de;
}

.about-table__head{
	font-size:14px;
	font-weight:800;
	line-height:1.8;
	color:#35513e;
}

.about-table__data{
	font-size:15px;
	line-height:1.9;
	color:#5d645d;
	word-break:break-word;
}

.about-table__link{
	color:var(--green2);
	font-weight:700;
	text-decoration:none;
	border-bottom:1px solid rgba(53,81,62,.25);
	transition:opacity .25s ease, border-color .25s ease;
}

.about-table__link:hover{
	opacity:.75;
	border-color:rgba(53,81,62,.5);
}

@media screen and (max-width: 900px){
	.about-table__row{
		grid-template-columns:1fr;
		gap:6px;
		padding:14px 0;
	}

	.about-table__head{
		font-size:13px;
		line-height:1.7;
	}

	.about-table__data{
		font-size:14px;
		line-height:1.8;
	}
}