/* 価格改定のお知らせ（トップページ上部）— fp-price-notice.php 用。.fp-notice 配下だけに効く */

.fp-notice {
	background: #fbf7f0;
	padding: clamp(16px, 4vw, 48px) clamp(10px, 3vw, 24px);
	color: #3d2f26;
	font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
	font-size: clamp(14px, 3.7vw, 16px);
	line-height: 1.9;
	-webkit-text-size-adjust: 100%;
}

.fp-notice *,
.fp-notice *::before,
.fp-notice *::after {
	box-sizing: border-box;
}

/* 便箋（二重枠） */
.fp-notice .fp-notice__paper {
	position: relative;
	max-width: 800px;
	margin: 0 auto;
	padding: clamp(40px, 9vw, 64px) clamp(22px, 7vw, 60px) clamp(36px, 8vw, 56px);
	background: #fff;
	border: 3px solid #6b4a35;
}

.fp-notice .fp-notice__paper::before {
	content: "";
	position: absolute;
	inset: 5px;
	border: 1px solid #9c806c;
	pointer-events: none;
}

/* 四隅の飾り */
.fp-notice .fp-notice__corner {
	position: absolute;
	width: clamp(16px, 4vw, 26px);
	height: clamp(16px, 4vw, 26px);
	border: 0 solid #6b4a35;
	pointer-events: none;
}

.fp-notice .fp-notice__corner::after {
	content: "";
	position: absolute;
	inset: 3px;
	border: 0 solid #b9a596;
}

.fp-notice .fp-notice__corner--tl { top: 16px; left: 16px; }
.fp-notice .fp-notice__corner--tr { top: 16px; right: 16px; }
.fp-notice .fp-notice__corner--bl { bottom: 16px; left: 16px; }
.fp-notice .fp-notice__corner--br { bottom: 16px; right: 16px; }

.fp-notice .fp-notice__corner--tl,
.fp-notice .fp-notice__corner--tr { border-top-width: 2px; }
.fp-notice .fp-notice__corner--bl,
.fp-notice .fp-notice__corner--br { border-bottom-width: 2px; }
.fp-notice .fp-notice__corner--tl,
.fp-notice .fp-notice__corner--bl { border-left-width: 2px; }
.fp-notice .fp-notice__corner--tr,
.fp-notice .fp-notice__corner--br { border-right-width: 2px; }

.fp-notice .fp-notice__corner--tl::after,
.fp-notice .fp-notice__corner--tr::after { border-top-width: 1px; }
.fp-notice .fp-notice__corner--bl::after,
.fp-notice .fp-notice__corner--br::after { border-bottom-width: 1px; }
.fp-notice .fp-notice__corner--tl::after,
.fp-notice .fp-notice__corner--bl::after { border-left-width: 1px; }
.fp-notice .fp-notice__corner--tr::after,
.fp-notice .fp-notice__corner--br::after { border-right-width: 1px; }

/* 本文まわり */
.fp-notice p {
	margin: 0;
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: normal;
}

.fp-notice .fp-notice__ornament {
	color: #6b4a35;
	font-size: .8em;
	letter-spacing: 1.2em;
	text-align: center;
	text-indent: 1.2em;
}

.fp-notice .fp-notice__date {
	margin-top: 1.4em;
	color: #7a6a5e;
	font-size: .95em;
	text-align: right;
}

.fp-notice .fp-notice__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 1em 0 1.6em;
	padding: 0;
	color: #4a3527;
	font-family: inherit;
	font-size: clamp(20px, 5.4vw, 27px);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .22em;
	text-align: center;
	text-transform: none;
}

.fp-notice .fp-notice__title span {
	padding-left: .22em;
}

.fp-notice .fp-notice__title::before,
.fp-notice .fp-notice__title::after {
	content: "";
	display: block;
}

.fp-notice .fp-notice__title::before {
	order: 2;
	width: min(170px, 44%);
	margin-top: 8px;
	border-top: 1px solid #b9a596;
}

.fp-notice .fp-notice__title::after {
	order: 3;
	width: min(330px, 86%);
	margin-top: 9px;
	border-top: 2px solid #6b4a35;
}

.fp-notice .fp-notice__to {
	margin-bottom: 1.4em;
	font-size: 1.1em;
}

.fp-notice .fp-notice__body p {
	margin-bottom: 1.1em;
	text-align: justify;
}

.fp-notice .fp-notice__body p.fp-notice__indent {
	text-indent: 1em;
}

/* 改定内容の囲み */
.fp-notice .fp-notice__box {
	margin: clamp(22px, 5vw, 34px) 0;
	padding: clamp(20px, 5vw, 30px) clamp(12px, 4vw, 28px);
	background: #f6efe8;
	border: 1px solid #e2d5c7;
	border-left: 4px solid #6b4a35;
	text-align: center;
}

.fp-notice .fp-notice__label {
	margin-bottom: .3em;
	color: #6b4a35;
	font-size: .95em;
	font-weight: 700;
}

.fp-notice .fp-notice__when {
	margin-bottom: 1.2em;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.6;
}

.fp-notice .fp-notice__when time,
.fp-notice .fp-notice__when span {
	display: inline-block;
}

.fp-notice .fp-notice__course {
	margin-bottom: .5em;
	font-size: 1.05em;
	font-weight: 700;
}

.fp-notice .fp-notice__prices {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: .2em 1.2em;
}

.fp-notice .fp-notice__prices s,
.fp-notice .fp-notice__prices strong {
	white-space: nowrap;
}

.fp-notice .fp-notice__prices s {
	color: #8a7b70;
	text-decoration: line-through;
}

.fp-notice .fp-notice__prices strong {
	color: #8f1d1d;
	font-size: 1.2em;
	font-weight: 700;
}

.fp-notice .fp-notice__arrow {
	color: #4a3527;
	font-size: .9em;
}

.fp-notice .fp-notice__tax {
	margin-top: .3em;
}

.fp-notice .fp-notice__closing {
	margin-top: 1.4em;
	text-align: right;
}

.fp-notice .fp-notice__sign {
	margin-top: 1.4em;
	color: #4a3527;
	font-size: 1.25em;
	font-weight: 700;
	letter-spacing: .08em;
	text-align: right;
}

/* スマホ：価格を縦に並べる */
@media (max-width: 640px) {
	.fp-notice .fp-notice__prices {
		flex-direction: column;
		align-items: center;
		gap: .1em;
	}

	.fp-notice .fp-notice__old,
	.fp-notice .fp-notice__new {
		display: flex;
		flex-direction: column;
		align-items: center;
		line-height: 1.6;
	}

	.fp-notice .fp-notice__arrow {
		transform: rotate(90deg);
	}

	.fp-notice .fp-notice__corner--tl,
	.fp-notice .fp-notice__corner--tr { top: 12px; }
	.fp-notice .fp-notice__corner--bl,
	.fp-notice .fp-notice__corner--br { bottom: 12px; }
	.fp-notice .fp-notice__corner--tl,
	.fp-notice .fp-notice__corner--bl { left: 12px; }
	.fp-notice .fp-notice__corner--tr,
	.fp-notice .fp-notice__corner--br { right: 12px; }
}
