@charset "UTF-8";

/* +++++++++++++++++++++#key-visual02+++++++++++++++++ */
#key-visual02{
	height: 412px;
	position: relative;
	display: flex;
	justify-content: center;
	padding-top: 245px;
	text-align: center;
}
#key-visual02:before{
	content: "";
	width: 100%;
	max-width: 676px;
	height: 100%;
	background: url(../images/exhibition-key-visual.svg) no-repeat;
	background-position: center top 37px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
#page-ttl:after{
	color: #ff9c03;
}

.era-area{
	padding-top: 25px;
	padding-bottom: 15px;
	background: rgba(255,156,3,.2);
}
.era-area ul{
	display: flex;
	flex-wrap: wrap;
}
.era-area li{
	width: 145px;
	height: 40px;
	margin-right: 15px;
	margin-bottom: 10px;
}
.era-area a{
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	background: #fff;
	color: #ff9c03;
	font-size: 2.2rem;
}
.era-area a.current,
.era-area a:hover{
	background: #ff9c03;
	color: #fff;
}
main{
	padding-top: 0;
	padding-bottom: 0;
	font-weight: 500;
}
.exhibition-inner{
	max-width: 900px;
	margin: 0 auto;
}
.cat{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.cat li{
	margin-right: 13px;
}
.cat a{
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .3s all ease;
	border: 1px solid #969696;
	color: #969696;
	font-size: 2rem;
	padding: 8px 20px;
	font-weight: 500;
}
.cat a:hover,
.cat .current{
	color: #fff;
	background: #ff9c03;
	border: 1px solid #ff9c03;
}
.post-ttl{
	font-size: 4rem;
	line-height: 1.55;
	font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "Roboto Slab" , Garamond , "Times New Roman" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝B" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	font-weight: 500;
	//letter-spacing: .1em;
}
.post-ttl-en{
	font-size: 2.2rem;
	font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "Roboto Slab" , Garamond , "Times New Roman" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝B" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	font-weight: 500;
}
.session{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	font-weight: 500;
	line-height: 2;
	margin-bottom: 45px;
	margin-top: 20px;
}
.session dt{
	width: 84px;
}
.session dd{
	width: calc(100% - 84px);
}
.sec figure img{
	display: block;
	width: 100%;
}
.main-pic{
	margin-bottom: 70px;
}
figcaption{
	font-size: 1.4rem;
	line-height: 1.571;
	margin-top: .5em;
	margin-bottom: 60px;
}
.flex-list{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.flex-list li,
.flex-list .txt,
.flex-list .pic-area{
	width: 46.444%;
}
.flex-list .pic-area .pic:not(:last-of-type){
	margin-bottom: 30px;
}
.flex-list .pic img{
	display: block;
	max-width: 100%;
	height: auto;
	width: auto;
}
strong{
	font-weight: 500;
}
strong.txt-color01{
	font-size: 125%;
	color: #ff9c03;
}

.box02 .txt .parag:not(:last-of-type),
.desc-area .parag:not(:last-of-type){
	margin-bottom: 2em;
}
.parag{
	line-height: 1.875;
}
.desc-area{
	margin-bottom: 0 !important;
	margin-top: 40px;
}
.mt30{
	margin-top: 30px;
}
.program-data-area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 0;
}
.program-data{
	width: 47.222%;
}
.program-data h3{
	font-size: 2rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}
.program-data h3 span{
	display: block;
	flex-shrink: 0;
	background: url(../images/exhibition-icon01.svg) no-repeat;
	background-position: left center;
	padding-left: 23px;
	padding-right: .5em;
}
.program-data h3:after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ccc;
}
.program-data p{
	line-height: 1.875;
}
.program-data .caption{
	padding-left: 1em;
	text-indent: -1em;
}
.program-data dl{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	line-height: 1.875;
}
.program-data dt{
	width: 70px;
	flex-shrink: 0;
}
.program-data dd{
	width: calc(100% - 70px);
}
.partners{
	width: 100%;
	letter-spacing: -.02em;
	margin-top: 70px;
	line-height: 1.4;
}
.partners th{
	width: 40px;
	font-weight: 500;
	padding: 8px 0;
	background: #f0f0f0;
}
.partners td{
	width: calc(100% - 40px);
	padding: 8px .3em;
}
.sec .inner{
	padding-top: 70px;
	padding-bottom: 70px;
}
.sec:not(:last-of-type) .inner{
	border-bottom: 1px solid #ccc;
}
.column01 figcaption{
	margin-bottom: 0;
}
.txt-link02{
	text-decoration: underline;
	color: #ff9c03;
}
strong.txt-red{
	font-weight: 500;
	color: #f00;
}

@media screen and (max-width: 1100px){


}

@media screen and (max-width: 768px){

/* +++++++++++++++++++++#key-visual02+++++++++++++++++ */
	#key-visual02{
		height: 44rem;
		padding-top: 27rem;
		margin-top: 15rem;
	}
	#key-visual02:before{
		max-width: 62rem;
		width: 62rem;
		background-position: center top 6rem;
	}
	.exhibition-inner{
		max-width: 100%;
	}



	.era-area{
		padding-top: 3.5rem;
		padding-bottom: 2.5rem;
	}
	.era-area ul{
		width: 62.5rem;
		margin: 0 auto;
	}
	.era-area li{
		width: 14.5rem;
		height: 4.5rem;
		margin-right: 1.5rem;
		margin-bottom: 1.5rem;
	}
	.era-area li:nth-of-type(4n){
		margin-right: 0;
	}
	.era-area a{
		font-size: 2.6rem;
	}

	.cat{
		justify-content: space-between;
	}
	.cat li{
		margin-right: 0;
		height: 6rem;
	}
	.cat li:nth-of-type(1){
		width: 21rem;
	}
	.cat li:nth-of-type(2){
		width: 26.8rem;
	}
	.cat li:nth-of-type(3){
		width: 17.4rem;
	}
	.cat a{
		font-size: 2.2rem;
		padding: 0;
		width: 100%;
		height: 100%;
	}

	.post-ttl{
		font-size: 4.8rem;
		line-height: 1.583;
		letter-spacing: .1em;
		margin-bottom: 2rem;
	}
	.session{
		line-height: 1.748;
		margin-bottom: 3rem;
	}
	.session dt{
		width: 10.5rem;
	}
	.session dd{
		width: calc(100% - 10.5rem);
	}

	.main-pic{
		margin-bottom: 3rem;
	}
	figcaption{
		font-size: 2.2rem;
		line-height: 1.545;
		margin-top: 1.5rem;
	}
	.flex-list{
		display: block;
		padding: 0;
	}
	.flex-list li,
	.flex-list .txt,
	.flex-list .pic{
		width: 100%;
	}
	.flex-list li:nth-of-type(1){
		margin-bottom: 1.5rem;
	}
	.parag01{
		line-height: 1.714;
		font-size: 2.8rem;
	}
	.flex-list .pic-area{
		width: 100%;
	}
	.flex-list .pic-area .pic{
		margin-top: 4.5rem;
		padding-left: 3.5rem;
		padding-right: 3.5rem;
		width: 100%;
	}
	.box02{
		margin-bottom: 0;
	}
	figcaption{
		margin-bottom: 0;
	}
	.sp-half img{
		max-width: 51.6% !important;
	}

	.program-data-area{
		flex-direction: column;
		margin-top: 6rem;
	}
	.program-data{
		width: 100%;
		margin-bottom: 5rem;
	}
	.program-data:nth-of-type(1){
		order: 1;
	}
	.program-data:nth-of-type(2){
		order: 3;
	}
	.program-data:nth-of-type(3){
		order: 2;
	}
	.program-data h3{
		font-size: 3.2rem;
		margin-bottom: 3rem;
	}
	.program-data h3 span{
		background-size: 2.8rem;
		padding-left: 3.5rem;
		padding-right: 3rem;
	}

	.program-data p{
		line-height: 1.714;
	}
	.program-data .caption{
		padding-left: 0;
		text-indent: 0;
	}
	.program-data dl{
		line-height: 1.714;
	}
	.program-data dt{
		width: 12rem;
	}
	.program-data dd{
		width: calc(100% - 12rem);
	}
	.partners{
		letter-spacing: 0;
		margin-top: 0;
		line-height: 1.714;
	}
	.partners th{
		width: 10.8rem;
		padding: 1.5rem 0;
	}
	.partners td{
		width: calc(100% - 40px);
		padding: 1.5rem 2.4rem;
	}
	.sec .inner{
		padding-bottom: 8rem;
		padding-top: 8rem;
	}
	.post-ttl{
		margin-bottom: 0;
	}
	.post-ttl-en{
		font-size: 2.4rem;
		line-height: 1.5;
	}
	.column01{
		padding-left: 3.5rem;
		padding-right: 3.5rem;
		margin-top: 4rem;
	}
	.column01 img{
		padding-left: 3.5rem;
		padding-right: 3.5rem;
	}
	.mt30{
		margin-top: 2.5rem !important;
	}
	.desc-area{
		margin-top: 9rem !important;
	}
}