/*=========================*/
/*Reset*/
/*=========================*/
html, body, h1, h2, h3, h4, h5, h6,
p, address, ul, ol, li, dl, dt, dd,
table, th, td, form, header, article, footer, section{
	font-size: 100%;
	line-height: 1;
	margin: 0;
	padding: 0;
	list-style: none;
}

body {
	font-size: 90%;
	font-family: sans-serif;
	color: #444;
	background: url(img/bg_body.png);
	background-attachment: fixed;
}

div#page {
	background: url(img/bg_head.png) center top;
	background-repeat: no-repeat;
	background-attachment: fixed;
}


div#main {
	width: 770px;
	background: #fff;
	margin: 0 auto 20px;
	padding: 10px 35px 20px 45px;
	box-shadow: 0.5px 0.5px 5px #ccc;
	border-radius: 10px;
}


p,li,td {
line-height: 1.8;
}

h1 {
	text-align: center;
	padding:  20px 0 50px 0;
}

h2.title {
background: url(img/line.png) no-repeat left bottom;
padding: 20px 0 10px 0;
}

h2.headding {
margin: 0 0 10px 0;
}

.headding span{
font-weight: bold;
line-height: 1;
display: inline-block;
color: #fff;
background: #99cc33;
border-radius: 20px;
padding: 5px 20px;
margin: 20px 0 0 0;
}


h3 {
color: #407a06;
margin: 20px 0 5px 0;
}
h4 {
color:#ff6600;
margin: 20px 0 5px 0;
}

h4:first-child{
margin: 0;
}


h5 {
margin: 20px 0 0 0;
}

.clear {
clear: both;
}

/*Photo*/
div.photo {
float: right;
max-width: 340px;
}

p.photo {
float: right;
width: 200px;
height: 150px;
background: url(img/bg_photo.png);
margin: 10px 10px 0 20px;
}

p.photo2 {
float: right;
width: 320px;
height: 210px;
background: url(img/bg_photo.png);
margin: 20px 10px 0 20px;
}

div.photo img {
margin: -10px 0 0 -10px;
border: 1px solid #ccc;
}

div.photoLeft {
width : 340px;
float: left;
padding: 0 0 30px 30px;
}
div.photoLeft p.photo {
float: left;
width: 300px;
height: auto;
background: url(img/bg_photo.png);
margin: 10px 10px 0 20px;
}

div.photoLeft img {
margin: -10px 0 0 -10px;
border: 1px solid #ccc;
}


div.photolist div.right {
width: 320px;
text-align: center;
font-size: 80%;
margin: 0 0 0 400px;
}
div.photolist div.left {
width: 320px;
text-align: center;
font-size: 80%;

float: left;
margin: 0 0 0 40px;
}
div.photolist div p.photo {
width: 300px;
height: 225px;
background: url(img/bg_photo.png);
margin: 40px 10px 0 20px;
}
div.photolist div p.photo img {
margin: -10px 0 0 -20px;
border: 1px solid #ccc;
}

div.photoListSpace+div.photoListSpace {
margin: 40px 0 0 0;
}
div.photoListSpace div p.photo {
margin: 10px 10px 20px 20px;
}


.point {
border: 1px solid #ffb114;
padding: 5px; 
margin: 5px 0;
background: #fff6cc;
}

div#main p.lead {
	color: #fff;
	padding: 5px 5px 5px 10px;
	margin:  -10px -35px 0 -45px;
	background: #99cc33;
	border-radius: 5px 5px 0 0;
}

p.name {
text-align: right;
}

table,th,td {
border: solid 1px #99cc33;
border-collapse: collapse;
padding: 5px;
margin: 20px 0;
vertical-align: top;
}

th {
color: #fff;
background: #99cc33;
border-right: solid 1px #fff;
}
th:last-child {
border-right: solid 1px #99cc33;
}
th.math {
width: 200px;
}

th.plan {
width: 335px;
}

td {
border-top:dotted 1px #99cc33;
border-bottom:dotted 1px #99cc33;
}

td p {
margin: 0 0 0 1em;
}

td table,
td table th,
td table td {
border: none;
margin: 0;
padding: 2px;
}
td table {
width: 100%;
}
td.grade {
}

td.page {
text-align: right;
width: 2em;
}
td.chapter {
white-space: nowrap;
}

ul li {
text-indent: -1em;
margin: 0 0 0 2em;
}
ul li:before {
content: "・";
}

ul li.view:before {
content: "○";
}

ul li.caution:before {
content: "※";
}

ul.pagelink {
background: url(img/line.png) no-repeat;
padding: 10px 0 0 0;
margin: 60px 0 0 0;
}

ul.pagelink li:before {
content: url(img/icon.png);
padding: 0 5px 0 0;
}

td ul li {
margin: 0 0 0 1em;
}

td dl dt {
line-height: 1.8;
float: left;
width: 2em;
}

td dl dd {
line-height: 1.8;
margin: 0 0 0 2em;
}

td dl.wide dt {
width: 4em;
}

td dl.wide dd {
margin: 0 0 0 4em;
}


.balloon {
	text-align: left;
	position: relative;
	margin: 20px 60px 0 40px;
	padding : 5px;
	border: 1px solid #444444;
	border-radius: 5px;
}
.balloon:after,
.balloon:before {
bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.balloon:after {
	border-color: rgba(255, 255, 255, 0);
	border-bottom-color: #fff;
	border-width: 10px;
	margin-left: -10px;
}
.balloon:before {
	border-color: rgba(68, 68, 68, 0);
	border-bottom-color: #333;
	border-width: 11px;
	margin-left: -11px;
}

.balloonsmall {
	margin: 10px 60px 0 370px;
	}


.balloonLeft {
	position: relative;
	margin: 50px 60px 0 370px;
	padding : 5px;
	border: 1px solid #444444;
	border-radius: 5px;
}
.balloonLeft:after, .balloonLeft:before {
right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.balloonLeft:after {
	border-color: rgba(255, 255, 255, 0);
	border-right-color: #fff;
	border-width: 10px;
	margin-top: -10px;
}
.balloonLeft:before {
	border-color: rgba(68, 68, 68, 0);
	border-right-color: #333;
	border-width: 11px;
	margin-top: -11px;
}
