@charset "UTF-8";
/* CSS Document */

@media screen and (min-width: 640px) {


.fixed_top {
	background-color: rgba(255,255,255,.77);
	height: 52px;
}

.a_fixedTop_R1 {
	display: block;
	background: #FFF;
}


#burger {
	top: 30px;
    right: 30px;
	width: 70px;
    height: 70px;
}

#menu-toggle:checked ~ #burger {
	top: 55px;
	right: 55px;
}

.title_menu {
	margin: 38px auto 16px;
	max-width: 152px;
}

#main_menu ul li a,  #page_menu ul li a {
	font-size: 1.7rem;
	padding: 16px 24px;
}


#main_menu {
	background-size: 77vh 77vh;
}

#page_menu {
	background-size: contain;
}




.hdr_top h1 {
	background-image: url("../images/kv_PC.jpg");
	height: calc(100vw / 1440 * 656);
	max-width: 1920px;
	max-height: calc(1920px / 1440 * 656);
}

@supports (background-image: url("../images/kv_PC.webp")) {
    .hdr_top h1 {
      background-image: url("../images/kv_PC.webp");
	}
}



.hdr_bottom {
	padding: 10px 10px 18px;
}

.hdrBtm_logo {
	width: 105px;
	margin: 0 auto 12px;
}

.hdr_bottom h1 {
	height: 56px;
}

.hdrBtm_bridge {
	margin-top: 217px;
}

.hdrBtm_bridge::before, .hdrBtm_bridge::after {
	height: 160px;
}





.photo_scroll li {
    /*min-width: 25vw;*/
	min-width: calc(100vw / 4);
	min-width: calc(100cqw / 4);
}


.hdrTop_bridge {
	margin-top: calc(100vw / var(--width-h1PC) * var(--height-h1PC));
	margin-top: calc(100cqw / var(--width-h1PC) * var(--height-h1PC));
	height: calc(100vw / 4 / 580 * 387);
	height: calc(100cqw / 4 / 580 * 387); 
}

.hdrTop_bridge::before, .hdrTop_bridge::after {
	height: calc(100vw / 4 / 580 * 387 - 40px);
	height: calc(100cqw / 4 / 580 * 387 - 40px);
}

.hdrBtm_bridge a {
	top: -205px;
}

.photo_scroll_spc::before {
	height: 52px;
}


.bottomV {
	padding-bottom: 116px !important;
}

.tab1_detail_col:last-child {
	padding-bottom: 116px !important;
}


.titleL2 {
	font-size: 1.8rem;
}

.titleL1 {
	font-size: 10.4rem;
}

.titleL1_ruby {
	font-size: 2rem;
}

.titleL1_ruby2 {
	font-size: 1.9rem;
}

.h3_clumBox_spc h3 {
	font-size: 2rem;
}

.txL6 {
	font-size: 7.8rem;
}


.clmBox_inner {
	padding: 18px 26px 28px;
}

.column_box h4, .title1 {
	font-size: 1.8rem;
}

.tx1 {
	font-size: 1.4rem;
}

.column_box .tx1 {
	padding-left: 17px;
}

.bt_main1, .bt_main1:visited {
	font-size: 1.5rem;
}



.fmt2_table {
	font-size: 1.4rem;
}

.fmt2_table_titleW {
	font-size: 1.8rem;
}


.if_googleMap {
    height: 460px !important;
}



.w_topV1::before {
	top: -99px;
	height: 100px;
}

.w_downV3::after, .intro3_bottomV::after {
	bottom: -99px;
	height: 100px;
}

.intro1_date {
    font-size: 6rem;
}

.intro2 {
    padding-top: 120px;
	background-attachment: fixed;
}

.intro2_inner {
	padding-bottom: 116px;
}

.intro1_place_ruby {
    font-size: 2rem;	
}




.vote_half_bk::after {
	content: none;
}


.vote_result_half_spc {
	background-image: url(../images/bg_half.svg);
	background-size: 100% 100%;
}

.vote_result_half {
	width: 50%;
	padding-top: 89px;
}

.blk_vote_result {
}

.vote_half_bk {
	background-color: transparent;
}

.vote_half_w {
	background-color: transparent;
}



.title_underline {
	font-size: 2.1rem;
}

.result_photo {
	height: 264px;
	min-height: auto;
}

.result_tx {
	padding-top: 24px;
}

.result_name {
	font-size: 1.5rem;
}








.vote_schedule {
    padding-top: 120px;
	background-attachment: fixed;
}

.vSch_details h5 {
	font-size: 2.7rem;
}

.vSch_tx2 {
	font-size: 2.3rem;
}

.vSch_title2 {
	font-size: 4.5rem;
	letter-spacing: 1.2rem;
	text-indent: 1.2rem;
}

.logos_chrTeam1 {
	margin-bottom: 28px;
}

.bridge_image {
	height: 44vh;
	background-attachment: fixed;
}

.hr_arrowD2 {
	height: 50px;
}

.howtoVote_title h5 {
	font-size: 2.4rem;
}

.blk_column3 {
	width: calc(33% - 16px);
	margin: 0 8px;
}






.txL1 {
	font-size: 2.3rem;
}

.w_ribbon {
	background-size: 980px 653px;
}

.txL1_intro4 {
	font-size: 16.8rem;
}

.intro4_inner {
	padding: 120px 10px 100px;
}

.txL2_intro4 {
	font-size: 2.2rem;
	margin-bottom: 22px;
}

.txL2_intro4 {
	margin-bottom: 40px;
}


.wrapS_bhopeBtm h3 {
	font-size: 1.9rem;
}





.tab_spc1 {
	height: 109px;
}

.tab1_detail_spc h4 {
	font-size: 1.9rem;
}

.grad_sheetL_1 {
	font-size: 1.9rem;
	padding: 45px 22px 0 0;
}

.tabSpc1_b .grad_sheetL_1 {
	padding: 34px 0 0 0;
}

.tabSpc1_c .grad_sheetL_1 {
	padding: 34px 0 0 0;
}

.tabSpc1_d .grad_sheetL_1 {
	padding: 34px 0 0 5px;
}

.tabSpc1_a p,
.tabSpc1_b p,
.tabSpc1_c p,
.tabSpc1_d p {
	font-size: 2rem;
}

.tabSpc1_a p span {
	font-size: 1.3rem;
}


.tab1_dtl_logo {
	clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), 0% 100%);
}

.tab1_detail_col:nth-child(2),
.tab1_detail_col:nth-child(3) {
	clip-path: polygon(0% 0%, 50% 60px, 100% 0%, 100% 100%, 0% 100%);
}

.tab1_dtl_flex_wrap {
	background: rgb(255,255,255);
	background: -moz-linear-gradient(180deg, rgba(255,255,255,0) 70%, rgba(255,255,255,0.11) 100%);
	background: -webkit-linear-gradient(180deg, rgba(255,255,255,0) 70%, rgba(255,255,255,0.11) 100%);
	background: linear-gradient(180deg, rgba(255,255,255,0) 70%, rgba(255,255,255,0.11) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
	
	padding-bottom: 60px;
	clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 60px), 0% 100%);
}

.tab1_dtl_flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	
  	-ms-flex-wrap: wrap;
  	    flex-wrap: wrap;
}

.tab1_detail_col.col_white .tab1_dtl_flex_wrap,
.tab1_detail_col.col_yellow1 .tab1_dtl_flex_wrap,
.tab1_detail_col.col_yellow2 .tab1_dtl_flex_wrap {
	background: rgb(0,0,0);
	background: -moz-linear-gradient(180deg, rgba(0,0,0,0) 70%, rgba(0,0,0,0.11) 100%);
	background: -webkit-linear-gradient(180deg, rgba(0,0,0,0) 70%, rgba(0,0,0,0.11) 100%);
	background: linear-gradient(180deg, rgba(0,0,0,0) 70%, rgba(0,0,0,0.11) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
}

.tab1_dtl_plr {	
	width: calc(100% / 2);
	max-width: 480px;
	padding: 0px 10px 60px;
}

.tab1_dtl_plr_data {
	text-align: left;
}

.bt_tab1_dtl_plr::before {
	right: 0;
}

.tab1_detail_col.col_black .tab1_dtl_plr,
.tab1_detail_col.col_white .tab1_dtl_plr,
.tab1_detail_col.col_red1 .tab1_dtl_plr,
.tab1_detail_col.col_gold .tab1_dtl_plr,
.tab1_detail_col.col_yellow1 .tab1_dtl_plr,
.tab1_detail_col.col_blue .tab1_dtl_plr,
.tab1_detail_col.col_green .tab1_dtl_plr,
.tab1_detail_col.col_yellow2 .tab1_dtl_plr {
	background: transparent;
}

.plr_modal::before {
	width: 60px;
	height: 60px;
	top: 20px;
	right: 10%;
}

.plrMdl_ribbon {
	right: 28px;
	letter-spacing: .1rem;
}

.img_plrMdl {
	width: calc(48% - 10px);
}

.plrMdl_profSpc{
	padding-top: 40px;
}

.plrMdl_prof {
	width: calc(52% - 16px);
}

.plrMdl_num {
	font-size: 3.4rem;
	margin-right: 10px;
	min-width: 60px;
}

.plrMdl_num span {
	font-size: 2.3rem;
}

.plrMdl_name {
	width: calc(100% - 60px - 10px);
	font-size: 1.7rem;
	line-height: 1.3;
	letter-spacing: .1rem;
}

.plrMdl_detail {
	font-size: 1.4rem;
}

.plrMdl_flag {
	width: 39%;
}



.bt_faqAll {
	font-size: 1.4rem;
}

.title1 {
	font-size: 1.9rem;
}

.faqBlk_Q {
	font-size: 1.5rem;
}

.faqBlk_tx1 {
	font-size: 1.5rem;
}





.title1_hdr_bhfd {
	font-size: 3.4rem;
}

.title3_hdr_bhfd {
	font-size: 2.6rem;
}

.ul_menu_bhfd li a, .ul_menu_bhfd li a:visited {
	padding-top: 20px;
	font-size: 1.6rem;
}

.txL1_bhfd {
	font-size: 2.3rem;
	text-align: center;
}

.fig_spc1_bhfd img {
	width: calc(50% - 8px);
	margin: 0 4px; 
}




.tk_event {
    padding-top: 120px;
	background-attachment: fixed;
}

.tkEvt_blk {
	width: calc(50% - 18px);
	margin: 0 9px;
}

.tkEvt_blk_inner {
	padding-bottom: calc(((100vw - 40px) / 2 - 18px) / 490 * 276);
}

.tx1_tkEvt_guide {
	font-size: 1.7rem;
}

.tk_system_spc {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	
  	-ms-flex-wrap: wrap;
  	    flex-wrap: wrap;
	
	padding-bottom: 134px;
}

.tk_fig_arena {
	width: 50%;
	margin: 0;
	padding: 10px;
	height: 50vw;
}

.tk_fig_arena::after {
	bottom: 22px;
	right: 22px;
}

.tk_card_spc {
	width: 50%;
	scrollbar-width: auto;
}

.tk_card_inner {	
	width: calc((75vw / 2) * 25);
}

.blk_tk_card {
	width: calc(75vw / 2 - 6px);
}

.tk_fig_arena img {
	width: 100%;
}

.tk_sw_spc {
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: 0;
	overflow: auto;
	z-index: 1;
	max-width: 782px;
}

.tk_sw_inner {
	width: 100%;
}

.tk_sw_inner div {
	font-size: 2.8rem;
	width: 38px;
	aspect-ratio: 1;
	margin: 0 3px 3px 0;
	padding-top: 8px;
}

.blk_tk_card_inner {
	padding-bottom: calc((75vw / 2 - 6px) / 980 * 551);
}


.tk_price_day2::after, .tk_price_day1::after, .tk_price_all::after {
	content: '円';
}



.tab_spc2 {
	height: 88px;
}

.tabSpc2_a, .tabSpc2_b {
	font-size: 3.7rem;
	padding-top: 19px;
}

.tabSpc2_a span, .tabSpc2_b span{
	font-size: 5rem;
}


.tab2_detail_wrap  h4 {
	font-size: 3.2rem;
}

.tt_time_blk > div:first-child {
	width: 120px;
	margin-right: 20px;
	margin-left: 10px;
}

.tt_time_blk h5 {
	font-size: 2.8rem;
	padding-top: 13px;
}

.tt_time_blk h5.sizeS {
	font-size: 1.8rem;
	padding: 18px 0 15px 0;
}

.tt_detail {
	width: calc(100% - 150px);
	padding-top: 14px;
}

.tt_detail p {
	font-size: 1.5rem;
}

.tt_detail img {
	height: 112px;
}








.bt_scrolltoTop {
	width: 66px;
	height: 66px;
	bottom: 98px;
}



.banner_bottom {
	text-align: center;
	padding: 13px 15px 13px 15px;
	background-size: 30px 30px;
}

.banner_bottom_img1 {
	background-size: 61px 61px;
}

.banner_bottom_tx1 {
	font-size: 2rem;
}

.banner_bottom_tx2 {
	font-size: 2.5rem;
}



.a_btSnsBtm {
	margin: 0 20px;
}

#page_menu::before {
	top: -99px;
	height: 100px;
}




/* general PC
-------------------------------------------------------------- */

.onlyPC {display: block;}
.onlyPC_il {display: inline;}
.onlySP, .onlySP_il {display: none;}



}





@media screen and (min-width: 760px) {

.tk_price_day2::after, .tk_price_day1::after, .tk_price_all::after {
	content: '円（税込）';
	font-size: 1.1rem;
	margin-left: 4px;
}

.tk_system_spc {
	padding-bottom: 110px;
}

}




@media screen and (min-width: 860px) {

.tab1_dtl_plr {	
	width: calc(100% / 3);
	max-width: 480px;
	padding: 0px 10px 60px;
}

.tab1_dtl_plr_data {
	text-align: center;
}

.tk_fig_arena {
	height: calc(860px * .5);
}

.tk_card_inner {	
	width: calc((860px * .75 / 2) * 25);
}

.blk_tk_card {
	width: calc(860px * .75 / 2 - 6px);
}

.blk_tk_card_inner {
	padding-bottom: calc((860px * .75 / 2 - 6px) / 980 * 551);
}



}




@media screen and (min-width: 980px) {

.bt_tab1_dtl_plr::before {
	right: 14%;
}

.tkEvt_blk_inner {
	padding-bottom: calc(((980px - 40px) / 2 - 18px) / 490 * 276);
}

}




@media screen and (min-width: 1434px) {

.guide_scrollX, .guide_scrollX2 {
	display: none;
}

}




@media screen and (min-width: 1920px) {

.hdrTop_bridge {
	margin-top: calc(1920px / var(--width-h1PC) * var(--height-h1PC));
}


}