@charset "utf-8";

.btn{cursor:pointer;}
.hide{
	display:none !important;visiblity:hidden;
	
}

.u_bar{border-bottom:2px solid #96c22d;display:inline-block;}
/* mobile START kouno */
@media only screen and (max-width:768px){#sidebar h3{font-size:12px}}

.pc_only{display:inline-block;}
.mb_only{display:none;}
@media only screen and (max-width: 767px){
	th{max-width:4em !important}
	body{background:#fff !important;;}
	body img{max-width:100%;}
	body #header{height:70px;border-bottom:2px solid #704a97;}
	body #header img{width:60%;height:auto;}
	body #header p img{width:180px;}
	#mainnav,#mainImage{display:none;}
	#header,#wrapper,.inner{max-width:90vw;width:100%;margin:0 auto;}
	body #sidebar{position:fixed;right:0;width:240px;background:rgba(255,255,255,0.9);transition:0.2s;
		padding:50px 15px;border: 1px solid rgba(0,0,0,0.2);top:1px !important;height:700px;
	}
	body #sidebar.open{margin-right:0;}
	body #sidebar.close{margin-right:-270px;}
	div#main{margin:0 auto;width:95vw;max-width:100%;}
	#header p{position:unset;right:0;}
	.topics img{max-width:100%;}
	.topics small{display:block;}
	#footer #pagetop{position:fixed;position:absolute;bottom:2em;top: auto !important;right:15px;}
	body #footer ul{display:none;}
	.pc_only{display:none;}
	.mb_only{display:inline-block;}
	body #banner{background:#704a97;padding:15px 10px;font-size:12px;text-align:justify;margin-top:-2px;}
	body #banner span{color:#fff;}
	.menu_bar,.top,.bottom{z-index:999;box-sizing:border-box;border-top: 3px solid #704a97;height: 12px;width: 30px;position: fixed;top:30px;right: 20px;}
	.menu_bar{height:24px;}
	.bottom{border-bottom:3px solid #704a97;position:fixed;top:39px;}
	.search td:nth-child(1){display:none;}
	.list th:nth-child(5){display:none;}
	.list td:nth-child(5){display:none;}
	.list th:nth-child(6){display:none;}
	.list td:nth-child(6){display:none;}	
	.clearfix p{font-size:12px;}
	
	.schedule.strong th:nth-child(1){width:1em;}
}

/* mobile END */

*{margin:0;padding:0;}

body{
font:14px/1.5 Verdana,Arial,Helvetica,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',meiryo,sans-serif;
color:#252525;
background:#fff url(images/bg.png) repeat-x 50% 0;
}

a{color:#777;}
a:hover{color:#919191;text-decoration:none;}
a:active, a:focus {outline:0;}

img{border:0;}
.clear{clear:both;}

input[type="text"], input[type="password"],
select,
textarea {
  background-color: #FCFCFC;
  border: 1px solid #D1D1D1;
  padding: 6px;
  outline: 0;
  width: 100%;
  margin: 0;
  color: #444;
  font-size: 1em;
  -webkit-border-radius: 2px;
  -o-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: 0 1px 0 white, inset 0 1px 1px rgba(0, 0, 0, 0.04);
  -moz-box-shadow: 0 1px 0 white, inset 0 1px 1px rgba(0, 0, 0, 0.04);
  -o-box-shadow: 0 1px 0 white, inset 0 1px 1px rgba(0, 0, 0, 0.04);
  box-shadow: 0 1px 0 white, inset 0 1px 1px rgba(0, 0, 0, 0.04);
  -webkit-transition: background 150ms linear;
  -moz-transition: background 150ms linear;
  -ms-transition: background 150ms linear;
  -o-transition: background 150ms linear;
  transition: background 150ms linear;
  vertical-align: middle;
}
input[type="text"], input[type="password"],
select,
textarea { /width: 95%; }



/*******************************
レイアウト
*******************************/
#header, #wrapper, .inner{
margin:0 auto;
width:940px;
}

#wrapper{
	padding:20px 0 30px;
	min-height: 800px;
}

#main{
width:670px;
min-height: 300px;
margin: 0 0 0 269px;
}

#sidebar{
width:240px;
float: left;
margin: 0;
padding: 0;
/*position: relative;*/
}

#bottom{
clear:both;
}


/*******************************
/* ヘッダー
*******************************/
#header{
position:relative;
height:90px;
}

#header h2, #header p{
position:absolute;
top:25px;
}

#header h1{
font-size:11px;
font-weight:normal;
line-height:21px;
}

#header p{
right:0;
}


/************************************
/* メインナビゲーション
************************************/

#mainnav{
margin:0 auto;
width:940px;
height:47px;
/*background:url(images/mainnav.png) no-repeat 0 0;*/
}

ul#mainnav{
margin:0 auto;
width:940px;
height:47px;
/*background:url(images/mainnav.png) no-repeat 0 0;*/
}

ul#mainnav li{float:left;list-style:none;width:188px;border-right:1px solid #ccc;box-sizing:border-box;}
ul#mainnav li:nth-child(1){border-left:1px solid #ccc}


body{
}

ul#mainnav a{
/*text-indent:-9999px;*/
font-weight:600;
text-align:center;
line-height:47px;
text-decoration:none;
display:inline-block;
width:188px;
height:47px;
/*
background:url(images/mainnav.png) no-repeat 0 0;
*/
font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;

}

ul#mainnav a#menu{background-position:0 0;}
ul#mainnav a#menu1{background-position:-188px 0;}
ul#mainnav a#menu2{background-position:-376px 0;}
ul#mainnav a#menu3{background-position:-564px 0;}
ul#mainnav a#menu4{background-position:-752px 0;}

ul#mainnav a#menu:hover, ul#mainnav li.active a#menu{background-position:0 -47px;}
ul#mainnav a#menu1:hover, ul#mainnav li.active a#menu1{background-position:-188px -47px;}
ul#mainnav a#menu2:hover, ul#mainnav li.active a#menu2{background-position:-376px -47px;}
ul#mainnav a#menu3:hover, ul#mainnav li.active a#menu3{background-position:-564px -47px;}
ul#mainnav a#menu4:hover, ul#mainnav li.active a#menu4{background-position:-752px -47px;}



/*******************************
メイン画像
*******************************/
#mainImage{
	margin:20px auto 20px;
	text-align:center;
}

#mainImage img{
	border: 1px solid #d1d1d1;
}


/*******************************
バナー
*******************************/
#banner{
text-align:center;
}


/*******************************
コンテンツ
*******************************/
#main p{margin-bottom:10px;}

#main blockquote{
	padding-left: 40px;
	margin-bottom:10px;
}

div.topics p{
	color: #704a97;
	margin: 20px 0;
}

div.topics p span, div.topics p a{
	color: #96c22d;
	font-weight: 800;
	font-size: 120%;
}

div.topics blockquote{
	margin: 20px!important;
	padding: 10px!important;
	line-height: 26px;
}

.readon{
	text-align: right;
}

hr.clear{
	height: 1px;
	border: 0;
	background: none;
	padding: 0;
	margin: 0;
	clear: both;
}
br.clear{
	height: 1px;
	border: 0;
	background: none;
	padding: 0;
	margin: 0;
	clear: both;
}

.readon a{
display:block;
padding-left:22px;
background:url(images/bullet.png) no-repeat 0 50%;
text-decoration:none;
float: right;
margin-bottom:20px;
}

.readon a:hover{
background-position:5px 50%;
}

#date{
text-align: right;
padding-bottom:10px;
font-weight:bold;
color:#858585;
font-family:Georgia, "Times New Roman", Times, serif;
}

#next {
text-align: center;
padding-top: 30px;
padding-bottom: 30px;
}

img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
img.alignright {
    padding: 4px;
    margin: 0 0 2px 7px;
    display: inline;
}
img.alignleft {
    padding: 4px;
    margin: 0 7px 2px 0;
    display: inline;
}
.alignright {
    float: right;
}
.alignleft {
    float: left;
}

.box_img_border{
   border: 1px solid #cccccc;
   padding: 1px;
  margin: 1px;
}

ul.pagenav{
width:620px;
padding:20px 0 50px;
}

ul.pagenav li{
list-style: none;
float: left;
}

ul.pagenav li a{
padding:0 0 0 20px;
text-decoration:none;
background:url(images/bullet2.png) no-repeat 0 50%;
}

ul.pagenav li.next{
float: right;
}

ul.pagenav li.next a{
padding:0 22px 0 0;
background:url(images/bullet.png) no-repeat 100% 50%;
}


/*************
/* 見出し
*************/
#main h2,#main h3,#sidebar h3,#bottom h3{
font-weight:normal;
margin:30px 0 10px 0;
padding:5px 0;
color:#704a97;
}

#main h2{
padding-left: 60px;
background:url(images/leaf.png) no-repeat 0 50%;
min-height: 46px;
line-height: 46px;
border-bottom: 2px #96c22d solid;
margin: 10px 0px 20px;
}

#main h1{
	text-align: center;
	font-size: 22px;
	color: #704a97;
	margin: 30px 0;
}

#main ul{
	list-style-type: none;
	margin: 10px 0px;
}
#main ul li{
	padding: 6px 5px 6px 20px;
	background:url(images/li.png) no-repeat 0 50%;
}

#main ul li th{
	padding-right: 5px;
}

#main h3{
	border-left: 8px solid #bbb;
	padding-left: 8px;
}

#main h3.book{
	background:url(images/book.png) no-repeat 0 55%;
	min-height: 24px;
	line-height: 24px;
	padding-left: 31px;
	border-left: 0;
}

#main h3.key{
	background:url(images/key-mini.png) no-repeat 0 47%;
	min-height: 24px;
	line-height: 24px;
	padding-left: 28px;
	border-left: 0;
}

#main h3.schedule{
	background:url(images/schedule.png) no-repeat 0 50%;
	min-height: 24px;
	line-height: 24px;
	padding-left: 28px;
	border-left: 0;
}

/*************
/* サイドバー
*************/
#sidebar ul{
	margin:0 6px 35px;
	display: none;
}

#sidebar ul.active{
	display: block;
}

#sidebar ul li{
list-style:none;
margin-bottom:10px;
padding-bottom:2px;
border-bottom:1px dotted #ccc;
}

#sidebar ul li a{
display:block;
padding:0 5px 0 22px;
text-decoration:none;
background:url(images/bullet.png) no-repeat 0 50%;
}

#sidebar ul li a:hover{
background-position:5px 50%;
}

#sidebar h3{
	background:url(images/drop.png) no-repeat 0 50%;
	padding-left: 25px;
	min-height: 16px;
	border-bottom: 1px solid #704a97;
	margin-top: 10px;
}

#sidebar h3 a{
	color: #704a97;
	text-decoration:none;
}

/*******************************
/* ボトム
*******************************/
.boxContainer{
overflow:hidden;
background:url(images/boxBt.png) 0 100% repeat-x;
color:#333;
}

.boxContainer p{margin-bottom:10px;}

* html .boxContainer{height:1%;}

#bottom .box{
float:left;
width:270px;
margin-right:20px;
padding:18px 15px 5px;
background:url(images/boxTop.png) 0 0 repeat-x;
}

#bottom .last{margin-right:0;}

#bottom .box img{
float:left;
padding:0 10px 0 0;
}


/*******************************
/* フッター
*******************************/
#footer{
clear:both;
padding-bottom:10px;
text-align:center;
background:url(images/heading.png) repeat-x 0 50px;
}

.inner{
position:relative;
}

#footer ul{
padding:25px 0 10px;
text-align:center;}

#footer ul li{
display:inline;
padding:0 5px;
font-size: 90%;
}

#footer ul li a{
text-decoration:none;
}

#footer p{
position:absolute;
right:0;
top:15px;
}

address{
font-style:normal;
font-size:12px;
}

div.q{
	padding:			20px 0 10px;
	border-bottom:		1px dotted #c9c9c9;
	line-height:		19px;
}
div.q .body-q{
	font-size:			90%;
	line-height:		1.7;
	margin-bottom: 15px;
}
div.q .totop{
	font-size:			90%;
	margin-top:			20px;
	text-align: right;
}

.red{
	color:				red!important;
}
.blue{
	color:				blue!important;
}
.right{
	text-align: right;
}
.price{
	text-align: right;
	font-size: 110%;
}

hr.dot{
	border: 0;
	border-bottom: 1px dotted #96c22d;
	padding: 0;
	margin: 5px 0;
}

table.schedule{
	width: 100%;
	border-collapse: collapse;
}

table.schedule tr:first-child th, table.schedule tr.first th{
    border-top: #999 4px solid;
}
table.schedule th {
	border-bottom: #999 1px solid;
	border-top: #999 1px solid;
	border-left: #e3e3e3 1px solid;
	border-right: #e3e3e3 1px solid;
	text-align: center;
	background: #f7f7f7;
	padding: 10px;
	font-weight: 700;
}
table.schedule td {
	border-top: #999 1px solid;
	border-right: #e3e3e3 1px solid;
	text-align: left;
	padding: 10px;
}
table.schedule th span{
	font-size: x-small;
	color: red;
}
table.strong td, table.strong th{
	border-width: 2px;
}
table.schedule td.no-top{
	border-top: 0;
	padding: 5px 10px;
}
table.schedule td.small{
	padding: 2px 10px;
}
table.schedule td.mini{
	padding: 5px 10px;
}
table.schedule td.dot{
	border-top: #d9d9d9 2px dotted;
}
table.schedule tr:last-child td{
	border-bottom: #999 1px solid!important;
}
table.schedule tr td.last{
	border-bottom: #999 2px solid!important;
}
table.schedule td.lst{
	border-bottom: #999 1px solid!important;
}
table.schedule tr:first-child td{
	border-top: #bdafd2 4px solid;
}
table.schedule tr.first td{
	border-top: #bdafd2 4px solid;
}
table.schedule td blockquote{
	margin: 5px 0 5px 10px!important;
	padding: 0!important;
	font-size: 12px;
}

div.mini-menu{
	background-color: #f5f5f5;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 10px;
	margin-top: 30px;
	font-size: 12px;
	text-align: center;
}

.mt20{
	margin-top: 20px;
}

.center{
	text-align: center!important;
}

.right{
	text-align: right!important;
}

hr.clear{
	clear: both;
	height: 1px;
	border: 0;
	padding: 0;
	margin: 0;
}

table.list {
	font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
	width: 100%;
	text-align: left;
	border-collapse: collapse;
	font-size: 12px;
}

table.list thead th, table.list thead td{
	font-weight: 700;
	color: #039;
	padding: 6px 7px;
}
table.list tbody th{
	border-right: 1px dotted #ddd;
}
table.list tbody th, table.list tbody td{
	color: #232323;
	border-top: 1px solid #ccc;
	padding: 5px 7px;
}
table.list tbody td{
	padding-left: 10px;
}
table.list a{
	color: #333;
}

table.list tbody tr.even td, table.list tbody tr.even td a, table.list tbody tr.even th, table.list tbody tr.even th a{
	background: #f5f5f5;
}

div.search{
	padding: 10px;
	background-color: #f5f5f5;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
}

div.search table{
	
}

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

p.buy{
	text-align: center;
	font-size: 15px;
	margin: 30px 0;
}

.middle{
	vertical-align: middle;
}

.topics img{
	vertical-align: text-bottom;
}




