@charset "UTF-8";
/* CSS Document */


/*
==============================

	header

==============================
*/

#header h1.logo {
	margin: 20px auto 20px 0;
}

#header h1.logo a {
	display: block;
}

#header .line {
	top: 115px;
	left: 21px;
	width: 636px;
	height: 1px;
	background: #fff;
	filter: alpha(opacity=5); /*IE*/
	-moz-opacity: 0.5; /*FF*/
	opacity: 0.5;
}

#header h2 {
	top: 120px;
	left: 21px;
	width: 500px;
	height: 30px;
	overflow: hidden;
	background: url(../img/h2_title.png) no-repeat 0 0;
}

#header h2 p {
	padding-top: 35px;
}



/*
==============================

	side

==============================
*/

#side .box {
	margin: 10px 0 10px 10px;
	padding: 10px;
	font-size: 1.2em;
	color: #fff;
	line-height: 1.5;
	background: #555;
}

#side .welcome {
	margin: 0 0 10px;
}

#side .box em {
	padding: 0 3px;
	font-size: 1.4em;
	font-weight: bold;
}

#side .box .link {
	margin: 5px 0 0;
	padding: 5px 0 0;
	border-top: 1px solid #fff;
}

#side .box a {
	color: #fff;
}

#side .box a:hover {
	color: #fff;
	text-decoration: underline;
}


#side ul.menu {
	width: 176px;
	margin: 10px 0 10px 10px;
}

#side ul.menu li {
	overflow: hidden;
	width: 176px;
	height: 20px;
	padding-top: 13px;
	padding-bottom: 8px;
	font-size: 12px;
	text-indent: 10px;
	background-color: #eef0ef;
	border-bottom: dotted 1px #999999;
}

#side ul.menu li a {
	color: #444444;
	text-decoration: none;
}

#side ul.menu li a:hover {
	text-decoration: underline;
}

#side ul.menu_bnr {
}

#side ul.menu_bnr li {
	width: 176px;
	height: 50px;
	margin: 10px 0 10px 10px;
	overflow: hidden;
}

#side ul.menu_bnr li a {
	display: block;
	width: 176px;
	height: 32px;
	padding-top: 18px;
	color: white;
	text-decoration: none;
}

#side ul.menu_bnr li a.bnr_0 {
	text-align: center;
	font-size: 14px;
}

#side ul.menu_bnr li a:hover {
}



/*
==============================

	entry

==============================
*/

.entry {
}

.entry_top {
	height: 0px;
}

.entry_body {
	width: 592px;
	padding: 0;
	min-height: 400px;
}


.error_box {
	width: 400px;
	padding-top: 50px;
	color: #c00;
	text-align: center;
}


h2.page_title {
	margin: 0 0 20px;
	padding: 10px 0px 5px 10px;
	min-height: 40px;
	height: auto !important;
	height: 40px;
	background: url(../img/entry_mark02.png) no-repeat 5px 5px;
	background-color: #eef0ef;
}

h2.page_title p {
	margin: 0 15px 0 40px;
	padding: 8px 10px 5px;
	font-size: 1.8em;
	color: #48220f;
}

h2.page_title a {
	color: #943F02;
}

h2.page_title a:hover {
	color: #48220f;
}


h2.index {
	margin: 0 0 20px;
}

h2.index p {
	margin: 0;
	padding: 0 10px 5px;
	font-size: 1.6em;
	color: #1a1a1a;
	border-bottom: 1px solid #48220f;
}

h2.index a.view {
	margin-left: 10px;
	font-size: 1.2em;
	font-weight: normal;
}

h3.detail_title {
	margin: 50px 0 10px 15px;
	border-bottom: 1px solid #48220f;
	background: #a48653;
}

h3.detail_title p {
	margin: 0;
	padding: 3px 8px;
	font-size: 1.6em;
	line-height: 1;
	color: #fff;
	font-weight: normal;
}


.entry_body .date {
	padding: 5px 5px 20px;
	font-size: 1.2em;
	text-align: right;
	font-weight: normal;
}

.entry_body .body {
	padding: 0 0 30px 15px;
	font-size: 1.2em;
	line-height: 1.5;
}

.entry_body .list_box {
	padding: 30px 0;
}

.entry_body .login_box {
	padding-left: 65px;
	padding-bottom: 50px;
	font-size: 1.2em;
	line-height: 1.5;
}

.entry_body .hw_body {
	margin: 0 0 10px 15px;
	padding: 0;
	font-size: 1.2em;
	line-height: 1.5;
}


.pre_box {
	margin: 0 0 5px;
	padding: 2px 5px;
	background: #f0dccc;
}


.entry_btm {
	height: 0px;
}



/*
----------------------
	pager
----------------------
*/

.pager_box {
	margin: 20px 0 0;
	padding: 10px;
	border-top: 1px dotted #963;
	border-bottom: 1px dotted #963;
}

.pager_box strong {
	font-size: 1.4em;
}

.pager_box em {
	margin:0 10px;
}

.pager_box .pager_navi {
	margin: 5px 0 0;
	color: #666;
	text-align: right;
}

.pager_navi b {
	color: #000;
}



/*
----------------------
	title list
----------------------
*/

dl.title_list {
}

dl.title_list dt {
	margin: 0;
	padding: 10px 10px 5px;
	font-size: 1.4em;
}

dl.title_list dd {
	margin: 0;
	padding: 5px 10px 10px;
	border-top: 1px solid #a48653;
	text-align: right;
}



/*
----------------------
	homework list
----------------------
*/

dl.hw_list {
	margin: 10px 0 0;
}

dl.hw_list dt {
	padding: 0 5px 5px;
	font-weight: bold;
	color: #411101;
	border-bottom: 1px dotted #963;
}

dl.hw_list dd {
	margin: 0;
	padding: 5px 5px 20px;
	line-height: 1.5;
}



/*
==============================

	Box

==============================
*/

.nodata {
	padding: 10px;
	border: 1px solid #a48653;
}


.red_box {
	padding: 10px;
	border: 1px solid #900;
	line-height: 1.5;
	font-size: 1.2em;
}

.tag-box {
	margin: 0 0 15px;
	border: 4px solid #7B2413;
	text-align: center;
	padding: 10px 20px;
}

.tag-box h3 {
	font-size: 2.0em;
	font-weight: bold;
}
.tag-box p {
	font-size: 1.2em;
	line-height: 1.5;
	margin-bottom: 0;
}

.tag-box.bc-red {
	border-color: #7B2413;
}

.tag-box.bc-blue {
	border-color: #5848B9;
}



/*
----------------------
	rs_msg
----------------------
*/

#rs_msg {
	/*display: none;*/
	position: absolute;
	border: 2px solid #fff;
	opacity: 0.85;
	filter: alpha(opacity=85);
	z-index: 200;
}

#rs_msg p {
	margin: 0;
	padding: 30px;
	color: #360;
	border: 2px solid #963;
	background: #ffdc99;
	font-size: 1.4em;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

#rs_msg p em {
	color: #b83c2c;
}

#rs_msg a {
	padding: 3px;
	line-height: 1;
	font-size: 0.83em;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background: #963;
}

#rs_msg a:hover {
	color: #fff;
	text-decoration: none;
	background: #900;
}


#rs_msg a.close {
	position: absolute;
	top: 5px;
	right: 5px;
}

#rs_msg a.ok {
	display: block;
	width: 100px;
	margin: 25px auto 0;
}



/*
----------------------
	point page
----------------------
*/

.point_box {
	margin: 0;
	padding: 20px 0;
}

.point_box .title {
	margin: 0 0 10px;
	padding: 0 5px;
	font-size: 1.4em;
	font-weight: bold;
}

.point_box .line {
	margin: 5px 0;
	padding: 5px;
	background: #f0dccc;
}

.point_box .line .left {
	padding-top: 5px;
}

.point_box .intro {
	padding: 10px;
	border: 1px solid #a48653;
	line-height: 1.5;
	font-size: 1.2em;
}





/*
==============================

	table

==============================
*/

.login_tb {
	margin: 0 0 30px;
}

.login_tb th,
.login_tb td {
	padding: 5px 5px 20px;
}

.login_tb th {
	text-align: right;
}


.entry_tb {
	width: 500px;
	margin: 0 0 20px;
	padding: 0;
}

.entry_tb th {
	padding: 5px;
	font-weight: normal;
	font-size: 1.2em;
	line-height: 1.3;
	color: #411101;
}

.entry_tb td {
	padding: 0 0 20px;
}

.entry_tb input {
	padding: 5px;
	}


/*
----------------------
	bs_tb
----------------------
*/

.bs_tb {
	margin: 20px auto
}

.bs_tb th,
.bs_tb td {
	border-bottom: 1px solid #963;
}

.bs_tb th {
	padding: 10px;
	font-weight: normal;
	color: #411101;
}

.bs_tb td {
	padding: 10px;
}




/*
==============================

	form

==============================
*/

input.submit_btn {
	width: 100px;
	margin: 0 10px;
}

.login_tb input.text {
	width: 230px;
}

.radio_line label {
	margin-right: 20px;
}


input.input_text {
	width: 90%;
}

textarea.input_textarea {
	width: 90%;
	height: 100px;
}

.modal-content {
    position:fixed;
    display:none;
    z-index:2;
    width:50%;
    margin:0;
    padding:10px 20px;
    border:2px solid #aaa;
    background:#fff;
}
.modal-content h4 {
    font-size: 1.6em;
}
.modal-content p {
    font-size: 1.3em;
}
.modal-overlay {
    z-index:1;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba(0,0,0,0.75);
}
