@charset "utf-8";

/* ------------------------------
 松浦梱包輸送の魅力
------------------------------ */
.btn-sq.line.num a::before {
	content: "";
	position: absolute;
	inset-block: 0;
	left: 50px;
	margin: auto;
	width: 89px;
	height: 60px;
	background: url(../img/icon_num.svg) no-repeat 0 0 / cover;
}
@media screen and (max-width: 767px) {
	.btn-sq.line.num a::before {
		left: 20px;
		width: 46px;
		height: 30px;
	}
}
/* ------------------------------
 数字で見る
------------------------------ */
/*-- 数字BOX（背景あり） --*/
.numBox {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	row-gap: 30px;
	padding: 45px 35px;
	border-radius: 20px;
	background-color: rgba(215, 220, 226, 0.3);
}
.contents .numBox h4 {
	margin-bottom: 0;
}
.numBox > img,
.numBox.tal > img {
	margin-right: auto;
}
.numBox.tac > img {
	margin-inline: auto;
}
.numBox.tar > img {
	margin-left: auto;
}
/* 数字テキスト */
.text-num {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.4;
}
.text-num strong {
	display: inline-block;
  	font-size: 166.66%;
	line-height: 1;
	vertical-align: bottom;
	color: var(--red-color);
}
.text-num .normal {
	font-weight: 400;
}
/* ドーナツグラフ */
.chart-do .imgBox {
	position: relative;
}
.chart-do .imgBox > p {
	width: fit-content;
	height: fit-content;
	position: absolute;
	inset: 0;
	margin: auto;
}
.chart-do .imgBox > p.text-num {
	font-size: 3.2rem;
}
.chart-do.type01 .imgBox > p,
.chart-do.type01 .imgBox > p strong {
	color: #5383bd;
}
.chart-do.type02 .imgBox > p,
.chart-do.type02 .imgBox > p strong {
	color: #e34d58;
}
@media print, screen and (min-width: 768px) {
	/*-- 数字BOX --*/
	.w1-2.bgBox,
	.flexBox.div2 .bgBox,
	.w1-2.numBox,
	.flexBox.div2 .numBox {
		padding-block: 55px;
	}
	/* 数字テキスト */
	.w1-4.bgBox p.text-num,
	.flexBox.div4 .bgBox p.text-num,
	.w1-4.numBox p.text-num,
	.flexBox.div4 .numBox p.text-num {
		font-size: 2.6rem;
	}
	.numBlock {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr 1fr;
		gap: 45px 4.21%;
		min-height: 440px;
	}
	.cms_block.numBlock::after {
		content: none;
	}
	.numBlock > .numBox:first-child {
		grid-row: 1 / 3;
	}
	.numBlock > .numBox:not(:first-child) {
		justify-content: center;
	}
}
@media screen and (max-width: 767px) {
	.contents h2 strong {
		display: block;
	}
	/*-- 数字BOX --*/
	.numBox {
		row-gap: 22px;
		padding: 25px 20px;
		border-radius: 16px;
	}
	.numBox:not(:last-child) {
		margin-bottom: 30px;
	}
	.flexBox.div2 .numBox .imgBox img,
	.numBox.w1-2 .imgBox img {
		width: auto;
		max-height: 85px;
	}
	/* 数字テキスト */
	.text-num {
		font-size: 1.8rem;
	}
	/* ドーナツグラフ */
	.chart-do .imgBox img {
		max-width: 280px;
	}
	.chart-do .imgBox > p.text-num {
		font-size: 2.6rem;
	}
	.w1-4.bgBox .imgBox,
	.flexBox.div4 .bgBox .imgBox,
	.w1-4.numBox .imgBox,
	.flexBox.div4 .numBox .imgBox {
		padding-inline: 12%;
	}
	.sp_img105 img {
		width: 105px;
		height: auto;
	}
}
