@charset "utf-8";

/* =======================================

	reset 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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* =======================================

	base css

========================================== */
body {
	font:14px/1 Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	color: #333;
	background: #f6f3fe;
	/*background: -moz-linear-gradient(top, #000000 0%, #f6f3fe 100%);
	background: -webkit-linear-gradient(top, #000000 0%,#f6f3fe 100%);
	background: linear-gradient(to bottom, #000000 0%,#f6f3fe 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#f6f3fe',GradientType=0 );*/
	text-align: center;
	line-height: 160%;
	position: relative;
	overflow-x: hidden;
}
nav ul {
	padding: 0;
}
a:link,
a:visited {
	color: #00668C;
	text-decoration: underline;
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s;
}
a:hover {
	text-decoration: none;
}
a:hover img {
	opacity: 0.8;
}
.wrapper {
	box-sizing: border-box;
	background: #e8fdf6;
	background: -moz-linear-gradient(top, #e8fdf6 0%, #f6f3fe 100%);
	background: -webkit-linear-gradient(top, #e8fdf6 0%,#f6f3fe 100%);
	background: linear-gradient(to bottom, #e8fdf6 0%,#f6f3fe 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e8fdf6', endColorstr='#f6f3fe',GradientType=0 );
	min-width: 980px;
	padding: 0 0 30px;
	position: relative;
/*	top: 350px;*/
	left: auto;
}
.siteTitle {
    background: #000;
	color: #fff;
	width: auto;
	padding: 10px 13px;
	margin: 0 0 30px;
	box-sizing: border-box;
}
.siteTitle em {
	display: block;
	font-size: 1.286em;
}
.contents {
	width: 980px;
	margin: 0 auto 30px;
	overflow: hidden;
	text-align: left;
}
.main {
	width: 700px;
	float: left;
}
.sub {
	width: 260px;
	padding-top: 50px;
	float: right;
}
.contents section {
	overflow: hidden;
	margin: 0 0 40px;
}
section p {
	margin: 0 0 20px;
}
section .sectionChild {
	margin: 0 0 30px;
}
section .sectionGrandChild {
	margin: 0 0 20px;
}
section .sectionChild:last-child,
section .sectionChild .sectionGrandChild:last-child{
	margin: 0;
}
section strong {
    font-weight: bold;
}
.textLeft01 {
	float: left;
	width: 50%;
}
.imageHalfRight01,
.imageHalfRight02 {
	float: right;
	box-sizing: border-box;
	padding-left: 25px;
	width: 50%;
}
.imageHalfRight01 figcaption,
.imageHalfRight02 figcaption {
	font-size: 0.875em;
	text-align: center;
}
.imageVariable01 img,
.imageHalfRight01 img,
.imageHalfRight02 img {
	width: 100%;
	height: auto;
}
.clearfix:after {
    content: '';
    display: block;
    clear: both;
}
header i,
.wrapper .contents i {
	font-size: 0.714em;
}
.wrapper .contents i.fa-file-pdf {
	font-size: 1em;
	color: #f00;
}
header .fa-window-restore,
footer .fa-window-restore,
.wrapper .contents .fa-window-restore,
.wrapper .contents .fa-file-pdf {
	margin-left: 6px;
}

/* =========== list =========== */
.list01,
.listDecimal {
	padding-left: 20px;
}
.list01 li {
	list-style-type: disc;
}
.list01 li ul {
	padding-left: 20px;
}
.listDecimal {
	list-style-type: decimal;
}
/* =========== table =========== */
.table01 {
	width: 100%;
	border-top: 1px solid #ccc;
}
.table01 td {
	border-bottom: 1px solid #ccc;
	text-align: left;
	vertical-align: top;
	padding: 10px 0;
}
/* =========== header =========== */
.inner {
    width: 980px;
    margin: 0 auto;
}
.inner:after {
    content: '';
    clear: both;
    display: block;
}
#topHead {
	background-color: #00286a;
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 100px auto 0;
    padding: 10px 0 12px;
    line-height: 1;
    z-index: 999;
}
#topHead a,
#topHead {
    color: #fff;
    text-decoration: none;
}
#topHead .inner {
    position: relative;
}
#topHead .logo {
    float: left;
	text-align: left;
	width: 320px;
	font-size: 1.5em;
	display: table;
}
#topHead .logo em,
#topHead .logo a {
	width: 100%;
	height: 38px;
	padding-left: 124px;
	line-height: 1.4;
	vertical-align: bottom;
	box-sizing: border-box;
	background-image: url(../images/base/logo.svg);
	background-repeat: no-repeat;
	background-position: left center;
	-webkit-background-size: 116px 38px;
	background-size: 116px 38px;
	display: table-cell;
}
#globalNav ul {
    list-style: none;
    position: absolute;
    right: 0;
    top: 0;
}
#globalNav ul li {
    float: left;
	margin: 0 10px;
	font-size: 0.875em;
}
#globalNav ul li:last-child {
	margin: 0;
}
#globalNav ul li a {
	position: relative;
	display: inline-block;
    padding: 12px 10px;
}
#globalNav ul .menuDropDown:nth-child(5) a {
	background-color: #003fa6;
}
#globalNav ul .menuDropDown:nth-child(6) a {
	background-color: #005ffb;
}
#globalNav ul li a::before {
    position: absolute;
    bottom: 4px;
    left: 0;
    visibility: hidden;
    width: 97.9%;
	margin-left: 10px;
	width: -webkit-calc(100% - 20px);
	width: -moz-calc(100% - 20px);
	width: calc(100% - 20px);
    height: 1px;
    content: '';
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    background-color: #fff;
}
#globalNav ul li a:hover::before {
	visibility: visible;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
#globalNav ul li:nth-child(5) a:hover::before,
#globalNav ul li:nth-child(6) a:hover::before {
	visibility: hidden;
}
.home #globalNav ul li:nth-child(1) a::before,
.about #globalNav ul li:nth-child(2) a::before,
.introduction #globalNav ul li:nth-child(3) a::before,
.museum #globalNav ul li:nth-child(3) a::before,
.shiga #globalNav ul li:nth-child(3) a::before,
.yurinoki #globalNav ul li:nth-child(3) a::before,
.textiles #globalNav ul li:nth-child(3) a::before,
.silk #globalNav ul li:nth-child(3) a::before,
.archives #globalNav ul li:nth-child(3) a::before,
.others #globalNav ul li:nth-child(3) a::before,
.news #globalNav ul li:nth-child(4) a::before {
	visibility: visible;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
/*ドロップダウン*/
#globalNav ul .menuSecondLevel {
    visibility: hidden;
    opacity: 0;
    z-index: 10;
}
#globalNav ul .menuSecondLevel li {
	text-align: left;
    border-bottom: 1px solid #ddd;
	margin: 0;
}
#globalNav ul .menuSecondLevel li a:hover {
    background: #999;
}
#globalNav ul .menuDropDown .menuSecondLevel {
    position: absolute;
    top: 34px;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    padding: 4px;
    background: #003fa6;
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s;
}
#globalNav ul li:nth-child(5) .menuSecondLevel {
	background-color: #003fa6;
}
#globalNav ul li:nth-child(6) .menuSecondLevel {
	background-color: #005ffb;
}
#globalNav ul .menuDropDown:hover .menuSecondLevel {
    top: 36px;
    visibility: visible;
    opacity: 1;
}
#globalNav ul .menuDropDown .menuSecondLevel > li {
	width: 100%;
	font-size: 1.00em;
}
#globalNav ul .menuDropDown .menuSecondLevel > li a {
	display: block;
	padding: 10px 6px 10px 26px;
	position: relative;
}
#globalNav ul .menuDropDown .menuSecondLevel > li a .fa-arrow-right {
	position: absolute;
	top: 12px;
	left: 10px;
}
#globalNav ul .menuDropDown .menuSecondLevel > li a::before {
	visibility: hidden;
}
/* Fixed */
#topHead.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    background: #fff;
    background: rgba(0,40,106,.9);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
/* Toggle Button */
#navToggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#navToggle div {
    position: relative;
}
#navToggle span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#navToggle span:nth-child(1) {
    top: 0;
}
#navToggle span:nth-child(2) {
    top: 11px;
}
#navToggle span:nth-child(3) {
    top: 22px;
}
.headerImage {
	width: 100%;
	height: 350px;
/*
	position: fixed;
	z-index: 0;
	border: 0;
	background-image: url(../../main-image/images/mainimage.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: cover;
	background-size: cover;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
*/
	display: block;
}
.headerImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* =========== footer =========== */
footer {
	width: 980px;
	margin: 0 auto;
	box-sizing: border-box;
	position: relative;
}
footer .pageScroll {
	text-align: center;
	font-size: 0.875em;
}
footer .pageScroll a {
	color: #fff;
	background-color: #00286a;
	text-decoration: none;
	display: block;
	padding: 10px 15px;
}
footer .pageScroll a:hover {
	background-color: #00173e;
}
footer nav {
	max-width: 660px;
	margin: 0 auto;
}
footer nav ul {
	padding: 15px 0;
}
footer nav ul li {
	display: inline;
	margin: 0 10px;
	font-size: 0.875em;
}
.contactLink {
	max-width: 360px;
	margin: 0 auto 20px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
/*	justify-content: space-between;*/
    justify-content: center;
	align-items: center;
}
.contactLink .btnContact {
	font-size: 0.714em;
	width: 48%;
	text-align: center;
}
.contactLink .btnContact a {
	display: block;
	text-decoration: none;
	background-color: #666;
	padding: 4px 10px;
	color: #fff;
}
.contactLink .btnContact a:hover {
	background-color: #333;
}
.contactLink .btnContact a .fa-arrow-right {
	margin-right: 6px;
}
footer .tel {
	font-size: 1.143em;
	width: 48%;
	text-align: center;
}
footer .copy {
	color: #666;
	font-size: 0.875em;
}
.snsLinks {
	width: 160px;
	position: absolute;
	top: 52px;
	right: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
}
.snsLinks li {
	width: 30px;
	margin: 0 0 5px 10px;
}
.snsLinks li img {
	width: 100%;
	height: auto;
}
/* =========== side area =========== */
.localNavi01,
.boxFacebook {
	margin-bottom: 20px;
}
.localNavi01 h2,
.boxFacebook h2 {
	background: #333;
	color: #fff;
	padding: 10px 15px;
	font-size: 1.286em;
}
.localNavi01 ul {
	background: #fff;
	padding: 10px 15px;
}
.localNavi01 ul li {
	border-bottom: 1px solid #ccc;
	overflow: hidden;
}
.localNavi01 ul li a {
	text-decoration: none;
	display: block;
	padding: 10px 6px 10px 26px;
	position: relative;
}
.localNavi01 ul li a:hover {
	background-color: #efefef;
}
.localNavi01 ul li a .fa-arrow-right {
	position: absolute;
	top: 16px;
	left: 10px;
}
.cmsLocalNavi {
	background: #fff;
	padding: 0 0 15px;
	margin: 0 0 10px;
}
.cmsLocalNavi h2 {
	font-size: 1.286em;
	background: #333;
	color: #fff;
	padding: 10px 15px;
	margin: 0;
}
.cmsLocalNavi p {
	border-bottom: 1px solid #ccc;
	margin: 10px 15px 0;
}
.cmsLocalNavi dl {
	border-bottom: 1px solid #ccc;
	margin: 0 15px;
}
.cmsLocalNavi dl dt {
	padding: 10px 0;
}
.cmsLocalNavi dl dd ul {
	padding: 0;
}
.cmsLocalNavi dl dd ul li {
	border-bottom: 1px solid #eee;
}
.cmsLocalNavi dl dd ul li:last-child {
	border-bottom: none;
}
.cmsLocalNavi p a,
.cmsLocalNavi dl dd ul li a {
	text-decoration: none;
	display: block;
	padding: 10px 6px 10px 26px;
	position: relative;
}
.cmsLocalNavi p a:hover,
.cmsLocalNavi dl dd ul li a:hover {
	background-color: #efefef;
}
.cmsLocalNavi p a i,
.cmsLocalNavi dl dd ul li a i {
	position: absolute;
	top: 16px;
	left: 10px;
}
.cmsLocalNavi dl dd ul li ul {
	padding: 0 0 0 20px;
}
.cmsLocalNavi dl dd ul li ul li {
	border-bottom: none;
}
.cmsLocalNavi dl dd select.selectBox {
	width: 210px;
	margin: 0 0 10px;
}
ul.sideBanner {
	padding: 0;
	margin-bottom: 20px;
}
ul.sideBanner li {
	list-style: none;
	line-height: 0;
	margin: 0 0 6px;
	text-align: center;
}
ul.sideBanner li img {
	display: block;
	width: 100%;
	height: auto;
}
.outsideBannerList {
	margin-bottom: 20px;
}
.outsideBannerList dt {
	background: #333;
	color: #fff;
	padding: 10px 15px;
	font-size: 1.286em;
}
.outsideBannerList dd {
	padding: 6px 0 0;
}
.outsideBannerList dd ul li {
	margin: 0 0 6px;
	font-size: 1.143em;
	text-align: center;
}
.outsideBannerList dd ul li a {
	color: #333;
	display: block;
	border: 1px solid #ccc;
	background-color: #fff;
	padding: 12px 20px;
	text-decoration: none;
}
.outsideBannerList dd ul li a:hover {
	background-color: #efefef;
}
/* =========== heading =========== */
.heading01 {
	background: none;
	color: #333;
	height: 50px;
	padding: 0;
	line-height: 1.2;
	font-size: 1.714em;
	font-weight: normal;
}
.heading02 {
	background: #333;
	color: #fff;
	padding: 10px 15px;
	margin: 0 0 20px;
	font-size: 1.286em;
	font-weight: normal;
}
.heading03 {
	border-bottom: 1px dotted #333;
	padding: 2px 0 7px 13px;
	margin: 0 0 15px;
	font-size: 1.286em;
	font-weight: normal;
	position: relative;
	overflow: hidden;
}
.heading03::before {
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	width: 3px;
	height: 100%;
	margin-top: -4px;
	background-color: #333;
}

.newsContents .heading03 {
	margin: 0 0 5px;
}
.newsDatetime {
	display: block;
	font-size: 0.875em;
	margin: 0 0 15px;
}
.heading04 {
	font-size: 1.143em;
	font-weight: normal;
	background-color: #fff;
	padding: 6px 12px;
	border-top: 1px solid #333;
	margin: 0 0 15px;
}
.heading05 {
	font-size: 1.143em;
	font-weight: normal;
	padding: 0 0 0 16px;
	margin: 0 0 10px;
	position: relative;
}
.heading05::before {
	content: '';
	background-color: #00286a;
	width: 10px;
	height: 4px;
	position: absolute;
	top: 10px;
	left: 0;
}
/* =========== adjustment related =========== */
.wrapper .contents .txtLeft { text-align: left;}
.wrapper .contents .txtRight { text-align: right;}
.wrapper .contents .txtCenter { text-align: center;}
.wrapper .contents .fLeft { float: left;}
.wrapper .contents .fRight { float: right;}
.wrapper .contents .phLeft { float: left; margin: 0 20px 10px 0;}
.wrapper .contents .phRight { float: right; margin: 0 0 10px 20px;}
.wrapper .contents .mb10 { margin-bottom: 10px;}
.wrapper .contents .mb20 { margin-bottom: 20px;}
.wrapper .contents .mb30 { margin-bottom: 30px;}
.wrapper .contents .mb40 { margin-bottom: 40px;}
.wrapper .contents .w5 { width: 5%;}
.wrapper .contents .w10 { width: 10%;}
.wrapper .contents .w12 { width: 12%;}
.wrapper .contents .w15 { width: 15%;}
.wrapper .contents .w20 { width: 20%;}
.wrapper .contents .w25 { width: 25%;}
.wrapper .contents .w30 { width: 30%;}
.wrapper .contents .w33 { width: 33%;}
.wrapper .contents .w40 { width: 40%;}
.wrapper .contents .w50 { width: 50%;}
/* =======================================

	unique css

========================================== */
/* =========== home =========== */
.home .sub {
	padding: 0;
}
.headingSubLink {
	float: right;
	color: #fff;
	font-size: 0.667em;
}
.headingSubLink a {
	color: #fff;
}
.contentsLink {
	width: 100%;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
}
.contentsLink li {
	width: 31.33%;
	text-align: center;
	margin: 0 0 20px;
}
.contentsLink li:nth-child(1) {
	padding-right: 20px;
}
.contentsLink li:nth-child(3n) {
	padding-left: 20px;
}
.contentsLink li:nth-child(4) {
	padding-right: 20px;
}
.contentsLink li:nth-child(4+3n) {
	padding-right: 20px;
}

.contentsLink li a {
	color: #fff;
}
.contentsLink li figure {
	position: relative;
	overflow: hidden;
}
.contentsLink li figure img {
	width: 100%;
	height: auto;
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s;
	display: block;
}
.contentsLink li a:hover figure img {
    -webkit-transform: scale(1.1,1.1);
    transform: scale(1.1,1.1);
}
.contentsLink li figure figcaption {
	position: absolute;
	padding: 5px 0;
	font-size: 0.875em;
	width: 100%;
	max-height: 60px;
	left: 0;
	bottom: 0;
    background: rgba(0,0,0,.8);
}
.slider {
    top: 60px;
    width: 100%;
}
.slider img {
    width: 100%;
}
.slider .slick-slide {
    height: auto!important;
}
/* =========== about =========== */
.boxSupplement {
	border: 1px solid #ccc;
	background-color: #efefef;
	padding: 20px;
	margin: 0 0 30px;
}
.boxSupplement dt {
	padding: 0 0 10px;
	font-size: 1.143em;
}
.thumbnailList01 {
	width: 100%;
	text-align: center;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.thumbnailList01 li {
	width: 49%;
	text-align: center;
	margin: 0 0 20px;
	color: #fff;
}
.thumbnailList01 li a {
	color: #fff;
}
.thumbnailList01 li figure {
	position: relative;
	overflow: hidden;
}
.thumbnailList01 li figure img {
	width: 100%;
	height: auto;
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s;
	display: block;
}
.thumbnailList01 li a:hover figure img {
    -webkit-transform: scale(1.1,1.1);
    transform: scale(1.1,1.1);
}
.thumbnailList01 li figure figcaption {
	position: absolute;
	padding: 5px 0;
	font-size: 0.875em;
	width: 100%;
	max-height: 60px;
	left: 0;
	bottom: 0;
    background: rgba(0,0,0,.8);
}
.tableIndication {
	width: 100%;
	background-color: #fff;
	margin-bottom: 20px;
}
.tableIndication th {
	text-align: center;
	background-color: #eee;
	border: 1px solid #ccc;
	padding: 10px;
	vertical-align: middle;
}
.tableIndication td {
	text-align: center;
	border: 1px solid #ccc;
	padding: 10px;
	vertical-align: middle;
}
.tableIndication td b {
	font-weight: bold;
}
.uniCollaboration {
	margin-bottom: 30px;
}
.uniCollaboration ol {
	margin-bottom: 20px;
}
.uniHeader {
	width: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 20px;
}
.uniHeader p {
	width: 68%;
	margin: 0;
}
.uniHeader h5 {
	text-align: center;
	width: 30%;
	font-size: 1.286em;
	position: relative;
}
.uniHeader h5::after {
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	-wekit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 10px;
	right: 0;
	z-index: 0;
}
.uniHeader h5 a {
	text-decoration: none;
	display: block;
	height: 40px;
	padding: 20px 20px 0;
	color: #fff;
	position: relative;
	z-index: 10;
}
.wrapper .contents .uniHeader h5 i {
	font-size: 1.143em;
}
.naganoUni .uniHeader h5 a,
.naganoUni .uniHeader h5::after {
	background-color: #0a9fe8;
}
.matsumotoUni .uniHeader h5 a,
.matsumotoUni .uniHeader h5::after {
	background-color: #005aad;
}
.businessCooperationAgency .outsideBannerList dt {
	background-color: inherit;
	color: #333;
	font-size: 1.143em;
	font-weight: normal;
	padding: 0 0 0 16px;
	margin: 0 0 10px;
	position: relative;
}
.businessCooperationAgency .outsideBannerList dt::before {
	content: '';
	background-color: #00286a;
	width: 10px;
	height: 4px;
	position: absolute;
	top: 10px;
	left: 0;
}
.businessCooperationAgency .outsideBannerList dd {
	padding: 0;
}
.businessCooperationAgency .outsideBannerList dd ul {
	width: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.businessCooperationAgency .outsideBannerList dd ul li {
	width: 49%;
}
.about .subjectContents h3 {
	font-size: 1.143em;
	margin-bottom: 15px;
}
.about .subjectContents h3 em {
	font-size: 1.250em;
	font-weight: bold;
	display: inline-block;
	margin-right: 10px;
}
.about .subjectContents .subject01 h3 em { color: #00286a;}
.about .subjectContents .subject02 h3 em { color: #003691;}
.about .subjectContents .subject03 h3 em { color: #004ac6;}
.about .subjectContents .subject04 h3 em { color: #1a70ff;}

table.history {
    width: 100%;
    border-top: 1px solid #ccc;
}
table.history th {
    width: 20%;
	border-bottom: 1px solid #ccc;
	text-align: left;
	vertical-align: top;
	padding: 10px 0;    
}
table.history td {
	border-bottom: 1px solid #ccc;
	text-align: left;
	vertical-align: top;
	padding: 10px 0;    
}

/* =========== news =========== */
.news .heading03 {
	margin: 0;
}
.news article {
	padding: 20px 0 0;
}
.news .sectionChild figure {
	float: right;
	width: 250px;
	margin: 0 0 20px 20px;
}
.news .sectionChild figure img {
	width: 100%;
	height: auto;
	display: block;
	margin: 0 0 10px;
}
.news .sectionChild figure figcaption {
	font-size: 0.875em;
}
.entrySentence {
	float: left;
	width: 430px;
}
.entryImages {
	float: right;
	width: 250px;
}
.entryImages figure {
	margin: 0 0 10px;
}
.entryImages figure img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 5px;
}
.entryImages figure figcaption {
	font-size: 0.875em;
}
.heading02 .entryDate,
.heading02 .entryDate a {
	color: #fff;
}
.heading02 .entryDate,
.heading03 .entryDate {
	display: block;
	font-size: 0.667em;
}
.heading02 .entryDate time,
.heading03 .entryDate time {
	display: inline-block;
	margin-right: 10px;
}
.eventInfo {
	width: 100%;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.eventInfo li {
	width: 49%;
	font-size: 0.875em;
	box-sizing: border-box;
	background-color: #eee;
	padding: 2px 10px;
	margin-top: 10px;
}
.cmsPagenate {
	border-top: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	padding: 10px 0;
	text-align: center;
}
.cmsPagenate .prev {
	margin: 0 30px 0 0;
}
.cmsPagenate .next {
	margin: 0 0 0 30px;
}
.cmsPagenate .prev a {
	margin: 0 20px 0 0;
}
.cmsPagenate .next a {
	margin: 0 0 0 20px;
}
.cmsPagenate .link_page,
.cmsPagenate .current_page {
	text-decoration: none;
	display: inline-block;
	width: 38px;
	height: 38px;
	line-height: 38px;
	text-align: center;
	color: #FFF;
}
.cmsPagenate .link_page {
	background-color: #00286a;
}
.cmsPagenate .link_page:hover {
	background-color: #00173e;
}
.cmsPagenate .current_page {
	background-color: #333;
}

/* =========== research =========== */
.researchCategoryList {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.researchCategoryList dl {
	width: 49%;
	background-color: #fff;
	margin-bottom: 14px;
}
.researchCategoryList dl dt {
	color: #fff;
}
.researchCategoryList dl dt .mainTitle {
	display: block;
	font-size: 1.125em;
}
.researchCategoryList dl dt a {
	display: block;
	padding: 10px 20px 10px 26px;
	color: #fff;
	background-color: #333;
	text-decoration: none;
	position: relative;
}
.researchCategoryList dl dt a:hover {
	background-color: #222;
}
.wrapper .contents .researchCategoryList dl dt a i {
	font-size: 1.286em;
	position: absolute;
	top: 38%;
	left: 10px;
}
.researchCategoryList dl dd {
	padding: 10px 20px 20px;
}
.researchCategoryList dl dd figure {
	padding-top: 10px;
	height: 151px;
	overflow: hidden;
}
.researchCategoryList dl dd figure img {
	width: 100%;
	height: auto;
	display: block;
}
.main .categoryIndexTitle {
	font-size: 1.000em;
}
.main .categoryIndexTitle .subTitle {
	display: block;
	font-size: 1.286em
}
.entryList01 .sectionChild .hasThumbnail {
	float: left;
	width: 560px;
}
.entryList01 .sectionChild figure {
	float: right;
	width: 120px;
}
.entryList01 .sectionChild figure img {
	width: 100%;
	height: auto;
}
.mainCategoryContents article {
	margin-bottom: 30px;
}
.mainCategoryContents article h3 {
	border-bottom: 1px dotted #333;
	padding: 2px 0 7px 13px;
	margin: 0 0 15px;
	font-size: 1.286em;
	font-weight: normal;
	position: relative;
	overflow: hidden;
}
.mainCategoryContents article h3 small {
	font-size: 0.778em;
}
.mainCategoryContents article h3::before {
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	width: 3px;
	height: 100%;
	margin-top: -4px;
	background-color: #333;
}
.mainCategoryContents article h4 {
	font-size: 1.143em;
	font-weight: normal;
	background-color: #fff;
	padding: 6px 12px;
	border-top: 1px solid #333;
	margin: 0 0 15px;
}
.mainCategoryContents article h5 {
	font-size: 1.143em;
	font-weight: normal;
	padding: 0 0 0 16px;
	margin: 0 0 10px;
	position: relative;
}
.mainCategoryContents article h5::before {
	content: '';
	background-color: #00286a;
	width: 10px;
	height: 4px;
	position: absolute;
	top: 10px;
	left: 0;
}
.mainCategoryContents article table {
	width: 100%;
	border-top: 1px solid #ccc;
	margin-bottom: 20px;
}
.mainCategoryContents article table th {
	background-color: #eee;
	border: 1px solid #ccc;
	text-align: left;
	vertical-align: top;
	padding: 10px;
}
.mainCategoryContents article table td {
	background-color: #fff;
	border: 1px solid #ccc;
	text-align: left;
	vertical-align: top;
	padding: 10px;
}
.mainCategoryContents article figure {
	margin-bottom: 20px;
}
.mainCategoryContents article figure img {
	width: 100%;
	height: auto;
}
.mainCategoryContents article figure figcaption {
	font-size: 0.875em;
	text-align: center;
}
.mainCategoryContents article ul,
.mainCategoryContents article ol {
	padding-left: 20px;
	margin-bottom: 20px;
}
.mainCategoryContents article ul li {
	list-style-type: disc;
}
.mainCategoryContents article ol li {
	list-style-type: decimal;
}
.mainCategoryContents article blockquote ul {
	padding: 0;
	width: 100%;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
}
.mainCategoryContents article blockquote ul li {
	list-style-type: none;
	width: 31.33%;
	text-align: center;
	margin: 0 0 20px;
}
.mainCategoryContents article blockquote ul li:nth-child(1) {
	padding-right: 20px;
}
.mainCategoryContents article blockquote ul li:nth-child(3n) {
	padding-left: 20px;
}
.mainCategoryContents article blockquote ul li:nth-child(4) {
	padding-right: 20px;
}
.mainCategoryContents article blockquote ul li:nth-child(4+3n) {
	padding-right: 20px;
}
.mainCategoryContents article blockquote ul li img {
	width: 100%;
	height: auto;
	display: block;
}
.mainCategoryContents article p mark {
	background-color: #ffffa4;
}
.mainCategoryContents article p b {
	font-weight: bold;
}

/* =========== introduction =========== */
.facilityList {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.facilityList dl {
	width: 49%;
	background-color: #fff;
	margin-bottom: 14px;
}
.facilityList dl dt {
	color: #fff;
}
.facilityList dl dt .mainTitle {
	display: block;
	font-size: 1.125em;
}
.facilityList dl dt a {
	display: block;
	padding: 10px 20px 10px 26px;
	color: #fff;
	background-color: #333;
	text-decoration: none;
	position: relative;
}
.facilityList dl dt a:hover {
	background-color: #222;
}
.wrapper .contents .facilityList dl dt a i {
	font-size: 1.286em;
	position: absolute;
	top: 38%;
	left: 10px;
}
.facilityList dl dd {
	padding: 10px 20px 20px;
}
.facilityList dl dd figure {
	padding-top: 10px;
	height: 151px;
	overflow: hidden;
}
.facilityList dl dd figure img {
	width: 100%;
	height: auto;
	display: block;
}

/* =========== collection =========== */
table.collection {
    width: 100%;
    border: 1px solid #ccc;
}
table.collection tr {
    border-bottom: 1px solid #ccc;
}
table.collection tr:last-child {
    border-bottom: none;
}
table.collection th {
    width: 20%;
	border-right: 1px solid #ccc;
	text-align: left;
	padding: 10px;
    font-weight: bold;
    vertical-align: middle;
}
table.collection td {
	border-right: 1px solid #ccc;
	text-align: left;
	padding: 10px;
}
table.collection td:last-child {
    border-right: none;
}
table.collection td.detail {
    width: 60%;
}
table.collection td.facility {
    width: 20%;
    vertical-align: middle;
}
