@charset "utf-8";
/* CSS Document */

/*reset css*/
html,body,ul,ol,li {
	margin:0;
	padding: 0;
}

html {
	height: 100%;
}

body {
	margin: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
	background-color: #fff;
	height: 100%;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block;
}

figure {
	margin-left: 0;
	margin-right: 0;
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
    line-height: 1.8;
}

li {
	list-style: none;
}

img {
	vertical-align: top;
}

a img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

a {
	color: #0066CC;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
a:hover {
	color: #0099CC;
	text-decoration: none;
}

table {
	border-collapse: collapse;
}





/*共通クラス*/
.clearfix:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}

.clear {
	clear: both;
}


.sr_only {
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0
}

.img_fluid{
	max-width:100%;
	height:auto
}

/*margin 10px*/
.mt10 {
	margin-top: 10px!important;
}
.mb10 {
	margin-bottom: 10px!important;
}
.ml10 {
	margin-left: 10px!important;
}
.mr10 {
	margin-right: 10px!important;
}

/*margin 0*/
.mt_0 {
	margin-top: 0!important;
}
.mb_0 {
	margin-bottom: 0!important;
}
.mr_0 {
	margin-right: 0!important;
}
.ml_0 {
	margin-left: 0!important;
}

/*padding 10px*/
.pt10 {
	padding-top: 10px!important;
}
.pb10 {
	padding-bottom: 10px!important;
}
.pl10 {
	padding-left: 10px!important;
}
.pr10 {
	padding-right: 10px!important;
}

/*padding 0*/
.pt_0 {
	padding-top: 0!important;
}
.pb_0 {
	padding-bottom: 0!important;
}
.pr_0 {
	padding-right: 0!important;
}
.pl_0 {
	padding-left: 0!important;
}



.delete {
	text-decoration: line-through;
}


/*ヘッダー共通*/
header {
	width: 100%;
	background-color: #FFF;
	border-top: 5px solid #980165;
	position: fixed;
	z-index: 300;
}

header .h_btn_r a {
	display: block;
	text-align: center;
	position: absolute;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
	border: 1px solid #999;
}
header .h_btn_r a:hover {
	color: #FFF;
	background-color: #333;
	border: 1px solid #FFF;
}
header .h_btn_l a {
	display: block;
	text-align: center;
	position: absolute;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
}
header .h_btn_r a i,
header .h_btn_l a i {
	padding-left: 5px;
	padding-right: 5px;
}
#g_navi ul li a.ac_menu {
	cursor: pointer;
	overflow: hidden;
}


/*************************************/
/*992px~*/
/*************************************/
@media (min-width:992px){
	/*ヘッダー*/
	header {
		height: 140px;
		box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0px;
		position: fixed;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}


	header h1 a img {
		/*top: 20px;
		left: 10px;*/
	}

	header .h_btn_r a {
		width: 160px;
		top: 20px;
		right: 10px;
		line-height: 38px;
		padding-top: 2px;
		font-size: 14px;
		font-weight: bold;
	}

	header .h_btn_l a {
		width: 180px;
		top: 20px;
		right: 180px;
		line-height: 38px;
		padding-top: 2px;
		font-size: 14px;
	}

	header .h_btn_l a strong {
		font-size: 18px;
	}

	/*スクロール開始時にヘッダーの高さを小さくする*/
	header.fixed {
		height: 100px;
	}

	header.fixed h1 a img {
		height: 40px;
		top:5px;
	}
	header.fixed .h_btn_r a,
	header.fixed .h_btn_l a {
		top: 5px;
	}


	.menu_btn,
	.btn_close {
		display: none;
	}

	/*
	PCグローバルナビ
	-------------------------------------------*/
	#g_navi {
		width: 100%;
		display: block;
		height: 50px;
		position: absolute;
		z-index: 1000;
		left: 0px !important;
		bottom: 0px;
		font-size: 14px;
		letter-spacing: 1px;
		font-weight: bold;
	}

	#g_navi ul.navi_base {
		width: 100%;
		max-width: 1140px;
		margin-left: auto;
		margin-right: auto;
		display: block;
	}

	#g_navi ul li{
		display: inline;
	}

	#g_navi li a {
		width: 12.5%;/*8分割*/
		height: 50px;
		display: block;
		color: #111;
		text-decoration: none;
		text-align: center;
		line-height: 50px;
		position: relative;
		float: left;
	}

	#g_navi li a.toggle_btn {
		display: none;
	}

	#g_navi li a::before {
		display: block;
		height: 2px;
		position: absolute;
		top: 2px;
		width: 70%;
		left: 15%;
		background-color: #FFF;
		content: '';
		-webkit-transition: 0.2s linear;
		-moz-transition: 0.2s linear;
		transition: 0.2s linear;
	}

	#g_navi li a:hover::before {
		background-color: #980165;
		top:0px;
	}

	#g_navi li a:hover,
	#g_navi li a.active,
	#g_navi ul li:hover > a {
		color: #999;
	}

	#g_navi ul li:hover > a.ac_menu,
	#g_navi li a.ac_menu:hover {
		position: relative;
	}

	#g_navi li a.ac_menu::after {
		content: "";
		position: absolute;
		bottom: -10px;
		left: 50%;
		margin-left: -15px;
	  border-right: 15px solid transparent;
	  border-bottom: 20px solid #FFF;
		/*border-bottom: 15px solid #FFF;*/
	  border-left: 15px solid transparent;
		z-index: 300;
		-webkit-transition: 0.2s linear;
		-moz-transition: 0.2s linear;
		transition: 0.2s linear;
	}

	#g_navi ul li:hover > a.ac_menu::after,
	#g_navi li a.ac_menu:hover::after {
	  border-bottom: 20px solid #111;
	}

	#g_navi ul li div {
		position: absolute;
		z-index: 2000;
		top: 50px;
		left: 0px;
		opacity: 0;
		visibility: hidden;
		transition: .3s;
		width: 100%;
		height: auto;
		background-color: #111;
	}
	#g_navi ul li ul{
	  width: 96%;
	  padding-left: 2%;
	  max-width: 1100px;
	  margin-left: auto;
	  margin-right: auto;
	}

	#g_navi li ul li a {
		width: 21%;
		padding-left: 3%;
		line-height: 40px;
		height: 40px;
		color: #FFF;
		text-align: left;
		margin-top: 10px;
		margin-bottom: 10px;
		margin-left: 1%;
		border-radius: 5px;
	}
	#g_navi li ul li a::after {
		content: "+";
		color: #FFF;
		position: absolute;
		display: block;
		left: 15px;
		/*top: 8px;*/
		top: 0;
		font-size: 9px;
	}
	#g_navi li ul li a:hover::after {
		color: #333;
	}
	#g_navi ul li ul li a:hover{
		color: #000;
		background-color: #FFF;
		box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	}
	#g_navi li li a::before {
		display: none;
	}

	#g_navi ul li:hover div{
	  visibility: visible;
	  opacity: 1;
	}

	#g_navi div.ac_list {
		display: block !important;
	}


	header.fixed #g_navi {
		height: 40px;
	}

	header.fixed #g_navi ul li div {
		top: 40px;
	}

	header.fixed #g_navi li a {
		/*padding-top: 10px;*/
		/*height: 30px;*/
		height: 40px;
		line-height: 40px;/*temp*/
	}


	
	
	
}






/*****************************/
/*~991px以下*/
/*****************************/
@media (max-width: 991px ){
	
	body.fixed {
		/*overflow: hidden;*/
	}
	
	/*グローバルナビ*/
	#g_navi .ac_menu,
	#g_navi .toggle_btn {
		display: inline-block;
	}
	
	#g_navi .ac_menu {
		width: 90%;
	}
	
	#g_navi .toggle_btn {
		width: 10%;
		height: 100%;
		border-left: 1px solid #eee;
	}
	
	#g_navi .toggle_btn.active {
		border-bottom: 1px solid #eee; 
	}
	
	/*ハンバーガーメニューボタン*/
	.menu_btn {
		display: block;
		height: 30px;
		width: 40px;
		text-align: center;
		padding-top: 5px;
		padding-bottom: 5px;
		position: fixed;
		z-index: 5000;
		top: 13px;
		right: 5px;
		border-radius: 3px;
		cursor: pointer;
	}
	.menu_btn:hover {
		cursor: pointer;
	}

	.menu_btn span {
		width: 28px;
		height: 2px;
		display: block;
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -14px;
		background-color: #555;
	}
	.menu_btn span {
		transition: all 0.3s;
		-webkit-transform: rotate(0deg);  
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	  }
	.menu_btn span.top {
		-webkit-transform: translateY(-8px);  
		-moz-transform: translateY(-8px);
		transform: translateY(-8px);
	  }
	.menu_btn span.bottom {
		-webkit-transform: translateY(8px);  
		-moz-transform: translateY(8px);
		transform: translateY(8px);
	}


	.menu_btn:hover span.top {
		-webkit-transform: translateY(-10px);  
		-moz-transform: translateY(-10px);
		transform: translateY(-10px);
	}
	.menu_btn:hover span.bottom {
		-webkit-transform: translateY(10px);  
		-moz-transform: translateY(10px);
		transform: translateY(10px);
	}


	.menu_btn.opened  span.middle {
		background: rgba(255, 255, 255, 0);
		-webkit-transform: translateX(30px);  
		-moz-transform: translateX(30px);
		transform: translateX(30px);
	}
	.menu_btn.opened  span.top {
		-webkit-transform: rotate(-45deg) translateY(0px);  
		-moz-transform: rotate(-45deg) translateY(0px);
		transform: rotate(-45deg) translateY(0px);
	}
	.menu_btn.opened  span.bottom {
		-webkit-transform: rotate(45deg) translateY(0px);  
		-moz-transform: rotate(45deg) translateY(0px);
		transform: rotate(45deg) translateY(0px);
	}


	/*ヘッダーナビゲーション*/
	#g_navi {
		position: fixed;
		width: 80%;
		/*width: 380px;*/
		height: 100%;
		top: 0px;
		left: 100%;
		/*right: -380px;*/
		padding-top: 50px;
		overflow: auto;
		z-index: 3000;
		background-color: #FFF;
		box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
		font-size: 14px;
		letter-spacing: 1px;
		box-sizing: border-box;
	}
	#g_navi ul {
		display: block;
		margin: 0px;
		padding: 0px;
		clear: both;
	}

	#g_navi ul li:first-child {
		border-top-width: 1px;
		border-top-style: solid;
		border-top-color: #EEE;
	}

	#g_navi ul li {
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #EEE;
	}

	#g_navi ul li a {
		color: #111;
		text-decoration: none;
		display: block;
		padding-left: 20px;
		line-height: 50px;
		height: 50px;
		vertical-align: middle;
	}
	
	#g_navi ul li a:hover {
		color: #999;
	}


	/*ハンバーガーメニュー　サブメニュー開閉動作*/

	#g_navi ul li a.toggle_btn {
		position: relative;
		background-image: none;
	}
	
	#g_navi ul li a.toggle_btn::after {
		font-size: 11px;
		display: block;
		height: 20px;
		width: 20px;
		content: "▼";
		text-align: center;
		line-height: 20px;
		position: absolute;
		top: 16px;
		/*right: 10px;*/
		/*right: -5px;*//*一時的に*/
		color: #555;
	}
	#g_navi ul li a.toggle_btn.active {
		color: #999;
	}
	#g_navi ul li a.toggle_btn.active::after {
		content: "▲";
	}
	#g_navi div.ac_list {
		display: none;
	}
	#g_navi ul li ul li {
		border-bottom: none;
	}
	#g_navi ul li li:first-child {
		border-top: none;
	}
	#g_navi ul li ul li a {
		border-bottom: none;
	}
	#g_navi ul li ul li a::before {
		content: "・";
		padding-right: 5px;
		color: #999;
	}

	#g_navi ul li ul li a:hover {
		color: #999;
	}

	/*ハンバーガーメニュー　背景*/
	.bg_bl {
		background-color: #FFF;
		height: 100%;
		width: 100%;
		opacity: 0.80;
		filter: alpha(opacity=80);
		-ms-filter: "alpha( opacity=80 )";
		display: block;
		position: fixed;
		z-index: 2000;
	}
	
	/*ヘッダー*/
	header {
		height: 52px;
	}

	header .head_logo {
		/*top: 5px;
		left:5px;*/
		height: 40px;
	}

	header .h_btn_r a {
		width: 120px;
		top: 10px;
		right: 50px;
		line-height: 29px;
		padding-top: 1px;
		font-size: 12px;
	}
	header .h_btn_l a {
		width: 120px;
		top: 10px;
		right: 180px;
		line-height: 29px;
		padding-top: 1px;
		font-size: 12px;
	}
	header .h_menu {
		/*display: none;*/
	}



	
	
}

/*****************************/
/*~360px以下*/
/*****************************/
@media screen and (max-width:360px){
	/*ヘッダー*/
	header .h_btn_r a {
		display: none;
	}
	header .h_btn_l a {
		display: none;
	}
	
	/*グローバルナビ　サブメニューあり*/
    #g_navi ul li a {
		padding-left: 15px;
	}

}


/*****************************/
/*~568px以下*/
/*****************************/
@media screen and (max-width:568px){
	/*グローバルナビ　サブメニューあり*/
    #g_navi .ac_menu {
		width: 80%;
	}
	
	#g_navi .toggle_btn {
		width: 20%;
	}
	
}


/*****************************/
/*~640px以下*/
/*****************************/
@media screen and (max-width:640px){
	/*ヘッダー*/
	header .h_btn_r a {
		width: 50px;
		font-size: 18px;
		border-top-style: none;
		border-bottom-style: none;
	}
	header .h_btn_l a {
		width: 50px;
		font-size: 18px;
		right: 100px;
	}
	header .h_btn_l a span,
	header .h_btn_r a span {
		display: none;
	}
	
	
	

	



}






/*エフェクト-------------------------------------------*/
.effect {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha( opacity=0 )";
	-webkit-transform: translateY(20px);  
    -moz-transform: translateY(20px); 
	-webkit-transition: 1.0s ease-out;
	-moz-transition: 1.0s ease-out;
	transform: translateY(20px);
	transition: 1.0s ease-out;
}
.effect.d_02 {
	-webkit-transition-delay:0.2s;
	transition-delay:0.2s;
}
.effect.d_04 {
	transition-delay:0.4s;
	-webkit-transition-delay:0.4s;
}
.effect.d_06 {
	transition-delay:0.6s;
	-webkit-transition-delay:0.6s;
}
.effect.d_08 {
	transition-delay:0.8s;
	-webkit-transition-delay:0.8s;
}
.effect.start {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	-webkit-transform: translateY(0px);  
    -moz-transform: translateY(0px);
	transform: translateY(0px);
}












/*--------------------------------------------*/
/*モバイル*/
/*--------------------------------------------*/
/*メインイメージ*/
.container {
	width: 100%;
	padding-left: 15px;
	padding-right: 15px;
	margin-left: auto;
	margin-right: auto;
}

header {
	width: 100%;
	background-color: #FFF;
	border-top: 5px solid #980165;
	position: fixed;
	z-index: 300;
}

header .container {
	height: 48px;
	overflow: hidden;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

header .head_logo {
	background: url(../img/common_img/head_logo.gif) no-repeat left center;
	background-size: 45px;
	/*display: block;*/
	display: inline-block;
	color: #980165;
	font-size: 14px;
	font-weight: bold;
	height: 48px;
	line-height: 48px;
	padding-top: 2px;
	padding-left: 55px;
	vertical-align: bottom;
	text-decoration: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

header .sub_title {
	display: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

/*メインイメージ*/
.main_image {
	background: #eee;
	box-sizing: border-box;
	margin:0;
	padding: 0;
	width: 100%;
}

.main_image .container {
	color: #fff;
	/*background: #eee;*/
	position: relative;
	width: 100%;
	box-sizing: border-box;
    padding-left: 0;
    padding-right: 0;
}

.hero_image {
	box-shadow: 0 0 3px rgba(0,0,0,1);
	width: 100%;
	height: auto;
	margin-top: 52px;
}

.main_image h1 {
	text-shadow:1px 1px 3px #0d0d0c;
	font-size: 20px;
	padding-right: 15px;
	position: absolute;
	top: 160px;
	left: 15px;
}

/*メインイメージのタイトルスマホで非表示*/
.title_display {
	display: none;
}

/*パンくずリスト*/
.breadcrumb {
	padding: 20px 0;
}

.breadcrumb li {
	color: #333;
	font-size: 12px;
	display: inline-block;
	/*white-space: nowrap;*/
}

.breadcrumb li:not(.active)::after {
	content: " >";
	font-size: 12px;
}

.breadcrumb li a {
	text-decoration: none;
}

.breadcrumb li a:hover {
	text-decoration: underline;
}


/*メイン*/
.main {
}

.side {
}

.main,
.side {
	margin-bottom: 50px;
}

article {
	margin-bottom: 40px;
}

h2 {
	font-size: 22px;
	padding: 0 0 5px;
	border-bottom: 5px solid #699;
	margin-bottom: 25px;
	position: relative;
}

h2::after {
	content: "";
	width: 80px;
	height: 5px;
	background-color: #980165;
	position: absolute;
	left: 0;
	bottom: -5px;
}

h3 {
	line-height: 1.5;
	border-left: 10px solid #980165;
	border-bottom: 1px solid #980165;
	margin-bottom: 15px;
	padding: 7px 0 7px 10px;
	
}

main h3 {
	font-size: 18px;
	margin-top: 30px;
	margin-bottom: 20px;
}

h4 {
	border-left: 5px solid #699;
	color: #333;
	font-size: 18px;
	margin: 10px 0 20px;
	padding: 5px 0 5px 10px;
}

.title_solidbar {
	background-color: #699;
	color: #fff;
	font-size: 18px;
	margin-top: 20px;
	margin-bottom: 10px;
	padding: 3px 10px;
}

.title_borderleft {
	border-left: 5px solid #699;
	color: #333;
	font-size: 18px;
	/*margin-top: 0;*/
	margin-bottom: 10px;
	padding: 5px 0 5px 5px;
}


/*汎用contents_box*/
.contents_box img {
	float: left;
	padding: 0 10px 5px 0;
}

.contents_box .go_detail {
	clear: both;
	display: -webkit-box;
    display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
    -ms-flex-pack: end;
	justify-content: flex-end;
}

.contents_box .go_detail a {
	background-color: #699;
	border: 1px solid #699;
	border-radius: 5px;
	color: #fff;
	display: block;
	padding: 10px;
	text-align: center;
	text-decoration: none;
	width: 60%;
}
.contents_box .go_detail a:hover {
	background-color: #fff;
	border: 1px solid #699;
	color: #699;
	font-weight: bold;
}

/*contents_box_r 画像右寄せボックス ex)展示計画　展示予定の資料標本ページ*/
.contents_box_r img {
	float: right;
	padding: 0 0 5px 10px;	
}



/*ボーダー付きボックス*/
.border_box {
	border: 1px solid #ddd;
	padding: 10px;
}

/*タイル状リンクボックス　ex)博物館概要ページ*/
.link_box .contents_box {
	border: 1px solid #ddd;
	padding: 10px;
	width: 100%;
}

.link_box .contents_box img {
	padding-right: 10px;
	padding-bottom: 0;
	width: auto;
	max-width: 110px;
}

.link_box .contents_box h4 {
	display: table-cell;
	height: 100px;
	margin-top: auto;
	margin-bottom: auto;
	padding: 0 0 0 10px;
	vertical-align: middle;
}

a.link_box {
	background-color: #eee;
	display: inline-block;
	margin-bottom: 10px;
	text-decoration: none;
	width: 100%;
}

a.link_box:hover {
	background-color: #fff;
}


/*リンクボタンワイン色バージョン*/
.go_to_link {
	clear: both;
	display: -webkit-box;
    display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
    -ms-flex-pack: end;
	justify-content: flex-end;
}
.go_to_link a {
	background-color: #980165;
	border: 1px solid #980165;
	border-radius: 5px;
	color: #fff;
	display: block;
	padding: 10px;
	text-align: center;
	text-decoration: none;
	width: 60%;
}

.go_to_link a:hover {
	background-color: #fff;
	/*border: 1px solid #980165;*/
	color: #980165;
	font-weight: bold;
}
/*文字色：赤、太字*/
.red {
	color: red;
	font-weight: bold;
}

/*文字サイズ：大*/
.large {
	font-size: larger;
}

/*右揃え*/
.align_right {
	text-align: right;
}

/*画像サイズ調整:スマホ100%、タブレット＋PC：元サイズ*/
.sm100_pcauto {
	width: 100%;
}

.inner_site img {
	padding: 0 0 10px;
	width: 100%;
}

/*補足画像、図（figure）*/
figure img {
	width: 100%;
}
figcaption {
	font-size: 14px;
	margin-top: 10px;
}

/*イベント詳細*/
.detail {
	background-color: #eee;
	font-size: 14px;
	margin-bottom: 20px;
	padding: 10px;
}
.detail li {
	margin: 0 0 8px 0;
}



/*サイド*/
.side h3 {
	font-size: 16px;
}

.side_nav {
	background-color: #ddd;
	padding: 10px;
	margin-bottom: 50px;
	width: 100%;
}

.side_nav h3 {
	border: none;
	padding: 0;
}

.side_nav h3 a {
	background-color: #980165;
	color: #fff;
	display: block;
	padding: 10px;
	text-decoration: none;
	width: 100%;
}

.side_nav h3 a:hover {
	opacity: .7;
}

.side_nav li {
	position: relative;
}


.side_nav li a {
	color: #333;
	display: block;
	background-color: #eee;
	text-decoration: none;
}

.side_nav ul li a:hover {
	background-color: #fff;
}

.side_nav > ul > li > a {
	padding: 8px 8px 8px 10px;
	margin: 5px 0;
}

.side_nav ul > li > ul > li a {
	color: #333;
	padding: 8px 8px 8px 35px;
	margin: 5px 0;
}

.side_nav ul > li > ul > li a::before {
	background-color: #333;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	left: 12px;
	top: 13px;
}


.side_nav ul li a.sideNav_active {
	background-color: #699;
	color: #fff;
}

.side_nav li a.sideNav_active::before {
	background-color: #fff;
	color: #fff; 
}

.side aside {
	margin-bottom: 30px;
}

/*twitter*/
.twitter {
	width: 100%;
	height: 400px;
	border: 1px solid #eee;
	overflow-y: scroll;
	overflow-x: hidden;
}

.twitter_title {
	border: none;
	background-color: #00acee;
	color: #fff;
	font-size: 22px;
	line-height: 50px;
	height: 50px;
	padding: 0 10px 0 60px;
	position: relative;
}

.twitter_title::before {
	font-family: "Font Awesome 5 Brands";
	font-weight: 400;
	font-size: 40px;
	content: "\f099";
	position: absolute;
	left: 10px;
}

/*サイドバナー*/
aside li {
	margin-bottom: 10px;
}

aside li a {
	box-sizing: border-box;
	display: block;
	text-decoration: none;
	width: 100%;
	height: 100%;
}

.banner a {
	border: 1px solid #ddd;
	background-color: #9acccd;
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 50px;
	height: 50px;
	padding: 0 5px;
}

.banner a:hover {
	background-color: #699;
	color: #fff;
}

/*外邦図バナー*/
.gaihouzu_1 a,
.gaihouzu_2 a {
	display: block;
}

.gaihouzu_2 {
	position: relative;
}

/*外邦図って何？のフキダシ*/
.gaihouzu_2::before {
	content: "";
	border: 12px solid transparent;
	border-bottom: 12px solid #eee;
	position: absolute;
	left: 30px;
	top: -22px;
	z-index: 2;
}

.gaihouzu_2 a {
	color: #333;
	background-color: #eee;
	font-size: 16px;
	height: 40px;
	line-height: 40px;
	padding-left: 5px;
}

.gaihouzu_2 a:hover {
	text-decoration: underline;
}

.gaihouzu_2 .icon {
	font-size: 18px;
}

.gaihouzu_2 .pdf_icon {
	color: red;
}

/*宮城ミュージアムアライアンス バナー*/
.m_al1 {
	box-sizing: border-box;
	background-color: #ECDFAB;
	position: relative;
	margin-bottom: 15px;
	padding: 5px;
	width: 100%;
	heigh: 50px;
}

/*宮城ミュージアムアライアンスのフキダシ*/
.m_al1::after {
	content: "";
	border: 12px solid transparent;
	border-top: 12px solid #ECDFAB;
	position: absolute;
	left: 30px;
	bottom: -20px;
}

.m_al2 a {
	display: block;
}

/*ページトップへ戻るボタン*/
#pageTopBtn {
	bottom: 50px;
	right: 20px;
	position: fixed;
	z-index:100;
	width: 50px;
	height: 50px;
}


#pageTopBtn a {
	background-color: #57023A;
	border-radius: 50px;
	color: #fff;
	display: block;
	font-size: 24px;
	font-weight: bold;
	line-height: 50px;
	opacity: 0.8;
	text-align: center;
	text-decoration: none;
	width: 100%;
	height: 100%;
}

#pageTopBtn a:hover {
	opacity: 1;
}


/*フッター*/
footer {
	box-sizing: border-box;
	background-color: #980165;
	width: 100%;
	margin: 0;
	padding: 0;
}

footer .container {
	box-sizing: border-box;
	color: #ddd;
	padding: 10px;
}

footer p {
	margin-bottom: 5px;
	font-size: 14px; 
}

.facility_name {
	border-bottom: 1px solid #fff;
	font-size: 24px;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.tel {
	font-size: 20px;
	margin-bottom: 20px;
}

.sns_icon a {
	color: #fff;
	text-decoration: none;
}
.sns_icon i {
	font-size: 30px;
}

/*利用上のご注意　ページ内リンクの表示位置調整*/
#copyright,
#copy,
#graphics,
#link {
	margin-top: -70px;
	padding-top: 70px;
}

.footer_nav {
	font-size: 14px;
	margin: 5px; 
}

.footer_nav .attention {
	font-weight: bold;
	padding: 2px;
}
.footer_nav a {
	color: #ccc;
	display: block;
	padding: 2px;
	text-decoration: none;
	width: 100%;
}


.footer_nav a:hover {
	color: #fff;
	background-color: #57023A;
}

.copyright {
	background-color: #57023A;
	color: #ddd;
	padding: 10px 0;
	text-align: center;
	font-size: 10px;
}

/*休館日カレンダー*/
.notice span {
	background-color: #F18297;
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-right: 5px;
}


/*アコーディオンパネル*/
dl dd {
	margin-left: 0;
}

.accordion_detail > dt,
.accordion_detail > dd {
	background: #D0D0D0;
	/*border-top: 1px solid #699;*/
}

.accordion_detail >dt {
	position: relative;
	padding: 10px 20px;
	cursor: pointer;
	outline: none;
	background-color: #699;
	border: 1px solid #699;
	border-radius: 5px;
	color: #fff;
}

.accordion_detail > dt:hover {
	border: 1px solid #699;
	background-color: #fff;
	color: #699;
	
}

.accordion_detail > dt.open {
	border-radius: 5px 5px 0 0;
}

.accordion_detail > dt::after {
	position: absolute;
	/*top: 0.7rem;*/
	right: 20px;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f078";
}

.accordion_detail > dt.open::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f077";
}

.accordion_detail > dt:first-child {
	/*border-top: none;*/
}

.accordion_detail > dd {
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	background: #fff;
	color: #333;
	padding: 10px;
	margin-bottom: 0;
}


.accordion_detail > dd:last-child {
	border-bottom: 1px solid #ddd;
}



.banner_visitorinfo {
	width: 100%;
}

.banner_visitorinfo a {
	background-color: #980165;
	border: 2px solid #980165;
	color: #fff;
	display: block;
	padding: 10px;
	text-decoration: none;
	width: 100%;
	height: 100%;
}
.banner_visitorinfo a:hover {
	background-color: #fff;
	color: #980165;
}

.banner_visitorinfo .b_title {
	font-size: 30px;
	height: 50px;
	line-height: 50px;
	margin-bottom: 5px;
	padding-left: 60px;
	position: relative;
}

.banner_visitorinfo .b_title::before {
	font-family: "Font Awesome 5 Free";
	font-size: 50px;
	font-weight: 900;
	content: "\f05a";
	position: absolute;
	left: 0;
}

.banner_visitorinfo .b_lead {
	font-size: 14px;
}


/* youtube rgb = 242, 18, 27*/
.banner_youtube {
	width: 100%;
}

.banner_youtube a {
	background-color: #f2121b;
	border: 2px solid #f2121b;
	color: #fff;
	display: block;
	padding: 10px;
	text-decoration: none;
	width: 100%;
	height: 100%;
	
		
}

.banner_youtube a:hover {
	background-color: #ffffff;
	color: #f2121b;
}

.banner_youtube .b_title {
	font-size: 30px;
	height: 50px;
	line-height: 50px;
	margin-bottom: 5px;
	padding-left: 60px;
	position: relative;
}

.banner_youtube .b_title::before {
	font-family: "Font Awesome 5 Free";
	font-size: 50px;
	font-weight: 900;
	content: "\f05a";
	position: absolute;
	left: 0;
}

/***********************************/
/*～370px*/
/***********************************/
@media screen and (max-width: 370px ){

	.accordion_detail >dt {
        padding: 10px 50px 10px 10px;
    }


}

/***********************************/
/*576px～*/
/***********************************/
@media screen and (min-width: 576px ){
	.container {
		max-width: 540px;
	}
	
	.main_image h1 {
		font-size: 24px;
        top: 250px;
    }
	
	.inner_site img {
		padding: 0 2px 10px 0;
		width: auto;
	}
	
	/*twitter*/
	.twitter {
		/*width: 300px;*/
	}
}



/***********************************/
/*768px～*/
/***********************************/
@media screen and (min-width: 768px ){
	.container {
		padding-left: 0;
        padding-right: 0;
		max-width: 720px;
	}
	/*ヘッダー*/
	header .container {
		height: 48px;
		overflow: hidden;
	}

	header .head_logo {
		font-size: 20px;
		height: 48px;
		line-height: 20px;
		padding-top: 7px;
		padding-left: 55px;
		vertical-align: bottom;
		text-decoration: none;
	}

	header .sub_title {
		display: inline;
		font-size: 12px;
		line-height: 12px;
	}
	
	/*メインイメージ*/
	.main_image .container {
		padding: 82px 0 30px;
		text-align: left;
	}

	.hero_image {
		width: auto;
		height: auto;
		margin-top: 0;
	}
	
	.main_image h1 {
		left: 320px;
		top: 160px;
		padding-right: 0;
	}
	
	.title_display {
        display: block;
    }
	
	/*メイン*/
	article {
		margin-bottom: 50px;
	}
	
	.contents_box img {
        padding: 0 15px 0 0;
    }

	.contents_box .go_detail a {
		width: 30%;
	}
	
	.go_to_link a {
		width: 30%;
	}
	
	/*タイル状リンクボックス　ex)博物館概要ページ*/
	a.link_box {
		margin-right: 1%;
        width: 48%;
    }

	
    figure img {
        width: auto;
    }

	
	/*サイド*/
	.side_nav {
        /*width: 50%;*/
    }

	
	/*ページトップへ戻るボタン*/
	#pageTopBtn {
		bottom: 50px;
		right: 40px;
	}
	
	/*フッター*/
	.address {
		float: left;
		width: 70%;
	}
	.footer_nav_contents {
		float: left;
		width: 30%;
	}
	
	.sns_icon {
		clear: both;
	}
	
	/*タブレット＋PC：非表示*/
	.d_tab_none {
		display: none!important;
	}
	
	/*画像サイズ調整:スマホ100%、タブレット＋PC：元サイズ*/
    .sm100_pcauto {
        width: auto;
    }
	
}

/***********************************/
/*991px~*/
/***********************************/
@media print, screen and (min-width: 991px ){
	/*グローバルナビ*/
	/*PC：非表示*/
	.d_none {
		display: none!important;
	}
	
	/*サイドバナー画像*/
	.inner_site img {
		padding: 0 2px 10px 0;
		width: 100%;
	}
	
	
	
	
	
	
	
}



/***********************************/
/*992px～*/
/***********************************/
@media print, screen and (min-width: 992px ){
	
	.container {
		max-width: 960px;
	}
	
	/*ヘッダー*/
	header .container {
		height: 80px;
		overflow: hidden;
	}

	header .head_logo {
		background-size: auto 75px;
		background-position: left top;
		font-size: 30px;
		height: 100%;
		line-height: 30px;
		padding-top: 10px;
		padding-left: 85px;
		vertical-align: bottom;
		text-decoration: none;
	}

	header .sub_title {
		display: inline;
		font-size: 18px;
		line-height: 18px;
		/*vertical-align: baseline;*/
	}
	
	header.fixed .container {
		height: 48px;
	}
	
	header.fixed .head_logo {
		background-size: auto 50px;
		font-size: 20px;
		height: 48px;
		line-height: 20px;
		padding-top: 7px;
		padding-left: 55px;
	}
	
	header.fixed .sub_title {
		font-size: 12px;
		line-height: 12px;
	}

	

	/*メインイメージ*/
	.main_image {
		padding-top: 140px;

	}
	.main_image .container {
		padding: 30px 0 30px;
	}

	.hero_image {
		width: auto;
		height: auto;
	}
	
	.main_image h1 {
		font-size: 30px;
		line-height: 1.2;
		position: absolute;
		left: 320px;
		top: 120px;
	}
	

	
	/*メインコンテナ*/
	.main_container {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	
	.main {
		margin-right: 30px;
		margin-bottom: 0;
		flex: 1;
	}
	
	.side {
		width: 250px;
	}
	
	/*メイン*/
	.contents_box .go_detail a {
        font-size: 14px;
		padding: 5px 20px;
    }
	
	.go_to_link a {
		font-size: 14px;
		padding: 5px 20px;
	}
	
	/*サイド*/
	.side_nav h3 {
		margin-bottom: 10px;
	}
	
	.side_nav li a {
		font-size: 14px;
	}
	
	.side_nav ul > li > a {
        padding: 3px 5px 3px 10px;
    }

    .side_nav > ul > li > a::before,
	.side_nav > ul > li > ul > li > a::before{
        top: 6px;
    }

    .side_nav ul > li > ul > li a {
        padding: 3px 5px 3px 35px;
        margin: 5px 0;
    }

	/*twitter*/
	.twitter {
		width: 100%;
	}
	
	/*フッター*/
	.address {
		width: 60%;
	}
	.footer_nav_contents {
		width: 40%;
	}
	.footer_nav {
		float: left;
		width: 40%;
	}
	
	/*利用上のご注意　ページ内リンクの表示位置調整*/
    #copyright,
    #copy,
    #graphics,
    #link {
        margin-top: -120px;
        padding-top: 120px;
    }
	
	
	
	
	
	
}



/***********************************/
/*1200px～*/
/***********************************/
@media print, screen and (min-width: 1200px ){
	/*ヘッダー*/
	header .h_btn_r a {
	right: 50%;
	margin-right: -550px;
	}
	header .h_btn_l a {
	right: 50%;
	margin-right: -350px;
	}

	.container {
		max-width: 1140px;
	}
	
	
}

