hr, img {
	border: 0
}

*,
:after,
:before {
	box-sizing: border-box
}

html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	background-color: #fcfcfc;
}

body {
	margin: 0;
	line-height: 1.4;
	color: #222;
	padding-top: 0;
	margin-bottom: 1em;
	font-family: sans-serif;
	font-size: medium;
}

img {
	vertical-align: middle;
	display: block;
}

.cn img {
	padding-top: 10px;
	padding-bottom: 10px;
	max-width: 100%;
}

hr {
	height: 0;
	box-sizing: content-box;
	margin: 21px 0;
	border-top: 1px solid #c0c0c0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 500;
	line-height: 1.1;
	color: #000
}

h1,
h2,
h3 {
	margin: 32px 0 6px
}


.hdt a,
.hdt a:hover {
	font-family: "Helvetica Neue", sans-serif;
	font-size: 50px;
	font-weight: bold;
	letter-spacing: -.03em;
	vertical-align: middle;
	margin-left: 5px;
	color: #000;
	text-decoration: none;
	border-bottom: none;
	line-height: .9em
}

img#db {
	vertical-align: middle;
	border: none;
	height: 60px;
	width: 60px;
	padding: 1px;
	margin: 0;
	display: inline;
}

h1#title {
	font-size: 2.2em;
	max-width: 100%;
}

.full-width {
	max-width: 100%;	
}

h1 {
	font-size: 1.8em;
}

h2 {
	font-size: 1.4em;
}

h3 {
	font-size: 1.1em;
}


p {
	margin: 0.5em 0 1em;
	text-align: justify;
  	text-justify: inter-word;
}

p, h1, h2, h3, h4, h5 {
	max-width: 800px;
}

ol,
ul {
	margin: 0 0 10px;
	max-width: 800px;
}

code, pre {
	font-family: 'Source Code Pro',Monaco,Lucida Console,monospace;
}

code {
	white-space: nowrap;
}

pre, pre code {
	overflow: auto;
	white-space: pre;
	display: block;
	line-height: 1.4;
	word-break: break-all;
	word-wrap: break-word;
}

div.highlight {
	margin: 0.8em 0 1.4em 0;
	padding: 0.6em 0.5em 0.4em 0.5em;
	border: 1px solid #c0c0c0;
	max-width:fit-content;
}

.cn {
	margin-right: auto;
	margin-left: auto;
    border: 1px solid #ccc;
    background-color: white;
   	padding: 0 1em 2em 1em;
}

.cn:before,
.cn:after {
	display: table;
	content: " "
}

.cn:after {
	clear: both
}

.row:before,
.row:after {
	display: table;
	content: " "
}

.row:after {
	clear: both
}

.c2,
.c3,
.c4,
.c5,
.c6,
.c7,
.c8,
.c9,
.c10,
.c11,
.c12 {
	position: relative;
	min-height: 1px;
	padding: 0 15px 0 15px
}

a {
	background: transparent;
	text-decoration: none;
	color: #0645ad;
}

a:hover {
	text-decoration: none;
	color: ##0645ad;
}

h1>a, h2>a, h3>a, .sns>a {
	color: #666;
	border-bottom: 1px dotted;
}

.sns {
	font-family: "Helvetica Neue", sans-serif;
	font-size: 1.3em;
}

.hd {
	margin: 20px 0 15px 0
}

.hd>a {
	border-bottom: none
}



.zero {
	color: #FFB27C;
}


.bk {
	margin: 0 7px 0 7px
}

.author_date {
	font-style: italic;
	margin-bottom: 2em;
}

table {
  border-collapse: collapse;
  overflow: auto;
  display: block;
  max-width: fit-content;
}

th, td {
  text-align: left;
  padding: 8px;
  border: 1px solid grey;
}

tr:nth-child(even) {background-color: #f2f2f2;}

th {
	background: black;
	color: white;
	text-align: left;
}


blockquote {
    border-left: 4px solid #aaa;
    padding-left: 10px;
    font-family: "Helvetica Neue"
}


.collapse {
  display: block;
  max-height: 400px;
  overflow: hidden;
  transition: max-height .1s cubic-bezier(0, 1, 0, 1);
}

.show {
  display: block;
  overflow: auto;
  max-height: 5000em;
  transition: max-height .5s ease-in-out;
}

button.collapser {
}

div.index {
	font-size: 1.15em;
}

div#toc {
	border: 1px solid #c0c0c0;
	padding: 1em;
    width:fit-content;
	color: black;
	background-color: #fcfcfc;
}

div#toc a {
}

div#toc-header {
	font-weight: bold;
	text-align: center;
}