@media screen and (min-width:768px){
	.sp_only{
		display: none!important;
	}
}/*@media screen and (min-width:768px){*/

@media screen and (max-width:767px){
	.sp_hide{
		display: none!important;
	}


	/*
	------------------------------------
	共通パーツ
	------------------------------------
	*/

	.container{
		width: calc(345 / 375 * 100vw);
		max-width: 450px;
		padding:0 ;
	}

	.c_page_bg{
		background-size:100% auto;
	}


	.c_sche_button{
		max-width: 480px;
		min-height: 60px;
		font-size: 18px;
	}

	.c_sche_button::after{
		width:35px;
		height:25px;
		right:24px;
	}


	.c_float_link_list{

		width:60px;
		top:90px;
		right:10px;
	}


	/*
	------------------------------------
	ヘッダー
	------------------------------------
	*/

	header{
		
	}

	header .header_inner{
		max-width: 100%;
		padding-inline: 20px;
	}

	header .header_flex{
		padding-top: 30px;
	}

	header .header_nav{
		display: none;
	}

	header .drawer_open{
		gap:6px;
		font-size: 14px;
	}
	
	header .drawer_open .bar{
		width:26px;
		height:4px;
		background-color: #fff;
		transition-duration: 0.5s;
	}

	header .drawer_open .bar02{
		margin:4px 0;
	}

	header .drawer_open.active .drawer_open_inner{
		transform: rotateZ(90deg);
	}

	#drawer_menu .drawer_parent_link{
		padding: 12px;
	}



	/*
	------------------------------------
	アクセスセクション
	------------------------------------
	*/

	.c_access_section{
		padding-top: 100px;
	}


	.c_access_section .access_box{
		border-radius: 16px;
		padding-top:40px;
		padding-bottom: 40px;
	}


	.c_access_section .sec_head{
		min-height: 54px;
		padding:8px 16px;
		font-size: 22px;
		letter-spacing: -0.03em;
	}

	.c_access_section .map_area{
		margin-top: 48px;
	}

	.c_access_section .map_name{
		font-size: 20px;
		letter-spacing: -0.03em;
	}

	.c_access_section .map_address{
		margin-top: 10px;
		font-size: 16px;
		text-align: center;
	}

	.c_access_section .google_map{
		margin-top: 28px;
		height:200px;
	}

	.c_access_section .access_area{
		margin-top: 60px;
	}

	.c_access_section .access_head img{
		height:14px;
	}

	.c_access_section .access_text{

		margin-top: 14px;
		font-weight: 500;
		flex-direction: column;
		gap:12px;
		width: fit-content;
		margin-inline: auto;
	}

	.c_access_section .access_remark{
		font-weight: 400;
		font-size: 14px;
		letter-spacing: 0.03em;
		line-height: 1.5;
		margin-top: 12px;
	}

	.c_access_section .campus_area{
		margin-top: 60px;
	}

	.c_access_section .campus_head{
		font-size: 19px;
		letter-spacing: -0.03em;
	}

	.c_access_section .campus_img{
		max-width: 92%;
	}


	/*
	------------------------------------
	フッター
	------------------------------------
	*/

	footer{
		
	}

	footer .footer_contents{
		width:fit-content;
		margin-inline: auto;
	}

	footer .footer_area01{
		padding-top: 60px;
		padding-bottom: 44px;
	}

	footer .footer_flex01{
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap:32px;
	}

	footer .footer_left{
		width:100%;
	}

	footer .footer_logo_flex{
		display: flex;
		align-items: center;
		gap:30px;
	}

	footer .footer_logo{
		width:125px;
	}

	footer .sns_list{
		display: flex;
		align-items: center;
		gap:36px;
		padding-top: 16px;
	}

	footer .sns{
		width:28px;
	}

	footer .contact_button{
		width: 208px;
		min-height: 45px;
		gap:30px;
		padding:4px 8px;
	}

	footer .contact_button::after{
		width:15px;
		height:11px;
	}

	footer .footer_flex02{
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		margin-top: 48px;
		gap:40px;
	}

	footer .footer_text01{
		font-weight: 500;
		letter-spacing: 0;
		line-height: 1.4;
		font-size: 15px;
	}

	footer .footer_text02{
		margin-top: 12px;
		font-weight: 500;
		font-size: 14px;
		letter-spacing: 0.03em;
		line-height: 2;
	}

	footer .footer_info_list li{
		font-size: 14px;
		letter-spacing: 0.03em;
		line-height: 1.3;
	}

	footer .footer_info_list li + li{
		margin-top: 12px;
	}

	footer .footer_info_list .footer_info_head{
		width:55px;
		padding-right: 6px;
	}

	footer .footer_privacy{
		margin-top: 56px;
		display: flex;
		justify-content: flex-start;
	}

	footer .footer_privacy a{
		font-size: 12px;
	}

	footer .footer_area02{
		padding-top: 14px;
		padding-bottom: 32px;
	}

	footer .footer_copy{
		font-size: 12px;
	}
	/*
	------------------------------------
	トップページ
	------------------------------------
	*/

	body.top_body{

	}

	main.top_main{

	}

	main.top_main .sec_title_img img{
		height:22px;
	}

	.top_fv_section{
		min-height: 100vh;
	}

	.top_fv_section .fv_back_text{
		top: clamp(calc(72 / 1080 * 600px) , calc(72 / 1080 * 100vh) , calc(72 / 1080 * 1080px));
		width:clamp(calc(665 / 1080 * 600px) , calc(665 / 1080 * 100vh) , calc(665 / 1080 * 1080px));
	}

	.top_fv_section .fv_logo_frame{
		top: clamp(calc(176 / 1080 * 600px) , calc(176 / 1080 * 100vh) , calc(176 / 1080 * 1080px));
		left: 50%;
		transform: translateX(-50%);
	}


	.top_fv_section .fv_logo{
		width:clamp(calc(376 / 1080 * 600px) , calc(376 / 1080 * 100vh) , calc(376 / 1080 * 1080px));
	}

	.top_fv_section .fv_bar_frame{
		position: absolute;
		top:0;
		width: 100%;
		height: 100vh;
		width:100%;	
		/* padding-top: clamp(calc(78 / 1080 * 600px) , calc(78 / 1080 * 100vh) , calc(78 / 1080 * 1080px)); */
	}

	.top_fv_section .fv_bar_inner{
		position: relative;
	}

	.top_fv_section .fv_bar{
		width: 110vw;
		height:clamp(calc(38 / 1080 * 600px) , calc(38 / 1080 * 100vh) , calc(38 / 1080 * 1080px));
		top:clamp(calc(100 / 1080 * 600px) , calc(100 / 1080 * 100vh) , calc(100 / 1080 * 1080px));
		transform: rotateZ(-11.7deg) translateX(-2vh);
	}

	.top_fv_section .fv_bar_text{
		width:clamp(calc(230 / 1080 * 600px) , calc(230 / 1080 * 100vh) , calc(230 / 1080 * 1080px));
	}

	.top_fv_section .fv_info_block{
		top: clamp(calc(530 / 1080 * 600px) , calc(530 / 1080 * 100vh) , calc(530 / 1080 * 1080px));
		left: 50%;
		transform: translateX(-50%);
	}

	.top_fv_section .fv_time{
		width:clamp(calc(270 / 1080 * 600px) , calc(270 / 1080 * 100vh) , calc(270 / 1080 * 1080px));
	}

	.top_fv_section .fv_place{
		font-size: clamp(calc(20 / 1080 * 600px) , calc(20 / 1080 * 100vh) , calc(20 / 1080 * 1080px));
	}

	.top_fv_section .fv_place span{
		font-size: clamp(calc(16 / 1080 * 600px) , calc(16 / 1080 * 100vh) , calc(16 / 1080 * 1080px));
	}

	.top_fv_section .fv_manage_flex{

		justify-content: center;
		gap:20px;
		padding-right: 0;
		width: 100%;
		top:clamp(calc(700 / 1080 * 600px) , calc(700 / 1080 * 100vh) , calc(700 / 1080 * 1080px));
		left: 50%;
		transform: translateX(-50%);
	}

	.top_fv_section .manage_logo01{
		width:clamp(calc(136 / 1080 * 600px) , calc(136 / 1080 * 100vh) , calc(136 / 1080 * 1080px));
	}
	.top_fv_section .manage_logo02{
		width:clamp(calc(145 / 1080 * 600px) , calc(145 / 1080 * 100vh) , calc(145 / 1080 * 1080px));
	}




	.top_about_section{

	}

	.top_about_section::before{
		content:'';
		width:100%;
		/* height: */
	}

	.top_about_section .gra_bg::before{
		height:3040px;
	}

	.top_about_section .gal_flex {
		animation: gal_slide 30s linear infinite;
	}

	.top_about_section .gal_item{
		height:170px;
	}

	.top_about_section .gal_item01{
		width:250px;
	}
	.top_about_section .gal_item02{
		width:140px;
	}
	.top_about_section .gal_item03{
		width:140px;
	}
	.top_about_section .gal_item04{
		width:240px;
	}
	.top_about_section .gal_item05{
		width:240px;
	}


	.top_about_section .about_contents{
		padding-top: 100px;
	}

	.top_about_section .ticket_link{
		position: absolute;
		width:70px;
		right:0;
		top:20px;
	}

	.top_about_section .logo{
		max-width: 180px;
	}

	.top_about_section .about_head{
		min-width: 100%;
		min-height:40px;
		padding:2px 12px;
		font-size: 18px;
		letter-spacing: -0.03em;
		margin-top: 24px;
	}

	.top_about_section .about_text{
		margin-top: 44px;
		font-size: 16px;
		letter-spacing: -0.06em;
		line-height: 1.75;
		text-align: left;
	}

	.top_about_section .sche_button{
		margin-top: 60px;
	}

	.top_news_section{
		padding-top: 100px;
	} 

	.top_artist_section{
		padding-top: 80px;
	}

	.top_artist_section .artist_frame{
		position: relative;
	}

	.top_artist_section .artist_list{
		margin-top: 48px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		flex-direction: column;
		gap:30px 0;
	}

	.top_artist_section .artist_item{
		width:100%;
	}

	.top_artist_section .artist_card{
		min-height: auto;
	}

	.top_artist_section .artist_text_area{
		padding:16px;
	}

	.top_artist_section .artist_name_flex{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	.top_artist_section .artist_name{
		font-size: 24px;
	}

	.top_artist_section .artist_insta{
		margin-left: 8px;
		width:18px;
		margin-top: 6px;
	}

	.top_artist_section .artist_text{
		margin-top: 20px;
		font-size: 13px;

	}

	.top_artist_section .sche_button{
		margin-top: 88px;
	}



	.top_faq_section{
		padding-top: 80px;
	}

	.top_faq_section .faq_frame{
		position: relative;
		padding-bottom: 140px;
	}


	.top_faq_section .faq_list{
		margin-top: 60px;
	}

	.top_faq_section .faq_block + .faq_block{
		margin-top: 24px;
	}

	.top_faq_section .faq_question{
		font-size: 16px;
		letter-spacing: -0.05em;
		line-height: 1.8;
		color: #000;
		padding:16px 44px 16px 40px;
		cursor: pointer;
	}

	.top_faq_section .faq_question::before{
		font-size: 16px;
		left:12px;
		top:16px;
		line-height: 1.8;
	}

	.top_faq_section .faq_question::after{

		width:16px;
		height:16px;
		right:16px;
		top:24px;
	}

	.top_faq_section .faq_answer{
		font-size: 14px;
		padding:5px 16px 24px 40px;
		line-height: 1.8;
		
	}

	.top_faq_section .faq_answer::before{
		content:'A.';
		font-size: 16px;
		line-height: 2;
		left:12px;
		top:0;
	}


	.top_faq_section .logo_flex{
		bottom:12px;
		right:0;
		gap:20px;
	}

	.top_faq_section .logo01{
		width:64px;
	}

	.top_faq_section .logo02{
		width:76px;
	}


	/*
	------------------------------------
	スケジュール
	------------------------------------
	*/

	body.schedule_body{

	}

	main.schedule_main{

	}

	.schedule_section .white_box{
		padding:32px 16px 40px;
		border-radius: 16px;
	}

	.schedule_section .sec_title_img img{
		height:28px;
	}

	.schedule_mv_section{
		padding-top: 120px;
	}

	.schedule_mv_section .logo{
		max-width: 200px;
	}

	.schedule_mv_section .page_title{
		margin-top: 80px;
		font-size: 30px;
		letter-spacing: -0.06em;
	}

	.schedule_mv_section .anchor_flex{
		margin-top: 28px;
		gap:24px;
	}

	.schedule_mv_section .anchor_button{
		max-width: 100%;
		min-height:70px;
		padding:8px 16px;
		font-size: 15px;
	}

	.schedule_mv_section .anchor_button img{
		height:24px;
	}

	.schedule_arena_section{
		padding-top: 96px;
	}


	.schedule_arena_section .area_block{
		margin-top: 36px;
	}

	.schedule_arena_section .area_block + .area_block{
		margin-top: 80px;
	}

	.schedule_arena_section .arena_head{
		gap:2px;
		min-height:60px;
		padding:8px 16px;
		font-size: 18px;
		letter-spacing: -0.03em;
	}

	.schedule_arena_section .arena_head span{
		font-size: 15px;
	}

	.schedule_arena_section .arena_head::before{
		width:51px;
		height:calc(100% + 28px);
		clip-path: polygon(0 28px, 100% 0, 100% calc(100% - 28px), 0% 100%);
	}

	.schedule_arena_section .arena_guide{
		margin-top: 24px;
		font-weight: 500;
		font-size: 16px;
		letter-spacing: -0.06em;
		line-height: 1.4;
	}

	.schedule_arena_section .event_flex{
		display: flex;
		align-items: center;
		flex-direction: column;
		margin-top: 24px;
	}

	.schedule_arena_section .event_thumb{
		width:100%;
		margin-right:0;
	}

	.schedule_arena_section .event_text_area{
		max-width: 100%;
		padding-top: 16px;
	}

	.schedule_arena_section .event_job{
		font-size: 20px;
		letter-spacing: -0.03em;
		line-height: 1.3;
	}

	.schedule_arena_section .event_name{
		margin-top: 10px;
		font-size: 20px;
		letter-spacing: -0.03em;
		line-height: 1.3;
	}

	.schedule_arena_section .event_text{
		font-size: 14px;
		letter-spacing: -0.03em;
		line-height: 1.75;
		margin-top: 6px;
	}

	.schedule_arena_section .judge_head{
		margin-top: 32px;
		font-size: 18px;
	}

	.schedule_arena_section .judge_list{
		margin-top: 16px;
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap:32px 0;
		flex-wrap: wrap;
	}

	.schedule_arena_section .judge_item{
		width:100%;
	}

	.schedule_arena_section .judge_card{
		padding:16px 16px 20px;
	}

	.schedule_arena_section .judge_text_area{
		padding-top: 12px;
	}

	.schedule_arena_section .judge_name{
		font-size: 18px;
		display: flex;
		align-items: center;
	}

	.schedule_arena_section .judge_name span{
		font-size: 13px;
		letter-spacing: -0.03em;
		line-height: 1.2;
	}

	.schedule_arena_section .judge_text{
		font-size: 15px;
		letter-spacing: -0.03em;
		line-height: 1.75;
		margin-top: 4px;
	}

	.schedule_arena_section .judge_remark{
		margin-top: 32px;
		font-size: 15px;
		line-height: 1.75;
		text-align: center;
	}

	.schedule_arena_section .ticket_button{
		margin-top: 16px;
		max-width: 100%;
		height: 70px;
		border: 2px solid;
		font-size: 18px;
		letter-spacing: -0.03em;
		padding-right: 20px;
	}

	.schedule_arena_section .ticket_button::after{
		width:30px;
		height:20px;
		right:20px;
	}

	.schedule_arena_section .stage_list{
		margin-top: 32px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		flex-direction: column;
		gap:32px 0;
	}

	.schedule_arena_section .stage_item{
		width:100%;
	}

	.schedule_arena_section .stage_card{
		min-height: auto;
		padding:16px 15px 20px;
	}


	.schedule_arena_section .stage_text_area{
		padding-top: 24px;
	}

	.schedule_arena_section .cast_name_flex{
		display: flex;
		align-items: flex-start;
		gap:10px;

	}

	.schedule_arena_section .cast_num{
		width:23px;
	}

	.schedule_arena_section .cast_name{
		font-size: 18px;
		line-height: 1.3;
		margin-top: -2px;
	}

	.schedule_arena_section .stage_name{
		font-size: 18px;
		line-height: 1.3;
		margin-top: 4px;
	}

	.schedule_arena_section .stage_text{
		font-size: 13px;
		letter-spacing: -0.03em;
		line-height: 1.9;
		margin-top: 4px;
	}

	.schedule_arena_section .stage_remark{
		margin-top: 62px;
		min-height: 52px;
		font-weight: 500;
		font-size: 18px;
		line-height: 1.3;
		padding:4px 0;
	}

	.schedule_arena_section .artist_list{
		margin-top: 20px;
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		flex-wrap: wrap;
		gap:42px 0;
	}

	.schedule_arena_section .artist_item{
		width:100%;
	}

	.schedule_arena_section .artist_name{
		min-height: 50px;
		padding:6px 12px;
		font-size: 18px;
		letter-spacing: -0.03em;
		line-height: 1.3;
	} 

	.schedule_arena_section .map_head{
		height:36px;
		font-size: 24px;
		padding-inline: 16px;
	}

	.schedule_place_section{
		padding-top: 106px;
	}

	.schedule_place_section .head_flex{
		display: flex;
		align-items: flex-start;
		gap:24px;
	}


	.schedule_place_section .head_left{
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap:12px;
	}

	.schedule_place_section .head_time{
		font-size: 16px;
	}

	.schedule_place_section .head_remark{
		min-width:80px;
		min-height:40px;
		font-size: 16px;
	}

	.schedule_place_section .head_text{
		margin-top: 24px;
		font-size: 16px;
		line-height: 1.3;
	}

	.schedule_place_section .place_list{
		margin-top: 40px;
	}

	.schedule_place_section .place_block + .place_block{
		margin-top: 40px;
	}

	.schedule_place_section .place_head_area{
		display: flex;
		align-items: center;
		gap:20px;
	}

	.schedule_place_section .place_head_area::after{
		height:2px;
	}

	.schedule_place_section .place_head{
		gap:12px;
		font-size: 20px;
	}

	.schedule_place_section .place_icon{
		width:40px;
	} 

	.schedule_place_section .place_text{
		margin-top: 16px;
		font-size: 16px;
		line-height: 1.75;
	}

	.schedule_place_section .img_flex{
		margin-top: 50px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
		gap:24px 0;
	}

	.schedule_place_section .img_block{
		width:100%;
	}

	.schedule_place_section .remark_flex{
		margin-top: 22px;
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap:24px;
	}

	.schedule_place_section .sns_remark{
		font-size: 16px;
		line-height: 1.75;
	}

	.schedule_place_section .sns_list{
		gap:24px;
	}

	.schedule_place_section .sns{
		width:27px;
	}

	.schedule_access_section{
		padding-bottom: 80px;
	}

	/*
	------------------------------------
	スポンサー
	------------------------------------
	*/

	body.schedule_body{
		
	}

	main.schedule_main{

	}

	.sponsor_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}


	.sponsor_section .sponsor_head{
		padding-bottom: 24px;
	}

	.sponsor_section .sponsor_head img{
		height:18px;
	}

	.sponsor_section .special_list{
		margin-top: 40px;
	}

	.sponsor_section .special_item{
		width: 100%;
		max-width: 100%;
	}

	.sponsor_section .sponsor_area + .sponsor_area{
		margin-top: 100px;
	}

	.sponsor_section .sponsor_list{
		margin-top: 32px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
		gap:32px 0
	}

	.sponsor_section .sponsor_item{
		width:100%;
	}


	/*
	------------------------------------
	プライバシーポリシー
	------------------------------------
	*/

	body.privacy_body{
		
		
	}

	main.privacy_main{

	}

	.privacy_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}


	.privacy_section .page_title{
		padding-bottom: 16px;
		font-size: 24px;
		letter-spacing: -0.03em;
	}

	.privacy_section .privacy_block{
		margin-top: 40px;
	}

	.privacy_section .privacy_head{
		font-size: 18px;
		line-height: 1.3;
	}

	.privacy_section .privacy_text{
		margin-top: 12px;
		line-height: 2;
	}

	/*
	------------------------------------
	お問い合わせ
	------------------------------------
	*/

	body.contact_body{
		
	}

	main.contact_main{

	}

	.contact_section{
		padding-top: 120px;
		padding-bottom: 120px;
	}

	.contact_section .page_title{
		font-size: 24px;
	}


	.contact_section .contact_text_frame{
		margin-top: 56px;
	}

	.contact_section .contact_text{
		font-weight: bold;
		line-height: 2;
		
	}

	.contact_section .contact_text + .contact_text{
		margin-top: 40px;
	}

	.contact_section .form_frame{
		margin-top: 96px;
	}

	.contact_section .form_line + .form_line{
		margin-top: 40px;
	}

	.contact_section .form_label{
		line-height: 1.3;
	}


	.contact_section .input_frame{
		margin-top: 10px;
	}

	.contact_section .text_input{
		height: 58px;
		padding-inline: 12px;
	}

	.contact_section textarea{
		height: 260px;
		padding:12px;
	}

	.contact_section .submit_area{
		margin-top: 80px;
	}

	.contact_section .submit_frame{
		width: 100%;
	}

	.contact_section .submit{
		width: 100%;
		height: 70px;
		font-size: 20px;
	}


	/*
	------------------------------------
	404
	------------------------------------
	*/

	body.page404_body{
		
	}

	.page404_section01{
		padding-top: 120px;
		padding-bottom: 120px;
	}


	/*
	------------------------------------
	準備中
	------------------------------------
	*/

	body.prepare_body{
		
	}

	main.prepare_main{
		color:#000;
	}

	.prepare_section{
		padding-top: 260px;
		padding-bottom: 120px;
	}

	.prepare_section .p01{
		font-size: 20px;
	}



}/*@media screen and (max-width:767px){*/