@charset "UTF-8";
/* 共通 */
h2 {
	display: flex;
	align-items: flex-end;
	line-height: 1;
}
h2.large {
	font-size: 7.0rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.0;
	display: flex;
}
h2 span {
	margin-left: 20px;
	padding-bottom: 6px;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.4rem;
	line-height: 1.5;
	position: relative;
}
h2 span::after {
	content: '';
	display: block;
	width: 100%;
	height: 4px;
	background: #E73273;
	position: absolute;
	bottom: 0;
	left: 0;
}
h2.large span {
	padding-bottom: 14px;
}


@media screen and (max-width: 767px) {
	h2 {
		margin-bottom: 30px;
	}
	h2.large {
		font-size: 4.0rem;
		flex-direction: column;
		align-items: flex-start;
	}
	h2 span {
		margin-left: 10px;
		padding-bottom: 3px;
		font-size: 1.2rem;
		display: inline-block;
	}
	h2 span::after {
		height: 2px;
	}
	h2.large span {
		margin-left: 0;
		margin-top: 10px;
		padding-bottom: 5px;
	}

	.btn_more {
		margin-right: 15px;
	}
}

/* チケット購入ボタン共通 */
.btn_ticket {
	display: inline-block;
}
.btn_ticket .btn {
	padding-top: 36px;
	position: relative;
	overflow: hidden;
}
.btn_ticket .btn>img {
	position: absolute;
	top: 0;
	left: 15px;
	z-index: 1;
}
.btn_ticket .btn a {
	padding-left: 50px;
	width: 500px;
	height: 100px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: #E73273;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 700;
	position: relative;
	z-index: 0;
}
.btn_ticket .btn a::before {
	content: '';
	width: 250px;
	height: 100%;
	clip-path: polygon(50px 0%, 100% 0, 100% 100%, 0% 100%);
	background: #C92B63;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.btn_ticket .btn a::after {
	content: '';
	width: 80px;
	height: 100%;
	clip-path: polygon(50px 0%, 100% 0, 100% 100%, 0% 100%);
	background: #000000;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.btn_ticket .btn a span {
	color: #000;
	font-size: 1.6rem;
	display: block;
}
.btn_ticket .btn br.sp {
	display: none;
}
.btn_ticket .btn .arrow {
	width: 56px;
	height: 20px;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	transition: all .3s;
}
.btn_ticket .btn a:hover {
	text-decoration: none;
	opacity: 0.8;
}
.btn_ticket .btn a:hover .arrow {
	transform: translateX(3px) translateY(-50%);
}
.btn_ticket .label {
	margin: 15px 0;
	color: #fff;
	width: 100%;
	position: relative;
}
.btn_ticket .label::before {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: 50%;
	left: 0;
	z-index: 0;
}
.btn_ticket .label span {
	padding: 0 15px;
	background: #1D1F29;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	.btn_ticket {
		padding: 0 16px;
		width: 100%;
		max-width: 500px;
	}
	.btn_ticket .btn {
		padding-top: 16px;
	}
	.btn_ticket .btn>img {
		width: 93px;
		left: 10px;
	}
	.btn_ticket .btn a {
		padding-left: 0;
		width: 100%;
		height: 90px;
		font-size: 1.5rem;
		line-height: 1.5;
	}
	.btn_ticket .btn a::before {
		width: 145px;
		clip-path: polygon(45px 0%, 100% 0, 100% 100%, 0% 100%);
	}
	.btn_ticket .btn a::after {
		width: 72px;
		clip-path: polygon(45px 0%, 100% 0, 100% 100%, 0% 100%);
	}
	.btn_ticket .btn a span {
		margin-top: 5px;
		font-size: 1.2rem;
	}
	.btn_ticket .btn br.sp {
		display: block;
	}
	.btn_ticket .label span {
		font-size: 1.2rem;
	}
}
/* --------------------------------------------------
	MainView
-------------------------------------------------- */
#MainView {
	background: #000;
	position: relative;
}
#MainView .slide {
	width: 100%;
	position: relative;
}
#MainView .slide img {
	width: 100%;
	opacity: 0.6;
}
#MainView .slick-dots {
	position: absolute;
	bottom: 80px;
	left: 40px; 
}
#MainView .flont {
	width: 100%;
	max-width: 1080px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#MainView .flont .text {
	color: #fff;
	font-family: "Antonio", sans-serif;
	font-weight: 700;
	font-size: 8.9rem;
	line-height: 1.2;
}
#MainView .flont .text span img{
	margin-top: 30px;
	display: block;
	width: 174px;
	background: #E73273;
}
#MainView .flont img {
	width: 338px;
}

@media screen and (max-width: 1080px) {
	#MainView .flont {
		padding: 0 16px;
	}
	#MainView .flont .text {
		font-size: 8.2vw;
	}
}
@media screen and (max-width: 767px) {
	#MainView {

	}
	#MainView .slide {
		height: 100%;
	}
	#MainView .slick-dots {
		left: 16px;
		bottom: 20px;
	}
	#MainView .flont {
		padding-top: 50px;
		flex-direction: column;
	}
	#MainView .flont .text {
		font-size: 5.0rem;
	}
	#MainView .flont .text span img {
		width: 156px;
	}
	#MainView .flont img {
		margin-top: 40px;
		width: 188px;
	}
    #MainView .slide img{
        height:100vh;
        object-fit:cover;
    }
}

/* --------------------------------------------------
	globalNavi 
-------------------------------------------------- */
#globalNavi {
	height: 100px;
	margin-bottom: 30px;
}
#globalNavi ul {
	margin-top: -50px;
	height: 100px;
	display: flex;
}
#globalNavi li {
	padding: 15px;
	width: auto;
	min-width: 120px;
	list-style: none;
	background: #1D1F29;
	position: relative;
	transition: all .3s;
}
#globalNavi li::after {
	content: '';
	display: block;
	width: 1px;
	height: 70px;
	background: #fff;
	opacity: 0.2;
	position: absolute;
	right: 0;
	top: 15px;
}
#globalNavi li:last-of-type::after {
	content: none;
}
#globalNavi li a {
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	color: #E73273;
	font-family: "Antonio", sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	letter-spacing: 0.02em;
	transition: all .3s;
}
#globalNavi li a:hover {
	text-decoration: none;
}
#globalNavi li span {
	margin-top: 3px;
	display: block;
	color: #fff;
	font-size: 1.2rem;
	letter-spacing: 0.04em;
}
#globalNavi li:hover {
	background: #E73273;
}
#globalNavi li:hover:after {
	display: none;
}
#globalNavi li:hover a {
	color: #000;	
}

@media screen and (max-width: 767px) {
	#globalNavi {
		display: none;
	}
}

/* --------------------------------------------------
	pickup
-------------------------------------------------- */
#pickup .inner {
	margin: 0 auto;
	padding: 60px 0 80px;
	max-width: 1280px;
	display: flex;
}
#pickup .left {
	width: 220px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}
#pickup h2 {
	margin-bottom: 16px;
}
#pickup .pickup_slide {
	width: 100%;
	max-width: 1280px;
}
#pickup .pickup_slide li {
	margin: 0 2px;
}
#pickup .pickup_slide li a {
	width: 100%;
}
#pickup .pickup_slide li img {
	width: 100%;
}
@media screen and (max-width: 767px) {
	#pickup .inner {
		padding: 40px 16px 90px;
		display: block;
		position: relative;
	}
	#pickup .left {
		width: 100%;
		align-items: flex-start;
	}
	#pickup h2 {
		margin-bottom: 30px;
	}
	#pickup .arrows {
		position: absolute;
		bottom: 50px;
		left: 50%;
		transform: translateX(-50%);
	}
	#pickup .pickup_slide {
		margin-bottom: 30px;
		width: 1180px;
	}
	#pickup .pickup_slide li {
		margin: 0 5px 0 0;
	}
}

/* --------------------------------------------------
	Next Game
-------------------------------------------------- */
#nextgame {
	padding: 90px 0 120px;
	background: #1D1F29;
	text-align: center;
}
#nextgame .flex {
	margin-bottom: 50px;
	align-items: flex-end;
	justify-content: space-between;
}
#nextgame .game_info .slick-list li {
	padding: 0 10px;
	width: 800px;
	display: flex;
	justify-content: center;
	opacity: 0.4;
}
#nextgame .game_info .slick-list li.slick-active {
	opacity: 1;
}
#nextgame .game_info .emblem {
	padding: 36px 50px;
	width: 267px;
	display: flex;
	align-items: center;
}
#nextgame .game_info .emblem.home {
	background: #fff;
}
#nextgame .game_info .emblem.away {
	background: #F0F0F0;
}
#nextgame .game_info .emblem p {
	width: 160px;
	height: 160px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#nextgame .game_info .emblem p img {
	max-width: 100%;
}

#nextgame .info {
	width: 266px;
	padding: 36px 0;
	background: #fff;
	text-align: center;
	font-size: 2.0rem;
	position: relative;
}
#nextgame .info::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
	background: #F0F0F0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
#nextgame .info p {
	z-index: 2;
	position: relative;
}
#nextgame .info .round {
	margin-bottom: 10px;
	font-size: 2.0rem;
	font-weight: 700;
}
#nextgame .info .home_away {
	margin-bottom: 15px;
	width: 100%;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000;
	color: #fff;
	font-size: 2.0rem;
	letter-spacing: 1.0;
}
#nextgame .info .home_away.home {
	background: #E73273;
}
#nextgame .info .home_away.away {
	background: #000;
}
#nextgame .info .date {
	margin-right: 8px;
	font-size: 4.0rem;
}
#nextgame .info .time {
	margin-right: 8px;
	font-size: 4.0rem;
}
#nextgame .info .place {
	margin-top: 15px;
	margin-bottom: 20px;
	font-size: 1.4rem;
	font-weight: 500;
}
#nextgame .info .vs_team .vs {
	padding: 16px 10px 20px;
	display: inline-block;
	border-top: solid 1px #000;
	line-height: 1;
}
#nextgame .info .vs_team .team {
	display: block;
	font-size: 1.4rem;
	font-weight: 500;
}
#nextgame .slick-dots {
	margin: 20px 0 70px;
	justify-content: center;
}
#nextgame a.btn {
	margin: 40px auto 50px;
} 
/* チーム別エンブレム */
#nextgame p.cara{
	width: 80px;
	height: 80px;
	position:relative;
}
#nextgame p.cara:before{
	content:"";
	position:absolute;
	display:block;
	left:0;
	top:0;
	width:240px;
	height:240px;
}
#nextgame .home p.cara:before {
    content: "";
    position: absolute;
    display: block;
    left: 50%;
    top: 0;
    width: 160px;
    height: 160px;
    transform: translateX(-50%);
    background: url(../img/game/icon_homeac5c.png?20240805) no-repeat center center;
    background-size: cover;
}
#nextgame p.cara:before{
    width: 160px;
    height: 160px;
}
#nextgame p.cara1:before{
	background:url('../img/game/icon1.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara2:before{
	background:url('../img/game/icon2.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara3:before{
	background:url('../img/game/icon3.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara4:before{
	background:url('../img/game/icon4.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara5:before{
	background:url('../img/game/icon5.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara6:before{
	background:url('../img/game/icon6.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara7:before{
	background:url('../img/game/icon7.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara8:before{
	background:url('../img/game/icon8.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara9:before{
	background:url('../img/game/icon9.png') no-repeat center center;
	background-size: cover;
}
#nextgame p.cara10:before{
	background:url('../img/game/icon10.png') no-repeat center center;
	background-size: cover;
}
@media screen and (max-width: 767px) {
	#nextgame {
		padding: 50px 0 70px;
	}
	#nextgame .flex {
		margin-bottom: 0;
	}
	#nextgame .game_top {
		position: relative;
	}
	#nextgame .btn_more {
		position: absolute;
		bottom: 0;
		right: 16px;
		z-index:5;
	}
	#nextgame .game_info .slick-list li {
		padding: 0 5px;
		flex-wrap: wrap;
	}
	#nextgame .game_info .emblem {
		padding: 0;
		width: 50%;
		height: 120px;
		display: flex;
		justify-content: center;
		position: relative;
	}
	#nextgame .game_info .emblem p {
		width: 80px;
		height: 80px;
	}
	#nextgame .home p.cara:before{
	width:80px;
	height:80px;
	}
	#nextgame p.cara:before{
	width:80px;
	height:80px;
	}
	#nextgame .game_info .emblem.home{
		order: 0;
	}
	#nextgame .game_info .emblem.away {
		order: 1;
	}
	#nextgame .game_info .emblem.home::before, #nextgame .game_info .emblem.away::before {
		content: '';
		display: block;
		width: 30%;
		height: 100%;
		position: absolute;
	}
	#nextgame .game_info .emblem.home::before {
		clip-path: polygon(100% 50%, 0% 100%, 100% 100%);
		background: #F0F0F0;
		bottom: 0;
		right: 0;
	}
	#nextgame .game_info .emblem.away::before {
		clip-path: polygon(0 0, 0 50%, 100% 0);
		background: #FFF;
		top: 0;
		left: 0;
	}
	#nextgame .game_info .emblem.home::after {
		content: 'VS';
		font-family: "Antonio", sans-serif;
		font-weight: 700;
		font-size: 1.2rem;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translate(50%,-50%);
		z-index: 2;
	}
	#nextgame .info {
		order: 2;
		padding: 20px 12px;
		width: 100%;
		font-size: 1.5rem;
	}
	#nextgame .info::before {
		content: none;
	}
	#nextgame .info .round {
		font-size: 1.2rem;
		margin-bottom: 4px;
	} 
	#nextgame .info .home_away {
		height: 20px;
		font-size: 1.2rem;
		line-height: 20px;
	}
	#nextgame .info .date_time {
		line-height: 1.2;
	}
	#nextgame .info .date_time br {
		display: none;
	}
	#nextgame .info .date, 	#nextgame .info .time {
		font-size: 3.2rem;
	}
	#nextgame .info .time {
		margin-left: 20px;
	}
	#nextgame .info .place {
		font-size: 1.2rem;
		margin: 10px 0 15px;
	}
	#nextgame .info .vs_team .vs {
		padding: 5px 2px 10px;
		font-size: 1.2rem;
	}
	#nextgame .info .vs_team .team {
		font-size: 1.2rem;
	}
	#nextgame .slick-dots {
		margin: 40px 0 0;
		padding: 0 16px;
		justify-content: flex-start;
	}
	#nextgame .btn_contact{
		width:280px;
		margin:80px auto 0;
		font-size: 1.5rem;
	}
	#nextgame a.btn {
		margin: 40px auto 40px;
	}
}

/* --------------------------------------------------
	Players & Team
-------------------------------------------------- */
#players_team {
	padding: 120px 0 120px;
	background: #E73273;
	color: #fff;
	position: relative;
}
#players_team::before {
	content: '';
	display: block;
	width: 450px;
	height: 900px;
	clip-path: polygon(100% 0%, 0 0, 0 100%);
	background: #C92B63;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
#players_team .inner {
	position: relative;
	z-index: 2;
}
#players_team h2 {
	color: #fff;
	margin-bottom: 60px;
}
#players_team h2.large span::after {
	background: #fff;
}
#players_team a {
	color: #fff;
	transition: all .3s;
}
#players_team a:hover {
	text-decoration: none;
	opacity: 0.8;
}
#players_team .image {
	width: 800px;
	height: 300px;
	clip-path: polygon(0 0, 100% 0%, 78% 100%, 0% 100%);
	background-size: cover;
	background-position: left center;
}
#players_team .image::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	clip-path: polygon(97% 0, 100% 0%, 78% 100%, 75% 100%);
	background: #1D1F29;
}
#players_team .reverse .image {
	clip-path: polygon(22% 0, 100% 0%, 100% 100%, 0% 100%);
	background-position: right center;
}
#players_team .reverse .image::before {
	clip-path: polygon(22% 0, 25% 0%, 3% 100%, 0% 100%);
}
#players_team .players .image {
	background-image: url(../img/home/players.jpg);
}
#players_team .team .image {
	background-image: url(../img/home/team.jpg);
}
#players_team .rebrand .image {
	background-image: url(../img/home/ReBrand.jpg);
}
#players_team h3 {
	margin-bottom: 35px;
	font-size: 7.0rem;
	letter-spacing: 0.02em;
}
#players_team h3 span {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: 1.4rem;
	display: block;
	margin-top: 8px;
}
#players_team .flex {
	margin-bottom: 20px;
	align-items: center;
	gap: 20px;
}
#players_team .flex.reverse {
	flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
	#players_team {
		padding: 60px 0 30px;
	}
	#players_team::before {
		width: 32vw;
		height: 64vw;
	}
	#players_team h2 {
		margin-bottom: 30px;
	}
	#players_team .flex {
		margin-bottom: 40px;
		flex-direction: column;
		align-items: flex-start;
	}
	#players_team .flex.reverse {
		flex-direction: column;
	}
	#players_team .image {
		width: 120%;
		height: 190px;
	}
	#players_team .reverse .image {
		margin-left: -20%;
	}
	#players_team .text {
		width: 100%;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	#players_team h3 {
		margin: 0;
		font-size: 4.0rem;
		line-height: 1.0;
	}
	#players_team h3 span {
		margin-top: 15px;
		font-size: 1.2rem;
	}
	#players_team .btn_more {
		padding: 10px 0;
	}
}

/* --------------------------------------------------
	News
-------------------------------------------------- */
#news {
	padding: 90px 0 80px;
	background: #F0F0F0;
}
#news h2 {
	margin-bottom: 40px;
}
#news .news_container {
	width: 2400px;
	position: relative;
	overflow: hidden;
}
#news .news_slide {
	width: 300px;
}
#news .news_slide .slick-list {
	overflow: visible;
}
#news .news_slide li.slick-slide {
	margin-right: 20px;
	width: 280px !important;
	height: 400px;
	list-style: none;
}
#news .news_slide li.slick-slide a {
	padding: 20px 0 10px;
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 10px;
	position: relative;
}
#news .news_slide li.slick-slide a:hover {
	text-decoration: none;
}
#news li .date {
	margin-bottom: 7px;
	padding: 1px 10px;
	color: #E73273;
	font-family: "Antonio", sans-serif;
	font-weight: 700;
	font-size: 1.2rem;
	border-left: solid 4px #E73273;
}
#news li .news_inner {
	padding:  0 15px;
}
#news li .img-wrap {
	margin-bottom: 14px;
	width: 100%;
	height: auto;
	overflow: hidden;
}
#news li .img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all .3s;
}
#news .news_slide li.slick-slide a:hover .img-wrap img {
	transform: scale(1.1);
}
#news li .news_inner p{
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
		overflow: hidden;
}
#news li img.arrow {
	margin: 0;
	width: 36px;
	position: absolute;
	bottom: 10px;
	right: 15px;
	transition: all .3s;
}
#news .news_slide li.slick-slide a:hover img.arrow {
	transform: translateX(3px);
}
#news .arrow_dot {
	margin-top: 35px;
}
#news .news_arrow {
	margin-right: 40px;
}
#news .dots_common .slick-dots button {
	background: #000;
	opacity: 0.3;
}
#news .dots_common .slick-dots li.slick-active button {
	background: #E73273;
	opacity: 1;
}
#news .btn_more {
	margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
	#news {
		padding: 50px 0 70px;
	}
	#news h2 {
		margin-bottom: 30px;
	}
	#news .news_container {
		width: 2400px;
	}
	#news .news_slide {
		width: 260px;
	}
	#news .news_slide li.slick-slide {
		margin-right: 10px;
		width: 250px !important;
		height: 360px;
	}
	#news .news_slide li p {
		font-size: 1.2rem;
	}
	#news .arrow_dot {
		margin-top: 30px;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#news .news_arrow {
		margin-right: 20px;
	}
	#news .btn_more {
		margin: 10px 15px 0 auto;
	}
}

/* --------------------------------------------------
	Practice Schedule
-------------------------------------------------- */
#schedule {
	padding: 100px 0;
}
#schedule h2 {
	margin-bottom: 24px;
}
#schedule .hanrei {
	margin: 25px 0 50px;
}
#schedule .hanrei ul {
	flex-wrap: wrap;
	gap: 6px;
}
#schedule .hanrei li {
	width: 100px;
	height: 20px;
	border-radius: 4px;
	display: flex;
	justify-content: center;
	align-items: center;
	list-style: none;
	font-size: 1.1rem;
	font-weight: bold;
}
#schedule .hanrei li:first-child {
	margin-right: 10px;
	width: auto;
	font-size: 1.4rem;
	font-weight: 400;
}
#schedule .hanrei .category7, #schedule .scheduleCalendar .category7 {
	background: #ff99cc;
  color: #FFF;
}
#schedule .hanrei .category8, #schedule .scheduleCalendar .category8 {
	background: #B2D235;
  color: #FFF;
}
#schedule .hanrei .category1, #schedule .scheduleCalendar .category1 {
	background: #66CCFF;
  color: #FFF;
}
#schedule .hanrei .category6, #schedule .scheduleCalendar .category6 {
	background: #0066FF;
  color: #FFF;
}
#schedule .hanrei .category2, #schedule .scheduleCalendar .category2 {
	background: #E63173;
  color: #FFF;
}
#schedule .hanrei .category3, #schedule .scheduleCalendar .category3 {
	background: #FFFE44;
  color: #9F9F9F;
}
#schedule .hanrei .category5, #schedule .scheduleCalendar .category5 {
	background: #FF9933;
  color: #FFF;
}
#schedule .scheduleCalendar a{
	color: #fff;
}
#schedule .calendar_box {
	width: 100%;
}
#schedule .calendar_box .month {
	padding: 0 20px;
	background: #E3E3E3;
	color: #E73273;
	font-family: "Antonio", sans-serif;
	font-weight: 700;
	font-size: 3.0rem;
}
#schedule .calendar_box .month span {
	font-size: 2.0rem;
}
main #schedule .scroll-table {
	max-width: 100%;
	margin-bottom: 20px;
}
#schedule .scheduleCalendar {
	width: 100%;
	table-layout: fixed;
	border-spacing: 0;
	border-collapse: collapse;
	border: solid 1px #E3E3E3;
}
#schedule .scheduleCalendar th, #schedule .scheduleCalendar td {
	border: solid 1px #E3E3E3;
	font-family: "Antonio", sans-serif;
	font-weight: 700;
	display: table-cell;
	min-width: 50px;
}
#schedule .scheduleCalendar th {
	padding: 5px 0;
	font-size: 1.8rem;
}
#schedule .scheduleCalendar th.sunday {
	background: #E73273;
	color: #fff;
}
#schedule .scheduleCalendar th.satday {
	background: #27447B;
	color: #fff;
}
#schedule .scheduleCalendar td {
	padding: 5px;
	font-size: 1.4rem;
	vertical-align: top;
	height: 50px;
}
#schedule .scheduleCalendar td.sun, #schedule .scheduleCalendar tr td:first-of-type {
	color: #E73273;
	background: rgba(231, 50, 115, 0.1);
}
#schedule .scheduleCalendar td.sat, #schedule .scheduleCalendar tr td:last-of-type {
	color: #27447B;
	background: rgba(39, 68, 123, 0.1);
}
#schedule .scheduleCalendar td.none {
	background: #F5F5F5;
}
#schedule .scheduleCalendar .scheduleLink {
	margin-top: 4px;
	padding: 2px;
	border-radius: 4px;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.2rem;
	font-weight: 500;
}
#schedule .kengaku {
	max-width: 800px;
	margin: 0 auto;
	margin-top: 80px;
}
#schedule .kengaku strong {
	margin-bottom: 10px;
	display: block;
	color: #E73273;
	font-size: 2.0rem;
	font-weight: 400;
}
#schedule .kengaku p {
	margin-bottom: 20px;
	line-height: 2.0;
}
#schedule .kengaku span {
	margin-bottom: 10px;
	display: block;
	font-size: 1.2rem;
	font-weight: 700;
}
#schedule .kengaku li {
	margin-left: 10px;
	font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
	#schedule {
		padding: 50px 0 70px;
	}
	#schedule .hanrei {
		margin: 10px 0 40px;
	}
	#schedule .hanrei li:first-of-type {
		margin-bottom: 5px;
		width: 100%;
		justify-content: flex-start;
		font-size: 1.2rem;
	}
	#schedule .hanrei li {
		margin-right: 0;
	}
	main #schedule .scroll-table {
		overflow: auto;
	}
	#schedule .scheduleCalendar {
		width: auto;
		min-width: 100%;
	}
	#schedule .kengaku {
		margin-top: 50px;
		font-size: 1.2rem;
	} 
	#schedule .kengaku strong {
		font-size: 1.6rem;
	}
}

/* --------------------------------------------------
	Junior Team
-------------------------------------------------- */
#junior {
	padding: 110px 0 80px;
	color: #fff;
	background-color: #2D3669;
	background-image: url(../img/home/junior_team.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 100%;
}
#junior h2 {
	flex-direction: column;
	align-items: flex-start;
}
#junior h2 span {
 margin: 30px 0;
}
#junior p {
	line-height: 2.0;
}
#junior strong {
	margin-bottom: 5px;
	display: block;	
	font-size: 2.0rem;
}
#junior br.sp {
	display: none;
}
#junior .btn_more {
	margin-top: 30px;
}
@media screen and (max-width: 767px) {
	#junior {
		padding: 60px 0 70px;
		background-image: url(../img/home/junior_team_sp.png);
		background-position: bottom center;
		background-size: cover;
		text-align: right;
	}
	#junior h2 span {
		margin: 15px 0 0;
	}
	#junior p {
		display: inline-block;
		text-align: left;
	}
	#junior strong {
		margin-bottom: 10px;
		font-size: 1.6rem;
		display: inline-block;
	}
	#junior br.sp {
		display: inline;
	}
}

/* --------------------------------------------------
	SNS
-------------------------------------------------- */
#sns {
	padding: 100px 0 140px;
	background: #F0F0F0;
}
#sns h3 {
	margin-top: 60px;
	margin-bottom: 20px;
	color: #E73273;
}

#instagram .insta_container {
	width: 1760px;
	position: relative;
	overflow: hidden;
}
#instagram .insta_slide {
	width: 220px;
}
#instagram .insta_slide .slick-list {
	overflow: visible;
}
#instagram .insta_slide li.slick-slide {
	margin-right: 20px;
	width: 200px !important;
	height: 200px;
}
#instagram .insta_slide li figure img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}
main #instagram .insta_slide li{
	position:relative;
}
#instagram .insta_slide li figure {
    position: relative;
    overflow: hidden;
	height:200px;
}
#instagram .insta_slide li.slick-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#instagram .insta_slide li .iine {
	display: none;
}
#instagram .insta_slide li:hover figure:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	position: absolute;
	top: 0;
	left: 0;
}
#instagram .insta_slide li:hover figure img{
	transform: scale(1.2);
	transition-duration : 0.3s;
}
#instagram .insta_slide li:hover .iine{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	color: #FFF;
	background: url('../img/common/icon_iine.png') no-repeat left center;
	background-size: 24px 24px;
	padding-left: 32px;
	transform: translateX(-50%) translateY(-50%);
}
#youtube .youtube_container {
	width: 1920px;
	position: relative;
	overflow: hidden;
}
#youtube .youtube_slide {
	width: 320px;
}
#youtube .youtube_slide .slick-list {
	overflow: visible;
}
#youtube .youtube_slide li.slick-slide {
	margin-right: 20px;
	width: 300px !important;
	height: 200px;
}
#youtube .youtube_slide li.slick-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#sns .dots_common .slick-dots button {
	background: #000;
	opacity: 0.3;
}
#sns .dots_common .slick-dots li.slick-active button {
	background: #E73273;
	opacity: 1;
}
#sns .arrow_dot {
	margin-top: 30px;
}
#sns .arrows {
	margin-right: 40px;
}
#sns a.btn_more {
	margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
	#sns {
		padding: 50px 0 70px;
	}
	#sns h3 {
		margin-top: 0;
	}
	#sns .arrow_dot {
		margin-top: 30px;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#sns .arrows {
		margin-right: 20px;
	}
	#sns a.btn_more {
		margin: 10px 15px 0 auto;
	}
	#sns #youtube {
		margin-top: 50px;
	}
}

/* --------------------------------------------------
	Tickets
-------------------------------------------------- */
#tickets {
	padding: 80px 0 100px;
	background: #1D1F29;
	color: #fff;
}
#tickets .inner {
	text-align: center;
} 

@media screen and (max-width: 767px) {
	#tickets {
		padding: 50px 0 70px;
	}
}

/* --------------------------------------------------
	Partner
-------------------------------------------------- */
#partner {
	padding: 80px 0;
}
#partner .block-outer {
	display: flex;
	flex-direction: column;
	max-width: 880px;
	margin: 0 auto;
}
#partner .p-block {
	display: inline;
}
#partner ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	row-gap: 30px;
	list-style: none;
}
#partner li {
	text-align: center;
}
#partner li img {
	border: solid 1px #dddddd;
	width: 280px;
}
#partner li p{
	margin-top: 10px;
	font-size: 1.4rem;
}
#partner h3 {
	margin: 48px 0 30px;
	text-align: center;
	color: #e73273;
	position: relative;
}
#partner h3 span {
	padding: 0 30px;
	background: #fff;
	position: relative;
	z-index: 10;
}
#partner h3::before {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: #e73273;
	position: absolute;
	left: 0;
	top: 50%;
}
#partner h3::after {
	left: 600px;
}
@media screen and (max-width: 767px) {
	#partner ul {
		gap: 4%;
		row-gap: 20px;
	}
	#partner li {
		width: 48%;
		max-width: 280px;
	}
	#partner li a {
		display: block;
		width: 100%;
	}
	#partner li a img {
		width: 100%;
	}
}



/* --------------------------------------------------
	ローディング画面
-------------------------------------------------- */
body{
overflow-x:hidden;
}
#splash_white{
  width:100%;
  height:100vh;
  background:#fff;
  position:fixed;
  z-index:146;
}
#splash_pink.splash_pink_active{
  width:150%;
  height:100vh;
  background:#e73273;
  position:fixed;
  z-index:147;
  animation-name: animation-pink;
  animation-duration: .8s;
  clip-path: polygon(0 0, 100% 0%, 83% 100%, 0% 100%);
}
#splash_logo{
  display:none;
  position: fixed;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
  z-index:148;
}
#splash_black{
  display:none;
}
body.appear #splash_black{
    display: block;
    content: "";
    position:fixed;
    z-index: 149;
    width: 150%;
    height: 100vh;
    top: 0;
    left: 0;
    transform: scaleX(0);
    background-color: #000;
    animation-name:animation-black;
    animation-duration:.8s;
    animation-timing-function:ease-in-out;
    animation-fill-mode:forwards;
    clip-path: polygon(0 0, 100% 0%, 83% 100%, 0% 100%);
}
@keyframes animation-pink{
  0%{
    width: 0%;
  }
  100%{
    width: 150%;
  }
}
@keyframes animation-logo{
  0%{
    width: 0%;
  }
  100%{
    width: 150%;
  }
}
@keyframes animation-black{
  0% {
    transform-origin:left;
    transform:scaleX(0);
  }
  50% {
    transform-origin:left;
    transform:scaleX(1);
  }
  50.001% {
    transform-origin:right;
  }
  100% {
    transform-origin:right;
    transform:scaleX(0);
  }
}

body.appear #container_bg{
	animation-name:PageAnimeAppear;
	animation-duration:1.5s;
	animation-delay: 0.5s;
	animation-fill-mode:forwards;
	opacity: 0;
    z-index: 144;

    position:relative;
}
@keyframes PageAnimeAppear{
	0% {
	opacity: 1;
	}
	100% {
	opacity: 1;
}
}

.eachTextAnime1 span{opacity: 0;}
.eachTextAnime1.appeartext span{ animation:text_anime_on .1s ease-out forwards; }

.eachTextAnime2 span{opacity: 0;}
.eachTextAnime2.appeartext span{ animation:text_anime_on .1s ease-out forwards; }

.eachTextAnime3 span{opacity: 0;}
.eachTextAnime3.appeartext span{ animation:text_anime_on .1s ease-out forwards; }
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}

.flont_span{
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  letter-spacing:-5.5px;
  font-size:22px;
  display:inline-block;
  position: relative;
  width: 170px;
  height: 32px;
  overflow: hidden;
  }

.flont_span::after {
  position: absolute;
  content: '';
  top:0;
  left: 0;
  background: #E73273;
  width: 100%;
  height: 100%;
  z-index: -1; 
	transform: translateX(-100%);
}
.flont_span_active::after {
	animation-name: box_slide;
  animation-duration:.5s;
  animation-fill-mode: forwards;
}

@keyframes box_slide {
0% {
transform: translate(-100%,0)
}
100% {
transform: translate(0,0)
}
}

.flont_span.noloading::after {
	transform: translateX(0);
}

#splash_logo img{
	width:600px;
}

@media screen and (max-width: 767px) {
#splash_logo img{
	width:200px;
}
}