﻿@charset "utf-8";


/* CSSリセット
*************************************** */
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.tbyoko, 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.tbyoko {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;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/****************************************/

body {
color:#666666;
font-size:small;
font-family:verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
line-height:1.5;
-webkit-text-size-adjust: none;
background:url(back_br.gif) repeat-y top center,url(bg_1.jpg) repeat #2b2000;
}

/* リンク設定
****************************************/
a{color:#0033cc;text-decoration:none;}
a:hover{color:#c93351;}
a:active, a:focus {outline:0;}

/* 文字
****************************************/
p.center{
text-align:center;
}

p.path{
margin:5px;
text-align:right;
}

hr.normal{
border: 0;
height: 1px;
background:#ebebeb;
}

/* span
****************************************/
article span {
color: #ff0000;
font-weight: bold;
}

.bold {
font-weight: bold;
}

/* 続きをみる アコーディオン開閉(HTML5とCSSで用　2025年改訂時
**************************/
.readmore-item summary {
  color:#0033CC;
  cursor: pointer;
  padding:12px;
  font-weight:bold;
  text-decoration: underline;
}

.readmore-item .readmore-body {
  /*padding:10px 12px;*/
}

/* 全体
****************************************/
#wrapper{
margin:0 auto;
padding:0 1%;
width:98%;
position:relative;
background:#ffffff;
}

.inner{
margin:0 auto;
width:100%;
}

/*幅一杯に画像を表示*/
img.wa {
height: auto;
width: 100%;
}

/* ヘッダー
**********************/
#header{
width: 100%;
height: 300px;
background-color:#40250e;
position: relative;
background: url(header.jpg) no-repeat left top #042c2b;
}

#header h1{
padding:2px 0 10px 5px;
color: #ffffff;
font-size:12px;
font-weight:normal;
}

/* ヘッダー ロゴ ヘッダー左
**********************/
.logo{
float:left;
margin-top:38px;
font-size:20px;
font-weight:bold;
text-align:center;
}

.logo a{
color: #d1c178;
}

.logo span{
display:block;
}

#header .logo span{
font-size:16px;
line-height:2.5;
}

#header .logo img{
margin-top:25px;
}


/* 電話番号　ヘッダー右
**********************/
.info{
float:right;
text-align:center;
margin-top:145px;
padding-right:15px;
color: #ffffff;

}

#footer.info{
margin-top:20px;
}

.info .open{
font-size:11px;
padding:5px;
background: rgba(91, 0, 18, .7);
border-radius: 4px;
}

/* 電話番号
**********************/
.info .tel{
margin-top:16px;
font-size:20px;
font-weight:bold;
}

.info span{
font-size:.6em;
font-weight:normal;
}

/* ヘッダー問い合わせリンク
**********************/
.hcontact{
margin-top:5px;
}

p.hcontact a{
padding:3px 7px;
border-radius:3px;
color:#fff;
background:#f39620;
}

p.hcontact a:hover{background:#dcb463;
}

/*ヘッダー画像・スライドショー
**********************/
#headimg {
background-color: #d2ffd6;	/*スライドショーの外側（左右）の背景色*/
clear: left;
width: 100%;
height: auto;
position: relative;
}

#headimg .slide_file {
display: none;
}
#slide_image {
z-Index:2;
position: absolute;
left:0px;
top:0px;
}
#slide_image2 {
z-Index:1;
position: absolute;
left:0px;
top:0px;
}

/* 問い合わせ大ﾊﾞﾅｰ
**********************/
p.banner {
margin:5px 0;
padding:15px 0;
text-align:center;
}

p.banner a{
padding:10px 7px;
color:#ffffff;
font-size: 20px;
border-radius:3px;
background:#f39620;
-moz-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
-webkit-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
-o-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
-ms-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
}

p.banner a:hover{
color:#ffffff;
background:#dcb463;
}

/* メイン画像（トップページ+サブページ）
**************************/
#mainBanner{
margin:30px auto 10px auto;
padding:0;
position:relative;
line-height:0;
text-align:center;
}

#mainBanner img{
max-width:100%;
height:auto;
border-radius: 4px;
}

#mainBanner{margin-top:0;}

/*メイン画像内の文章スローガン*/
.slogan{
position:absolute;
max-width:100%;
height:auto;
bottom:10px;
left:0;
padding:5px 10px;
line-height:1.4;
text-align:left;
}

.slogan h2{
padding-bottom:5px;
color:#ffffff;
font-size:20px;
font-weight:bold;
text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.5);
}

/* メイン コンテンツ
**************************/
section.content article{
padding:10px;
margin-bottom:10px;
border:1px solid #dbcc99;
border-radius: 0 0 4px 4px;
overflow:hidden;
letter-spacing:1px;
line-height:1.8;
}

* html section.content article{height:1%;}

section.content p{margin-bottom:5px;}

h2.h2main {
margin: 0 0 7px 0;
padding: 10px 0 10px 30px;
color: #5b0012;
font-size: 14px;
background-color: #eee8d2;
font-weight:bold;
background: url(title.png) no-repeat bottom left;
border-radius: 4px;
border-top:3px double #d0bc6f;
border-bottom:3px double #d0bc6f;
border-left:1px solid #d0bc6f;
border-right:1px solid #d0bc6f;
}

h2.h2main a {
color: #5b0012;
}

h3.h3main{
margin: 0;
padding: 10px 0 7px 10px;
color: #5b0012;
font-size: 14px;
font-weight:bold;
border-radius: 4px 4px 0 0;
border:1px solid #dbcc99;
background-color: #d1c178;
background-image: -webkit-gradient(linear, left top, left bottom, from(#fffce2), to(#d1c178));
background-image: -webkit-linear-gradient(to bottom, #fffce2 0%, #d1c178 100%);
background-image: linear-gradient(to bottom, #fffce2 0%, #d1c178 100%);
}

h3.h3main a{
color: #5b0012;
}

h4.h4main {
position: relative;
color: #5b0012;
font-weight: bold;
line-height: 1;
padding: 5px 5px 10px 28px;
}

h4.h4main::before,
h4.h4main::after {
position: absolute;
content: '';
border-radius: 100%
}

h4.h4main::before {
top: 3px;
left: 0px;
z-index: 2;
width: 16px;
height: 16px;
background: rgba(201, 171, 91, .8);
}

h4.h4main::after {
top: 0;
left: 8px;
width: 13px;
height: 13px;
background: rgba(91, 0, 18, .5);
}

section.content img{
max-width:90%;
height:auto;
}

.alignleft{
float:left;
clear:left;
margin:3px 10px 10px 0;
}

.alignright{
float:right;
clear:right;
margin:3px 0 10px 10px;
}

.aligncenter{
text-align:center;
}

#gallery .grid{background:transparent;}

#gallery .grid img,.border{box-shadow:0 0 3px #ccc;}

/*メイン　ページ内ナビ
**************************/
ul.navmenu {
margin-bottom:5px;
padding:5px 8px 5px 8px;
text-align:left;
border:solid 1px #ebebeb;
background:#a67665;
line-height:2;
}
ul.navmenu li {
display: inline;
}
ul.navmenu li a {
padding:4px 8px 4px 8px;
color:#ffffff;
text-decoration:underline;
background:#a67665;
}
ul.navmenu li a:hover {
color:#ffffff;
text-decoration:underline;
background:#40250e;
}

/* メイン　ページトップ
**************************/
.pagetop {
text-align: right;
padding:10px 0 0 0;
}
.pagetop a {
font-size: 12px;
letter-spacing: 0.1em;
}
.pagetop a:hover {
text-decoration: none;
}

/*メイン　更新情報・お知らせ
**************************/
/*ブロック全体の設定*/
#new dl{
overflow: auto;
height: 120px;
padding-left: 10px;
}
/*日付設定*/
#new dt {
padding:5px 0;
font-weight: bold;
border-top: 1px solid #ededed;
}
/*記事設定*/
#new dd {
padding-left: 10px;
line-height:2;
}
#new dd:before{
display: block;
content:"≫ ";
position: absolute;
top:-1px;
left:-5px;
padding-left:5px;
color:#d98723;
}

/*メイン　DL LI リスト
**************************/
/*タイトル設定*/
dl.list,ul.list{
padding:5px 0;
}

dl.list dt{
padding:5px 0 0 0;
color:#5b0012;
font-weight: bold;
}
/*リスト設定*/
dl.list dd,ul.list li{
padding-left:15px;
position: relative;
line-height:2;
}

dl.list dd:before,ul.list li:before{
display: block;
content:"≫ ";
position: absolute;
top:-1px;
left:-5px;
padding-left:5px;
color:#d98723;
}

ul.list li img{
float:left;
margin-right:10px;
}

/*メイン　DL Ｑ＆Ａ
**************************/
/*タイトル設定*/
dl.qa　{
margin: 0;
padding: 0;	
}
dl.qa dt{
margin: 0;
padding: 5px 0 5px 10px;
color: #7d3029;
font-size: 14px;
border-bottom: solid 1px #ebebeb;
background: #e8f9f9;
font-weight:normal;
}
/*リスト設定*/
dl.qa dd{
padding-left: 10px;
line-height:2;
background:none;
}

/* メイン カラム枠
**************************/
.gridWrapper{
padding-bottom:0px;
overflow: hidden;
}

* html .gridWrapper{height:1%;}

/*カラム枠内boxの並び*/	
.grid{
float:left;
}
/*カラム枠内の箱枠*/
.box{
padding:10px;
margin-bottom: 10px;
text-align:center;
border:solid 1px #dbcc99;
border-radius: 0 0 4px 4px;
}

.box img{
max-width:100%;
height:auto;
}

.h3box {
margin: 0;
padding: 5px 0 5px 10px;
color: #7d3029;
text-align:left;
font-size: 14px;
font-weight:bold;
border-radius: 4px 4px 0 0;
background-color: #d9b5a0;
}

.box p{
text-align:left;
}
/*-----------------------*/

/*詳細 リンク
**************************/
p.more{
padding:10px 5px 5px;
text-align:right;
}

p.more a{
padding:3px 7px;
border-radius:3px;
color:#fff;
background:#f39620;
}

p.more a:hover{background:#dcb463;
}

/*　メイン　テーブル
**************************/
table {
font-size: 100%;
border-spacing: 0;
border-collapse:collapse;
}
table.tbyoko {
width: 100%;
margin:5px 0;
border-collapse:collapse;
}
.tbyoko, .tbyoko td, .tbyoko th{
border: 1px solid #cbcbcb;
line-height: 1.5;
}
/*テーブルの左側の見出し*/
.tbyoko th{
width: 70px;
padding: 8px;
text-align: left;
vertical-align: middle;
background-color: #fffff2;
}
/*テーブルの右側*/
.tbyoko td{
width: 300px;
padding: 8px;
}

/*テーブルのキャプション設定*/
.tbyoko caption{
padding: 10px;
border-top: 1px solid #CCC;		/*上側の線の幅、線種、色*/
border-right: 1px solid #CCC;	/*右側の線の幅、線種、色*/
border-left: 1px solid #CCC;	/*左側の線の幅、線種、色*/
text-align: left;
background-color: #e9ddae;	/*背景色（古いブラウザだとここの色のみが出ます）*/
background-image: -webkit-gradient(linear, left top, left bottom, from(#efe6c5), to(#e9ddae));	/*グラデーション*/
background-image: -webkit-linear-gradient(#efe6c5, #e9ddae);	/*同上*/
background-image: linear-gradient(#efe6c5, #e9ddae);			/*同上*/
font-weight: bold;	/*文字を太字にする設定*/
}

/*　画像つきページトップへの戻り
**************************/
.totop {
position:fixed;
bottom:15px;
right:15px;
}
.totop a {
display:block;
text-decoration:none;
}
.totop img {
border:1px solid #ebebeb;
border-radius: 10px;
background:rgba(211, 187, 123, .8);
}
.totop img:hover {
background:#cbb86c;
}

/*************
/*　サイドバー
**************/
#sidebar{
float:left;
}

/*#sidebar h3{
padding: 10px 0 10px 5px;
color: #ffffff;
background-color: #bca54f;
background-image: -webkit-gradient(linear, left top, left bottom, from(#bca54f), to(#d1c178));
background-image: -webkit-linear-gradient(#d1c178, #bca54f 50%, #d1c178 100%);
background-image: linear-gradient(#d1c178, #bca54f 50%, #d1c178 100%);
border-radius: 4px 4px 0 0;
}*/

#sidebar h3{
padding: 10px 0 10px 5px;
color: #5b0012;
font-size: 14px;
font-weight:bold;
background-color: #eee8d2;
background: url(title.png) no-repeat bottom right;
border-radius: 4px 4px 0 0;
border-top:3px double #d0bc6f;
border-bottom:3px double #d0bc6f;
border-left:1px solid #d0bc6f;
border-right:1px solid #d0bc6f;
}

#sidebar article{
border-bottom:1px solid #d0bc6f;
border-left:1px solid #d0bc6f;
border-right:1px solid #d0bc6f;
border-radius: 0 0 4px 4px;
}

#sidebar ul{padding:10px;}

#sidebar ul.link li{
margin-bottom:10px;
padding-bottom:10px;
list-style:none;
border-bottom:1px dashed #d0bc6f;
}

#sidebar ul.list li{
clear:both;
margin-bottom:5px;
padding:0 0 0 10px;
overflow:hidden;
border:0;
}

#sidebar li:last-child{
border:0;
margin-bottom:0;
}

#sidebar li a{
display:block;
}

/*************
/* フッター
*************/
#footer{
clear:both;
color:#d1c178;
background-color: #341115;
}

#footer a{
color:#d1c178;
}

#footer a:hover{
color:#ffffff;
}

#footer .inner{
overflow:hidden;
}

* html #footer .inner{height:1%;}

#footer .grid{
margin:0;
}

#footer #info .logo, #footer #info .info{
float:none;
}

#footer #info .info{
clear:both;
text-align:left;
}

#footer .logo{
margin-top:10px;
font-size:18px;
}

#footer .logo img{
margin-top:10px;
}

#footer .info .tel,#footer .info .tel span,#footer #info .open{
font-size:12px;
}

ul.footnav{
float:right;
width:655px;
padding:10px 0;
}

ul.footnav li{
float:left;
margin-bottom:5px;
padding:0 7px 0 8px;
border-right:1px solid #d1c178;
}

ul.footnav li a{
color:#d1c178;
}

address{
clear:both;
padding:10px 0;
text-align:center;
font-style:normal;
font-size:12px;
color:#d1c178;
}

/* PC用　幅780以上
****************************************/
@media print, screen and (min-width: 780px){
	#wrapper,#header,.inner{
	width:980px;
	padding:0;
	margin:0 auto;
	}
		
	/*-- ナビメニュー --*/
    nav#mainNav{
	clear:both;
	overflow:hidden;
	position:relative;
	border-top:1px solid #ffffff;
    border-bottom:1px solid #ffffff;
    background-color: #bca54f;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#bca54f), to(#d1c178));
	background-image: -webkit-linear-gradient(#d1c178, #bca54f 50%, #d1c178 100%);
	background-image: linear-gradient(#d1c178, #bca54f 50%, #d1c178 100%);
	}

	nav#mainNav ul li{
	float: left;
	position: relative;	
	}

	nav#mainNav ul li a{
	float:left;
	display: block;
	width:121px;
	padding:10px 0;
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	font-size:14px;
    border-right:1px solid #ffffff;
	background-color: #bca54f;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#bca54f), to(#d1c178));
	background-image: -webkit-linear-gradient(#d1c178, #bca54f 50%, #d1c178 100%);
	background-image: linear-gradient(#d1c178, #bca54f 50%, #d1c178 100%);
	}
	
	nav#mainNav ul li.last a{
	border-right:none;
	}

	nav#mainNav ul li a span,nav#mainNav ul li a strong{
	display:block;
	}

	nav#mainNav ul li a span{
	color:#bababa;
	font-size:10px;
	}

	nav div.panel{
	display:block !important;
	float:left;
	}

	a#menu{display:none;}

	nav#mainNav li.active a,nav#mainNav li a:hover{
	color: #fffcd1;
	font-weight: bold;
    background-color: #341115;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#341115), to(#a67665));
	background-image: -webkit-linear-gradient(#341115, #a67665 50%, #341115 100%);
	background-image: linear-gradient(#341115, #a67665 50%, #341115 100%);
	}
	
	#header .logo{
    padding-left:30px;
    }

	#main{
	float:right;
	width:665px;
	padding:15px 5px 0 5px;
	}
	
	#sidebar{
	float:left;
	width:295px;
	padding:15px 5px 0 5px;
	overflow:hidden;
	}
	
	#sidebar article{
	padding:7px;
	margin-bottom:10px;
	overflow:hidden;
	}
		
	/* pagetop サイド PC用　幅780以上 */
	.totopside {display:none;}
	
	/* グリッド全体 */
	.gridWrapper{
	width:665px;
	margin:0;
	}
	
	#gallery article{padding:10px 0 10px 8px;}
	
	/* グリッド */
	.grid{
	float:left;
	width:320px;
	margin-right:10px;
	}
	
    #gallery .grid{
	width:auto;
	margin:10px 0 2px 8px;
	}
	
	#footer .inner{
	width:980px;
	padding:10px;
	}
	
	#footer .logo{
	margin-left:-30px;
	}
}
/* タブレット 幅779以下
****************************************/
@media only screen and (max-width:779px){
	*{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
	}
	
	#header{
	padding:0 10px;
	width: 100%;
	height: 300px;
	background-color:#5b0012;
	position: relative;
	background: url(header.jpg);
	}
	
	#header h1{font-size:80%;}
	
    #headimg {
	margin: 0 0 1%;
	max-width:100%;
	height: auto;
    }
    #headimg aside {
	height: auto;
	width: 100%;	
    }
    #headimg aside img {
	vertical-align: bottom;
    }
    #slide_image {
	height: auto;
	width: 100%;
	position: relative;
    }
    #slide_image2 {
	height: auto;
	width: 100%;
	position: absolute;
	left:0px;
	top:0px;
    }

	nav#mainNav{
	clear:both;
	width:100%;
	margin:0 auto;
	padding:0;
	border-top:4px solid #ffffff;
	border-bottom:1px solid #ededed;
	border-right:1px solid #ededed;
	border-left:1px solid #ededed;
	background: #40250e;
	
	}

	nav#mainNav a.menu{
	width:100%;
	display:block;
	height:40px;
	line-height:40px;
	font-weight: bold;
	text-align:left;
	
	}

	nav#mainNav a#menu span{
	padding-left:10px;
	color: #f2c66b;
	}
	nav#mainNav a.menu span:before{content: "→ ";}
	nav#mainNav a.menuOpen span:before{content: "↓ ";}

	nav#mainNav a#menu:hover{cursor:pointer;}

	nav .panel{
	display: none;
	width:100%;
	position: relative;
	right: 0;
	top:0;
	z-index: 1;
	}

	nav#mainNav ul li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	nav#mainNav ul li a,nav#mainNav ul li.current-menu-item li a{
	display: block;
	padding:15px 10px;
	text-align:left;
	color: #ffffff;
	border-bottom:1px dashed #ccc;
	}
	
	nav#mainNav ul li a span{padding-left:10px;}
	
	nav#mainNav ul li:first-child a{
	border-top:1px solid #e4e4e4;
	}
	
	nav#mainNav ul li:last-child a{border:0;}
	
	nav#mainNav ul li.active a{
	color: #f2c66b;
	font-weight:bold;
	}
	
	nav div.panel{float:none;}
	
	#mainBanner{margin-top:20px;}
	
	#sidebar{
	padding-bottom:15px;
	width:100%;
	}
	
	#sidebar article{padding:7px 0;
	margin-bottom:5px;}
	
    /* pagetop サイド779以下 */
    .totopside {
    float:right;
    padding:15px 5px 0;
    }

    .totopside a {   
	text-align: right;
	font-size: 12px;
	letter-spacing: 0.1em;
    }
    
    .totopside a:hover {
    text-decoration: none;
    }
	
	#footer .grid,#footer ul.footnav{
	float:none;
	width:100%;
	text-align:center;
	}

	ul.footnav li{float:none;display:inline-block;}
	
	.grid{
	width:49%;
	margin:10px 0 0 1%;
	}
	
	#gallery .grid{
	float:left;
	width:31%;
	margin:0 0 0 1%;
	}
	
	#footer .grid img, #footer .info{float:none;}
	#footer .grid p{display:block;}
	#footer #info .info{float:none;text-align:center;}
	#footer #info .logo{padding-top:10px;}
	#footer.logo,#footer .info{
	width:100%;
	float:none;
	}

    .totop {
    display:none !important;
    }
}

/* スマートフォン 横(ランドスケープ) 幅640以下
****************************************/
@media only screen and (max-width:640px){
	#header{
	width: 100%;
	height:auto;
	padding:10px 0;
	}
		
	#header h1{
	display:none;
    }
	
	.logo{
	clear:both;
	width:100%;
	float:none;
	margin:0;
	padding:0;
	text-align:center;
	}
	
	.info{
	clear:both;
	width:100%;
	float:none;
	margin:5px 0 0 0;
	padding:0;
	text-align:center;
	}
	
	.box img{
	float:left;
	margin-right:5px;
	}

    .alignleft,.alignright{
	float:none;
	display:block;
	margin:0 auto 10px;
	}
	
	#gallery .grid{float:left;}
	
	/* ページ内ナビ 640以下　*/
	ul.navmenu li a {
	display:block;
	margin:auto;
	padding:8px;
	border-top:none;
	border-right:none;
	border-left:none;
	border-bottom:1px #ffffff dashed;
	text-decoration:underline;
	}
}

/* スマートフォン 縦(ポートレート) 幅480以下
****************************************/
@media only screen and (max-width:480px){
	.grid{width:99%;}
	.box img{max-width:100px;}
	#header h1{font-size:80%;}
	.logo img{max-width:90%;
	height:auto;
	}
	#mainBanner h2,#mainBanner p{font-size:80%;}
	#sidebar p{text-align:center;}
}