@charset "utf-8";
html {
	scroll-behavior: smooth;
}
ol {
	list-style: none;
	padding-left: 0;
	counter-reset: main;
}
ol li {
	position: relative;
	padding-left: 1.75rem;
	counter-increment: main;
	&:before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
	}
	&:not(:first-child)::before {
		content: counter(main) ". ";
	}
}
ol li:first-child {
    padding-left: 0;
}

ol.sub {
	list-style: none;
	padding-left: 0;
}
ol.sub > li {
	position: relative;
	padding-left: 3rem;
	&:before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
	}
	&:nth-child(1):before { content: "（1）" }
	&:nth-child(2):before { content: "（2）" }
	&:nth-child(3):before { content: "（3）" }
	&:nth-child(4):before { content: "（4）" }
	&:nth-child(5):before { content: "（5）" }
	&:nth-child(6):before { content: "（6）" }
	&:nth-child(7):before { content: "（7）" }
	&:nth-child(8):before { content: "（8）" }
	&:nth-child(9):before { content: "（9）" }
	&:nth-child(10):before { content: "（10）" }
	&:nth-child(11):before { content: "（11）" }
	&:nth-child(12):before { content: "（12）" }
	&:nth-child(13):before { content: "（13）" }
	&:nth-child(14):before { content: "（14）" }
	&:nth-child(15):before { content: "（15）" }
	&:nth-child(16):before { content: "（16）" }
	&:nth-child(17):before { content: "（17）" }
	&:nth-child(18):before { content: "（18）" }
	&:nth-child(19):before { content: "（19）" }
	&:nth-child(20):before { content: "（20）" }
}

ol.sub > li > ol > li {
	position: relative;
	margin-left: 0.5rem;
	padding-left: 2rem;
	list-style: none;

	&:before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		content: none;
	}

	&:nth-child(1):before { content: "➀"; }
	&:nth-child(2):before { content: "➁"; }
	&:nth-child(3):before { content: "➂"; }
	&:nth-child(4):before { content: "➃"; }
	&:nth-child(5):before { content: "➄"; }
	&:nth-child(6):before { content: "➅"; }
	&:nth-child(7):before { content: "➆"; }
	&:nth-child(8):before { content: "➇"; }
	&:nth-child(9):before { content: "➈"; }
	&:nth-child(10):before { content: "➉"; }
}

table.appendix {
	width: 100%;
	border-collapse: collapse;
	margin-top: 1rem;
}

table.appendix th,
table.appendix td {
	border: 1px solid #000;
	padding: 0.5rem;
	text-align: left;
}

#kiyaku_end {
	text-align: right;
}
#kiyaku_end li {
	list-style: none;
}

#kiyaku_appendix table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #ddd;
	table-layout: fixed;
}
#kiyaku_appendix th, #kiyaku_appendix td {
	border: 1px solid #ddd;
	padding: 0.5rem 1rem;
	vertical-align: top;
}
#kiyaku_appendix th {
	white-space: nowrap;
	padding-right: 2rem;
}
#kiyaku_appendix ul {
	margin: 0;
	padding: 0 1rem;
}
#kiyaku_appendix dl {
	margin: 0;
	padding: 0;
}
#kiyaku_appendix dl dd:not(:last-child) {
	margin-bottom: 0.5rem;
}