@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td{
	border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;
}
:focus{
	outline: 0;
}

ol, ul{
	list-style: none;
}
table{
	border-collapse: separate;border-spacing: 0;
}
caption, th, td{
	font-weight: normal;text-align: left;
}
blockquote::before, blockquote::after,q::before, q::after{
	content: "";
}
blockquote, q{
	quotes: "" "";
}
a img{
	border: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{
	display: block;
}

body{
	font : normal normal normal 13px /1.5 "メイリオ", "Meiryo", arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color : #333333;
-webkit-text-size-adjust: none;
  border-top-width : 5px;
  border-bottom-width : 5px;
  border-bottom-style : solid;
  border-bottom-color : #9f0000;
  border-top-style : solid;
  border-top-color : #9b0000;
}

#page-top{
	position: fixed;
    bottom: 80px;
    right: 42px;
}

#wrapper strong{
  font-weight : normal;
}

/* リンク設定
------------------------------------------------------------*/
a{
	margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#313131;
}

a:hover, a:active{
	outline: none;
color:#6f6f6f;
}


/**** Clearfix ****/
nav .panel::after, nav#mainNav::after, .newsTitle::after, .bg::after,.post::after, ul.post li::after,nav#mainNav .inner::after{
	content:""; display: table;clear: both;
}
nav .panel,nav#mainNav,.newsTitle,.bg, .post, ul.post li,nav#mainNav .inner{
	zoom: 1;
}

a:hover img {
 -moz-opacity:0.5;
 opacity:0.5;
 filter:alpha(opacity=50);
 }

/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner{
	margin:0 auto;
width:880px;
}

#header{
	overflow:hidden;
  background-color : #f4f4ea;
}

#content{
	float:right;
width:627px;
padding:22px 0 50px;
  line-height : 1.5;
}

#sidebar{
	float:left;
width:233px;
padding:22px 0 50px;
}

#footer{
	clear:both;
  background-color : #f4f4ea;
} 


/* ヘッダー
*****************************************************/

/* サイト説明文
----------------------------------*/
#header h1{
	padding : 40px 0px;
font-size : 150%;
font-weight : bold;
text-align:center;
}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
	clear:both;
padding:5px 0 40px;
color: #515151;
font-size:150%;
font-weight:bold;
text-align:center;
}



/* トップページ　メイン画像
----------------------------------*/
#mainImg{
	clear:both;
line-height:0;
text-align:center;
z-index:0;
}

.toppage h4{
	margin:0 0 10px;
font-size:16px;
font-weight:normal;
color:#333;
}

.toppage{
	padding:10px 10px 20px 20px;
}


/* 記事
*****************************************************/
.list{
	padding:10px 0;
border-bottom:1px dashed #dcdcdc;
}

.list:last-child{
	border:0;
}

.list span{
	padding-left:10px;
}


/* タイポグラフィ
*****************************************************/
h2.title{
	clear:both;
font-size : 100%;
color : #000000;border-bottom-color : initial;
background : url(bg_h2.gif) 100% 100% / auto auto repeat-x scroll padding-box border-box #ffffff;
  padding-top : 6px;
  padding-bottom : 6px;
  font-weight : normal;
border-width : 1px 1px 2px;border-style : solid;border-color : #d8d8d8 #d8d8d8 #990000;
  padding-left : 10px;
}

.dateLabel{
	text-align:right;
font-weight:bold;
color:#858585;
}


img.aligncenter{
	display: block;
margin:5px auto;
}

img.alignright, img.alignleft{
	margin: 10px 10px 15px 15px;
display:inline;
}

img.alignleft{
	margin:10px 15px 15px 10px;
}

.alignright{
	float:right;
}
.alignleft{
	float:left;
}

#gallery-1 img{
	border:1px solid #eaeaea !important;
padding:5px;
background:#fff;
}

#gallery-1 img:hover{
	background:#fffaef;
}



/* サイドバー　ウィジェット
*****************************************************/
section.widget ul, .widget_search, #calendar_wrap, .textwidget{
	margin:0 0 20px 0;
padding : 12px 10px 12px 17px;border-top-color : white;border-right-color : white;border-left-color : white;
background : none 0% 0% / auto auto repeat scroll padding-box border-box #ffffff;
}

section.widget ul ul{
	border-top-width : 0px;border-right-width : 0px;border-bottom-width : 1px;border-left-width : 0px;border-top-style : none;border-right-style : none;border-bottom-style : dashed;border-left-style : none;
margin:0;
padding:0 0 0 10px;
  border-top-color : blue;
}

section.widget h3{
	clear:both;
margin:0;
padding : 5px 10px;
font-size : 100%;
border-top-width : 1px;border-right-width : 1px;border-bottom-width : 2px;border-left-width : 1px;border-top-style : solid;border-right-style : solid;border-bottom-style : solid;border-left-style : solid;border-top-color : #d5d5d5;border-right-color : #d5d5d5;border-bottom-color : #990000;border-left-color : #d5d5d5;
color : #000000;
background : none 0px 100% / auto auto repeat-x scroll padding-box border-box #ffffff;
  font-weight : normal;
}

section.widget li a{
	display:block;
padding : 10px 0px 10px 12px;
background : url(list01-01.png) 0px 12px / auto auto no-repeat scroll padding-box border-box transparent;
border-bottom : 1px dashed #dcdcdc;
}

section.widget li:last-child a{
	border:0;
}

#searchform input[type="text"]{
	line-height:1.7;
height:24px;
width:90px;
vertical-align:bottom;
}

section.info ul, .widget_search, #calendar_wrap, .textwidget{
	margin:0 0 20px 0;
padding : 12px 10px 12px 17px;border-top-color : white;border-right-color : white;border-left-color : white;
background : none 0% 0% / auto auto repeat scroll padding-box border-box #ffffff;
}

section.info ul ul{
	border-top-width : 0px;border-right-width : 0px;border-left-width : 0px;border-top-style : none;border-right-style : none;border-left-style : none;
margin:0;
padding : 0px 0px 0px 10px;
}

section.info h3{
	clear:both;
margin:0;
padding : 5px 10px;
font-size : 100%;
border-top-width : 1px;border-right-width : 1px;border-bottom-width : 2px;border-left-width : 1px;border-top-style : solid;border-right-style : solid;border-bottom-style : solid;border-left-style : solid;border-top-color : #d5d5d5;border-right-color : #d5d5d5;border-bottom-color : #990000;border-left-color : #d5d5d5;
color : #000000;
background : none 0px 100% / auto auto repeat-x scroll padding-box border-box #ffffff;
  font-weight : normal;
}

section.info li a{
	display:block;
padding : 10px 0px 10px;
  border-bottom-width : 1px;
  border-bottom-style : dashed;
  border-bottom-color : #d7d7d7;
}

section.info li:last-child a{
	border:0;
}

#sidebar ul li a:hover{
  background-color : #f7f7ee;
  color : #4d004d;
}

/* フッター
*****************************************************/

#copyright{
	clear:both;
padding : 10px 0px 20px;
text-align:center;
color : #000000;
font-size : 100%;
}


/* page navigation
------------------------------------------------------------*/
.pagenav{
	clear:both;
width: 100%;
height: 30px;
margin: 5px 0 20px;
}

.prev{
	float:left;
}

.next{
	float:right;
}

#pageLinks{
	clear:both;
color:#4f4d4d;
text-align:center;
}



/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){

#page-top{
  
    width : 400px;
  } 


  nav#mainNav{
	clear:both;
	position:relative;
	z-index:200;
	width:100%;
	}
	
	nav#mainNav .inner{
	background-image : none;background-repeat : no-repeat;background-attachment : scroll;background-position : 0px 5px;background-size : auto auto;background-origin : padding-box;background-clip : border-box;
  
  
  
    border-bottom-width : 1px;
    border-bottom-style : solid;
    border-bottom-color : #c6c6c6;
  }

	nav#mainNav ul li{
	float: left;
	position: relative;
	background : none 100% 5px / auto auto no-repeat scroll padding-box border-box #e6e6d0;
	
  
  
  
    width : 110px;
  
  
    color : black;
  }
	
	nav#mainNav ul li a{
	display: block;
	text-align: center;
	_float:left;
	color : black;
	height:35px;
	line-height:45px;
	font-size : 105%;
	padding : 0px 20px 7px;
	
  
  }
	
	nav#mainNav ul li a span,nav#mainNav ul li a strong{
	display:block;
	font-size : 100%;
	line-height : 3.5;
	}
	
	nav#mainNav ul li a span{
	font-size:70%;
	font-weight:normal;
	font-family:"Times New Roman", Times, serif;
	}

	nav div.panel{
  display:block !important;
  float:left;
  }
  
  a#menu{
	display:none;
}
  
  nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover span, nav#mainNav ul li a:hover, nav#mainNav ul li.current-menu-parent a{
  color : #4c4c4c;
  
  
    background-color : #999951;
  }
  
  nav#mainNav ul ul{
	width : 180px;
	border-top-width : 0px;border-right-width : 1px;border-bottom-width : 1px;border-left-width : 1px;border-top-style : none;border-right-style : solid;border-bottom-style : solid;border-left-style : solid;border-top-color : initial;border-right-color : #e0e0e0;border-bottom-color : #e0e0e0;border-left-color : #e0e0e0;
	
  }
  
  nav#mainNav ul li ul{
	display: none;
  
  
  
  
  
  
  
  
  }
  
  nav#mainNav ul li:hover ul{
  display: block;
  position: absolute;
  top:42px;
  left:-1px;
  z-index:500;
  
  
  }
	
  nav#mainNav ul li li{
	margin:0;
  float: none;
  height:40px;
  line-height:40px;
  width : 180px;
	background-image : none;background-repeat : repeat;background-attachment : scroll;background-position : 0% 0%;background-size : auto auto;background-origin : padding-box;background-clip : border-box;
	border-bottom : 1px dotted #646464;
  
    background-color : #e0e0b4;
  
  
    list-style-position : inside;
  }
	
	nav#mainNav ul li li:last-child{
	border:0;
}
	
  nav#mainNav ul li li a{
  width:100%;
  height : 40px;
	padding : 0px 0px 0px 15px;
  line-height:40px;
  text-align:left;
  
    font-size : 95%;
  
  
  
  
    background-image : url(arrow.gif);
  
    background-repeat : no-repeat;
  
    background-attachment : scroll;
  
    background-position : 5px 15px;
  }
	
	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover{
	color : black;
  
  
    background-color : #999951;
  
    width : 165px;
  }
}

/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	nav#mainNav{
	clear:both;
	width:880px;
	margin:0 auto 10px;
	border:1px solid #d5d5d5;
	}
	
	nav#mainNav a.menu{
	width:100%;
	display:block;
	height:37px;
	line-height:37px;
	font-weight: bold;
	text-align:left;
  background : url(menuOpen.png) 5px 8px / auto auto no-repeat scroll padding-box border-box transparent;
	}
	
	nav#mainNav a#menu span{
	padding-left:35px;
}
	
	nav#mainNav a.menuOpen{
	background : url(menuOpen.png) 5px -34px / auto auto no-repeat scroll padding-box border-box transparent;
	}
	
	nav#mainNav a:hover#menu{
	cursor:pointer;
}
	
	nav .panel{
	display: none;
	width:100%;
	position: relative;
	right: 0;
	top:0;
	z-index: 1;
	}

	nav#mainNav ul{
	margin:0;padding:0;
}

	nav#mainNav ul li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	nav#mainNav ul li:first-child{
	border-top:1px solid #d5d5d5;
}
	nav#mainNav ul li li:first-child{
	border-top:0;
}

	nav#mainNav ul li a,nav#mainNav ul li.current-menu-item li a{
	display: block;
	padding:15px 10px;
	text-align:left;
	border-bottom:1px dashed #ccc;
	background:#fff;
	}
	
	nav#mainNav ul li:last-child a{
	border:0;
}
	nav#mainNav ul li li:last-child a{
	border:0;
}
	nav#mainNav ul li li:last-child a{
	border-bottom:1px dashed #ccc;
}

 	nav#mainNav ul li a span{
	display:none;
}
 
	nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:hover,nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:active{
	background:#f6f6f6;
	}

	nav#mainNav ul li li{
	float:left;
	border:0;
	}

	nav#mainNav ul li li a, nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li li.current-menu-item a{
  padding-left:40px;
	background : url(sub1.png) 20px 18px / auto auto no-repeat scroll padding-box border-box #ffffff;
}

	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover, nav#mainNav ul li.current-menu-item li a:hover{
		background : url(sub1.png) 20px -62px / auto auto no-repeat scroll padding-box border-box #f6f6f6;
}
	
	nav#mainNav ul li li:last-child a{
	background : url(subLast.png) 20px 20px / auto auto no-repeat scroll padding-box border-box #ffffff;
}
	nav#mainNav ul li li.current-menu-item:last-child a,nav#mainNav ul li li:last-child a:hover,nav#mainNav ul li.current-menu-item li:last-child a:hover{
	background : url(subLast.png) 20px -65px / auto auto no-repeat scroll padding-box border-box #f6f6f6;
}
	
	nav div.panel{
	float:none;
}
	
	#mainImg{
	margin-bottom:20px;
}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, .inner{
	width:100%;
}

	#header{
	width:96%;padding:0 2%;
}
	
	.contact{
	padding:10px 0 10px;
}

  nav#mainNav{
	width:95%;
}

	nav#mainNav ul{
	margin:0 auto;
}
	nav#mainNav ul ul{
	padding:0;
}

	nav div.panel{
	float:none;
}
	
	#mainImg img{
	width : 100%;height : inherit;
}

	#content, #sidebar{
	clear:both;width:95%;float:none;margin:0 auto;padding:10px 0;
}
	
	.banner{
	width:100%;margin:0 auto;text-align:center;
}
  p.banner img{
	width:100%;height:auto;
}
	section.widget_search{
	text-align:center;
}
	#calendar_wrap table{
	width:260px;
}
	
	#footer li{
	margin-bottom:10px;
}
	
}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	nav#mainNav{
	width:98%;
}
	#header{
	text-align:center;background-image:none;
}
	#header h2,.contact{
	float:none;
}
	.contact{
	padding:0 0 20px;
}
	.contact p{
	text-align:center;
}
	#headerInfo{
	width:250px;margin:0 auto;
}
	img.alignright, img.alignleft{
	display: block;	margin:5px auto;
}
	.alignright,.alignleft{
	float:none;
}
}

.p1{
  margin-top : 20px;
  margin-bottom : 15px;
}

/* メインコンテンツ画像
------------------------------------------------------------*/

.p3{
  text-align : center;
}

#content img{
  margin-top : 20px;
  margin-bottom : 10px;
}

.p3 img{
  width : 100%;
  max-width : 265px;
}

