/* 喪中はがきの説明図 */
.nbm-zu {
	margin: 1.8em 0;
	padding: 22px 18px 16px;
	background: #fff;
	border: 1px solid #e3dfe9;
	border-radius: 8px;
	color: #2b2523;
}
.nbm-zu-title {
	font-family: "Shippori Mincho", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
	font-weight: 600;
	font-size: 1.05em;
	letter-spacing: .08em;
	text-align: center;
	margin: 0 0 14px !important;
	color: #2b2523;
}
.nbm-zu-svg { display: block; width: 100%; max-width: 520px; height: auto; margin: 0 auto; font-family: inherit; }
.nbm-zu-svg text { font-size: 15px; fill: #2b2523; text-anchor: middle; }
.nbm-zu-cap { font-size: .86em; line-height: 1.8; color: #6b6675; margin-top: 14px; padding-top: 10px; border-top: 1px solid #efecf4; text-align: left; }

/* 親等の図 */
.nbm-zu-svg .z-line line, .nbm-zu-svg .z-line polyline { stroke: #b3a7c6; stroke-width: 1.5; fill: none; }
.nbm-zu-svg .z-one rect { fill: #6a5a86; }
.nbm-zu-svg .z-one text { fill: #fff; }
.nbm-zu-svg .z-zero rect { fill: #6a5a86; }
.nbm-zu-svg .z-zero text { fill: #fff; }
.nbm-zu-svg .z-two rect { fill: #ece7f3; stroke: #c9c1d6; }
.nbm-zu-svg .z-me rect { fill: #fff; stroke: #6a5a86; stroke-width: 2; }
.nbm-zu-svg .z-me .z-l { font-weight: 700; }
.nbm-zu-svg .z-l { font-size: 15px; }
.nbm-zu-svg .z-d { font-size: 12px; opacity: .85; }
.nbm-zu-svg .z-leg text { text-anchor: start; font-size: 14px; }
.nbm-zu-svg .z-sw-one { fill: #6a5a86; }
.nbm-zu-svg .z-sw-two { fill: #ece7f3; stroke: #c9c1d6; }

/* 時期の図 */
.nbm-zu-svg .z-mon text { font-size: 15px; }
.nbm-zu-svg .z-mon-a { fill: #f5f2f9; }
.nbm-zu-svg .z-mon-b { fill: #faf9fc; }
.nbm-zu-svg .z-grid { stroke: #efecf4; stroke-width: 1; }
.nbm-zu-svg .z-t { text-anchor: start; font-size: 16px; font-weight: 700; }
.nbm-zu-svg .z-s { text-anchor: start; font-size: 14px; fill: #5d5170; }
.nbm-zu-svg .z-end { text-anchor: end; }
.nbm-zu-svg .z-b-main { fill: #6a5a86; }
.nbm-zu-svg .z-b-light { fill: #d9d2e3; }
.nbm-zu-svg .z-b-sub { fill: #b3a7c6; }
.nbm-zu-svg .z-mark { stroke: #9c93ad; stroke-width: 1.5; stroke-dasharray: 4 3; }
.nbm-zu-svg .z-dot { fill: #6a5a86; }

/* 文面の組み立て */
.nbm-zu-pwrap { display: flex; gap: 22px; align-items: flex-start; justify-content: center; }
.nbm-zu-card {
	flex: 0 0 auto;
	width: 236px;
	height: 349px;
	overflow: hidden;
	box-sizing: border-box;
	padding: 18px 14px;
	background: #fff;
	border: 1px solid #d9d2e3;
	box-shadow: 0 2px 8px rgba(80, 60, 110, .08);
	writing-mode: vertical-rl;
	display: flex;
	flex-direction: column;
	gap: 9px;
	font-family: "Shippori Mincho", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 10.5px;
	line-height: 1.5;
	letter-spacing: 0;
}
.nbm-zu-col { margin: 0 !important; padding: 0 !important; color: #2b2523 !important; line-height: 1.5 !important; font-size: 10.5px !important; letter-spacing: 0 !important; white-space: nowrap; }
.nbm-zu-col .nbm-zu-no { margin-bottom: 5px; width: 16px; height: 16px; font-size: 10px; }
.nbm-zu-addr { margin-block-start: auto !important; font-size: 10px !important; color: #6b6675 !important; align-self: flex-end; }
.nbm-zu-no {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #6a5a86;
	color: #fff;
	font-family: -apple-system, "Hiragino Sans", sans-serif;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	writing-mode: horizontal-tb;
	flex: 0 0 auto;
}
.nbm-zu-no-g { background: #b3a7c6; }
.nbm-zu-notes { flex: 1 1 260px; min-width: 240px; max-width: 340px; list-style: none !important; margin: 0 !important; padding: 0 !important; }
.nbm-zu-notes li { position: relative; padding: 0 0 12px 28px !important; margin: 0 !important; line-height: 1.6 !important; }
.nbm-zu-notes li::before { display: none !important; }
.nbm-zu-notes .nbm-zu-no { position: absolute; left: 0; top: 2px; }
.nbm-zu-notes b { display: block; font-size: .95em; color: #2b2523; }
.nbm-zu-sub { display: block; font-size: .84em; color: #6b6675; }

@media (max-width: 600px) {
	.nbm-zu { padding: 18px 10px 14px; }
	.nbm-zu-pwrap { flex-direction: column; align-items: center; }
	.nbm-zu-notes { max-width: none; width: 100%; }
}
