@charset "utf-8";
/* CSS Document */
@import url("_variables.css");
/* ===========================
Common CSS
============================== */

/*=====================
INDEX

-------------------------------------
1.大枠
2.ユーティリティ
3.ヘッダ（上部）
4.メインビジュアル
5.コンテンツ枠
6.特別コンテンツ
7.サブコンテンツ
8.メインコンテンツ
9.フッタ
10.上へ戻るボタン
11.トップページ（top）
12.プロフィールページ（about）
13.グレースホールページ（grace）
14.海外公演ページ（kaigai）
15.マリーサロンページ（salon）
16.友の会ご入会のご案内ページ（bosyu）
======================*/
/*=====================
16.友の会ご入会のご案内ページ（bosyu）
======================*/
/* ---- Media Query : PC first ---- */
@media screen and (max-width : 3839.99px){/* xxxl */}
@media screen and (max-width : 2559.99px){/* xxl */}
@media screen and (max-width : 1919.99px){/* xl */}
@media screen and (max-width : 1279.99px){/* lg */}
@media screen and (max-width : 919.99px){/* sblg */}
@media screen and (max-width : 767.99px){/* md */}
@media screen and (max-width : 567.99px){/* sm */}
@media screen and (max-width : 479.99px){/* xs */}
@media screen and (max-width : 359.99px){/* xxs */}

/*=====================
1.大枠
======================*/
html, body {
	
}
html {
	font-size: 62.5%;
}
body {
	background-color: #000;
	font-family: var(--ff_sans-serif);
	color: #fff;
}
header, footer, article, main, aside, section, div, table, ol, ul, dl, h1, h2, h3, h4, h5, h6, p {
	box-sizing: border-box;
}
h1 {
	font-size: 2.8rem;
}
h2 {
	font-size: 2.4rem;
}
h3 {
	font-size: 2rem;
}
h4 {
	font-size: 1.6rem;
}
p, h5, li, th, td {
	font-size: 1.4rem;
	text-align: justify;
	line-height: 1.4;
}
h6 {
	font-size: 1.3rem;
}
#wrapper {
	display: grid;
	grid-template-rows: auto 1fr auto;
	justify-content: stretch;
	min-height: 100vh;
}
/*=====================
2.ユーティリティ
======================*/
.section01 {
	margin-top: 3em;
}
.ff_sans-serif {
	font-family: var(--ff_sans-serif);
}
.ff_serif {
	font-family: var(--ff_serif);
}
.bold {
	font-weight: bold;
}
.i-block {
	display: inline-block;
}
.egt-sblg-block,
.egt-sm-block {
	display: block;
}
.egt-sm-inline {
	display: inline;
}
.elt-md-block,
.elt-xs-block {
	display: none;
}
.fs-small {
	font-size: 1.3rem;
}
.fs-r-large {
	font-size: 1.5rem;
}
.fs-large {
	font-size: 1.6rem;
}
.fs-x-large {
	font-size: 1.8rem;
}
.fs-xx-large {
	font-size: 2rem;
}
.fs-xxx-large {
	font-size: 2.4rem;
}
.fs-x4-large {
	font-size: 2.8rem;
}
.page-title {
	font-size: 2rem;
	font-weight: bold;
	color: var(--arc_rose-red);
}
.section01-ttl {
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
}
.list-has-heading {
	list-style-type: none;
	padding-left: 0;
}
.list-has-heading .list-has-heading-item {
	display: grid;
}
.list-has-heading.heading-4em .list-has-heading-item {
	grid-template-columns: 4.5em 1em 1fr;
}
.list-has-heading .list-has-heading-item .title {
	grid-column: 1 / 2;
}
.list-has-heading .list-has-heading-item .separator {
	grid-column: 2 / 3;
}
.list-has-heading .list-has-heading-item .detail {
	grid-column: 3 / -1;
}
.tbl-border1px,
.tbl-border2px {
	border-collapse: collapse;
}
.tbl-border1px th,
.tbl-border1px td {
	border: #fff solid 1px;
	padding: 4px;
	text-align: left;
}
.tbl-border2px th,
.tbl-border2px td {
	border: #fff solid 2px;
	padding: 4px;
	text-align: left;
}
.wrap-constrained-area .title,
.wrap-constrained-area .period,
.wrap-constrained-area .place,
.wrap-constrained-area .detail,
.wrap-constrained-area p,
.wrap-constrained-area li,
.wrap-constrained-area th,
.wrap-constrained-area td,
.wrap-constrained {
	word-break: keep-all;
	overflow-wrap: break-word;
	overflow-wrap: anywhere;
}
@media screen and (max-width : 919.99px){/* sblg */
	.egt-sblg-block {
		display: none;
	}
	.elt-md-block {
		display: block;
	}
}
@media screen and (max-width : 479.99px){/* xs */
	.egt-sm-block {
		display: none;
	}
	.elt-xs-block {
		display: block;
	}
	.egt-sm-inline {
		display: none;
	}
}
/*=====================
3.ヘッダ（上部）
======================*/
#header {
	width: 100%;
	border-bottom: #fff solid 1px;
	background: linear-gradient(180deg, var(--arc_dark-charcoal), var(--arc_thic-charcoal) 100%);
	padding-block: 20px 8px;
}
#header_inner {
	display: grid;
	grid-template-columns: 1fr auto auto;
	grid-template-rows: auto auto;
	gap: 10px 20px;
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
#site-title-area {
	grid-column : 1 / 2;
	grid-row: 1 / -1;
	padding-left: 15px;
}
#site-title-area .site-copy {
	margin-block: 0 0.5em;
	font-size: 1.3rem;
	color: var(--arc_cream);
}
#site-title-area .site-title {
	margin-block: 0.365em 0;
}
#site-title-area .site-title img {
	max-width: 100%;
}
#site-title-area .site-title a img {
	transition: all 0.3s;
}
#site-title-area .site-title a:hover img {
	filter: brightness(1.2) contrast(1.1);
}
#site-title-area .site-title_en {
	margin-block: 0.25em 0.5em;
}
#site-title-area .site-title_en img {
	max-width: 80%;
}
#site-title-area #performance-group-list {
	display: inline-grid;
	list-style: none;
	grid-template-columns: auto auto;
	grid-auto-rows: auto;
	column-gap: 1.5em;
	row-gap: 4px;
	margin-block: 0.25em 0;
	padding-left: 0;
	font-size: 1.4rem;
}
#site-title-area #performance-group-list .performance-group-item {
	font-size: 1.4rem;
	color: var(--arc_ocher);
}
#tel-area--pc {
	grid-column : 3 / 4;
	grid-row: 1 / 2;
	padding-right: 15px;
}
#tel-area--pc .tel-title {
	margin-block: 0 0.25em;
	font-size: 1.4rem;
}
#tel-area--pc .tel-num {
	margin-block: 0;
	font-family: "Yantramanav", sans-serif;
	font-weight: 700;
  font-style: normal;
	font-size: 3rem;
}
#header-link-area--pc {
	margin-top: -15px;
	display: flex;
	grid-column : 2 / 4;
	grid-row: 2 / 3;
}
#header-link-area--pc #header-link {
	align-self: flex-end;
	position: relative;
	top: 9px;
	display: flex;
	list-style: none;
	border-right: #fff solid 1px;
	margin-bottom: 0;
	padding-left: 0;
}
#header-link-area--pc #header-link .header-link-item {
	border-left: #fff solid 1px;
	font-size: 1.4rem;
	text-align: center;
}
#header-link-area--pc #header-link .header-link-item a {
	display: block;
	background: var(--arc_dark-charcoal);
	padding: 0.75em;
	min-width: 8em;
	color: #fff;
	text-decoration: none;
	transition: all 0.3s;
}
#header-link-area--pc #header-link .header-link-item a:hover {
	background: linear-gradient(0deg, var(--arc_ocher) 0%, var(--arc_ocher--lighter) 88%, var(--arc_ocher--lighter) 100%) ;
	color: var(--arc_cream);
	text-decoration: underline;
}
#header-humberger--sp {
	display: none;
}
#header-link--sp {
	display: none;
}
@keyframes slideLeft {
	0% {
		width: 0;
	}
	100% {
		width: calc(100vw - 15px);
	}
}
@media screen and (max-width : 919.99px){/* sblg */
	#site-title-area #performance-group-list {
		display: none;
	}
	#header-link-area--pc #header-link .header-link-item {
		min-width: auto;
	}
} 
@media screen and (max-width : 767.99px){/* md */
	#header_inner {
		grid-template-columns: 1fr auto ;
	}
	#tel-area--pc,
	#header-link-area--pc {
		display: none;
	}
	#header-humberger--sp {
		position: relative;
		display: block;
		grid-column: 2 / 3;
		grid-row: 1 / -1;
		padding-right: 15px;
	}
	#toggle-button {
		position: relative;
		margin-block: 0;
		border: #fff solid 1px;
		border-radius: 6px;
		width: 40px;
		height: 40px;
		line-height: 1px;
		z-index: 30;
	}
	#toggle-button::before {
		position: absolute;
		top: 18%;
		left: 15%;
		content: '';
		display: block;
		border: #fff solid 2px;
		border-radius: 2px;
		background-color: #fff;
		width: 70%;
		transform: translateX(-2px);
	}
	#toggle-button::after {
		position: absolute;
		bottom: 18%;
		left: 15%;
		content: '';
		display: block;
		border: #fff solid 2px;
		border-radius: 2px;
		background-color: #fff;
		width: 70%;
		transform: translateX(-2px);
	}
	#toggle-button > span {
		display: block;
		position: absolute;
		top: 50%;
		left: 15%;
		border: #fff solid 2px;
		border-radius: 2px;
		background-color: #fff;
		width: 70%;
		line-height: 0;
		transform: translateX(-2px) translateY(-2px);
	}
	#toggle-button.opened::before {
		top: 50%;
		width: 82%;
		transform: translateX(-4px) translateY(-2px) rotate(45deg);
	}
	#toggle-button.opened::after {
		top: auto;
		bottom: 50%;
		width: 82%;
		line-height: 0;
		transform: translateX(-4px) translateY(2px) rotate(-45deg);
	}
	#toggle-button.opened > span {
		display: none;
	}
	#header-link--sp.active {
		position: absolute;
		display: block;
		top: -20px;
		right: 0;
		padding-top: 72px;
		width: calc(100vw - 15px);
		max-height: 100vh;
		max-height: 100dvh;
		overflow-y: auto;
		background-color: var(--arc_dark-charcoal--translucent01);
		z-index: 20;
		animation: slideLeft 0.25s ;
	}
	#header-link--sp.active #header-link-list--sp {
		list-style-type: none;
		padding-left: 0;
	}
	#header-link--sp.active #header-link-list--sp .header-link-item--sp {
		display: grid;
		grid-template-columns: auto 1fr auto;
		align-items: center;
		border-top: #fff dashed 1px;
	}
	#header-link--sp.active #header-link-list--sp .header-link-item--sp::before {
		display: block;
		content: '　・';
		color: #fff;
	}
	#header-link--sp.active #header-link-list--sp .header-link-item--sp::after {
		display: block;
		content: ' ＞　';
		color: #fff;
	}
	#header-link--sp.active #header-link-list--sp .header-link-item--sp > a {
		display: block;
		padding-top: 0.875em;
		padding-bottom: 0.875em;
		font-size: 1.6rem;
		color: #fff;
	}

}
/*=====================
4.メインビジュアル
======================*/
#trunk {
	background: linear-gradient(0deg, var(--arc_thic-charcoal--trunk), var(--arc_dark-charcoal--trunk) 100%);
	/* height: 200vh; */ /* 上へ戻るボタン実装後に消す */
}
#trunk > div {
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
#cover {
	width: 100%;
	aspect-ratio: 1000 / 560;
}
 #cover.photo01 {
	background: url("../../asset/img/cover/photo.jpg") no-repeat center right/cover  ;
}
 #cover.photo_kaigai {
	background: url("../../asset/img/cover/photo_kaigai.jpg") no-repeat center center/cover  ;
}
 #cover.photo_about {
	background: url("../../asset/img/cover/photo_about.jpg") no-repeat center center/cover  ;
}
 #cover.photo_bosyu {
	background: url("../../asset/img/cover/photo_bosyu.jpg") no-repeat center center/cover  ;
}
 #cover.photo_salon {
	background: url("../../asset/img/cover/photo_salon.jpg") no-repeat center center/cover  ;
}
#cover_inner {
	display: flex;
	align-items: flex-end;
	width: 100%;
	height: 100%;
}
#cover-menu-list {
	display: flex;
	justify-content: space-evenly;
	list-style-type: none;
	width: 100%;
	padding-left: 0;
}
#cover-menu-list img {
	max-width: 100%;
	height: auto;
}
#cover-menu-list a {
	display: block;
}
#cover-menu-list a img {
	transition: all 0.3s;
}
#cover-menu-list a:hover img {
	filter: brightness(1.2) contrast(1.1);
}
@media screen and (max-width : 767.99px){/* md */
	#cover-menu-list {
		flex-wrap: wrap;
		width: 66%;
		max-height: 100%;
	}
	#cover-menu-list .cover-menu-item {
		width: 50%;
	}
}
/*=====================
5.コンテンツ枠
======================*/
#middle {
	margin-top: 20px;
	border-image: url("../../asset/img/common/middle_border.png") 47 42 0 / 47px 42px 0;
	padding: 30px 24px 6px;
}
#middle_inner {
	background-color: var(--arc_dark-charcoal);
	padding: 6px;
}
#content_wrapper {
	display: grid;
	grid-template-columns: 31.91489% 65.95744%;
	column-gap: 2.1739%;
}
@media screen and (max-width : 767.99px){/* md */
	#middle {
		border-image: url("../../asset/img/common/middle_border_sp.png") 47 42 0 / 25px 22px 0;
		padding: 14px 12px 6px;
	}
	#content_wrapper {
		grid-template-columns: 100%;
		grid-template-rows: auto auto;
		column-gap: 0;
		row-gap: 20px;
	}
}
/*=====================
6.特別コンテンツ
======================*/
#overview {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
	border-bottom: var(--arc_ocher--lighter) solid 1px;
}
/*=====================
7.サブコンテンツ
======================*/
#sub {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}
#sub > div {
	margin-bottom: 3.333%;
}
#sub > div a {
	display: block;
}
#sub > div img {
	display: block;
	max-width: 100%;
	height: auto;
}
#sub > div a img {
	transition: all 0.3s;
}
#sub > div a:hover img {
	filter: brightness(1.2) contrast(1.1);
}
#sub .sub_map {
	margin-top: 20px;
}
#sub .sub_map iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
}
#sub .sub_banner.price {
	margin-top: 20px;
}
@media screen and (max-width : 767.99px){/* md */
	#sub {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 12px;
		grid-column: 1 / -1;
		grid-row: 2 / 3;
		margin-right: auto;
		margin-left: auto;
		max-width: 612px;
	}
	#sub .sub_banner {
		width: calc(50% - 6px);
		max-width: 300px;
	}
	#sub .sub_map {
		margin-top: 0;
		width: calc(50% - 6px);
		max-width: 300px;
	}
	#sub .sub_banner.price {
		margin-top: 0;
	}
}
@media screen and (max-width : 479.99px){/* xs */
	#sub .sub_banner {
		margin-right: auto;
		margin-left: auto;
		width: 100%;
	}
	#sub .sub_map {
		margin-top: 20px;
		margin-right: auto;
		margin-left: auto;
		width: 100%;
	}
}
/*=====================
8.メインコンテンツ
======================*/
#main {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
}
#main.ornamented01 {
	border: var(--arc_ocher--grayish) solid 1px;
	background: url("../img/common/main_back.png") top center no-repeat;
	padding: 6px 19px;
}
@media screen and (max-width : 767.99px){/* md */
	#main {
		grid-column: 1 / -1;
		grid-row: 1 / 2;
	}
	#main.ornamented01 {
		padding: 6px 10px;
	}
}
/*=====================
9.フッタ
======================*/

#footer {
	width: 100%;
	padding-top: 20px;
	background: linear-gradient(180deg, var(--arc_thic-charcoal--footer), var(--arc_dark-charcoal--footer) 100%);
}
#footer_inner {
	display: grid;
	grid-template-columns: auto 1fr 50%;
	grid-template-rows: auto auto;
	gap: 10px 20px;
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
#footer-emblem-area {
	padding-left: 15px;
}
#footer-emblem-area img {
	max-width: 100%;
}
#footer-address-area {
	color: var(--arc_ocher--brighter);
}
#footer-address-area .footer-address-title {
	margin-top: 0;
	font-size: 1.4rem;
	font-weight: normal;
}
#footer-address-area .footer-address-text {
	font-size: 1.4rem;
}
#footer-address-area .footer-address-text .fs-small {
	font-size: 1.2rem;
}
#footer-link-area .footer-link-button {
	margin-top: 0;
	margin-bottom: 0.75em;
}
#footer-link-area .footer-link-button a {
	transition: all 0.3s;
}
#footer-link-area .footer-link-button a:hover {
	filter: brightness(1.2) contrast(1.1);
}
#footer-performance-group-area {
	display: none;
}
#footer-copyright {
	grid-column: 1 / -1;
	grid-row: 2 / 3;
	text-align: right;
	color: var(--arc_yellowish-brown);
}
#footer-copyright .text {
	padding-inline: 15px;
	font-size: 1.4rem;
	text-align: right;
}
@media screen and (max-width : 919.99px){/* sblg */
	#footer_inner {
		grid-template-columns: auto 1fr 33%;
		grid-template-rows: repeat(3, auto) ;
	}
	#footer-performance-group-area {
		display: block;
		grid-column: 1 / -1;
		grid-row: 2 / 3;
		padding: 0 1.5em;
		text-align: center;
	}
	#footer-performance-group-area .footer-performance-group-list {
		display: inline-flex;
		justify-content: center;
		list-style-type: none;
		flex-wrap: wrap;
		column-gap: 1.5em;
		padding-left: 0;
	}
	#footer-performance-group-area .footer-performance-group-list .performance-group-item {
		font-size: 1.3rem;
		line-height: 1.4;
		color: var(--arc_ocher);
	}
	#footer-copyright {
		grid-row: 3 / 4;
	}
	#footer-copyright .text {
		text-align: center;
	}
}
@media screen and (max-width : 767.99px){/* md */
	#footer_inner {
		grid-template-columns: auto 1fr;
		grid-template-rows: repeat(4, auto) ;
	}
	#footer-address-area {
		padding-right: 15px;
	}
	#footer-link-area {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		grid-column: 1 / -1;
		grid-row: 2 / 3;
		padding: 0 15px;
		column-gap: 1.5em;
	}
	#footer-performance-group-area {
		grid-row: 3 / 4;
	}
	#footer-copyright {
		grid-row: 4 / 5;
	}
	
}
/*=====================
10.上へ戻るボタン
======================*/
#to-pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 36px;
	height: 36px;
	cursor: pointer;
}
#to-pagetop a {
	position: relative;
	display: block;
	width: 100%;
	height:100%;
	border-radius: 50%;
	background-color: rgba(255,255,255,0.75);
	transition: all 0.3s;
	z-index: 100;
}
#to-pagetop a::before {
	position: absolute;
	display: block;
	content: '';
	top: 45%;
	left: 15%;
	width: 40%;
	height: 2px;
	background-color: var(--arc_thic-charcoal--footer);
	transform: rotate(-40deg);
}
#to-pagetop a::after {
	position: absolute;
	display: block;
	content: '';
	top: 45%;
	right: 15%;
	width: 40%;
	height: 2px;
	background-color: var(--arc_thic-charcoal--footer);
	transform: rotate(40deg);
}
#to-pagetop a:hover {
	background-color: rgba(255,255,255,0.5);
}
@media screen and (max-width : 767.99px){/* md */
	#to-pagetop {
		width: 24px;
		height: 24px;
	}
	#to-pagetop a::before {
		top: 40%;
		left: 15%;
		width: 40%;
		height: 2px;
	}
#to-pagetop a::after {
		top: 40%;
		right: 15%;
		width: 40%;
		height: 2px;
	}
}
/*=====================
11.トップページ（top）
======================*/
.top #overview_inner {
	display: grid;
	grid-template-columns: auto 1fr;
	margin-top: 6px;
	margin-bottom: 6px;
	width: 100%;
	max-width: 880px;
	border: rgb(04,03,03) solid 11px;
	background: linear-gradient(0deg, rgb(52,29,32) 0%, rgb(47,28,33) 8%, rgb(47,28,33) 92%, rgb(52,29,32) 100%);
	padding: 4px;
}
.top #overview_inner figure {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	margin: 0 10px;
}
.top #overview_inner #overview_text-area {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	padding: 0 0 0 6px;
}
.top #overview_inner #overview_text-area .ttl {
	margin-top: 10px;
	padding-bottom: 24px;
	text-align: center;
	background: url("../../asset/img/top/line_hr01.png") bottom right no-repeat;
}
.top #overview_inner #overview_text-area .ttl .whole {
	display: inline-block;
	background-image: url("../../asset/img/top/mark_ttl01.png") , url("../../asset/img/top/mark_ttl02.png");
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
	padding: 0 34px;
	vertical-align: middle;
}
.top #overview_inner #overview_text-area .ttl .whole .chars {
	background: linear-gradient(0deg, rgb(144,134,95) 0%, rgb(246,245,242) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}
.top #overview_inner #overview_text-area .txt {
	padding-right: 6px;
	color: var(--arc_ocher--lighter);
	line-height: 1.4;
}
.top #schedule {
	margin-bottom: 20px;
	border-image: url("../../asset/img/top/schedule_back.png") 7 7 / 7px 7px  ;
	background: linear-gradient(0deg, rgb(71,60,41) 0%, rgb(131,113,92) 100%);
	padding: 7px 29px;
}
.top #schedule .ttl {
	margin-top: 0;
	margin-bottom: 0;
	border-bottom: rgb(214,196,120) solid 1px;
}
.top #schedule #schedule-list {
	list-style-type: none;
	margin-top: 4px;
	margin-bottom: 10px;
	padding-left: 0;
}
.top #schedule #schedule-list .schedule-list-item {
	border-bottom: rgb(182,174,161) dotted 1px;
	min-height: 1em; /* 後で消す */
}
.top #schedule #schedule-list .schedule-list-item:last-child {
	border-bottom: none;
}
.top #schedule #schedule-list .schedule-list-item .row {
	display: grid;
	grid-template-columns: 22% calc(78% - 10px);
	column-gap: 10px;
	margin: 4px 0;
}
.top #schedule #schedule-list .schedule-list-item p.row {
	text-align: left;
}
.top #schedule #schedule-list .schedule-list-item .row .period {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}
.top #schedule #schedule-list .schedule-list-item .row .content {
	grid-column: 2 / -1;
	grid-row: 1 / 2;
}
.top #schedule #schedule-list .schedule-list-item .row .period .year {
	display: block;
}
.top #schedule #schedule-list .schedule-list-item .row .period .date {
	display: block;
}
.top #schedule #schedule-list .schedule-list-item .row .period .time {
	display: block;
}
.top #schedule #schedule-list .schedule-list-item .row .content .title {
	display: block;
}
.top #schedule #schedule-list .schedule-list-item .row .content .place {
	display: block;
}
.top #schedule #schedule-list .schedule-list-item .row .content .detail {
	display: block;
}
.top #schedule #schedule-list .schedule-list-item .row .content .logo {
	display: inline-block;
	height: 14px;
	width: auto;
	vertical-align: -2px;
}
.top #event {
	margin-bottom: 20px;
}
.top #event #event-list {
	list-style-type: none;
	padding-left: 0;
}
.top #event #event-list .event-list-item {
	margin-bottom: 20px;
	border: var(--arc_yellowish-brown) solid 1px;
	background-image: url("../img/top/pict_event_top-left.png"), url("../img/top/pict_event_bottom-right.png"), linear-gradient(0deg, rgb(71,60,41) 0%, rgb(131,113,92) 100%);
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: top left, bottom right, center center;
	padding: 12px;
	transition: all 0.3s;
}
.top #event #event-list .event-list-item:last-child {
	margin-bottom: 0;
}
.top #event #event-list .event-list-item:hover {
	filter: brightness(1.25) contrast(0.95);
}
.top #event #event-list .event-list-item a {
	display: block;
	color: #fff;
	text-decoration: none;
	height: 100%;
}
.top #event #event-list .event-list-item .row {
	display: grid;
	grid-template-columns: 1fr auto;
	column-gap: 10px;
	margin: 0;
}
.top #event #event-list .event-list-item img {
	display: block;
}
.top #event #event-list .event-list-item .info-txt-area {
	background-image: url("../img/top/pict_event_top-orn.png"), url("../img/top/pict_event_more.png");
	background-repeat: no-repeat;
	background-position: top center, bottom center;
	padding-top: 16px;
	padding-bottom: 36px;
	text-align: center;
}
.top #event #event-list .event-list-item .info-txt-area.has-detail {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.top #event #event-list .event-list-item .info-txt-area .title {
	margin-bottom: 10px;
	display: block;
}
.top #event #event-list .event-list-item .info-txt-area .period {
	margin-bottom: 10px;
	display: block;
}
.top #event #event-list .event-list-item .info-txt-area .place .logo {
	display: inline-block;
	width: auto;
	height: 14px;
	vertical-align: -2px;
}
.top #event #event-list .event-list-item .info-txt-area .separate-row {
	display: inline-block;
}
.top #event #event-list .event-list-item .info-txt-area .separate-row_12em {
	width: 100%;
	max-width: 12em;
}
.top #event #event-list .event-list-item .info-txt-area .separate-row .ali_right {
	display: inline-block;
	width: 100%;
	text-align: right;
}
.top #event #event-list .event-list-item .info-txt-area .separate-row .ali_left {
	display: inline-block;
	width: 100%;
	text-align: left;
}
.top #info {
	border-image: url("../../asset/img/top/info_back.png") 6 7 / 6px 7px  ;
	background: linear-gradient(0deg, rgb(71,60,41) 0%, rgb(131,113,92) 100%);
	padding: 3px 29px;
}
.top #info #info-list {
	list-style-type: none;
	padding-left: 0;
}
.top #info #info-list .info-list-item {
	background: url("../../asset/img/top/pict_doc.png") 0.5em 0.75em no-repeat;
	border-bottom: var(--arc_ocher--lighter) solid 1px;
	padding: 0.75em 1em 0.75em 2.5em;
}
.top #info #info-list .info-list-item:last-child {
	border-bottom: none;
}
.top #info #info-list .info-list-item .item {
	display: inline;
	padding-left: 0.35rem;
}
.top #info #info-list .info-list-item .item a {
	color: #fff;
	transition: all 0.3s;
}
.top #info #info-list .info-list-item .item a:hover {
	color: var(--arc_ocher--lighter);
	text-decoration: none;
}
@media screen and (max-width : 767.99px){/* md */
	.top #overview_inner {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}
@media screen and (max-width : 479.99px){/* xs */
	.top #overview_inner {
		border: rgb(04,03,03) solid 6px;
	}
	.top #event #event-list .event-list-item .row {
		grid-template-columns: 100%;
		grid-template-rows: auto auto;
		row-gap: 20px;
	}
	.top #event #event-list .event-list-item .info-image-area img {
		margin-right: auto;
		margin-left: auto;
		max-widh: 210px;
		height: auto;
	}
}
@media screen and (max-width : 359.99px){/* xxs */
	.top #schedule #schedule-list .schedule-list-item .row {
		grid-template-columns: 100%;
		grid-template-rows: auto auto;
	}
	.top #schedule #schedule-list .schedule-list-item .row .period {
		grid-column: 1 / -1;
		grid-row: 1 / 2;
	}
	.top #schedule #schedule-list .schedule-list-item .row .content {
		grid-column: 1 / -1;
		grid-row: 2 / -1;
	}
	.top #schedule #schedule-list .schedule-list-item .row .period .date {
		display: inline-block;
	}
	.top #schedule #schedule-list .schedule-list-item .row .period .time {
		display: inline-block;
	}
	.top #info #info-list .info-list-item {
		padding: 0.75em 0;
	}
	.top #info #info-list .info-list-item .item {
		padding-left: 0;
	}
}
/*=====================
12.プロフィールページ（about）
======================*/
.about .member-block {
	margin-top: 2.5em;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto 1fr;
	column-gap: 12px;
}
.about .member-block .member-name {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	margin: 0 0 0.25em;
	font-size: 2rem;
	font-family: var(--ff_sans-serif_rounded);
	font-weight: 600;
	line-height: 1.4;
}
.about .member-block .ny_name {
	font-family: "M PLUS Rounded 1c", sans-serif;
}

.about .member-block .member-image {
	grid-column: 1 / 2;
	grid-row: 2 / -1;
	margin: 0;
}
.about .member-block .member-role {
	grid-column: 2 / -1;
	grid-row: 1 / 3;
	margin: 0 0 0.25em;
	font-size: 1.9rem;
	text-align: left;
}
.about .member-block .member-career {
	grid-column: 2 / -1;
	grid-row: 3 / -1;
	margin-top: 0;
}
.about .member-block .member-role .member-name_en {
	display: inline-block;
}
@media screen and (max-width : 479.99px){/* xs */
	.about .member-block {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto auto 1fr;
	}
	.about .member-block .member-name {
		grid-column: 1 / -1;
		grid-row: 1 / 2;
	}
	.about .member-block .member-role {
		grid-column: 1 / -1;
		grid-row: 2 / 3;
	}
	.about .member-block .member-image {
		grid-column: 1 / -1;
		grid-row: 3 / 4;
	}
	.about .member-block .member-career {
		margin-top: 0.5em;
		grid-column: 1 / -1;
		grid-row: 4 / -1;
	}
}
/*=====================
13.グレースホールページ（grace）
======================*/
.grace .has-image.has-image01 img {
	display: block;
	margin-right: auto;
	pargin-left: auto;
	width: 100%;
	height: auto;
}
.grace .has-image.has-image02 {
	display: grid;
	grid-template-columns: 41.3793% 56.0344%;
	grid-template-rows: auto 1fr;
	gap: 2.586%;
}
.grace .has-image.has-image02 .img02-01 {
	grid-column: 1 / -1;
	grid-row: 1 / 2;
	width: 100%;
	height: auto;
}
.grace .has-image.has-image02 .img02-02 {
	display: block;
	grid-column: 1 / 2;
	grid-row: 2 / -1;
	width: 100%;
	height: auto;
}
.grace .has-image.has-image02 .img02-03 {
	grid-column: 2 / -1;
	grid-row: 2 / -1;
	width: 100%;
	height: auto;
}
.grace .has-image.has-image02 .img02-02 img {
	display: block;
	width: 100%;
	height: auto;
}
.grace .has-image.has-image02 .img02-02 .caption {
	display: block;
	margin: 0.5em 0;
	font-size: 1.3rem;
	text-align: center;
	line-height: 1.5;
}
@media screen and (max-width : 479.99px){/* xs */
	.grace .has-image.has-image02 {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto auto;
		gap: 0;
	}
	.grace .has-image.has-image02 .img02-01 {
		margin-bottom: 15px;
	}
	.grace .has-image.has-image02 .img02-02 {
		grid-column: 1 / -1;
		grid-row: 2 / 3;
	}
	.grace .has-image.has-image02 .img02-03 {
		grid-column: 1 / -1;
		grid-row: 3 / 4;
	}
}
/*=====================
14.海外公演ページ（kaigai）
======================*/
.kaigai .has-image.has-image01 img {
	display: block;
	margin-right: auto;
	pargin-left: auto;
	width: 100%;
	height: auto;
}
.kaigai .tbl-border2px {
	margin-bottom: 13px;
	width: 100%;
}
.kaigai .tbl-border2px th,
.kaigai .tbl-border2px td {
	vertical-align: middle;
	font-size: 1.3rem;
}
.kaigai .tbl-border2px .year {
	min-width: calc(2.25em + 8px); 
}
.kaigai .tbl-border2px .destination {
	min-width: calc(6em + 8px); 
}
.kaigai .tbl-border2px .performer {
	min-width: calc(12.5em + 8px);
}
@media screen and (max-width : 919.99px){/* sblg */
	.kaigai .tbl-border2px .destination {
		min-width: calc(3em + 8px); 
	}
}

@media screen and (max-width : 479.99px){/* xs */
	.kaigai .tbl-border2px {
		display: block;
	}
	.kaigai .tbl-border2px tbody {
		display: contents;
	}
	.kaigai .tbl-border2px tr {
		margin-bottom: 10px;
		display: grid;
		grid-template-columns: 100%;
		grid-template-rows: auto auto;
	}
	.kaigai .tbl-border2px .year {
		min-width: auto;
	}
	.kaigai .tbl-border2px .destination {
		border-top: none;
		border-bottom-width: 1px;
		min-width: auto;
	}
	.kaigai .tbl-border2px .venue {
		border-top: none;
		border-bottom-width: 1px;
		min-width: auto;
	}
	.kaigai .tbl-border2px .performer {
		border-top: none;
		min-width: auto;
	}
}
/*=====================
15.マリーサロンページ（salon）
======================*/
.salon .has-image.has-image01 img {
	display: block;
	margin-right: auto;
	pargin-left: auto;
	width: 100%;
	height: auto;
}
#txt01 {
	margin-bottom: 2em;
}
.salon .has-image.has-image02 .img02-01 img {
	display: block;
	margin-right: auto;
	pargin-left: auto;
	width: 100%;
	height: auto;
}
.salon .has-image.has-image02 .img02-01 .caption {
	display: block;
	margin: 0.5em 0;
	font-size: 1.3rem;
	line-height: 1.5;
}
/*=====================
16.友の会ご入会のご案内ページ（bosyu）
======================*/
.bosyu .page-title {
	color: var(--arc_bright-orange);
}
.bosyu .has-image img {
	display: block;
	margin-right: auto;
	pargin-left: auto;
	width: 100%;
	height: auto;
}
.bosyu .txt a {
	color: var(--arc_bright-orange);
	transition: all 0.3s;
}
.bosyu .txt a:hover {
	color: var(--arc_vivid-blueviolet);
}
.bosyu .tbl-border1px th,
.bosyu .tbl-border1px td {
	padding: 4px 1em;
	text-align: center;
}