
/* @media screen and (min-width:1440px) {} */
/* @media screen and (min-width:1280px) and ( max-width:1439px) {} */
/* @media screen and (min-width:751px) and ( max-width:1279px) {} */
/* @media screen and (min-width:1026px) and ( max-width:1279px) {} */
/* @media screen and (min-width:751px) and ( max-width:1025px) {} */
/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ベース設定 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
html{
	color: #000;
	font-size: 10px;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.15rem;
	font-weight: 300;
	line-height: 1.5;
}
a{
	color: #000;
	display: block;
}
#wrapper{
	width: 100%;
	height: auto;
}
section,
.section{
	width: 100%;
	height: auto;
	position: relative;
}
.container{
	width: 90%;
	margin: 0 auto;
}
@media screen and (min-width:1540px) {
	.container{max-width: 1160px;}
}
@media screen and (min-width:1280px) and ( max-width:1539px) {
	.container{max-width: 960px;}
}
@media screen and (min-width:751px) and ( max-width:1279px) {
	html{font-size: 9px;}
	.container{max-width: none;}
}
.is_sp{display: none;}
.is_tab{display: none;}
@media screen and (min-width:751px) and ( max-width:1025px) {
	.is_hidden_tab{display: none;}
	.is_tab{display: block;}
} 
:root{
	--colorname: ;
}
.objectFit {
	width:100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%; 
	font-family: 'object-fit: cover;object-position: 50% 50%;'
}
.point_reader{
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
p + p{
	margin-top: 1rem;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ ベース設定 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 共通 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
#wrapper{
	padding: 5rem;
}
@media screen and (min-width:751px) and ( max-width:1025px) {
	#wrapper{
		padding-top: 9.5rem;
	}
}
.ttl{
	font-size: 5.2rem;
	font-family: 'Questrial', sans-serif;
	font-weight: normal;
	letter-spacing: 1.5rem;
	text-align: center;
}
.questrial{
	font-family: 'Questrial', sans-serif;
}
.ttl_wrap{
	width: 100%;
	margin-bottom: 6rem;
}
.ttl_wrap .ttl{
	font-size: 5.2rem;
	letter-spacing: 1rem;
	line-height: 1;
	color: #000;
}
.ttl_wrap.beige .ttl{
	color: #cfaf8c;
}
.ttl_wrap p{
	font-size: 1.3rem;
	font-family: 'Questrial', sans-serif;
	letter-spacing: 0.25rem;
	color: #000;
	text-align: center;
	margin-top: 1rem;
}
.ttl_wrap.beige p{
	color: #cfaf8c;
}
.ttl_wrap p.gray{
	color: #999;
}
.more{
	text-align: center;
}
.more a{
	display: inline-block;
	position: relative;
	margin-top: 6rem;
	color: #010101;
	font-size: 1.8rem;
	transition: 1s;
}
.more a::after{
	position: absolute;
	content: '';
	background: #000;
	width: 10rem;
	height: 4px;
	left: 50%;
	bottom: -2rem;
	transform: translateX(-50%);
	transition: 1s;
}
.more a:hover{
	color: #cbae8f;
}
.more a:hover::after{
	background: #cbae8f;
}
.links{
	text-align: center;
}
.links span{
	display: inline-block;
	position: relative;
	margin-top: 6rem;
	color: #010101;
	font-size: 1.8rem;
	transition: 1s;
}
.links.beige span{
	color: #cbae8f;
}
.links span::after{
	position: absolute;
	content: '';
	background: #000;
	width: 10rem;
	height: 4px;
	left: 50%;
	bottom: -2rem;
	transform: translateX(-50%);
	transition: 1s;
}
.links.beige span::after{
	background: #cbae8f;
}
.links span:hover{
	color: #fff;
}
.links.beige span:hover{
	color: #fff;
}
.links span:hover::after{
	background: #fff;
}
.links.beige span:hover::after{
	background: #fff;
}

.fadeInUp{
	opacity : 0;
	transform: translateY(100px);
	transition: 1s;
}
.fadeInUp2{
	opacity : 0;
	transform: translateY(200px);
	transition: 1s;
}
.f01{transition: 1s!important;}
.f02{transition: 1s .4s!important;}
.f03{transition: 1s .4s!important;}
.f03x50{transition: 1s .8s!important;}
.f04{transition: 1s .8s!important;}
.f04x50{transition: 1s 1s!important;}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ 共通 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ナビ ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
header{
	opacity: 0;
	width: calc(100% - 10rem);
	height: 9.5rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	top: 5rem;
	left: 5rem;
	z-index: 12;
	color: #fff;
	transition: .3s;
	padding: 0 5rem;
}
header.active{
	color: #000;
	top:0;
	background: #fff;
}
header a{
	color: #fff;
}
header.active a{
	color: #000;
	display: inline-block;
}
header .site_name{
	font-size: 2.2rem;
	letter-spacing: 0.5rem;
}
header .gnav ul{
	display: flex;
}
header .gnav li{
	font-size: 1.3rem;
	margin-left: 3rem;
}
header .gnav li:first-of-type{
	margin-left: 0;
}
header .gnav li a{
	position: relative;
	transition: 1s;
}
header .gnav li a::after{
	position: absolute;
	content: '';
	width: 100%;
	height: 1px;
	background: inherit;
	left: 50%;
	bottom: -1rem;
	transform: translateX(-50%);
	transition: 1s;
}
header .schedule a .icon{
	position: relative;
	margin-right: 1.5rem;
	transition: 1s;
}
header .schedule a .icon::after{
	position: absolute;
	content: '';
	background: url(../images/blank-icon_w.png) center center/cover no-repeat;
	width: 1.2rem;
	height: 1.2rem;
	top: 50%;
	right: -1.5rem;
	transform: translateY(-50%)  translateY(-0.1rem);
}
header.active .schedule a .icon::after{
	position: absolute;
	content: '';
	background: url(../images/blank-icon_bk.png) center center/cover no-repeat;
	width: 1.2rem;
	height: 1.2rem;
	top: 50%;
	right: -1.5rem;
	transform: translateY(-50%) translateY(-0.1rem);
}
header .gnav li a:hover::after{
	background: #fff;
}
header.active .gnav li a:hover::after{
	background: #000;
}
@media screen and (min-width:751px) and ( max-width:1025px) {
	header{
		opacity: 1;
		padding: 0 0rem 0 1rem;
		color: #000;
		top:0;
		background: #fff;
	}
	header a{
		color: #000;
	}
	header .menu_btn{
		display: block;
		position: relative;
		width: 5rem;
		height: 3.5rem;
		z-index: 999999;
	}
	header .menu_btn span{
		position: absolute;
		top: 50%;
		left: 50%;
		width: 60%;
		height: 2px;
		background-color: #000;
		transition: .3s;
	}
	header.active .menu_btn span{
		background-color: #000;
	}
	header .menu_btn span:nth-of-type(1){
		transform: translate(-50%, -50%) translateY(-5px);
	}
	header .menu_btn span:nth-of-type(2){
		transform: translate(-50%, -50%) translateY(5px);
	}
	header .menu_btn.open span:nth-of-type(1){
		transform: translateX(-50%) rotate(45deg);
	}
	header .menu_btn.open span:nth-of-type(2){
		transform: translateX(-50%) rotate(135deg);
	}
	header .gnav{
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		z-index: 99999;
		background: #fff;
	}
	header .gnav ul{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 100%;
	}
	header .gnav li{
		position: static;
		margin-left: 0;
	}
	header .gnav li a{
		font-size: 2.4rem;
		text-align: center;
		color: #000;
		display: block;
		padding: 3rem 0;
		width: 100%;
	}
	header .gnav li a::after{
		position: static;
	}
	header .gnav li a span.small_txt{
		font-size: 0.9rem;
		color: #d3b595;
	}
	header .schedule a .icon::after{
		position: absolute;
		content: '';
		background: url(../images/blank-icon_bk.png) center center/cover no-repeat;
		width: 1.8rem;
		height: 1.8rem;
		top: 50%;
		right: -3rem;
		transform: translateY(-50%) translateY(-0.5rem);
	}
	header.active .schedule a .icon::after{
		content: '';
	}
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ ナビ ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ mv ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.mv{
	width: 100%;
	height: calc(100vh - 5rem);
}
.mv .img{
	position: relative;
	width: 100%;
}
.mv .img span{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,1);
	z-index: 9;
}
.mv .img img{
	width: 100%;
	height: calc(100vh - 5rem);
	object-fit: cover;
	object-position: 20% 15%;
}
.mv .ttl_wrap_mv{
	display: none;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 10;
}
.mv .ttl_wrap_mv .ttl{
	font-size: 6.5rem;
	line-height: 1;
	color: #fff;
}
.mv .ttl_wrap_mv p{
	font-size: 1.4rem;
	font-family: 'Questrial', sans-serif;
	letter-spacing: 0.75rem;
	color: #fff;
	text-align: center;
	margin-top: 1.5rem;
}
.mv .scroll{
	overflow: hidden;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	height: 10rem;
}
.mv .scroll p{
	color: #fff;
	font-size: 1.4rem;
}
.mv .scroll span{
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 1px;
	height: 7rem;
	background: #b3b3b3;
	animation: scroll 1.5s infinite;
}
@keyframes scroll{
	0%{
		transform:translateX(-50%) scale(1,1);
		transform-origin: bottom center;
	}
	45%{
		transform:translateX(-50%) scale(1,0);
		transform-origin: bottom center;
	}
	51%{
		transform-origin: top center;
		transform:translateX(-50%) scale(1,0);
	}
	80%{
		transform-origin: top center;
		transform:translateX(-50%) scale(1,1);
	}
	100%{
		transform-origin: top center;
		transform:translateX(-50%) scale(1,1);
	}
}
.svg_txt{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) translate(-2.5rem,-6rem);
	z-index: 10;
	width: 19.8rem;
}
#svg-animation .st0{
	fill:none;
	stroke:#fff;
	stroke-width:5;
	stroke-miterlimit:10;
	stroke-dasharray: 1500;
	stroke-dashoffset:1500;
}
@media screen and (min-width:751px) and ( max-width:1025px) {
	.svg_txt{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%) translate(-0.4rem,-8.4rem);
		z-index: 10;
		width: 16.8rem;
	}
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ mv ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ top01 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.top01{
	background: url(../images/top01_bg.png) bottom center/cover no-repeat;
	padding: 12rem 0 17.5rem;
}
.top01 .box{
	background: #fff;
	padding: 12rem 3rem;
}
.top01 .box p{
	font-size: 1.5rem;
	line-height: 1.8;
	letter-spacing: 0.1rem;
	text-align: center;
}
.top01 .box .en{
	margin-top: 6rem;
}
.top01 .box .en p{
	font-size: 1.3rem;
	color: #888;
}
.top01 .box p + p{
	margin-top: 2em;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ top01 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ top02 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.top02 .box{
	display: flex;
}
.top02 a.links_wrap{
	position: relative;
	width: 50%;
}
.top02 a.links_wrap .item{
	width: 100%;
	height: 100%;
}
.top02 a.links_wrap .schedule img{
	width: 100%;
	filter: grayscale(100%);
	transition: 1s;
}
.top02 a.links_wrap .schedule .img{
	width: 100%;
}
.top02 a.links_wrap .schedule .img::before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.6);
	transition: 1s;
	z-index: 2;
}
.top02 a.links_wrap:hover .schedule .img::before{
	background: rgba(0,0,0,0);
}
.top02 a.links_wrap:hover .schedule img{
	width: 100%;
	filter: grayscale(0%);
}
.top02 a.links_wrap:hover .schedule .links.beige span{
	color: #fff;
}
.top02 a.links_wrap:hover .schedule .links.beige span::after{
	background: #fff;
}
.top02 a.links_wrap .item .ttl_wrap{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
}
.top02 a.links_wrap .item .links{
	position: absolute;
	bottom: 20%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	transition: 1s;
}
.top02 a.links_wrap .schedule .links.beige i{
	transition: 1s;
}
.top02 a.links_wrap .schedule .links.beige i::after{
	content: url(../images/top02_02.png);
	margin-left: 1rem;
}
.top02 a.links_wrap:hover .schedule .links.beige i::after{
	content: url(../images/top02_03.png);
}

.top02 a.links_wrap .activity{
	width: 100%;
	background: #d3b595;
}
.top02 a.links_wrap:hover .activity .links span{
	color: #fff;
}
.top02 a.links_wrap:hover .activity .links span::after{
	background: #fff;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ top02 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ top03 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.top03{
	padding: 11rem 0 12rem;
	background: #f5f5f5;
}
.top03 .item{
	display: flex;
	justify-content: flex-start;
}
.top03 .txt_wrap{
	margin-left: 4rem;
}
.top03 .txt_wrap h3{
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 2rem;
}
.top03 .txt_wrap h3 span{
	color: #999;
	font-weight: 300;
	margin-left: 1rem;
}
.top03 .txt_wrap .label{
	font-size: 1.5rem;
	line-height: 1;
}
.top03 .txt_wrap .date{
	font-size: 1.3rem;
	line-height: 1;
}
.top03 .txt_wrap .price{
	color: #010101;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
	margin-top: 2rem;
}
.top03 .txt_wrap .price span{
	font-size: 1.4rem;
	font-weight: 300;
}
.top03 .txt_wrap .performer{
	display: flex;
	margin-top: 3.5rem;
}
.top03 .txt_wrap .performer_in{
	margin-right: 4.5rem;
}
.top03 .txt_wrap .performer_in:last-of-type{
	margin-right: 0;
}
.top03 .txt_wrap .performer .music_inst{
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 1px;
	color: #999;
	margin-bottom: 0.8rem;
}
.top03 .txt_wrap .performer .name{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 1px;
	margin-bottom: 1rem;
}
.top03 .txt_wrap .performer .name_en{
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: 1px;
}
.top03 .explanatory_txt{
	margin-top: 5rem;
}
.top03 .explanatory_txt p{
	font-size: 1.5rem;
	line-height: 2;
	letter-spacing: 1px;
}
@media screen and (min-width:751px) and ( max-width:1025px) {
	.top03 .item{
		display: block;
	}
	.top03 .item .img{
		text-align: center;
	}
	.top03 .txt_wrap{
		margin-top: 6.2rem;
		margin-left: 0;
		text-align: center;
	}
	.top03 .txt_wrap h3{
		line-height: 1.4;
		margin-bottom: 2rem;
	}
	.top03 .txt_wrap .performer{
		display: flex;
		justify-content: center;
		margin-top: 4rem;
		text-align: left;
	}
	.top03 .explanatory_txt{
		margin-top: 6.3rem;
	}
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ top03 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ フッター ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
footer{
	margin-top: 5rem;
}
footer .box{
	display: flex;
}
footer a.links_wrap{
	position: relative;
	width: 50%;
}
footer a.links_wrap .item{
	width: 100%;
	height: 100%;
}
footer a.links_wrap .contact img{
	width: 100%;
	filter: grayscale(100%);
}
footer a.links_wrap .contact .img{
	width: 100%;
}
footer a.links_wrap .contact .img::before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.6);
	transition: 1s;
	z-index: 2;
}
footer a.links_wrap:hover .contact .img::before{
	background: rgba(0,0,0,0.7);
}
footer a.links_wrap:hover .contact .links.beige span{
	color: #fff;
}
footer a.links_wrap:hover .contact .links.beige span::after{
	background: #fff;
}
footer a.links_wrap .item .ttl_wrap{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
}
footer a.links_wrap .item .links{
	position: absolute;
	bottom: 20%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	transition: 1s;
}
footer a.links_wrap .contact .links.beige span::after{
	width: 15.4rem;
}

footer .sns{
	position: relative;
	width: 50%;
	background: #d3b595;
}
footer .sns .sns_icon{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	display: flex;
	align-items: center;
	justify-content: center;
}
footer .sns .sns_icon .img{
	margin-right: 6.5rem;
}
footer .sns .sns_icon .img:last-of-type{
	margin-right: 0;
}
footer .sns .sns_icon .img a img{
	transition: 1s;
}
footer .sns .sns_icon .img a:hover img{
	filter: brightness(0) invert(1);
}
footer .sns .copyright{
	position: absolute;
	left: 50%;
	bottom: 2.5vw;
	transform: translateX(-50%);
	width: 100%;
}
footer .sns .copyright p{
	font-size: 1.2rem;
	font-weight: 400;
	text-align: center;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ フッター ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 下層共通 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.lower_mv{
	width: 100%;
}
.lower_mv .img{
	position: relative;
	width: 100%;
}
.lower_mv .img span{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,1);
	z-index: 9;
}
.lower_mv .img img{
	width: 100%;
}
.lower_mv .ttl_wrap{
	display: none;
	position: absolute;
	top: 50%;
	left: 10rem;
	transform: translateY(-50%);
	width: calc(100% - 10rem);
	z-index: 10;
}
.lower_mv .ttl_wrap .ttl{
	font-size: 6rem;
	color: #fff;
	text-align: left;
}
.lower_mv .ttl_wrap p{
	color: #fff;
	text-align: left;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ 下層共通 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ activity01 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.activity01{
	padding: 11rem 0 9.8rem;
	background: #f5f5f5;
}
.activity01 .box{
	margin-bottom: 5.7rem;
}
.activity01 .box:last-of-type{
	margin-bottom: 0;
}
.activity01 .box_in{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.activity01 .item{
	width: calc(50% - 2.5rem);
	margin-top: -2rem;
	margin-bottom: 5.3rem;
}
.activity01 .item:last-of-type{
	margin-bottom: 0;
}
.activity01 .item .img img{
	width: 100%;
}
.activity01 .item .txt_wrap{
	margin: 4rem 0;
}
.activity01 .item .txt_wrap h3{
	font-size: 2.4rem;
	line-height: 1;
	font-weight: 500;
}
.activity01 .item .txt_wrap .date{
	font-size: 1.6rem;
	line-height: 1;
	letter-spacing: 1px;
	color: #d3b595;
	margin-top: 1.8rem;
}
.activity01 .item .txt_wrap .performer{
	display: flex;
	flex-wrap: wrap;
	margin-top: 2.5rem;
}
.activity01 .txt_wrap .performer_in{
	margin-right: 2rem;
	margin-bottom: 2rem;
}
.activity01 .txt_wrap .performer_in:last-of-type{
	margin-right: 0;
}
.activity01 .txt_wrap .performer .music_inst{
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 1px;
	color: #999;
	margin-bottom: 0.8rem;
}
.activity01 .txt_wrap .performer .name{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 1px;
	margin-bottom: 1rem;
}
.activity01 .txt_wrap .performer .name_en{
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: 1px;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ activity01 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ works01 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.works01{
	padding: 11rem 0;
	background: #f5f5f5;
}
.works01 .item{
	display: flex;
	justify-content: flex-start;
}
.works01 .txt_wrap{
	margin-left: 4rem;
}
.works01 .txt_wrap h3{
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 2rem;
}
.works01 .txt_wrap h3 span{
	color: #999;
	font-weight: 300;
	margin-left: 1rem;
}
.works01 .txt_wrap .label{
	font-size: 1.5rem;
	line-height: 1;
}
.works01 .txt_wrap .date{
	font-size: 1.3rem;
	line-height: 1;
}
.works01 .txt_wrap .price{
	color: #010101;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
	margin-top: 2rem;
}
.works01 .txt_wrap .price span{
	font-size: 1.4rem;
	font-weight: 300;
}
.works01 .txt_wrap .performer{
	display: flex;
	margin-top: 3.5rem;
}
.works01 .txt_wrap .performer_in{
	margin-right: 4.5rem;
}
.works01 .txt_wrap .performer_in:last-of-type{
	margin-right: 0;
}
.works01 .txt_wrap .performer .music_inst{
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 1px;
	color: #999;
	margin-bottom: 0.8rem;
}
.works01 .txt_wrap .performer .name{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 1px;
	margin-bottom: 1rem;
}
.works01 .txt_wrap .performer .name_en{
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: 1px;
}
.works01 .explanatory_txt{
	margin-top: 5rem;
}
.works01 .explanatory_txt p{
	font-size: 1.5rem;
	line-height: 2;
	letter-spacing: 1px;
}
.works01 .box_in02{
	display: flex;
	margin: 4rem 0 6rem;
}
.works01 .box_in02 .tracks,
.works01 .box_in02 .credits{
	width: 50%;
}
.works01 .box_in02 h4{
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 3.2rem;
}
.works01 .box_in02 li{
	font-size: 1.5rem;
	letter-spacing: 0.5px;
	padding: 0.5rem 0;
}
.works01 .box_in02 ol li{
	list-style: decimal inside;
}
.works01 .box_in03 .youtube{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.works01 .box_in03 .youtube iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.works01 .box_in03 .buynow{
	background: #fff;
	display: flex;
	align-items: center;
	margin-top: 5.1rem;
	padding: 4.2rem 4.8rem 4.2rem 4rem;
}
.works01 .box_in03 .buynow h3{
	font-size: 2.4rem;
	font-weight: 400;
}
.works01 .box_in03 .buynow ul{
	display: flex;
	margin-left: auto;
}
.works01 .box_in03 .buynow li{
	font-size: 1.5rem;
	letter-spacing: 1px;
	margin-right: 2.5rem;
}
.works01 .box_in03 .buynow li:last-of-type{
	margin-right: 0;
}
.works01 .box_in03 .buynow li a{
	transition: 1s;
}
.works01 .box_in03 .buynow li a span{
	position: relative;
	margin-right: 2rem;
	transition: 1s;
}
.works01 .box_in03 .buynow li a span::after{
	position: absolute;
	content: '';
	background: url(../images/blank-icon_bk.png) center center/cover no-repeat;
	width: 1.5rem;
	height: 1.5rem;
	top: 50%;
	right: -2rem;
	transform: translateY(-50%) translateY(-0.1rem);
	transition: 1s;
}
.works01 .box_in03 .buynow li a:hover{
	color: #cfb192;
}
.works01 .box_in03 .buynow li a:hover span::after{
	background: url(../images/blank-icon_beige.png) center center/cover no-repeat;
}
@media screen and (min-width:751px) and ( max-width:1025px) {
	.works01 .item{
		display: block;
	}
	.works01 .item .img{
		text-align: center;
	}
	.works01 .txt_wrap{
		margin-top: 6.2rem;
		margin-left: 0;
		text-align: center;
	}
	.works01 .txt_wrap h3{
		line-height: 1.4;
		margin-bottom: 2rem;
	}
	.works01 .txt_wrap .performer{
		display: flex;
		justify-content: center;
		margin-top: 4rem;
		text-align: left;
	}
	.works01 .explanatory_txt{
		margin-top: 6.3rem;
	}
	.works01 .box_in02{
		display: block;
		margin: 4rem 0 6rem;
	}
	.works01 .box_in02 .tracks,
	.works01 .box_in02 .credits{
		width: 100%;
	}
	.works01 .box_in02 .tracks{
		margin-bottom: 5.5rem;
	}
	.works01 .box_in03 .buynow{
		display: block;
		text-align: center;
		margin-top: 5.1rem;
		padding: 4.2rem 4rem;
	}
	.works01 .box_in03 .buynow h3{
		margin-bottom: 2rem;
	}
	.works01 .box_in03 .buynow ul{
		display: block;
		margin-right: -2.5rem;
	}
	.works01 .box_in03 .buynow li{
		padding: 1rem 0;
	}
	.works01 .box_in03 .buynow li a span::after{
		background: url(../images/blank-icon_beige.png) center center/cover no-repeat;
	}
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ works01 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ about01 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.about01{
	padding: 11rem 0 13.1rem;
	background: #f5f5f5;
}
.about01 .box_in{
	background: #fff;
	padding: 6.3rem 3rem 12.8rem;
}
.about01 .box_in .name_wrap{
	text-align: center;
	color: #cfaf8c;
	margin-bottom: 4.7rem;
}
.about01 .box_in .name_wrap h3{
	font-size: 3.6rem;
	font-weight: 500;
}
.about01 .box_in .name_wrap p{
	font-size: 1.6rem;
	letter-spacing: 0.1rem;
	line-height: 1;
	font-family: 'Questrial', sans-serif;
}
.about01 .box_in .ja p,
.about01 .box_in .en p{
	font-size: 1.5rem;
	line-height: 1.8;
	letter-spacing: 0.1rem;
	text-align: center;
}
.about01 .box_in .en{
	margin-top: 6rem;
}
.about01 .box_in .en p{
	font-size: 1.3rem;
	color: #888;
}
.about01 .box_in p + p{
	margin-top: 2em;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ about01 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ about02 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.about02{
	padding: 11rem 0 7.2rem;
	background: #fff;
}
.about02 .history_wrap{
	margin-bottom: 3.2rem;
}
.about02 .history_year{
	margin: 0;
	font-family: 'Questrial', sans-serif;
	font-weight: normal;
	font-size: 2.8rem;
	color: #cdaf91;
	text-align: center;
	line-height: 1;
}
.about02 .history_desc{
	font-size: 1.5rem;
	text-align: center;
}
.about02 .history_block{
	position: relative;
	padding-top: 5rem;
}
.about02 .history_block::before{
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	width: 1px;
	height: 0;
	background: #ccaf90;
	background: -webkit-gradient(linear, left top, left bottom, from(#ccaf90), color-stop(90%, #ccaf90), to(#fbfbfb));
	background: -o-linear-gradient(top, #ccaf90 0%, #ccaf90 90%, #fbfbfb 100%);
	background: linear-gradient(180deg, #ccaf90 0%, #ccaf90 90%, #fbfbfb 100%);
	-webkit-transition: all 3s 0.5s;
	-o-transition: all 3s 0.5s;
	transition: all 3s 0.5s;
}
.about02 .history_block.visibled::before{
	height: 98.5%;
}
.about02 .history_block::after{
	content: '';
	position: absolute;
	top: -5.5px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	width: 11px;
	height: 11px;
	background: #ccaf90;
	border-radius: 5.5px;
}
.about02 .monthblock{
	width: 100%;
	position: relative;
}
.about02 .monthblock_in{
	width: 50%;
}
.about02 .monthblock:nth-child(odd) .monthblock_in{
	text-align: left;
	padding: 0 0 3.5rem 3rem;
	float: right;
}
.about02 .monthblock:nth-child(even) .monthblock_in{
	text-align: right;
	padding: 0 3rem 3.5rem 0;
	float: left;
}
.about02 .monthblock::after{
	content: '';
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.about02 .hisinfo_ttl{
	margin-bottom: 1.5rem;
	font-family: 'Questrial', sans-serif;
	font-weight: normal;
	font-size: 2.8rem;
	color: #cdaf91;
	line-height: 1;
}
.about02 .hisinfo_desc{
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.8;
}
.about02 .hisinfo::before{
	content: '';
	position: absolute;
	top: 5.5px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	width: 11px;
	height: 11px;
	background: #ccaf90;
	border-radius: 5.5px;
}
.about02 .future p{
	font-size: 3.6rem;
	font-family: 'Questrial', sans-serif;
	line-height: 1;
	color: #cfb192;
	text-align: center;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ about02 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */

/* ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ contact01 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼ */
.contact01{
	padding: 11rem 0;
	background: #f5f5f5;
}
.contact01 .box_in{
	max-width: 740px;
	margin: 0 auto;
}

.contact01 .box_in .txt_wrap{
	font-size: 1.6rem;
	letter-spacing: 0.1rem;
	text-align: center;
}
.contact01 .box_in .txt_wrap p.en{
	color: #888;
}
.contact01 .form_wrap{
	margin-top: 5.5rem;
}
.contact01 .form_wrap:first-of-type{
	margin-top: 6.5rem;
}
.contact01 .form_wrap p{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1;
	color: #d3b595;
	text-align: center;
	margin-bottom: 2.3rem;
}
.contact01 input[type="text"],
.contact01 input[type="email"],
.contact01 textarea{
	width: 100%;
	font-size: 1.8rem;
	padding: 3rem 1.5rem;
	border: solid 1px #cbae8f;
}
.contact01 textarea{
	padding: 1.5rem;
	height: calc(1.8em * 10 + 3rem);
	line-height: 1.8;
}
.contact01 .submit_btn{
	width: 100%;
	font-size: 1.8rem;
	padding: 3rem 1.5rem;
	border: solid 1px #cbae8f;
	letter-spacing: 0.5rem;
	color: #fff;
	background: #cbae8f;
	margin-top: 2.9rem;
	transition: 1s;
}
.contact01 .submit_btn:hover{
	background: #665747;
}
.contact01 .form_wrap p.err_msg{
	color: #ff0099;
	margin-top: 1.4rem;
}
.contact01 #result{
	font-size: 1.8rem;
	color: #ff0099;
	text-align: center;
	margin-top: 1rem;
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ contact01 ▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */