@charset "UTF-8";


/* 基本設定 */
img{border:none;vertical-align:bottom;}
.small{font-size:80%;}
.x-small{font-size:60%;}
.large{font-size:120%;}
.x-large{font-size:140%;}
.center{text-align:center;}
.right{text-align:right;}
.middle{vertical-align:middle;}
.red{color:#f00;}
.strong{font-weight:bold;}
.nowrap{white-space:nowrap;}
.l-blue{color:#cff;}
.hide{display:none;}

/* clearfix */
.cf{
	zoom:1;
	overflow:hidden;
}
.cf:after{
	content:"";
	display:block;
	clear:both;
}
.clear{
	clear:both !important;
}


body{
	margin:0;
	padding:0;
	background-color:#fff;
	line-height:150%;
	color:#333;
	font-family:"Lucida Grande","メイリオ",Meiryo,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",san-serif;
}


a,a:link,a:visited{color:#942;}
a:active,a:hover{color:#36c;text-decoration:none;}






/* ------------------------------------------------------------ */
/*ヘッダー用設定*/
/* ------------------------------------------------------------ */




#search{
	border-top:1px solid #916e19;
	border-bottom:2px solid #916e19;
	padding:10px 0;
	background-image:-webkit-linear-gradient(bottom,#3e211a,#693f22);
	background-image:-moz-linear-gradient(bottom,#3e211a,#693f22);
	background-image:-o-linear-gradient(bottom,#3e211a,#693f22);
	background-image:-ms-linear-gradient(bottom,#3e211a,#693f22);
	background-image:linear-gradient(to top,#3e211a,#693f22);
}
#search_box{
	width:1000px;
	margin:0 auto;
	padding:0 0 0 auto;
	text-align:right;
}
#container{
	background:url(../img/bg_main.gif) repeat-x left top #fff;
}
#header_img_block{
	text-align:center;
	height:300px;
	white-space:nowrap;
}
#header_img{
	list-style-type:none;
	margin:0 auto;
	padding:0;
}
#header_img li{
	margin:0;
	padding:0;
	display:inline-block;
}
#header_logo img{
	padding:0 40px;
}
h1#top_logo{
	font-size:100%;
	margin:0;
	padding:0;
}
#g-navi{
	list-style-type:none;
	margin:0;
	padding:0;
}
#g-navi li{
	float:left;
	/*width:156px;*/
	width:187px;
	border-left:1px solid #3f220f;
}
#g-navi li:first-child{
	/*width:58px;*/
	width:60px;
	border:none;
}
#g-navi li a{
	display:block;
	color:#221714;
	font-weigh-t:bold;
	text-shadow:1px 1px 1px #fff;
	text-decoration:none;
	white-space:nowrap;
	text-align:center;
	height:46px;
	line-height:46px;
	background-image:-webkit-linear-gradient(bottom,#9d8445,#ede5ba);
	background-image:-moz-linear-gradient(bottom,#9d8445,#ede5ba);
	background-image:-o-linear-gradient(bottom,#9d8445,#ede5ba);
	background-image:-ms-linear-gradient(bottom,#9d8445,#ede5ba);
	background-image:linear-gradient(to top,#9d8445,#ede5ba);
}
#g-navi li a:hover{
	background-image:-webkit-linear-gradient(bottom,#ede5ba,#9d8445);
	background-image:-moz-linear-gradient(bottom,#ede5ba,#9d8445);
	background-image:-o-linear-gradient(bottom,#ede5ba,#9d8445);
	background-image:-ms-linear-gradient(bottom,#ede5ba,#9d8445);
	background-image:linear-gradient(to top,#ede5ba,#9d8445);
}
#g-navi_bar{
	display:block;
}
.navi_home{
	padding-top:12px;
	height:34px !important;
}
#contents_block{
	width:1000px;
	margin:0 auto;
	padding:2px 5px 0;
	background:url(../img/bg_contents.gif) repeat-x left top #fff;
}
#contents{
	margin:0;
	padding:10px 15px;
	background-color:#fff;
}
#contents_box{
	padding:20px 15px;
	min-height:790px;
}
.head_line{
	padding-bottom:5px;
	background:url(../img/bg_head.gif) no-repeat left bottom;
}


/* トップ左側 */
#top_left{
	width:650px;
	float:left;
}
.top_info,.top_info2{
	margin:1em 0 2em;
	padding:0;
	font-size:90%;
}

.scrl{
	max-height:40vh;
	overflow-y:scroll;
}

.top_info dt{
	width:9em;
	float:left;
	padding:0.5em 0;
}
.top_info dt.w20{width:auto;margin-right:1em}

.top_info dd{
	margin:0;
	padding:0.5em 0.5em 0.5em 9.5em;
	border-bottom:1px dashed #999;
}
.top_info dt.w20+dd{padding-left:0}

.top_info2 dd{
	margin:0;
	padding:0.5em 0.5em 0.5em 0;
	border-bottom:1px dashed #999;
}
#top_mainbnr{
	list-style-type:none;
	margin:3em 0;
	padding:0;
}
#top_mainbnr li{
	width:200px;
	float:left;
	margin-right:25px;
}
#top_mainbnr li:last-child{
	margin-right:0;
}










/* トップ右側 */
#top_right{
	width:250px;
	float:right;
}
.top_time_detail{
	margin:1em 0 2em;
	padding:0;
}
.top_time_detail dt{
	color:#906034;
	font-size:90%;
}
.top_time_detail dd{
	border-bottom:1px solid #999;
	margin:0 0 8px;
	padding:0 0 6px;
	font-size:80%;
}
.top_time_detail dd span{
	display:block;
	text-indent:-1em;
	padding-left:1em;
}

#top_close{
	color:#fff;
	text-align:center;
	text-shadow:1px 1px 1px #000;
	padding:5px 0;
	background-image:-webkit-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:-moz-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:-o-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:-ms-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:linear-gradient(to top,#3f220f,#7c4e22);
}
#calendar{
	width:100%;
	height:170px;
}
.close_date{
	background-color:#fcc;
	padding:2px 4px;
	font-size:80%;
}
.close_date_block{
	margin:4px 0 0;
}
#top_subbnr{
	list-style-type:none;
	margin:1em 0;
	padding:0;
}
#top_subbnr li{
	margin-bottom:10px;
}





h2{
	font-size:100%;
	font-weight:normal;
	margin:0;
	padding:0 28px;
	height:36px;
	line-height:36px;
}
h2.top_hd_whatsnew{
	background:url(../img/icon_whatsnew.gif) no-repeat left center;
}
h2.top_hd_event{
	background:url(../img/icon_event.gif) no-repeat left center;
}
h2.top_hd_time{
	background:url(../img/icon_time.gif) no-repeat left center;
}


#gototop{
	clear:both;
	text-align:right;
	padding:30px 0 10px;
}




/* ------------------------------------------------------------ */
/*サブページ用設定*/
/* ------------------------------------------------------------ */

/* 基本設定 */

h1#sub_logo{
	font-size:100%;
	text-align:center;
	margin:0;
	padding:1em 0;
}
#pankuzu{
	font-size:80%;
	padding-left:15px;
}
#subpage_title{
	font-size:130%;
	text-align:center;
	color:#fff;
	background-image:-webkit-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:-moz-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:-o-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:-ms-linear-gradient(bottom,#3f220f,#7c4e22);
	background-image:linear-gradient(to top,#3f220f,#7c4e22);
	margin:0 0 1.5em;
	padding:1em;
	border-top:2px solid #916e19;
	border-bottom:2px solid #916e19;
}
h2.sub_hd{
	background:url(../img/icon_time.gif) no-repeat left center;
	font-size:110%;
	margin:0;
	padding:0 30px;
	height:40px;
	line-height:40px;
}
.head_line_sub{
	margin-bottom:20px;
	padding-bottom:5px;
	background:url(../img/bg_head.gif) no-repeat left bottom;
}
.sub_contents_area{
	margin:0 0 30px;
	padding:0 15px;
}

h3{
	font-size:100%;
	font-weight:normal;
	background-color:#ede5ba;
	margin:0 0 1em;
	padding:4px 0;
}
h3 span{
	border-left:5px solid #9d8445;
	padding:2px 8px;
}
.main_text{
	text-indent:1em;
	margin:0 0 0.4em;
}
.indent_text{
	text-indent:-1em;
	padding-left:1em;
}
.text_block{
	margin-bottom:0.5em;
}


.normal_list{
	margin:0;
	padding:0;
}
.normal_list li{
	margin-left:1.5em;
}
.icon_pdf{
	vertical-align:middle;
}
.photo_right{
	float:right;
	dislpay:block;
	width:240px;
	margin-left:30px;
}





.sub_target{
	display:inline-block;
	border:1px solid #999;
	margin:1em 0 0.5em;
	padding:0 1em;
}
#inquiry_block{
	border:3px solid #ede5ba;
	margin:0 100px;
	border-radius:10px;
	padding:15px 20px;
}
#inquiry_title{
	color:#9d8445;
	font-weight:bold;
	border-top:1px solid #999;
	border-bottom:1px solid #999;
	margin:0 0 0.8em;
	padding:0.4em;
}


/* 展示案内 */
.exhibition_part-l,.exhibition_part-r{
	width:430px;
}
.exhibition_part-l{
	float:left;
}
.exhibition_part-r{
	float:right;
}
.exhibition_photo{
	text-align:center;
	margin-bottom:0.5em;
}
.exhibition_photo img{
	border:1px solid #999;
	padding:5px;
}






/* 交通アクセス */
.access_info{
	list-style-type:none;
	margin:0;
	padding:0;
}
.access_info li{
	border-bottom:1px dashed #999;
	padding:0.5em 1em;
}
.access_info li:nth-child(odd){
	background-color:#f0f0f0;
}
#access_map{
	width:860px;
	margin:0 auto;
}



.download{
	background-color:#f0f0f0;
	border:1px solid #ccc;
	margin:1em 30px;
	padding:0.6em 30px;
}

.sub_title-s{
	display:inline-block;
	border:1px solid #999;
	margin:0 0 0.5em;
	padding:0 1em;
}




/* イベント案内 */
.event_list{
	margin:0;
	padding:0;
}
.event_list dt{
	width:8em;
	float:left;
	text-align:center;
	border:1px solid #999;
	padding:2px 0;
}
.event_list dd{
	margin:0 0 0.5em;
	padding:2px 0 0.5em 9em;
}
.event_notice{
	font-size:80%;
	margin:-1em 0 0.6em;
}
.event_border{
	margin:0 0 30px;
	border-bottom:1px dashed #999;
}
.event_photo{
	float:right;
	display:block;
	width:200px;
	margin-left:30px;
}



/* 収蔵庫 */
#shuuzouko_map{
	width:800px;
	margin:1em  auto 0;
}
#shuuzouko_table{
	width:100%;
}
#shuuzouko_table td{
	width:50%;
	vertical-align:top;
	padding:0 10px 10px;
}
.photo_shuuzouko{
	border:1px solid #ccc;
	margin:0 0 10px 20px;
	padding:5px;
	float:right;
}


/* 新着情報 */
.whatsnew_photo img{
	border:1px solid #ccc;
	padding:5px;
	display:block;
	width:300px;
	float:right;
	margin:0 0 20px 20px;
}









/* ------------------------------------------------------------ */
/*フォーム*/
/* ------------------------------------------------------------ */

/* フォーム関係 */

.input_area{
	border:0;
	padding:3px 5px;
	font-size:100%;
	border:solid 1px #999;
/* 角丸適用 */
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
/* 内側シャドウ適用*/
	-moz-box-shadow: inset 0 0 2px rgba(0,0,0,0.2);
	-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
	box-shadow: inner 0 0 2px rgba(0, 0, 0, 0.2);
/* シャドウ上辺のみ適用 */
	-moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
	-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
	box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
}
.input_area:focus{
	background-color:#e8f8ff;
	outline:none;/* フォーカス時の外枠消去 */
}
.ime_off{
	ime-mode:disabled;
}
.ime_on{
	ime-mode:active;
}
.form_text{
	font-size:90%;
	margin:0 0 0.5em;
}

/* フォームボタン */
.form_btn_area{
	text-align:center;
	margin-bottom:20px;
}

.form_btn{
/* 基本設定 */
border:solid 1px #ccc;
padding:8px 20px;
font-size:1em;
font-weight:bold;
color:#333;
cursor:pointer;
/* グラデーション適用 */
background-image: -webkit-gradient(linear, left top, left bottom, from(#ddd), to(#aaa));
background-image: -webkit-linear-gradient(top, #ddd, #aaa);
background-image: -moz-linear-gradient(top, #ddd, #aaa);
background-image: -ms-linear-gradient(top, #ddd, #aaa);
background-image: -o-linear-gradient(top, #ddd, #aaa);
background-image: linear-gradient(top, #ddd, #aaa);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ddd', endColorstr='#aaa',GradientType=0 ); /* IE6-9 */
/* 上内側白シャドウ・ボタン下シャドウ適用 */
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
/* 角丸適用 */
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 0px 1px 2px rgba(0, 0, 0, 0.2);
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
/* ラベルエフェクト適用 */
text-shadow: 0px -1px 1px rgba(255, 255, 255, 0.8);
}


#form_table{
	margin-bottom:1.5em;
	font-size:100%;
}
#form_table dt{
	font-size:100%;
	font-weight:normal;
	background-color:#ede5ba;
	margin:0 0 10px;
	border-left:5px solid #9d8445;
	padding:3px 8px;
}
#form_table dd{
	margin:0 30px 20px;
}

#form_table select{
	margin-bottom:0.2em;
}
/*
.inptmode_pc{
	font-size:90%;
	display:inline;
}
*/
.input_area_s{
	width:300px;
}
.input_area_m{
	width:500px;
}
.input_area_l{
	width:600px;
}


.form_subhead{
	display:inline-block;
	border:1px solid #999;
	margin:0 0 0.5em;
	padding:0 1em;
}
.form_notice{
	font-size:90%;
}

select{
	vertical-align:top;

}





/* ------------------------------------------------------------ */
/*フッター用設定*/
/* ------------------------------------------------------------ */

#footer_top{
	height:15px;
	background-image:-webkit-linear-gradient(bottom,#b4a992,#fff);
	background-image:-moz-linear-gradient(bottom,#b4a992,#fff);
	background-image:-o-linear-gradient(bottom,#b4a992,#fff);
	background-image:-ms-linear-gradient(bottom,#b4a992,#fff);
	background-image:linear-gradient(to top,#b4a992,#fff);
}
#footer{
	padding:10px 0 15px;
	background:url(../img/bg_footer.gif) repeat-x left bottom #7f684a;
	text-align:center;
	color:#fff;
}
#footer_menu{
	list-style-type:none;
	margin:0;
	padding:0;
}
#footer_menu li{
	font-size:90%;
	display:inline-block;
	padding:0 1em;
	border-right:1px solid #fff;
}
a.ft_link,a.ft_link:link,a.ft_link:visited{
	text-decoration:none;
	color:#fff;
}
a.ft_link:active,a.ft_link:hover{
	text-decoration:underline;
	color:#fec;
}
#footer_menu li:last-child{
	border-right:none;
}
#footer_logo{
	margin:20px 0 10px;
}
#footer_adress{
	font-size:90%;
}
#copyright{
	font-size:80%;
	padding:10px;
	text-align:center;
	color:#fff;
	background-color:#231815;
	border-top:1px solid #fff;
}


/*--add20180611--*/
ul.flex{margin:.5em auto;display:flex;justify-content:space-between;list-style:none;padding:0}
ul.flex li img{max-width:100%;}
ul.flex li.w50{width:48%;}
ul.wrap{flex-wrap:wrap}
ul.wrap li{margin-bottom:.5em;}

ul.grid_1122{margin:.5em auto;display:grid;grid-template-columns:repeat(auto-fit, minmax(45%, 1fr));gap:1em;
    li{text-align:center;list-style:none;
        img{max-width:100%;}
    }
    li.fl{grid-column: 1 / span 2;}
    li.row{grid-column: 2;grid-row: 3 / span 2;}
}

/*--add20260331 calender--*/
:root{
--bg-color: #ffffff;
--text-color: #000000;
--frame-color: #bbbbbb;
--subbg-color: #f0f8ff;
--dsp-color: #ffcccc; /* 特定日（休館日）の背景 */
--sun-color: #ff0000;
--sat-color: #0000ff;
}
.calendar_header{display:grid;grid-template-columns:1fr 2fr 1fr;
    span{font-weight:bold;text-align:center;display:block;grid-column: 2 / 3}
}

.calendar_table {border-collapse: collapse; margin: .5rem auto 0; min-width: 250px; border: 1px solid var(--frame-color);}

.calendar_table th, .calendar_table td { border: 1px solid var(--frame-color); padding: 2px 5px; text-align: center; }

.calendar_table th{ background-color: var(--subbg-color); font-weight:normal}
.holiday, .sun { color: var(--sun-color); }
.sat { color: var(--sat-color); }
.closed { background-color: var(--dsp-color) !important; }
.today { font-weight: bold; }
.nav-btns { margin-bottom: 10px; }

/* 過去のカレンダーの背景色 */
.calendar_table.is-past {background-color: #cccccc;}

/* メッセージのスタイル */
.data-status-msg {
    text-align: center;
    padding: 20px;
    font-weight: bold;
    color: #666;
    background-color: #f9f9f9;
}

/* ついでに：休館日の色（例） */
.calendar_table td.closed {background-color: #ffcccc; /* 薄い赤など */}

/* カレンダーエリア全体の枠など（必要に応じて） */
#calendar-area {/*min-height: 250px;*/margin-top:.5rem;}

/* 準備中メッセージのスタイル */
.status-message {padding: 50px 20px;text-align: center;font-size: 1.2em;color: #999;
    background-color: #f5f5f5;border: 1px solid #ddd;margin-top: 10px;}

/* 過去のカレンダー */
.calendar_table.is-past {background-color: #cccccc;}
