@charset 'UTF-8';
/*------------------------------------------------
html,body
------------------------------------------------*/
html,
body {
	font-family: Hiragino Sans, 'ヒラギノ角ゴシック',
		Hiragino Kaku Gothic ProN, 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo, sans-serif;
	font-size: 15px;
	font-weight: 500;
	font-style: normal;
	line-height: 1.8;
	letter-spacing: 0;
	color: #333;
	background: #fff none;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-overflow-scrolling: touch;
}

*::-moz-selection {
	background: rgba(0, 0, 0, .2);
}

*::selection {
	background: rgba(0, 0, 0, .2);
}

*::-moz-selection {
	background: rgba(0, 0, 0, .2);
}
@media screen and (min-width: 768px) {
	.tel_link {
		pointer-events: none;
	}
}
.defs{
	display: none;
}
@font-face {
	font-family: 'ibrary3am';
	src: url('../fonts/library3am.otf') format('opentype');
}
.ff-red{
	color: #f1443c;
}
/*------------------------------------------------
wrapper
------------------------------------------------*/
#wrapper{
	padding-top: 100px;
	overflow: hidden;
}
@media screen and (min-width: 768px) {
	#wrapper {
		min-width: 1024px;
	}
	#wrapper .w1000 {
		width: 1000px;
		margin-right: auto;
		margin-left: auto;
	}
}

/*------------------------------------------------
header
------------------------------------------------*/
#header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
}

@media screen and (min-width: 768px) {
	#header {
		min-width: 1100px;
	}
}

.header-logo {
	position: absolute;
	left: -45px;
	top: 0;
	z-index: 100;
	transition: top 0.25s ease;
}
.logo__link{
	display: block;
	width: 237px;
	height: 118px;
	background: #fff;
	transform: skewX(-37.4deg);
	box-shadow: 5px 8.66px 30px 0px rgba(23, 13, 0, 0.3);
	overflow: hidden;
}
.logo__link img{
	margin: 21px 0 0 60px;
	width: 151px;
	height: 71px;
	transform: skewX(37.4deg);
	transition: top 0.25s ease;
}
.header--small .logo__link{
	box-shadow: none;
	height: 65px;
	transition: top 0.25s ease;
}
.header--small .logo__link img{
	margin: 5px 0 0 60px;
	width: 115px;
	height: 55px;
	transition: top 0.25s ease;
}

/* ---------------------------------------------------------------- header-nav ---- */
.header-nav{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	flex-direction: column-reverse;
	height: 100px;
	position: relative;
	top: 0px;
	transition: top 0.25s ease;
}
.header--small .header-nav{
	top: -35px;
}
.header-list{
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	align-items: flex-start;
	background: #fff;
	width: 100%;
	padding: 15px 0 0 0;
}
.header-list-nav{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	margin-right: 40px;
}
.header-list-nav__item{
	position: relative;
}
.header-list-nav__link{
	display: block;
	transform: skewX(-39deg);
	margin-left: 26px;
	padding: 5px 33px 0 15px;
	height: 50px;
	font-size: 14px;
	line-height: 17px;
	font-weight: bold;
	position: relative;
	text-align: center;
}
.header-list-nav__link::before{
	content: "";
	position: absolute;
	width: 29.563px;
	height: 33px;
	left: -30px;
	top: 2px;
	background: url(../img/header/ico_separator.svg) no-repeat left top / 28px 33px;
	transform: skewX(39deg);
}
.header-list-nav__link::after{
	content: "";
	width: 0;
	height: 0;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	transition: all 0.15s linear 0.15s;
	z-index: -1;
}
.header-list-nav__item:last-child::after{
	content: "";
	position: absolute;
	width: 29.563px;
	height: 33px;
	right: -30px;
	top: 2px;
	background: url(../img/header/ico_separator.svg) no-repeat left top / 28px 33px;
}
.header-list-nav__link span{
	display: block;
	transform: skewX(39deg);
	position: relative;
	top: 0;
	left: 0;
	transition: all 0.15s linear 0.15s;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-list-nav__link--current::after{
		height: 100%;
		width: 100%;
		background: #ffe400;
	}
	.header-list-nav__link--current span{
		top: 5px;
		left: 4px;
	}
	.header-list-nav__item:hover .header-list-nav__link::after{
		height: 100%;
		width: 100%;
		background: #ffe400;
		transition: all 0.15s linear;
	}
	.header-list-nav__item:hover .header-list-nav__link span{
		top: 5px;
		left: 4px;
		transition: all 0.15s linear;
	}
}

/* ---------------------------------------------------------------- メガドロップ ---- */
.header-child__wrapper{
	width: 100%;
	position: absolute;
	left: 0;
	top: 50px;
	display: block;
}
.header-child-list{
	width: 747px;
	left: 50%;
	position: absolute;
	top: 0;
	margin-left: calc(747px / -2);
	padding: 0;
	background: #ffe400;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: flex-start;
	height: 0;
	overflow: hidden;
	transition: all 0.15s linear;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-child-list--width02{
		width: 977px;
		margin-left: calc(977px / -2 - 200px);
	}
	.header-child-list--width03{
		width: 517px;
		margin-left: calc(517px / -2);
	}
	.header-list-nav__item:hover .header-child__wrapper .header-child-list{
		height: 180px;
		padding: 25px 0 20px;
		transition: all 0.15s linear 0.15s;
	}
	.header-list-nav__item:hover .header-child__wrapper .header-child-list--height02{
		height: 250px;
		padding: 25px 0 20px;
		transition: all 0.15s linear 0.15s;
	}
}
.header-child-list__item{
	width: 200px;
	margin-right: 30px;
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-child-list--width01 .header-child-list__item:nth-child(3n){
		margin-right: 0;
	}
	.header-child-list--width02 .header-child-list__item:nth-child(4n){
		margin-right: 0;
	}
	.header-child-list--width03 .header-child-list__item:nth-child(2n){
		margin-right: 0;
	}
}
.header-child-list__item:last-child{
	margin-right: 0;
}
.header-child-list__item figcaption{
	font-size: 15px;
	line-height: 22px;
	text-align: center;
	font-weight: bold;
	margin-top: 10px;
}
.header-child-list__item a img{
	transition: all 0.25s ease;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-child-list__item a:hover img{
		transform: scale(1.1);
	}
}
.header-child-list__button{
	text-align: center;
}
.header-child-list__button .linkbtn01{
	width: 425px;
}
.header-list-btn{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
}
.header-list-btn__item{
	margin: 0 10px 0 0;
}
.header-list-btn__item a{
	display: block;
	width: 130px;
	height: 40px;
	line-height: 36px;
	background: #ffe400;
	border: 2px solid #ffe400;
	border-radius: 20px;
	text-align: center;
	font-size: 15px;
	letter-spacing: 0.05em;
	font-weight: bold;
	transition: all 0.25s ease;
}
.header-list-btn__item--ticket a{
	background: #f1443c;
	border: 2px solid #f1443c;
	color: #fff;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-list-btn__item a:hover{
		background: #fff;
	}
	.header-list-btn__item--ticket a:hover{
		background: #fff;
		color: #f1443c;
	}
}
@media screen and (max-width: 1200px) {
	.header-list-btn{
		display: block;
	}
	.header-list-btn__item{
		margin: 0 10px 5px 0;
	}
	.header-list-btn__item a{
		display: block;
		height: 20px;
		line-height: 16px;
		border-radius: 10px;
		font-size: 12px;
	}
}

/* ---------------------------------------------------------------- header-sub ---- */
.header-sub{
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	align-items: center;
	background: #222;
	width: 100%;
}
.header-sub-list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	color: #fff;
	font-size: 12px;
	line-height: 35px;
	margin-right: 30px;
}
.header-sub-list__item{
	padding: 0 0 0 17px;
}
.header-sub-list__item a{
	position: relative;
	display: block;
	padding-left: 10px;
	transition: color 0.25s ease;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-sub-list__item a:hover{
		color: #ffe400;
	}
}
.header-sub-list__item a::before,
.header-sub-list__item a::after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.header-sub-list__item a::before{
	width: 2px;
	height: 2px;
	border-bottom: 2px solid #ffe400;
	border-top: 2px solid #ffe400;
	left: 0;
}
.header-sub-list__item a::after{
	width: 2px;
	height: 2px;
	left: 2px;
	background: #ffe400;
}
.header-sns{
	margin-right: 25px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}
.header-sns__item{
	margin-right: 14px;
}
.header-sns__icon{
	fill: #fff;
	transition: fill 0.25s ease;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.header-sns__icon:hover{
		fill: #ffe400;
	}
}
.header-sns__icon--instagram{ width: 15px; height: 15px; }
.header-sns__icon--facebook{ width: 8px; height: 17px; }
.header-sns__icon--twitter{ width: 18px; height: 13px; }


/*------------------------------------------------
main
------------------------------------------------*/

@media screen and (min-width: 768px) {
	#main {
		/*IE対策*/
		display: block;
	}
}

/*------------------------------------------------
pagemain
------------------------------------------------*/
.pagemain{
	width: 100%;
	height: 130px;
	padding-bottom: 10px;
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	z-index: 1;
}
.pagemain__inner{
	width: 1000px;
	height: 100%;
	margin: 0 auto;
	position: relative;
}
.pagemain__text{
	height: 100%;
	width: 100%;
	color: #fff;
	font-size: 25px;
	letter-spacing: 0.15em;
	font-weight: bold;
	padding-left: 55px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items: center;
	background: url(../img/ico_main.svg) no-repeat left center / 44px 33px;
}
.pagemain__sub{
	position: absolute;
	font-size: 60px;
	line-height: 47px;
	color: #ffe400;
	right: -150px;
	bottom: -27px;
}
.pagemain__sub::after{
	content: "";
	display: block;
	position: absolute;
	right: 150px;
	bottom: 35px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	display: none;
}


/*------------------------------------------------
breadcrumb
------------------------------------------------*/
.breadcrumb {
	width: 1000px;
	margin: 10px auto;
	font-size: 0;
}
.breadcrumb__item {
	display: inline;
	font-size: 11px;
}
.breadcrumb__item:not(:last-child)::after {
	content: "\f105";
	font-family: "FontAwesome";
	display: inline;
	margin: 0 5px;
	text-decoration: none;
}
p.breadcrumb__link {
	display: inline-block;
}
a.breadcrumb__link {
	display: inline-block;
}
/* pc-only ------------*/
@media screen and (min-width: 768px) {
	a.breadcrumb__link:hover {
		text-decoration: none;
	}
}
/* /pc-only -----------*/

/*------------------------------------------------
footer
------------------------------------------------*/

#footer {
	width: 100%;
	background: #313131;
	color: #fff;
	position: relative;
}
.footer-top{
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0 50px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch;
}
.footer-main{
	padding-right: 40px;
	width: 280px;
	position: relative;
	border-right: 2px solid #fff;
}
.footer-logo{
	display: block;
	width: 230px;
	height: 69px;
	margin-bottom: 20px;
	background: url(../img/footer/logo.png) no-repeat left top / cover;
}
.footer-sns{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}
.footer-sns__item{
	width: 36px;
	margin: 0 9px;
}
.footer-text{
	font-size: 13px;
	margin-bottom: 15px;
}
.footer-link{
	width: 660px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
}
.footer-list{
	font-size: 13px;
	line-height: 30px;
}
.footer-list a{
	text-decoration: none;
	display: block;
}
.footer-list a:hover{
	text-decoration: underline;
}
.footer-list__title a{
	padding-left: 22px;
	position: relative;
	background: url(../img/footer/ico_list01.svg) no-repeat left center / 13px 13px;
}
.footer-list__sub a{
	margin-left: 22px;
	padding-left: 15px;
	position: relative;
	background: url(../img/footer/ico_list02.svg) no-repeat left center / 7px 10px;
}
.footer-list__sub+.footer-list__title{
	margin-top: 5px;
}

.footer-copy{
	background: #000;
}
.footer-copy__inner{
	width: 1000px;
	margin: 0 auto;
	height: 40px;
	line-height: 40px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	font-size: 12px;
	letter-spacing: 0.05em;
}
/*------------------------------------------------
exhibition-nav
------------------------------------------------*/
.exhibition-nav{
	margin: 65px auto 26px;
	width: 1000px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items: flex-start;
}
.exhibition-nav__item{
	width: 320px;
	margin-bottom: 10px;
	margin-right: 20px;
}
.exhibition-nav__item .linkbtn02{
	justify-content: flex-start;
	padding-left: 30px;
}
@media screen and (min-width: 768px) { /* ---- PC ---- */
	.exhibition-nav__item:nth-child(3n){
		margin-right: 0;
	}
}
.page-top-wrp {
	height: 0;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.pageTop {
	display: none;
	position: relative;
}
.pageTop a {
	width: 50px;
	height: 50px;
	background-color: #ffe400;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: fixed;
	right: 10px;
	bottom: 10px;
	transition: 0.3s ease;
	z-index: 100;
	text-align: center;
	color: #fff;
	line-height: 1em;
}
.pageTop svg{
	transform: rotate(-90deg);
	fill: #333333;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	transition: all 0.25s ease;
}
@media screen and (min-width: 768px) {

	.pageTop a:hover {
		background-color: #333;
	}
	.pageTop a:hover:before {
		top: 8px;
	}
	.pageTop a:hover svg{
		fill: #ffe400;
	}
}
/*------------------------------------------------
not-found
------------------------------------------------*/
.nf-main{
	padding: 60px 0px 80px;
	background: url(../img/nf/bg.jpg) repeat;
}
.nf-main__in{
	background: #fff;
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0px 70px;
	text-align: center;
}
.nf-main__ttltxt{
	font-size: 60px;
	position: relative;
	z-index: 1;
}
.nf-main__ttl{
	position: relative;
	display: inline-block;
	z-index: 1;
}
.nf-main__ttl:after{
	content: '';
	width: 100%;
	height: 25px;
	background: #ffe400;
	position: absolute;
	bottom: 15px;
	left: 0;
}
.nf-main__txt{
	margin-bottom: 40px;
}
.nf-main__btn {
	width: 700px;
	margin: 0 auto;
}
.nf-main__btn .linkbtn01 {
	width: 340px;
}

.attention-ttl{
	font-size: 36px;
	color: #f1443c;
	font-weight: bold;
	text-align: center;
	background: #fff82f;
	width: 1000px;
	margin: 40px auto 0px;
}


/* ---------------------------------------------------------------- SP ---- */
@media screen and (max-width: 767px) {
	html,
	body {
		font-size: 13px;
		line-height: 1.6;
	}

	/*------------------------------------------------
	wrapper
	------------------------------------------------*/

	#wrapper {
		padding-top: 50px;
	}

	/*------------------------------------------------
	header
	------------------------------------------------*/
	#header {
		width: 100%;
		top: 0;
		position: absolute;
	}
/*	.header-logo {
		position: fixed;
		left: 0;
		top: 0;
		height: 25px;
		width: 100%;
		background: #fff;
		border-bottom: 1px solid #7f7f7f;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		align-items: center;
		transition: top 0.25s ease;
	}
	.header-logo--hide {
		top: -25px;
	}
	.header-logo--sp{
		top: 0;
		position: static;
	}*/
	.logo__link{
		display: inline-block;
		width: 100px;
		height: 10px;
		transform: skewX(0deg);
		box-shadow: none;
		display: none;
	}
	.logo__link img{
		margin: 0;
		width: 100%;
		height: 100%;
		transform: skewX(0deg);
		display: none;
	}
	/* ---------------------------------------------------------------- header-nav ---- */
	.header-nav{
		display: block;
		height: calc(100vh - 50px);
		position: fixed;
		top: 50px;
		left: 0;
		width: 100%;
		overflow: auto;
		background: #fff;
		visibility: hidden;
		opacity: 0;
		transition: all 0.5s ease;
		transform: scale(0.9);
		transform-origin: center;
	}
	.header-nav--scroll{
		top: 50px;
	}
	.header-nav--open{
		visibility: visible;
		opacity: 1;
		transform: scale(1);
	}
	.header-list{
		display: block;
		background: #fff;
		width: 100%;
		position: relative;
		padding: 0;
	}
	.header-list-nav{
		display: block;
		margin: 0;
	}
	.header-list-nav__item{
		position: relative;
	}
	.header-list-nav__link{
		padding: 0;
		display: block;
		transform: skewX(0deg);
		margin: 0;
		height: 45px;
		font-size: 13px;
		line-height: 45px;
		border-bottom: 1px solid #b5b5b5;
	}
	.header-list-nav__link::before{
		content: "";
		background: #22bf94;
		border-radius: 50%;
		display: block;
		width: 15px;
		height: 15px;
		right: 15px;
		left: auto;
		top: 0;
		bottom: 0;
		margin: auto;
		transform: skewX(0deg);
	}
	.header-list-nav__link::after,
	.header-list-nav__item:last-child::after{
		display: none;
	}
	.header-list-nav__link span{
		display: block;
		width: 100%;
		height: 100%;
		text-align: left;
		transform: skewX(0deg);
		position: relative;
		padding: 0 15px;
	}
	.header-list-nav__link span::before{
		content: "\f105";
		display: block;
		font-family: "FontAwesome";
		position: absolute;
		width: 15px;
		height: 15px;
		line-height: 15px;
		text-align: center;
		text-indent: 0.1em;
		left: auto;
		top: 0;
		bottom: 0;
		right: 15px;
		margin: auto;
		background: none;
		transform: skewX(0deg);
		color: #fff;
	}
	.header-list-nav__item--child .header-list-nav__link span::before,
	.header-list-nav__item--child .header-list-nav__link span::after{
		content: "";
		width: 8px;
		height: 2px;
		background: #fff;
		top: 0;
		bottom: 0;
		margin: auto;
		position: absolute;
		transform-origin: center;
		right: 18.5px;
		transition: transform 0.25s ease;
	}
	.header-list-nav__item--child .header-list-nav__link span::after{
		transform: rotate(-90deg);
	}
	.header-list-nav__item--child--open .header-list-nav__link span::after{
		transform: rotate(0deg);
	}

	/* ---------------------------------------------------------------- メガドロップ ---- */
	.header-child__wrapper{
		width: 100%;
		position: static;
		top: 0;
		display: none;
	}
	.header-child-list{
		width: 100%;
		left: 0;
		position: static;
		margin: 0;
		padding: 20px 15px;
		background: #ffe400;
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
		align-items: flex-start;
		height: auto;
		overflow: hidden;
		transition: all 0.15s ease;
	}
	.header-child-list__item{
		width: calc( ( 100% - 10px ) / 3);
		margin-right: 5px;
		margin-bottom: 10px;
	}
	.header-child-list__item:nth-child(3n){
		margin-right: 0;
	}
	.header-child-list__item:last-child{
		margin-right: 0;
	}
	.header-child-list__item figcaption{
		font-size: 10px;
		line-height: 15px;
		text-align: center;
		font-weight: bold;
		margin-top: 5px;
	}
	.header-child-list__button{
		text-align: center;
		width: 100%;
	}
	.header-child-list__button .linkbtn01{
		width: 250px;
	}

	.header-list-btn{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
		padding: 15px 15px 20px;
	}
	.header-list-btn__item{
		margin: 0;
	}
	.header-list-btn__item a{
		display: block;
		width: 43.75vw;
		height: 40px;
		line-height: 36px;
		background: #ffe400;
		border: 2px solid #ffe400;
		border-radius: 20px;
		text-align: center;
		font-size: 13px;
		letter-spacing: 0.05em;
		font-weight: bold;
		transition: all 0.25s ease;
	}
	.header-list-btn__item--ticket a{
		background: #f1443c;
		border: 2px solid #f1443c;
		color: #fff;
	}

	/* ---------------------------------------------------------------- header-sub ---- */
	.header-sub{
		justify-content: space-between;
		padding: 20px 0;
		border-top: 1px solid #b5b5b5;
		width: calc(100% - 30px);
		margin: 0 auto;
		position: static;
		background: transparent;
	}
	.header-sub-list{
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
		color: #fff;
		font-size: 12px;
		line-height: 12px;
		margin: 0;
	}
	.header-sub-list__item{
		width: calc(100% / 2);
		padding: 0;
		margin-bottom: 14px;
	}
	.header-sub-list__item a{
		position: relative;
		display: block;
		padding-left: 10px;
		color: #333;
	}
	.header-sub-list__item a::before,
	.header-sub-list__item a::after{
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.header-sub-list__item a::before{
		width: 2px;
		height: 2px;
		border-bottom: 2px solid #22bf94;
		border-top: 2px solid #22bf94;
		left: 0;
	}
	.header-sub-list__item a::after{
		width: 2px;
		height: 2px;
		left: 2px;
		background: #22bf94;
	}
	.header-sns{
		display: none;
	}

	/* ---------------------------------------------------------------- 下部のメニュー ---- */
	.sp-menu{
		height: 50px;
		width: 100%;
		background: #313131;
		position: fixed;
		top: 0px;
		left: 0;
		transition: top 0.25s ease;
		z-index: 100;
	}
	.sp-menu--active{
		top: 0;
	}
	.sp-menu-list{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
	}
	.sp-menu-list__item{
		width: calc(100% / 4);
		position: relative;
		height: 50px;
	}
	.sp-menu-list__item:not(:first-child)::after{
		content: "";
		display: block;
		width: 1px;
		background: #000;
		height: 35px;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		margin: auto;
	}
	.sp-menu-list__item:last-child::after{
		display: none;
	}
	.sp-menu-list__item:nth-child(1) {
		background: #ffffff;
	}
	.sp-menu-list__item a{
		display: block;
		width: 100%;
		height: 100%;
		padding-top: 32px;
		text-align: center;
		font-size: 10px;
		line-height: 10px;
		color: #fff;
	}
	.sp-menu-list__item:nth-child(1) a{padding-top: 0px;}
	.sp-menu-list__item:nth-child(1) a{background: url(../img/sp/menu/ico_01.png) no-repeat center 12px / auto 25px;}
	.sp-menu-list__item:nth-child(2) a{background: url(../img/sp/menu/ico_02.png) no-repeat center 10px / auto 15px;}
	.sp-menu-list__item:nth-child(3) a{background: url(../img/sp/menu/ico_03.png) no-repeat center 10px / auto 15px;}
	.sp-menu-list__button span{
		display: block;
		position: absolute;
		width: 2.5px;
		height: 2px;
		box-sizing: content-box;
		border-left: 2px solid #fff;
		border-right: 13.5px solid #fff;
		top: 19px;
		left: 0;
		right: 0;
		margin: auto;
		transition: all 0.25s ease;
	}
	.sp-menu-list__button span::before,
	.sp-menu-list__button span::after{
		content: "";
		width: 2.5px;
		height: 2px;
		box-sizing: content-box;
		border-left: 2px solid #fff;
		border-right: 13.5px solid #fff;
		position: absolute;
		left: -2px;
		transform-origin: center;
		transition: all 0.25s ease;
	}
	.sp-menu-list__button span::before{
		top: -6px;
	}
	.sp-menu-list__button span::after{
		bottom: -6px;
	}
	.sp-menu-list__button--open span{
		border-left: 2px solid transparent;
		border-right: 13.5px solid transparent;
	}
	.sp-menu-list__button--open span::before,
	.sp-menu-list__button--open span::after{
		background: #fff;
		top: 0;
		bottom: 0;
	}
	.sp-menu-list__button--open span::before{
		transform: rotate(-45deg);
	}
	.sp-menu-list__button--open span::after{
		transform: rotate(45deg);
	}


	/*------------------------------------------------
	main
	------------------------------------------------*/

	#main {
	}

	/*------------------------------------------------
	pagemain
	------------------------------------------------*/
	.pagemain{
		width: 100%;
		height: 100px;
		padding-bottom: 0;
	}
	.pagemain__inner{
		width: 100%;
	}
	.pagemain__text{
		width: calc(100% - 30px);
		margin: 0 auto;
		font-size: 20px;
		line-height: 25px;
		padding-left: 35px;
		background: url(../img/ico_main.svg) no-repeat left center / 29.5px 22.5px;
	}
	.pagemain__sub{
		font-size: 30px;
		line-height: 30px;
		right: 0;
		bottom: -16.5px;
		text-align: right;
	}
	.pagemain__sub::after{
		display: none;
	}

	/*------------------------------------------------
	breadcrumb
	------------------------------------------------*/
	.breadcrumb {
		width: 100%;
		margin: 10px 15px;
	}
	.breadcrumb__item {
		font-size: 10px;
	}
	.breadcrumb__item:not(:last-child)::after {
		margin: 0 5px;
	}

	/*------------------------------------------------
	footer
	------------------------------------------------*/
	#footer {
		padding: 0 15px 10px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
	}
	.footer__inner{
		width: 87%;
	}
	.footer-top{
		width: 100%;
		padding: 25px 0 0;
		display: block;
	}
	.footer-main{
		padding-right: 0;
		width: 100%;
		border-right: none;
	}
	.footer-logo{
		display: block;
		width: 220.5px;
		height: 25px;
		margin-bottom: 15px;
		background: url(../img/sp/footer/logo.png) no-repeat left top / cover;
	}
	.footer-sns{
		margin-top: 40px;
		width: 13%;
		display: block;
		margin-bottom: 0;
	}
	.footer-sns__item{
		width: 34.5px;
		margin: 0 0 12px;
	}
	.footer-text{
		font-size: 10px;
		line-height: 15px;
		margin-bottom: 10px;
	}
	.footer-copy{
		background: transparent;
	}
	.footer-copy__inner{
		width: 100%;
		height: auto;
		font-size: 10;
		line-height: 15px;
		display: block;
		letter-spacing: 0.05em;
	}
	.footer-copy__organizer{
		margin-bottom: 10px;
	}

	.exhibition-nav{
		margin: 35px auto 30px;
		width: calc(100% - 30px);
	}
	.exhibition-nav__item{
		width: calc(50% - 5px);
		margin-bottom: 5px;
		margin-right: 10px;
	}
	.exhibition-nav__item:nth-child(2n){
		margin-right: 0;
	}
	.exhibition-nav__item .linkbtn02{
		justify-content: center;
		padding-left: 20px;
	}
	.pageTop a {
		width: 40px;
		height: 40px;
	}
	.pageTop svg{
		width: 12px;
		height: 12px;
	}
	/*------------------------------------------------
	not-found
	------------------------------------------------*/
	.nf-main{
		padding: 40px 0px;
	}
	.nf-main__in{
		width: calc(100% - 30px);
		padding: 40px 15px;
	}
	.nf-main__ttltxt{
		font-size: 30px;
	}
	.nf-main__ttl:after{
		height: 15px;
		bottom: 10px;
	}
	.nf-main__txt{
		margin-bottom: 30px;
	}
	.nf-main__btn {
		width: calc(100% - 60px);
	}
	.nf-main__btn .linkbtn01 {
		width: 100%;
	}

	.attention-ttl{
		margin-top: 20px;
		width: calc(100% - 30px);
		font-size: 20px;
		padding: 10px;
	}

}
