@charset "utf-8";

/* large-title -------------------- */


/* middle-title -------------------- */

.child .middle-title {
	margin-bottom: 10px;
}

/* small-title -------------------- */

.child .small-title {
    font-size: 1.5rem;
    margin: 0 0 10px;
}

#advance-ticket .small-title {
	margin-bottom: 20px;
}

/* inner-anchor-list -------------------- */

.inner-anchor-list li {
    margin-top: 0;
}


/* contents -------------------- */

#advance-ticket .advance-ticket-inner {
	background-color: rgba(91,176,22,0.15);
	border-radius: 2px;
	margin: 0 0 45px;
	padding: 30px ;
}

#advance-ticket .common-table dl:last-child {
    border-bottom: none;
}

#advance-ticket .common-table a,
#exhi-info .common-table a {
    display: inline;
}

.txt-wrap,
.image-wrap {
	margin-bottom: 30px;
}

/* profile -------------------- */

#profile .image-wrap {
	margin-bottom: 3em;
}

/* 観覧料 -------------------- */

.inner-table-wrap .admission-fees {
	table-layout: fixed;
	width: 100%;
	max-width: 700px;
}

.inner-table-wrap .admission-fees,
.inner-table-wrap .admission-fees td {
	border: 1px solid rgba(0,0,0,.1);
	border-collapse: collapse;
}

.inner-table-wrap .admission-fees td {
	padding: 5px;
	text-align: right;
}

.inner-table-wrap .admission-fees .heading {
	text-align: center;
	line-height: 1.2;
	padding: 10px 5px;
}

.inner-table-wrap p {
	padding: 15px 0;
	border-top: none;
}

.inner-table-wrap p:last-of-type,
.line_none dl {
    border-top: dashed 1px rgba(0,0,0,.1);
}

.inner-table-wrap span{
	font-weight: 400;
}

/* logo -------------------- */

.exhi-info-img {
    width: 18px;
    vertical-align: middle;
}


/* spesial -------------------- */

.special {

	background-color: rgba(91,176,22,0.15);
	padding: 15px;
	border-radius: 4px;

	& .special-contents {
		display: flex;
		gap: clamp(30px, 4vw, 60px);
		margin-block-start: 3em;
		flex-direction: column-reverse;
	}

	& .special-txt {
		display: flex;
		flex-direction: column;
		gap: 1em;
		margin-block-end: 1em;

		& h4 {
			font-size: clamp(1.1em, 3vw, 1.4em);
			font-weight: 400;
		}

		& dt {
			font-weight: 400;
			font-size: .9em;
		}
	}

	& .special-meta {

		& div {
			display: flex;
			align-items: first baseline;
			gap: 1em;

			& dt {
				white-space: nowrap;
			}
		}
	}

	& .special-img {
		max-width: 400px;
		margin-inline: auto;
	}
	
}

.points-ttl {
	padding: 8px 10px;
	border-radius: 3px;
	display: inline-block;
	margin: 0;
	text-align: center;
	line-height: 1;
	font-weight: 500;
	font-size: clamp(1.4rem, 3vw, 2.0rem);
	background-color: rgba(91,176,22,0.8);
	color: #fff;
}

/* 色々 -------------------- */

.ib {
	display: inline-block;
}

figure {
    line-height: 1.7;
}

img {
	border-radius: 4px;
}

.more--small {
	font-size: .65em;
}

.omake {
	padding: 0;
	text-align: right;
	font-size: 0.9rem;
	display: block;
	margin: 0px 0 45px;
}

.txt-anchor.blank {
    margin-top: 0px;
}

.copy{
    text-align: center;
}

.exhibition-detail .common-table .pdf-list li a {
    padding: 0px;
}
.normal-exhibition .common-table dl .inner-table-wrap dd {
    text-align: left;
}

.bold {
	font-weight: 500;
	margin-bottom: .5em;
}

.footnote li::before {
	content: "＊ ";
}


/* ============================================================================================== */
/* Media query                                                                                    */
/* ============================================================================================== */

@media screen and (min-width: 541px) {
	.item-list {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 20px;
	}

	#profile .image-wrap figure {
		width: 80%;
		margin: 0 auto;
	}
}

/* ---------------------------------------------------------------------------------------------- */
/* Tablet                                                                                         */

/* iPad (768px) */

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

	.child .small-title {
    	font-size: 1.8rem;
    }

	#advance-ticket .small-title {
		text-align: center;
		margin-bottom:30px;
	}

	.omake {
		font-size: 1.1rem;
	}

}

/* ---------------------------------------------------------------------------------------------- */
/* Desktop                                                                                        */

@media screen and (min-width: 960px) {
	
	.inner-table-wrap .admission-fees .heading {
		line-height: 1.8;
	}

	.omake {
		font-size: 1.25rem;
	}
}

@media screen and (min-width: 1100px) {
	
	.child .small-title {
    	font-size: 2.0rem;
    }

	/* spesial -------------------- */

	.special {
		padding: 30px;
		margin-block-start: 60px;

		& .special-contents {
			flex-direction: row;
			align-items: flex-end;
		}

		& .special-meta {
			font-size: .9em;
		}

		& .special-img {
			margin-inline: 0;
		}
	}
}

@media screen and (min-width: 1280px) {

	#advance-ticket .small-title {
		font-size: 1.6rem;
		margin-bottom:40px;
	}
}

