@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, 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: 14px/150% "メイリオ", Meiryo, arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	color: #333333;
	-webkit-text-size-adjust: none;
	background: #fff;
}


/* リンク設定
------------------------------------------------------------*/
a{
	margin: 0;
	padding: 0;
	text-decoration: underline;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	color: #639;
}

a:hover, a:active{
	-webkit-transition: opacity 1s;
	-moz-transition: opacity 1s;
	-o-transition: opacity 1s;
	outline: none;
	color: #C39;
}


/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post{zoom: 1;}
.clear{
	clear: both;
}
/*文字設定
------------------------------------------------------------*/
.fc_01{
	color: #C00;
}
.fs_16{
	font-size: 16px;
}

/* フォーム
------------------------------------------------------------*/
input[type="text"], textarea{
	vertical-align: middle;
	max-width: 90%;
	line-height: 30px;
	height: 30px;
	padding: 1px 5px;
	border: 1px solid #d4d4d7;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	font-size: 100%;
	color: #555;
	background: #fcfcfc;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

textarea{
	height: auto;
	line-height: 1.5;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width: 100%;
}

input[type="submit"],input[type="reset"],input[type="button"]{
	padding: 3px 10px;
	background: #908469;
	background: -moz-linear-gradient(top, #908469 0%, #62573d 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#908469), color-stop(100%,#62573d));
	background: -webkit-linear-gradient(top, #908469 0%,#62573d 100%);
	background: -o-linear-gradient(top, #908469 0%,#62573d 100%);
	background: linear-gradient(to bottom, #908469 0%,#62573d 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#908469', endColorstr='#62573d',GradientType=0 );
	border: 0;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	line-height: 1.5;
	font-size: 100%;
	color: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}



input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
background: #908469;
background: -moz-linear-gradient(top, #62573d 0%, #908469 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#62573d), color-stop(100%,#908469));
background: -webkit-linear-gradient(top, #62573d 0%,#908469 100%);
background: -o-linear-gradient(top, #62573d 0%,#908469 100%);
background: linear-gradient(to bottom, #62573d 0%,#908469 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#62573d', endColorstr='#908469',GradientType=0 );
cursor:pointer;
}

*:first-child+html input[type="submit"]{padding:3px;}


/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner{
margin:0 auto;
width:960px;
}
#wrapper  a:hover img
{
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
}
#header{
	overflow: hidden;
	background: #fff;
	width: 960px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

#toppage_content{
float:left;
width:100%;
padding:30px 0;
}
#breadcrumb {
	font-size: 12px;
	margin-left: 10px;
}
#breadcrumb a{
	text-decoration: none;
	color: #960;
}
#breadcrumb a:hover{
	text-decoration: none;
	color: #999;
}
#content{
	float: left;
	width: 100%;
	padding: 10px 0 30px;
}

#sidebar{
	float: right;
	width: 225px;
	padding: 10px 0;
	font-size: 12px;
}

#footer{
	clear: both;
	padding-top: 20px;
	border-top: 1px solid #CCC;
	background-image: url(images/foot_bg.jpg);
	color: #FFF;
} 

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 12px;
	opacity:0.7;

}
#page-top a {
	background: #DFCFA6;
	text-decoration: none;
	color: #333333;
	width: 40px;
	padding: 10px 0;
	text-align: center;
	display: block;
	border-radius: 5px;
}
#page-top a:hover {
	text-decoration: none;
	background: #6E356F;
	color: #FFF;
}



/* サイト説明文
----------------------------------*/
#header h1{
	padding: 3px 0;
	font-size: 80%;
	font-weight: normal;
	margin-top: 5px;
	margin-bottom: 20px;
}



/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
	clear: both;
}


/* トップページ　メイン画像
----------------------------------*/
#mainImg{
	clear: both;
	line-height: 0;
	text-align: center;
	z-index: 0;
	margin-bottom: 10px;
	background-image: url(images/bg.jpg);
	background-repeat: repeat-x;
	height: auto;
}

.toppage{
margin:0 0 20px 0;
padding:10px;
background: #fff;
}
/* サブページ　メイン画像
----------------------------------*/
#sub_mainImg{
	clear: both;
	line-height: 0;
	text-align: center;
	z-index: 0;
	margin-bottom: 10px;
	background-image: url(images/sub_mainbg.jpg);
	background-repeat: repeat-x;
	height: auto;
	border-bottom: 1px solid #EBD6EB;
}
/* インラインフレーム
----------------------------------*/
.iframe{
	width: 95%;
	height: 400px;
}

/* タイポグラフィ
*****************************************************/
hr{
	clear: both;
	border-width: 1px 0px 0px 0px; /* 太さ */
	border-style: solid; /* 線種 */
	border-color: #CCC; /* 線色 */
	height: 1px;
	padding-top: 20px;
	padding-bottom: 20px;
}
h2.title{
	clear: both;
	margin: 10px 0 20px;
	padding: 10px 10px 10px 50px;
	font-size: 120%;
	background: #fff url(images/h2_bg.jpg) repeat-x 0 100%;
	color: #462046;
}


.dateLabel{
margin:10px 0 10px;
text-align:right;
font-weight:bold;
color:#858585;
}

.post p{
	padding-bottom: 25px;
}

.post ul{
	margin-bottom: 15px;
	margin-top: 15px;
}

.post ul li{
	margin-bottom: 5px;
	padding-left: 20px;
	background: url(images/bullet.png) no-repeat 0 5px;
	margin-left: 10px;
}

.post ol{margin: 0 0 10px 30px;}

.post ol li{list-style:decimal;}

.post h1{
margin:20px 0;
padding:5px 0;
font-size:150%;
color: #000;
border-bottom:3px solid #000;
}

.post h2{
	clear: both;
	margin: 10px 0 20px;
	padding: 10px 10px 10px 50px;
	font-size: 120%;
	background: #fff url(images/h2_bg.jpg) repeat-x 0 100%;
	color: #462046;
}


.post h3{
	margin-top: 20px;
	font-size: 120%;
	text-align: left;
	background: #FBF0F8;
	border-bottom: 1px solid #D8ADD8;
	color: #333;
	margin-bottom: 20px;
	padding: 15px 10px;
	clear: both;
	font-weight: bold;
}
.post h4{
	margin-top: 20px;
	margin-bottom: 20px;
	font-size: 120%;
	clear: both;
	border-bottom: 1px dashed #CCC;
	padding: 10px 10px 10px 20px;
	color: #B39140;
	background-image: url(images/h4.gif);
	background-repeat: no-repeat;
	background-position: 1px;
	font-weight: normal;
}
.post h4 a{color: #B22D00;}
.post h4 a:hover{
	color: #CC9900;
}
.post h5{
	font-size: 16px;
	font-weight: normal;
	margin-bottom: 15px;
	color: #000;
	border-bottom: 1px dotted #99C;
	padding-top: 10px;
	padding-bottom: 10px;
	clear: both;
}
.post blockquote {
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote p{padding:5px 0;}

.post table{
	border: 1px solid #CCCCCC;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 10px 10px 20px;
}

.post table th{
	padding: 7px 10px 7px 5px;
	background: #EFEFEF;
	border-top: 0 solid #CCCCCC;
	border-right: 0 solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
	color: #630;
}

.post table td{
	padding: 7px 10px 7px 5px;
	background: #fff;
	border-top: 0 solid #CCCCCC;
	border-right: 0 solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}

section table   { width: 100%; }
section th, section td  { padding: 0; border: 1px solid #ddd; }
section th  { background: #f4f4f4; }
 
/*----------------------------------------------------
    .table
----------------------------------------------------*/
.post table th  { width: 30%; text-align: left; }

 
@media only screen and (max-width:480px){
    .post table {
	border-style: none;
	width: 95%;
	margin: 0 auto;
}
    .post table th,
    .post table td{
	width: 95%;
	display: block;
	border-top: none;
	border-right: 1px solid #CCC;
    }
    .post table tr:first-child th   {
	border-top: 1px solid #CCC;
}

}


.post dt{
    font-weight: bold;
    border-bottom: 1px dashed #B79875;
    margin-bottom: 20px;
    padding-left: 20px;
    color: #630;
    background-image: url("../images/dt_bg.png");
    background-repeat: no-repeat;
    background-position: 1px center;
    padding-top: 10px;
    padding-bottom: 10px;
}
.post dd {
	background-color: #EFEFEF;
	padding: 20px;
	border: 1px solid #CCCCCC;
	margin: 20px;
}
.post img{max-width:100%;height:auto;}

img.aligncenter {
display: block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin: 0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float: left;}

.button{
	margin-top: 30px;
	float: right;
	margin-bottom: 10px;
}
.button a {
	text-align: center;
	text-decoration: none;
	background-color: #6E356F;
	color: #FFF;
	padding: 10px 20px;
}
.button a:hover{
	color: #6E356F;
	text-align: center;
	background-color: #FAEFF7;
}
.button_1{
	margin-top: 30px;
	margin-bottom: 10px;
	display:block;
}
.button_1 a {
	text-align: center;
	text-decoration: none;
	background-color: #6E356F;
	color: #FFF;
	padding: 10px 20px;
}
.button_1 a:hover{
	color: #6E356F;
	text-align: center;
	background-color: #FAEFF7;
}
.solid{
	border: 1px solid #D8ADD8;
	padding: 10px;
	margin: 10px;
}
.solid_2{
	border: 1px solid #996699;
	padding: 10px;
	margin: 10px;
	background-color: #EFEFEF;
}
/* サイドバー　ウィジェット
*****************************************************/
section.widget, .widgetInfo{
margin: 0 0 20px;
padding: 5px 7px;
border:1px solid #dadada;
background: #fff;
}

#banners img{
max-width:225px;
height:auto;
padding-bottom:10px;
}

section.widget h3{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:100%;
font-weight:normal;
color: #333;
border-bottom:1px solid #ccc;
}

section.widget a{
	display: block;
	padding: 7px 0 7px 13px;
	text-decoration: none;
	background: url(images/arrow.png) no-repeat 0 50%;
	border-bottom: 1px dotted #E6EEEA;
}

section.widget a:hover{
text-decoration:none;
}

#searchform input[type="text"]{
line-height:1.7;
height:24px;
width:100px;
vertical-align:bottom;
}
.sub_navi .children a{
	margin-left: 10px;
	background-image: url(images/arrow01.png);
	background-repeat: no-repeat;
	background-position: 2px 12px;
	text-decoration: none;
}


/* フッター
*****************************************************/
#footer ul{
padding-bottom:10px;
}

#footer ul li{
	display: inline-block;
	vertical-align: text-top;
	text-align: left;
	padding: 5px 0 5px 10px;
	margin-right: 15px;
	background: url(images/arrow.png) no-repeat 0px 9px;
}

#footer ul li	a{
	display: block;
	padding: 0 0 5px 12px;
	overflow: hidden;
	text-decoration: none;
	font-size: 12px;
	color: #FFF;
}

#footer ul li	a:hover{
	text-decoration: underline;
	color: #FFF5FF;
}

#footer ul li li{
	display: block;
	padding: 0;
	margin: 0 0 0 10px;
	background-position: 0 5px;
	background-image: url(images/arrow01.png);
}


*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#footer_logo{
	text-align: center;
	font-size: 12px;
	margin-bottom: 20px;
}
#footer_logo img{
	padding-top: 20px;
	padding-bottom: 20px;
}
#copyright{
clear:both;
padding:10px;
text-align:center;
font-size:90%;
zoom:1;
}
#copyright a{
	color: #FFF;
	text-decoration: underline;
}

/* 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;
}



/*----------------------------------------------------
    .メールフォーム
----------------------------------------------------*/
div#mf_wrapper {
	width: 100%;
	text-align: left;
	margin: 0px auto;
}
form#mailform {
	padding: 10px;
}

/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
	nav#mainNav{
	clear: both;
	position: relative;
	z-index: 200;
	border-top: 1px solid #EBD6EB;
	border-bottom: 1px solid #EBD6EB;
	padding: 10px 0;
	}
	
	.panel ul{
	background:url(images/sep.png) no-repeat 50% 50%;
	}

	.panel ul li{
	float: left;
	position: relative;
	padding: 0 15px;
	height: 40px;
	line-height: 40px;
	background: url(images/sep.png) no-repeat 100% 50%;
	}

	.panel ul li a{
	display: block;
	text-align: center;
	_float: left;
	color: #3c2f13;
	padding: 0 10px;
	text-decoration: none;
	}

	nav div.panel{
  display:block !important;
  float:left;
  }
  
  a#menu{display:none;}
  
  /* 親メニュー */
  .panel ul li.current-menu-item a, .panel ul li a:hover, .panel ul li a:active, .panel ul li.current-menu-parent a{
	background: #7C487D;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	color: #FFF;
  }
  
  .panel ul ul{width:180px;}
  
  .panel ul li ul{display: none;}
	
  .panel ul li li{
  float: none;
  height:40px;
  line-height:40px;
  width:240px;
	padding:0;
	border-radius: 6px;
	
  }
  
  .panel ul li:hover ul{
	display: block;
	position: absolute;
	top: 40px;
	left: -7px;
	z-index: 500;
  }
	
  .panel ul li li a{
	width: 100%;
	height: 40px;
	padding: 0 0 0 10;
	line-height: 40px;
	font-size: 100%;
	text-align: left;
	color: #FFF;
	background-color: #6E356F;
	border-radius: 6px;
	
  }
	
	.panel ul li li a span{padding:0 10px;}
	
	.panel ul li li a:hover,.panel ul li li.current-menu-item a{
	color: #666666;
	background-color: #E9DAE9;
}
  
  .panel ul li:hover ul li{
	margin: 0;
	background: #532D1C;
	border-bottom: 1px solid #e8e3c6;
	color: #e8e3c6;
  }
	
	.panel ul li:hover ul li:last-child{
	border:0;
	border-radius: 6px;;
	}
}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	.breadcrumbs{
	font-size: small;
	margin-bottom: 10px;
	margin-left: 20px;
}
	nav#mainNav{
	clear: both;
	width: 100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 0px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
	}
	
	nav#mainNav .inner{width:95%;}
	
	nav#mainNav a.menu{
	width: 100%;
	display: block;
	height: 40px;
	line-height: 40px;
	font-weight: bold;
	text-align: left;
	color: #fff;
	text-decoration: none;
	background-image: url(images/menuOpen.png);
	background-repeat: no-repeat;
	background-position: 1em 10px;
	background-color: #6E356F;
	border: 1px solid #CCC;
	}
	
	nav#mainNav a#menu span{padding-left:2.5em;}
	
	nav#mainNav a.menuOpen{
	background-color: #9B65B8;
	background-image: url(images/menuClose.png);
	background-repeat: no-repeat;
	background-position: 1em 10px;
	}
	
	nav#mainNav a#menu:hover{cursor:pointer;}
	
	nav .panel{
	display: none;
	width: 100%;
	position: relative;
	right: 0;
	top: 0;
	z-index: 1;
	border-top: 0 solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
	}

	.panel ul{margin:0;padding:0;}

	.panel ul li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	.panel ul li a,.panel ul li.current-menu-item li a{
	display: block;
	text-align: left;
	background: #FAEFF7;
	text-decoration: none;
	border-bottom: 1px dotted #CCC;
	padding: 1em 0 1em 10px;
	}

 .panel ul li a span{padding-left:1em;}
 
	.panel ul li.current-menu-item a,.panel ul li a:hover,.panel ul li.current-menu-item a,.panel ul li a:active, .panel ul li li.current-menu-item a, .panel ul li.current-menu-item li a:hover, .panel ul li.current-menu-item li a:active{
	background: #6E356F;
	color: #FFF;
	}

	.panel ul li li{
	float: left;
	border: 0;
	}

	.panel ul li li a, .panel ul li.current-menu-item li a, .panel ul li li.current-menu-item a{
	background: #E3A8D3 url(images/sub1.png) no-repeat 20px 50%;
	padding-left: 30px;
}

	.panel ul li li a:hover, .panel ul li.current-menu-item li a:hover{
	background: #6E356F url(images/sub1.png) no-repeat 20px 50%;
	color: #FFF;
}
	
	.panel ul li li:last-child a{
	background: #E3A8D3 url(images/subLast.png) no-repeat 20px 50%;
}
	.panel ul li li:last-child a:hover,.panel ul li.current-menu-item li:last-child a:hover{background:#6E356F url(images/subLast.png) no-repeat 20px 50%;}

	.panel ul li li a span{padding-left:35px;}
	
	nav div.panel{float:none;}
	
	#mainImg{margin-bottom:20px;}
}

/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, #header, .inner{width:100%;}

	#header h1, #header p{padding:5px 10px;}
	#header h2{padding:20px 10px 0;}
	#header ul{padding:20px 10px 10px;}


	nav#mainNav ul, .thumbWrap{margin:0 auto;}
	nav#mainNav ul ul{padding:0;}

	nav div.panel{float:none;}
	
	#mainImg img{width:98%;height:auto;}
	#sub_mainImg img{
	width: 98%;
	height: auto;
}

	#content, #sidebar{
	clear:both;
	width:95%;
	float:none;
	margin:0 auto;
	padding:10px 0;
	}
	
	#banners{width:100%;margin:0 auto;text-align:center;}
	#banners p{display:inline;margin:0 10px;}
  #banners p img{width:100%;height:auto;}
	
	section.widget_search{text-align:center;}

	#footer{margin:0;border:0;text-align:center;}
	
	#footer ul{	text-align:center;	}
	#footer ul li{margin-right:20px;}
}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#header{text-align:center;}
	#header img{
		max-width:300px;
		height:auto;}
	#header h2,#header ul{
	float: none;
	margin-right: auto;
	margin-left: auto;
}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none;}
	#footer ul{text-align:left;padding:15px;}
	#footer ul ul{padding:0;}
}
