@charset "utf-8";

/* ==================================================
PC
================================================== */

/* ========== トップページ ========== */

/* サブサイト共通ヘッダ */
#mainimg_box {
	width: 1100px;
    margin: 30px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
            align-items: flex-start;
}
#mainimg_box h1 {
	width: 740px;
    margin: 0;
}
#mainimg_box h1 a {
	display: block;
	color: inherit;
	text-decoration: none;
}
#mainimg_box h1 img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
#mainimg_box .site_name {
	display: block;
	width: 100%;
	margin: 0px;
	padding: 0px 30px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 3.2rem;
	text-shadow: 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff,
		0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff,
		0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff;
	position: absolute;
	top: 30px;
	left: 0px;
	z-index: 1;
}
#mainimg_box .site_name.noimage {
	position: static;
	padding: 30px;
	text-shadow: none;
	background: #f6f6f6;
	color: #333333;
}

/* カレンダータブ切り替え(仮） */
.main_box_calendar {
	width: 320px;
}
#calendar_wrapper {
	padding: 20px;
	background: #f6f6f6;
}

/* calendar buttons */
#calendar_tab_title ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
#calendar_tab_title ul li {
	width: 100%;
}
#calendar_tab_title ul li button {
	display: block;
	width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 4px solid #f6f6f6;
	background: #46825c;
	color: #ffffff;
	font-size: 1.4rem;
	line-height: 2rem;
	font-weight: bold;
	text-align: center;
	padding: 1px 0px;
}
#calendar_tab_title ul li button:hover {
	text-decoration: underline;
}
#calendar_tab_title ul li button.tab_on,
#calendar_tab_title ul li button.tab_on:hover {
	border-color: transparent !important;
	font-size: 1.6rem;
	text-decoration: none;
	pointer-events: none;
	position: relative;
}
#calendar_tab_title ul li button.tab_on::before {
	content: '';
	position: absolute;
	bottom: -14px;
	left: 50%;
	-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 9px solid #46825c;
}

#calendar_tab_title ul li#calendar_tab_title_2 button {
	background: #c4523f;
	color: #ffffff;
}
#calendar_tab_title ul li#calendar_tab_title_2 button.tab_on::before {
	border-top-color: #c4523f;
}

#calendar_tab_detail_wrap {
	border: 4px solid #46825c;
	background: #ffffff;
	padding: 10px 16px;
}
#calendar_tab_title:has(#calendar_tab_title_2 button.tab_on) + #calendar_tab_detail_wrap {
	border-color: #c4523f;
}

#calendar_tab_detail_wrap .calendar_today_text {
	margin-bottom: 5px;
}
#calendar_tab_detail_wrap .calendar_today_text br {
	display: none;
}
#calendar_tab_detail .cal_txt,
#calendar_tab_detail .cal_txt p:has(strong) {
	margin-top: 10px;
}

#calendar_tab_detail table td,
#main_body #calendar_tab_detail table td {
	padding: 2px 0px;
}

.color_change #calendar_tab_detail_wrap {
	border-color: transparent !important;
}
.color_change #calendar_tab_title ul li button.tab_on,
.color_change #calendar_tab_title ul li button.tab_on:hover {
	text-decoration: none !important;
	color: inherit !important;
}
.color_change #calendar_tab_title ul li button::before {
	border-top-color: #ffffff !important;
}

/* SNSアイコン */
.media_box {
	background: #fff;
}
.media_box ul {
	margin: 0;
    padding: 28px 0;
    list-style: none;
    gap: 30px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    	-ms-flex-align: center;
    			align-items: center;
}
.media_box ul li {
	line-height: 0;
}
.media_box ul li a {
	display: block;
}

/* 非表示 */
.system_box_waku .txt_rss {
	display: none;
}
#footstep_wrap {
	display: none !important;
}

#mymainback {
	width: 100%;
	margin: 0;
	padding: 0;
	display: block;
}

/* 重要なお知らせ */
#site_header_important {
	width: 1100px;
	margin: 0px auto 30px;
}
#site_header_important #site_footer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 10px 20px;
	padding: 20px;
}
#site_header_important #site_footer .ttl {
	margin: 0px;
	width: 21rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

#site_header_important #site_footer_box {
	width: calc(100% - 21rem - 20px);
	font-size: 1.8rem;
	line-height: 1.5;
	padding: 8px 0px;
}
#site_header_important #site_footer_box p {
	margin: 0px 0px 1em;
}
#site_header_important #site_footer_box p:last-child {
	margin-bottom: 0px;
}

/* 新着情報.歴史博物館RSS */
.top_news_wrap {
	width: 1100px;
    margin: 0 auto;
    padding: 32px 0 60px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
            align-items: flex-start;
}

/* 新着情報 */
.section_information h2, .system_box h2 {
	background: transparent !important;
	margin: 0 0 10px;
    padding: 0 0 0 20px;
    font-size: 2.8rem;
    font-weight: normal;
    color: #333333;
    line-height: 1.43;
    border-left: 4px solid #91427b;
    letter-spacing: 0.1em;
    font-family: 'Hiragino Mincho Pro', 'HiraMinProN-W3', 'ヒラギノ明朝 Pro W3', Century, 'BIZ UDPMincho', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', serif;
}

.section_information p.no_data {
	margin: 0px;
	padding: 20px 0px;
}

.section_information_list ul {
	margin: 0;
	padding: 0;
	list-style: none;
	background: #fff;
}
.section_information_list ul li {
    padding: 20px 10px 15px;
    font-size: 1.8rem;
    line-height: 1.5;
    letter-spacing: 0;
    border-bottom: 1px solid #cccccc;
}
.section_information_list ul li span {
	display: block;
}
.section_information_list ul li span.article_date {
	font-size: 1.4rem;
    font-weight: bold;
    color: #333333;
	line-height: 1;
	margin: 0 0 5px;
}
.section_information_list ul li span a {
	color: #333333;
}
.section_information_list img.icon_new {
	vertical-align: baseline;
	margin-left: 0.5em;
}

/* 新着情報（一覧 / RSS） */
.link_box {
    margin: 30px 0 0;
    text-align: center;
}
.link_box span {
	display: inline-block;
}
.link_box a {
	display: inline-block;
	color: #fff;
    font-size: 1.6rem;
    line-height: 1.25;
	text-decoration: none;
    padding: 17px 20px 13px 41px;
	text-align: left;
	letter-spacing: 0;
	background: url(/img/sites/edu14/pc/arrow.png) no-repeat center left 22px #91427b;
    -webkit-box-sizing: border-box;    
     		box-sizing: border-box;
}
.link_box span a:hover, .link_box a:hover,
.link_box span a:focus, .link_box a:focus {
	text-decoration: underline;
}

/* 歴史博物館RSS */
.top_news_rss_wrap {
	width: 530px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
}
.h2_rss a {
    color: currentcolor;
    text-decoration: none;
    pointer-events: none;
}
.info_list ul.list_rss {
    background: #fff;
}
.info_list ul.list_rss li {
	padding: 20px 10px 15px;
}

/* ピックアップ */
#pickup_wrap {
	width: 1100px;
    margin: 0 auto;
}
#main_body #pickup_wrap h2 {
	margin: 0 auto 30px;
    padding: 0 0 0 25px;
    background: transparent !important;
    font-size: 2.8rem;
    font-weight: normal;
    color: #333333;
    line-height: 1.43;
    letter-spacing: 0.1em;
    border-left: 4px solid #91427b;
    font-family: 'Hiragino Mincho Pro', 'HiraMinProN-W3', 'ヒラギノ明朝 Pro W3', Century, 'BIZ UDPMincho', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', serif;
}
#pickup_wrap ul {
	margin: 0;
    padding: 0;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 30px 22px;
}
#pickup_wrap ul li {
	width: 352px;
}
#pickup_wrap ul li a {
	display: block;
    text-decoration: none;
    line-height: 0;
}
#pickup_wrap ul li a:hover span {
	text-decoration: underline;
}
#pickup_wrap ul li a:focus {
	outline: 3px solid #7f7f7f;
}
#pickup_wrap ul li a img {
	max-width: 100%;
	height: auto;
}
#pickup_wrap ul li a span {
	display: block;
    font-size: 2rem;
    color: #333333;
    padding: 0 0 0 50px;
    line-height: 1.4;
    margin: 10px 0 0;
    letter-spacing: 0;
    background: url(/img/sites/edu14/pc/circle_arrow.png) no-repeat left center;
}

/* 自由編集項目（最上部） */
.free_box_wrap1 {
	width: 1100px;
    margin: 0 auto;
    padding: 60px 0;
}
.free_box_wrap1 h2 {
	margin: 0 auto 30px;
    padding: 0 0 0 21px;
    background: transparent !important;
    font-weight: normal;
    font-size: 2.8rem;
    color: #333333;
    line-height: 1.43;
    letter-spacing: 0.1em;
    border-left: 4px solid #91427b;
    font-family: 'Hiragino Mincho Pro', 'HiraMinProN-W3', 'ヒラギノ明朝 Pro W3', Century, 'BIZ UDPMincho', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', serif;
}
#free_box_list {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    gap: 20px;
}
#free_box_list div.free_box {
	width: 260px;
}
div.free_box p {
	margin: 0;
}
div.free_box p a {
	display: block;
    padding: 29px 20px 29px 67px;
    border: 1px solid #91427b;
    color: #333333;
    text-decoration: none;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0;
    background: url(/img/sites/edu14/pc/circle_arrow.png) no-repeat left 19px center #fff;
}
div.free_box p a:hover {
	text-decoration: underline;
}

/* ========== 背景色変更 ========== */

/* 共通 */
.color_change .section_information h2, 
.color_change .system_box h2,
.color_change #main_body #pickup_wrap h2,
.color_change .free_box_wrap1 h2 {
	background-color: transparent !important;
    border-color: #91427b !important;
}
.color_change .link_box a {
	border: 1px solid rgba(255, 255, 255, 0.5);
}
.color_change .media_box ul li:nth-child(1) a img {
    -webkit-filter: invert(1);
    		filter: invert(1);
}

/* 黒 */
.color_black .calendar_tabs button {
    border-color: #000 !important;
}
.color_black .calendar_tabs button#cal_sel_kouko.view,
.color_black .calendar_tabs button#cal_sel_rekishi.view,
.color_black .detail_free_wrap:first-child,
.color_black .detail_free_wrap:last-child {
    border-color: #333333 !important;
}
.color_black button#cal_sel_kouko.view::before, 
.color_black button#cal_sel_rekishi.view::before {
	border-top-color: #333333 !important;
}
/* 青 */
.color_blue .calendar_tabs button {
    border-color: #0000ff !important;
}
.color_blue .calendar_tabs button#cal_sel_kouko.view,
.color_blue .calendar_tabs button#cal_sel_rekishi.view,
.color_blue .detail_free_wrap:first-child,
.color_blue .detail_free_wrap:last-child {
    border-color: #0000aa !important;
}

.color_blue button#cal_sel_kouko.view::before, 
.color_blue button#cal_sel_rekishi.view::before {
	border-top-color: #0000aa !important;
}

/* ==================================================
PC ここまで
================================================== */


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1100px) {

	/* ========== トップページ ========== */

	/* スライドショー */
	#top_photo {
		width: auto;
		margin: 15px 15px 0px;
	}

	/* スライドショー（3枚表示） */
	#top_photo.triple #top_photo_list {
		width: auto;
		left: auto;
		-webkit-transform: none;
		    -ms-transform: none;
		        transform: none;
	}

	/* スライドコントロールボタン */
	*[id*="_control_box"] {
		text-align: center;
	}

	/* スライドナビゲーションボタン */
	*[id*="_control_navigation"] {
		margin: 5px 20px;
	}

	/* バナー広告 */
	#footer_banner {
		width: auto;
		margin: 0px var(--mymainback-margin-side, 15px) 40px;
	}
	#footer_banner ul.banner_list {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 10px;
	}
	#footer_banner ul.banner_list li {
		width: calc(50% - 5px);
		max-width: 200px;
	}

	.banner_text span:nth-child(2n) {
		font-size: var(--fontsize-main-small, 1.3rem);
	}

	/* サブサイト共通ヘッダ */
	#mainimg_box {
		width: auto;
	    display: block;
	    margin: 0 auto;
	}
	#mainimg_box h1 {
		width: auto;
	}
	#mainimg_box .site_name {
		position: static;
		font-size: 1.8rem;
		background: #333333;
		color: #ffffff;
		text-shadow: none;
		padding: 5px 20px;
	}
	#mainimg_box .site_name.noimage {
		background: #f6f6f6;
		color: #333333;
		text-shadow: none;
		padding: 20px;
	}
	/* カレンダータブ切り替え(仮） */
	.main_box_calendar {
		width: auto;
    	margin: 15px 15px 0;
	}	
	.detail_calendar_wrap {
		padding: 20px 32px 20px 33px;
	}

	/* 文字拡大時 */
	.font_size_changed .detail_calendar_wrap {
		padding: 20px 15px;
	}
	/* SNSアイコン */
	.media_box ul {
	    padding: 30px 0;
	}

	/* 新着情報.歴史博物館RSS */
	.top_news_wrap {
		display: block;
		width: auto;
	    margin: 0 15px;
	    padding: 30px 0 60px;
	}
	
	/* 新着情報 */
	.section_information {
		width: auto;
	}
	.section_information h2 {
	    font-size: 2.4rem;
	    line-height: 1.5;
        padding: 2px 0 2px 17px;
	}
	.section_information_list ul li {
		font-size: 1.6rem;
		padding: 20px 10px 17px;
	}
	.section_information_list ul li span.article_date {
		font-size: 1.3rem;
	}

	.section_information_list ul li:has(img.icon_new) {
		position: relative;
	}
	.section_information_list ul li:has(img.icon_new) > span.article_date {
		padding-left: 45px;
	}
	.section_information_list ul li:has(img.icon_new) img.icon_new {
		margin: 0px;
		position: absolute;
		top: 17px;
		left: 0px;
	}

	/* 歴史博物館RSS */
	.top_news_rss_wrap {
		width: auto;
    	margin: 60px 0 0;
	}
	.system_box h2 {
        font-size: 2.4rem;
        line-height: 1.5;
        padding: 2px 0 2px 16px;
	}

	/* 新着情報 . 歴史博物館RSS （一覧） */
	.link_box a {
	    font-size: 1.4rem;
	    line-height: 1.5;
	    padding: 10px 21px 9px 28px;
	    background-position: left 12px center;
	}

	/* ピックアップ */
	#pickup_wrap {
		width: auto;
    	margin: 0 15px;
	}
	#main_body #pickup_wrap h2 {
		font-size: 2.4rem;
    	line-height: 1.5;
    	padding: 2px 0 2px 16px;
	}
	#pickup_wrap ul {
		gap: 20px 11px;
	}
	#pickup_wrap ul li {
		width: calc(100% / 2.07);
        max-width: 353px
	}
	@media screen and (max-width: 355px) {
		#pickup_wrap ul li {
			width: calc(100% / 2.08);
		}
	}
	#pickup_wrap ul li a span {
	    background-size: 20px 20px;
        font-size: 1.5rem;
        padding: 0 0 0 30px;
	}
	@media screen and (max-width: 320px) {
		#pickup_wrap ul li a span {
			font-size: 1.3;
	        background-size: 15px 15px;
	        padding: 0 0 0 20px;
		}
	}

	/* 自由編集項目（最上部） */
	.free_box_wrap1 {
		width: auto;
	    margin: 0 15px;
	    padding: 60px 0;
	}
	.free_box_wrap1 h2 {
		font-size: 2.4rem;
	    padding: 2px 18px;
	    line-height: 1.5;
	}
	#free_box_list {
	    display: block;
	}
	#free_box_list div.free_box {
		width: 100%;
    	margin: 0 0 20px;
	}
	#free_box_list div.free_box:last-child {
		margin: 0;
	}
	#free_box_list div.free_box p a {
		padding: 26px 10px 25px 62px;
	    font-size: 1.8rem;
	    line-height: 1.5;
	}
	#free_box_list div.free_box p a br {
		display: none;
	}

	/* 重要なお知らせ */
	#site_header_important {
		width: auto;
		margin: 0px 15px 10px;
	}
	#site_header_important #site_footer {
		display: block;
	}
	#site_header_important #site_footer .ttl {
		width: auto;
		margin-bottom: 15px;
	}
	#site_header_important #site_footer_box {
		width: auto;
		padding: 0px;
	}


	/* ========== 背景色変更 ========== */

	/* 共通 */
	.color_change * {

	}
	/* 黒 */
	.color_black * {

	}
	/* 青 */
	.color_blue * {

	}

}
/* ==================================================
スマートフォン ここまで
================================================== */