@charset "utf-8";

body {
	background: #fff;
}

/* ---------- mainvisual ---------- */

#mainvisual {
	background: url("../img/mainvisual_bg.jpg") center top no-repeat;
	height: 217px; /* 434px */
	background-size: 1440px auto;
}

h1 {
	margin: 0;
	padding: 0;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	width: 100%;
}

@media screen and (max-width: 768px) {
	/* スマホのタイトルは画像ではなく文字で表示（3行） */
	#mainvisual {
		height: auto;
		background: none;
		padding: 56px 34px 0;
		text-align: left;
	}
	.notice_tag {
		display: inline-block;
		padding: 6px 26px;
		background: #e6f4f4;
		border-radius: 30px;
		color: #33373b;
		font-size: 24px;
		line-height: 1.6;
	}
	h1 {
		margin-top: 28px;
		color: #24272a;
		font-size: 36px;
		line-height: 1.55;
		font-weight: bold;
		text-indent: 0;
		white-space: normal;
		overflow: visible;
	}
}

/* ---------- 本文（テキスト） ---------- */

.notice {
	text-align: left;
	color: #33373b;
	font-size: 15px;
	line-height: 2.1;
	padding-top: 56px;
}

#sp05 {
	padding-bottom: 96px;
}

.notice_wrap {
	width: 720px;
	margin: 0 auto;
}

.notice p {
	margin: 0 0 22px;
}

.notice_wrap > p:last-child,
.notice_box > :last-child,
.notice_contact > :last-child {
	margin-bottom: 0;
}

.notice .notice_info {
	font-size: 14px;
	line-height: 1.8;
	margin-bottom: 36px;
}

.notice h2 {
	margin: 0 0 22px;
	padding: 10px 20px;
	background: #e6f5f3;
	border-radius: 10px;
	color: #24272a;
	font-size: 19px;
	line-height: 1.6;
	font-weight: bold;
}

.notice h3 {
	margin: 28px 0 12px;
	color: #33373b;
	font-size: 16px;
	line-height: 1.7;
	font-weight: bold;
}

.notice strong,
.notice .notice_label {
	font-weight: bold;
}

.notice ul {
	margin: 0;
	padding-left: 1.2em;
}

.notice a {
	color: #1f6f8b;
	overflow-wrap: anywhere;
}

.notice a:hover {
	color: #16536a;
}

/* 薄い色の枠 */
.notice_box {
	background: #f6f8f9;
	border-radius: 12px;
	padding: 20px 24px;
	line-height: 1.9;
}

.notice_box p {
	margin-bottom: 14px;
}

.notice_box .notice_label {
	margin-bottom: 0;
}

.notice_caution {
	background: #fff6ee;
}

/* お問い合わせ先 */
.notice_contact {
	border: 1px solid #e3e6e9;
	border-radius: 12px;
	padding: 24px;
	margin-bottom: 32px;
}

.notice .notice_contact h2 {
	margin: 0 0 8px;
	padding: 0;
	background: none;
	border-radius: 0;
	font-size: 17px;
}

.notice_contact .notice_label {
	margin-bottom: 0;
}

/* ---------- スマホ（750px基準） ---------- */

@media screen and (max-width: 768px) {
	.notice {
		font-size: 28px;
		line-height: 1.8;
		padding-top: 56px;
	}
	#sp05 {
		padding-bottom: 96px;
	}
	.notice_wrap {
		width: auto;
		margin: 0 34px;
	}
	.notice p {
		margin-bottom: 28px;
	}
	.notice .notice_info {
		font-size: 24px;
		margin-bottom: 36px;
	}
	.notice h2 {
		margin-bottom: 28px;
		padding: 16px 26px;
		border-radius: 16px;
		font-size: 32px;
		line-height: 1.5;
	}
	.notice h3 {
		margin: 36px 0 14px;
		font-size: 29px;
	}
	.notice_box {
		border-radius: 20px;
		padding: 34px 36px;
	}
	.notice_box p {
		margin-bottom: 24px;
	}
	.notice_contact {
		border-width: 2px;
		border-radius: 20px;
		padding: 36px;
		margin-bottom: 44px;
	}
	.notice .notice_contact h2 {
		margin-bottom: 12px;
		font-size: 30px;
	}
}
