@charset "utf-8";
@import url("https://use.typekit.net/ilp0mis.css");

/* - SP ---- */
/* - SP 変数 - */
:root {
	/* --vw: 1vw; */
	--color-gray: #d3d3d4;
	--color-darkgray: #666464;
	--color-litegray: #e6e6e6;
	--color-black: #000000;
	--color-white: #ffffff;
	--color-pink: #f9d2dc;
	--color-red: #c93758;
	--sidegap: 50px;
	--topgap: 60px;
	--bottomgap: 16px;
	--margin-s: 14px;
	--font-r: neue-haas-grotesk-display, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
	--font-r-w: 500;
	--font-m: neue-haas-grotesk-text, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
	--font-m-w: 400;
	--font-b: neue-haas-grotesk-text, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
	--font-b-w: 500;
	--font-number: sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
	}

/* - SP ALL - */
html, body {
	padding: 0;
	margin: 0;
	}

html {
	font-family: var(--font-r);
	font-size: 62.5%;
	/* font-weight: 400; */	/* NotoSans用ウエイト */
	font-weight: var(--font-r-w);	/* 石井ゴシック時のgrotesk用ウエイト */
	font-style: normal;	/* 石井ゴシック用ウエイト */
	background-color: var(--color-gray);
	scrollbar-width: thin;
	}
body {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.6px;
	min-height: 100dvh;	/* フッター固定用 */
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;	/* 文字サイズ調整無効 */
	}

/*      文字リンク色 */
a {
	transition: color .3s ease, background-color .3s ease, border-color .3s ease;
	/* outline: none; */
	color: var(--color-red);
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	}
a:link {
	text-decoration: none;
	color: var(--color-red);
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	}
a:visited {
	text-decoration: none;
	color: var(--color-red);
	}
a:active { 
	text-decoration: none;
	color: var(--color-red);
	}
a:hover {
	text-decoration: none;
	color: var(--color-darkgray);
	}
p {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	}
.kome {
	padding-left: 0.5em;
	text-indent: -0.5em;
	display: inline-block;
	line-height: 1.5;
	}
.underline {
	border-bottom: 1px solid #000;
	}
img {
	line-height: 0;
	vertical-align: bottom;
	}
img.no-select {
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
.inline-bk {
	display: inline-block;
	}
.red {
	color: var(--color-red);
	}
/*      clearfix */
.clearfix::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	}

/*      非表示読み上げ用 */
.visually-hidden {
	border: 0 !important;
	clip: rect(0,0,0,0) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	white-space: nowrap !important;
	width: 1px !important;
	}

/*      スマホ非表示、PC表示 */
.sp-no {
	display: none;
	}
.tb-no {
	display: none;
	}
/*      スマホ表示、PC非表示 */
.pc-no {
	}
.all-no {
	display: none;
	}
/* - SP 基本レイアウト - */
header {
	padding: 0 0 0 var(--margin-s);
	margin: 0 0 0 0;
	background-color: transparent;
	width: 100%;
	}
main {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	background-color: transparent;
	width: 100%;
	position: relative;
	}
footer {
	padding: 4em var(--margin-s) var(--bottomgap) var(--margin-s);
	margin: 0 0 0 0;
	width: 100%;
	background-color: transparent;
	position: relative;
	}
/*      フッタ固定 */
body > footer {
	position: sticky;
	top: 100%;
	}

/* - SP ヘッダ - */
.header-wrapper {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	position: relative;
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.home .header-menu-wrapper {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	position: absolute;
	top: 0;
	right: 0;
	}
.home .header-menu-wrapper.is-fixed {
	position: fixed;
	top: 0;
	right: 0;
	animation: slideDown 0.3s ease;
	}
@keyframes slideDown {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(0);
	}
}

.header-menu-wrapper {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: flex-end;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 901;
	width: 100cqw;
padding-bottom: 1rem;
background-color: var(--color-gray);
	}
.menu-open .header-menu-wrapper {
padding-bottom: 0;
background-color: var(--color-white);
	}

/*      ロゴ */
.header-title {
	/* width: 53vw; */
width: 30cqw;
	padding: var(--margin-s) 0 3.0rem 0;
z-index: 998;
	}
.menu-open .header-title {
display: none;
	}
.home .header-title {
	width: auto;
	padding: 0;
	}
.home .header-title h1 {
	border: 0 !important;
	clip: rect(0,0,0,0) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	white-space: nowrap !important;
	width: 1px !important;
	}

h1 {
	padding: 0;
	margin: 0;
	display: inline-block;
	}
h1 img {
	width: 100%;
	height: auto;
	vertical-align: middle;
	}

h1 a, h1 a:link, h1 a:visited, h1 a:active {
	text-decoration: none;
	color: transparent;
	}
h1 a:hover {
	text-decoration: none;
	color: transparent;
	}

/*      グローバルメニュー */
.header-globalmenu {
	/* padding: 0 0.6rem 0.6rem 0; */
	padding: 0 0 0.6rem 0;
	}

/*      ハンバーガー */
.header-hamburger {
	position: relative;
	padding: 1.4rem 1.4rem 0 1.4rem;
	z-index: 1100;
	}
.menu-open .header-hamburger {
	position: fixed;
	top: 0;
	right; 0;
	}


#menu-button {
	display: grid;
	place-items: center;
	place-content: center;
	width: 2.6rem;
	height: 3rem;
	border: none;
	cursor: pointer;
	background-color: transparent;
	}
.bar,
.bar::before,
.bar::after {
	width: 2.6rem;
	height: 2px;
	background-color: var(--color-black);
	transition: transform 0.3s, background-color 0.3s;
	}
.bar {
	display: grid;
	}
.bar::before,
.bar::after {
	content: "";
	grid-area: 1 / 1;
	}
.bar::before {
	transform: translateY(-0.7rem);
	}
.bar::after {
	transform: translateY(0.7rem);
	}

#menu-button:hover .bar,
#menu-button:hover .bar::before,
#menu-button:hover .bar::after {
	background-color: var(--color-red);
	}
 
.menu-label {
	transform: translateY(1rem);
	font-size: 0.55em;
	color: var(--color-black);
	transition: color 0.3s;
	white-space: nowrap;
	}
#menu-button:hover .menu-label {
	color: var(--color-red);
	}
.menu-open #menu-button .bar {
	background-color: transparent;
	transition: background-color .1s;
	}
.menu-open #menu-button .bar::before {
	transform: rotate(28deg);
	}
.menu-open #menu-button .bar::after {
	transform: rotate(-28deg);
	}

.menu-open #menu-button:hover .bar {
	background-color: transparent;
	}
.menu-open #menu-button:hover .menu-label {
	color: var(--color-red);
	}

.main-menu {
	transition: opacity 0.2s ease;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	min-height: 100dvh;
	background-color: var(--color-white);
	overflow-y: auto;
	z-index: 900;
	}
.menu-open .main-menu {
	opacity: 1;
	pointer-events: initial;
	}

/*      スマホメニュー表示時スクロール禁止 */
body.menu-open {
	width: 100%;
	height: 100%;
	overflow: hidden;
	}

/* - SP メニュー - */
.main-menu {
	font-size: 1.4rem;
	line-height: 1.7;
	padding: 4em 0 0 0;
	overflow-x: hidden;
	scrollbar-width: thin;
	}
ul.global-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	border-top: 1px dashed var(--color-darkgray);
	}
ul.global-list > li {
	width: 100%;
	font-size: 1.8rem;
	color: var(--color-black);
	border-bottom: 1px dashed var(--color-darkgray);
	padding: 1em 1.4rem 1em 1em;
	margin: 0 0 0 0;
	overflow: hidden;
	}
.title-touch a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
.title-touch a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

ul.global-list > li.empty {
	display: none;
	}

/*      メニュー開閉 */
ul.global-sub-list {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: none;
	opacity: 0;
	max-height: 0;
	/* 		@starting-style {
			opacity: 1;
			max-height: 100vh;
			padding-top 0.5em;
		} */
	transition: opacity 0.3s ease, padding-top 0.3s ease, max-height 0.3s ease -0.2s, display 0.3s ease -0.2s allow-discrete;
	/* 	transition: opacity 0.2s ease, padding-top 0.2s ease, max-height 0.3s ease -0.2s, display 0.3s ease allow-discrete; */
	}
ul.global-sub-list.open {
	display: block;
	opacity: 1;
	padding: 0.5em 0 0 0;
	max-height: 100vh;
	/* 		@starting-style {
			opacity: 0;
			max-height: 0;
			padding-top 0;
		} */
	transition: opacity 0.3s ease, padding-top 0.3s ease, max-height 2s ease, display 2s ease allow-discrete;
	}


/*      ＋ボタン */
.sub-menu-all {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	}
.sub-menu-category {
	flex: 1;
	}
.sub-menu-btn {
	align-self: center;
	position: relative;
	}

ul.global-sub-list > li {
	width: 100%;
	font-size: 1.4rem;
	line-height: 1.5;
	color: var(--color-darkgray);
	}
ul.global-sub-list > li a {
	color: var(--color-black);
	display: inline-block;
	}
ul.global-sub-list > li a:hover {
	color: var(--color-red);
	}

.sp-button {
	display: block;
	width: 2.8rem;
	height: 2.8rem;
	cursor: pointer;
	border: none;
	background-color: transparent;
	border: 1px solid var(--color-darkgray);
	border-radius: 14px;
	}
.sub-bar {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1.2rem;
	height: 1px;
	background-color: var(--color-darkgray);
	}
.sub-bar::after {
	content: '';
	width: 1.2rem;
	height: 1px;
	background-color: var(--color-darkgray);
	position: absolute;
	top: 0;
	left: 0;
	opacity: 1;
	transform: translate(-50%, -50%);
	transform: rotate(90deg);
	transition: transform 0.3s, opacity 0.3s;
	}
.open .sub-bar::after {
	transform: rotate(0);
	opacity: 0;
	}

a span.ex-link {
	display: inline-block;
	width: 1.1rem;
	height: 1.1rem;
	vertical-align: text-bottom;
	margin-left: 4px;
	margin-right: 5px;
	margin-bottom: 2px;
	background-image: url("../../img/ex-link.svg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position-y: bottom;
	position: relative;
	}
a span.ex-link::before {
	content: '';
	width: 1.1rem;
	height: 1.1rem;
	position: absolute;
	top: 0;
	left: 0;
	vertical-align: text-bottom;
	background-image: url("../../img/ex-link.svg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position-y: top;
	opacity: 1;
	z-index: +1;
	transition: opacity 0.3s ease;
	}
a:hover span.ex-link::before {
	opacity: 0;
	}

.artists-img-all + p.small {
	margin-top: 2em;
	}

/*      メニューバナーエリア */
p.menu-pickup {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1.5em;
	line-height: 1;
	color: var(--color-pink);
	padding: 1.5em 0 0 1em;
	margin: 0 0 0 0;
	}
.main-menu .menu-banner-wrapper {
	padding: 1.5em 0 1.5em 1.5em;
	margin: 0 0 0 0;
	background-color: var(--color-pink);
	overflow: visible;
	}
.main-menu ul.banner-list {
	width: 100%;
	display: flex;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.main-menu ul.banner-list li {
	width: 40cqw;
	flex-shrink: 0;
	padding: 0 1.5em 0 0;
	margin: 0 0 0 0;
	}

.main-menu ul.banner-list li p {
	font-size: 1.2rem;
	line-height: 1.1;
	padding: 0.75em 0 0 0;
	margin: 0 0 0 0;
	}

.main-menu .menu-bannercontroller {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	padding: 0 1.4rem 0 0;
	margin: 1em 0 0 0;
	}
.main-menu .menu-bannercontroller.slidenone {
	display: none;
	}

.main-menu .menu-bannercontroller .swiper-pagination {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0 auto 0 1.25em;
	bottom: auto;
	top: auto;
	width: auto;
	}
.main-menu .menu-bannercontroller .btn-go {
	display: flex;
	align-items: center;
	gap: 6px;
	}
.main-menu .menu-bannercontroller .btn-go a {
	display: block;
	margin-left: 0.5rem;
	}

.main-menu span.yaji-prev.swiper-button-disabled,
.main-menu span.yaji-next.swiper-button-disabled {
	border: 1px solid var(--color-gray);
	background-color: var(--color-white);
	cursor: default;
	}
.main-menu span.yaji-prev.swiper-button-disabled::after {
	border-top: 1px solid var(--color-gray);
	border-left: 1px solid var(--color-gray);
	}
.main-menu span.yaji-next.swiper-button-disabled::after {
	border-top: 1px solid var(--color-gray);
	border-right: 1px solid var(--color-gray);
	}
.main-menu span.yaji-prev.swiper-button-disabled:hover,
.main-menu span.yaji-next.swiper-button-disabled:hover {
	background-color: var(--color-white);
	}


/*      言語選択 */
.menu-open ul.global-menu {
	display: block;
	padding: 0 var(--sidegap) 0 0;
	margin: 0 0 0 0;
	line-height: 1;
	}
.menu-open ul.global-menu li {
	display: none;
	}
.menu-open ul.global-menu li.lang {
	opacity: 1;
	display: block;
	font-size: 1.6rem;
	padding: 0 0 0 1em;
	margin: 1.25em 0.25em 0 1em;
	border-left: 0;
	background-color: transparent;
	pointer-events: auto;
	}

abbr.language-menu_abbr {
	font-style: normal;
	text-decoration: none;
	border-bottom-width: 0;
	}

/*      SNSアイコン */
ul.header-nav_sns {
	display: flex;
	justify-content: center;
	padding: 3em 0 1em 0;
	margin: 0 0 0 0;
	}
ul.header-nav_sns li {
	text-decoration: none;
	color: #000;
	padding: 0 0 0 0;
	margin: 0 15px 0 15px;
	width: 24px;
	height: 24px;
	line-height: 1;
	}
ul.header-nav_sns li img {
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
ul.header-nav_sns li a {
	display: inline-block;
	}
ul.header-nav_sns li a img {
	width: 24px;
	height: 24px;
	transition: opacity .3s ease;
	opacity: .55;
	filter: alpha(opacity=55);
	}
ul.header-nav_sns li a:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
	}

/*      その他メニュー */
.other-menu {
	display: flex;
	justify-content: center;
	}
ul.header-nav_other {
	display: inline-block;
	padding: 1em 0 1em 0;
	}
ul.header-nav_other > li a {
	color: var(--color-black);
	}
ul.header-nav_other > li a:hover {
	color: var(--color-red);
	}
.logo-menu {
	text-align: center;
	padding: 2em 0 3em 0;
	}
.logo-menu a {
	display: inline-block;
	width: 46%;
	}
/*      関連サイトバナー */
ul.footer-banner_list {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	padding: 1em 0 2em 0;
	margin: 0 0 0 0;
	}
ul.footer-banner_list li img {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
ul.footer-banner_list li {
	padding: 0 0 0 0;
	margin: 0 0.75em 0 0.75em;
	}
ul.footer-banner_list li img.footer-banner_at {
	width: 52px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_ala {
	width: 75px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_artschallenge {
	width: 64px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_aichiart {
	width: 56px;
	height: auto;
	}
ul.footer-banner_list li a {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.footer-banner_list li a img {
	transition: opacity .3s ease;
	opacity: .55;
	filter: alpha(opacity=55);
	}
ul.footer-banner_list li a:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
	}

/*      GLOBALメニュー */
ul.global-menu {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	line-height: 1.1;
	transition: opacity .3s ease;
	}
ul.global-menu li {
	opacity: 1;
	font-size: 1.2rem;
	padding: 0 0 0 0;
	/* margin: 0 0 0 1em; */
	margin: 0 0 0 0.75em;
	/* 	background-color: var(--color-gray); */
	text-box-trim: trim-end;
	text-box-edge: cap alphabetic;
	transition: color .3s ease, background-color .3s ease, border-color .3s ease;
	/* 	pointer-events: none; */
	}
ul.global-menu li.lang {
	display: none;
	padding: 0 0 0 1em;
	margin: 0 0 0 1em;
	border-left: 1px solid #000;
	}
ul.global-menu.is-fixed li {
/* 	opacity: 1;
	pointer-events: auto; */
	}
ul.global-menu.is-show li {
/* 	opacity: 1;
	pointer-events: auto; */
	}
ul.global-menu li a {
	color: #000;
	display: inline-block;
	}
ul.global-menu li a:hover {
	color: var(--color-red);
	}
ul.global-menu li.lang a {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.global-menu li.lang a:hover {
	color: var(--color-red);
	}

ul.global-menu.is-show.is-hyde {
	opacity: 0;
	}


/* - SP フッタ - */
.footer-wrapper {
	position: relative;
	padding: 0 0 0 0.8rem;
	margin: 0 0 0 0;
	}
.footer-logo {
	margin-bottom: 0;
	}
.footer-logo a {
	display: inline-block;
	}
.footer-logo img {
	width: 16rem;
	height: auto;
	}

/*      パンくずリスト */
.breadcrumbs {
	padding: 0.8rem 0 0.8rem 0;
	margin: 0 0 0 0;
	position: relative;
	border-top: 1px solid #000;
	}
ol.breadcrumbs_list {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-size: 1rem;
	line-height: 1.2;
	color: #000;
	justify-content: flex-end;
	text-align: right;
	}
ol.breadcrumbs_list li {
	padding: 0 1em 0 0.5em;
	margin: 0 0 0 0;
	position: relative;
	}
ol.breadcrumbs_list li.home img {
	display: inline-block;
	max-width: inherit;
	width: 1em;
	height: auto;
	vertical-align: baseline;
	}
ol.breadcrumbs_list li:last-of-type {
	padding: 0 0 0 0.5em;
	}
ol.breadcrumbs_list li:not(:last-of-type)::after {
	content: "/";
	color: #000;
	speak: none;
	position: absolute;
	top: 0;
	right: 0;
	}
ol.breadcrumbs_list li a {
	color: var(--color-black);
	}
ol.breadcrumbs_list li a:hover {
	color: var(--color-darkgray);
	}

/*      コピーライト */
.footer-copyright {
	width: 100%;
	padding: 1.6rem 0 0 0;
	margin: 0 0 0 0;
	}
.footer-copyright p {
	font-size: 1.2rem;
	line-height: 1;
	text-align: right;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

/*      ページトップへ */
.pagetop {
	padding: 0;
	margin: 0;
	position: fixed;
	bottom: calc(var(--margin-s) * 2.5);
	right: var(--margin-s);
	z-index: 800;
	}
.pagetop a {
	display: block;
	color: var(--color-gray);
	text-decoration: none;
	background-color: transparent;
	border-radius: 1.6rem;
	position: relative;
	width: 3.2rem;
	height: 3.2rem;
	font-size: 0;
	line-height: 1;
	border: 1px solid #000;
	}
.pagetop a::before {
	content: '';
	width: 0.8rem;
	height: 0.8rem;
	display: block;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	transform: rotate(-45deg);
	position: absolute;
	top: 0.5rem;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	transition: all 0.3s ease;
	}
.pagetop a:hover {
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
.pagetop a:hover::before {
	border-top: 1px solid var(--color-white);
	border-right: 1px solid var(--color-white);
	}

/* - SP 各部品 - */
/*      見出し */
h2 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 1.5em;
	line-height: 2;
	padding: 0 0 0 0;
	margin: 0 0 0.5em 0;
	border-bottom: 2px solid #000;
	}
.home h2 {
	margin: 0 0 1em 0;
	}
.programs-title h2 {
	border-bottom: 1px solid #000;
	}

h2.about-wrapper-h2 {
	margin-top: 2em;
	margin-bottom: 0.5em;
	border: none;
	position: relative;
	z-index: +1;
	}
h2.about-wrapper-h2 span {
	padding: 0 0.25em 0 0;
	margin: 0 0 0 0;
	background-color: var(--color-white);
	}
h2.about-wrapper-h2::after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-1px);
	z-index: -1;
	}

hgroup.h2 {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	position: relative;
	}
hgroup.h2 span.category {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	letter-spacing: 0;
	display: inline-block;
	font-size: 0.9em;
	line-height: 1;
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-black);
	/* background-color: var(--color-white); */
	/* padding: 6px 1.25em 6px 1.25em; */
padding: 0 0 0 0;
	margin: 0 0 0 0;
	/* border-radius: 9999px; */
	position: absolute;
	/* top: -0.5em; */
top: -0.75em;
	left: 0;
	/* right: calc(var(--margin-s) + max(0px, calc(50cqw - 790px))); */
	}

h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	font-size: 1.8em;
	line-height: 1.5;
	padding: 0 0 1.25em 0;
	margin: 0 0 0 0;
	text-box-trim: trim-start;
	}
h3.single-h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.3em;
	line-height: 1.5;
	padding: 2em 0 0.25em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #000;
	}
h3.single-h3.topzero {
	padding-top: 0;
	}
.topthree {
	padding-top: 0em;
	margin-top: 3em;
	}
.topfour {
	padding-top: 0em;
	margin-top: 5em;
	}

h3.section-h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.3em;
	line-height: 1.5;
	padding: 0 0 0.25em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid var(--color-black);
	}
h3.join-h3 {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-style: normal;
	font-size: 1.8em;
	line-height: 1.5;
	padding: 0 0 1.5em 0;
	margin: 0 0 0 0;
	text-align: center;
	}
h3.ticket-h3 {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-style: normal;
	font-size: 1.8em;
	line-height: 1.5;
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	text-align: center;
	}

h3.artist-h3,
h3.event-h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.8em;
	line-height: 1.5;
	padding: 0 0 0.3em 0;
	margin: 0 0 0 0;
	text-box-trim: trim-start;
	}
h3.artist-h3 span {
	font-size: 0.85em;
	padding: 0 0 0 0.3em;
	}

hgroup.h3 {
	padding: 0 0 0 1em;
	margin: 0 0 2em 0;
	position: relative;
	border-left: 2px solid var(--color-black);
	}
hgroup.h3.outline {
	margin-top: 2em;
	}

h4 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	font-size: 1.3em;
	line-height: 1.5;
	padding: 1em 0 0.25em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #000;
	}
hgroup + h4 {
	padding: 0 0 0.25em 0;
	margin: 0 0 1em 0;
	}
h4.single-h4,
h5.single-h5 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}
h4.single-h4 span {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-style: normal;
	}
h4.team-h4,
h5.team-h4 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1.5em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}
h4.design-h4 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1.2em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}
h4.design-h4 + h4.design-h4 {
	padding: 0.25em 0 0 0;
	}

h4.pop-h4 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1.2em;
	line-height: 1.5;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}

h4.collabo-h4 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0.75em 0 1em 0;
	border-bottom: none;
	position: relative;
	}
h4.collabo-h4 span {
	padding: 0 0.75em 0 0;
	background-color: var(--color-gray);
	}
h4.collabo-h4::after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	z-index: -1;
	}

h4.hotel-h4 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1.4em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}

h4.thema {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.8em;
	line-height: 1.5;
	padding: 0 0 1.25em 0;
	margin: 0 0 0 0;
	text-box-trim: trim-start;
	border-bottom: none;
	}

h4.support-h4 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 1.5em 0 0.5em 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}

h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 1.2em;
	line-height: 1.5;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}
h5.support-h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 1.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}
h5.dl-photo {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	}
h5.join-h5 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}

h5.collabo-h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}

h5.ticket-h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1.2em;
	line-height: 1.5;
	padding: 1.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}

h4 + h5.ticket-h5 {
	padding: 0.5em 0 0.5em 0;
	}

hgroup.design {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	position: relative;
	}

h5.artist-h5 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 0.9em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0.5em 0 1em 0;
	border-bottom: none;
	position: relative;
	}
h5.artist-h5 span {
	padding: 0 0.75em 0 0;
	background-color: var(--color-gray);
	}
h5.artist-h5::after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: var(--color-darkgray);
	position: absolute;
	top: 50%;
	right: 0;
	z-index: -1;
	}
h5.artist-h5.topp {
	margin: 3em 0 1em 0;
	}

h5.pa-title {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.6em;
	line-height: 1.5;
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}
h5.pa-title span {
	font-size: 0.85em;
	}
hgroup.info-h5 {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	position: relative;
	}
hgroup.info-h5:has(.learning-p) {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	position: relative;
	}

h5.artist-sub {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 1.3em;
	line-height: 1.5;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
h5.artist-sub span {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	letter-spacing: 0;
	font-size: 0.8em;
	}


h6 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0.25em 0;
	margin: 0 0 0 0;
	}

h6.artist-h6 {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-style: normal;
	font-size: 0.9em;
	line-height: 1.5;
	padding: 0.25em 0 0.25em 0.5em;
	margin: 0 0 0 0;
	border-bottom: none;
	}

h2:focus,
h3:focus,
h4:focus,
h5:focus {
	outline: 0;
	}

.contents-main-area p a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
.contents-main-area p a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

/*      リスト */
ul {
	padding: 0 0 1.5em 1.75em;
	margin: 0 0 0 0;
	}
ul li {
	padding: 0.25em 0 0.25em 0;
	}
ol {
	padding: 0 0 1.5em 1.75em;
	margin: 0 0 0 0;
	}
ol li {
	padding: 0.25em 0 0.25em 0;
	}
dl {
	padding: 0.5em 0 1.75em 0;
	}
dl dt {
	padding: 0.5em 0 0 0;
	}
dl dd {
	padding: 0 0 0 1em;
	}
/*      テーブル */
.table-wrapper {
	overflow-x: auto;
	width: 100%;
	white-space: nowrap;
	padding: 0 0 0.5em 0;
	}

table {
	width: 100%;
	margin: 1em 0 1.75em 0;
	border-collapse: collapse;
	font-size: 1em;
	}
table th {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	line-height: 1.35;
	padding: 0.5em 0.5em 0.5em 0.5em;
	text-align: center;
	vertical-align: middle;
	border: 1px solid var(--color-darkgray);
	background-color: #aaa;
	}
table td {
	line-height: 1.35;
	padding: 0.5em 0.5em 0.5em 0.5em;
	border: 1px solid var(--color-darkgray);
	}
table img {
	display: inline;
	}

/*      文字装飾 */
strong,
b {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	letter-spacing: 0;
	}
em,
i {
	font-style: italic;
	}
p span.small {
	font-size: 0.85em;
	}
p.small {
	font-size: 0.85em;
	}
sub {
	font-size: 0.85em;
	vertical-align: baseline;
	}

/*      ルビ <ruby data-ruby=""> */
ruby[data-ruby] {
	position: relative;
	display: inline-block;
	}
ruby[data-ruby]::before {
	content: attr(data-ruby);
	width: fit-content;
	position: absolute;
	top: -0.6em;
	left: 50%;
	right: 50%;
	transform: translate(-50%, 0);
	font-size: 0.45em;
	text-align: center;
	white-space: nowrap;
	}
ruby[data-ruby] rt {
	display: none;
	}

/*      キー入力要素 */
kbd {
	background-color: #eee;
	border-radius: 3px;
	border: 1px solid #ccc;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .2), 0 2px 0 0 rgba(255, 255, 255, .7) inset;
	display: inline-block;
	font-size: 0.85em;
	line-height: 1;
	padding: 2px 4px;
	margin: 0 2px 0 2px;
	vertical-align: 0.25em;
	white-space: nowrap;
	}
/*      変数要素 */
var {
	font-weight: bold;
	}
/*      略語要素 */
abbr {
	font-style: italic;
	}
/*      文字列マーク要素 */
mark {
	color: #000;
	background-color: #ccffff;
	}
/*      引用ブロック */
blockquote {
	padding: 0.75em 1em 0.75em 1em;
	margin: 1em 0 1em 0;
	background-color: #eee;
	border-radius: 6px;
	}
blockquote p {
	padding: 0 0 0 0;
	}

/*      YouTube */
.movie-wrap {
	width: 100%;
	position: relative;
	height: 0;
	padding: 0 0 56.25% 0;
	margin: 0 0 1em 0;
	overflow: hidden;
	}
.movie-wrap.small {
	width: 80%;
	position: relative;
	height: 0;
	padding: 0 0 calc(80% * 0.5625) 0;
	margin: 0 10% 1em 10%;
	overflow: hidden;
	}
.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	}

.cm {
	width: 70%;
	aspect-ratio: 9 / 16;
	margin: 0 0 2em 1em;
	overflow: hidden;
	}
.cm iframe {
	width: 100%;
	height: 100%;
	}

/*      Googleマップ */
.map-wrapper {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	}
.googlemap {
	width: 100%;
	height: 30em;
	margin: 0 0 1.75em 0;
	}
.googlemap iframe {
	width: 100%;
	height: 100%;
	border: 0;
	pointer-events: none;
	}

/*      サブメニュー */
.sub-menu-all {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.sub-menu {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.sub-menu li {
	padding: 0 0 0 0;
	margin: 0 1em 0 0;
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	line-height: 1.2;
	}
ul.sub-menu li.sort {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	white-space: nowrap;
	}
ul.sub-menu li:last-child {
	margin: 0 0 0 0;
	}
ul.sub-menu li a {
	display: inline-block;
	color: var(--color-black);
	padding: 0 0 0.25em 0;
	margin: 0 0 0.5em 0;
	border-bottom: 1px solid transparent;
	}
ul.sub-menu li a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}
ul.sub-menu li.current a {
	border-bottom: 1px solid var(--color-black);
	}
ul.sub-menu li.current a:hover {
	border-bottom: 1px solid var(--color-red);
	}

ul.sub-menu.indentmenu {
	width: 100%;
	/* flex-wrap: nowrap; */
	}
.sub-menu-indent {
	width: auto;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}

ul.sub-link {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.sub-link li {
	padding: 0 0 0 0;
	margin: 0 0.75em 0 0;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	line-height: 1.2;
	}
ul.sub-link li.sort {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	margin: 0 0.5em 0 0;
	}
ul.sub-link a {
	color: var(--color-black);
	}
ul.sub-link a:hover {
	color: var(--color-red);
	}
ul.sub-link.max {
	width: 100%;
	margin-top: 0.5em;
	}
ul.sub-link li .small {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.85em;
	}
ul.sub-link li:has(#modal-op) {
	margin-top: 0.25em;
	}
ul.sub-link + ul.sub-menu.indentmenu {
	margin-top: 0.75em;
	}
ul.sub-menu.indentmenu li.sort {
	/* width: 5.1em; */
	}

/*      ページ内リンクメニュー */
ul.contents-link {
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.contents-link li {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 0.85em;
	line-height: 1.5;
	padding: 0 1.25em 0 0;
	margin: 0 0 0.5em 0;
	}
ul.contents-link a {
	color: var(--color-darkgray);
	padding: 0 0 0 0;
	}
ul.contents-link a:hover {
	color: var(--color-red);
	}
ul.contents-link.alphabet li {
	width: 10%;
	font-size: 0.85em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 1.25em 0;
	}

/* - SP リンクボタン - */
/*      ページ内リンク */
a span.yaji-down {
	display: inline-block;
	padding: 0 0 0 1.25em;
	position: relative;
	}
a span.yaji-down::before {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 0.6em;
	height: 0.6em;
	display: block;
	border-right: 1px solid var(--color-darkgray);
	border-bottom: 1px solid var(--color-darkgray);
	position: absolute;
	top: 0;
	left: 0;
	transform: translateY(-10%) rotate(45deg);
	transform-origin: bottom left;
	transition: border-color .3s ease;
	}
a:hover span.yaji-down::before {
	border-right: 1px solid var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

/*      右外部リンク */
a span.yaji-right {
	display: inline-block;
	padding: 0 0 0 1.25em;
	position: relative;
	}
a span.yaji-right::after {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 1em;
	height: 1em;
	display: block;
	border: 1px solid var(--color-black);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-52%);
	transition: border-color .3s ease;
	z-index: -1;
	}
a span.yaji-right::before {
	content: '';
	display: block;
	vertical-align: middle;
	line-height: 1;
	width: 0.35em;
	height: 0.35em;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateX(90%) rotate(45deg);
	transform-origin: top right;
	transition: border-color .3s ease;
	}
a:hover span.yaji-right::after {
	border: 1px solid var(--color-red);
	}
a:hover span.yaji-right::before {
	border-top: 1px solid var(--color-red);
	border-right: 1px solid var(--color-red);
	}
/*      左外部リンク */
a span.yaji-left {
	display: inline-block;
	padding: 0 0 0 1.25em;
	position: relative;
	}
a span.yaji-left::after {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 1em;
	height: 1em;
	display: block;
	border: 1px solid var(--color-black);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-52%);
	transition: border-color .3s ease;
	/* z-index: -1; */
	}
a span.yaji-left::before {
	content: '';
	display: block;
	vertical-align: middle;
	line-height: 1;
	width: 0.38em;
	height: 0.38em;
	border-left: 1px solid var(--color-black);
	border-bottom: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateX(120%) rotate(45deg);
	transform-origin: top right;
	transition: border-color .3s ease;
	}
a:hover span.yaji-left::after {
	border: 1px solid var(--color-red);
	}
a:hover span.yaji-left::before {
	border-left: 1px solid var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

.page-btn {
	padding: 4em 0 1em 0;
	margin: 0 0 0 0;
	}
.center-btn {
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	text-align: center;
	}
.info-btn {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	text-align: center;
	}
/*      もどるリンク */
a:has(span.yaji-back) {
	display: inline-block;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	/* font-size: 0.85em; */
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.8em 2em 0.8em 2em;
	margin: 0 0 0 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: transparent;
	}
a:has(span.yaji-back):hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
a span.yaji-back {
	display: inline-block;
	padding: 0 0 0 1.25em;
	position: relative;
	}
a span.yaji-back::before {
	content: '';
	width: 0.6em;
	height: 0.6em;
	border-top: 1px solid var(--color-black);
	border-left: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(-45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
a:hover span.yaji-back::before {
	border-top: 1px solid var(--color-white);
	border-left: 1px solid var(--color-white);
	}
/*      すすむリンク */
a:has(span.yaji-go) {
	display: inline-block;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	/* font-size: 0.85em; */
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.8em 2em 0.8em 2em;
	margin: 0 0 0 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: var(--color-white);
	}
a:has(span.yaji-go.pink) {
	background-color: var(--color-pink);
	}
a:has(span.yaji-go):hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
a span.yaji-go {
	display: inline-block;
	padding: 0 1.25em 0 0;
	position: relative;
	}
a span.yaji-go::before {
	content: '';
	width: 0.6em;
	height: 0.6em;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
a:hover span.yaji-go::before {
	border-top: 1px solid var(--color-white);
	border-right: 1px solid var(--color-white);
	}

a:has(span.yaji-downw) {
	display: inline-block;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.7em 2em 0.7em 2em;
	margin: 0 0 0 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: var(--color-white);
	}
a:has(span.yaji-downw):hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
a span.yaji-downw {
	display: inline-block;
	padding: 0 1.25em 0 0;
	position: relative;
	}
a span.yaji-downw::before {
	content: '';
	width: 0.6em;
	height: 0.6em;
	border-right: 1px solid var(--color-black);
	border-bottom: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-75%) rotate(45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
a:hover span.yaji-downw::before {
	border-right: 1px solid var(--color-white);
	border-bottom: 1px solid var(--color-white);
	}

li.link-btn-item a:has(span.ex-link) {
	display: inline-block;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.7em 2em 0.7em 2em;
	margin: 0 0 0 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: var(--color-white);
	}
li.link-btn-item a:has(span.ex-link):hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
li.link-btn-item a span.ex-link {
	background-image: url("../../img/ex-link-w.svg");
	margin-left: 1em;
	}

/*      前ボタン */
span.yaji-prev {
	display: inline-block;
	font-size: 1em;
	line-height: 1;
	width: 1em;
	aspect-ratio: 1 / 1;
	vertical-align: middle;
	padding: 1em 1em 1em 1em;
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-white);
	border-radius: 50%;
	position: relative;
	transition: border-color .3s ease, background-color .3s ease;
	cursor: pointer;
	}
span.yaji-prev::after {
	content: '';
	line-height: 1;
	display: inline-block;
	width: 0.5em;
	height: 0.5em;
	border-top: 1px solid var(--color-black);
	border-left: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) rotate(-45deg);
	transform-origin: top left;
	transition: border-color .3s ease;
	}
span.yaji-prev:hover {
	border: 1px solid var(--color-red);
	background-color: var(--color-red);
	}
span.yaji-prev:hover::after {
	border-top: 1px solid var(--color-white);
	border-left: 1px solid var(--color-white);
	}
/*      次ボタン */
span.yaji-next {
	display: inline-block;
	font-size: 1em;
	line-height: 1;
	width: 1em;
	aspect-ratio: 1 / 1;
	vertical-align: middle;
	padding: 1em 1em 1em 1em;
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-white);
	border-radius: 50%;
	position: relative;
	transition: border-color .3s ease, background-color .3s ease;
	cursor: pointer;
	}
span.yaji-next::after {
	content: '';
	line-height: 1;
	display: inline-block;
	width: 0.5em;
	height: 0.5em;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	right: 50%;
	transform: translateX(50%) rotate(45deg);
	transform-origin: top right;
	transition: border-color .3s ease;
	}
span.yaji-next:hover {
	border: 1px solid var(--color-red);
	background-color: var(--color-red);
	}
span.yaji-next:hover::after {
	border-top: 1px solid var(--color-white);
	border-right: 1px solid var(--color-white);
	}

span.yaji-prev.swiper-button-disabled,
span.yaji-next.swiper-button-disabled {
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-gray);
	cursor: default;
	}
span.yaji-prev.swiper-button-disabled::after {
	border-top: 1px solid var(--color-darkgray);
	border-left: 1px solid var(--color-darkgray);
	}
span.yaji-next.swiper-button-disabled::after {
	border-top: 1px solid var(--color-darkgray);
	border-right: 1px solid var(--color-darkgray);
	}
span.yaji-prev.swiper-button-disabled:hover,
span.yaji-next.swiper-button-disabled:hover {
	background-color: var(--color-gray);
	}

span.yaji-next.learning {
	font-size: 1em;
	padding: 0.7em 0.7em 0.7em 0.7em;
	}
span.yaji-next.learning::after {
	width: 0.36em;
	height: 0.36em;
	top: 50%;
	right: 50%;
	}
a span.yaji-next.learning::after {
	border-top: 1px solid var(--color-darkgray);
	border-right: 1px solid var(--color-darkgray);
	}
a span.yaji-next.learning {
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-gray);
	}
a:hover span.yaji-next.learning {
	border: 1px solid var(--color-red);
	background-color: var(--color-red);
	}
a:hover span.yaji-next::after {
	border-top: 1px solid var(--color-white);
	border-right: 1px solid var(--color-white);
	}

/*      読み込みボタン */
.infinite-btn {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	text-align: center;
	}
.btn-more {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	/* font-size: 0.85em; */
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.8em 3.25em 0.8em 2em;
	margin: 2em 0 1em 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: transparent;
	transition: color .3s ease, border-color .3s ease, background-color .3s ease;
	cursor: pointer;
	position: relative;
	}
.btn-more::after {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 0.6em;
	height: 0.6em;
	display: block;
	border-right: 1px solid var(--color-black);
	border-bottom: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	right: 2em;
transform: translateY(-75%) rotate(45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
.btn-more:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
.btn-more:hover::after {
	border-right: 1px solid var(--color-white);
	border-bottom: 1px solid var(--color-white);
	}
a.btn-more {
	color: var(--color-black);
	}
a.btn-more span.small {
	/* font-size: 0.85em; */
	font-size: max(0.85em, 12px);
	padding-left: 0.25em;
	}
a.btn-more.white {
	background-color: var(--color-white);
	}
a.btn-more.white:hover {
	background-color: var(--color-red);
	}

/*      もどるボタン */
.btn-back {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	/* font-size: 0.85em; */
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.8em 2em 0.8em 3.25em;
	margin: 2em 0 1em 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: transparent;
	transition: color .3s ease, border-color .3s ease, background-color .3s ease;
	cursor: pointer;
	position: relative;
	}
.btn-back::before {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 0.6em;
	height: 0.6em;
	display: block;
	border-bottom: 1px solid var(--color-black);
	border-left: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	left: 2em;
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
.btn-back:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
.btn-back:hover::before {
	border-bottom: 1px solid var(--color-white);
	border-left: 1px solid var(--color-white);
	}
/*      すすむボタン */
.btn-next {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	/* font-size: 0.85em; */
	font-size: max(0.85em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.8em 3.25em 0.8em 2em;
	margin: 2em 0 1em 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: transparent;
	transition: color .3s ease, border-color .3s ease, background-color .3s ease;
	cursor: pointer;
	position: relative;
	}
.btn-next::after {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 0.6em;
	height: 0.6em;
	display: block;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	right: 2em;
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
.btn-next:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
.btn-next:hover::after {
	border-top: 1px solid var(--color-white);
	border-right: 1px solid var(--color-white);
	}
a.btn-next {
	color: var(--color-black);
	}

/*      一時停止 */
span.yaji-stop,
span.yaji-stop2 {
	display: inline-block;
	font-size: 1em;
	line-height: 1;
	width: 1em;
	aspect-ratio: 1 / 1;
	vertical-align: middle;
	padding: 0.8em 0.8em 0.8em 0.8em;
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-white);
	border-radius: 50%;
	position: relative;
	transition: border-color .3s ease, background-color .3s ease;
	cursor: pointer;
	}

span.yaji-stop::after,
span.yaji-stop2::after {
	content: '';
	line-height: 1;
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
	background-image: url("../../img/paused.svg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position-y: top;
	}
span.yaji-stop:hover,
span.yaji-stop2:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
span.yaji-stop:hover::after,
span.yaji-stop2:hover::after {
	background-position-y: bottom;
	}

span.yaji-stop.paused::after,
span.yaji-stop2.paused::after {
	background-image: url("../../img/paused-r.svg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position-y: top;
	}
span.yaji-stop.paused:hover::after,
span.yaji-stop2.paused:hover::after {
	background-position-y: bottom;
	}

/*      テキストリンク */
a.yaji {
	color: var(--color-black);
	padding-right: 1em;
	position: relative;
	}
a.yaji:hover {
	color: var(--color-red);
	}
a.yaji::after {
	content: '';
	vertical-align: middle;
	line-height: 1;
	width: 0.5em;
	height: 0.5em;
	display: block;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center center;
	transition: border-color .3s ease;
	}
a.yaji:hover::after {
	border-top: 1px solid var(--color-red);
	border-right: 1px solid var(--color-red);
	}

/* - SP 本文レイアウト - */
section {
	padding-top: 0;
	margin-top: 0;
	}
section + section {
	padding-top: 0;
	margin-top: 0;
	}
section[tabindex="-1"]:focus {
	outline: 0;
	}

.contents-wrapper {
	width: 100%;
	position: relative;
	padding: 0 0 2em 0;
	margin: 0 0 0 0;
	}
section:first-child .contents-wrapper {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
.home section .contents-wrapper {
	padding: 4em 0 4em 0;
	margin: 0 0 0 0;
	}
.home section:first-child .contents-wrapper {
	padding: 4em 0 4em 0;
	margin: 0 0 0 0;
	}

.contents {
	width: 100%;
	max-width: 1580px;
	padding: 0 var(--margin-s) 0 var(--margin-s);
	margin: 0 auto;
	position: relative;
	}
.contents-all {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 auto;
	position: relative;
	}
.contents-left {
	width: 100%;
	max-width: calc(1580px + max(0px, calc(50cqw - 790px)));
	padding: 0 0 0 var(--margin-s);
	margin: 0 0 0 auto;
	position: relative;
	}
.contents-right {
	width: 100%;
	max-width: calc(1580px + max(0px, calc(50cqw - 790px)));
	padding: 0 var(--margin-s) 0 0;
	margin: 0 auto 0 0;
	position: relative;
	}

.contents-link-area {
	width: 100%;
	position: relative;
	padding: 0 0 0 0;
	}
.contents-main-area {
	position: relative;
	padding-top: 1.5em;
	}

/* - SP トップページ - */
/*      ヒーローエリア */
.hero-wrapper {
	padding: 0 0 15vw 0;
	height: auto;
	position: relative;
	}

@media screen and (orientation: portrait) {	/* 縦長の場合 */
	.hero-img {
		width: 80%;
		height: auto;
		position: relative;
		aspect-ratio: 1 / 1;
		margin: var(--topgap) var(--margin-s) 0 auto;
	}
}
@media screen and (orientation: landscape) {	/* 横長の場合 */
	.hero-img {
		width: auto;
		height: calc(100vh - 130px);
		min-height: 500px;
		position: relative;
		aspect-ratio: 1 / 1;
		margin: var(--topgap) var(--margin-s) 0 auto;
	}
}
.hero-img img.slideitem {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: right bottom;
	opacity: 0;
	animation: slideShow 10s linear infinite 0s;
	}
.hero-img img.slideitem:nth-child(1) {
	animation-delay: 5s;
	}
@keyframes slideShow {
	0% {
		opacity: 0;
		animation-timing-function: ease-in;
	}
	5% {
		opacity: 1;
		animation-timing-function: ease-out;
	}
	45% {
		opacity: 1;
	}
	50%,
	100% {
		opacity: 0;
	}
}
img.hero-title {
	display: block;
	/* width: 27cqw; */
width: 24cqw;
	height: auto;
	position: absolute;
	top: 14px;
	left: 0;
z-index: 997;
	}
.menu-open img.hero-title {
display: none;
	}
img.hero-venue {
	display: block;
	/* width: auto; */
width: calc(100% - var(--margin-s));
	/* height: 33px; */
height: auto;
	position: absolute;
	bottom: 0;
	right: var(--margin-s);
	}
.hero-img img.copyright {
	display: block;
	position: absolute;
	right: -10px;
	bottom: 0;
	width: 6px;
	height: auto;
	opacity: 0;
	animation: slideShow 10s linear infinite 0s;
	}
.hero-img img.copyright:nth-child(4) {
	animation-delay: 5s;
	}


/*      ニュースエリア */
.news-list-wrapper {
	overflow: hidden;
	padding: 0 0 2em 0;
	border-bottom: 1px solid var(--color-darkgray);
	}
ul.news-list {
	width: auto;
	display: flex;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.news-list > li {
	width: 36cqw;
	flex-grow: 1;
	flex-shrink: 0;
	padding: 0 0 0 0;
	margin: 0 2em 0 0;
	height: auto;
	}

ul.news-list > li a {
	display: flex;
	flex-direction: column;
	height: 100%;
	}

ul.news-list > li .news-list-img {
	width: 100%;
	height: auto;
	aspect-ratio: 6 / 4;
	background-color: transparent;
	}
ul.news-list > li .news-list-img img {
	width: auto;
	height: 100%;
	object-fit: contain;
	object-position: center bottom;
	aspect-ratio: 6 / 4;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

ul.news-list > li a .news-list-text {
	flex-grow: 1;
	color: var(--color-black);
	padding: 0 0 0 0.5em;
	margin: 0.75em 0 0 0;
	border-left: 1px solid var(--color-black);
	transition: color 0.3s ease, border-color 0.3s ease;
	display: flex;
	flex-direction: column;
	}
ul.news-list > li a:hover .news-list-text {
	color: var(--color-red);
	border-left: 1px solid var(--color-red);
	}

.news-list-deta {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	}
time.news-list-date {
	color: var(--color-black);
	font-size: 0.85em;
	line-height: 1.5;
	padding: 2px 0 0 0;
	margin: 0 0 0.25em 0;
	white-space: nowrap;
	}
ul.news-list > li a .news-list-text time.news-list-date {
	color: var(--color-black);
	transition: color 0.3s ease;
	}
ul.news-list > li a:hover .news-list-text time.news-list-date {
	color: var(--color-red);
	}
ul.news-list-tag {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: nowrap;
	}
ul.news-list-tag li {
	font-size: 0.7em;
	line-height: 1;
	padding: 0 0 0 0;
	margin: 0 0.25em 0 0;
	}
ul.news-list-tag li span {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-white);
	padding: 4px 0.5em 4px 0.5em;
	margin: 0 0 0 0;
	border-radius: 4px;
	display: inline-block;
	}
ul.news-list > li a .news-list-text h3 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 1em;
	padding: 0 0 0 0;
	margin: 0.75em 0 0 0;
	}

.newscontroller {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	padding: 0 var(--margin-s) 0 0;
	margin: 1em 0 3em 0;
	margin: 1em 0 0 0;
	}
.eventcontroller,
.magazinecontroller {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	padding: 0 var(--margin-s) 0 0;
	margin: 1em 0 0 0;
	}
.bannercontroller {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	padding: 0 var(--margin-s) 0 0;
	margin: 1em 0 0 0;
	}
.bannercontroller.slidenone {
	display: none;
	}
.newscontroller .swiper-pagination,
.eventcontroller .swiper-pagination,
.magazinecontroller .swiper-pagination,
.bannercontroller .swiper-pagination {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0 auto 0 0;
	bottom: auto;
	top: auto;
	width: auto;
	}
.newscontroller .btn-go,
.eventcontroller .btn-go,
.magazinecontroller .btn-go,
.bannercontroller .btn-go {
	display: flex;
	align-items: center;
	gap: 6px;
	}
.newscontroller .btn-go a,
.eventcontroller .btn-go a,
.magazinecontroller .btn-go a,
.bannercontroller .btn-go a {
	display: block;
	margin-left: 0.5rem;
	}

.swiper-pagination-bullet {
	width: 1rem;
	height: 0.4rem;
	border-radius: 9999px;
	margin: 0 1rem 0 0;
	background-color: var(--color-darkgray);
	opacity: 0.6;
	transition: color .3s ease, width .3s ease;
	}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 2rem;
	background-color: var(--color-red);
	}

/*      バナーリンク */
.banner-wrapper {
	padding: 1.5em 0 1.5em 1.5em;
	margin: 0 0 0 0;
	background-color: var(--color-pink);
	overflow: hidden;
	}
ul.banner-list {
	width: 100%;
	display: flex;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.banner-list li {
	width: 40cqw;
	flex-shrink: 0;
	padding: 0 1.5em 0 0;
	margin: 0 0 0 0;
	}
ul.banner-list li.slidenone {
	width: 50%;
	}
ul.banner-list li img {
	width: 100%;
	height: auto;
	/* aspect-ratio: 19 / 7; */
	border: 4px solid var(--color-white);
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
ul.banner-list li p {
	font-size: max(0.6em, 12px);
	line-height: 1.1;
	padding: 0.75em 0 0 0;
	margin: 0 0 0 0;
	}
ul.banner-list li a {
	display: block;
	}
ul.banner-list li a p {
	color: #000;
	transition: color .3s ease;
	}
ul.banner-list li a:hover p {
	color: var(--color-red);
	}

/*      イベントエリア */
.event-list-wrapper,
.magazine-list-wrapper {
	overflow: hidden;
	padding: 0 0 2em 0;
	border-bottom: 1px solid var(--color-darkgray);
	}
.magazine-list-wrapper ul.news-list,
.home ul.info-item-list {
	width: auto;
	display: flex;
	flex-wrap: nowrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.magazine-list-wrapper ul.news-list > li,
.home ul.info-item-list > li {
	width: 36cqw;
	flex-grow: 1;
	flex-shrink: 0;
	padding: 0 0 0 0;
	margin: 0 2em 0 0;
	height: auto;
	}


/*      アバウトエリア */
.contents-about-all {
	width: 100%;
	padding: 6cqw 3cqw 7cqw 3cqw;
	margin: 0 auto;
	position: relative;
	background-color: var(--color-white);
	background-image: url("../../img/about_bg.svg");
	background-repeat: no-repeat;
	background-size: 150vw;
	background-position: -2vw -42vw;
	}
.about-wrapper {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	position: relative;
	}
.home .movie-wrap {
	margin: 0 0 1em 0;
	}
.mov-caption {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.mov-caption p {
	font-size: 0.85em;
	line-height: 1.5;
	}


/*      コンテンツエリア */
.contents-programs-all {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	overflow: hidden;
	}
.contents-programs-title {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	border-bottom: none;
	padding: 0 0 0.5em 0;
	padding-left: 1.5em;
	margin: 0 0 0 0;
	order: 1;
	}
.contents-programs-main {
	width: 100%;
	padding: 1em 0 0 1.5em;
	order: 2;
	position: relative;
	z-index: -1;
	}
.programs-img {
	aspect-ratio: 6 / 4;
	}
.programs-img img {
	width: 100%;
	height: auto;
	}
.contents-programs-title.order {
	order: 1;
	}
.contents-programs-main.order {
	order: 2;
	}

.programs-title {
	}
.programs-title p {
	padding: 0 5em 1em 0;
	margin: -0.5em 0 0 0;
	}


/* - SP ニュース - */
/*      一覧 */
ul.news-item-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.news-item-list > li {
	width: 48.5%;
	padding: 0 0 0 0;
	margin: 0 0 2.5em 0;
	height: auto;
	}

ul.news-item-list::after {
	display: block;
    content:"";
    width: 48.5%;
	}

ul.news-item-list > li a {
	display: flex;
	flex-direction: column;
	height: 100%;
	}

ul.news-item-list > li .news-list-img {
	width: 100%;
	height: auto;
	aspect-ratio: 6 / 4;
	background-color: transparent;
	}
ul.news-item-list > li .news-list-img img {
	width: auto;
	height: 100%;
	object-fit: contain;
	object-position: center bottom;
	aspect-ratio: 6 / 4;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

ul.news-item-list > li a .news-list-text {
	flex-grow: 1;
	color: var(--color-black);
	padding: 0 0 0 0.5em;
	margin: 0.75em 0 0 0;
	border-left: 1px solid var(--color-darkgray);
	transition: color 0.3s ease, border-color 0.3s ease;
	display: flex;
	flex-direction: column;
	}
ul.news-item-list > li a:hover .news-list-text {
	color: var(--color-red);
	border-left: 1px solid var(--color-red);
	}

ul.news-item-list > li a .news-list-text time.news-list-date {
	color: var(--color-black);
	transition: color 0.3s ease;
	}
ul.news-item-list > li a:hover .news-list-text time.news-list-date {
	color: var(--color-red);
	}

ul.news-item-list > li a .news-list-text h3 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 1em;
	padding: 0 0 0 0;
	margin: 0.75em 0 0 0;
	}

/*      記事もっと表示 */
ul.item-list li {
	opacity: 1;
	display: block;
	height: auto;
	transition: opacity .3s ease;
	}
ul.item-list li.is-hidden {
	visibility: hidden;
	opacity: 0;
	height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	}
ul.item-list li.is-hidden dl.press {
	display: none;
	}

/*      詳細 */
.news-page-deta {
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
/*      ニュース本文 */
.cms-contents h1 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	text-align: center;
	font-size: 150%;
	line-height: 1.35;
	padding: 1em 0 0.5em 0;
	margin: 0 0 0 0;
	}
.cms-contents h2 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	text-align: center;
	font-size: 150%;
	line-height: 1.35;
	padding: 1em 0 0.5em 0;
	margin: 0 0 0 0;
	}
.cms-contents h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	font-size: 150%;
	line-height: 1.35;
	padding: 2em 0 0.5em 0;
	margin: 0 0 0 0;
	}
.cms-contents h4 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	font-size: 120%;
	padding: 2em 0 0.5em 0;
	margin: 0 0 0 0;
	border: none;
	}
.cms-contents h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	font-size: 100%;
	padding: 1em 0 1em 0;
	margin: 0 0 0 0;
	font-weight: normal;
	}
.cms-contents h6 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	font-size: 83%;
	padding: 1em 0 1em 0;
	margin: 0 0 0 0;
	}
.cms-contents p {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	}
.cms-contents p:has(img) {
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}
.cms-contents p img {
	max-width: 100%;
	display: inline-block;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	touch-callout: none;
	user-select: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
	}

.cms-contents .imgflex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1.5em 1.5em;
	}
.cms-contents .imgflex a {
	border-bottom: none;
	display: inline-block;
	}
.cms-contents .imgflex a:hover {
	border-bottom: none;
	}
.cms-contents .imgflex img {
	width: 100%;
	height: auto;
	display: inline-block !important;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	touch-callout: none;
	user-select: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
	}

.cms-contents li {
	padding: 0.5em 0 0.5em 0;
	}

.cms-contents table {
	width: 100%;
	margin: 1em 0 1em 0;
	border-collapse: collapse;
	}
.cms-contents table th {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	line-height: 1.25;
	padding: 0.5em 0.5em 0.5em 0.5em;
	text-align: center;
	vertical-align: middle;
	border: 1px solid var(--color-darkgray);
	}
.cms-contents table td {
	line-height: 1.5;
	padding: 0.5em 0.5em 0.5em 0.5em;
	border: 1px solid var(--color-darkgray);
	}
.cms-contents table img {
	display: inline-block;
	}
.cms-contents .movie-wrap {
	width: 80%;
	position: relative;
	height: 0;
	padding: 0 0 calc(80% * 0.5625) 0;
	margin: 0 0 1em 0;
	overflow: hidden;
	}

/*      ニュース本文リセット */
.cms-contents p,
.cms-contents p span {
	font-family: var(--font-r) !important;
	font-weight: var(--font-r-w) !important;
	font-size: inherit !important;
	line-height: inherit !important;
	color: inherit !important;
	background-color: inherit !important;
	text-indent: 0 !important;
	text-decoration: none !important;
	}
.cms-contents table {
	width: auto !important;
	height: auto !important;
	}
.cms-contents table tr {
	width: inherit !important;
	height: inherit !important;
	}
.cms-contents table th,
.cms-contents table td {
	width: inherit !important;
	height: inherit !important;
	padding: 0.5em 0.5em 0.5em 0.5em !important;
	margin: 0 0 0 0 !important;
	vertical-align: middle !important;
	}
.cms-contents table th p,
.cms-contents table td p {
	padding: 0 0 0 0 !important;
	margin: 0 0 0 0 !important;
	}

/*      添付ファイルリスト */
.attachment-wrapper {
	padding: 0 0 0 0;
	}
ul.news-download {
	padding: 3em 0 0 0;
	margin: 0 0 1.75em 0;
	border-bottom: 1px dashed var(--color-darkgray);
	}
ul.news-download li {
	padding: 0.5em 0 0.5em 2em;
	border-top: 1px dashed var(--color-darkgray);
	position: relative;
	}
ul.news-download li a::before {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	background-color: var(--color-black);
	border-radius: 2.5px;
	position: absolute;
	top: 1.4em;
	left: 1em;
	transform: translateY(-50%);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.news-download li a {
	color: var(--color-black);
	text-decoration: none;
	}
ul.news-download li a:hover {
	color: var(--color-red);
	text-decoration: none;
	}
/*      画像ギャラリー（モーダル） */
.modaal-close:focus:before,
.modaal-close:focus:after,
.modaal-close:hover:before,
.modaal-close:hover:after {
	background: var(--color-red) !important;
	}

.modaal-gallery-item img {
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

/* - SP プレス - */
ul.press-ul {
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}
ul.press-ul li {
	list-style-type: disc;
	padding: 0 0 0.75em 0;
	margin: 0 0 0 1.5em;
	}

ul.ul-note li a,
ul.press-ul li a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
ul.ul-note li aa:hover,
ul.press-ul li a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

ul.ul-note {
	padding: 0 0 1.5em 1.5em;
	margin: 0 0 0 0;
	font-size: 0.9em;
	}
ul.ul-note li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	list-style-type: none;
	position: relative;
	}
ul.ul-note li span {
	position: absolute;
	left: -0.75em;
	}

ul.btn-li {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.btn-li li {
	padding: 0 0 0 0;
	margin: 0.5em 0.5em 1.75em 0.5em;
	}
ul.btn-li li span.small {
	font-size: 0.85em;
	margin: 0 0 0 0.5em;
	}

/*      画像貸し出し */
ol.ol-number {
	counter-reset: number;
	list-style-type: none;
	padding: 0 0 1em 0;
	}
ol.ol-number li {
	position: relative;
	line-height: 1.5em;
	padding: 2em 0.5em 2em 4em;
	margin: 0 0 1em 0;
	border-bottom: 1px solid var(--color-darkgray);
	color: #000;
	font-size: 1em;
	width: 100%;
	}
ol.ol-number li::before {
	position: absolute;
	counter-increment: number;
	content: counter(number);
	display: inline-block;
	color: var(--color-darkgray);
	font-size: 1.5em;
	border: 1px solid var(--color-darkgray);
	border-radius: 50%;
	left: 0.25em;
	width: 2em;
	height: 2em;
	line-height: 1.96em;
	text-align: center;
	top: 50%;
	padding: 0 0 0 0;
	transform: translateY(-50%);
	}
ol.ol-number li span.font-m {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	}
ol.ol-number li div.fukidashi::before {
 	content: "";
	border-top: 14px solid var(--color-gray);
	border-right: 10px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 10px solid transparent;
	position: absolute;
	left: 50%;
	bottom: -27px;
	z-index: 21;
	margin-left: -10px;
	}
ol.ol-number li div.fukidashi::after {
	content: "";
	border-top: 14px solid var(--color-darkgray);
	border-right: 10px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 10px solid transparent;
	background-color: transparent;
	position: absolute;
	left: 50%;
	bottom: -29px;
	z-index: 20;
	margin-left: -10px;
	}

/*      画像貸し出しフォーム */
ul.dl-photo-list {
	position: relative;
	width: 100%;
	background-color: transparent;
	padding: 0 0 0 0;
	margin: 0.5em 0 -0.5em 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
ul.dl-photo-list li {
	width: 32%;
	padding: 0.75em 0.5em 0.5em 0.5em;
	margin: 0 0 0 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 4px;
	transition: color .2s ease, border-color .2s ease;
	}

ul.dl-photo-list li:has(input:checked) {
	border: 1px solid #000;
	}
ul.dl-photo-list li:has(input:hover) {
	border: 1px solid var(--color-red);
	}
ul.dl-photo-list li:has(input:focus) {
	border: 1px solid var(--color-red);
	}

ul.dl-photo-list li.dl-photo-item {
	margin: 0 0 1em 0;
	background-color: #fff;
	position: relative;
	}

ul.dl-photo-list li.li-blank {
	border: 0;
	visibility: hidden;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.dl-photo-list li.dl-photo-item figure {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.dl-photo-list li.dl-photo-item figcaption {
	font-size: 0.7em;
	line-height: 1.5;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 100%;
	height: 5.5em;
	word-wrap: break-word;
	overflow-wrap: break-word;
	}
ul.dl-photo-list li.dl-photo-item img {
	aspect-ratio: 1/1;
	object-fit: contain;
	object-position: 50% 50%;
	width: 100%;
	height: 100%;
	line-height: 0;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	padding: 0 0 0.5em 0;
	}
ul.dl-photo-list li.dl-photo-item-all {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	background-color: transparent;
	position: relative;
	border: 0;
	}
ul.dl-photo-list li.dl-photo-item-all h4 {
	font-weight: normal;
	font-size: 0.9em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border: none;
	}

ul.link-list {
	padding: 0 0 0 0;
	margin: 3em 0 0 0;
	}

ul.link-list {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.link-list li {
	padding: 0 0 0 0;
	margin: 0 1.5em 0.5em 0;
	line-height: 1.2;
	position: relative;
	text-align: center;
	}
ul.link-list li a {
	display: block;
	font-size: 90%;
	min-width: 12em;
	padding: 0.75em 1.5em 0.75em 1.5em;
	margin: 0 0 0 0;
	color: #000;
	border: 1px solid #000;
	border-radius: 6px;
	background-color: transparent;
	transition: color .3s ease, border-color .3s ease, background-color .3s ease;
	}
ul.link-list li a:hover {
	color: #fff;
	text-decoration: none;
	border: 1px solid var(--color-red);
	background-color: #var(--color-red);
	}

.step {
	padding: 1em 0 3em 0;
	}
.step-ul {
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	width: 100%;
	overflow: hidden;
	border: 1px solid var(--color-darkgray);
	}
.step-ul li {
	flex-grow: 1;
	flex-basis: 0;
	text-align: center;
	position: relative;
	padding: 0 20px 0 10px;
	background-color: var(--color-white);
	line-height: 30px;
	color: var(--color-darkgray);
	}
.step-ul li:first-child {
	padding: 0 20px 0 10px;
	}
.step-ul li:last-child {
	padding: 0 10px 0 10px;
	}
.step-ul li span {
	font-size: 84%;
	display: inline-block;
	}
.step-ul li span.sp-hidden {
	display: none;
	}
.step-ul li::before,
.step-ul li::after {
	position: absolute;
	left: -6px;
	display: block;
	content: '';
	background-color: var(--color-white);
	border-left: 1px solid var(--color-darkgray);
	width: 16px;
	height: 16px;
	}
.step-ul li::after {
	top: 0;
	transform: skew(30deg);
	}
.step-ul li::before {
	bottom: 0;
	transform: skew(-30deg);
	}
.step-ul li:first-child::before,
.step-ul li:first-child::after {
	content: none;
	}
.step-ul li.current {
	color: var(--color-white);
	background-color: var(--color-darkgray);
	}
.step-ul li.current::before,
.step-ul li.current::after {
	background-color: var(--color-darkgray);
	}

dl.dl-table {
	padding: 0 0 1em 0;
	margin: 0 0 1.5em 0;
	}
dl.dl-table dt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	letter-spacing: 0;
	padding: 1em 0 0.5em 0;
	margin: 0 0 0 0;
	width: 100%;
	}
dl.dl-table dd {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	text-align: left;
	text-justify: none;
	min-height: 3.5em;
	}
dl.dl-table dd.event-name {
	font-weight: bold;
	}
dl.dl-table dd p {
	text-align: left;
	text-justify: none;
	}
dl.dl-table dt span.caution {
	width: 3em;
	font-size: 1rem;
	font-weight: normal;
	color: #dc143c;
	padding: 0.3em 0.5em 0.2em 0.5em;
	margin: 0em 0em 0em 1em;
	border: 1px solid #dc143c;
	text-align: center;
	vertical-align: 2px;
	white-space: nowrap;
	}

.caution-kome {
	padding: 0 0 0 1em;
	text-indent: -1em;
	}

form {
	}
input[type="text"], 
input[type="tel"], 
input[type="email"], 
input[type="url"], 
input[type="tel"], 
select, 
textarea {
	font-size: 1.6rem;
	border: 1px solid var(--color-darkgray);
	outline: 0;
	padding: 0.5em 0.5em 0.5em 0.5em;
	border-radius: 4px;
	transition: all 0.3s;
	line-height: 1.6rem;
	}
input[type="text"]:focus, 
input[type="tel"]:focus, 
input[type="email"]:focus, 
input[type="url"]:focus, 
input[type="tel"]:focus, 
select:focus, 
textarea:focus {
	border: 1px solid var(--color-red);
	}
input.txt-all {
	width: 100%;
	}
input.num-4em {
width: 5em;
	}
textarea.txt-comment {
	width: 100%;
	height: 5em;
	}

.form-check-dl-wrapper {
	display: flex;
	flex-wrap: nowrap;
	}
.form-check-dl-all label {
	position: relative;
	cursor: pointer;
	margin: 0 0.75em 1em 0;
	padding: 0 0 0 0;
	display: inline-block;
white-space: nowrap;
	}
.form-check-dl-all .check-box {
	position: relative;
	margin: 0.75em 0.4em 1em 0.5em;
	cursor: pointer;
	}
.form-check-dl-all .check-box::before {
	position: absolute;
	z-index: 1;
	top: 0em;
	left: -0.25em;
	width: 1.5em;
	height: 0.75em;
	content: '';
	transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	transform: rotate(-45deg) scale(0, 0);
	border: 3px solid var(--color-red);
	border-top-style: none;
	border-right-style: none;
	}
.form-check-dl-all .check-box:checked::before {
	transform: rotate(-45deg) scale(1, 1);
	}
.form-check-dl-all .check-box::after {
	position: absolute;
	top: -0.4em;
	left: -0.5em;
	width: 2em;
	height: 2em;
	content: '';
	cursor: pointer;
	border: 1px solid var(--color-darkgray);
	border-radius: 4px;
	background-color: #fff;
	}
.form-check-dl-all .check-box:hover::after {
	border: 1px solid var(--color-red);
	}
.form-check-dl-all .check-box:focus::after {
	border: 1px solid var(--color-red);
	}
.form-check-dl-all input.hoka {
	width: 11em;
	}


.dl-photo-item label {
	position: relative;
	cursor: pointer;
	margin: 0 0 0 0;
	padding: 0 0 0.25em 0;
	display: block;
	height: 100%;
	}
.dl-photo-item .check-box {
	position: relative;
	margin: 0.75em auto 0.75em auto;
	cursor: pointer;
	display: block;
	}
.dl-photo-item .check-box::before {
	position: absolute;
	z-index: 1;
	top: 0;
	left: -0.2em;
	width: 1.5em;
	height: 0.75em;
	content: '';
	transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	transform: rotate(-45deg) scale(0, 0);
	border: 3px solid var(--color-red);
	border-top-style: none;
	border-right-style: none;
	}
.dl-photo-item .check-box:checked::before {
	transform: rotate(-45deg) scale(1, 1);
	}
.dl-photo-item .check-box::after {
	position: absolute;
	top: -0.4em;
	left: 50%;
	transform: translateX(-50%);
	width: 2em;
	height: 2em;
	content: '';
	cursor: pointer;
	border: 1px solid var(--color-darkgray);
	border-radius: 4px;
	background: #fff;
	}
.dl-photo-item .check-box:hover::after {
	border: 1px solid var(--color-red);
	}
.dl-photo-item .check-box:focus::after {
	border: 1px solid var(--color-red);
	}

p.note {
	font-size: 84%;
	margin: 0.25em 0 0 0;
	padding: 0 0 0 0;
	}
p.note-lead {
	font-size: 100%;
	margin: 0 0 0 0;
	padding: 0 0 0.5em 0;
	}
p.error {
	font-size: 84%;
	margin: 0.25em 0 0 0;
	padding: 0 0 0 0;
	color: #f00;
	}
input.error,
select.error,
.check-box.error::after {
	border: 1px solid var(--color-red);
	background-color: var(--color-pink);
	}
.btn-sub {
	text-align: center;
	padding: 2em 0 0 0;
	border-top: 1px solid #000;
	}

.btn-sub input#next_btn,
.btn-sub button#next_btn {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	width: 14em;
	margin-right: 1em;
	margin-left: 1em;
	line-height: 2.75;
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	color: #fff;
	text-align: center;
	text-decoration: none;
	/* outline: none; */
	border-radius: 9999px;
	transition: all 0.3s;
	cursor: pointer;
	}
.btn-sub input#next_btn:hover,
.btn-sub button#next_btn:hover {
	color: var(--color-red);
	background-color: var(--color-white);
	border: 1px solid var(--color-red);
	}
.btn-sub input#prev_btn,
.btn-sub a#prev_btn {
	width: 14em;
	margin-right: 1em;
	margin-left: 1em;
	line-height: 2.75;
	background-color: var(--color-gray);
	border: 1px solid var(--color-darkgray);
	color: var(--color-darkgray);
	text-align: center;
	text-decoration: none;
	/* outline: none */;
	border-radius: 9999px;
	transition: all 0.3s;
	cursor: pointer;
	display: inline-block;
	}
.btn-sub input#prev_btn:hover,
.btn-sub a#prev_btn:hover {
	color: var(--color-white);
	background-color: var(--color-darkgray);
	border: 1px solid #999;
	}

/*      プレスリリース */
ul.press-item-list {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.press-item-list > li {
	padding: 1em 0 2.5em 0;
	margin: 0 0 0 0;
	}
dl.press {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.press dt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	letter-spacing: 0;
	font-size: 0.85em;
	line-height: 1;
	padding: 0 0 0 0;
	margin: 0 0 1.25em 0;
	position: relative;
	}
dl.press dt span {
	padding: 0 0.75em 0 0;
	background-color: var(--color-gray);
	}
dl.press dt::after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-1px);
	z-index: -1;
	}
dl.press dd {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.press-download {
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	border-bottom: 1px dashed var(--color-darkgray);
	}
ul.press-download li {
	padding: 0.5em 0 0.5em 2em;
	border-top: 1px dashed var(--color-darkgray);
	position: relative;
	}
ul.press-download li a::before {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	background-color: var(--color-black);
	border-radius: 2.5px;
	position: absolute;
	top: 1.4em;
	left: 1em;
	transform: translateY(-50%);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.press-download li a {
	color: var(--color-black);
	text-decoration: none;
	}
ul.press-download li a:hover {
	color: var(--color-red);
	text-decoration: none;
	}

/* - SP ご利用にあたって - */
ol.siteinfo-ol {
	padding: 0 0 1em 1.5em;
	margin: 0 0 0 0;
	list-style-type: decimal;
	}
ol.siteinfo-ol li {
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	}

ol.inner-ol {
	padding: 0.5em 0 0 2em;
	margin: 0 0 0 0;
	}
ol.inner-ol li {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	list-style-type: none;
	position: relative;
	}
ol.inner-ol li span {
	position: absolute;
	left: -2.5em;
	width: 2.25em;
	text-align: right;
	font-family: var(--font-number);
	}
ol.inner-ol.browser {
	padding: 0 0 1.25em 3.5em;
	margin: -0.5em 0 0 0;
	}

ul.inner-ul {
	padding: 0.5em 0 0 1.5em;
	margin: 0 0 0 0;
	}
ul.inner-ul li {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	list-style-type: disc;
	}

ul.inner-ul li a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
ul.inner-ul li a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

.section-wrapper {
	padding: 4em 0 0 0;
	margin: 0 0 0 0;
	}

/* - SP お問い合わせ - */
#at_map {
	width: 100%;
	height: 430px;
	margin: 2em 0 2em 0;
	position: relative;
	}
#at_map iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	}

/* - SP 開催概要 - */
ul.outline-ul {
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	}
ul.outline-ul li {
	list-style-type: disc;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 1.5em;
	}

/*      テーマ／コンセプト */
p.lead {
	margin: 0 0 0 0;
	font-style: italic;
	text-align: center;
	font-size: 0.9em;
	}

.reference {
	font-size: 0.6em;
	}
.reference.en {
	font-size: 100%;
	margin-left: 0.25em;
	font-style: normal;
	}
.reference a,
.reference a:link,
.reference a:visited,
a.reference.en,
a.reference.en:link,
a.reference.en:visited,
ul.caution-ul li a,
ul.caution-ul li a:link,
ul.caution-ul li a:visited {
	color: var(--color-black);
	}
.reference a:active,
.reference a:hover,
a.reference.en:active,
a.reference.en:hover,
ul.caution-ul li a:active,
ul.caution-ul li a:hover {
	text-decoration: none;
	color: var(--color-red);
	}

.boss {
	text-align: right;
	line-height: 1.5;
	padding: 1em 0 3em 0;
	}

ul.caution-ul {
	padding: 2em 0 3em 0;
	margin: 0 0 0 0;
	font-size: 0.85em;
	}
ul.caution-ul li {
	text-indent: -2.5em;
	padding: 0 0 0.25em 2.5em;
	margin: 0 0 0 0;
	}
ul.caution-ul li a {
	display: inline-block;
	width: 2.5em;
	text-indent: 0;
	}
ul.caution-ul.en li {
	text-indent: -0.75em;
	padding: 0 0 0.25em 0.75em;
	}
ul.caution-ul.en li a {
	width: 0.75em;
	}

/*      企画体制 */
.curator-all {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding: 0 0 0 0;
	position: relative;
	}
.curator-img {
	width: 70px;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.curator-name-all {
	width: calc(100% - 78px);
	padding: 0 0 0 0;
	font-weight: bold;
	}
.photo-caption {
	width: 100%;
	padding: 0.75em 0 0 0;
	font-size: 1rem;
	line-height: 1.5;
	font-weight: normal;
	}
.photo-caption br {
	display: none;
	}
.curator-name-all span.curator-name {
	display: block;
	font-size: 1rem;
	font-weight: normal;
	line-height: 1.5;
	}
.curator-img img {
	width: 100%;
	height: auto;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	position: static;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	}
p.curator-p {
	padding: 0.5em 0 1.75em 0;
	}

dl.staff-dl {
	padding: 0 0 1.75em 0;
	}
dl.staff-dl dt {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	}
dl.staff-dl dd {
	padding-left: 2em;
	}
dl.staff-dl dd + dd {
	padding-top: 1.25em;
	}
dl.staff-dl dd + dt {
	padding-top: 1.75em;
	}
dl.staff-dl dd span.small {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.8em;
	margin: 0 0 0 0.25em;
	}
dl.staff-dl dd span.design-title {
	font-size: 0.9em;
	padding: 0 0 0 0;
	line-height: 1.5;
	}
dl.staff-dl dd span.inline-bk {
	margin: 0 0.2em 0 0;
	}

/*      キービジュアル */
.key_visual {
	width: 80%;
	height: auto;
	padding: 0.5em 0 0 0;
	}
.key_visual-h {
	width: 80%;
	height: auto;
	aspect-ratio: 1 / 1;
	}
.key_visual-h img {
	width: auto;
	height: 100%;
	object-fit: contain;
	object-position: left bottom;
	}
.author-caption {
	font-size: 0.7em;
	padding: 0.5em 0 3em 0;
	margin: 0 0 0 0;
	}

.typeset {
	width: 100%;
	padding: 1em 1em 0.5em 1em;
	margin: 2em 0 2em 0;
	background-color: var(--color-white);
	}

p.author-p {
	margin: 0.75em 0 0 0;
	font-size: 0.85em;
	line-height: 1.5;
	}

.design-staff-all {
	display: flex;
	flex-wrap: wrap;
	}
.design-staff {
	width: 50%;
	padding: 0 1em 0 0;
	}
.design-staff span.design-title {
	display: block;
	font-size: 0.9em;
	padding: 0 0 0.25em 0;
	line-height: 1.5;
	}
.design-staff span.design-name {
	display: block;
	font-size: 1.2rem;
	padding: 0 0 0.25em 0;
	line-height: 1.5;
	}

/* - SP これまでの「あいち」 - */
dl.dl-table-noborder {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder > dt {
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	text-align: center;
	}
dl.dl-table-noborder > dd {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder > dt.waku img {
	margin: 0 0 0 0;
	padding: 0.75em 0.75em 0.75em 0.75em;
	background-color: #fff;
	}

dl.dl-table-noborder-inner {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder-inner > dt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 0.85em;
	line-height: 1.3;
	margin: 0 0 0 0;
	padding: 0.25em 0 0.25em 0;
	}
dl.dl-table-noborder-inner > dd {
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	line-height: 1.5;
	}
dl.dl-table-noborder-inner > dd span {
	font-size: 0.85em;
	}
dl.dl-table-noborder-inner > dd span.atamade {
	font-size: 100%;
	display: inline-block;
	padding-left: 7.5em;
	position: relative;
	}
dl.dl-table-noborder-inner > dd span.atama {
	font-size: 100%;
	display: inline-block;
	width: 7.5em;
	position: absolute;
	left: 0;
	}

dl.dl-table-noborder > dt img {
	width: 50%;
	height: auto;
	display: inline-block;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
ul.btn-ul {
	list-style-type: none;
	padding: 0.5em 0 0 0;
	}
ul.btn-ul > li {
	padding: 0.5em 0 0.5em 0;
	text-align: center;
	}
ul.btn-ul > li a {
	display: inline-block;
	width: 48%;
	margin: 0 0 0 0;
	}
ul.btn-ul > li a span.small {
	display: inline-block;
	}

/* - SP 協賛 - */
/* - SP アクセス - */
.access-wrapper {
	padding: 1.5em 0 1.75em 0;
	}
.accordion-title {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	line-height: 1.5;
	cursor: pointer;
	display: flex;	/* list-item以外にする */
	align-items: center;
	padding: 1.25em 2em 1.25em 1em;
	position: relative;
	border-top: 1px dashed var(--color-darkgray);
	transition: color .3s ease;
	}
.accordion-title::-webkit-details-marker {
	display: none;	/* safariでマーカーを消す */
	}
.accordion-title:hover {
	color: var(--color-red);
	}

details.bottomline {
	border-bottom: 1px dashed var(--color-darkgray);
	}

.accordion-title::before {
	position: absolute;
	content: '';
	top: 50%;
	right: 0.5em;
	transform: translate(0, -50%);
	margin: auto 0;
	width: 1em;
	height: 1px;
	background-color: var(--color-black);
	transition: background-color .3s ease;
	}
.accordion-title::after {
	position: absolute;
	content: '';
	top: 50%;
	right: 0.5em;
	transform: translate(0, -50%);
	margin: auto 0;
	width: 1em;
	height: 1px;
	background-color: var(--color-black);
	transform: rotate(90deg);
	transform-origin: center center;
	opacity: 1;
	transition: opacity .3s ease, background-color .3s ease, transform .2s ease;
	}
[open] > .accordion-title::after {
	transform: rotate(0deg);
	transform-origin: center center;
	opacity: 0;
	}
.accordion-title:hover::before,
.accordion-title:hover::after {
	background-color: var(--color-red);
	}
.lineh {
	line-height: 1.2;
	}
.lineh .rossiya {
	font-weight: 700;
	}
.accordion-title span.small {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.85em;
	}

.accordion-content {
	display: flex;
	padding: 0.25em 2em 2em 1em;
	}
.accordion-inner {
	flex-grow: 1;
	}

ul.access-order {
	position: relative;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.access-order::after {
	position: absolute;
	content: '';
	top: 0;
	left: 2.5em;
	width: 2px;
	height: 100%;
	background-color: var(--color-darkgray);
	z-index: -1;
	}
ul.access-order > li.point {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	padding: 0.25em 0 0.25em 1.25em;
	margin: 0 0 0 0;
	background-color: var(--color-white);
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	}
ul.access-order > li.means {
	font-size: 0.9em;
	line-height: 1.3;
	margin: 1.5em 0 1.5em 3.5em;
	background-color: var(--color-gray);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	}

.accordion-title img.details-icon {
	width: 2.5em;
	height: auto;
	padding: 0 0.25em 0 0;
	}

ul.access-order > li.means img.point-icon {
	width: 2em;
	height: auto;
	padding: 0 0.25em 0 0;
	}
ul.access-order > li.means span {
	flex: 1;
	}

/* - SP 会場 - */
p.venue-h3-sub {
	font-size: 1.2rem;
	line-height: 1.35;
	text-align: right;
	padding: 0.25em 0 1em 0;
	}
.venue-img-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 2em 0;
	}
.venue-img {
	width: 48.75%;
	}
p.venue-map {
	padding: 1em 0 1.75em 0;
	}
p.venue-map img {
	width: 100%;
	height: auto;
	}

.item-btn {
	padding: 0 0 4em 0;
	}
.item-btn.end {
	padding: 0 0 1.75em 0;
	}

dl.open-dl {
	line-height: 1.5;
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
dl.open-dl dt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	width: 4.5em;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.open-dl dd {
	width: calc(100% - 4.5em);
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.open-dl dd span.small {
	font-size: 0.85em;
	}


/* - SP 大学連携 - */
.ala-wrapper {
	padding: 0.5em 0 0 0;
	}
.ala-content {
	width: 100%;
	padding: 0 0 0 0;
	}
.ala-img {
	width: 80%;
	padding: 0 0 1.75em 0;
	}
.ala-img-caption {
	font-size: 0.7em;
	line-height: 1.5;
	color: var(--color-darkgray);
	padding: 0.5em 0 0 0;
	}
ul.ala-list {
	font-size: 0.9em;
	line-height: 1.5;
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	}


ul.univ-list {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	list-style-type: "－ ";
	margin: 0 0 0 1.5em;
	}
ul.univ-list li span {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	}

/* - SP ポップアップ - */
.pop-wrapper {
	padding: 0.5em 0 0 0;
	border-bottom: 1px dashed var(--color-darkgray);
	}
.pop-wrapper + .pop-wrapper {
	padding: 1.75em 0 0 0;
	}
.pop-content {
	width: 100%;
	padding: 0 0 0 0;
	}
.pop-img {
	width: 100%;
	padding: 0 0 1.75em 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	}
.pop-img-caption {
	font-size: 0.7em;
	line-height: 1.2;
	color: var(--color-darkgray);
	padding: 0.5em 0 0 0;
	}
.pop-img span {
	display: inline-block;
	width: 50%;
	padding: 0 0.5em 0 0;
	}
.pop-img img {
	width: 100%;
	height: auto;
	}
h4.pop-h4 + p {
	font-size: 0.9em;
	padding: 0 0 1em 0;
	}

h3.pop-h3 span.small {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.8em;
	margin: 0 0 0 0.25em;
	}

.collabo-lead-right.all-wide .obuimg {
	width: 50%;
	padding: 0 0.5em 0 0;
	}
.collabo-lead-right.all-wide .obu-btn {
	width: 100%;
	}

.pop-waku {
	padding: 1.5em 1.5em 1.5em 1.5em;
	margin: 0 0 2em 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 6px;
	}
.pop-waku h3.pop-h3 {
	padding-top: 0;
	}
p.artistlist {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-feature-settings: "palt" 0;
	text-align: start;
	text-justify: none;
	line-height: 2;
	}
p.artistlist a {
	display: inline-block;
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	line-height: 1.3;
	}
p.artistlist a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}
.btn-down {
	font-size: 0.85em;
	padding: 0 0 0 0;
	margin: 1em 0 0 0;
	text-align: start;
	text-justify: none;
	}

dl.pop-dl {
	font-size: 1em;
	line-height: 1.5;
	padding: 0.5em 0 1em 0;
	margin: 0 0 0 0;
	}
dl.pop-dl dt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 0.8em;
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.pop-dl dd {
	font-size: 1em;
	width: 100%;
	padding: 0.25em 0 1em 1.25em;
	margin: 0 0 0 0;
	}
dl.pop-dl dd span.small {
	font-size: 0.85em;
	}

.collabo-lead-right.top-p {
	padding-top: 1.5em;
	}
.collabo-lead-right.zero img {
	border-radius: 0px;
	}
.collabo-lead-right.top-p img {
	border-radius: 0px;
	}

/* - SP 展示・公演 - */
/*      モーダル */
ul.sub-link.toppage li {
	margin-left: auto;
	margin-right: var(--margin-s);
	}

.modaal-content-container {
	background-color: #fff;
	}
p.modal-p {
	font-size: 0.9em;
	padding: 1em 1em 1em 1em;
	margin: 0 0 0 0;
	}
p.modal-p + p.modal-p {
	font-size: 0.9em;
	padding: 0 1em 1em 1em;
	margin: 0 0 0 0;
	}

p.modal-p-btn {
	padding: 0.5em 0 0 0;
	text-align: center;
	}
p.modal-p-btn button {
	display: inline-block;
	text-align: center;
	font-size: 0.9em;
	padding: 0.5em 1.5em 0.5em 1.5em;
	margin: 0 auto;
	line-height: 1;
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	background-color: var(--color-white);
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	cursor: pointer;
	transition: color .3s ease, background-color .3s ease, border-color .3s ease;
	}
p.modal-p-btn button:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
p.clossname {
	text-align: center;
	font-size: 0.8em;
	margin-top: 52px;
	padding: 0 0 0 0;
	}

#modal-op {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	border: 1px solid var(--color-black);
	border-radius: 9999px;
	font-size: max(0.85em, 12px);
	padding: 0.25em 1em 0.25em 1em;
	}
#modal-op:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}

button#topmodal-op {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	font-size: max(0.85em, 12px);
	padding: 0.25em 1em 0.25em 1em;
	background-color: var(--color-gray);
	cursor: pointer;
	color: var(--color-black);
	transition: background-color 0.3s, color 0.3s;
	}
button#topmodal-op:hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}

/*      一覧 */
.contents-section {
	padding: 0 0 4em 0;
	margin: 0 0 0 0;
	}
.contents-section:last-of-type {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.contents-section:has(+ .center-btn) {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.artist-item-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.artist-item-list > li {
	width: 48.5%;
	padding: 0 0 0 0;
	margin: 0 0 2em 0;
	height: auto;
	}

ul.artist-item-list::after {
	display: block;
	content:"";
	width: 48.5%;
	}

ul.artist-item-list > li a {
	display: flex;
	flex-direction: column;
	height: 100%;
	}

ul.artist-item-list > li .artist-list-img {
	width: 100%;
	height: auto;
	background-color: transparent;
	}
ul.artist-item-list > li .artist-list-img img {
	width: 100%;
	height: auto;
	object-fit: contain;
	object-position: left bottom;
	aspect-ratio: 1 / 1;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

ul.artist-item-list > li a .artist-list-text {
	flex-grow: 1;
	color: var(--color-black);
	padding: 0 0 0 0.5em;
	margin: 0.75em 0 0 0;
	border-left: 1px solid var(--color-darkgray);
	transition: border-color 0.3s ease;
	display: flex;
	flex-direction: column;
	}
ul.artist-item-list > li a:hover .artist-list-text {
	border-left: 1px solid var(--color-red);
	}

ul.artist-item-list > li a .artist-list-text h4 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1.2em;
	line-height: 1.2;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	transition: color 0.3s ease;
	}
ul.artist-item-list > li a .artist-list-text h4 span {
	font-size: 0.85em;
	padding: 0 0 0 0.25em;
	transition: color 0s ease;
	}
ul.artist-item-list > li a:hover .artist-list-text h4 {
	color: var(--color-red);
	}
ul.artist-item-list > li a:hover .artist-list-text h4 span {
	color: var(--color-red);
	transition: color 0.3s ease;
	}

hgroup.artist-list {
	padding: 0 0 1.25em 0;
	margin: 0 0 0 0;
	}
a hgroup.artist-list > span {
	font-family: var(--font-m);
	font-weight: var(--font-r-w);
	font-size: 0.85em;
	line-height: 1.1;
	color: var(--color-darkgray);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	transition: color 0.3s ease;
	}
a:hover hgroup.artist-list span {
	color: var(--color-red);
	}
ul.artist-list-tag {
	padding: 0 0 0 0;
	margin: auto 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.artist-list-tag + ul.artist-list-tag {
	margin: 0 0 0 0;
	}
ul.artist-list-tag li {
	font-size: 0.7em;
	line-height: 1;
	padding: 0 0 0 0;
	margin: 0 0.25em 0.25em 0;
	}
ul.artist-list-tag li span {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	border: 1px solid var(--color-darkgray);
	padding: 4px 0.5em 4px 0.5em;
	margin: 0 0 0 0;
	border-radius: 4px;
	display: inline-block;
	letter-spacing: 0;
	}

ul.lead-ul {
	padding: 2em 0 0 0;
	margin: 0 0 0 0;
	font-size: max(0.8em, 12px);
	line-height: 1.5;
	}
ul.lead-ul li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}


ul.pabtn-li {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.pabtn-li li {
	text-align: center;
	padding: 0 0 0 0;
	margin: 0.5em 0 0 0;
	}
ul.pabtn-li li span.small {
	font-size: 0.85em;
	margin: 0 0 0 0.5em;
	}
ul.pabtn-li li + li {
	margin: 1.5em 0 0 0;
	}
ul.pabtn-li2 {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	padding: 0 0 0 0;
	margin: 0 0 3em 0;
	}
ul.pabtn-li2 li {
	text-align: center;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.pabtn-li li span.small {
	font-size: 0.85em;
	margin: 0 0 0 0.5em;
	}

/*      詳細 */
p.artist-h3-span {
	font-family: var(--font-m);
	font-size: 1em;
	color: var(--color-darkgray);
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}
.artist-h3-span + ul.artist-list-tag {
	margin: 2em 0 0 0;
	}
h3.artist-h3 + ul.artist-list-tag {
	margin: 2em 0 0 0;
	}

.artist-all {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	}
.artist-item {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

.artist-item > p,
.artist-item-wide > p {
	margin-left: 1em;
	}
.artist-item > p.artist-btn-down a {
	line-height: 1.3;
	}
.artist-item-wide {
	/* padding-bottom: 1.75em; */
	}
dl.artist-cast {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 1em;
	}
dl.artist-cast dt {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-size: 0.85em;
	line-height: 1.5;
	}
dl.artist-cast dd {
	margin: 0 0 0.5em 0;
	}
dl.artist-cast dd:last-of-type {
	margin-bottom: 0;
	}
dl.artist-cast dd span.small {
	font-size: max(0.85em, 12px);
	padding-left: 0.25em;
	}

p + dl.artist-cast {
	margin-top: -1em;
	}

dl.artist-date {
	padding: 0 0 1em 0;
	margin: 0 0 0 1em;
	line-height: 1.5;
	}
dl.artist-date dt {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.artist-date dd {
	padding: 0 0 0 0;
	margin: 0 0 0.75em 0;
	}

dl.artist-date dt span.small {
	font-size: max(0.85em, 12px);
	}

.dl-wrapper {
	display: flex;
	flex-wrap: wrap;
	}
.dl-wrapper dt {
	width: fit-content;
	}
.dl-wrapper dd {
	width: fit-content;
	}
.dl-wrapper dd span.dd-time {
	margin-left: 0.5em;
	}
.dl-wrapper dd .dd-time-all {
	display: flex;
	flex-wrap: nowrap;
	}
.dl-wrapper dd .dd-time-all + .dd-time-all {
	margin-top: 0.5em;
	}

ul.artist-legend {
	font-size: 0.9em;
	line-height: 1.5;
	margin-left: 0.5em;
	}
ul.artist-legend li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.artist-legend li span.legend {
	font-size: 0.85em;
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-black);
	border: 1px solid var(--color-darkgray);
	padding: 4px 0.5em 4px 0.5em;
	margin: 0 0 0.2em 0;
	border-radius: 4px;
	display: inline-block;
	}

dl.ticket-price {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.2;
	padding: 0 0 0.75em 0;
	margin: 0 0 0 1em;
	}
dl.ticket-price dt {
	width: 3.7em;
	padding: 0.3em 0.5em 0.3em 0;
	}
dl.ticket-price dd {
	width: calc(100% - 3.7em);
	padding: 0.3em 0 0.3em 0;
	margin: 0 0 0 0;
	}
dl.ticket-price dd span.small {
	font-size: 0.9em;
	}
.ticket-price-p {
	font-size: 0.9em;
	line-height: 1.5;
	}
.ticket-price-p + .ticket-price-p {
	margin-top: -0.5em;
	}
.ticket-venues {
	display: block;
	font-size: 0.9em;
	line-height: 1.5;
	}

dl.artist-support {
	padding: 0.5em 0 0 0;
	margin: 0 0 1.5em 1em;
	}
dl.artist-support dt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-size: 1em;
	line-height: 1.5;
	}
dl.artist-support dd {
	padding: 0 0 0 0;
	margin: 0.5em 0 2em 0;
	}
dl.artist-support dd ul {
	padding: 0 0 0 1.5em;
	}

dl.artist-support dd a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
dl.artist-support dd a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

h4#assistance + dl.artist-support {
	padding: 0.5em 0 0 0;
	margin: 0 0 1.5em 0;
	}

ul.artists-data-ul {
	padding: 0.5em 0 1.5em 0;
	}
ul.artists-data-ul > li {
	padding: 0 0 0 0;
	font-size: 0.9em;
	text-align: start;
	text-justify: none;
	}
.artist-item-wide > p.artist-support-p {
	padding: 0 0 0 0;
	}
p.artist-btn {
	padding: 0.5em 0 0 0;
	}

dl.artist-info-dl {
	padding: 1em 0 2em 0;
	margin: 0 0 0 0;
	font-size: 0.9em;
	}
dl.artist-info-dl > dt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.artist-info-dl > dd {
	padding: 0 0 0 0;
	}
dl.artist-history-dl {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	}
dl.artist-history-dl > dt {
	width: 4.5em;
	padding: 0 0 0.5em 0;
	line-height: 1.5;
	}
dl.artist-history-dl > dd {
	width: calc(100% - 4.5em);
	padding: 0 0 0.5em 0;
	line-height: 1.5;
	text-align: start;
	text-justify: none;
	}

dl.artist-history-dl > dt.wide {
	width: 6em;
	padding: 0 0 0.5em 0;
	line-height: 1.5;
	}
dl.artist-history-dl > dd.wide {
	width: calc(100% - 6em);
	padding: 0 0 0.5em 0;
	line-height: 1.5;
	text-align: start;
	text-justify: none;
	}

dl.artist-info-dl + .artists-img-all {
	padding: 4em 0 0 0;
	}
.artist-info-kome {
	font-size: 0.7em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: -1.5em 0 2em 0;
	}

.artists-img-all {
	padding: 0 0 0 0;
	}
.artists-img img,
.artists-img2 img,
.artist-sub-img img,
.artist-img img {
	width: 100%;
	height: auto;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
.artists-img.tall img {
	width: 64%;
	height: auto;
	}
.artists-img.learningcenter img {
	width: 48.75%;
	height: auto;
	}

.swiper-slide .artists-img img {
	aspect-ratio: 4 / 3;
	object-fit: contain;
	}
.swiper-slide .artists-img2 img {
	aspect-ratio: 6 / 4;
	object-fit: contain;
	}

.artistcontroller {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	padding: 0 0 0 0;
	margin: 0.5em 0 2em 0;
	}
.artistcontroller .swiper-pagination {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0 auto 0 0;
	bottom: auto;
	top: auto;
	width: auto;
	}
.artistcontroller .btn-go {
	display: flex;
	align-items: center;
	gap: 6px;
	}
.artistcontroller .btn-go a {
	display: block;
	margin-left: 0.5rem;
	}
.artistcontroller .btn-go span.yaji-prev,
.artistcontroller .btn-go span.yaji-next {
	padding: 0.8em;
	}


.artists-img-all + .artist-all {
	padding: 2em 0 0 0;
	}

ul.artists-caption-ul {
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	}
ul.artists-caption-ul > li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-size: max(0.6em, 12px);
	line-height: 1.5;
	text-align: start;
	text-justify: none;
	}

ul.artists-caption-ul > li.padd {
	padding: 0 0 1em 0;
	}

ul.info-item-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.info-item-list > li {
	width: 48.5%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	height: auto;
	}

ul.info-item-list::after {
	display: block;
    content:"";
    width: 48.5%;
	}

ul.info-item-list > li a {
	display: flex;
	flex-direction: column;
	height: 100%;
	}

ul.info-item-list > li .info-list-img {
	width: 100%;
	height: auto;
	aspect-ratio: 6 / 4;
	background-color: transparent;
	}
ul.info-item-list > li .info-list-img img {
	width: auto;
	height: 100%;
	object-fit: contain;
	object-position: left bottom;
	aspect-ratio: 6 / 4;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

ul.info-item-list > li a .info-list-text {
	flex-grow: 1;
	color: var(--color-black);
	padding: 0 0 0 0.5em;
	margin: 0.75em 0 0 0;
	border-left: 1px solid var(--color-darkgray);
	transition: color 0.3s ease, border-color 0.3s ease;
	display: flex;
	flex-direction: column;
	}
ul.info-item-list > li a:hover .info-list-text {
	border-left: 1px solid var(--color-red);
	}
ul.info-item-list > li a .info-list-text h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1em;
	color: var(--color-black);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	transition: color 0.3s ease;
	}
ul.info-item-list > li a:hover .info-list-text h5 {
	color: var(--color-red);
	}
ul.info-item-list > li .info-list-text p,
ul.info-item-list > li a .info-list-text p {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.85em;
	line-height: 1.5;
	color: var(--color-darkgray);
	padding: 0.25em 0 0 0;
	margin: 0 0 0 0;
	transition: color 0.3s ease;
	}

dl.info-dl {
	font-size: 0.85em;
	line-height: 1.5;
	padding: 0.75em 0 0 0;
	margin: 0 0 0 0;
	}
span.info-dl-wrapper  {
	display: flex;
	flex-wrap: wrap;
	}
dl.info-dl dt {
	width: fit-content;
	padding: 0 0.25em 0 0;
	margin: 0 0 0 0;
	}
dl.info-dl dd {
	flex: 1;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

ul.info-list-tag {
	padding: 0.5em 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: nowrap;
	}
ul.info-list-tag li {
	font-size: 0.7em;
	line-height: 1;
	padding: 0 0 0 0;
	margin: 0 0.25em 0 0;
	}
ul.info-list-tag li span {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	border: 1px solid var(--color-darkgray);
	padding: 4px 0.5em 4px 0.5em;
	margin: 0 0.25em 0 0;
	border-radius: 4px;
	display: inline-block;
	}

ul.contents-section-ul {
	list-style-type: disc;
	padding: 0 0 1.75em 0;
	margin: 0 0 0 1.25em;
	}
p + .artists-img-all {
	padding: 2em 0 0 0;
	}

span.h5-tag {
	font-size: max(0.85em, 12px);
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-white);
	background-color: var(--color-darkgray);
	padding: 4px 0.5em 4px 0.5em;
	margin: 0 0.5em 0.5em 0;
	border-radius: 4px;
	display: inline-block;
	}

.doublehyphen {
	display: inline-block;
	font-size: 1.5em;
	transform: scale(1, 0.6);
	transform-origin: center center;
	vertical-align: -1px;
	}
.aki {
	font-feature-settings: "palt" 0;
	letter-spacing: 0;
	}

.artist-sub-wrapper {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.artist-sub-wrapper + .artist-sub-wrapper {
	padding-top: 3em;
	}
.artist-sub-txt {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.artist-sub-txt p {
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}
.artist-sub-img {
	width: 50%;
	}
.artist-sub-img img.tall {
	width: 80%;
	}

.artist-sub-wrapper + h5.artist-sub {
	padding-top: 1em;
	}

.staff-section {
	padding: 0.5em 0 1.75em 0;
	}
.accordion-inner .artist-sub-wrapper {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.accordion-inner .artist-sub-txt {
	width: 100%;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	order: 2;
	}
.accordion-inner .artist-sub-txt-all {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.accordion-inner .artist-sub-txt p,
.accordion-inner .artist-sub-txt-all p {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.accordion-inner .artist-sub-img {
	width: 50%;
	order: 1;
	}

.accordion-inner .artist-sub-txt-all.flex {
	display: flex;
	flex-wrap: wrap;
	}
.accordion-inner .artist-sub-txt-all.flex .artist-sub-img {
	width: 50%;
	padding: 0 1em 1em 0;
	}

.accordion-inner .artist-sub-txt-all.flex .artist-sub-img ul.artists-caption-ul {
	padding-top: 0.5em;
	}

.accordion-inner .artist-sub-txt p.name {
	line-height: 1.5;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
.accordion-inner .artist-sub-txt p + p.name {
	padding: 1.5em 0 0.5em 0;
	}

.staff-section-inner {
	padding: 0.5em 0 0 0;
	}
.staff-section-inner + .staff-section-inner {
	padding: 2em 0 0 0;
	}

.artist-wrapper {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.artist-txt {
	width: 100%;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	order: 2;
	}
.artist-img {
	width: 50%;
	order: 1;
	}

hr.h5-hr {
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	height: 1px;
	border: none;
	background-color: var(--color-darkgray);
	}

dl.artist-sub-dl {
	line-height: 1.5;
	padding: 0 0 1.75em 1em;
	margin: 0 0 0 0;
	}
dl.artist-sub-dl dt {
	padding: 0 0.5em 0.5em 0;
	margin: 0 0 0 0;
	}
dl.artist-sub-dl dd {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.artist-sub-dl dd span.small {
	font-size: 0.85em;
	}

h5.artist-lead {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 0.9em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	border-bottom: none;
	}
h5.artist-lead + p.small {
	margin-left: 0;
	padding-bottom: 3em;
	}

.accordion-all-title {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	line-height: 1.5;
	cursor: pointer;
	display: flex;	/* list-item以外にする */
	flex-wrap: wrap;
	align-items: center;
	padding: 1.25em 2em 1.25em 1em;
	position: relative;
	border-top: 1px dashed var(--color-darkgray);
	transition: color .3s ease;
	pointer-events: none;
	touch-callout: none;
	}
.accordion-all-title::-webkit-details-marker {
	display: none;	/* safariでマーカーを消す */
	}
.accordion-all-title:hover {
	color: var(--color-red);
	}
.accordion-all-title span.small {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.85em;
	padding: 0.2em 0 0 0;
	}
.accordion-all-content {
	display: flex;
	padding: 0.25em 2em 2em 1em;
	}


h6.artist-h6 {
	border: 1px solid #000;
	display: block;
	position: relative;
	cursor: pointer;
	transition: color .3s ease, background-color .3s ease, border-color .3s ease;
	}
h6.artist-h6:hover {
	color: var(--color-red);
	border: 1px solid var(--color-red);
	}
h6.artist-h6::before {
	position: absolute;
	content: '';
	top: 50%;
	right: 0.5em;
	transform: translate(0, -50%);
	margin: auto 0;
	width: 1em;
	height: 1px;
	background-color: var(--color-black);
	transition: background-color .3s ease;
	}
.artist-h6::after {
	position: absolute;
	content: '';
	top: 50%;
	right: 0.5em;
	transform: translate(0, -50%);
	margin: auto 0;
	width: 1em;
	height: 1px;
	background-color: var(--color-black);
	transform: rotate(90deg);
	transform-origin: center center;
	opacity: 1;
	transition: opacity .3s ease, background-color .3s ease, transform .2s ease;
	}
.artist-h6.open::after {
	transform: rotate(0deg);
	transform-origin: center center;
	opacity: 0;
	}
.artist-h6:hover::before,
.artist-h6:hover::after {
	background-color: var(--color-red);
	}

h6.artist-h6 + .accordion-all .accordion-all-title {
	border-top: none;
	}

.support-dd {
	padding-top: 1em;
	}
.support-dd p {
	padding-bottom: 0;
	}
.support-dd ol {
	padding-bottom: 0;
	}

.btn-ex-link {
	font-size: 0.9em;
	padding: 0 0 0 0;
	margin: 0 0 1.75em 0;
	text-align: start;
	text-justify: none;
	}
.btn-ex-link a:has(span.ex-link) {
	display: inline-block;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: max(0.9em, 12px);
	line-height: 1;
	color: var(--color-black);
	padding: 0.55em 2em 0.55em 2em;
	margin: 0 0 0 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 9999px;
	background-color: var(--color-white);
	}
.btn-ex-link a:has(span.ex-link):hover {
	color: var(--color-white);
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	}
.btn-ex-link a span.ex-link {
	background-image: url("../../img/ex-link-w.svg");
	margin-left: 0.75em;
	}
.btn-ex-link + .btn-ex-link {
	margin-top: -1em;
	}

.at-waku {
	padding: 1.25em 1.25em 1.25em 1.25em;
	margin: 0 0 2.5em 0;
	border: 1px solid var(--color-darkgray);
	}
.at-waku {
	padding: 1.25em 1.25em 1.25em 1.25em;
	margin: 0 0 2.5em 0;
	border: 1px solid var(--color-darkgray);
	}
.at-waku h5.h5-waku {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.2em;
	line-height: 1.5;
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	}
.at-waku p {
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}
.at-waku p + p {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.at-waku p strong {
	font-size: 1.1em;
	}

.artist-accordion {
	padding: 2em 0 1.75em 0;
	}
.artistcontroller + .artist-accordion {
	padding: 0.25em 0 1.75em 0;
	}
.artist-accordion .artist-item-wide p {
	font-size: 0.9em;
	padding: 0 0 0 0;
	}
.artist-accordion .artist-item-wide p + p {
	padding-top: 1em;
	}
.artist-accordion .artist-item-wide h6 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	padding: 0 0 0.75em 1em;
	}
.artist-accordion .artist-item-wide p + h6 {
	padding: 1.5em 0 0.75em 1em;
	}
.artist-accordion .artist-item-wide p .small {
	font-size: max(0.9em, 12px);
	}

/* - SP ラーニング - */
/*      とは - */
.learning-img {
	width: 60%;
	padding: 0 0 0 0;
	}
.learning-caption {
	font-size: 0.7em;
	padding: 0.5em 0 1.5em 0;
	}

.learning-left h4 {
	padding-bottom: 0;
	}
.p-lead {
	padding: 1em 0 0.25em 0;
	}
.p-kome {
	font-size: 0.85em;
	padding: 0 0 1.5em 0;
	margin: -1em 0 0 0;
	}
.learning-section {
	padding: 0.5em 0 0 0;
	}
/*      拠点 - */
ul.info-item-list > li.learning-center {
	width: 48.75%;
	}
ul.info-item-list > li .info-list-text {
	flex-grow: 1;
	color: var(--color-black);
	padding: 0 0 0 0.5em;
	margin: 0.75em 0 0 0;
	border-left: 1px solid var(--color-darkgray);
	display: flex;
	flex-direction: column;
	}
ul.info-item-list > li .info-list-text h3,
ul.info-item-list > li a .info-list-text h3 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1em;
	line-height: 1.5;
	color: var(--color-black);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	transition: color 0.3s ease;
	}
ul.info-item-list > li .info-list-text h3 span,
ul.info-item-list > li a .info-list-text h3 span {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.85em;
	}
ul.info-item-list > li a:hover .info-list-text h3 {
	color: var(--color-red);
	}
/*      プログラム - */
ul.info-item-list > li.learning-program {
	margin: 0 0 2em 0;
	display: flex;
	flex-direction: column;
	height: auto;
	}
ul.info-item-list > li .info-list-text p.learning-p,
ul.info-item-list > li a .info-list-text p.learning-p {
	color: var(--color-black);
	padding: 1em 0 0 0;
	}
ul.info-item-list > li a:hover .info-list-text p.learning-p {
	color: var(--color-red);
	}
.learning-center .info-list-deta {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	}

p.small.bottom-p {
	padding-bottom: 0;
	}
p.bottom-p {
	padding-bottom: 0.5em;
	}
p.bottom-p-zero {
	padding-bottom: 0;
	}
p.bottom-p2 {
	padding-bottom: 0.75em;
	}

/* - SP チケット - */
.ticket-tab-wrapper {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	margin: 0 0 0 0;
	}
.ticket-tab-item {
	width: 50%;
	border-top: 1px solid var(--color-gray);
	border-right: none;
	border-bottom: 1px solid var(--color-black);
	border-left: none;
	text-align: center;
	padding: 0.5em 0.5em 0.5em 0.5em;
	margin: 0 0 0 0;
	display: flex;
	align-items: center;
	justify-content: center;
	}
.ticket-tab-item.current {
	width: 50%;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	border-bottom: none;
	border-left: 1px solid var(--color-black);
	text-align: center;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	border-radius: 8px 8px 0 0;
	}
h3.ticket-tab {
	display: inline-block;
	text-align: center;
	font-size: 1.1em;
	line-height: 1.2;
	padding: 0.25em 0 0.25em 0;
	margin: 0 0 0 0;
	border: 1px solid var(--color-gray);
	}

a h3.ticket-tab {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	color: var(--color-darkgray);
	padding: 0.25em 1em 0.25em 1em;
	margin: 0 0 0 0;
	border-radius: 9999px;
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-gray);
	transition: color .3s ease, background-color .3s ease, border-color .3s ease;
	}
a:hover h3.ticket-tab {
	color: var(--color-white);
	border: 1px solid var(--color-red);
	background-color: var(--color-red);
	}

.ticket-h-wrapper {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	padding: 1em 0 2em 0;
	margin: 0 0 0 0;
	}
.ticket-h-item {
	width: 50%;
	align-self: center;
	padding: 0 1em 0 1em;
	margin: 0 0 0 0;
	}
.ticket-h-item-right {
	width: 50%;
	align-self: center;
	padding: 0 1em 0 1em;
	margin: 0 0 0 auto;
	}
p.ticket-h3 {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-style: normal;
	font-size: 1.6em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	text-align: center;
	}
p.ticket-h3 span {
	white-space: nowrap;
	margin: 0 0 0 0;
	}

.ticket-lead {
	font-size: 1.2em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.ticket-dl {
	display: flex;
	flex-wrap: wrap;
	padding: 0.5em 0 1.25em 0;
	margin: 0 0 0 0;
	}
dl.ticket-dl dt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1.1em;
	width: 8.5em;
	padding: 0.35em 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.ticket-dl dt.normal {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 1em;
	text-align: right;
	width: 9.25em;
	padding: 0.5em 1em 0.5em 0;
	margin: 0 0 0 0;
	}
dl.ticket-dl dd {
	width: calc(100% - 9.5em);
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.ticket-dl dd p {
	padding-bottom: 0;
	}
dl.ticket-dl dd p + p.kome {
	padding-top: 1.25em;
	}

table.price-table {
	width: 100%;
	font-size: 1em;
	margin: 0 0 0 0;
	border-collapse: collapse;
	text-align: center;
	vertical-align: middle;
	}
table.price-table th {
	background-color: transparent;
	line-height: 1.2;
	}
table.price-table span.price-date {
	font-size: 0.85em;
	display: inline-block;
	}
table.price-table span.price-right {
	width: 3.5em;
	display: inline-block;
	text-align: left;
	}

table.area-table {
	width: 100%;
	font-size: 1em;
	margin: 0 0 0 0;
	border-collapse: collapse;
	vertical-align: middle;
	}
table.area-table th {
	background-color: transparent;
	}
table.area-table td.area {
	text-align: center;
	}
table.area-table th span,
table.area-table td span {
	font-size: 0.9em;
	}

.ticket-logo-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
.ticket-logo {
	width: 48%;
	text-align: center;
	padding: 0 0 1.5em 0;
	}
.ticket-logo-no {
	width: 44%;
	}
.ticket-logo img {
	padding: 0 0 0.3em 0;
	margin: 0 auto 0.3em auto;
	border-radius: 6px;
	}
.ticket-logo a {
	text-align: center;
	}
.ticket-logo a p {
	display: inline-block;
	text-align: center;
	padding: 0.4em 1em 0.4em 1em;
	margin: 0 auto;
	font-size: 0.85em;
	line-height: 1;
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	background-color: var(--color-white);
	border-radius: 9999px;
	transition: color .3s ease, background-color .3s ease;
	}
.ticket-logo a:hover p {
	color: var(--color-white);
	background-color: var(--color-red);
	}
.little-p {
	padding-bottom: 0.5em;
	}
ol.ticket-ol {
	position: relative;
	padding: 0 0 0 0;
	margin: -0.25em 0 0.25em 0;
	}
ol.ticket-ol > li {
	list-style: none;
	list-style-position: outside;
	margin: 0 0 0 0;
	padding-left: 1.25em
	}
ol.ticket-ol li span {
	position: absolute;
	left: 0;
	margin: 0 0 0 0;
	}

.ticket-q {
	padding-left: 6rem;
	text-indent: -6rem;
	padding-bottom: 0.5em;
	}
.ticket-a {
	padding-left: 6rem;
	text-indent: -6rem;
	margin-bottom: 1em;
	border-bottom: 1px dashed var(--color-darkgray);
	}
.ticket-q span.q,
.ticket-a span.a {
	width: 6rem;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1.6em;
	display: inline-block;
	text-indent: 0;
	text-align: center;
	}
.ticket-a span.kome {
	padding-top: 0.5em;
	}

.pa-ticket-wrapper {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px dashed var(--color-darkgray);
	padding: 0 0 1.5em 0;
	margin: 0 0 1.5em 0;
	}

.pa-ticket-img {
	/* width: 27%; */
width: 100%;
	padding: 0 0 0 0;
	order: 2;
	}
.pa-ticket-img img {
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

.pa-ticket-name {
	width: 100%;
	order: 1;
	}
.pa-ticket-inner {
	/* width: 69%; */
width: 100%;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	/* margin: 0 0 0 4%; */
margin: 1em 0 0 0;
	order: 3;
	}

.pa-ticket-innerday {
	width: 100%;
	padding: 0 0 0 0;
	/* border-top: 1px dotted var(--color-darkgray); */
	}
.pa-ticket-innerprice {
	width: 100%;
	padding: 0 0 0 0;
	/* border-top: 1px dotted var(--color-darkgray); */
	}
.pa-ticket-innerday p {
	line-height: 1.5;
	padding: 0 0 1em 0;
	text-align: start;
	text-justify: none;
	}
.pa-ticket-innerprice p {
	line-height: 1.5;
	padding: 0 0 0.5em 0;
	text-align: start;
	text-justify: none;
	}

.pa-ticket-name h5 {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1.4em;
	line-height: 1.3;
	padding: 0 0 0.75em 0;
	}
.pa-ticket-name h5 span {
	display: inline-block;
	margin-top: 0.3em;
	}
.pa-ticket-name p {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
p.pa-ticket-btn {
	font-size: 0.9em;
	line-height: 1.5;
	padding-bottom: 1.5em;
	}
p.pa-ticket-btn a {
	padding-top: 0.6em;
	padding-bottom: 0.6em;
	}
p.pa-ticket-btn.bottom-p {
	padding-bottom: 1em;
	}

dl.pa-ticket-dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.2;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.pa-ticket-dl dt {
	width: 7.5em;
	padding: 0.3em 0.5em 0.3em 0;
	}
dl.pa-ticket-dl dt span.ruby {
	display: block;
	font-size: 0.8em;
	}
dl.pa-ticket-dl dd {
	width: calc(100% - 7.5em);
	padding: 0.3em 0 0.3em 0;
	margin: 0 0 0 0;
	}
dl.pa-ticket-dl dd span.small {
	font-size: 0.85em;
	}

dl.pa-ticket-dl dd span.lineheight {
	line-height: 1.3;
	}
dl.pa-ticket-dl dd p.pa-ticket-btn {
	padding-top: 0.5em;
	padding-bottom: 0;
	}

dl.pa-ticket-dl2 {
	width: 8em;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.2;
	padding: 0.5em 0 0 0;
	margin: 0 0 0.5em 0;
	border-bottom: 1px solid var(--color-darkgray);
	}
dl.pa-ticket-dl2 dt {
	width: 3.7em;
	padding: 0.5em 0.5em 0.5em 0;
	border-top: 1px solid var(--color-darkgray);
	}
dl.pa-ticket-dl2 dd {
	width: 4.3em;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	border-top: 1px solid var(--color-darkgray);
	}

dl.pa-ticket-dl2.bottom {
	margin: 0 0 1.75em 0;
	}

h4 span.space {
	font-size: 0.8em;
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	padding-left: 1em;
	}

.paticket-waku-wrapper {
	display: flex;
	flex-wrap: wrap;
	}

.paticket-waku {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	border-bottom: 1px dashed var(--color-darkgray);
	}
.paticket-waku h5.ticket-h5 {
	padding-top: 0;
	}

ul.ul-kome {
	font-size: 0.85em;
	line-height: 1.5;
	padding: 0 0 0 1.5em;
	margin: 0 0 0 0;
	list-style-type: disc;
	}
ul.ul-kome > li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.ul-kome > li ul.ul-komekome {
	padding: 0 0 0.5em 2em;
	margin: 0 0 0 0;
	list-style-type: circle;
	}
ul.ul-kome > li ul.ul-komekome li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

ul.ul-kome a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
ul.ul-kome a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

.indent-note {
	padding-left: 2.65em;
	text-indent: -2.65em;
	display: inline-block;
	line-height: 1.5;
	}

/* - SP ホテル - */
.legend-wrapper {
	padding: 0 0 0 0;
	margin: 0.5em 0 4em 0;
	border-top: 1px dashed var(--color-darkgray);
	border-bottom: 1px dashed var(--color-darkgray);
	}
dl.legend-dl {
	display: flex;
	flex-wrap: wrap;
	padding: 0.75em 0 0.75em 0;
	margin: 0 0 0 0;
	}
dl.legend-dl dt {
	width: 100%;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	line-height: 1;
	align-self: center;
	}
dl.legend-dl dd {
	width: 100%;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	line-height: 1.5;
	align-self: center;
	}
span.hotel-legend {
	display: inline-block;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	width: 12em;
	font-size: 0.85em;
	line-height: 1;
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-white);
	background-color: var(--color-darkgray);
	text-align: center;
	padding: 0.4em 0 0.4em 0;
	border-radius: 4px;
	}

p.hotel-section {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 2em 0 1em 0;
	border-bottom: none;
	position: relative;
	}
p.hotel-section span {
	padding: 0 0.5em 0 0;
	margin: 0 0 0 0;
	background-color: var(--color-gray);
	}
p.hotel-section::after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: var(--color-black);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-1px);
	z-index: -1;
	}
.hotel-all {
	padding: 0 0 1.5em 0;
	margin: 0 0 0 0;
	}
.hotel-wrapper {
	display: flex;
	flex-wrap: wrap;
	padding: 0.5em 0 1.75em 0;
	margin: 0 0 1.25em 0;
	border-bottom: 1px dashed var(--color-darkgray);
	position: relative;
	}
.hotel-img {
	width: 100%;
	padding: 0 0 0 0;
	order: 2;
	}
.hotel-contents {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	order: 1;
	}

.hotel-img img {
	width: 100%;
	height: auto;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	margin: 1em 0 0 0;
	}
.hotel-img img:first-child {
	margin: 1.5em 0 0 0;
	}

h4.hotel-h4 {
	padding: 0 0 1em 0;
	}

.hotel-legend-li {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.hotel-legend-li span.hotel-legend {
	margin-right: 0.5em;
	}
.hotel-legend-li span.hotel-legend:last-child {
	margin-right: 0;
	}

ul.hotel-info {
	padding: 0.75em 0 0 0;
	margin: 0 0 0 0;
	}
ul.hotel-info li {
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.hotel-info li.btn {
	font-size: 0.9em;
	line-height: 1.5;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	}
ul.hotel-info li.btn a {
	padding-top: 0.6em;
	padding-bottom: 0.6em;
	}

.hotel-img.option {
	padding: 1.5em 0 0 0;
	}
.hotel-contents.option {
	padding: 1.5em 0 0 0;
	}
.hotel-contents.option p {
	font-size: 0.9em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.hotel-contents.option p + p {
	padding: 0.5em 0 0 0;
	}

p.comment {
	font-size: 0.9em;
	padding: 1.5em 0 0 0;
	}

/* - SP サポートが必要な方へ - */
ul.support-ul {
	position: relative;
	padding: 0 0 0 0;
	margin: 0 0 0 1.5em;
	list-style-type: disc;
	}

ul.support-ul li a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
ul.support-ul li a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}

.support .accordion-inner p {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.support .accordion-inner p + p {
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	}
.support .accordion-inner p.bottom-p2 {
	padding-bottom: 1em;
	}
.support .accordion-inner p + p.bottom-p3 {
	padding-bottom: 3em;
	}
.support .accordion-inner ul,
.support .accordion-inner ol {
	padding-bottom: 1em;
	}

.span-wrapper {
	display: flex;
	flex-wrap: nowrap;
	}
.span-wrapper .span-dt {
	width: fit-content;
	}
.span-wrapper .span-dd {
	flex: 1;
	padding-left: 0.5em;
	}

dl.support-dl {
	width: 100%;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	border-bottom: 1px solid var(--color-darkgray);
	line-height: 1.5;
	}
.support-dl-wrapper {
	display: flex;
	flex-wrap: wrap;
	padding: 0.75em 0 0.75em 0;
	margin: 0 0 0 0;
	border-top: 1px solid var(--color-darkgray);
	}
.support-dl-wrapper dt {
	width: 50%;
	padding: 0 0.5em 0 0;
	margin: 0 0 0 0;
	display: flex;
	align-items: center;
	border-right: 1px solid var(--color-darkgray);
	}
.support-dl-wrapper dd {
	width: 50%;
	padding: 0 0 0 0.5em;
	margin: 0 0 0 0;
	align-self: center;
	}
.support-dl-wrapper dt p.pa-ticket-btn {
	padding: 0 0 0 0;
	margin: 0.5em 0 0.25em 0;
	}
.support-dl-wrapper dt p.pa-ticket-btn a {
	padding: 0.5em 1.25em 0.5em 1.25em;
	}
.support-dl-wrapper dd span.small {
	font-size: 0.85em;
	}
ul.support-dl-ul {
	width: 100%;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	border-bottom: 1px solid var(--color-darkgray);
	line-height: 1.5;
	}
ul.support-dl-ul li {
	width: 100%;
	padding: 0.75em 0 0.75em 0;
	margin: 0 0 0 0;
	border-top: 1px solid var(--color-darkgray);
	}
ul.support-dl-ul li p.pa-ticket-btn {
	padding: 0 0 0 0;
	margin: 0.5em 0 0.25em 0;
	}
ul.support-dl-ul li p.pa-ticket-btn a {
	padding: 0.5em 1.25em 0.5em 1.25em;
	}
ul.support-dl-ul li span.small {
	font-size: 0.85em;
	}
.support ul.support-dl-ul + p {
	padding-top: 3em;
	}
.support dl.support-dl + p {
	padding-top: 3em;
	}
.support dl.support-dl + p.small {
	padding-top: 0.5em;
	}
.support dl.support-dl + p.topp {
	padding-top: 1.5em;
	}

dl.childcare-dl {
	padding: 0 0 0 0;
	margin: -0.25em 0 0 0;
	}
dl.childcare-dl dt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	padding: 0 0 0 0;
	margin: 0.75em 0 0 0;
	}
dl.childcare-dl dd {
	padding: 0 0 0 1.5em;
	margin: 0 0 0 0;
	}

li.link-btn-item .small {
	font-size: 0.85em;
	}
.kind-btn {
	padding: 1.75em 0 0 0;
	}

/* - SP アートを巡る - */
ul.artfes-item-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.artfes-item-list > li {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 2em 0;
	height: auto;
	}
ul.artfes-item-list > li {
	display: flex;
	flex-direction: column;
	height: auto;
	}

ul.artfes-item-list > li .event-list-img {
	width: 100%;
	height: auto;
	aspect-ratio: 6 / 4;
	background-color: transparent;
	}
ul.artfes-item-list > li .event-list-img img {
	width: auto;
	height: 100%;
	object-fit: contain;
	object-position: left bottom;
	aspect-ratio: 6 / 4;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
ul.artfes-item-list > li .info-list-text {
	flex-grow: 1;
	color: var(--color-black);
	padding: 0 0 0 0.5em;
	margin: 1em 0 0 0;
	border-left: 1px solid var(--color-darkgray);
	transition: color 0.3s ease, border-color 0.3s ease;
	display: flex;
	flex-direction: column;
	}
ul.artfes-item-list > li a:hover .info-list-text {
	border-left: 1px solid var(--color-red);
	}
ul.artfes-item-list > li .info-list-text h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1.3em;
	color: var(--color-black);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	transition: color 0.3s ease;
	}
ul.artfes-item-list > li .info-list-text h3 span {
	font-size: 0.85em;
	}
ul.artfes-item-list > li a:hover .info-list-text h3 {
	color: var(--color-red);
	}
ul.artfes-item-list > li .info-list-text p {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 0.9em;
	line-height: 1.5;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	transition: color 0.3s ease;
	}
ul.artfes-item-list dl.info-dl {
	font-size: 0.9em;
	line-height: 1.5;
	padding: 0.5em 0 0 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.artfes-item-list dl.info-dl dt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	width: 100%;
	padding: 0 0 0.25em 0;
	margin: 0 0 0 0;
	}

ul.artfes-item-list dl.info-dl dd {
	width: 100%;
	padding: 0 0 0.75em 1em;
	margin: 0 0 0 0;
	}
ul.artfes-item-list dl.info-dl dd span.small {
	font-size: 0.85em;
	margin: 0 0 0 0;
	}
ul.artfes-item-list dl.info-dl dd span.bold {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	}

span.columndl {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0 !important;
	}
span.columndl span.dldt {
	width: fit-content;
	white-space: nowrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-feature-settings: "palt" 0;
	}
span.columndl span.dldd {
	flex: 1;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

ul.artfes-info {
	padding: 0.75em 0 0 0;
	margin: auto 0 0 0;
	}
ul.artfes-info li.btn {
	font-size: 0.9em;
	line-height: 1.5;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	text-align: right;
	}
ul.artfes-info li.btn a {
	padding-top: 0.6em;
	padding-bottom: 0.6em;
	}

/* - SP 協賛 - */
ul.sponsor-list,
ul.sponsor-list-2,
ul.sponsor-list-3 {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}
ul.sponsor-list li {
	width: 49%;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	}
ul.sponsor-list-2 li {
	width: 32%;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	}
ul.sponsor-list-3 li {
	width: 23.5%;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	}
ul.sponsor-list-t {
	display: flex;
	flex-wrap: wrap;
	padding: 0.5em 0 1em 0;
	}
ul.sponsor-list-t li {
	padding: 0 1em 0.5em 0;
	margin: 0 0 0 0;
	}
ul.sponsor-list li p,
ul.sponsor-list-2 li p {
	font-size: 0.85em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.sponsor-list li a p,
ul.sponsor-list-2 li a p {
	display: inline-block;
	color: var(--color-darkgray);
	transition: color .3s ease;
	}
ul.sponsor-list li a:hover p,
ul.sponsor-list-2 li a:hover p {
	color: var(--color-red);
	}

.tooltip {
	position: relative;
	cursor: pointer;
	}
#balloon {
	width: 250%;
	position: absolute;
	top: -0.5em;
	right: 0.5em;
	border: 1px solid var(--color-darkgray);
	z-index: +1;
	background-color: var(--color-white);
	padding: 1em 1em 1em 1.25em;
	margin: 0 0 0 0;
	transform: translateY(-100%);
	display: none;
	}
#balloon::before {
 	content: "";
	border-top: 14px solid var(--color-white);
	border-right: 10px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 10px solid transparent;
	position: absolute;
	left: 82%;
	bottom: -27px;
	z-index: +2;
	margin-left: -10px;
	}
#balloon::after {
	content: "";
	border-top: 14px solid var(--color-darkgray);
	border-right: 10px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 10px solid transparent;
	background-color: transparent;
	position: absolute;
	left: 82%;
	bottom: -29px;
	z-index: +1;
	margin-left: -10px;
	}
#balloon p {
/* 	padding-left: 1em;
	text-indent: -1em;
	display: inline-block; */
	font-size: 0.8em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

/* - SP グッズ - */
ul.info-item-list > li.goods-item {
	margin: 0 0 2em 0;
	display: flex;
	flex-direction: column;
	height: auto;
	}
ul.info-item-list > li.goods-item.blank {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

ul.info-item-list > li.goods-item .info-list-img img {
	width: auto;
	height: 100%;
	object-fit: contain;
	object-position: center bottom;
	aspect-ratio: 6 / 4;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	border-radius: 6px;
	}
img.round {
	border-radius: 6px;
	}
ul.info-item-list > li a .info-list-text h4.goods-h4 {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	font-size: 1em;
	line-height: 1.5;
	color: var(--color-black);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-bottom: none;
	transition: color 0.3s ease;
	text-box-trim: none;
	}
ul.info-item-list > li a:hover .info-list-text h4.goods-h4 {
	color: var(--color-red);
	}
ul.info-item-list > li a .info-list-text p.price {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1.1em;
	line-height: 1.5;
	color: var(--color-black);
	padding: 0.25em 0 0 0;
	}
ul.info-item-list > li a .info-list-text p.goods-p {
	font-size: 0.85em;
	line-height: 1.5;
	color: var(--color-darkgray);
	padding: 0.25em 0 0 0;
	}
ul.info-item-list > li a:hover .info-list-text p.price,
ul.info-item-list > li a:hover .info-list-text p.goods-p {
	color: var(--color-red);
	}
hgroup.info-h4 {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	position: relative;
	}

ul.goods-next {
	padding: 0 0 0 1.5em;
	list-style-type: disc;
	}
ul.goods-next li {
	padding: 0 0 0 0;
	}
ul.goods-next li span.small {
	font-size: 0.85em;
	}
h4.single-h4.goods-btn {
	font-size: 1.1em;
	padding: 1em 0 0.75em 0;
	}
h4.single-h4.goods-btn span.small {
	font-size: 0.85em;
	}
p.pa-ticket-btn.goods-btn {
	padding-bottom: 0.75em;
	}

/* - SP ショップ - */
.shop-lead-wrapper {
	padding: 0 0 0 0;
	}
.shop-lead-left {
	padding: 0 0 0 0;
	}
.shop-lead-right {
	width: 60%;
	padding: 0 0 1em 0;
	}
.shop-lead-left p {
	padding: 0 0 0 0;
	}

.shop-lead-right.left {
	padding-left: 3.5em;
	}

.shop-lead-wrapper + .shop-lead-wrapper {
	padding: 1.5em 0 0 0;
	}

ul.artists-caption-ul.top {
	padding-top: 0.5em;
	}

dl.shop-dl {
	line-height: 1.5;
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
dl.shop-dl dt {
	width: 5.25em;
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.shop-dl dt span {
	display: inline-block;
	width: 4.5em;
	text-align-last: justify;
	padding: 0 0.25em 0 0;
	margin: 0 0 0 0;
	}
dl.shop-dl dd {
	width: calc(100% - 5.25em);
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.shop-dl dd span.small {
	font-size: 0.85em;
	margin: 0 0 0 0;
	}
dl.shop-dl dd ul.link-btn {
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	}
dl.shop-dl dd ul.link-btn li.link-btn-item a:has(span.ex-link) {
	padding-bottom: 0.6em;
	}

dl.shop-dl dt.ddtext {
	width: 8.25em;
	}
dl.shop-dl dt.ddtext span {
	width: 7.25em;
	text-align-last: justify;
	}
dl.shop-dl dd.ddtext {
	width: calc(100% - 8.5em);
	}

span.columndl span.shopdt {
	width: 6em;
	white-space: nowrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-feature-settings: "palt" 0;
	}
span.columndl span.shopdd {
	width: calc(100% - 6em);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}


dl.shop-first-dl {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	border-top: 1px solid var(--color-darkgray);
	}
dl.shop-first-dl dt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	width: 100%;
	padding: 0.25em 0 0 0;
	}
dl.shop-first-dl dd {
	width: 100%;
	padding: 0.25em 0 0.75em 1em;
	margin: 0 0 0 0;
	border-bottom: 1px solid var(--color-darkgray);
	}

ul.shop-tag {
	padding: 0.25em 0 0.25em 0;
	margin: auto 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.shop-tag li {
	font-size: 0.85em;
	line-height: 1;
	padding: 0 0 0 0;
	margin: 0 0.25em 0.25em 0;
	}
ul.shop-tag li span {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	border: 1px solid var(--color-darkgray);
	padding: 4px 0.5em 4px 0.5em;
	margin: 0 0 0 0;
	border-radius: 4px;
	display: inline-block;
	}

dl.shop-second-dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.5;
	padding: 0.5em 0 0 0;
	margin: 0 0 0.75em 0;
	}
dl.shop-second-dl.top {
	padding: 0 0 0 0;
	}
dl.shop-second-dl dt {
	width: 3.5em;
	padding: 0.25em 0.5em 0.25em 0;
	}
dl.shop-second-dl dd {
	width: calc(100% - 3.5em);
	padding: 0.25em 0 0.25em 0;
	margin: 0 0 0 0;
	}
dl.shop-second-dl dt.ddtext {
	width: 7em;
	padding: 0.25em 0.5em 0.25em 0;
	}
dl.shop-second-dl dd.ddtext {
	width: calc(100% - 7em);
	padding: 0.25em 0 0.25em 0;
	margin: 0 0 0 0;
	}
dl.shop-second-dl dt .just {
	margin: 0 0.25em 0 0;
	}

dl.shop-second-dl dt.ddtext .just {
	display: inline-block;
	width: 5.5em;
	text-align-last: justify;
	}

dl.shop-first-dl dt .small, 
dl.shop-first-dl dd .small, 
dl.shop-second-dl dd .small {
	font-size: 0.85em;
	}
p.shop-btn {
	padding-top: 1.75em;
	}
p.shop-btn2 {
	padding-top: 0.5em;
	}
.tempora-img-all {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 1.5em 0;
	}
.tempora-img-all .leftimg {
	padding-right: 1em;
	}
.tempora-img-all img {
	width: auto;
	height: min(30vw, 410px);
	}

.details-all {
	padding: 0 0 2em 0;
	}

p.shop-p {
	padding: 0 0 0 3.5em;
	}
p.shop-p + p.shop-p {
	padding: 1em 0 2em 3.5em;
	}

/* - SP マガジン - */
body.magazine {
	background-color: var(--color-white);
	}
body.magazine .header-menu-wrapper {
	background-color: var(--color-white);
	}
.newscontroller.slider-a,
.newscontroller.slider-b,
.newscontroller.slider-c,
.newscontroller.slider-d {
	padding: 0 0 0 0;
	margin-top: 1.5em;
	}
.artistcontroller.magazine span.yaji-prev.swiper-button-disabled,
.artistcontroller.magazine span.yaji-next.swiper-button-disabled,
.newscontroller.slider-a span.yaji-prev.swiper-button-disabled,
.newscontroller.slider-a span.yaji-next.swiper-button-disabled,
.newscontroller.slider-b span.yaji-prev.swiper-button-disabled,
.newscontroller.slider-b span.yaji-next.swiper-button-disabled,
.newscontroller.slider-c span.yaji-prev.swiper-button-disabled,
.newscontroller.slider-c span.yaji-next.swiper-button-disabled,
.newscontroller.slider-d span.yaji-prev.swiper-button-disabled,
.newscontroller.slider-d span.yaji-next.swiper-button-disabled {
	border: 1px solid var(--color-gray);
	background-color: var(--color-white);
	cursor: default;
	}
.artistcontroller.magazine span.yaji-prev.swiper-button-disabled::after,
.newscontroller.slider-a span.yaji-prev.swiper-button-disabled::after,
.newscontroller.slider-b span.yaji-prev.swiper-button-disabled::after,
.newscontroller.slider-c span.yaji-prev.swiper-button-disabled::after,
.newscontroller.slider-d span.yaji-prev.swiper-button-disabled::after {
	border-top: 1px solid var(--color-gray);
	border-left: 1px solid var(--color-gray);
	}
.artistcontroller.magazine span.yaji-next.swiper-button-disabled::after,
.newscontroller.slider-a span.yaji-next.swiper-button-disabled::after,
.newscontroller.slider-b span.yaji-next.swiper-button-disabled::after,
.newscontroller.slider-c span.yaji-next.swiper-button-disabled::after,
.newscontroller.slider-d span.yaji-next.swiper-button-disabled::after {
	border-top: 1px solid var(--color-gray);
	border-right: 1px solid var(--color-gray);
	}
.artistcontroller.magazine span.yaji-prev.swiper-button-disabled:hover,
.artistcontroller.magazine span.yaji-next.swiper-button-disabled:hover,
.newscontroller.slider-a span.yaji-prev.swiper-button-disabled:hover,
.newscontroller.slider-a span.yaji-next.swiper-button-disabled:hover,
.newscontroller.slider-b span.yaji-prev.swiper-button-disabled:hover,
.newscontroller.slider-b span.yaji-next.swiper-button-disabled:hover,
.newscontroller.slider-c span.yaji-prev.swiper-button-disabled:hover,
.newscontroller.slider-c span.yaji-next.swiper-button-disabled:hover,
.newscontroller.slider-d span.yaji-prev.swiper-button-disabled:hover,
.newscontroller.slider-d span.yaji-next.swiper-button-disabled:hover {
	background-color: var(--color-white);
	}

.swiper-slide .mg-img {
	position: relative;
	}
.swiper-slide .mg-img img {
	width: 100%;
	height: auto;
	}
.swiper-slide .mg-img .wrapper {
	position: absolute;
	top: 0;
	right: 0;
	z-index: +1;
	aspect-ratio: 1 / 1;
	width: auto;
	height: 100%;
	display: flex;
	align-items: center;
	/* justify-content: center; */
	}
.swiper-slide .mg-img .inner {
	padding: 0.25em 0.75em 0.25em 0.75em;
	}
.swiper-slide a {
	color: var(--color-black);
	}
.swiper-slide a:hover {
	color: var(--color-red);
	}

.swiper-slide a p.mg-date {
	color: var(--color-darkgray);
	transition: color .3s ease;
	}
.swiper-slide a:hover p.mg-date {
	color: var(--color-red);
	}

@keyframes titlein {
	0% {
		transform: translateY(1em);
		opacity: 0;
		}
	100% {
		transform: translateY(0);
		opacity: 1;
		}
	}
.swiper-slide-active .hero-txt {
	animation: titlein 0.5s ease-out 0.5s normal both;
	}
.swiper-slide-active .hero-txt.delay-1 {
	animation-delay: 0.5s;
	}
.swiper-slide-active .hero-txt.delay-2 {
	animation-delay: 0.6s;
	}
.swiper-slide-active .hero-txt.delay-3 {
	animation-delay: 0.8s;
	}
.swiper-slide-active .hero-txt.delay-4 {
	animation-delay: 1s;
	}

.swiper-slide a p.mg-category.hero-txt {
	display: inline-block;
	font-size: 0.5em;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	padding: 0.25em 0.35em 0.25em 0.35em;
	margin: 0 0.5em 0.65em 0;
	border: 1px solid var(--color-black);
	white-space: nowrap;
	line-height: 1;
	transition: border-color .3s ease;
	}
.swiper-slide a:hover p.mg-category.hero-txt {
	border: 1px solid var(--color-red);
	}

h3.mg-h3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1.8em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 1.25em 0;
	text-align: center;
	position: relative;
	}
h3.mg-h3::after {
	content: '';
	position: absolute;
	bottom: -0.4em;
	left: 50%;
	transform: translateX(-50%);
	width: 1.8em;
	height: 2px;
	background-color: var(--color-black);
	}
h3.mg-h3 + p {
	text-align: center;
	}

h4.mg-h4 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0.75em 0 1em 0;
	border-bottom: none;
	position: relative;
	z-index: +1;
	}
h4.mg-h4 span {
	padding: 0 0.5em 0 0;
	margin: 0 0 0 0;
	background-color: var(--color-white);
	}
h4.mg-h4::after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: var(--color-gray);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-1px);
	z-index: -1;
	}

.mg-list-wrapper {
	overflow: hidden;
	padding: 2em 0 2em 0;
	border-top: 1px solid var(--color-gray);
	border-bottom: 1px solid var(--color-gray);
	}

.magazine ul.news-list > li:last-child {
	margin: 0 0 0 0;
	}
ul.mg-tag {
	padding: 0 0 0 0;
	margin: 0.3em 0 0 0;
	display: flex;
	flex-wrap: wrap;
	}
ul.mg-tag li {
	font-size: 0.7em;
	line-height: 1;
	padding: 0 0 0 0;
	margin: 0 0.25em 0 0;
	}
ul.mg-tag li span {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	text-box-trim: trim-both;
	text-box-edge: cap alphabetic;
	color: var(--color-darkgray);
	background-color: var(--color-white);
	border: 1px solid var(--color-darkgray);
	padding: 4px 0.5em 4px 0.5em;
	margin: 3px 0 0 0;
	border-radius: 4px;
	display: inline-block;
	}
p.mg-artist {
	font-size: 0.8em;
	padding: 0 0 0.25em 0;
	margin: 0 0 0 0;
	line-height: 1.3;
	}
h4.mg-title {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	border: none;
	}
h4.mg-title span.small {
	font-size: 0.85em;
	}
p.mg-author {
	font-size: 0.8em;
	padding: 0 0 0.2em 0;
	margin: auto 0 0 0;
	line-height: 1.5;
	}
p.mg-date {
	font-size: 0.8em;
	color: var(--color-darkgray);
	padding: 0 0 0 0;
	margin: auto 0 0 0;
	line-height: 1;
	}
p.mg-author + p.mg-date {
	margin-top: 0;
	}
p.mg-artist.hero-txt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	font-size: 0.65em;
	}
h4.mg-title.hero-txt {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 0.85em;
	line-height: 1.2;
	}
p.mg-author.hero-txt {
	font-size: 0.7em;
	margin: 0 0 0 0;
	}
p.mg-date.hero-txt {
	font-size: 0.7em;
	}

a .news-list-text p.mg-category {
	display: inline-block;
	width: fit-content;
	font-size: 0.7em;
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	padding: 0.25em 0.3em 0.25em 0.3em;
	margin: 0 0.5em 0.4em 0;
	border: 1px solid var(--color-black);
	white-space: nowrap;
	line-height: 1.2;
	transition: border-color .3s ease;
	}
a:hover .news-list-text p.mg-category {
	border: 1px solid var(--color-red);
	}

.mg-waku {
	padding: 1.5em 1.5em 1em 1.5em;
	margin: 0 0 2em 0;
	border: 1px solid var(--color-darkgray);
	border-radius: 6px;
	}
h3.mg-tagh3 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-style: normal;
	font-size: 1em;
	line-height: 1.5;
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	border-bottom: none;
	}
ul.mg-taglist {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 0;
	}
ul.mg-taglist li {
	padding: 0 1em 0.5em 0;
	margin: 0 0 0 0;
	}
ul.mg-taglist li .small {
	font-size: 0.85em;
	}
ul.mg-taglist li a {
	color: var(--color-darkgray);
	}
ul.mg-taglist li a:hover {
	color: var(--color-red);
	}

.mg-category-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	}
.mg-category-all {
	margin-bottom: 0.5em;
	margin-right: 0.5em;
	}
.mg-artist-all {
	margin-bottom: 0.5em;
	}
hgroup.h3 h3 span.small {
	font-size: 0.8em;
	}
hgroup.h3 p.mg-category {
	font-size: 0.8em;
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	padding: 0.5em 0.5em 0.5em 0.5em;
	margin: 0 0 0 auto;
	border: 2px solid #000;
	white-space: nowrap;
	line-height: 1;
	}
hgroup.h3 p.mg-artist.hero-txt {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	padding-bottom: 0;
	}
hgroup.h3 p.mg-author.hero-txt {
	line-height: 1.2;
	padding-bottom: 0.3em;
	}
hgroup.h3 p.mg-author.hero-txt span.small {
	font-size: 0.85em;
	display: inline-block;
	}

.mg-contents h4 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1.2em;
	padding: 2em 0 1em 0;
	margin: 0 0 0 0;
	border: none;
	}
.mg-contents h4:has(.aki) {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1em;
	text-indent: -2.25em;
	padding: 2em 0 1.25em 2.25em;
	margin: 0 0 0 0;
	border: none;
	}

.mg-contents h5 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1em;
	padding: 2em 0 1.25em 0;
	margin: 0 0 0 0;
	}
.mg-contents h6 {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 83%;
	padding: 1em 0 1em 0;
	margin: 0 0 0 0;
	}

.mg-contents h5:has(.aki) {
	text-indent: -2.25em;
	padding: 2em 0 1.25em 2.25em;
	margin: 0 0 0 0;
	}
.mg-contents h4 + h5,
.mg-contents h4 + h5:has(.aki) {
	padding-top: 1em;
	}

.mg-contents > p {
	padding: 0 0 1.75em 0;
	margin: 0 0 0 0;
	}
.mg-contents > p.quo {
	padding-left: 3em;
	}
.mg-contents > p:has(img) {
	padding: 0.5em 0 2em 0;
	margin: 0 0 0 0;
	}
.mg-contents > p img {
	max-width: 100%;
	display: inline-block !important;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	touch-callout: none;
	user-select: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
	}
.mg-contents > p .p-caption {
	display: inline-block;
	font-size: max(0.6em, 12px) !important;
	padding: 1em 0 0 0;
	margin: 0 0 0 0;
	line-height: 1.5 !important;
	}
.mg-contents > p .p-caption.right {
	display: block;
	text-align: right;
	}
.mg-contents h4 .aki,
.mg-contents h5 .aki {
	font-feature-settings: "palt" 0;
	letter-spacing: 0;
	margin-right: 0.25em;
	}
.mg-contents p .figcap {
	display: block;
	text-align: right;
	font-size: 0.85em;
	}

.mg-contents .imgflex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top: 0.25em;
	padding-bottom: 2em;
	}
.mg-contents .imgflex a {
	border-bottom: none;
	display: inline-block;
	}
.mg-contents .imgflex a:hover {
	border-bottom: none;
	}
.mg-contents .imgflex img {
	width: 100%;
	height: auto;
	display: inline-block !important;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	touch-callout: none;
	user-select: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
	}

.mg-contents li {
	padding: 0.5em 0 0.5em 0;
	}

.mg-contents a {
	color: var(--color-black);
	}
.mg-contents a:hover {
	color: var(--color-red);
	}
.mg-contents p a {
	color: var(--color-black);
	border-bottom: 1px solid var(--color-black);
	}
.mg-contents p a:hover {
	color: var(--color-red);
	border-bottom: 1px solid var(--color-red);
	}
.mg-contents sup a {
	color: var(--color-black);
	border-bottom: none;
	}
.mg-contents sup a:hover {
	color: var(--color-red);
	border-bottom: none;
	}
.mg-contents p:has(img) a {
	border-bottom: none;
	}
.mg-contents p:has(img) a:hover {
	border-bottom: none;
	}

.mg-contents table {
	width: 100%;
	margin: 1em 0 1em 0;
	border-collapse: collapse;
	}
.mg-contents table th {
	font-family: var(--font-m);
	font-weight: var(--font-m-w);
	line-height: 1.25;
	padding: 0.5em 0.5em 0.5em 0.5em;
	text-align: center;
	vertical-align: middle;
	border: 1px solid var(--color-darkgray);
	}
.mg-contents table td {
	line-height: 1.5;
	padding: 0.5em 0.5em 0.5em 0.5em;
	border: 1px solid var(--color-darkgray);
	}
.mg-contents table img {
	display: inline-block;
	}
.mg-contents .movie-wrap {
	width: 80%;
	position: relative;
	height: 0;
	padding: 0 0 calc(80% * 0.5625) 0;
	margin: 0 0 1em 0;
	overflow: hidden;
	}

.mg-contents ul.mg-footnote-ul {
	padding: 1em 0 0 0;
	margin: 2em 0 4em 0;
	font-size: 0.85em;
	position: relative;
	}
.mg-contents ul.mg-footnote-ul::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 10em;
	height: 1px;
	background-color: var(--color-darkgray);
	}
.mg-contents ul.mg-footnote-ul li {
	text-indent: -1.5em;
	padding: 0 0 0.25em 1.5em;
	margin: 0 0 0 0;
	}
.mg-contents ul.mg-footnote-ul li .footnote-marker {
	display: inline-block;
	width: 1.5em;
	text-indent: 0;
	}
.mg-contents ul.mg-footnote-ul li .komemarker {
	font-size: 0.6em;
	vertical-align: 0.4em;
	}
.mg-contents ul.mg-footnote-ul li a {
	border-bottom: 1px solid var(--color-black);
	}
.mg-contents ul.mg-footnote-ul li a:hover {
	border-bottom: 1px solid var(--color-red);
	}
.mg-contents ul.mg-footnote-ul li .footnote-marker a {
	border-bottom: none;
	}

.mg-contents .lead {
	padding: 1.5em 0 0 0;
	margin: 0.5em 0 2em 0;
	border-top: 1px solid var(--color-darkgray);
	border-bottom: 1px solid var(--color-darkgray);
	}
.mg-contents .lead p {
	padding-right: 0;
	}
.mg-contents .waku {
	padding: 1.5em 1.5em 0 1.5em;
	margin: 0.5em 0 2em 0;
	border: 1px solid var(--color-darkgray);
	}
.mg-contents .waku h4 {
	padding: 0 0 1em 0;
	}
.mg-contents .waku p {
	padding: 0 0 1.5em 0;
	margin: 0 0 0 0;
	}
.mg-contents .waku ul.mg-footnote-ul {
	margin: 2em 0 2em 0;
	}


.mg-contents .timeline-wrapper {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	position: relative;
	background-color: transparent;
	z-index: +1;
	}
.mg-contents .timeline-wrapper-no {
	padding: 0 0 3em 0;
	margin: 0 0 0 0;
	position: relative;
	background-color: transparent;
	z-index: +1;
	}
.mg-contents .timeline-wrapper::before {
	position: absolute;
	content: '';
	top: 0;
	left: 2em;
	width: 1px;
	height: 100%;
	background-color: var(--color-darkgray);
	z-index: -1;
	}
.mg-contents .timeline-wrapper p,
.mg-contents .timeline-wrapper-no p {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.mg-contents .timeline-wrapper p + p,
.mg-contents .timeline-wrapper-no p + p {
	padding-top: 1.5em;
	}
.mg-contents .timeline-wrapper .timeline-indent,
.mg-contents .timeline-wrapper-no .timeline-indent {
	padding: 0 0 0 5em;
	margin: 0 0 0 0;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	}
.mg-contents .timeline-wrapper .timeline-indent .timeleft,
.mg-contents .timeline-wrapper-no .timeline-indent .timeleft {
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid var(--color-darkgray);
	background-color: var(--color-white);
	border-radius: 50%;
	width: 4em;
	height: 4em;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	}
.mg-contents .timeline-wrapper .timeline-indent .timeright,
.mg-contents .timeline-wrapper-no .timeline-indent .timeright {
	height: 4em;
	display: flex;
	align-items: center;
	}
.mg-contents h5.timepoint {
	font-size: 1.2em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

.mg-contents .timeline-wrapper .timeline-indent-p,
.mg-contents .timeline-wrapper-no .timeline-indent-p {
	padding: 0 0 0 5em;
	margin: 0 0 0 0;
	position: relative;
	}
.mg-contents .timeline-wrapper .timeline-indent-trans,
.mg-contents .timeline-wrapper-no .timeline-indent-trans {
	padding: 2em 0 2em 3em;
	margin: 0 0 0 0;
	position: relative;
	}
.mg-contents .timeline-wrapper .timeline-indent-trans:has(p),
.mg-contents .timeline-wrapper-no .timeline-indent-trans:has(p) {
	padding: 4em 0 4em 3em;
	margin: 0 0 0 0;
	position: relative;
	}


.mg-contents .columnflex {
	width: 100%;
	padding-top: 0.25em;
	padding-bottom: 1em;
	}
.mg-contents .columnflex-l,
.mg-contents .columnflex-r {
	width: 100%;
	padding-bottom: 1em;
	}
.mg-contents .columnflex-l-tall {
	width: 60%;
	padding-bottom: 1em;
	}
.mg-contents .columnflex-r-tall {
	width: 100%;
	padding-bottom: 1em;
	}
.mg-contents .columnflex a {
	border-bottom: none;
	display: inline-block;
	}
.mg-contents .columnflex a:hover {
	border-bottom: none;
	}
.mg-contents .columnflex img {
	width: 100%;
	height: auto;
	display: inline-block !important;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	touch-callout: none;
	user-select: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
	}
.mg-contents .columnflex p a {
	border: 1px solid var(--color-darkgray);
	}

.mg-contents .wakuflex {
	width: 100%;
	padding-top: 0;
	padding-bottom: 0;
	}
.mg-contents .wakuflex-l {
	width: 100%;
	padding-bottom: 1.5em;
	}
.mg-contents .wakuflex-r {
	width: 100%;
	padding-bottom: 0;
	}
.mg-contents .wakuflex-l-tall {
	width: 100%;
	padding-bottom: 1.5em;
	}
.mg-contents .wakuflex-r-tall {
	width: 60%;
	padding-bottom: 0;
	}

.mg-contents p.mg-btn a {
	line-height: 1.3;
	}
.mg-contents p.mg-btn {
	text-align: start;
	text-justify: none;
	}
.mg-contents p.mg-btn a:hover {
	background-color: var(--color-red);
	border: 1px solid var(--color-red);
	color: var(--color-white);
	}

.mg-contents .column-waku {
	padding: 1.75em 1.75em 1.75em 1.75em;
	margin: 1em 0 1em 0;
	background-color: var(--color-litegray);
	border-radius: 1.5em;
	}
.mg-contents h6.timepoint {
	font-size: 1.1em;
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	}
.mg-contents .column-waku p {
	font-size: 0.9em;
	}
.mg-contents .column-waku ul.link-btn {
	padding-top: 1em;
	padding-bottom: 1em;
	}
.mg-contents .column-waku ul.link-btn li a {
	font-size: 0.85em;
	}

.digital-map {
	width: 100%;
	height: 30em;
	margin: 0 0 1em 0;
	position: relative;
	}
.digital-map iframe {
	border: none;
	width: 100%;
	height: 100%;
	}

.mg-contents .waku.spot {
	padding: 1.75em 1.75em 0.25em 1.75em;
	margin: 2em 0 1em 0;
	border-radius: 1.5em;
	}
.mg-contents .waku.spot h4 {
	padding: 0 0 1em 0;
	}
.mg-contents .waku.spot h4 span.sub {
	display: inline-block;
	font-size: 0.8em;
	line-height: 1;
	}
.mg-contents .waku.spot p {
	padding: 0 0 1em 0;
	margin: 0 0 0 0;
	}


.mg-footnote {
	border-top: 1px solid var(--color-darkgray);
	padding: 1em 0 0 0;
	}
ul.mg-footnote-ul {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-size: 0.85em;
	}
ul.mg-footnote-ul li {
	text-indent: -1.5em;
	padding: 0 0 0.25em 1.5em;
	margin: 0 0 0 0;
	}
ul.mg-footnote-ul li .footnote-marker {
	display: inline-block;
	width: 1.5em;
	text-indent: 0;
	}
ul.mg-footnote-ul2 {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 1.5em;
	font-size: 0.85em;
	list-style-type: disc;
	}
ul.mg-footnote-ul2 li {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.mg-footnote-ul2 li a {
	border-bottom: 1px solid var(--color-darkgray);
	}
ul.mg-footnote-ul2 li a:hover {
	border-bottom: 1px solid var(--color-red);
	}
.mg-footnote a {
	color: var(--color-black);
	}
.mg-footnote a:hover {
	color: var(--color-red);
	}
.mg-footnote p {
	font-size: 0.85em;
	padding: 0 0 0.25em 0;
	margin: 0 0 0 0;
	text-align: start;
	text-justify: none;
	}
.mg-footnote p + p {
	padding: 0.25em 0 0.25em 0;
	}
.komefour {
	padding-left: 4em;
	text-indent: -4em;
	display: inline-block;
	}
.indentp {
	display: inline-block;
	padding-left: 1.5em;
	}
.mg-author-waku {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	border-top: 1px solid var(--color-darkgray);
	border-bottom: 1px solid var(--color-darkgray);
	/* background-color: var(--color-litegray); */
	padding: 1.5em 1.5em 1.5em 1em;
	}
.mg-author-photo {
	width: 6em;
	padding: 0 0 0 0;
	}
.mg-author-info {
	width: calc(100% - 6em);
	padding: 0 0 0 1.5em;
	}
.mg-author-info2 {
	width: calc(100% - 6em);
	padding: 0 0 0 1.5em;
	}
.mg-author-info p.mg-author-name {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	font-size: 1.1em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.mg-author-info p.mg-author-position {
	font-size: 0.85em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	line-height: 1.5;
	}
.mg-author-info2 p.mg-author-name {
	font-size: 0.85em;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

.mg-author-photo img {
	width: 100%;
	height: auto;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	position: static;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	}

.center-btn ul.sub-link {
	border-top: 1px solid var(--color-darkgray);
	padding: 0.75em 0 0 0;
	margin: 1em 0 0 0;
	}

/* -----レスポンシブ----- */

/* - SP-SMALL（374px以下） ---- */
@media screen and (max-width: 374px) {
.newscontroller,
.eventcontroller,
.magazinecontroller {
	align-items: stretch;
	}
.newscontroller .swiper-pagination,
.eventcontroller .swiper-pagination,
.magazinecontroller .swiper-pagination {
	width: 100%;
	}
.newscontroller .btn-go,
.eventcontroller .btn-go,
.magazinecontroller .btn-go {
	margin-top: 1em;
	}

img.hero-title {
	width: 30vw;
	}
.header-title {
	width: 30vw;
	}

.header-menu-wrapper {
	width: 100%;
	}
ul.global-menu {
	width: 70%;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin-left: auto;
	margin-bottom: -0.25em;
	}
ul.global-menu li {
	padding: 0 0 0 0;
	margin: 0.5em 0 0 0.75em;
	}
ul.global-menu li.lang a {
	width: 2em;
	}
.menu-open .header-menu-wrapper {
	position: fixed;
	top: 0;
	}

}

/* - TB（767px以上） ---- */
@media screen and (min-width: 768px) {
/* - TB 変数 - */
:root {
	--topgap: 84px;
	--bottomgap: 40px;
	--margin-s: 16px;
	}

/* - TB ALL - */
body {
	font-size: 1.4rem;
	line-height: 1.7;
	}

/*      スマホ非表示、PC表示 */
.sp-no {
	display: block;
	}
/*      スマホ表示、PC非表示 */
.pc-no {
	display: none;
	}

/* - TB 基本レイアウト - */
header {
	padding: 0 0 0 var(--sidegap);
	margin: 0 0 0 0;
	}
main {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
footer {
	padding: 4em var(--sidegap) calc(var(--margin-s) * 2) var(--sidegap);
	margin: 0 0 0 0;
	}

/* - TB ヘッダ - */
/*      ロゴ */
.header-title {
	width: 32vw;
width: 36vw;
	padding: var(--sidegap) 0 5.0rem 0;
	}
h1 img {
	width: 36vw;
	height: auto;
	}
/*      グローバルメニュー */
.header-globalmenu {
	padding: 0 0.3rem 0 0;
	}
/*      ハンバーガー */
#menu-button {
	width: 2.6rem;
	height: 3rem;
	}
/* - TB メニュー - */
.main-menu {
	padding: 4em 4em 4em 4em;
	font-size: 1.4rem;
	line-height: 1.7;
	}

ul.global-list {
	width: 100%;
	border-top: none;
	justify-content: space-between;
	}
ul.global-list > li {
	width: 47%;
	font-size: 1.8rem;
	border-bottom: none;
	padding: 0 0 0 0;
	margin: 0 0 2.5em 0;
	position: relative;
	display: flex;
	flex-direction: column;
	}
ul.global-list > li.empty {
	display: block;
	}
.title-touch {
	font-family: var(--font-b);
	font-weight: var(--font-b-w);
	}

.sub-wrapper {
	flex-grow: 1;
	padding: 0 0 0 0.75em;
	margin: 0.75em 0 0 0.1em;
	border-left: 1px solid var(--color-darkgray);
	}

ul.global-sub-list {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.global-sub-list.open {
	padding: 0 0 0 0;
	display: block;
	}
ul.global-sub-list > li {
	padding: 0 0 0.75em 0;
	width: 100%;
	font-size: 1.4rem;
	}
ul.global-sub-list > li:last-child {
	padding: 0 0 0 0;
	}

.sub-menu-category {
	pointer-events: none;
	}
.sub-menu-category a {
	pointer-events: auto;
	}

.sp-button {
	display: none;
	}

/*      メニューバナーエリア */
p.menu-pickup {
	padding: 1em 0 0 0;
	}
.main-menu .menu-banner-wrapper {
	overflow: hidden;
	}
.main-menu ul.banner-list li {
	width: 23cqw;
	padding: 0 1.5em 0 0;
	}
.main-menu .menu-bannercontroller {
	padding: 0 0 0 0;
	}
.main-menu .menu-bannercontroller .swiper-pagination {
	margin: 0 auto 0 0;
	}


/*      言語選択 */

/*      SNSアイコン */

/*      その他メニュー */
ul.header-nav_other {
	display: flex;
	padding: 0.5em 0 0 0;
	}
ul.header-nav_other li {
	font-size: 0.85em;
	margin: 0 1em 0 1em;
	}
.logo-menu {
	padding: 3em 0 0 0;
	}
.logo-menu a {
	display: inline-block;
	width: 20%;
	}
/*      関連サイトバナー */
ul.footer-banner_list {
	padding: 1em 0 2.5em 0;
	margin: 0 0 0 0;
	}
ul.footer-banner_list li img.footer-banner_at {
	width: 52px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_ala {
	width: 75px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_artschallenge {
	width: 64px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_aichiart {
	width: 56px;
	height: auto;
	}

/*      GLOBALメニュー */
ul.global-menu {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.global-menu li {
	opacity: 1;
	font-size: 1.4rem;
	padding: 0 0 0 0;
	margin: 0 0 0 1.6rem;
	background-color: transparent;
	pointer-events: auto;
	}
ul.global-menu li.lang {
	opacity: 1;
	display: block;
	padding: 0 0 0 1.6rem;
	margin: 0 0 0 1.6rem;
	border-left: 1px solid #000;
	}

.menu-open ul.global-menu {
	display: none;
	}

/* - TB フッタ - */
.footer-wrapper {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-end;
	}
.footer-logo img {
	width: 23rem;
	}

/*      パンくずリスト */
.breadcrumbs {
	padding: 1rem 0 1rem 0;
	}
ol.breadcrumbs_list {
	font-size: 1.2rem;
	}

/*      コピーライト */
.footer-copyright {
	margin: 0 0 0 0;
	}
.footer-copyright p {
	font-size: 1.2rem;
	}

/*      ページトップへ */
.pagetop {
	bottom: calc(var(--margin-s) + 8px);
	right: var(--margin-s);
	}

/* - TB 各部品 - */
/*      見出し */
h2 {
	}
.order .programs-title h2 {
	text-align: right;
	border-bottom: 1px solid #000;
	}
h3 {
	}
h4 {
	}
h5 {
	}

h4.team-h4 {
	font-size: 1.5em;
	line-height: 1.5;
	padding: 0 0 0.25em 0;
	}

hgroup.h2 span.category {
	right: calc(var(--sidegap) + max(0px, calc(50cqw - 790px)));
	}

/*      リスト */
ul {
	}
ol {
	}
dl dd {
	}
/*      テーブル */

/*      引用ブロック */
blockquote {
	padding: 1.5em 2em 1.5em 2em;
	margin: 1em 0 1em 0;
	background-color: #eee;
	border-radius: 6px;
	}
blockquote p {
	padding: 0 0 0 0;
	}


/*      サブメニュー */
ul.sub-menu li {
	margin: 0 1.5em 0 0;
	}
ul.sub-link li:has(#modal-op) {
	margin-top: 0;
	}
ul.sub-link + ul.sub-menu.indentmenu {
	margin-top: 0;
	}
ul.sub-menu.indentmenu li.sort {
	width: auto;
	}
/*      ページ内リンクメニュー */
ul.contents-link li {
	}
/*      リンクボタン */

/* - TB 本文レイアウト - */
section {
	padding-top: 0;
	margin-top: 0;
	}
section + section {
	padding-top: 0;
	margin-top: 0;
	}


.contents {
	width: 100%;
	max-width: 1580px;
	padding: 0 var(--sidegap) 0 var(--sidegap);
	margin: 0 auto;
	position: relative;
	}
.contents-all {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 auto;
	position: relative;
	}
.contents-left {
	width: 100%;
	max-width: calc(1580px + max(0px, calc(50cqw - 790px)));
	padding: 0 0 0 var(--sidegap);
	margin: 0 0 0 auto;
	position: relative;
	}
.contents-right {
	width: 100%;
	max-width: calc(1580px + max(0px, calc(50cqw - 790px)));
	padding: 0 var(--sidegap) 0 0;
	margin: 0 auto 0 0;
	position: relative;
	}



/* - TB トップページ - */

/*      ヒーローエリア */
.hero-wrapper {
	padding: 0 0 130px 0;
	}
@media screen and (orientation: portrait) {	/* 縦長の場合 */
	.hero-img {
		width: 85.4%;
		height: auto;
		margin: var(--topgap) var(--sidegap) 0 auto;
	}
}
@media screen and (orientation: landscape) {	/* 横長の場合 */
	.hero-img {
		width: auto;
		height: calc(100vh - 200px);
		min-height: 500px;
		margin: var(--topgap) var(--sidegap) 0 auto;
	}
}
img.hero-title {
	width: 23cqw;
	height: auto;
	top: 34px;
	/* top: 50px; */
	left: -16px;
	}
img.hero-venue {
	width: auto;
	height: 62px;
	bottom: 38px;
	right: var(--sidegap);
	}
.hero-img img.copyright {
	right: -12px;
	width: 7px;
	}

/*      ニュースエリア */
ul.news-list > li {
	width: 25cqw;
	padding: 0 0 0 0;
	margin: 0 2em 0 0;
	}
.news-list-deta {
	flex-direction: row;
	}
time.news-list-date {
	font-size: 0.85em;
	line-height: 1.5;
	margin: 0 0 0.5em 0;
	}
ul.news-list-tag {
	margin: 0 0 0 auto;
	justify-content: flex-end;
	}
ul.news-list-tag li {
	margin: 0 0 0 0.25em;
	}

ul.news-list > li a .news-list-text h3 {
	margin: 0.75em 0 0 0;
	}

.newscontroller,
.eventcontroller,
.magazinecontroller,
.bannercontroller {
	padding: 0 var(--sidegap) 0 0;
	}
.newscontroller .btn-go a,
.eventcontroller .btn-go a,
.magazinecontroller .btn-go a,
.bannercontroller .btn-go a {
	margin-left: 1rem;
	}
.swiper-pagination-bullet {
	width: 2rem;
	height: 0.4rem;
	margin: 0 1rem 0 0;
	}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 5rem;
	}

.event-list-wrapper,
.magazine-list-wrapper {
	margin-right: var(--sidegap);
	}

.eventcontroller .swiper-pagination,
.eventcontroller .btn-go .yaji-prev,
.eventcontroller .btn-go .yaji-next,
.magazinecontroller .swiper-pagination,
.magazinecontroller .btn-go .yaji-prev,
.magazinecontroller .btn-go .yaji-next {
	display: none;
	}

/*      バナーリンク */
.banner-wrapper {
	padding: 2em 0 2em 2em;
	}
ul.banner-list li {
	width: 20cqw;
	padding: 0 2em 0 0;
	}
ul.banner-list li.slidenone {
	width: 25%;
	}
ul.banner-list li p {
	font-size: 0.7em;
	}

/*      イベントエリア */
.magazine-list-wrapper ul.news-list,
.home ul.info-item-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.magazine-list-wrapper ul.news-list > li,
.home ul.info-item-list > li {
	width: 23%;
	flex-grow: 0;
	flex-shrink: 1;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	height: auto;
	}

/*      アバウトエリア */
.contents-about-all {
	padding: 6cqw 0 6cqw 0;
	background-size: 73vw;
	background-position: 42vw center;
	}
.about-wrapper {
	width: 60%;
	padding: 0 0.75em 0 0;
	margin: 0 0 0 0;
	position: relative;
	}
.mov-caption {
	position: absolute;
	top: 0;
	right: 0;
	transform: translateX(100%);
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.mov-caption p {
	font-size: 0.85em;
	line-height: 1.5;
	}

/*      コンテンツエリア */
.contents-programs-all {
	display: flex;
	flex-wrap: nowrap;
	}
.contents-programs-title {
	width: 50%;
	padding-left: var(--sidegap);
	margin: 0 0 0 0;
	align-items: center;
	background-color: transparent;
	}
.contents-programs-main {
	width: 50%;
	padding: 0 0 0 0;
	}
.contents-programs-title p {
	border-top: none;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.contents-programs-title.order {
	order: 2;
	padding-left: 0;
	padding-right: var(--sidegap);
	}
.contents-programs-main.order {
	order: 1;
	}

.programs-title {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 auto;
	}
.programs-title p {
	border-top: none;
	padding: 0.5em 15% 3em 0;
	margin: 0.5em 0 0 0;
	}
.order .programs-title {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0 auto 0 0;
	}
.order .programs-title p {
	border-top: none;
	padding: 0.5em 0 3em 15%;
	margin: 0.5em 0 0 0;
	}
.order .item-right {
	text-align: right;
	padding: 0 0 0 15%;
	}

/* - TB ニュース - */
/*      一覧 */
ul.news-item-list > li {
	width: 31%;
	padding: 0 0 0 0;
	margin: 0 0 3em 0;
	height: auto;
	}
ul.news-item-list::after {
	display: block;
    content:"";
    width: 31.5%;
	}

/*      詳細 */

/* - TB プレス - */
/*      画像貸し出し */
/*      画像貸し出しフォーム */
ul.dl-photo-list li {
	width: 24%;
	padding: 0.75em 0.5em 0.5em 0.5em;
	}
ul.dl-photo-list.nofloat {
	flex-wrap: nowrap;
	}
ul.dl-photo-list.nofloat li.dl-photo-item {
	width: 32%;
	}
ul.dl-photo-list li.dl-photo-item figcaption {
	font-size: 0.9em;
	/* height: 3em; */
	}
.form-check-dl-all.nofloat {
	padding: 0 0 0 25.5%;
	}

ul.dl-photo-list li.dl-photo-item:nth-child(55) {
	margin-right: calc(4% / 3 * 2 + 48%);
	}
ul.dl-photo-list li.dl-photo-item:nth-child(65) {
	margin-right: calc(4% / 3 * 2 + 72%);
	}

.step-ul li {
	flex-grow: 1;
	flex-basis: 0;
	text-align: center;
	position: relative;
	padding: 0 40px 0 20px;
	line-height: 46px;
	}
.step-ul li:first-child {
	padding: 0 40px 0 30px;
	}
.step-ul li:last-child {
	padding: 0 30px 0 20px;
	}
.step-ul li span {
	font-size: 84%;
	display: inline-block;
	}
.step-ul li::before,
.step-ul li::after {
	position: absolute;
	left: -10px;
	display: block;
	content: '';
	width: 24px;
	height: 24px;
	}
.step-ul li span.sp-hidden {
	display: inline-block;
	}

dl.dl-table {
	width: 100%;
	padding: 1em 0 0 0;
	margin: 0 0 3em 0;
	display: flex;
	flex-wrap: wrap;
	}
dl.dl-table dt {
	padding: 0.25em 0.5em 0 0;
	margin: 0 0 1.5em 0;
	width: 25.5%;
	line-height: 1.3;
	}
dl.dl-table dd {
	padding: 0 0 0.5em 0;
	margin: 0 0 1.5em 0;
	width: 74.5%;
	}

dl.dl-table dt.nofloat {
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	width: 100%;
	}
dl.dl-table dd.nofloat {
	padding: 0 0 0 0;
	margin: 0 0 3em 0;
	width: 100%;
	}

.form-check-dl-all .check-box {
	margin: 0.75em 0.5em 1em 0.5em;
	}

.form-check-dl-all .check-box::before {
	top: 0em;
	left: -0.25em;
	width: 1.5em;
	height: 0.75em;
	}
.form-check-dl-all .check-box::after {
	top: -0.4em;
	left: -0.5em;
	width: 2em;
	height: 2em;
	}

.dl-photo-item .check-box::before {
	top: -0.15em;
	left: -0.2em;
	width: 1.5em;
	height: 0.75em;
	}
.dl-photo-item .check-box::after {
	top: -0.6em;
	width: 2em;
	height: 2em;
	}

/*      プレスリリース */
ul.press-item-list > li {
	padding: 1em 0 3em 0;
	margin: 0 0 0 0;
	}

/* - TB ご利用にあたって - */

/* - TB お問い合わせ - */
#at_map {
	height: 430px;
	}

/* - TB 開催概要 - */
/*      テーマ／コンセプト */
p.lead {
	font-size: 100%;
	}

/*      企画体制 */
.curator-all {
	padding: 0.5em 0 0 0;
	}
.curator-img {
	width: 120px;
	padding: 0 0 0 0;
	margin: 0 1em 0 0;
	}
.curator-name-all {
	width: calc(100% - 150px);
	}
.curator-name-all span.curator-name {
	font-size: 1.2rem;
	padding: 0 0 0.25em 0;
	}
.photo-caption {
	width: 140px;
	position: absolute;
	bottom: -36px;
	left: 0;
	}
.photo-caption br {
	display: block;
	}
p.curator-p {
	padding-top: 1em;
	padding-left: 150px;
	margin: 0 0 0 0;
	}

dl.staff-dl dd {
	padding-left: 150px;
	}

/*      キービジュアル */
.author-photo-caption {
	font-size: 1rem;
	width: 140px;
	position: absolute;
	bottom: -36px;
	left: 0;
	}
.author-photo-caption br {
	display: block;
	}

.typeset {
	width: 100%;
	padding: 4em 4em 2.5em 4em;
	margin: 2em 0 2em 0;
	background-color: var(--color-white);
	}

p.author-p {
	padding-left: 150px;
	margin: 0 0 1em 0;
	line-height: 1.6;
	}

.design-staff {
	width: 32%;
	padding: 0 1em 0 0;
	}

/* - TB これまでの「あいち」 - */
dl.dl-table-noborder {
	display: flex;
	flex-wrap: wrap;
	}
dl.dl-table-noborder > dt {
	width: 12em;
	padding: 0 0 0 0;
	margin: 0 2em 0 0;
	text-align: left;
	position: relative;
	}
dl.dl-table-noborder > dd {
	flex: 1;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder-inner {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder-inner > dt {
	width: 100%;
	padding: 0.25em 0 0.25em 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder-inner > dd {
	padding: 0 0 0.75em 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder > dt img {
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
	}
ul.btn-ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
ul.btn-ul > li {
	width: 48%;
	padding: 0.5em 0 0.5em 0;
	}
ul.btn-ul > li a {
	display: inline-block;
	width: 100%;
	margin: 0 0 0 0;
	}

/* - TB 協賛 - */
/* - TB アクセス - */
.access-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
.accordion-item {
	width: 48%;
	}
details.bottomline {
	border-bottom: none;
	}
details:last-of-type {
	border-bottom: 1px dashed var(--color-darkgray);
	}

/* - TB 会場 - */
p.venue-map {
	width: 74%;
	margin: 0 auto 0 auto;
	}
p.venue-map img {
	width: 100%;
	height: auto;
	}

/* - TB 大学連携 - */
.ala-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0.5em 0 0 0;
	}
.ala-content {
	width: 50%;
	padding: 0 0 0 0;
	}
.ala-img {
	width: 43%;
	padding: 0 0 1.75em 0;
	}
dl.univ dt.th {
	width: 25%;
	}
dl.univ dd.th {
	width: calc(100% - 25%);
	}
dl.univ dt.univ-name {
	width: 25%;
	}
dl.univ dd.univ-period {
	width: calc(100% - 25%);
	}

/* - TB ポップアップ - */
.pop-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0.5em 0 0 0;
	}
.pop-content {
	width: 40%;
	padding: 0 0 0 0;
	}
.pop-img {
	width: 60%;
	padding: 0 0 1.75em 0;
	justify-content: flex-end;
	}

.short .pop-content {
	width: 70%;
	padding: 0 0 0 0;
	}
.short .pop-img {
	width: 30%;
	padding: 0 0 1.75em 0;
	justify-content: flex-end;
	}
.short .pop-img span {
	width: 100%;
	padding: 0 0 0 0.5em;
	}

.pop-img span {
	width: 50%;
	padding: 0 0 0 0.5em;
	}
h4.pop-h4 + p {
	padding: 0 0 1.75em 0;
	}

.collabo-lead-right.all-wide .obuimg {
	width: 100%;
	padding: 0 0 0.5em 0;
	}
.collabo-lead-right.all-wide .obuimg + .obuimg {
	padding: 0 0 0 0;
	}

h4.pop-h4 + p {
	padding: 0 0 1.75em 0;
	}

.btn-down {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	}

/* - TB 展示・公演 - */
/*      モーダル */
ul.sub-link.toppage li {
	margin-left: auto;
	margin-right: var(--sidegap);
	}
/*      一覧 */
ul.artist-item-list > li {
	width: 31%;
	padding: 0 0 0 0;
	margin: 0 0 2em 0;
	height: auto;
	}
ul.artist-item-list::after {
	display: block;
	content:"";
	width: 31.5%;
	}
ul.artist-item-list::before {
	display: block;
	content:"";
	width: 31.5%;
	order: 1;
	}

ul.lead-ul {
	padding: 3em 0 0 0;
	}

/*      詳細 */
.artist-item {
	width: 48%;
	}
.artist-item-wide {
	width: 100%;
	}

ul.info-item-list > li {
	width: 31%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	height: auto;
	}
ul.info-item-list::after {
	display: block;
    content:"";
    width: 31.5%;
	}

.artist-sub-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.artist-sub-wrapper + .artist-sub-wrapper {
	padding-top: 3em;
	}
.artist-sub-txt {
	width: 72%;
	padding: 0 2em 0 0;
	margin: 0 0 0 0;
	}
.artist-sub-txt p {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.artist-sub-img {
	width: 28%;
	}
.artist-sub-img img.tall {
	width: 80%;
	}

.accordion-inner .artist-sub-txt-all.flex .artist-sub-img {
	width: 25%;
	padding: 0 1em 1em 0;
	}

.accordion-inner .artist-sub-wrapper {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.accordion-inner .artist-sub-txt {
	width: 72%;
	padding: 0 2em 0 0;
	margin: 0 0 0 0;
	order: 1;
	}
.accordion-inner .artist-sub-img {
	width: 28%;
	order: 2;
	}

.artist-wrapper {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.artist-txt {
	width: 72%;
	padding: 0 2em 0 0;
	margin: 0 0 0 0;
	order: 1;
	}
.artist-img {
	width: 28%;
	order: 2;
	}

/* - TB ラーニング - */
.learning-section {
	display: flex;
	flex-wrap: nowrap;
	padding: 3em 0 0 0;
	width: 100%;
	}
.learning-left {
	width: 11em;
	}
.learning-left h4 {
	padding-top: 0;
	}
.learning-right {
	width: calc(100% - 11em);
	}
.p-lead {
	padding: 0 0 0.75em 0;
	}

/* - TB チケット - */
.ticket-tab-item {
	padding: 0.75em 0 0.75em 0;
	}
.ticket-tab-item.current {
	padding: 0.75em 0 0.75em 0;
	border-radius: 10px 10px 0 0;
	}
h3.ticket-tab {
	font-size: 1.3em;
	line-height: 1.2;
	padding: 0.25em 0 0.25em 0;
	}
a h3.ticket-tab {
	padding: 0.25em 1em 0.25em 1em;
	}


.ticket-logo {
	width: 24%;
	}
.ticket-logo-no {
	width: 24%;
	}

.pa-ticket-img {
	width: 210px;
	padding: 0 2em 0 0;
	order: 1;
	}
.pa-ticket-name {
	width: calc(100% - 210px);
	order: 2;
	}
.pa-ticket-inner {
	width: calc(100% - 210px);
	margin-top: 0;
	margin-left: auto;
	order: 3;
	}

.pa-ticket-innerday {
	width: max(50%, 16em);
	padding: 0 1em 0 0;
	}
.pa-ticket-innerprice {
	width: calc(100% - max(50%, 16em));
	}

.paticket-waku-wrapper {
	justify-content: space-between;
	}
.paticket-waku {
	width: 48%;
	padding: 0 0 0.5em 0;
	margin: 0 0 1.5em 0;
	}

/* - TB ホテル - */
dl.legend-dl {
	padding: 0.75em 0 0.75em 0;
	margin: 0 0 0 0;
	}
dl.legend-dl dt {
	width: 12em;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.legend-dl dd {
	width: calc(100% - 12em);
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	}
.hotel-img {
	width: 32%;
	padding: 0 0 0 0;
	order: 1;
	}
.hotel-contents {
	width: 64%;
	padding: 0 0 0 0;
	margin: 0 0 0 4%;
	order: 2;
	}
.hotel-img img:first-child {
	margin: 0 0 0 0;
	}

/* - TB サポートが必要な方へ - */
.support-dl-wrapper dt {
	width: 50%;
	padding: 0 1em 0 1em;
	margin: 0 0 0 0;
	}
.support-dl-wrapper dd {
	width: 50%;
	padding: 0 1em 0 1em;
	margin: 0 0 0 0;
	}
ul.support-dl-ul li {
	padding: 0.75em 1em 0.75em 1em;
	margin: 0 0 0 0;
	}

/* - TB アートを巡る - */
ul.artfes-item-list > li {
	width: 48.5%;
	}

/* - TB 協賛 - */
ul.sponsor-list li {
	width: 32.333%;
	}
ul.sponsor-list-2 li {
	width: 23.875%;
	}
ul.sponsor-list-3 li {
	width: 18.8%;
	}
ul.sponsor-list-t li {
	padding: 0 1.5em 0.5em 0;
	}

#balloon {
	width: 250%;
	left: -2em;;
	}
#balloon::before {
	left: 26%;
	}
#balloon::after {
	left: 26%;
	}

/* - TB ショップ - */
.shop-lead-wrapper {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0.5em 0;
	}
.shop-lead-left {
	flex: 1;
	padding: 0 0 0 0;
	order: 1;
	}
.shop-lead-right {
	width: clamp(200px, 30%, 300px);
	padding: 0 0 0 2em;
	order: 2;
	}

.shop-lead-right.left {
	width: clamp(200px, 23%, 300px);
	padding-left: 2em;
	}



dl.shop-first-dl dt {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	width: 18em;
	padding: 0.5em 0.5em 0.5em 0;
	border-bottom: 1px solid var(--color-darkgray);
	}
dl.shop-first-dl dd {
	width: calc(100% - 18em);
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	border-bottom: 1px solid var(--color-darkgray);
	}

dl.shop-first-dl dt.food {
	font-family: var(--font-r);
	font-weight: var(--font-r-w);
	width: 12em;
	padding: 0.5em 0.5em 0.5em 0;
	border-bottom: 1px solid var(--color-darkgray);
	}
dl.shop-first-dl dd.food {
	width: calc(100% - 12em);
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 0 0;
	border-bottom: 1px solid var(--color-darkgray);
	}

/* - TB マガジン - */
.swiper-slide .mg-img .inner {
	padding: 1em 1.5em 1em 1.5em;
	}
.swiper-slide a p.mg-category.hero-txt {
	font-size: 0.7em;
	padding: 0.25em 0.35em 0.25em 0.35em;
	margin: 0 0.5em 0.4em 0;
	line-height: 1.2;
	}
p.mg-artist.hero-txt {
	font-size: 1em;
	}
h4.mg-title.hero-txt {
	font-size: 1.3em;
	line-height: 1.5;
	}
p.mg-author.hero-txt {
	font-size: 0.9em;
	}
p.mg-date.hero-txt {
	font-size: 0.8em;
	}
}

/* - PR プリント用 ---- */
@media print {



}

/* - PC（1024px以上） ---- */
@media screen and (min-width: 1025px) {
/* - PC 変数 - */
:root {
	--topgap: 110px;
	--sidegap: 66px;
	--bottomgap: 50px;
	}
/* - PC ALL - */
body {
	font-size: 1.8rem;
	line-height: 1.78;
	}
/*      スマホ非表示、PC表示 */
.tb-no {
	display: block;
	}
/* - PC 基本レイアウト - */
header {
	padding: 0 0 0 var(--sidegap);
	margin: 0 0 0 0;
	}
main {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
footer {
	padding: 4em var(--sidegap) calc(var(--margin-s) * 2) var(--sidegap);
	margin: 0 0 0 0;
	}

/* - PC ヘッダ - */

/*      ロゴ */
.header-title {
	/* width: 27rem; */
	padding: 5.0rem 0 5.0rem 0;
	}
h1 img {
	width: 31rem;
width: 36rem;
	height: auto;
	}
/*      グローバルメニュー */
.header-globalmenu {
	padding: 0 0.3rem 0.5rem 0;
	}

/*      ハンバーガー */
.header-hamburger {
	padding: 1.6rem 1.6rem 0.4rem 1.6rem;
	}
#menu-button {
	width: 3.4rem;
	height: 4rem;
	}
.bar,
.bar::before,
.bar::after {
	width: 3.4rem;
	}
.bar::before {
	transform: translateY(-0.9rem);
	}
.bar::after {
	transform: translateY(0.9rem);
	}
.menu-label {
	transform: translateY(1.1rem);
	font-size: 1rem;
	}

/* - PC メニュー - */
.main-menu {
	padding: 4em 4em 4em 4em;
	font-size: 1.9rem;
	line-height: 1.78;
	}

ul.global-list {
	width: 100%;
	}
ul.global-list > li {
	width: 23%;
	font-size: 1.9rem;
	}
ul.global-list > li.empty::after {
	content: none;
	}
ul.global-sub-list {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
ul.global-sub-list > li {
	width: 100%;
	font-size: 1.6rem;
	}

.main-menu .sub-menu-all {
	padding: 0 0 0 0;
	}

a span.ex-link {
	width: 1.5rem;
	height: 1.5rem;
	}
a span.ex-link::before {
	width: 1.5rem;
	height: 1.5rem;
	}

ul.banner-list a span.ex-link {
	width: 1.2rem;
	height: 1.2rem;
	}
ul.banner-list a span.ex-link::before {
	width: 1.2rem;
	height: 1.2rem;
	}

/*      メニューバナーエリア */
.main-menu ul.banner-list li {
	width: 18cqw;
	padding: 0 1.5em 0 0;
	}

/*      言語選択 */

/*      SNSアイコン */
ul.header-nav_sns li {
	padding: 0 0 0 0;
	margin: 0 1em 0 1em;
	width: 26px;
	height: 26px;
	}
ul.header-nav_sns li a img {
	width: 26px;
	height: 26px;
	}
.logo-menu {
	padding: 3em 0 0 0;
	}
.logo-menu a {
	display: inline-block;
	width: 16%;
	}
/*      関連サイトバナー */
ul.footer-banner_list li img.footer-banner_at {
	width: 63px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_ala {
	width: 90px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_artschallenge {
	width: 80px;
	height: auto;
	}
ul.footer-banner_list li img.footer-banner_aichiart {
	width: 68px;
	height: auto;
	}

/*      GLOBALメニュー */
ul.global-menu li {
	font-size: 1.6rem;
	padding: 0 0 0 0;
	margin: 0 0 0 1.6rem;
	}
ul.global-menu li.lang {
	padding: 0 0 0 1.6rem;
	margin: 0 0 0 1.6rem;
	}
/* - PC フッタ - */
.footer-logo img {
	width: 25rem;
	}

/*      パンくずリスト */
.breadcrumbs {
	padding: 1rem 0 1rem 0;
	}
ol.breadcrumbs_list {
	font-size: 1.4rem;
	}

/*      コピーライト */
.footer-copyright {
	margin: 0 0 0 0;
	}
.footer-copyright p {
	font-size: 1.4rem;
	}

/*      ページトップへ */
.pagetop {
	bottom: calc(var(--margin-s) + 6px);
	right: 1.2rem;
	}
.pagetop a {
	border-radius: 1.7rem;
	height: 3.4rem;
	width: 3.4rem;
	}
.pagetop a::before {
	width: 0.9rem;
	height: 0.9rem;
	top: 0.5rem;
	}

/* - PC 各部品 - */
/*      見出し */
h2 {
	padding: 0 0 0 0;
	margin: 0 0 0.5em 0;
	border-bottom: 2px solid #000;
	}
h3 {
	}
h4 {
	}
h5 {
	}

/*      リスト */
ul {
	}
ol {
	}
dl dd {
	}
/*      テーブル */


/*      サブメニュー */
.sub-menu-all {
	padding: 0 0 0 18%;
	}

/*      ページ内リンクメニュー */
.contents-link-area aside {
	position: sticky;
	top: 4em;
	}
ul.contents-link {
	padding: 0.5em 0 0 0;
	margin: 0 0 0 0;
	display: inline-block;
	}
ul.contents-link li {
	width: 100%;
	font-size: 0.8em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 1.25em 0;
	}
ul.contents-link.alphabet {
	display: flex;
	flex-wrap: wrap;
	}
ul.contents-link.alphabet li {
	width: 30%;
	font-size: 0.8em;
	line-height: 1.5;
	padding: 0 0 0 0;
	margin: 0 0 1.25em 0;
	}

/*      リンクボタン */

/* - PC 本文レイアウト - */
section {
	padding-top: 0;
	margin-top: 0;
	}
section + section {
	padding-top: 0;
	margin-top: 0;
	}
.contents-wrapper {
	padding: 2em 0 2em 0;
	}
section:first-child .contents-wrapper {
	padding: 0 0 2em 0;
	margin: 0 0 0 0;
	}

.contents-all {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	}
.contents-link-area {
	width: 18%;
	/* max-width: 28rem; */
	position: relative;
	padding: 0 2em 0 0;
	}
.contents-main-area {
	width: 82%;
	position: relative;
	padding-top: 0;
	}

/* - PC トップページ - */
/*      ヒーローエリア */
.hero-wrapper {
	padding: 0 0 130px 0;
	}
@media screen and (orientation: portrait) {	/* 縦長の場合 */
	.hero-img {
		width: auto;
		height: calc(100vh - 250px);
		margin: var(--topgap) var(--sidegap) 0 auto;
	}
	img.hero-title {
		width: 23cqw;
		height: auto;
		top: 50px;
		left: -16px;
	}
}
@media screen and (orientation: landscape) and (max-width: 1258px) {	/* 横長の場合 */
	.hero-img {
		width: auto;
		height: calc(100vh - 250px);
		margin: var(--topgap) var(--sidegap) 0 auto;
	}
	img.hero-title {
		width: 23cqw;
		height: auto;
		top: 50px;
		left: -16px;
	}
}
@media screen and (orientation: landscape) and (min-width: 1258px) {	/* 横長の場合 */
	.hero-img {
		width: auto;
		height: calc(100vh - 250px);
		min-width: 520px;
		min-height: 520px;
		margin: var(--topgap) var(--sidegap) 0 auto;
	}
	img.hero-title {
		width: 25cqw;
		height: auto;
		top: 50px;
		left: -16px;
	}
}

img.hero-venue {
	width: auto;
	height: 62px;
	bottom: 38px;
	right: var(--sidegap);
	}

/*      ニュースエリア */
ul.news-list > li {
	width: 19cqw;
	padding: 0 0 0 0;
	margin: 0 2em 0 0;
	}
time.news-list-date {
	font-size: 0.7em;
	line-height: 1.5;
	margin: 0 0 0.5em 0;
	}
ul.news-list-tag li {
	font-size: 0.65em;
	}

/*      バナーリンク */
.banner-wrapper {
	padding: 2em 0 2em 2em;
	}
ul.banner-list li {
	padding: 0 2em 0 0;
	}


/*      アバウトエリア */
.contents-about-all {
	}

/*      コンテンツエリア */

/* - PC ニュース - */
/*      一覧 */
/*      詳細 */
/* - PC プレス - */
/*      画像貸し出し */
/*      画像貸し出しフォーム */
ul.dl-photo-list li {
	width: 19%;
	margin: 0 0 0 0;
	padding: 0.75em 0.75em 0.75em 0.75em;
	}
ul.dl-photo-list.nofloat li.dl-photo-item {
	margin-left: calc(4% / 3);
	}
ul.dl-photo-list li.dl-photo-item-all h4 {
	padding: 0 0 0 0;
	margin: 1em 0 0 0;
	}

ul.dl-photo-list li.dl-photo-item:nth-child(55) {
	margin-right: calc(5% / 4 + 19%);
	}
ul.dl-photo-list li.dl-photo-item:nth-child(65) {
	margin-right: calc(5% / 4 + 19%);
	}


dt span.caution{
	vertical-align: 3px;
	}
input[type="text"], 
input[type="tel"], 
input[type="email"], 
input[type="url"], 
input[type="tel"], 
select, 
textarea {
	font-size: 1em;
	line-height: 1em;
	}

.form-check-dl-all label {
	margin: 0 0.75em 1em 0;
	padding: 0 0 0 0;
	}
.form-check-dl-all .check-box {
	margin: 0.75em 1em 1em 0.5em;
	}
.form-check-dl-all .check-box::before {
	top: -0.35em;
	left: -0.25em;
	width: 1.5em;
	height: 0.75em;
	}
.form-check-dl-all .check-box::after {
	top: -0.85em;
	left: -0.5em;
	width: 2em;
	height: 2em;
	}

.form-check-dl-all.nofloat {
	padding: 0 0 0 25.5%;
	}

ul.dl-photo-list.nofloat {
	padding: 0 0 0 13.5em;
	padding: 0 0 0 0;
	flex-wrap: nowrap;
	}
ul.dl-photo-list.nofloat li.dl-photo-item:first-child {
	margin-left: auto;
	}
ul.dl-photo-list.nofloat li.dl-photo-item {
	width: 24%;
	}
ul.dl-photo-list li.dl-photo-item figcaption {
	font-size: 0.8em;
	}
.dl-photo-item .check-box::before {
	top: -0.15em;
	left: -0.4em;
	width: 1.5em;
	height: 0.75em;
	}
.dl-photo-item .check-box::after {
	top: -0.6em;
	width: 2em;
	height: 2em;
	}

.form-check-dl-all input.hoka {
	width: 14em;
	}

/*      プレスリリース */

/* - PC ご利用にあたって - */

/* - PC お問い合わせ - */
#at_map {
	height: 460px;
	}

/* - PC 開催概要 - */
/*      テーマ／コンセプト */
/*      企画体制 */
.curator-name-all span.curator-name {
	font-size: 1.4rem;
	}

/*      キービジュアル */

/* - PC これまでの「あいち」 - */

/* - PC 協賛 - */
/* - PC アクセス - */
/* - PC 会場 - */
/* - PC 大学連携 - */
/* - PC ポップアップ - */
/* - PC 展示・公演 - */
/*      一覧 */

/*      詳細 */
ul.artists-data-ul {
	padding: 0.5em 0 2em 0;
	}

/* - PC ラーニング - */

/* - PC チケット - */
.ticket-q {
	padding-left: 8rem;
	text-indent: -8rem;
	}
.ticket-a {
	padding-left: 8rem;
	text-indent: -8rem;
	}
.ticket-q span.q,
.ticket-a span.a {
	width: 8rem;
	}

.pa-ticket-img {
	width: max(26%, 210px);
	padding: 0 2em 0 0;
	}
.pa-ticket-name {
	width: calc(100% - max(26%, 210px));
	}
.pa-ticket-inner {
	width: calc(100% - max(26%, 210px));
	}


/* - PC ホテル - */

/* - PC サポートが必要な方へ - */

/* - PC ショップ - */

.tempora-img-all img {
	width: auto;
	height: min(21vw, 410px);
	}

/* - PC マガジン - */
.mg-contents h4,
.mg-contents h4:has(.aki) {
	padding-right: 20%;
	}
.mg-contents h5,
.mg-contents h5:has(.aki) {
	padding-right: 20%;
	}
.mg-contents h6 {
	padding-right: 20%;
	}
.mg-contents p {
	padding-right: 20%;
	}
.mg-contents p.inimg:has(img) {
	padding-right: 20%;
	}

.mg-contents .lead {
	margin: 0.5em 20% 2.5em 0;
	}
.mg-contents .waku {
	margin: 0.5em 20% 2.5em 0;
	}
.mg-contents .waku.quo {
	margin: 0.5em 20% 2.5em 3em;
	}
.mg-contents ul.mg-footnote-ul.rightp {
	padding-right: 20%;
	}

.mg-contents .columnflex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 2em;
	}
.mg-contents .columnflex-l,
.mg-contents .columnflex-r {
	width: 48%;
	padding-bottom: 0;
	}
.mg-contents .columnflex-l-tall {
	width: 30%;
	padding-bottom: 0;
	}
.mg-contents .columnflex-r-tall {
	width: 66%;
	padding-bottom: 0;
	}

.mg-contents .wakuflex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 0;
	}
.mg-contents .wakuflex-l,
.mg-contents .wakuflex-r {
	width: 48%;
	padding-bottom: 0;
	}
.mg-contents .wakuflex-l-tall {
	width: 66%;
	padding-bottom: 0;
	}
.mg-contents .wakuflex-r-tall {
	width: 30%;
	padding-bottom: 0;
	}

.mg-contents .column-waku ul.link-btn li a {
	font-size: 0.76em;
	}

.mg-contents .waku.spot {
	margin: 2em 20% 1em 0;
	}

}

/* - PC-WIDE（1440px以上） ---- */
@media screen and (min-width: 1580px) {
/* - PCw変数 - */
:root {
	}
/* - PCwALL - */
body {
	font-size: 1.25vw;
	line-height: 1.78;
	}

/* - PCw基本レイアウト - */
header {
	padding: 0 0 0 var(--sidegap);
	margin: 0 0 0 0;
	}

/*      グローバルメニュー */
.header-globalmenu {
	padding: 0 0.6rem 0.3rem 0;
	}
/*      ハンバーガー */
.header-hamburger {
	padding: 1.6rem 1.6rem 0.3rem 1.6rem;
	}
.menu-label {
	transform: translateY(1.2rem);
	font-size: 1rem;
	}

/* - PCwメニュー - */
a span.ex-link {
	width: 1.6rem;
	height: 1.6rem;
	}
a span.ex-link::before {
	width: 1.6rem;
	height: 1.6rem;
	}

/* - PCw各部品 - */
/*      リンクボタン */

/* - PCwトップページ - */
/*      ニュースエリア */
ul.news-list-tag li {
	font-size: 0.55em;
	}
/*      バナーリンク */
.banner-wrapper {
	padding: 2.5em 0 2.5em 2.5em;
	}
ul.banner-list li {
	width: 19cqw;
	padding: 0 2.5em 0 0;
	}
ul.banner-list li.slidenone {
	width: 20%;
	}
/*      ニュースエリア */
ul.news-list > li {
	width: 17cqw;
	}
/* - PCwニュース - */
/*      一覧 */
ul.news-item-list > li {
	width: 23%;
	padding: 0 0 0 0;
	margin: 0 0 3em 0;
	height: auto;
	}
ul.news-item-list::after {
	display: block;
    content:"";
    width: 23.5%;
	}
ul.news-item-list::before {
	display: block;
    content:"";
    width: 23.5%;
	order: 1;
	}
/*      詳細 */

/* - PCw展示・公演 - */
/*      一覧 */
ul.artist-item-list > li {
	width: 23%;
	padding: 0 0 0 0;
	margin: 0 0 2em 0;
	height: auto;
	}
ul.artist-item-list::after {
	display: block;
	content:"";
	width: 23.5%;
	}
ul.artist-item-list::before {
	display: block;
	content:"";
	width: 23.5%;
	order: 1;
	}
/*      詳細 */
ul.info-item-list > li {
	width: 23%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	height: auto;
	}
ul.info-item-list::after {
	display: block;
    content:"";
    width: 23.5%;
	}
ul.info-item-list::before {
	display: block;
    content:"";
    width: 23.5%;
	order: 1;
	}
/* - PCwチケット - */
.ticket-logo {
	width: 19%;
	}
.ticket-logo-no {
	width: 19%;
	}
.pa-ticket-img {
	width: 26%;
	padding: 0 2em 0 0;
	}
.pa-ticket-name {
	width: calc(100% - 26%);
	}
.pa-ticket-inner {
	width: calc(100% - 26%);
	}
/* - PCwグッズ - */
ul.info-item-list > li.goods-item {
	width: 31%;
	}

/* - PCwマガジン - */

}
