@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figcaption, figure, section, footer, header, main, hgroup, menu, nav, summary {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;	
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
@media all and (min-width: 1000px) and (max-width: 1500px) {
	html {
		font-size: calc(1000vw / 1366);
	}
}
@media all and (min-width: 1000px) and (max-width: 1360px) {
	html {
		font-size: min(1.73vw,calc(1000vw / 1180));
	}
}
@media all and (min-width: 1501px) {
	html {
		font-size: 68.6%;
	}
}
@media all and (max-width: 999px) {
    html {
        font-size: calc(1000vw / 375);
    }
}
@media all and (min-width: 768px) and (max-width: 999px) {
    html {
        font-size: 1.65vw;
    }
}
body, table, input, textarea, select, option {
	font-family: 'Noto Sans JP', sans-serif;
}
.roboto {
	font-family: 'Roboto', sans-serif;
}
.robotoCondensed {
	font-family: "Roboto Condensed", sans-serif;
}
@font-face {
    font-family: 'helveticaNeueThin';
    font-style: normal;
    font-weight: 100;
    src: url('../fonts/HelveticaNeue-Thin.ttf')  format('truetype');
}
.helveticaNeueThin {
    font-family: "helveticaNeueThin", sans-serif;
}
.notoSans {
	font-family: 'Noto Sans JP', sans-serif;
}
.notoSerif {
	font-family: "Noto Serif JP", serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, main, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
	box-sizing: border-box;
}
blockquote, q {
	quotes: none;
}
chrome_annotation {
	border: none !important;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
address {
	font-style: normal;
}
a,
a:link {
	color: #000;
	text-decoration: none;
	transition: 0.3s;
	-webkit-tap-highlight-color: transparent !important;
}
a:visited {
	color: #000;
}
a:hover {
	color: #000;
}
a:active {
	color: #000;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
.is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}
.is-locked body {
  -webkit-overflow-scrolling: auto;
}
body {
	color: #000;
	font-size: 1.3rem;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #fff;
	-webkit-font-smoothing: antialiased; 
	font-feature-settings : "palt";
}
body:has(.darkBg) {
	background-color: #000;
}
.fixed {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	overflow-y: scroll;
}
#cover {
	display: none;
}
body:not(.fromDetail) #cover {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	transition: all 0.4s;
	z-index: 10000;
}
body.hideCover #cover {
	opacity: 0;
	visibility: hidden;
}
#container {
	text-align: left;
	overflow-x: clip;
}
#main {
	margin-bottom: 12.5rem;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 1000px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 999px) {
	body {
		min-width: inherit;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
	#container::before {
		width: 136.6rem;
		left: auto;
		right: -36%;
	}
	#main {
		margin-bottom: 6.4rem;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#fixBg {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: url(../img/common/white.jpg) no-repeat center top / cover;
	content: "";
	z-index: -2;
}
#gHeader {
	width: 6rem;
	position: fixed;
	right: 0;
	top: 0;
	bottom: 0;
	background: rgba(255, 255, 255, 0.5);
	transition: background .3s,transform .3s;
	cursor: pointer;
	z-index: 1001;
}
#gHeader.visible {
	transform: none !important;
}
#gHeader h1 {
	margin: 2.7rem auto 0;
	width: 1.9rem;
}
#gHeader h1 a {
	display: block;
	text-align: center;
	filter: brightness(0);
}
#gHeader .menu {
	margin: 1rem 1rem 0 0;
	width: 3rem;
	height: 1.2rem;
	position: absolute;
	top: calc(50% - 1rem);
	left: 50%;
	transform: translate(-50%,-50%);
	cursor: pointer;
}
#gHeader .menu span {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-top: 0.1rem solid #000;
	transition: all .3s ease;
}
#gHeader .menu span:nth-of-type(2) {
	top: 0.5rem;
}
#gHeader .menu span:nth-of-type(3) {
	top: 1.0rem;
}
#gHeader .menu.on span:first-child {
	transform: translateY(0.5rem) translateX(0) rotate(15deg);
}
#gHeader .menu.on span:nth-of-type(2) {
	opacity: 0;
}
#gHeader .menu.on span:nth-of-type(3) {
	transform: translateY(-0.5rem) translateX(0) rotate(-15deg);
}
.menuBox {
	position: fixed;
	right: 0;
	top: 0;
	bottom: 0;
	left: 0;
	transition: .3s;
	opacity: 0;
	visibility: hidden;
	z-index: 1000;
}
.menuBox.on {
	opacity: 1;
	visibility: visible;
}
.menuBox .mInner {
	height: 100%;
	margin: 0 0 0 auto;
	/* width: 48rem; */
}
.menuBoxSub {
	position: relative;
	height: 100%;
	overflow-y: auto;
	background: rgba(255,255,255,.85);
}
.menuBoxSub .radomTitle {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -1.7rem;
	width: min(7.32vw,10rem);
}
.menuBoxSub .radomTitle a {
	display: inline-block;
}
.menuBoxSub .radomTitle img {
	filter: brightness(0);
}
.menuBoxSub .radomTitle .img01 {
	margin-bottom: 1.2rem;
}
.menuBoxSub .radomTitle .img02 {
	margin-bottom: 1.1rem;
}
.menuBoxSub .radomTitle .img03 {
	margin-bottom: 1.1rem;
}
.menuBoxSub .radomTitle .img04 {
	margin-bottom: -0.1rem;
}
.menuBoxSub .radomTitle .img05 {
	margin-bottom: 6.7rem;
}
.menuBoxSub .radomTitle .img07 {
	margin-bottom: 5rem;
}
.menuBoxSub .radomTitle .img08 {
	margin-bottom: 0.8rem;
}
.menuBoxSub .radomTitle .img09 {
	margin-bottom: 0.95rem;
}
.menuBoxSub .radomTitle .img10 {
	margin-bottom: 0.5rem;
}
.menuBoxSub .radomTitle .img11 {
	margin-bottom: 1rem;
}
.menuSub {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	min-height: 100%;
	overflow-y: auto;
	box-sizing: border-box;
}
.menuInner {
	max-width: 80rem;
	box-sizing: content-box;
	padding: 5rem 13.7% 5rem 0;
	width: 100%;
}
.menuInner .comContentsBox .comVerticalTitle {
	font-size: 1.1rem;
	top: 0.3rem;
}
.menuInner .comContentsBox li a {
	font-size: 2.9rem;
	letter-spacing: -0.01em;
}
.menuInner .comContentsBox {
	margin-bottom: 8rem;
	padding-right: 2.9rem;
}
.menuInner .comFanclubBox .logo {
	filter: brightness(0);
}
.menuInner .comFanclubBox {
	padding-right: 2.9rem;
}
.menuInner .comMemberBox {
	margin-bottom: 4.5rem;
	padding-right: 1.9rem;
}
.menuInner .comInsList img {
	filter: brightness(0);
}
.menuInner .comInsList ul {
	padding-right: 3rem;
}
.menuBox .mInner .logo a {
	margin-bottom: 1.2rem;
	position: relative;
	height: 1.5rem;
}
.menuBox .mInner .logo a img {
	position: absolute;
	top: 0;
	left: 0;
}
.menuBox .mInner .logo a .white {
	opacity: 0;
}
.menuBox.dark .mInner .logo a .white,
#gHeader.background--dark + .menuBox .mInner .logo a .white {
	opacity: 1;
}
.menuBox.dark .mInner .logo a .black,
#gHeader.background--dark + .menuBox .mInner .logo a .black {
	opacity: 0;
}
.menuBox .videoBox {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: -1;
}
.menuBox .videoBox video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.menuBox .fade {
	display: none;
}
/* background--dark */
#gHeader.dark,
#gHeader.background--dark {
	background: rgba(31, 31, 31, 0.89);
}
#gHeader.dark h1 a,
#gHeader.background--dark h1 a {
	filter: none;
}
#gHeader.dark .menu span,
#gHeader.background--dark .menu span {
	border-color: #fff;
}
.menuBox.dark .menuBoxSub,
#gHeader.background--dark + .menuBox .menuBoxSub {
	background: rgba(0,0,0,.8);
}
.menuBox.dark .mInner a,
#gHeader.background--dark + .menuBox .mInner a {
	color: #fff;
}
.menuBox .mInner .on a {
	color: #999 !important;
}
.menuBox.dark .comFanclubBox .logo,
#gHeader.background--dark + .menuBox .comFanclubBox .logo {
	filter: none;
}
.menuBox.dark .comVerticalTitle,
#gHeader.background--dark + .menuBox .comVerticalTitle {
	color: #fff;
}
.menuBox.dark .comInsList img,
#gHeader.background--dark + .menuBox .comInsList img {
	filter: none;
}
/* .menuBox.dark .comMemberBox ul .snsUl,
#gHeader.background--dark + .menuBox .comMemberBox ul .snsUl {
	background-color: #FFFFFF;
} */
.menuBox.dark .comMemberBox ul .snsUl img,
#gHeader.background--dark + .menuBox .comMemberBox ul .snsUl img {
	filter: brightness(0);
}
.menuBox.dark .menuBoxSub .radomTitle img,
#gHeader.background--dark + .menuBox .menuBoxSub .radomTitle img {
	filter: brightness(200%);
}
.menuBox.dark .comMemberBox ul .ico.on::before, 
.menuBox.dark .comMemberBox ul .ico.on::after,
#gHeader.background--dark + .menuBox .comMemberBox ul .ico.on::before, 
#gHeader.background--dark + .menuBox .comMemberBox ul .ico.on::after {
	background-color: #000;
}

@media all and (min-width: 1000px) {
	#gHeader h1 {
		margin: 0;
		width: auto;
		text-align: center;
		padding: 2.7rem 0 2rem;
	}
	#gHeader h1 a {
		padding-inline: 1rem;
		display: block;
	}
	#gHeader h1 img {
		width: 1.9rem;
		margin: 0 auto;
	}
}

@media all and (max-width: 999px) {
	#gHeader {
		width: 100%;
		height: 4.2rem;
		position: absolute;
		transform: none;
		bottom: auto;
		cursor: default;
	}
	#gHeader:not(.cloned) {
		background: none;
	}
	#gHeader:not(.cloned) h1 {
		background: none;
	}
	#gHeader h1 {
		position: absolute;
		top: 2.6rem;
		margin: 0;
		left: 1.5rem;
		width: 12rem;
	}
	#gHeader .menu {
		width: 4.6rem;
		height: 1rem;
		margin: 0;
		top: 2.7rem;
		right: 1.5rem;
		transform: none;
		left: auto;
	}
	#gHeader.cloned {
		position: fixed;
		transform: translateY(-100%);
		transition: background .3s, transform .3s !important;
	}
	#gHeader.cloned h1 {
		top: 1.5rem;
	}
	#gHeader.cloned .menu {
		top: 1.5rem;
	}
	.menuBox .mInner {
		width: auto;
		margin: 0;
		position: relative;
	}
	.menuSub {
		display: block;
	}
	.menuInner {
		padding: 8rem 1.5rem 3rem 7rem;
		width: auto;
		max-width: inherit;
	}
	.menuInner .comContentsBox li {
		margin-bottom: 0.15rem;
	}
	.menuInner .comContentsBox li a {
		font-size: 2.4rem;
	}
	.menuInner .comContentsBox ul {
		top: -0.3rem;
	}
	.menuInner .comContentsBox {
		margin-bottom: 2.2rem;
	}
	.menuInner .comFanclubBox .logo {
		width: 8.5rem;
	}
	.menuInner .comFanclubBox {
		margin-bottom: 2.6rem;
	}
	.menuInner .comMemberBox li a {
		font-size: 1.4rem;
	}
	.menuInner .comMemberBox {
		margin-bottom: 2.3rem;
	}
	.menuInner .comInsList li {
		width: 2.1rem;
	}
	.menuInner address {
		margin: 4.3rem -2.9rem 0 0;
		text-align: center;
		letter-spacing: 0.03em;
	}
	.menuBox .menuLogo {
		position: absolute;
		z-index: 1;
		top: 8rem;
		left: -0.8rem;
		width: 5.9rem;
		filter: brightness(0);
	}
	#gHeader:has(.menu.on) {
		background: none;
	}
	#gHeader:has(.menu.on) h1 a {
		opacity: 0;
	}
	/* .background--dark */
	#gHeader.dark .menu.on span,
	#gHeader.background--dark .menu.on span {
		border-color: #fff;
	}
	#gHeader.background--dark + .menuBox .menuLogo {
		filter: none;
	}
	#gHeader.background--dark + .menuBox .address {
		color: #989898;
	}
	.menuBoxSub .radomTitle {
		width: 6.1rem;
		top: 8.0rem;
		left: -1rem;
		transform: none;
		z-index: 1;
	}
	.menuBoxSub .radomTitle .img01 {
		margin-bottom: 0.8rem;
	}
	.menuBoxSub .radomTitle .img02 {
		margin-bottom: 0.7rem;
	}
	.menuBoxSub .radomTitle .img03 {
		margin-bottom: 0.6rem;
	}
	.menuBoxSub .radomTitle .img05 {
		margin-bottom: 4.2rem;
	}
	.menuBoxSub .radomTitle .img07 {
		margin-bottom: 3.2rem;
	}
	.menuBoxSub .radomTitle .img08 {
		margin-bottom: 0.5rem;
	}
	.menuBoxSub .radomTitle .img09 {
		margin-bottom: 0.65rem;
	}
	.menuBoxSub .radomTitle .img10 {
		margin-bottom: 0.3rem;
	}
	.menuBoxSub .radomTitle .img11 {
		margin-bottom: 0.7rem;
	}
	.menuBox .mInner .logo a {
		margin-bottom: 2rem;
	}
	.menuBox .comFanclubBox .comVerticalTitle {
		top: 0;
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	position: relative;
	padding: 8.4rem 0 4.4rem;
}
#gFooter .fLogo {
	position: absolute;
	top: calc(50% + 2rem);
	transform: translateY(-50%);
	left: -0.8rem;
	width: 5.4rem;
}
#gFooter .fLogo a {
	display: block;
}
#gFooter .content {
	max-width: 88.4rem;
}
#gFooter .fInner .comVerticalTitle {
	font-size: 1.1rem;
}
#gFooter .fInner .rBox {
	order: 1;
	width: 44.7rem;
	margin-left: 5rem;
}
#gFooter .fInner .lBox {
	flex: 1;
}
#gFooter .comContentsBox {
	padding-right: 3rem;
}
#gFooter .comContentsBox li a {
	font-size: 2.9rem;
	font-weight: 300;
	letter-spacing: -0.01em;
}
#gFooter .comContentsBox ul {
	top: -0.8rem;
}
#gFooter .comFanclubBox {
	margin-bottom: 4.6rem;
	padding-right: 3.3rem;
}
#gFooter .comMemberBox li > .name {
	font-size: 1.6rem;
	padding-right: 2.3rem;
}
/* #gFooter .comMemberBox ul .ico {
	width: 0.6rem;
	height: 0.6rem;
} */
#gFooter .comMemberBox {
	padding-right: 2rem;
}
#gFooter .comMemberBox ul li {
	margin-bottom: 0.1rem;
}
#gFooter .comMemberBox {
	margin-bottom: 7.2rem;
}
#gFooter .comInsList li {
	width: 2.5rem;
}
#gFooter .comInsList ul {
	padding-right: 0.3rem;
}
#gFooter .fInner {
	margin-bottom: 8rem;
}
address {
	margin-right: 3.1rem;
	font-size: max(10px,1.1rem);
	color: #666666;
	letter-spacing: 0.04em;
	text-align: right;
}
#gFooter.dark a {
	color: #fff !important;
}
#gFooter .on a {
	color: #999 !important;
}
#gFooter.dark .fInner .comVerticalTitle {
	color: #fff !important;
}
#gFooter .comFanclubBox .logo {
	width: 8.5rem;
	position: relative;
	top: 0.5rem;
}
#gFooter:not(.dark) .comFanclubBox .logo {
	filter: brightness(0%);
}
#gFooter:not(.dark) .fLogo {
	filter: brightness(0%);
}
#gFooter:not(.dark) .comInsList li {
	filter: brightness(0%);
}
#gFooter.dark {
	background-image: none;
}
#gFooter .comFanclubBox .logo a {
	position: relative;
	height: 2rem;
}
.comFanclubBox .logo .rainsLink {
	margin: 0 -0.3rem 0 0.3rem;
}
#gFooter .comFanclubBox .logo a img {
	position: absolute;
	top: 0;
	left: 0;
}
#gFooter .comFanclubBox .logo a img.white {
	display: none;
}
#gFooter.dark .comFanclubBox .logo a img.white {
	display: block;
}
#gFooter.dark .comFanclubBox .logo a img.black {
	display: none;
}
/* #gFooter.dark .comMemberBox ul .snsUl {
	background-color: white;
} */
#gFooter.dark .comMemberBox ul .snsUl img {
	filter: brightness(0);
}
#gFooter.dark .comMemberBox ul .ico.on::before, 
#gFooter.dark .comMemberBox ul .ico.on::after { 
	background-color: #000;
}
#gFooter.dark .comMemberBox ul .snsUl .linkSpan a {
	color: #000 !important;

}
@media all and (min-width: 1000px) {
	#gFooter .comMemberBox p {
		top: 0.3rem;
	}
	#gFooter .fInner .lBox {
		margin-top: -0.7rem;
	}
}
@media all and (max-width: 999px) {
	#gFooter {
		padding: 10rem 0 2.6rem;
	}
	#gFooter .fInner {
		display: block;
	}
	#gFooter .fInner .rBox {
		width: auto;
		margin: 0 0 1.8rem;
	}
	#gFooter .content {
		max-width: inherit;
		padding: 0 1.6rem;
	}
	#gFooter .comContentsBox li a {
		font-size: 2.4rem;
	}
	#gFooter .comContentsBox ul {
		top: -0.7rem;
	}
	#gFooter .comContentsBox ul li {
		margin-bottom: 0.15rem;
	}
	#gFooter .fInner .comFanclubBox .comVerticalTitle {
		font-size: 1rem;
	}
	#gFooter .comFanclubBox .logo {
		width: 8.2rem;
	}
	#gFooter .comContentsBox {
		margin-bottom: 1rem;
	}
	#gFooter .comFanclubBox {
		margin-bottom: 3rem;
	}
	#gFooter .fInner .comMemberBox  .comVerticalTitle {
		font-size: 1rem;
	}
	#gFooter .comMemberBox li > .name {
		padding-right: 2rem;
		font-size: 1.4rem;
	}
	#gFooter .comMemberBox ul li {
		margin-bottom: -0.6rem;
	}
	#gFooter .comMemberBox {
		margin-bottom: 2.3rem;
	}
	#gFooter .comInsList {
		padding-right: 2.7rem;
	}
	#gFooter .comInsList li {
		width: 2.1rem;
	}
	address {
		font-size: 1rem;
	}
	#gFooter .fLogo {
		width: 5.9rem;
		top: 10rem;
		transform: none;
		z-index: 1;
	}
}
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-PSP */
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	introBox
------------------------------------------------------------*/
.introBox {
	height: 100svh;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 999;
	overflow-x: clip;
}
.introBox .step {
	width: 1366px;
	height: 780px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	will-change: transform;
}
/* step01 */
.introBox .step01 {
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	transition: opacity 1s;
}
.introBox .step01.show {
	opacity: 1;
}
.introBox .step01 .logo {
	width: 117px;
}
/* step02 */
.introBox .step02 .subBox {
	width: 100%;
	height: 100%;
	position: relative;
	will-change: transform;
}
.introBox .step02 .item {
	position: absolute;
	display: none;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	will-change: transform;
}
.introBox .step02.trans .item {
	transition: .64s;
}
.introBox .step02 .item01 {
	width: 33.53%;
	transform: translate(-59.96%,-42.6%) rotate(-3deg);
}
.introBox .step02 .item02 {
	width: 33.33%;
	transform: translate(10.64%,-129.3%) rotate(3deg);
}
.introBox .step02 .item03 {
	width: 33.1%;
	transform: translate(65.94%,-56%) rotate(-7deg);
}
.introBox .step02 .item04 {
	width: 33.63%;
	transform: translate(-118.54%,20.5%) rotate(3deg);
}
.introBox .step02 .item05 {
	width: 33.4%;
	transform: translate(-153.74%,-83.7%) rotate(6deg);
}
.introBox .step02 .item06 {
	width: 33.4%;
	transform: translate(-91.54%,-127.9%) rotate(-4deg);
}
.introBox .step02 .item07 {
	width: 33.3%;
	transform: translate(67%,19.4%) rotate(-4deg);
}
.introBox .step02 .item08 {
	width: 33.4%;
	transform: translate(-18.84%,26.9%) rotate(12deg);
}
.introBox .step02 .item09 {
	width: 33.26%;
	transform: translate(-171.24%,16.5%) rotate(-6deg);
}
.introBox .step02 .item10 {
	margin: -1.2% 0 0 1.7%;
	width: 62.23%;
	display: block;
	opacity: 0;
	transform: translate(-50%, -50%) scale(1.1) rotate(10deg);
}
.introBox .step02.trans .item10 {
	transition: .8s;
}
.introBox .step02 .item10.show {
	opacity: 1;
	transform: translate(-50%, -50%);
}
.introBox .step02.hide .item:not(.item10) {
	transform: translate(-50%,-50%) scale(1.17);
}
.introBox .step02.hide .item01 {
	transform: translate(-50%,-50%) scale(1.17) rotate(-3deg) !important;
}
.introBox .step02.hide .item02 {
	transform: translate(-7%,-85%) scale(1.17) rotate(3deg) !important;
}
.introBox .step02.hide .item03 {
	transform: translate(-50%,-50%) scale(1.17) rotate(-7deg) !important;
}
.introBox .step02.hide .item04 {
	transform: translate(-50%,-50%) scale(1.17) rotate(3deg) !important;
}
.introBox .step02.hide .item05 {
	transform: translate(-50%,-50%) scale(1.17) rotate(6deg) !important;
}
.introBox .step02.hide .item06 {
	transform: translate(-82.9%,-67.3%) scale(1.17) rotate(-4deg) !important;
}
.introBox .step02.hide .item07 {
	transform: translate(-8%,-27%) scale(1.17) rotate(-4deg) !important;
}
.introBox .step02.hide .item08 {
	transform: translate(-50%,-50%) scale(1.17) rotate(12deg) !important;
}
.introBox .step02.hide .item09 {
	transform: translate(-92%,-25%) scale(1.17) rotate(-6deg) !important;
}
/* step03 */
.introBox .step03 .bg {
	position: absolute;  
	bottom: -189px;
	left: 55px;
	z-index: -1;
	width: 1912px;
}
.introBox .step03 .bg02 {
	position: absolute;  
	bottom: 152px;
	left: 241px;
	z-index: -1;
	width: 237px;
}
.introBox .step03 .bg03 {
	position: absolute;
	width: 270px;
	right: 120px;
	top: 32px;
}
.introBox .step03 .bg img {
	width: 100%;
}
.introBox .step03 .radomTitle {
	position: absolute;
	left: 75px;
	bottom: 45px;
	display: flex;
	gap: 0 9.5px;
}
.introBox .step03 .radomTitle .img05 {
	margin: 0 50px 0 -12px;
}
.introBox .step03 .radomTitle .img06 {
	margin-right: -10px;
}
.introBox .step03 .radomTitle .img07 {
	margin-right: 33px;
}
.introBox .step03 .radomTitle .img10 {
	margin-right: -5px;
}
.introBox .step03 .radomTitle span {
	display: inline-block;
	vertical-align: top;
}
.introBox .step03 .radomTitle img {
	max-width: inherit;
	height: 84px;
}
.introBox .step03 .fade {
	display: none;
}
.introBox .step03 .title {
	position: absolute;
	bottom: 26.2%;
	left: 5.4%;
	font-size: 22px;
	letter-spacing: 0.01em;
	font-weight: 700;
	font-style: italic;
}
.introBox .step03 .title .txtSpan {
	font-size: 18px;
}
.introBox .step03 .title .num {
	font-size: 23px;
	margin-right: 3px;
	letter-spacing: -0.05em;
}
.introBox .step03 .rtBox {
	position: absolute;
	top: 26px;
	right: 23px;
}
.introBox .step03 .rbBox {
	position: absolute;
	bottom: 26px;
	right: 23px;
	z-index: 2;
}
.introBox .comMemberBox {
	padding-right: 12px;
}
.introBox .comMemberBox li > .name {
	pointer-events: none;
}
.introBox .comMemberBox li > .name.visible {
	pointer-events: auto;
}
.introBox .comMemberBox ul {
	top: -8px;
}
.introBox .comMemberBox ul .ico {
	/* width: 6px;
	height: 6px; */
	display: none;
}
.comMemberBox ul .ico.on {
	right: 8px;
	padding: 7px;
}
.comMemberBox ul .ico.on::before,
.comMemberBox ul .ico.on::after {
	width: 80%;
}
@media all and (min-width: 1000px) {
	.introBox .comMemberBox li > .name {
		padding-right: 22px;
	}
	.introBox .comMemberBox ul .ico {
		width: 8px;
    	height: 8px;
		right: 10px;
	}
	.introBox .comMemberBox > ul > li {
		padding-left: 10px;
	}
	.introBox .step02 .item05 {
		z-index: 10 !important;
	}
	.introBox .step02 .item10 {
		z-index: 11 !important;
	}
	.introBox .sp {
		display: none !important;
	}
}
@media all and (max-width: 999px) {
	.introBox .pc {
		display: none !important;
	}
	.introBox .step {
		width: 375px;
		height: 683px;
	}
	/* step02 */
	.introBox .step02 .item01 {
		width: 70%;
		transform: translate(-45%,-59%) rotate(-5deg) scale(1.02) rotate(-3deg);
	}
	.introBox .step02 .item02 {
		width: 70.2%;
		transform: translate(-19.9%, -177.1%) rotate(3deg);
	}
	.introBox .step02 .item03 {
		width: 70.3%;
		transform: translate(-77.2%, -59%) rotate(0);
	}
	.introBox .step02 .item04 {
		width: 72.83%;
		transform: translate(-37%, 12%) rotate(3deg);
	}
	.introBox .step02 .item05 {
		width: 71.1%;
		transform: translate(-80.7%, -164.6%) rotate(6deg);
	}
	.introBox .step02 .item06 {
		width: 70.69%;
		transform: translate(-6.9%, -39%) rotate(-23deg);
	}
	.introBox .step02 .item07 {
		width: 70.49%;
		transform: translate(-2.4%, 61%) rotate(-4deg);
	}
	.introBox .step02 .item08 {
		width: 68.77%;
		transform: translate(-93%, 36.8%) rotate(5deg);
	}
	.introBox .step02 .item09 {
		width: 70.76%;
		transform: translate(-75.9%, 85%) rotate(9deg);
	}
	.introBox .step02 .item10 {
		margin: -16% 0 0;
		width: 93%;
	}
	.introBox .step02.hide .item:not(.item10) {
		left: 50%;
		top: 41%;
		right: auto;
		bottom: auto;
		transform: translate(-50%,-50%);
	}
	.introBox .step02.hide .item01 {
		transform: translate(-50%,-50%) scale(1) rotate(-3deg) !important;
	}
	.introBox .step02.hide .item02 {
		transform: translate(-28.3%,-69.7%) rotate(3deg) !important;
	}
	.introBox .step02.hide .item03 {
		transform: translate(-50%,-50%) scale(1.0) rotate(-7deg) !important;
	}
	.introBox .step02.hide .item04 {
		transform: translate(-50%, -50%) scale(0.96) rotate(3deg) !important;
	}
	.introBox .step02.hide .item05 {
		transform: translate(-50%,-50%) scale(1.0) rotate(6deg) !important;
	}
	.introBox .step02.hide .item06 {
		transform: translate(-70.4%,-62%) rotate(-4deg) !important;
	}
	.introBox .step02.hide .item07 {
		transform: translate(-32%,-35%) scale(0.96) rotate(-4deg) !important;
		width: 71% !important;
	}
	.introBox .step02.hide .item08 {
		transform: translate(-50%,-50%) scale(1.0) rotate(12deg) !important;
	}
	.introBox .step02.hide .item09 {
		transform: translate(-75.7%,-33%) rotate(9.5deg) !important;
	}
	/* step03 */
	.introBox .step03 .radomTitle {
		width: 160px;
		display: flex;
		flex-wrap: wrap;
		left: 50%;
		bottom: 59px;
		gap: 4px 6px;
		justify-content: center;
		transform: translateX(-50%);
	}
	.introBox .step03 .radomTitle .img05 {
		margin: 0;
	}
	.introBox .step03 .radomTitle .img04 {
		margin-right: -7px;
	}
	.introBox .step03 .radomTitle img {
		display: block;
		height: 52px;
	}
	.introBox .step03 .radomTitle .img06 {
		margin-right: -7px;
		margin-left: 38px;
	}
	.introBox .step03 .radomTitle .img07 {
		margin-right: 30px;
	}
	.introBox .step03 .title {
		top: 12.6%;
		bottom: auto;
		left: auto;
		right: 5%;
		font-size: 19px;
	}
	.introBox .step03 .title .txtSpan {
		font-size: 16px;
	}
	.introBox .step03 .title .num {
		font-size: 21px;
	}
	.introBox .comMemberBox ul li {
		margin-bottom: -6px;
	}
	.introBox .step03 .rtBox {
		top: auto;
		right: 5px;
		bottom: 20%;
	}
	.introBox .comMemberBox > ul > li {
		border-radius: 5px;
		padding-left: 10px;
	}
	.introBox .step03 .rtBox .comMemberBox {
		padding-right: 0 !important;
	}
	.introBox .step03 .rbBox {
		bottom: auto;
		right: auto;
		left: 4.1%;
		top: 3.6%;
	}
	.introBox .step03 .rbBox .comFanclubBox {
		padding: 13px 0 0;
	}
	.introBox .step03 .rbBox .comVerticalTitle {
		color: #00182F;
		opacity: 0.6;
		right: auto;
		left: 0;
		font-size: 10px;
		letter-spacing: 0.02em;
		font-family: 'Roboto', sans-serif;
	}
	.introBox .step03 .rbBox .comVerticalTitle {
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb; 
		-moz-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
	}
	.introBox .step03 .comMemberBox {
		padding-right: 11px;
	}
	.introBox .comMemberBox li > .name {
		padding-right: 20px;
		font-size: 12px;
	}
	.introBox .comMemberBox ul .jsBox {
		height: 28px;
	}
	.introBox .comMemberBox ul .snsUl {
		height: 28px;
		padding: 3px 32px 1px 13px;
		gap: 0 14px;
	}
	.introBox .comMemberBox ul .snsUl img {
		display: block;
	}
	.introBox .comMemberBox ul .snsUl li {
		width: 20px;
	}
	.introBox .comMemberBox ul .ico {
		width: 8px;
		height: 8px;
		right: 10px;
	}
	.introBox .step01 .logo {
		width: 117px;
	}
	.introBox .comMemberBox ul {
		top: -8px;
	}
	.introBox .comFanclubBox .logo a{
		margin-bottom: 15px;
	}
	.introBox .comFanclubBox .logo{
		width: 69px;
		margin-bottom: 5px;
	}
	.introBox .comFanclubBox .logo img {
		display: block;
	}
}
/*------------------------------------------------------------
	comVerticalTitle
------------------------------------------------------------*/
.comVerticalTitle {
	position: absolute;
	right: 0;
	top: 0;
	writing-mode: vertical-rl;
	-webkit-writing-mode: tb-rl;
	white-space: nowrap;
	font-size: 1rem;
	letter-spacing: 0.04rem;
	text-align: left;
}
@media all and (max-width: 999px) {
}
/*------------------------------------------------------------
	comMemberBox
------------------------------------------------------------*/
.comMemberBox {
	padding-right: 2.3rem;
	position: relative;
	text-align: right;
}
.comMemberBox ul {
	position: relative;
	top: -0.4rem;
	overflow-x: clip;
}
.comMemberBox ul li {
	width: fit-content;
	margin-left: auto;
	margin-bottom: -0.6rem;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
}
.comMemberBox > ul > li {
	border-radius: 0.5rem;
	padding-left: 1rem;
	transition: .3s;
}
.comMemberBox > ul > li.show {
	background-color: #000000;
}
.dark .comMemberBox > ul > li.show,
#gHeader.background--dark + .menuBox .comMemberBox > ul > li.show {
	background-color: #fff;
}
#gFooter.dark .comMemberBox li.show > .name,
.dark .comMemberBox li.show > .name,
#gHeader.background--dark + .menuBox .comMemberBox li.show > .name {
	color: #000 !important;
}
.comMemberBox li > .name {
	padding-right: 2.2rem;
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 400;
	white-space: nowrap;
	z-index: 11;
}
.comMemberBox li.show > .name {
	color: #fff;
}
.comMemberBox ul .ico {
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%);
	width: 0.8rem;
	height: 0.8rem;
	cursor: pointer;
	z-index: 10;
	transition: all .3s ease;
}
.comMemberBox ul .ico:before,
.comMemberBox ul .ico:after {
	position: absolute;
	right: 0;
	top: 50%;
	width: 100%;
	height: 1px;
	background-color: #999999;
	content: "";
	transition: all ease 0.5s;
	transform: translate3d(0,0,0);
}
.comMemberBox ul .ico:after {
	transform: rotate(90deg);
}
.comMemberBox ul .ico.on:before,
.comMemberBox ul .ico.on:after {
	background-color: #DDDDDD;
}
.comMemberBox ul .ico.on::after {
	transform: rotate(45deg) translate3d(0,0,0);
}
.comMemberBox ul .ico.on::before {
	transform: rotate(-45deg) translate3d(0,0,0);
}
.comMemberBox ul .jsBox {
	margin-right: -999rem;
	height: 2.8rem;
	display: flex;
	align-items: center;
	transition: all .3s ease;
	overflow: hidden;
	opacity: 0;
	transform: translate3d(0,0,0);
}
.comMemberBox ul li:has(.ico.on) .jsBox {
	margin-left: -1.5rem;
	opacity: 1;
}
.comMemberBox ul .snsUl {
	top: auto;
	height: 2.8rem;
	padding: 0.3rem 3.2rem 0.1rem 1.3rem;
	display: flex;
	align-items: center;
	gap: 0 1.4rem;
}
.comMemberBox ul .snsUl li {
	margin-bottom: 0 !important;
	width: 2rem;
}
.comMemberBox ul .snsUl li:has(.linkSpan) {
	width: auto;
}
.comMemberBox ul .snsUl .linkSpan {
	margin-top: -0.4rem;
	display: inline-block;
}
.comMemberBox ul .snsUl .linkSpan a {
	color: #fff;
	font-size: 1.1rem;
	letter-spacing: 0;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.comMemberBox ul .snsUl .linkSpan .no {
	pointer-events: none;
}
.dark .comMemberBox ul .snsUl .linkSpan a,
#gHeader.background--dark + .menuBox .comMemberBox ul .snsUl .linkSpan a {
	color: #000;
}

@media (min-width: 1000px) and (hover: hover) {
	.menuBox .mInner .logo a:hover,
	.comMemberBox ul .snsUl .linkSpan a:hover,
	.comMemberBox li a:hover img,
	#gHeader .menu:hover,
	.comMemberBox li > .name:hover,
	.comMemberBox ul .ico:hover::before,
	.comMemberBox ul .ico:hover::after {
		opacity: 0.7;
	}
}
@media all and (max-width: 999px) {
	.comMemberBox li > .name {
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	comContentsBox
------------------------------------------------------------*/
.comContentsBox {
	margin-bottom: 3rem;
	padding-right: 2.3rem;
	position: relative;
	text-align: right;
}
.comContentsBox ul {
	position: relative;
	top: -0.5rem;
}
.comContentsBox li a {
	position: relative;
	line-height: 1.27;
	font-size: 2.2rem;
	font-weight: 300;
	letter-spacing: 0;
	display: inline-block;
	white-space: nowrap;	
	overflow: hidden;
	vertical-align: top;
}
.comContentsBox li a::after {
	position: absolute;
	bottom: 0.5rem;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: currentColor;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}
@media (min-width: 1000px) and (hover: hover) {
	.comContentsBox li a:hover::after {
		transform-origin: left top;
		transform: scale(1, 1);
	}
    
}
@media all and (max-width: 999px) {
}
/*------------------------------------------------------------
	comFanclubBox
------------------------------------------------------------*/
.comFanclubBox {
	margin: 0 0 3.6rem auto;
	padding-right: 2.5rem;
	width: fit-content;
	position: relative;
	text-align: right;
}
.comFanclubBox .logo {
	width: 8.5rem;
	margin-bottom: 0.5rem;
}
.comFanclubBox .logo a {
	margin-bottom: 1.6rem;
	display: block;
}
.ipad .comFanclubBox .logo .pad {
	display: block !important;
}
.ipad .comFanclubBox .logo .pc {
	display: none;
}
@media (min-width: 1000px) and (hover: hover) {
	.comFanclubBox .logo a:hover img {
		opacity: 0.7;
	}
}


@media all and (max-width: 999px) {
	.comFanclubBox .logo {
		width: 6.9rem;
	}
	.comFanclubBox .logo a {
		margin-bottom: 0.7rem;
	}
	.introBox .comFanclubBox .logo .rainsLink {
		margin: 0;
	}
}

/*------------------------------------------------------------
	comInsList 
------------------------------------------------------------*/
.comInsList ul {
	padding-right: 2.5rem;
	justify-content: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 0 1rem;
}
.comInsList li {
	width: 2rem;
}
.comInsList li a {
	display: block;
}
@media (min-width: 1000px) and (hover: hover) {
	.comInsList a:hover img {
		opacity: 0.7;
	}
}
@media all and (max-width: 999px) {
	.comInsList ul {
		gap: 0 0.8rem;
	}
}
/*------------------------------------------------------------
	typewrite
------------------------------------------------------------*/
.typewrite,
.typewrite-menu,
.typewrite-intro {
	opacity: 0;
}
.typewrite.visible,
.typewrite-menu.visible,
.typewrite-intro.visible {
	opacity: 1;
}
/*------------------------------------------------------------
	fade
------------------------------------------------------------*/
/* fadeIn */
.fadeIn {
    opacity: 0;
	visibility: hidden;
    transition: all .8s ease-out;
}
.fadeIn.visible {
    opacity: 1;
	visibility: visible;
}
/* fadeInUp */
.fadeInUp {
    opacity: 0;
    transform: translateY(3rem);
    transition: all .8s ease-out;
}
.fadeInUp.visible {
    opacity: 1;
    transform: none;
}
/* fadeClip */
.fadeClip {
	position: relative;
	display: block;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(
		110deg,
		#000 50%,
		rgba(0, 0, 0, 0) 50%
	);
	-webkit-mask-position: right center;
	-webkit-mask-size: 256% 110%;
	-webkit-mask-repeat: no-repeat;
}
body:not(.fromDetail) .fadeClip.visible {
	animation: right 1s cubic-bezier(0.87, 0, 0.13, 1) both;
}
.fromDetail .fadeClip {
	opacity: 1;
	-webkit-mask-position: left center;
}
@keyframes right {
	0% {
		opacity: 0;
		-webkit-mask-position: right center;
	}
	1% {
		opacity: 1;
	}
	100% {
		-webkit-mask-position: left center;
	}
}
/* fadeTitle */
.fadeTitle,
.fadeRightTitle {
	overflow: hidden;
}
body:not(.fromDetail) .fadeTitle .subFade,
body:not(.fromDetail) .fadeRightTitle .subFade {
	display: block;
	opacity: 0;
    transform: translateY(100%);
    transition: all 0.8s ease;
}
body:not(.fromDetail) .fadeTitle.visible .subFade,
body:not(.fromDetail) .fadeRightTitle.visible .subFade {
	opacity: 1;
    transform: none !important;
}
/* fadeRightTitle */
body:not(.fromDetail) .fadeRightTitle .subFade {
    transform: translateX(-100%);
}
/* fadeLine */
body:not(.fromDetail) .fadeLine::before {
	transform: scaleX(0);
	transform-origin: left center;
}
body:not(.fromDetail) .fadeLine.visible::before {
	transform: scaleX(1);
    transition-property: transform;
	transition-duration: 1s;
    transition-timing-function: cubic-bezier(0.83, 0, 0.17, 1);
}
/* randomItem */
.randomItem {
	opacity: 0;
}
.randomItem.show {
	opacity: 1;
}
/* lightShow */
.lightShow {
	filter: brightness(5);
    transition: filter .5s cubic-bezier(.215, .61, .355, 1);
}
.lightShow.visible {
	filter: brightness(1);
}
/*------------------------------------------------------------
	pointer
------------------------------------------------------------*/
#pointer {
	margin: -4.5px 0 0 -4.5px;
	width: 0.9rem;
	height: 0.9rem;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9998;
	overflow: hidden;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.8);
	transition: transform ease-out .3s,margin ease-out 0.2s,width ease-out 0.2s,height ease-out 0.2s;	
	pointer-events: none;
	mix-blend-mode: difference;
	transform-origin: center center;
}
#pointer.hover {
	margin: -3.35rem 0 0 -3.35rem;
	width: 6.7rem;
	height: 6.7rem;
}
#pointer.sml {
	margin: -0.45rem 0 0 -0.45rem;
	width: 0.9rem;
	height: 0.9rem;
}
#pointer .txt {
	margin: -2.9rem 0 0 -2.9rem;
	width: 5.7rem;
	height: 5.7rem;
	position: absolute;
	left: 50%;
	top: 50%;
	color: #000;
	font-weight: 500;
	font-size: 1.2rem;
	letter-spacing: 0.06em;
	text-align: center;
	align-items: center;
	justify-content: center;
	display: flex;
	opacity: 0;
	visibility: hidden;
	font-family: 'Roboto', sans-serif;
}
#pointer.hover .txt {
	opacity: 1;
	visibility: visible;
}
#pointer.hover-hide {
	opacity: 0;
	visibility: hidden;
}
#pointer.sml .txt {
	opacity: 0;
	visibility: hidden;
}

@media (min-width: 1000px) and (hover: hover) {
    
}
@media all and (max-width: 999px) {
}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	max-width: 104.5rem;
	margin: 0 auto;
	padding: 0 2rem;
}
@media (min-width: 1000px) and (hover: hover) {
	
}

@media all and (max-width: 999px) {
	.content {
		padding: 0 2.5rem;
	}
}
/*------------------------------------------------------------
	viewLink
------------------------------------------------------------*/
.viewLink {
	margin-right: 0.5rem;
	text-align: right;
}
.viewLink a {
	font-size: 1.8rem;
	letter-spacing: 0.03em;
	display: inline-block;
	text-underline-offset: 4px;
	text-decoration: underline;
}
.viewLink.white a {
	color: #fff;
}
@media (min-width: 1000px) and (hover: hover) {
	.viewLink a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 999px) {
	.viewLink {
		text-align: left;
	}
	.viewLink a {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	discographyUl
------------------------------------------------------------*/
#main .ulBox {
	padding-top: 1rem;
	position: relative;
	z-index: 1;
}
#main .ulBox .line {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: -1;
}
#main .ulBox .line02 {
	top: 3.5rem;
}
#main .ulBox .line03 {
	top: 7.1rem;
}
#main .ulBox .line04 {
	top: 10.6rem;
}
#main .ulBox .line05 {
	top: 14.2rem;
}
#main .ulBox .line::before {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	transition-duration: 2s;
	content: "";
}
#main .discographyUl li {
	margin: 0 4.9rem 0 1px;
}
#main .discographyUl a {
	color: #fff;
}
#main .discographyUl .viewLink {
	text-align: left;
}
#main .discographyUl .viewLink a {
	color: #000000;
	font-size: max(10px,1.1rem);
	overflow: hidden;
}
#main .discographyUl small {
	font-size: max(10px,1.1rem);
	margin-left: 0.5rem;
}
#main .discographyUl .photoBox {
	padding: 1rem 0;
	margin-bottom: 2.6rem;
}
#main .discographyUl .photo {
	position: relative;
	background-color: #000;
}
#main .discographyUl .photo::before {
	border: 1px solid #666666;
	position: absolute;  
	top: 0;
	right: 0;  
	bottom: 0;
	left: 0;
	content: ""; 
	pointer-events: none;
	transition: opacity .3s;
	z-index: 1;
}
#main .discographyUl .photo a {
	aspect-ratio: 1;
	display: block;
	background-color: #000;
}
#main .discographyUl .photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.cardJs {
	perspective: 1000px;
	transform-style: preserve-3d;
}
#main .discographyUl dl {
	margin-bottom: 1.6rem;
	color: #fff;
}
#main .discographyUl dt {
	margin-bottom: 0.6rem;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	font-family: 'Roboto', sans-serif;
}
#main .discographyUl dt .date {
	padding-right: 0.5rem;
	min-width: 7.8rem;
	padding-top: 0.2rem;
	font-size: 1.2rem;
	color: #CCCCCC;
	letter-spacing: 0.02em;
}
#main .discographyUl dt .rSpan {
	margin-right: -4rem;
	flex: 1;
}
#main .discographyUl dt .rSpan span {
	padding: 0 1rem;
	background-color: #000;
	min-width: 6rem;
	line-height: 1.1;
	display: inline-block;
	margin: 0 0.2rem 0.2rem 0;
	font-size: 1rem;
	letter-spacing: 0.05em;
	text-align: center;
	border: 1px solid #333333;
}
#main .discographyUl dd {
	line-height: 1.69;
}
#main .comLink a {
	overflow: hidden;
	display: inline-block;
	border: 1px solid #484848;
	border-radius: 0.3rem;
	text-align: center;
	font-style: italic;
	font-size: 1.2rem;
	color: #fff;
	position: relative;
	padding: 0.1rem 0.6rem;
	background-color: #000000;
	font-family: 'Roboto', sans-serif;
}
#main .comLink .subSpan {
	position: relative;
	z-index: 1;
}
#main .comLink .subSpan span {
	margin-right: 0.2rem;
}
#main .comLink a:after {
	position: absolute;
	left: 0;
	top: 0;
	content: '';
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 0.3rem;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}
#main .discographyUl li {
	width: 22rem !important;
}
#main .discographyUl li p {
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.75;
	margin-bottom: 1rem;
}
#main .discographyUl li p a,
#main .discographyUl li p .ttl {
	display: inline-block;
	color: #000000;
	overflow: hidden;
    vertical-align: top;
}
#main .discographyUl li p:last-child {
	margin-bottom: 0;
}
@media (min-width: 1000px) and (hover: hover) {
	#main .comLink a:hover {
		color: #000;
	}
	#main .discographyUl li p a:hover,
	#main .discographyUl dd a:hover {
		opacity: 0.7;
	}
	#main .comLink a:hover:after {
		transform-origin: left top;
   		transform: scale(1, 1);
	}
}
@media all and (max-width: 999px) {
	#main .ulBox {
		padding: 1.2rem 2.5rem 0;
	}
	#main .discographyUl li {
		width: 18rem !important;
		margin-right: 2.4rem;
	}
	#main .discographyUl li .comLink {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		gap: 0.7rem 0;
	}
	#main .discographyUl li .comLink a {
		width: fit-content;
		min-width: 10.4rem;
	}
	#main .discographyUl .photoBox {
		margin-bottom: 1.5rem;
	}
	#main .discographyUl dl {
		margin-bottom: 1.5rem;
	}
	#main .comLink a {
		padding: 0 0.5rem 0.1rem;
		font-size: 1.1rem;
	}
	#main .comLink .subSpan span {
		font-size: 1.2rem;
	}
	#main .discographyUl li p {
		font-size: 1.4rem;
		margin-bottom: 0.5rem;
		line-height: 1.5;
	}
	#main .discographyUl small {
		font-size: 1.1rem;
	}
	#main .discographyUl .viewLink a {
		font-size: 1rem;
		text-underline-offset: 2px;
	}
	#main .discographyUl li .date {
		margin-bottom: 0;
	}
}
/*------------------------------------------------------------
	popBox
------------------------------------------------------------*/
.popBox {
	position: fixed;
	background-color: #000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1001;
	opacity: 0;
	pointer-events: none;
	transition: opacity .8s;;
}
.popBox.show {
	opacity: 1;
    pointer-events: visible;
}
.popBox .videoBox {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
.popBox .videoInner {
	margin: 0 auto;
	width: 100%;
	padding: 0 5rem 0 5rem;
}
.popBox iframe {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: auto;
	max-width: 1296px;
    /* height: 34vw; */
}
.popBox .close {
	position: fixed;
	top: 3.5rem;
	padding: 1rem;
	box-sizing: content-box;
	right: 4.5rem;
	width: 6rem;
	z-index: 10;
}
@media (min-width: 1000px) and (hover: hover) {
	.popBox .close:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 999px) {
	.popBox .close {
		width: 4rem;
		right: 1.9rem;
		top: 1.5rem;
	}
	.popBox iframe {
		width: 100%;
		height: 60vw;
	}
	.popBox .videoInner {
		padding: 0;
	}
}
/*------------------------------------------------------------
	darkBg
------------------------------------------------------------*/
/* .darkBg {
	background: url(../img/common/bg_dark.jpg) no-repeat center top / cover;
}

@media all and (max-width: 999px) {
	body:has(.darkBg) #fixBg {
		background-repeat: repeat-y;
		background-size: 100% auto;
		background-position: center top;
	}
} */
/*------------------------------------------------------------
	pageTitle
------------------------------------------------------------*/
.pageTitle {
	margin-bottom: 2.7rem;
	width: fit-content;
	position: sticky;
	left: 2.3rem;
	top: 1.9rem;
	color: #fff;
	font-size: 11rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1;
	white-space: nowrap;
	transition: opacity .3s;
}
.pageTitle.shalow {
	opacity: 0.2;
}
@media (min-width: 1000px) and (hover: hover) {
    
}
@media all and (max-width: 999px) {
	.pageTitle {
		margin: 0 0 1.1rem 1.5rem;
		position: static;
		top: auto;
		left: auto;
		font-size: 4.9rem;
	}
}
/*------------------------------------------------------------
	naviList
------------------------------------------------------------*/
.naviList {
	padding: 0 3rem;
	position: relative;
	z-index: 4;
	margin-bottom: 7.6rem;
}
.naviList ul {
	gap: 2rem 3rem;
}
.naviList li a {
	color: #fff;
	font-size: 2.9rem;
	letter-spacing: 0.01em;
	position: relative;
}
.naviList li a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: rgba(255, 255, 255, 0.5);
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}
.naviList .liStyle a {
	letter-spacing: 0.06em;
}
.naviList.cloned {
	margin: 0 !important;
	padding-right: 10rem;
	min-height: 15.1rem;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	background: linear-gradient(rgba(0, 0, 0, .85) 0%, rgba(0, 0, 0, 0) 100%);
	transform: translateY(-100%);
	transition: .3s;
	z-index: 20;
}
.naviList.cloned ul {
	gap: 2rem 1.8rem;
	padding-right: 1rem;
	padding-top: 1.3rem;
	justify-content: flex-end;
}
.naviList.cloned.visible {
	transform: none;
}
.naviList.cloned ul a {
	font-size: 2rem;
}
.naviList .current-cat a::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
@media (min-width: 1000px) and (hover: hover) {
	.naviList li a:hover::after {
		transform-origin: left top;
    	transform: scale(1, 1);
	}
}

@media all and (max-width: 999px) {
	.naviList {
		margin-bottom: 4.7rem;
		padding: 0 1.4rem;
	}
	.naviList ul {
		gap: 2rem 1.5rem;
	}
	.naviList li a {
		font-size: 1.6rem;
	}
	.naviList.cloned {
		padding: 0;
		min-height: 7.8rem;
		top: auto;
		bottom: 0;
		background: linear-gradient(rgba(0, 0, 0, 0) 0%, #000 100%);
		transform: translateY(100%);
	}
	.naviList.cloned ul {
		gap: 2rem 1.5rem;
		padding-right: 0;
		padding-top: 3.7rem;
		justify-content: center;
	}
	.naviList.cloned.visible {
		transform: none;
	}
	.naviList.cloned ul a {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	comBox
------------------------------------------------------------*/
.comBox {
	margin: 0 auto;
	padding: 0 11rem 0 5rem;
	max-width: 136.6rem;
}
@media (min-width: 1000px) and (hover: hover) {
    
}
@media all and (max-width: 999px) {
	.comBox {
		max-width: inherit;
		padding: 0 1.7rem;
	}
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
#main .arrowList{
	margin-left: -1.5rem;
	display: flex;
	flex-wrap: wrap;
}
#main .arrowList li {
	width: 0.9rem;
	box-sizing: content-box;
	padding: 0 1.5rem;
	cursor: pointer;
}
@media (min-width: 1000px) and (hover: hover) {
	#main .arrowList li:hover {
		opacity: 0.7;
	}    
    
}
@media all and (max-width: 999px) {
	#main .arrowList {
		margin: 0 1rem 0 0;
		justify-content: flex-end;
	}
}

@media all and (min-width: 1000px) and (max-width: 1500px) {
	#main .discographyUl dt .rSpan span {
		font-size: max(10px,1rem);
	}
}

/*------------------------------------------------------------
	comInner
------------------------------------------------------------*/
#main .comInner {
	margin-bottom: 14.7rem;
	position: relative;
	text-align: center;
	z-index: 10;
}
#main .comInner .link a {
	color: #fff;
	font-size: 1.4rem;
	letter-spacing: 0.03em;
}
#main .comInner .prev {
	position: absolute;
	top: 50%;
	left: 6rem;
	transform: translateY(-50%);
}
#main .comInner .next {
	position: absolute;
	top: 50%;
	right: 6rem;
	transform: translateY(-50%);
}
#main .comInner .next a,
#main .comInner .prev a {
	display: inline-block;
	padding: 0 2rem;
	font-size: 1.4rem;
	color: #fff;
	letter-spacing: 0.03em;
	background-size: 0.7rem auto;
	background-repeat: no-repeat;
}
#main .comInner .prev a {
	background-image: url(../img/common/prev.png);
	background-position: left center;
}
#main .comInner .next a {
	background-image: url(../img/common/next.png);
	background-position: right center;
}
#main .comInner.border {
	max-width: 108.6rem;
	margin: 0 auto;
	padding-top: 2.2rem;
	border-top: 1px solid #4B4B4B;
}
#main .comInner.border .prev {
	left: 0;
	top: calc(50% + 1rem);
}
#main .comInner.border .next {
	right: 0;
	top: calc(50% + 1rem);
}
@media (min-width: 1000px) and (hover: hover) {
	#main .comInner a:hover {
		opacity: 0.7;
	}
    
}
@media all and (max-width: 999px) {
	#main .comInner .prev {
		left: -0.3rem;
	}
	#main .comInner .next {
		right: -0.3rem;
	}
	#main .comInner .next a, #main .comInner .prev a {
		background-size: 0.5rem auto;
		padding: 0 1.3rem;
	}
	#main .comInner {
		margin-bottom: 4.6rem;
	}
	#main .comInner.border {
		padding-top: 1.7rem;
		max-width: inherit;
		margin: 0 1.5rem;
	}
	#main .comInner.border .prev {
		top: calc(50% + 0.8rem);
	}
	#main .comInner.border .next {
		top: calc(50% + 0.8rem);
	}
}

/*------------------------------------------------------------
	comLink02
------------------------------------------------------------*/
.comLink02 {
	width: 22.45rem;
	margin: 0 auto;
}
.comLink02 a {
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 4.8rem;
	color: #fff;
	overflow: hidden;
	position: relative;
	border: 1px solid #727272;
}
.comLink02 a:after {
	position: absolute;
	left: 0;
	top: 0;
	content: '';
	width: 100%;
	height: 100%;
	background: #fff;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}
.comLink02 .subSpan {
	position: relative;
	z-index: 1;
	padding-right: 1.9rem;
	display: inline-block;
	background: url(../img/common/icon02.png) no-repeat right center;
	background-size: 1.1rem auto;
}
#main .comLink02.wid {
	width: 39.5rem;
}
#main .comLink02.wid a {
	min-height: 6rem;
	font-size: 1.5rem;
}
.comLink02 a.noBlank .subSpan {
	padding-right: 0 !important;
	background: none !important;
}

.comLink03 {
	width: 26rem;
}
.comLink03 a {
	color: #000;
	min-height: 4rem;
	font-size: 1.3rem;
	letter-spacing: 0.1em;
	border-color: #000;
}
.comLink03 .subSpan02 {
	position: relative;
	z-index: 1;
}
.comLink03 a::after {
	background: #000;
}
@media (min-width: 1000px) and (hover: hover) {
	.comLink02 a:hover {
		color: #000;
	}
	.comLink02 a:hover:after {
		transform-origin: left top;
    	transform: scale(1, 1);
	}
	.comLink03 a:hover {
		color: #fff;
	}
    
}
@media all and (max-width: 999px) {
	.comLink02 {
		width: auto;
		max-width: 31rem;
	}
	.comLink02 a {
		min-height: 6rem;
		border-radius: 0rem;
		font-size: 1.5rem;
	}
	.comLink03 {
		max-width: 28rem;
	}
	.comLink03 a {
		min-height: 4rem;
		font-size: 1.3rem;
	}
}

/*------------------------------------------------------------
	schedule
------------------------------------------------------------*/
#main .comBox02 {
	margin: 0 auto;
	max-width: 136.6rem;
	position: relative;
}
#main .scheduleTtl {
	position: absolute;
	left: 2.4rem;
	top: 1.6rem;
	bottom: 0;
	height: 100%;
}
#main .scheduleTtl span {
	display: block;
	position: sticky;
	left: -0;
	z-index: 1;
	width: 5.8rem;
	top: 50%;
	transform: translateY(-50%);
}
#main .scheduleSec .lBox {
	width: 25.7%;
}
#main .scheduleSec .lBox .sub {
	margin: 8.1rem 2.3rem 0 0;
	padding-left: 2rem;
	position: sticky;
	top: 8.1rem;
	left: 0;
}
#main .scheduleSec .comList {
	/* margin-top: -0.6rem; */
	padding-right: 2.3rem;
	text-align: right;
}
#main .comList li {
	font-weight: 300;
	line-height: 1.3;
	font-size: 2.2rem;
} 
#main .comList .on a {
	opacity: 0.3;
}
#main .comList li a {
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
} 
#main .scheduleSec .rBox {
	padding: 4.5rem 0 0;
	flex: 1;
	border-left: 1px solid #ADADAD;
}
#main .scheduleList li {
	padding: 2.8rem 11rem 3rem;
	position: relative;
}
#main .scheduleList li:after {
	width: 9999px;  
	height: 1px;
	background-color: #464646;
	position: absolute;  
	bottom: 0;
	left: 0;
	content: ""; 
}
#main .scheduleList li > a {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.54;
	letter-spacing: 0.015em;
}
#main .scheduleList li .new {
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.015em;
	color: #F94BA2;
	margin-left: 1.5rem;
	vertical-align: 0.2rem;
}
#main .comDl {
	margin-top: 1.2rem;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
#main .comDl:first-child {
	margin-top: 0;
}
#main .comDl dt {
	padding-right: 0.2rem;
	min-width: 7.6rem;
	margin: -0.1rem 0 0 0;
	font-size: 1.2rem;
	letter-spacing: 0.04em;
	color: #B1B1B1;
}
#main .comDl dd {
	flex: 1;
	padding-top: 0.2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
#main .comDl dd .txtSpan {
	display: inline-block;
	font-size: 1rem;
	letter-spacing: 0.05em;
	color: #C3C3C3;
	min-width: 6.5rem;
	line-height: 1;
	padding: 0 0.5rem;
	text-align: center;
	border: 1px solid rgba(230, 230, 230, 0.5);
}
#detail .comBox02 {
	padding: 8rem 11rem 0;
}
#detail .comBox02 h2:not(.wysywig h2) {
	margin: 0 6rem 7.9rem 0;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid #D5D5D5;
}
#detail .comBox02 h2:not(.wysywig h2) img {
	width: 7.7rem;
}
#detail .scheduleSec {
	margin-bottom: 12.5rem;
}
#detail .scheduleSec .lBox {
	width: 40.2%;
}
#detail .scheduleSec .lBox .sub {
	padding: 0 3rem 0 0;
	margin: 0;
}
#detail .scheduleSec .rBox {
	border: none;
}
#detail .scheduleSec .comDl {
	margin-bottom: 1.2rem;
}
#detail .scheduleSec .lBox h3 {
	margin-bottom: 5rem;
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.54;
}
#detail .scheduleSec .lBox h3 .new {
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	color: #F94BA2;
	margin-left: 1rem;
	font-weight: 400;
}
#detail .scheduleSec .snsList {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 1rem;
}
#detail .scheduleSec .snsList li {
	font-size: 1.2rem;
	letter-spacing: 0.03em;
}
#detail .scheduleSec .snsList li p {
	margin-right: 1.2rem;
}
#detail .scheduleSec .snsList img {
	transform: translate3d(0,0,0);
	width: 3rem;
}
#detail .scheduleSec .rBox p {
	margin-bottom: 1.5rem;
	font-size: 1.5rem;
	letter-spacing: 0.03em;
	line-height: 1.8;
}
#detail .scheduleSec .rBox p.img {
	margin-bottom: 0.6rem;
}
#detail .scheduleSec .rBox a {
	text-decoration-line:underline !important;
}
#detail .scheduleSec .rBox p.img + .cap {
	display: block;
}
#detail .scheduleSec .rBox .youtube {
	margin-top: 3rem;
}
#detail .scheduleSec .rBox .youtube:first-of-type {
	margin-top: 0;
}
#detail .scheduleSec .rBox h4 {
	font-size: 1.5rem;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: 0.03em;
}
#detail .scheduleSec .rBox h3 {
	font-size: 2rem;
	line-height: 1.5;
}
#detail .scheduleSec .rBox .linkP {
	font-size: 1.7rem;
}
#detail .comBox02 .wysywig {
	padding-bottom: 4rem;
}
#detail .comBox02 .wysywig:last-child {
	padding-bottom: 0;
}
/* #detail .scheduleSec .rBox p:has(a) {
	padding-top: 2.6rem;
} */
#detail .scheduleSec .rBox p a {
	font-size: 1.7rem;
	border-bottom: 1px solid #D5D5D5;
	word-break: break-all;
}
#detail .scheduleSec .rBox h6 {
	margin-bottom: 1.5rem;
	font-size: 1.3rem;
	letter-spacing: 0.03em;
	line-height: 1.8;
	font-weight: 400;
}
#detail .comInner.border {
	margin-right: 6rem;
	max-width: inherit;
}
@media (min-width: 1000px) and (hover: hover) {
	#detail .comBox02 h2:not(.wysywig h2) a:hover,
	#detail .scheduleSec .snsList li a:hover,
	#detail .scheduleSec .rBox p a:hover,
	#main .scheduleList li > a:hover {
		opacity: 0.7;
	}
	#main .comList li a:hover {
		opacity: 0.3;
	}
}

@media all and (min-width: 1000px) {
	#main .scheduleSec .lBox .comVerticalTitle {
		top: 0.4rem;
	}
	#main .comBox02 {
		min-height: 40rem;
	}
}

@media all and (min-width: 1000px) and (max-width: 1500px) {
	#main .comDl dd .txtSpan {
		font-size: max(10px, 1rem);
	}
	#main .scheduleSec .lBox .comVerticalTitle {
		font-size: max(10px, 1rem);
	}
}

@media all and (max-width: 999px) {
	#main .comBox02 {
		padding: 0 1.5rem;
		max-width: inherit;
	}
	#main .scheduleTtl {
		padding: 10rem 1.5rem 4.3rem;
		position: static;
	}
	#main .scheduleSec {
		display: block;
	}
	#main .scheduleSec .rBox {
		padding: 0;
		border: none;
		position: relative;
		z-index: 11;
	}
	#main .scheduleTtl span {
		position: static;
		width: 12.8rem;
		transform: none;
	}
	#main .scheduleList {
		margin: 0 -2rem;
	}
	#main .scheduleList li {
		padding: 2rem 3rem 2.1rem 2rem;
	}
	#main .selectList {
		margin-bottom: 1.1rem;
		display: flex;
		flex-wrap: wrap;
		gap: 0 1.8rem;
	}
	#main .selectList > li {
		position: relative;
		min-width: 11rem;
	}
	#main .selectList .subSpan {
		font-size: 1.2rem;
		letter-spacing: 0.02em;
		color: #CCCCCC;
		display: block;
		line-height: 1.2;
		padding-right: 1.6rem;
		background: url(../img/common/icon03.png) no-repeat right 0.5rem center;
		background-size: 0.7rem auto;
		border-bottom: 1px solid #707070;
	}
	#main .selectList .subUl {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		z-index: 1;
		padding: 1.2rem 1rem 1.5rem 1.6rem;
		background-color: rgba(255, 255, 255, 0.94);
	}
	#main .selectList .subUl li {
		position: relative;
	}
	#main .selectList .subUl li a {
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		z-index: 1;
	}
	#main .scheduleList li > a {
		font-size: 1.6rem;
		line-height: 1.44;
	}
	#main .scheduleList li .new {
		font-size: 1.2rem;
		vertical-align: 0;
	}
	#main .comDl dt {
		min-width: 7.3rem;
	}
	#main .comDl dd .txtSpan {
		font-size: 1rem;
	}
	#main .comDl {
		margin-top: 1rem;
	}
	input[type="checkbox"] {
		display: none;
	}
	input[type="checkbox"] ~ span {
		background: url(../img/common/check01.png) no-repeat left center;
		background-size: 1rem auto;
		border-radius: 0;
		display: inline-block;
		line-height: 20px;
		color: #000;
		cursor: pointer;
		padding: 0.2rem 0 0.2rem 1.6rem;
	}
	input[type="checkbox"]:checked ~ span {
		background-image: url("../img/common/check02.png");
	}
	input[type="radio"] {
		display: none;
	}
	input[type="radio"] ~ span {
		background: url(../img/common/radio01.png) no-repeat left center;
		background-size: 1rem auto;
		border-radius: 0;
		display: inline-block;
		line-height: 20px;
		color: #000;
		cursor: pointer;
		padding: 0.2rem 0 0.2rem 1.6rem;
	}
	input[type="radio"]:checked ~ span {
		background-image: url("../img/common/radio02.png");
	}
	#detail .comBox02 {
		padding-top: 8.5rem;
	}
	#detail .comBox02 h2:not(.wysywig h2) img {
		width: 6.5rem;
	}
	#detail .comBox02 h2:not(.wysywig h2) {
		padding-bottom: 0.4rem;
		margin: 0 0 3.4rem;
	}
	#detail .scheduleSec .lBox {
		width: auto;
	}
	#detail .scheduleSec .lBox .sub {
		position: relative;
		top: auto;
		left: auto;
		padding: 0;
	}
	#detail .scheduleSec .lBox .comDl .name {
		margin: -0.3rem 0 0 0.5rem;
	}
	#detail .scheduleSec .lBox h3 {
		margin-bottom: 4.4rem;
		font-size: 2.2rem;
		letter-spacing: 0.01em;
		line-height: 1.45;
	}
	#detail .scheduleSec .lBox h3 .new {
		font-size: 1.4rem;
	}
	#detail .scheduleSec .comDl {
		margin-bottom: 1.4rem;
	}
	#detail .scheduleSec .rBox p {
		font-size: 1.4rem;
		line-height: 1.57;
		letter-spacing: 0.01em;
	}
	#detail .scheduleSec .rBox h4 {
		font-size: 1.6rem;
		line-height: 1.625;
	}
	#detail .scheduleSec .rBox p a {
		padding-top: 0;
		font-size: 1.5rem;
		line-height: 2.1;
	}
	#detail .scheduleSec .rBox h6 {
		font-size: 1.4rem;
		line-height: 1.57;
		letter-spacing: 0.01em;
	}
	#detail .scheduleSec .snsList {
		justify-content: center;
		padding: 8rem 7rem 0 0;
	}
	#detail .scheduleSec {
		margin-bottom: 3rem;
	}
	#detail .comInner.border {
		margin: 0;
	}
	#detail .scheduleSec .rBox h3 {
		margin-bottom: 2.5rem;
		font-size: 1.6rem;
		line-height: 1.625;
	}
	#detail .scheduleSec .rBox .linkP {
		padding-top: 0;
		font-size: 1.5rem;
		line-height: 2.1;
	}
}

/*------------------------------------------------------------
	backLink
------------------------------------------------------------*/
.backLink a {
	padding-left: 1.5rem;
	display: inline-block;
	color: #fff;
	font-size: 1.2rem;
	letter-spacing: 0.03em;
	background: url(../img/common/prev.png) no-repeat left center;
	background-size: 0.7rem auto;
}
@media (min-width: 1000px) and (hover: hover) {
    
}
@media all and (max-width: 999px) {
}

/*------------------------------------------------------------
	common//
------------------------------------------------------------*/
.wp-pagenavi {
    margin: 8.7rem 0 0;
    text-align: center;
	font-family: 'Roboto', sans-serif;
}
.wp-pagenavi a, 
.wp-pagenavi span {
	display: inline-block;
    text-decoration: none;
    margin: 0 1.4rem;
	font-size: 1.6rem;
    color: #000;
	font-weight: 300;
    box-sizing: border-box;
}
.wp-pagenavi .current {
	opacity: 0.3;
}
.wp-pagenavi .pages {
    display: none;
}
.wp-pagenavi .extend {
	margin: 0 1.8rem;
}
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
	display: inline-block;
	padding: 0 1.7rem;
	margin: 0 2.5rem;
	letter-spacing: 0.03em;
	font-family: "Roboto Condensed", sans-serif;
}
.wp-pagenavi .nextpostslink {
	background: url(../img/common/next_black.png) no-repeat right center;
	background-size: 0.7rem auto;
}
.wp-pagenavi .previouspostslink {
	background: url(../img/common/prev_black.png) no-repeat left center;
	background-size: 0.7rem auto;
}
@media (min-width: 1000px) and (hover: hover) {
	.wp-pagenavi a:hover {
		opacity: 0.3;
	}
    
}
@media all and (max-width: 999px) {
	.wp-pagenavi {
		margin-top: 4.6rem;
	}
	.wp-pagenavi a, 
	.wp-pagenavi span {
		font-size: 1.4rem;
		margin: 0 1rem;
	}
	.wp-pagenavi .nextpostslink, 
	.wp-pagenavi .previouspostslink {
		letter-spacing: 0.01em;
		padding: 0.2rem 1.2rem 0;
		margin: 0 0.4rem;
	}
	.wp-pagenavi .nextpostslink {
		background-size: 0.5rem auto;
	}
	.wp-pagenavi .previouspostslink {
		background-size: 0.5rem auto;
	}
	.wp-pagenavi .extend {
		margin: 0 1.5rem;
	}
}

/*------------------------------------------------------------
discographyList
------------------------------------------------------------*/
#main .discographyList {
	display: flex;
	flex-wrap: wrap;
	gap: 0 1.5rem;
}
#main .discographyList li {
	display: flex;
}
#main .discographyList li p {
	font-size: max(10px,1.1rem);
	letter-spacing: 0.04em;
	margin:0.2rem 0.8rem 0 0;
}
#main .discographyList li .comLink a {
	min-width: 11.3rem;
	text-align: center;
	justify-content: center;
}
@media (min-width: 1000px) and (hover: hover) {
    
}

@media all and (min-width: 1000px) {
}

@media all and (max-width: 999px) {
	#main .discographyList {
		justify-content: flex-end;
	}
	#main .discographyList li .comLink a {
		min-width: 8.2rem;
	}
}
/*------------------------------------------------------------
	comYtb
------------------------------------------------------------*/
.comYtb {
	display: block;
	position: relative;
}
.comYtb::before {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    content: "";
    transition: 0.3s;
}
.comYtb:after {
    width: 4.5rem;
    height: 4.5rem;
    background: url(../img/common/movie.png) no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    z-index: 2;
}
@media all and (max-width: 999px) {
	.comYtb::after {
        width: 3.8rem;
        height: 3.8rem;
    }
}
/*------------------------------------------------------------
	blurBg
------------------------------------------------------------*/
.blurBg {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	inset: -3rem;
	filter: blur(5rem);
	z-index: -1;
}


/*------------------------------------------------------------
	common//
------------------------------------------------------------*/
@media (min-width: 1000px) and (hover: hover) {
    
}
@media all and (max-width: 999px) {
}

@media all and (min-width: 1000px) and (max-width: 1020px) {
	#main .discographyUl dt .date {
		padding-top: 0;
	}
}


@media all and (min-width: 1000px) and (max-height: 760px) {
	.menuBoxSub .radomTitle {
		width: min(5.9vw,8rem);
		/* top: 0;
		transform: none; */
		left: -1.3rem;
	}
	.menuInner .comContentsBox {
		margin-bottom: 2.9rem;
	}
	.menuInner .comFanclubBox {
		margin-bottom: 2.7rem;
	}
	.menuInner .comMemberBox {
		margin-bottom: 3rem;
	}
}


@media all and (min-width: 768px) and (max-width: 999px) {
	.introBox .comFanclubBox .logo .rainsLink {
		margin: 14px 0 0;
	}
	.introBox .comFanclubBox .logo {
		width: 58px;
	}
	.introBox .step03 .rbBox .comVerticalTitle {
		font-size: 8px;
	}
	.introBox .step03 .rbBox .comFanclubBox {
		padding-top: 16px;
	}
	.introBox .step03 .rbBox {
		top: 8.5%;
		left: -4.6%;
	}
	.introBox .step03 .rtBox {
		/* right: -7%;
		transform-origin: right top;
		transform: translate3d(0,0,0) scale(0.8); */
	}
	.introBox .comMemberBox ul .ico {
		top: calc(50% - 1px);
	}
	.menuSub {
		display: flex;
	}
	.menuInner {
		padding-bottom: 5rem;
		padding-top: 5rem;
		width: 100%;
	}
	.menuBoxSub .radomTitle {
		top: 50%;
		transform: translateY(-50%);
	}
	#gHeader .menu {
		right: 2.5rem;
	}
	.introBox .step03 .title {
		right: -4.6%;
	}
	/* .ipad .introBox .step {
		width: 435px;
		height: 783px;
	} */
	
	/* .ipad .introBox .step03 .rtBox {
		bottom: 175px;
	} */

}


@media all and (min-width: 1000px) {
	.ipad .introBox .step03 .title {
		left: 6.7%;
		bottom: 21.2%;
	}
	.ipad .introBox .step03 .radomTitle {
		left: 95px;
		bottom: -5px;
	}
	.ipad .introBox .step{
		width: 1436px;
	}
	.ipad .introBox .step03 .rtBox {
		top: 16px;
		right: 47px;
	}
	.ipad .introBox .step03 .rbBox {
		right: 47px;
		bottom: 0;
	}
}

@media all and (min-width: 1000px) and (max-width: 1200px) and (max-height: 700px) {
	.ipad .introBox .step {
		transform: translate(-50%, -50%) scale(0.82) !important;
	}
	.ipad .introBox .step03 .radomTitle {
		bottom: 10px;
	}
}


.grecaptcha-badge {
	display: none !important;
}
.wpcf7 form .wpcf7-response-output {
	margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}