@charset "utf-8";
/* CSS Document */

html{
	height: 100%;
}

body{
	height: 100%;
	font-size: 96%;
}

.sp_only{
	display: none;
}


/*###############################
ヘッダー
###############################*/

#header{
	float: right;
	display: block;
	text-align: right;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 5000;
	background-color: #966E2D;
	padding: 5px 15px 5px 10px;
}

#lang,
#search,
#fqa{
	display: inline-block;
	color: #FFF;
	position: relative;
}

#lang a,
#search a,
#fqa a{
	color: #FFF;
}

.lang_bt,
.search_bt,
.fqa_bt{
	background-position: left;
	background-repeat: no-repeat;
	background-size: 14px;
	padding-left: 20px;
	cursor: pointer;
}

.lang_bt{
	background-image: url("../contents_images/icon_language.png");
}

.search_bt{
	background-image: url("../contents_images/icon_search.png");
}

.fqa_bt{
	background-image: url("../contents_images/icon_fqa.png");
}

.lang_bt:after,
.search_bt:after{
	content: "|";
	margin-left: 10px;
	margin-right: 5px;
}

#lang ul,
#search form{
	height: 0;
	overflow: hidden;
	position: absolute;
	background-color: #966E2D;
	transition: 0.3s;
	padding: 0;
	top: calc(1.1em + 10px);
}

#lang ul{
	left: -10px;
	text-align: center;
	border-radius: 0 0 10px 10px;
	width: 6em;
	list-style: none;
}

#lang ul.open{
	height: 8em;
	padding: 10px;
}

#lang li{
	border-bottom: 1px solid #FFF;
}

#lang li a{
	display: block;
	padding: 3px;
}

#search form{
	right: 5px;
	border-radius: 10px 0 10px 10px;
	width: 200px;
}

#search form.open{
	height: 1.7em;
	padding: 10px;
}

#search form input[type="text"]{
	width: 168px;
	border: 0;
	height: 24px;
	border-radius: 5px 0 0 5px;
	padding-left: 5px;
}

#search form input[type="submit"]{
	border: 0;
	height: 26px;
	width: 26px;
	vertical-align: bottom;
	border-radius: 0 5px 5px 0;
	background-image: url("../contents_images/icon_search_bt.svg");
	background-repeat: no-repeat;
	background-size: 16px;
	background-position: center;
	background-color: #FFF;
}

.logo{
	width: 220px;
	height: 170px;
	float: left;
	position: fixed;
	z-index: 5000;
	display: table;
}

.logo a{
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.logo a img{
	width: 220px;
}


/*###############################
メインメニュー
###############################*/

#menu{
	background-color: #000;
}

#menu #pc_menu{
	height: calc(100vh - 170px);
	display: block;
	overflow-y: auto;
	border-top: 2px solid #966E2D;
}

#menu .banner_box{
	color: #FFF;
	text-align: center;
	margin: 10px 20px 20px;
}

#menu .banner_box img{
	margin-top: 10px;
}

#humberger,
#main_menu .menu_title{
	display: none;
}

#main_menu{
	float: left;
	background-color: #808080;
	width: 220px;
	height: 100%;
	position: fixed;
	z-index: 1000;
	top: 170px;
}

#main_menu li,
#main_menu li a{
	display: block;
}

#main_menu li a{
	color: #FFF;
}

/***** クイックメニューの装飾 *****/
#quick_link{
	overflow: hidden;
	padding-top: 3px;
	padding-bottom: 3px;
	border-bottom: 1px solid #444;
}

#quick_link > div{
	width: 70px;
	float: left;
	margin-right: 5px;
}






/***** 親メニューの装飾 *****/
#main_menu ul.menu{
	/*height: calc(100% - 170px);*/
	/*background-color: #000;*/
	/*position: absolute;*/
	width: 220px;
	/*overflow-y: auto;*/
}

#main_menu ul.menu li a{
	padding: 10px;
}

#main_menu ul.menu > li > a{
	border-bottom: 1px solid #444;
	background-image: url("../contents_images/icon_menu_parent.png");
	background-repeat: no-repeat;
	background-position: left 10px top 1em;
	background-size: 12px 16px;
	padding-left: 30px;
	overflow: hidden;
}

#main_menu ul.menu > li > a span{
	font-size: 80%;
	float: right;
    display: block;
    top: 3px;
    position: relative;
	color: #4D4D4D;
	font-weight: 500;
}

/***** 子メニューの装飾 *****/
#main_menu ul.menu > li > ul{
	position: fixed;
	width: 220px;
	background-color: rgba(51,51,51,0.9);
	height: calc(100% - 170px);
	z-index: -1;
	display: block;
	transition: 0.5s;
	top: 0px;
	left: 0;
	padding-top: 170px;
	overflow: hidden;
}

#main_menu ul.menu > li:hover > ul{
	left: 220px;
}

#main_menu ul.menu > li > ul.sub-menu > div > div{
	padding-bottom: 40px;
}

#main_menu ul.menu > li > ul.sub-menu > div{
	border-top: 2px solid #966E2D;
}

#main_menu ul.menu > li ul li a:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	border-top: 4px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 4px solid transparent;
	border-left: 6px solid #FFF;
	position: relative;
	top: -2px;
}

#main_menu ul.menu > li > ul li a:hover{
	background-color: #966E2D;
}

#main_menu ul.menu > li > ul.sub-menu > div > div > li:first-child{
	border: 0;
}

/* ログイン中の調整 */
.admin-bar #main_menu ul.menu > li > ul{
	height: calc(100% - 202px);
	padding-top: 202px;
}

/***** 孫メニューの装飾 *****/
#main_menu ul.menu > li > ul li ul li a{
	padding-left: 30px;
}


#main_menu ul.menu > li > ul.sub-menu ul.sub-menu .mCSB_scrollTools{
	display: none !important;
}

/***** 子・孫 共通の装飾 *****/
#main_menu ul.menu > li > ul li{
	border-top: 1px solid #966E2D;
}

#main_menu ul.menu > li > ul li a{
	margin: 1px 0;
	padding: 9px;
}

/***** スクロールバー設定 *****/
.mCSB_draggerContainer{
	opacity: 0;
	transition: 0.5s;
}

#pc_menu:hover .mCSB_draggerContainer{
	opacity: 0.6;
}

/*###############################
コンテンツ
###############################*/

#wrap{
	float: right;
	width: calc(100% - 220px);
	min-height: calc(100% - 80px);
}

#wrap .post{
	padding: 20px 0;
	width: 900px;
}

/***** トップコンテンツ *****/

.top_block{
	width: 980px;
	margin: 20px auto 0;
}

/***** 各ブロックタイトル *****/
.block_title{
	padding: 40px 30px;
}

.block_title_main{
	font-size: 360%;
	font-weight: bold;
	line-height: 1.2em;
}

.block_title_sub{
	font-size: 160%;
}

.block_title a{
	width: 690px;
	margin: 20px auto 0;
}

/*** トップh2設定 ***/
.top_block .top_block_text h2{
	padding: 10px;
	font-size: 120%;
	margin: 0 -10px;
}



/* 直下h2設定 */
#top_cont_01 > h2,
#top_cont_02 > h2,
#top_cont_04 > h2,
#top_cont_news > h2{
	padding: 10px;
	font-size: 140%;
	margin: 0 0 10px 0;
}

#top_cont_news > h2{
	font-size: 150%;
}


/*** h3設定 ***/
.top_block .top_block_text h3{
	padding: 10px;
	font-size: 110%;
	margin: 0 -10px;
}

/***** トップテーブル *****/

.top_block table{
	table-layout: fixed;

}

.top_block table td{
	vertical-align: top;
	padding: 0 15px;
}

.top_block .eo-fullcalendar table{
	width: 100% !important;
}


/***** トップフッターコンテンツ *****/


.footer_logo{
	text-align: center;
	width: 940px;
	padding: 25px 0;
	margin: 0 auto 20px;
}

.footer_content table{
	width: 940px;
	margin: auto;
}



.flex_box{
	display: flex;
}

#top_cont_01,
#top_cont_02{
	display: block;
	float: left;
	width: calc(50% - 10px);
}

#top_cont_02{
	margin-left: 20px;
}

#top_cont_03{
	clear: both;
}

/***** スライドショー *****/

#sliderwrap{
	overflow: hidden;
	width: calc(100% - 220px);
	float: right;
}




/* これからの展覧会 */

.exhi_text {
    width: 721px;
    display: inline-block;
}

.exhi_link{
    width: 250px;
    display: inline-block;
    vertical-align: top;
}

.exhi_link img{
    margin: 10px 0px; 
}


.exhi_tit{
	font-size: 110%;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho","serif";
	margin-left: 20px;
	margin-bottom: 10px;
}

#top_cont_04 .eo-events{
	width: 680px;
	list-style: none;
	margin-left: 20px;
	margin-bottom: 40px;
	border-right: 1px dashed #666;
}

#top_cont_04 .eo-events li{
	list-style: none;
	overflow: hidden;
	padding-bottom: 20px;
	margin-bottom: 20px;
	margin-right: 10px;
}

.event_thumb{
	width: 210px;
	float: left;
}

.event_thumb img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.event_title,
.event_date,
.event_venue,
.event_excerpt,
.event_more{
	float: right;
	width: 430px;
}

.event_title a{
	border-left: 6px solid #966E2D;
	padding: 5px 5px 5px 10px;
	display: block;
	font-weight: bold;
	margin-bottom: 10px;
}

.event_date:before,
.event_venue:before{
	content: "■";
	margin-right: 10px;
}

.event_excerpt{
	margin-top: 10px;
}


/***** お知らせ表示 *****/
.slick-initialized .slick-slide{
	padding: 5px;
}

.slick-slide .thumbs{
	display: block;
	width: 190px;
	height: 190px;
	overflow: hidden;
}

.slick-slide .date{
	text-align: center;
	font-size: 80%;
	margin-bottom: 10px;
}

.slick-slide .thumbs img{
	height: 190px;
	width: 190px;
	object-fit: cover;
}

#top_cont_news ul{
	margin:25px 25px 25px;
	margin-left: calc(22% - 25px);
	width: 78%;
}

#top_cont_news > h2 span {
	display: block;
	margin-left: 0px;
}




/***** カレンダー表示調整 *****/

#top_cont_02 .eo-fullcalendar{
	margin: 20px;
}

#top_cont_02 .fc-content{
	height: 6px;
}

#top_cont_02 .fc-content *{
	display: none;
}

#top_cont_02 .fc-basic-view tbody .fc-row{
	min-height: 1em;
}

.slick-dotted.slick-slider{
	margin: 0 40px;
}

.fc-toolbar h2{
	font-size: 130% !important;
}

/* 曜日表示 */

.fc-widget-header th.fc-sun,
.fc-widget-header th.fc-mon,
.fc-widget-header th.fc-tue,
.fc-widget-header th.fc-wed,
.fc-widget-header th.fc-thu,
.fc-widget-header th.fc-fri,
.fc-widget-header th.fc-sat{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	position: relative;
}

.fc-widget-header th:before{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	text-indent: 0;
	width: 100%;
}

th.fc-sun:before{content: "sun";}
th.fc-mon:before{content: "mon";}
th.fc-tue:before{content: "tue";}
th.fc-wed:before{content: "wed";}
th.fc-thu:before{content: "thu";}
th.fc-fri:before{content: "fri";}
th.fc-sat:before{content: "sat";}

.fc-today-button{
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	position: relative;
}

.fc-today-button:before{
	content: "today";
	display: block;
	position: absolute;
	top: 5px;
	left: 0;
	text-indent: 0;
	width: 100%;
	height: 100%;
}

/***** これまでのイベント表示設定 *****/
.event_schedule_box{
}

.event_schedule_item{
	width: 170px;
	margin: 10px;
}

.event_schedule_item .item_title,
.event_schedule_item .itemdate{
}


/*###############################
下層ページ
###############################*/

.page_top_box{
	height: 90px;
	padding: 40px 80px;
}

.page_top_box .inner{
	line-height: 90px;
	padding: 0 30px;
}

.page_top_title{
	font-size: 240%;
	display: inline-block;
	vertical-align: middle;
	background-image: url("../contents_images/icon_menu_parent.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 24px 32px;
	padding-left: 40px;
}

.page_top_slug{
	font-size: 140%;
	display: inline-block;
	vertical-align: middle;
	margin-left: 20px;
}



.under .post{
	width: 960px;
}

/***** パンくず *****/
#breadcrumb ul{
	display: block;
	width: 940px;
	margin: auto;
	padding: 5px;
	font-size: 90%;
}

/***** h1設定 *****/
.under h1{
	font-size: 180%;
	padding: 15px 0px 25px;
}

/***** h2設定 *****/
.under h2{
	font-size: 150%;
	padding: 20px 5px;
	margin: 30px -15px 20px;
}

.detail > h2:first-child {
	margin-top: 10px;	
}

/***** h3設定 *****/
.under h3{
	font-size: 125%;
	padding: 10px 20px;
	margin: 30px -15px 15px;
}

/***** h4設定 *****/
.under h4{
	font-size: 110%;
	padding: 0 0 5px 15px;
	margin: 20px -5px 10px;
	border-bottom: 1px dashed #666;
}

/***** h5設定 *****/
.under h5{
	font-size: 110%;
	margin: 10px 0px 5px;
}

/***** 特別研究設定 *****/
.reserch_title{
	margin: 0 -10px;
	padding: 30px 20px;
}

/***** サイドメニュー *****/

#column {
	background: #111;
}

.categorytitle a{
	max-width: 1200px;
	margin: 0px auto;
}

.categorymenu {
	max-width: 1200px;
	margin: 0px auto;
}



/*###############################
フッター
###############################*/

#footer{
	float: right;
	width: calc(100% - 220px);
	height: 40px;
	line-height: 40px;
}

#footer .footer_menu{
	float: left;
}

#footer .copyright{
	float: right;
}

#footer .footer_menu{
	float: left;
	margin-left: 20px;
}

#footer .footer_menu li:after{
	content: "|";
	margin-left: 10px;
	margin-right: 5px;
}

#footer .footer_menu li:last-child:after{
	content: "";
}

#footer .copyright{
	float: right;
	margin-right: 20px;
}