/*--------------------------------------------------*/
/* 共通 */
/*--------------------------------------------------*/

body {
	margin: 0;
	padding: 0;
}
body * {
	box-sizing: border-box;
}
.policy-page {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.04em;
	color: #2E2624;
	padding: 20px;
}
.policy-page h1 {
	font-size: 19px;
	font-weight: 500;
	line-height: 1.6;
	margin: 0 0 0.8rem 0;
}
.policy-page h2 {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	margin: 1.5rem 0 0.5rem 0;
}
.policy-page p {
	margin: 0 0 1rem 0;
}
.policy-page a {
	color: #2E2624;
	text-decoration: underline;
}
.policy-page ol {
	padding: 0;
}
.policy-page ol li {
	position: relative;
}
.policy-page > ol {
	list-style: none;
	counter-reset: item1;
}
.policy-page > ol > li {
	counter-increment: item1;
	padding-left: 3em;
}
/* 全角アラビア数字のカウンターを定義 */
@counter-style fullwidth-decimal {
  system: numeric;
  symbols: '０' '１' '２' '３' '４' '５' '６' '７' '８' '９';
}
.policy-page > ol > li::before {
	position: absolute;
	left: 0;
	top: 0;
	content: '（' counter(item1, fullwidth-decimal) '）';
}
.policy-page > ol > li > ol {
	list-style: none;
	counter-reset: item2;
}
.policy-page > ol > li > ol > li {
	position: relative;
	counter-increment: item2;
	padding-left: 1.5em;
}
.policy-page > ol > li > ol > li::before {
	position: absolute;
	left: 0;
	top: 0;
	content: counter(item2, lower-alpha) ". ";
}
@media (max-width: 575px) {
	.policy-page {
		font-size: 14px;
	}
	.policy-page h1 {
		font-size: 16px;
	}
	.policy-page h2 {
		font-size: 15px;
	}
}