body {
	font-family: sans-serif;
	margin-left: 1em;
	background-color: #ffffff;
}

a:link {
	color: rgb(0, 0, 255);
}
a:visited {
	color: rgb(136, 0, 255);
}
a:active {
	color: rgb(255, 0, 255);
}
a:hover {
	color: rgb(255, 0, 0);
}

h1
{
	color: #292929;
	background-color: #fcd98f;
	border-bottom: solid 6px #df9700;
	border-radius: 10px;
	box-shadow: 0 4px 5px rgba(0, 0, 0, .4);
	padding: 10px;
	}

h2
{
	position: relative;
	padding: 0.2em 0.5em;
	background: -moz-linear-gradient(to right, rgb(255, 124, 111), #ffc994);
	background: -webkit-linear-gradient(to right, rgb(255, 124, 111), #ffc994);
	background: linear-gradient(to right, rgb(255, 124, 111), #ffc994);
	color: white;
	font-weight: lighter;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.56);
	color: #000000;
	background-color: #cccc00;
	font-size: x-large;
	margin-top: 3em;
	margin-left: 0em;
}


h3
{
	color: #000090;
	font-family: sans-serif;
	font-size: medium;
	margin-top: 2em;
	margin-left: 0em;

	border-bottom:dotted;
	border-color:#FF0000;
	border-width:1px;
}

h4
{
	color: rgb(0, 0, 0);
	font-family: sans-serif;
	font-size: medium;
	margin-top: 1.5em;
	margin-left: 0em;
}


h5
{
	color: rgb(0, 0, 0);
	font-family: sans-serif;
	font-size: medium;
	margin-top: 1.5em;
	margin-left: 0em;
}



pre {
	background-color:#f8f8f0;
	line-height: 100%;
	text-indent: 0px;

	overflow: auto;
	white-space: pre-wrap;       /* css-3 */
	word-wrap: break-word;       /* Internet Explorer 5.5+ */
	border : 2px solid #000000;
	padding: 0.25em;
}


code
{
	color: blue;
	line-height: 125%;
	text-indent: 0em;
	font-family: Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;
	/*font-family: monospace;*/
	font-size: 100%;
	margin-right: 0.0em;
	margin-left: 0.0em;
	font-weight: bolder; 
}


code.prettyprint
{
	line-height: 125%;
	text-indent: 0em;
	font-family: Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;
	overflow: auto;
	resize: horizontal;
	font-weight: normal; 
}

.prettyprint ol.linenums > li 
{
	list-style-type: decimal;  /* 行番号を1行ずつ表示 */
	border-left:solid 2px #888888;  /* 区切り線の太さや色など */
	margin-left: .5em;
	padding-left:0.5em; /* 線と本文の間隔の調整 */
	color: #000000; /* 行番号の色 */
  
}

p
{
	line-height: 150%;
	margin: 1em;
}



.quiz
{
	line-height: 150%;
	margin: 1em;
	color: black;
	background-color : #AAFFDD
}


.hw
{
	line-height: 150%;
	margin: 1em;
	color: black;
	background-color : #FFFF00
}

table, td, tr, th
{
	border: 1px #000000 solid;
	color: black;
	line-height: 150%;
	margin-top: 1em;
	margin-left: 1em;
	border-collapse: collapse;
	padding: .5em;
}






input {
  display: none;
}

label {
  cursor: pointer;
  display: inline-block;
  padding: 5px 20px;
  border-radius: 4px;
  background: #0090aa;
  color: #ffffff;
  -webkit-transition: 0.1s;
  transition: 0.1s;
}

label:hover {
  background: #8090aa;
}

.panel {
  -webkit-transition: .5s ease;
  transition: .5s ease;
  height: 0;
  overflow: hidden;
  margin-top: 0px;
  padding: 0;
}

input:checked + .panel {
  height: auto;
  padding: 5px;
}









.reference {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}
.reference .title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #ffffff;
    color: #95ccff;
    font-weight: bold;
}
.reference .p {
    margin: 0; 
    padding: 0;
}





.box28 {
    position: relative;
    margin: 2em 0;
    padding: 25px 10px 7px;
    border: solid 2px #FFC107;
}
.box28 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 17px;
    background: #FFC107;
    color: #ffffff;
    font-weight: bold;
}
.box28 p {
    margin: 0; 
    padding: 0;
}





