@charset "UTF-8";

.sml {
    font-size: 0.85em;
}

.fade {
    transition: 1.2s 0.2s;
    opacity: 0;
    transform: translateY(20px);
}

.fade.started {
    opacity: 1;
    transform: none;
}

.cs {
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
    font-size: 27px;
    text-align: center;
    padding: 0 1em 1em;
}

main.content--body {
    font-family: "Poppins","tot-shizukago-stdn", sans-serif;
    font-weight: 500;
}


.page--feature :not(h2).section-tit {
    font-size: 11.5rem;
    line-height: 1;
    margin-bottom: 0.65em;
    margin-top: 0;
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
    color: #e1222a;
    letter-spacing: 0;
    text-align: center;
    text-shadow: 0 0 13px #ff393999;
}

.contents_box {
    position: relative;
    padding: 3.5em 0 8.5em;
}
.contents_box:last-child {
    padding-bottom: 0;
}


.main_visual {
    line-height: 0;
    margin-bottom: 5em;
}



#menuButton {
    display: block;
    width: 45px;
    height: 40px;
    position: fixed;
    top: 1rem;
    right: 3%;
    z-index: 9999;
    border: none;
    text-decoration: none;
    opacity: 1;
}

#menuButton span:first-child { top: 12px;} 
#menuButton span:nth-child(2) { margin-top: -1px; top: 50%;} 
#menuButton span:nth-child(3) { bottom: 12px;} 

#menuButton.active span {
}
#menuButton.active span:first-child { 
	-webkit-transform: translateY(7px) rotate(45deg); 
	transform: translateY(7px) rotate(45deg); 
} 
#menuButton.active span:nth-child(2) { opacity: 0;} 
#menuButton.active span:nth-child(3) { 
	-webkit-transform: translateY(-7px) rotate(-45deg); 
	transform: translateY(-7px) rotate(-45deg); 
} 
#gNav .menu {
    display: -webkit-flex;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    width: 40%;
    margin: 40px auto;
}

#menuButton span {
    display: block;
    background: #e1222a;
    width: 30px;
    height: 2px;
    position: absolute;
    left: 10px;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}



.anker_list {
    display: flex;
    flex-wrap: wrap;
    top: 30px;
    right: 30px;
    position: fixed;
    z-index: 100;
    gap: 30px;
}

.anker_list li {
}

.anker_list li a {
    width: auto;
    display: block;
    text-align: center;
    color: #e83940;
    font-size: 19px;
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
    text-shadow: 0 0 8px #ff393999;
}

.sns_wrap {
    position: fixed;
    bottom: 30px;
    left: 30px;
    z-index: 5;
}

.sns_list {
}

.sns_list li {
    text-align: center;
    font-size: 15px;
    margin-bottom: 5px;
}

.sns_list li a {
    color: #ffffff;
    text-shadow: 0 0 8px #ffffff99;
}

.fanclubBtn {
	display: flex;
	justify-content: space-between;
	list-style: none;
	flex-wrap: wrap;
}
.fanclubBtn li {
	width: 45%;
}
.fanclubBtn li a {
    display: block;
    border-radius: 0;
    padding: 30px 0 20px;
    box-shadow: 0 5px 8px 0 rgba(0,0,0,0.2);
    color: #000;
    text-decoration: none;
    font-family: "Poppins", sans-serif;
    text-align: center;
    border: 1px solid #ffffff36;
}
.fanclubBtn li:nth-child(1) a {
    background: #343434 !important;
    color: #fff;
}
.fanclubBtn li:nth-child(2) a {
	background: #1947b7;
    color: #fff;
}
.fanclubBtn li a div {
    width: 100%;
    margin: 0 auto 5px;
    line-height: 1.2;
    font-size: 25px;
    font-weight: 600;
}



.bnr_btn {
    transition: all .4s ease-out;
    position: fixed;
    bottom: 2.5%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    right: 2%;
    z-index: 10;
}

.scroll .bnr_btn {
    opacity: 0;
    bottom: 5%;
    pointer-events: none;
}


.bnr_btn a {
    width: 330px;
    padding: 15px 20px;
    display: flex;
    border-radius: 6px;
    text-decoration: none;
    background: linear-gradient(0deg, #cd171f, #610004);
    border-top: 1px solid #ffffff2b;
    border-bottom: 1px solid #ffffff0a;
    font-weight: bold;
    font-size: 13px;
    line-height: 1.7;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.bnr_span {
    background: #ffffff;
    color: #660105;
    display: inline-block;
    width: 100%;
    border-radius: 2em;
    text-shadow: none;
    line-height: 1.5;
    padding: 2px;
    margin-top: 6px;
    letter-spacing: 0.05em;
    font-size: 1.1em;
}

.bnr_txt {
    text-shadow: 0 0 1.3em #9634ff;
    width: 100%;
}



.page-tit {
    font-family: "Poppins", sans-serif;
    font-size: 4em;
    font-weight: bold;
    text-align: center;
    margin-bottom: 5rem;
}


.general_box {
    background: none;
    border: 1px solid #ffffff69;
    padding: 3.5em;
    position: relative;
    margin-bottom: 2.5em;
    background: #00000054;
    box-shadow: 0 0 20px #ffffff29;
}

.general_box:last-child {
    margin-bottom: 0em;
}

.general_tit {
    border-left: 3px solid #e1222a;
    padding-left: 10px;
    font-weight: bold;
    margin-bottom: 20px;
    font-size: 20px;
}

.general_txt {
    line-height: 1.9;
    font-size: 14px;
    margin-bottom: 15px;
}
.general_txt:last-child {
    margin-bottom: 0;
}

.ph_benefit {
    line-height: 0;
    margin-bottom: 15px;
}

.ph_benefit.ph_wp {
    margin: 0 auto 20px;
    width: 26%;
}

.page--feature .heading_2:first-child {
    margin-top: 0;
}

.page--feature #schedule table{
	width: 100%;
    border: none;
	border-bottom: 1px solid #ffffff73;
	margin: 0 auto;
	text-align: left;
	border-collapse: collapse;
    border-spacing: 0;
    letter-spacing: 0.02em;
}

.page--feature #schedule table tr {
    position: relative;
    display: table-row;
}

.page--feature #schedule table th {
    border: none;
    font-size: 0.95em;
    padding: 0;
    background: none;
    text-align: left;
}
.page--feature #schedule table tr:first-child th {
    color: #e1222a;
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
    font-size: 16px;
}

.page--feature #schedule table td {
    border: none;
    border-top: 1px solid #ffffff73;
    vertical-align: middle;
    padding: 1.2rem 0;
    position: relative;
    font-weight: 500;
}

.page--feature #schedule table .soldout td.date_sch::before {
    content: 'SOLD \A OUT!!';
    position: absolute;
    left: -44px;
    white-space: pre;
    color: #E6E691;
    font-family: 'Caveat', cursive;
    line-height: 1;
    top: 18px;
    transform: rotate(-9deg);
    font-size: 16px;
}

.page--feature #schedule table .venue,.page--feature #schedule table .eventer{
	vertical-align: middle;
	box-sizing: border-box;
}

.page--feature #schedule table .date_sch {
    width: 15%;
}
.page--feature #schedule table .date_sch .week { font-size: 12px;  margin-left: 5px;}

.page--feature #schedule table .area {
    width: 10%;
    padding: 0 1.3rem;
    text-align: center;
}
.page--feature #schedule table .venue {
    width: 55%;
    line-height: 1.5;
    padding: 1rem 0 1rem 1.5rem;
}
.page--feature #schedule table td.venue {
    font-weight: 600;
}
.page--feature #schedule table .venue a {
    transition: 0.3s;
}
.page--feature #schedule table .venue a:hover { opacity: 0.5;}

.page--feature #schedule table .venue a i {
    margin-left: 5px;
    font-size: 12px;
}

.page--feature #schedule table .venue_wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.page--feature #schedule table .venue_place {
    width: 60%;
    padding-right: 5%;
}
.page--feature #schedule table .venue_con {
    width: 40%;
    font-size: 0.85em;
}

.page--feature #schedule table .time { width: 15%;}
.page--feature #schedule table .time span { display: block; padding: 7px 0 0 0;}

.page--feature #schedule table .eventer {
	width: 30%;
	padding: 10px;
}
.page--feature #schedule table .general {
	width: 10%;
	padding: 5px;
	text-decoration: none;
}
.page--feature #schedule table .general .week { font-size: 12px;  margin-left: 5px; font-family: sans-serif;}

.page--feature #schedule table td.date_sch {
    font-size: 26px;
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
}
.page--feature #schedule table td.time {
    font-size: 20px;
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
}
.page--feature #schedule table td.area {
    font-weight: 600;
}

.page--feature #schedule table td a {
    text-decoration: underline;
}

.page--feature .schedule_box .heading_2 {
    margin-bottom: 0;
}

.contact a {
    text-decoration: underline;
}

.mv_box {
    position: relative;
    width: 100%;
    text-align: left;
    aspect-ratio: 16/9;
}

.mv_box iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

@media screen and (min-width: 768px) {

#menuButton {
    display: none;
}
}

.soldout {
    display: inline-block;
    color: #f00;
    border: solid 1px #FF0004;
    text-align: center;
    max-width: 300px;
    padding: 0.2em 1em;
    white-space: nowrap;
}


.ticketInfo {
	margin-bottom: 30px;
}
.ticketInfo:last-child {
    margin-bottom: 0;
}

.ticketInfo > li {
    font-size: 14px;
    display: flex;
    flex-wrap: wrap;
    padding: 15px 0;
    border-bottom: dotted 1px #ccc;
}

.ticketInfo li:first-child {
}

.ticketInfo_tit {
    width: 17%;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.4;
    position: relative;
    padding-right: 18px;
}


.ticketInfo_tit_add {
  width: 20%;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
  position: relative;
  padding-right: 18px;
}

.ticketInfo_desc_add {
  width: 80%;
  padding-left: 20px;
  border-left: 1px solid #ccc;
}

.ticketInfo_desc {
    width: 83%;
    padding-left: 20px;
    border-left: 1px solid #ccc;
}

.ticketInfo_desc a {text-decoration:underline;}


.ticketInfo_desc span{
    font-size:12px;
}
.ticketAttention {
    margin-bottom: 25px;
    font-size: 13px;
}
.ticketAttention:last-child {
    margin-bottom: 0;
}

.ticketAttentionlist > li {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.6;
    margin-bottom: 3px;
    font-size: 0.9em;
}

.ticketAttentionlist > li:last-child {
    margin-bottom: 0;
}


.detailBtn {
    max-width: 350px;
    margin: 0px auto;
    width: 100%;
}

.detailBtn a {
    display: block;
    text-align: center;
    color: #ffffff;
    text-decoration: none;
    border-radius: 0;
    font-size: 16px;
    font-weight: bold;
    padding: 23px;
    background: #e1222a;
    letter-spacing: 0.08em;
    box-shadow: 0 0 13px #ff393999;
    line-height: 1.3;
}

.detailBtn a:hover {
    opacity: 0.7;
}

.detailBtn.hide a {
    pointer-events: none;
    color: #ababab;
    background: #595959;
}


.btn_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2%;
}
.btn_wrap:last-child {
}

.btn_wrap .detailBtn {
    width: 40%;
    margin: 0;
    max-width: none;
}

.btn_wrap .detailBtn a {
    margin: 0;
    width: 100%;
}


.price {
list-style: none;
    margin: 0 auto 40px;
}
.price:last-child {
    margin-bottom: 0;
}

.price > li {
    display: flex;
    justify-content: space-between;
    padding: 30px 0;
    border-bottom: 1px solid #b8b3af;
    flex-wrap: wrap;
}
.price > li:first-child {
    border-top: 1px solid #b8b3af;
}
.price > li h5 {
    font-size: 16px;
    font-weight: bold;
    width: 26%;
    letter-spacing: 0.05em;
    border-right: 1px solid #b8b3af;
}
.price > li .price_info {
    width: 70%;
}

.price > li .price_txt {
    font-size: 18px;
    letter-spacing: 0.05em;
}
.note {
	font-size: 14px;
	font-weight: bold;
}



.faqBox {
    margin-bottom: 30px;
}

.faq_tit {
    font-weight: 600;
    font-style: normal;
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 35px;
    text-align: center;
    letter-spacing: 0.15em;
}

.faq_tit::after {
    content: '';
    display: block;
    width: 50px;
    height: 2px;
    background: #fff;
    margin: 15px auto 0;
}

.faqBox:last-child {
    margin-bottom: 0;
}

.faq_ac {
    text-align: left;
    border-bottom: 2px solid #f9f9f9;
    background: #f1f1f1;
}

.faq_ac li {
    text-indent: -1.4em;
    padding-left: 1.4em;
    list-style: disc;
    margin-bottom: 4px;
    line-height: 1.6;
}

.faq_ac li:last-child {
    margin-bottom: 0;
}

.faq_ac li a {
    word-wrap: break-word;
    word-break: break-all;
}
.faq_ac li a {
    text-decoration: underline;
}

.faq_ac li .fa {
    text-indent: 0;
}

.faq_ac > dt {
position: relative;
    cursor: pointer;
    padding: 13px 40px 13px 20px;
    line-height: 1.6;
    font-weight: 600;
    font-size: 15px;
    background: #e7e7e7;
}


.faq_ac > dt::after {
  content: "";
  display: block;
  width: 13px;
  height: 0;
  border-bottom: solid 1px;
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.faq_ac > dt::before {
  content: "";
  display: block;
  width: 13px;
  height: 0;
  border-bottom: solid 1px;
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transition: all 0.3s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.faq_ac > dt.on::before {
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
  opacity: 0;
}
.faq_ac > dd {
    display: none;
    font-size: 13px;
    position: relative;
    padding: 15px 20px;
    background: #ffffff14;
}


.floatbnr {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 100;
}

.floatbnr a {
    background: linear-gradient(90deg, #e1222a, #c10911);
    color: #fff;
    display: block;
    text-align: center;
    font-weight: bold;
    padding: 0.5em 1em;
    line-height: 1.5;
    border-radius: 5px;
    box-shadow: 0 5px 10px #0000005e;
    border-bottom: 1px solid #8c0101;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
    line-height: 1.2;
}
.floatbnr a .sml {
    font-weight: bold;
    font-size: 0.6em;
    display: inline-block;
    padding: 0.3em 0.8em;
    border-radius: 2rem;
    letter-spacing: 0;
    border: 1px solid;
}



@media screen and (max-width: 768px) {


#gNav {
    position: fixed;
    right: 0;
    color: #ffffff;
    box-sizing: border-box;
    top: 0;
    padding: 0;
    z-index: 999;
    width: 100%;
    height: 100vh;
    transform: scale(1.2);
    transition: 0.5s;
    background: linear-gradient(180deg, #001a35, #550404);
    pointer-events: none;
    opacity: 0;
}

#gNav.open {
    transform: none;
    opacity: 1;
    pointer-events: all;
}

.gNavInr {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.cs {
    font-size: 19px;
}

.page-tit {
    line-height: 1.2;
    font-size: 3em;
    margin-bottom: 2rem;
}

.sns_wrap {
    top: 17px;
    bottom: auto;
    left: auto;
    right: 46px;
}

.sns_list {
    display: flex;
}

.sns_list li {
    margin-right: 14px;
}

.fanclubBtn li {
    width: 100%;
    margin-bottom: 15px;
}
.fanclubBtn li a div {
    font-size: 19px;
}

.bnr_btn {
    right: 2%;
    bottom: 2vw;
}

.bnr_btn a {
    width: auto;
    max-width: 280px;
    font-size: 11px;
    padding: 13px;
}


.main_visual {
    margin-bottom: 2em;
}

.contents_box {
    position: relative;
    padding: 7.5rem 0 1rem;
}


.page--feature :not(h2).section-tit {
    font-size: 3.5rem;
}

.general_box {
    padding: 1em 1em;
    margin-bottom: 1em;
}


.page--feature table th, .page--feature table td {
    display: table-cell;
}
.page--feature #schedule table tr:first-child th {
    font-size: 0.7em;
    line-height: 1.5;
}

.page--feature #schedule table td.date_sch {
    font-size: 1em;
    width: 21%;
    line-height: 1.5;
}

.page--feature #schedule table .date_sch .week {
    font-size: 0.75em;
    display: block;
    line-height: 1;
    margin: 0;
}

.page--feature #schedule table td.time {
    font-size: 0.8em;
    line-height: 1.5;
    width: 15%;
}

.page--feature #schedule table td {
    padding: 1rem 0;
}

.page--feature #schedule table td.area {
    padding: 0 0.5rem;
    text-align: center;
    font-size: 0.76em;
    width: 15%;
}

.page--feature #schedule table td.venue {
    width: 60%;
        padding: 1rem 0 1rem 0.2rem;
        font-size: 0.9em;
}
.page--feature #schedule table td .venue_place {
    width: 100%;
    padding-right: 0;
    margin-bottom: 0.3em;
    font-size: 0.92em;
}
.page--feature #schedule table .venue_con {
    width: 100%;
    font-size: 0.8em;
    opacity: 0.8;
}
.page--feature #schedule table .venue {
    padding-left: 0;
}
.page--feature #schedule table tr:first-child th.venue {
    padding: 0;
}

.page--feature #schedule table tr th {
    padding-bottom: 0.5rem !important;
}


.ticketInfo > li {
    display: block;
    padding: 10px 0;
}

.ticketInfo_tit {
    width: 100%;
    margin-bottom: 2px;
    padding: 0;
    font-size: 13px;
}

.ticketInfo_desc {
    width: 100%;
    padding-left: 0;
    border: none;
    line-height: 1.7;
    font-size: 13px;
}

.ticketInfo_desc span{
    font-size:11px;
}

.ticketInfo {
    margin-bottom: 15px;
}

.ticketAttention {
    margin-bottom: 15px;
    font-size: 12px;
}

.ticketInfo_tit_add {
    margin-bottom: 3px;
    font-size: 12px;
    color: #ffe0d7;
    width: 100%;
    padding: 0;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.4;
    position: relative;
}

.ticketInfo_desc_add {
   width: 100%;
   padding-left: 0;
   border: none;
   line-height: 1.7;
   font-size: 13px;
}

	.price {
margin-bottom: 30px;
        font-size: 13px;
	}
	
	.price > li {
    	padding: 15px 0;
    	position: relative;
	}
	
.price > li h5 {
    font-size: 12px;
    width: 100%;
    line-height: 1.5;
    border: none;
    color: #ed333b;
}

	.price > li .price_info {
	    width: 100%;
	}

.price > li .price_txt {
    font-size: 14px;
}

    .price > li .price_info.mugen .price_txt {
        margin-bottom: 15px;
    }
	
	

.faq_ac > dt {
    font-size: 13px;
    padding: 11px 30px 11px 15px;
}

.faq_ac > dd {
    padding: 11px 15px;
}

.faq_ac li {
    font-size: 12px;
}

.contact {
    font-size: 13px;
}

.ph_benefit.ph_wp {
    margin-bottom: 15px;
    width: 50%;
}

}



body:not(.page--home) .content--body {
    margin-top: 0;
}

header::before {
    display: none;
}

header h1 {
    display: none;
}
header .header_inner .nav-fc {
    display: none;
}
header .header_inner .nav {
    display: none;
}
header .header_inner .nav-official .sub-nav .langBar {
    right: auto;
    left: 0;
}
header .header_inner {
    left: 30px;
}

.langBar .wovn-languages {
    background: #ffffff61;
}

.wrap {
    padding: 0;
}


.bg {
    background-position: 33% 50%;
}

.bg::before {
    animation: animate 8s linear infinite;
}



.section--detail {
    max-width: 1080px;
    position: relative;
    padding-bottom: 100px;
}


.main_visual {
    line-height: 0;
    margin: 0;
    width: 100%;
    /* height: 100vh; */
    /* height: 100svh; */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 80px 0 120px 0;
}

.ph_kv {
    width: 50%;
}

.main_logo {
    width: 80%;
    max-width: 105vh;
}

.ph_logo {
    margin-bottom: 25px;
    line-height: 0;
}

.kv_copy {
    line-height: 0;
    width: 70%;
    margin: 0 auto;
}


body {
    background: #000;
    color: #fff;
}


.page--feature .heading_2 {
    font-size: 1.2em;
    margin-bottom: 1em;
    border: none;
    border-left: 3px solid #ffffff;
    padding: 0;
    padding-left: 0.8em;
}

.page--feature .schedule_box .heading_2 {
    margin-bottom: 1em;
}

.page--feature .heading_2 .past {
    display: inline-block;
    margin: 0 0 0 10px;
    border-radius: 100px;
    font-size: 0.78em;
    color: #FFF;
    line-height: 1em;
    padding: 5px 15px 3px;
    border: 1px solid;
}

.detailBtn {
    z-index: 1;
    position: relative;
}

.ticketInfo li:first-child {
    border-top: dotted 1px #ccc;
}

.price > li h5 {
    border-color: #ffffff70;
}

.price > li {
    border-color: #ffffff70;
}
.price > li:first-child {
    border-color: #ffffff70;
}

.faq_ac {
    background: none;
    border-bottom: 1px solid #ffffff70;
}

.faq_ac > dt {
    background: none;
    padding-left: 10px;
}

.faq_ac > dd {
    background: no-repeat;
    padding: 0 0 20px 15px;
}

.faqBox {
    margin-bottom: 40px;
}

footer {
    background: none;
    color: #fff;
    z-index: 1;
    pointer-events: none;
}
footer .inner small {
    font-size: 0;
}
footer .inner small::after {
    content: '©2026 LAPONE ENTERTAINMENT All Rights Reserved.';
    font-size: 10px;
}


.page--feature .ac .heading_2 {
    margin-bottom: 0;
    position: relative;
}
.ac dd {
    padding-top: 3rem;
    display: none;
}
.ac>dt {
    position: relative;
    cursor: pointer;
}
.ac>dt::after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-right: #ffffff solid 2px;
    border-bottom: #ffffff solid 2px;
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    transition: all 0.3s ease-out;
    transform: translateY(-50%) rotate(45deg);
}
.ac.on>dt::after {
	top: 50%;
	transform: translateY(-50%) rotate(-135deg);
}




.lead {
    margin-bottom: 3rem;
}

.section--detail .txt {
    padding-bottom: 1.5rem;
}
.section--detail .txt:last-child {
    padding-bottom: 0;
}

.txt .pick {
    background: linear-gradient(transparent 75%, #c800c8 75%);
    font-weight: bold;
}

.prize_list {
    border: 1px solid magenta;
    padding: 0rem 2rem;
    border-radius: 1rem;
}

.prize_list > li {
    padding: 1.5rem 0;
    border-bottom: 1px solid magenta;
}

.prize_list > li .pick {
    border: 1px solid;
    font-size: 0.9em;
    padding: 0.1em 1em;
    border-radius: 2rem;
    margin-right: 0.75rem;
    color: #ffd400;
    font-weight: bold;
}

.prize_list > li:last-child {
    border: none;
}

.prize_tit {
    font-weight: bold;
    font-size: 1.1em;
}

.prize_ph {
    line-height: 0;
    border-radius: 1rem;
    overflow: hidden;
    margin-top: 1.5rem;
    width: 45%;
}

.ticketAttentionlist > li a {
    text-decoration: underline;
    color: #ffa17d;
}

.ticketAttentionlist {
    margin-bottom: 2.5rem;
}
.ticketAttentionlist:last-child {
    margin-bottom: 0;
}

.detail_list_attention {
    font-size: 0.9em;
    background: #f3f3f31c;
    padding: 15px 20px;
    border-radius: 10px;
    margin-top: 1.5rem;
}
.overseas_inner_tit {
    font-weight: bold;
    border-bottom: 1px dotted;
    margin-bottom: 10px;
    font-size: 1.1em;
}
.desc a {
    text-decoration: underline;
}
.red {
    color: #fff200;
}

.fc_area {
    margin-bottom: 5rem;
}
.fc_area:last-child {
    margin-bottom: 0;
}


.section--detail #news .tit {
    margin-bottom: 1em;
}
.section--detail #news .news_detail {
    margin-bottom: 2.5em;
    font-size: 14px;
    line-height: 1.9;
}
.section--detail #news .news_detail:last-child {
    margin: 0;
}

.section--detail #news .news_detail .date {
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
    font-size: 18px;
    letter-spacing: 0;
    color: #e1222a;
    margin-bottom: 4px;
}

.section--detail #news .news_detail .tit {
    margin-bottom: 1em;
    font-size: 18px;
    border-bottom: 1px solid #e1222a;
    padding-bottom: 15px;
    margin-bottom: 25px;
}

.mv_bg.mv_detail {
    opacity: 0.5;
}

.newsList {
    margin-bottom: 2.5em;
}
.newsList:last-child {
    margin-bottom: 0;
}
.newsList > li a {
    border-bottom: 1px solid #ffffff70;
    padding: 1.5em 0;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.newsList > li:first-child {
    border-top: 1px solid #ffffff70;
}

.newsList > li a .date {
    width: 13%;
    font-weight: 400;
    font-family: "Bebas Neue", sans-serif;
    font-size: 17px;
    letter-spacing: 0;
    color: #e1222a;
}
.newsList > li a .title {
    width: 87%;
    border-left: 1px solid #ffffff70;
    padding: 0 1.2em;
    line-height: 1.5;
}

.newsList > li a::after {
    content: "\f054";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 3px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 13px;
}
.newsList > li a:hover {
    border-color: #fff;
}


.intro_box > p {
    text-align: center;
    margin-bottom: 40px;
    line-height: 2.5;
    letter-spacing: 0.1em;
    text-shadow: 0 4px 10px #000000d6;
    font-size: 23px;
    font-weight: 600;
}

.intro_box > p:last-child {
    margin-bottom: 0;
}

.logo_sys {
    line-height: 0;
    width: 50%;
    margin: 0 auto;
}

.intro_box > p .bar {
    width: 2em;
    border-bottom: 1px solid;
    display: inline-block;
    vertical-align: super;
    margin: 0 5px;
}

.ph_footer {
    line-height: 0;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(360deg, #ffffff 75%, transparent);
    mask-image: linear-gradient(360deg, #ffffff 75%, transparent);
}


@media screen and (max-width: 768px) {

.main_visual {
    padding: 60px 0 0;
}

.ph_kv {
    width: 100%;
}

.nav-official.pc {
    display: block !important;
}

header .header_inner .nav-official .sub-nav .langBar {
    position: fixed;
    top: 18px;
    left: 15px;
}

.anker_list {
    width: 85%;
    right: 0;
    top: 0;
    position: relative;
    display: block;
    text-align: right;
    padding: 50px 0;
}

.anker_list li a {
    font-size: 23px;
    margin: 40px auto;
}

.main_logo {
    width: 100%;
    max-width: 52vh;
}


.page--feature :not(h2).section-tit {
    font-size: 4.5rem;
}

.intro_box > p {
    font-size: 14px;
    margin-bottom: 25px;
    line-height: 2.4;
    text-shadow: 0 3px 8px #000000d6;
}

.general_box {
    padding: 18px;
}

.general_tit {
    font-size: 16px;
    padding-left: 8px;
    line-height: 1.5;
    margin-bottom: 15px;
}

.general_txt {
    font-size: 12px;
    margin-bottom: 10px;
}

.page--feature .heading_2 {
    font-size: 1em;
    line-height: 1.7;
}
.page--feature .schedule_box .heading_2 {
    margin-bottom: 0.5em;
}

.page--feature .heading_2 .past {
    margin: 0;
}

#ticket .tit_deco {
    right: -7%;
    width: 29%;
}

.ticketInfo_tit {
    margin-bottom: 3px;
    font-size: 12px;
    color: #ffe0d7;
}

.ac dd {
    padding-top: 2rem;
}

#streaming .tit_deco {
    width: 36%;
    top: 5rem;
    right: -14%;
}
#attention .tit_deco {
    width: 16%;
    right: -5%;
    top: 3rem;
}

#ticket .general_box, #trade .general_box {
}

.ac>dt::after {
    width: 9px;
    height: 9px;
    right: -15px;
}
.ac.on>dt::after {
    top: 58%;
}


.lead {
    margin-bottom: 2.5rem;
    line-height: 1.7;
    font-size: 0.95em;
}

.section--detail .txt {
    font-size: 0.9em;
    line-height: 1.8;
}

.prize_list {
    padding: 0rem 1.5rem;
}

.prize_list > li {
    font-size: 0.9em;
}

.prize_list > li .pick {
    display: block;
    text-align: center;
    margin-bottom: 0.5em;
}

.ticketAttentionlist {
    margin-bottom: 15px;
}

.ticketAttentionlist > li {
    font-size: 12px;
}

.prize_ph {
    width: 100%;
    margin-top: 1rem;
}

.btn_wrap .detailBtn {
    width: 100%;
    margin-bottom: 1rem;
}
.btn_wrap .detailBtn:last-child {
    margin-bottom: 0;
}
.btn_wrap {
}

.btn_wrap .detailBtn a {
    font-size: 14px;
}
.detail_list_attention {
    padding: 12px 15px;
    margin-bottom: 0.5rem;
}

.ac.ac_fc>dt::after {
    right: 0;
}

.section--detail #news .news_detail {
    margin-bottom: 1.5em;
}

.newsList {
    margin-bottom: 1.5em;
}

.newsList > li a .title {
    width: 100%;
    border: none;
    font-size: 12px;
    padding: 0;
    line-height: 1.5;
}

.newsList > li a .date {
    width: 100%;
    font-size: 14px;
    margin-bottom: 2px;
}

.newsList > li a {
    padding: 1em 1em 1em 0;
}

.section--detail #news .news_detail .date {
    font-size: 15px;
}

.section--detail #news .news_detail .tit {
    font-size: 14px;
    line-height: 1.7;
    padding-bottom: 10px;
    margin-bottom: 15px;
}



}



.bg {
    display: block;
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    background: url(https://jo1.jp/static/produce101/feature/jo1der_show_livefilm/bg_main_k8CQtdar.jpg);
    z-index: -1;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: 0.3s;
}

.bg::before {
    content: '';
    display: block;
    width: 110%;
    height: 100vh;
    background: url(https://jo1.jp/static/produce101/feature/jo1der_show_livefilm/bg_smoke_k8CQtdar.jpg);
    background-size: cover;
    mix-blend-mode: hard-light;
    top: 0;
    left: -10%;
    position: fixed;
    left: 0;
    opacity: 0;
    animation: animate 10s linear infinite;
}

@keyframes animate {

    0%{
        left: -10%;
        opacity: 0;
    }
    50%{
        opacity: 0.7;
    }

    100%{
        left: 0%;
        opacity: 0;
    }

}


.fc_box {
    display: block;
    text-decoration: none;
    overflow: hidden;
    margin-bottom: 60px;
    background: #000000b5;
    border: 1px solid;
}

.fc_title {
    color: #fff;
    text-align: center;
    font-size: 18px;
    line-height: 1.6;
    padding: 25px;
    font-weight: 600;
    letter-spacing: 0.09em;
    border-bottom: 1px solid;
}
.fc_box_inner {
    padding: 35px 50px;
}

.fc_txt {
    font-size: 14px;
    line-height: 2;
    margin-bottom: 20px;
    font-weight: 500;
}

.fc_txt:last-child {
    margin-bottom: 0;
}


.fc_txt.fc_txt_tit {
    font-weight: 700;
    font-size: 17px;
    border-left: 6px solid;
    padding-left: 8px;
    line-height: 1.5;
}

.fcInfo {
    margin-bottom: 30px;
}

.fcInfo li {
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    font-weight: 500;
}

.fcInfo li:last-child {
    margin-bottom: 0;
}

.fcInfo li .fcInfo_tit {
    background: #c500333b;
    color: #fff;
    width: 290px;
    text-align: center;
    padding: 10px 0;
    letter-spacing: 0.1em;
    padding-left: 7px;
    font-weight: bold;
}

.fcInfo li .fcInfo_desc {
    background: #ffffff1f;
    width: calc(100% - 290px);
    padding: 10px 15px;
}

.fcInfo li {
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 10px;
    border-radius: 5px;
    overflow: hidden;
}

.attention {
    background: #ffffff1f;
    border-radius: 7px;
    padding: 20px;
    margin-bottom: 30px;
}

.attention:last-child {
    margin-bottom: 0;
}

.attention li {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.6;
    margin-bottom: 5px;
}

.attention li:last-child {
    margin-bottom: 0;
}

.indent_list li {
    text-indent: -1em;
    padding-left: 1em;
}

.prize_box {
    background: #ffffff1f;
    border-radius: 7px;
    padding: 20px;
    margin-bottom: 30px;
}
.prize_box > li:last-child {
    border: none;
    padding: 0;
    margin: 0;
}
.prize_box > li {
    border-bottom: 1px solid #ffffff4a;
    padding-bottom: 20px;
    margin-bottom: 20px;
    font-size: 14px;
}


.fcInfo_img {
    line-height: 0;
    width: 60%;
    margin: 20px auto 20px;
}

.fcInfo_img:last-child {
    margin-bottom: 0;
}

.prize_name {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.08em;
    margin-bottom: 5px;
}

.prize_type {
    background: #fff;
    color: #4a3f4e;
    padding: 3px 10px;
    margin-right: 10px;
    border-radius: 2em;
    font-size: 0.95em;
}



.anker_list.anker_list_tw li {
    width: 12%;
}
.anker_list.anker_list_tw li a {
    font-size: min(17px, 1.2vw);
    padding: 0 5px 15px;
}


.detail_tit {
    font-size: 15px;
    font-weight: bold;
}

@media screen and (max-width: 768px) {

.fc_box {
    margin-bottom: 30px;
}

.fc_title {
    font-size: 15px;
    padding: 15px 10px;
    letter-spacing: 0.05em;
}

.fc_box_inner {
    padding: 20px 18px 20px;
}

.fc_txt {
    font-size: 13px;
    line-height: 1.8;
    margin-bottom: 15px;
}

.fc_txt.fc_txt_tit {
    font-weight: 700;
    font-size: 16px;
    border-left: 5px solid;
    padding-left: 7px;
    line-height: 1.5;
}

.fcInfo li .fcInfo_tit {
    width: 100%;
    font-size: 13px;
}

.fcInfo li .fcInfo_desc {
    width: 100%;
    font-size: 13px;
    padding: 10px 12px;
}

.fcInfo li {
    margin-bottom: 15px;
}

.fcInfo {
    margin-bottom: 20px;
}

.detailBtn a {
    font-size: 15px;
    padding: 18px;
}

.attention {
    padding: 12px;
    margin-bottom: 20px;
}

body.detail {
    padding-bottom: 350px;
}

.fcInfo_img {
    line-height: 0;
    width: 100%;
    margin: 10px auto 20px;
}

.prize_box {
    padding: 15px;
    margin-bottom: 25px;
}

.prize_box > li {
    padding-bottom: 15px;
    margin-bottom: 15px;
    font-size: 13px;
}

.prize_name {
    font-size: 15px;
}

.attention li {
    font-size: 12px;
    line-height: 1.6;
    margin-bottom: 5px;
}

.logo_sys {
    width: 80%;
}


.floatbnr {
    right: 10px;
    bottom: 10px;
}
.floatbnr a {
    font-size: 1.7rem;
}

}



