/*
Theme Name: Twenty Twenty Four Child
Template: twentytwentyfour
*/

/* ----------------------------------------------------
   index setting:
------------------------------------------------------- */

main a {color: var(--black);text-decoration: underline;transition: all 300ms 0s ease;}

/*---- h2 ----*/

main :not(.news) h2 {
	font-size: 1.2rem;
	font-weight: 400;
	letter-spacing: 0.05rem;
	padding: 0;
	border-bottom: none;
	margin-bottom: 0 !important;
	line-height: 1.6rem;
}
main :not(.news) h2:before {
	display: none;
}

/*---- h3 ----*/

main h3 {
	font-size: 1.2rem;
	font-weight: 400;
	padding-top: 0;
	line-height: 1.6rem;
}

/*---- 余白リセット ----*/
p {
	padding: 0!important;
}

.wp-container-core-group-is-layout-1 {
    margin-bottom: 1rem !important;
}

/* .emergency :
--------------------------------------------*/	
.emergency {
	max-width: 1280px;
    margin: 0 auto;
	align-items: center;
}

.emergency h2{
	font-size: 1.2rem;
}


@media screen and (max-width: 1280px){
	.emergency {
		padding:0 4%;
	}
}

@media screen and (max-width: 767px){
	.emergency {
		grid-template-columns: 1fr;
	}
}

/* .slide :
--------------------------------------------*/	

#metaslider-id-1703 {
	max-width: 1280px;
    margin: 0 auto;
}

.metaslider .flexslider{
	margin-bottom: 70px;
}

.flex-control-paging li a {
    width: 30px;
    height: 2px;
    background: #c5c5c5;
    border-radius: 0;
}

/* calendar :
--------------------------------------------*/	
#calendar {
	max-width:1280px;
	margin-left: auto;
	margin-right: auto;
	}

#calendar .calendar_top{
	display: grid;
	grid-template-columns: 5fr 1fr;
	align-items: center;
	margin-top: 20px;
	margin-bottom: 20px;
}

#calendar .calendar_top > p{
	border-bottom: 2px solid #c5c5c5;
	padding-bottom: 10px;
	align-self: flex-end;
	padding-bottom: 0.5rem!important;
	padding-right: 1rem!important;
}

#calendar .calendar_top > p.calendar a{
    text-decoration: none!important;
	display: inline-block;
	width: 90%;
    padding: .8rem 1rem .8rem 1.8rem;
	text-align: center;
	border-radius: var(--maru);
	border: var(--border);
    background: url("https://common-space.online/design/wp-content/uploads/2024/09/icon_calendar.png") no-repeat left 15px center;
    background-size: 20px;
}


#calendar .calendar_top > p.calendar a:hover {
/* 	background: var(--orange)  url("https://common-space.online/design/wp-content/uploads/2024/09/icon_calendar.png") no-repeat left 15px center; */
	border: 1px solid var(--orange);
	background-size: 20px;
}


#calendar .tab_list {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	align-self: flex-end;
}

#calendar .tab_list button {
	font-size: .8rem;
	font-weight: bold;
	width: 100%;
	padding: 20px 10px;
	text-align: center;
	border: 2px solid var(--white);
	border-top: 2px solid var(--white);
	border-bottom: 2px solid #c5c5c5;
}

#calendar .tab_list button span{
	font-size: 1.4rem;
	font-family: var(--font-family_en);
	margin-right: .5rem;
	font-weight: 500;
}

#calendar .tab_list button.on {
	border: 2px solid #c5c5c5;
	border-bottom: 2px solid  var(--white);
}

#calendar .tab_list button:hover {
	border-bottom: 2px solid var(--orange);
}

#calendar > div:not([class]){
	display: grid;
	grid-template-columns: repeat(3,1fr);
	margin-bottom: 2rem;
}

#calendar > div:not([class]) > div {
	padding: 30px;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-gap: var(--gap);
}

#calendar > div:not([class]) > div h3 span{
	color: var(--gray);
	font-size: 80%;
}

#calendar > div:not([class]) > div.film h2,
#calendar > div:not([class]) > div.film h3{
	grid-column: 1/3;
}

#calendar > div:not([class]) .film time{
	font-family: var(--font-family_en);
	margin-right: 10px;
}

#calendar > div:not([class]) .film span{
	font-size: 80%;
	font-weight: 500;
	line-height: 1.3rem;
}

#calendar > div:not([class]) .film ul li{
	display: grid;
	grid-template-columns: auto 1fr 30px;
	grid-column-gap: 10px;
}

#calendar > div:not([class]) .film ul li a{
	font-weight: 500;
	font-size: 1.1rem;
}

#calendar > div:not([class]) .film ul li span:lang(en){
	grid-column: 2/4;
	color: var(--gray);
	font-size: 110%;
	font-weight: 400;
}

#calendar > div:not([class]) .film ul li .sub{
	grid-column: 2/4;
	color: var(--gray);
	font-size: 80%;
}

#calendar > div:not([class]) .film ul li .event{
	grid-column: 2/4;
	font-size: 80%;
}

#calendar > div:not([class]) .film ul li .ticket img{
	width: 30px;
}

#calendar > div:not([class]) .film ul li span:nth-last-of-type(1){
	margin-bottom: 1.2rem;
}


#calendar > div:not([class]) .exhibition > p.open{
	grid-column: 2/3;
}

#calendar > div:not([class])  p.open span:nth-of-type(1){
	font-family: var(--font-family_en);
	font-size: 1.2rem;
	margin-left: .5rem;
}
#calendar > div:not([class]) p.open span:nth-of-type(2){
	color: var(--gray);
	font-size: 80%;
	display: block;
	font-weight: 500;
}

#calendar .close {
	grid-column: 1/3;
}

#calendar .close_all {
	grid-column: 1/4;
	text-align: center;
	padding: 50px 0;
	color: var(--red);
	font-size: 110%;
}

@media screen and (min-width: 801px){
	
	#calendar > div:not([class]) .film{
		grid-row: 1 / 3;
		height: 100%;
		display: flex;
		flex-direction: column;
		margin-bottom: auto;
	}	
	
	#calendar > div:not([class]) > div:first-of-type{
		border-right: var(--border);
	}	
	#calendar > div:not([class]) .exhibition{
		border-left: var(--border);
	}	
	#calendar > div:not([class]) .library{
		border-top: none;
		grid-row: 2 / 3;
		border-top: var(--border);
		border-left: var(--border);
	}

}


/* img-grid :
--------------------------------------------*/	

.img-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	max-width: 1280px;
    margin: 0 auto;
	border-top: var(--border);
	border-left: var(--border);
	align-items: flex-start;
}

.img-grid article {
	border-right: var(--border);
	border-bottom: var(--border);
	height: 100%;
	position: relative;
}

.img-grid article.c1_2 {grid-column: 1 / 3;}

.img-grid article.c2_3 {grid-column: 2 / 4}


.img-grid article a{
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto 1fr;
	text-decoration: none;
	grid-column-gap: var(--gap);
	grid-row-gap: 5px;
	height: 100%;
	text-decoration: none;
	
}

.img-grid article img{
	grid-column: 1 / 3;
	margin-bottom: 10px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}

.img-grid article:is(.c1_2,.c2_3) img{
	aspect-ratio: 2 / 1;
}

.img-grid article.c1-4 img{
	aspect-ratio: 2.35 / 1;
}

.img-grid article.square img{
	aspect-ratio: 1 / 1;
}

.img-grid article .days{
	grid-column: 2 / 3;
	font-size: 90%;
	padding-bottom: 15px;
	font-family: var(--font-family_en);
	font-weight: 300;
}

.img-grid article .status{
	position: absolute;
	top: 0;
	left: 0;
	padding: .3rem .8rem;
	font-weight: 500;
}

.img-grid article .cate{
	padding-left: 20px;
	font-weight: 300;
}

.img-grid article .status.current{
	background: var(--black);
	color: var(--white);
}

.img-grid article .status.upcoming{
	background: var(--white);
}

.img-grid article :is(.title ,.days){
	padding-right: 20px;
}

.img-grid .title {
	font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.05rem;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


@media screen and (min-width: 801px){
	
	.img-grid.clm4 {
		grid-template-columns: repeat(4,1fr);
		border-top: none;
	}
}
	
	/*-- clm4--*/
	
	.img-grid.clm4 {
		grid-template-columns: repeat(4,1fr);
	}
	
	.img-grid article.c3-4 {
		grid-column: 3 / 5;
	}
	
	.img-grid article.c1-4 {
		grid-column: 1 / 5;
	}
	
	.img-grid article.c4 {
		grid-column: 4 / 5;
	}

}


.img-grid article {
	border-right: var(--border);
	border-bottom: var(--border);
	height: 100%;
	position: relative;
}

.img-grid article a{
	text-decoration: none;
}

.img-grid article a{
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto 1fr;
	text-decoration: none;
	grid-column-gap: var(--gap);
	grid-row-gap: 5px;
	height: 100%;
	align-items: flex-start;
}

.img-grid article img{
	grid-column: 1 / 3;
	margin-bottom: 10px;
}

.img-grid article .days{
	grid-column: 2 / 3;
	font-size: 90%;
	padding-bottom: 15px;
	font-family: var(--font-family_en);
	font-weight: 300;
}

.img-grid article .status{
	position: absolute;
	top: 0;
	left: 0;
	padding: .3rem .8rem;
	font-weight: 500;
}

.img-grid article .cate{
	padding-left: 20px;
	font-weight: 300;
}
.img-grid article .status {
	font-style: normal;
}

.img-grid article .status.current{
	background: var(--black);
	color: var(--white);
}

.img-grid article .status.upcoming{
	background: var(--white);
}

.img-grid article :is(h2 ,.days){
	padding-right: 20px;
}

.img-grid article:not(.pickup) h2 {
	font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.05rem;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}



article.pickup a{
	text-decoration: none;
	display: grid;
	grid-template-rows: auto 1fr;
	grid-row-gap: var(--gap);
	height: 100%;
	grid-template-columns: auto;
	padding-left: 0;
	padding-right: 0;
	padding: 20px 20px 30px!important;
    grid-column-gap: auto;
}

article.pickup .cate{
	padding-left: 0;
}

.pickup h2 {
	font-size: 1.1rem;
    font-weight: 500;
}

article {
	margin-block-start: 0!important;
    margin-block-end: 0!important;
}


/* topics :
--------------------------------------------*/	

.topics {
	margin-block-start: 1.5rem!important;
    margin-block-end: 1rem!important;
}
