@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
body {
	background-color: #151515;
	font-size: 16px;
	line-height: 1.5;
}
.sp {
	display: none;
}
.mt0{margin-top: 0 !important;}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt50-25 {
	margin-top: 50px !important;
}
.mt80-25 {
	margin-top: 80px !important;
}
.mb1em {
	margin-bottom: 1em !important;
}
.mt2em {
	margin-top: 2em !important;
}
.mb2em {
	margin-bottom: 2em !important;
}
.mb3em {
	margin-bottom: 2em !important;
}
.mb4em {
	margin-bottom: 4em !important;
}
.pb1em {
	padding-bottom: 1em !important;
}
.mw90 {
	width: 90%;
	margin: 0 auto;
}
.mn300{min-width: 300px;}
.t-right {
	text-align: right;
}
.t-left {
	text-align: left !important;
}
.t-center {
	text-align: center !important;
}
.fs-l {
	font-size: 1.2em !important;
}
.fs-ll {
	font-size: 1.5em !important;
}
.fs-s {
	font-size: 0.8em !important;
	line-height: 1.1em !important;
}
.fs-ss {
	font-size: 0.65em !important;
	line-height: 1.1em !important;
}
.fw-bold {
	font-weight: bold !important;
}.fw-n {
	font-weight: normal!important;
}
.d_block{display: block;}
.d-flex {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.li_w50{width: 50%;}
.b_red {
	background: #E00000 !important;
}
.fc_red {
	color: #ff3030 !important;
}
.fc_black {
	color: #262626 !important;
}
.fc_white {
	color: #fff !important;
}
.td_under{text-decoration: underline;}

.font01{font-family: "biz-udpgothic", sans-serif;
font-weight: 400;
font-style: normal;}


/* ==========================================================================
共通
========================================================================== */

a {
	color: #1e9ac7;
}
a.a_txt{color: #ff2d30!important;text-decoration: underline;}

.opacity:hover, a img:hover {
	opacity: .6;
	transition: .3s;
}
img {
    max-width: 100%;
}
section + section{margin-top: }
.contents {
	width: 100%;
	margin: 0 auto;
	color: #FFF;
	background-image:url(../images/bg_01.png);
	background-position: center top;
	background-size: auto;
	background-repeat: no-repeat;
	    background-attachment: fixed;
}
.contents.hl{padding-top: 200px;
	margin-top: -120px;}


.contents + .contents {    padding: 60px 0 0 ;
    margin-top: 0;}
.contents + .contents.last{padding-bottom: 60px;}


.inner {
	width: 85%;
	margin: 0 auto;
	max-width: 1100px;
	text-align: center;
}
.bgOuter {
	padding-bottom: 0;
	background-image: url(../images/bg_outer.png);
	background-position: center bottom;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

.cpr.en{    background: -webkit-linear-gradient(45deg, hsla(26, 100%, 62%, 1) 0%, hsla(333, 100%, 51%, 1) 100%);
    padding: 20px 0;
    text-align: center;
    color: #fff;font-size: 0.9em;}

#ticket,#campaign,#max,#live,#card{scroll-margin-top: 80px;}

.bn_area{max-width: 1000px;margin: 3em auto;text-align: center;}
.bn_area a{display: block;max-width: 800px;text-align: center;margin: 0 auto;width: 95%;}
.bn_area p{color: #fff;font-weight: bold;font-size: 1em;}

/* ==========================================================================
header
========================================================================== */
header {
	background-color: #151515;
	font-size: 16px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	color: white;
	transition: top 0.3s;
	z-index: 9999;
}
header .inner {
	max-width: 1360px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header .header_inner {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
}
header .logo a {
	display: block;
	background-image: url(../images/logo.svg);
	background-size: 100% 100%;
	width: calc(130px);
	height: calc(130px / 494.58 * 217.28);
	text-indent: -9999px;
	overflow: hidden;
	position: relative;
	margin-right: 15px;
}
header nav {
	display: flex;
	align-items: center;
}
header nav ul {
	display: flex;
}
header nav ul li {
	text-align: center;
}
header nav ul li:last-child {
	margin-right: 0;
}
.menu-toggle {
	display: none;
	flex-direction: column;
	cursor: pointer;
}
.bar {
	width: 25px;
	height: 3px;
	background-color: #ee0000;
	margin: 3px 0;
	transition: 0.4s;
}
.menu {
	list-style-type: none;
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	max-width: 1000px
}
.menu > li {
	margin-right: 40px;
	border-bottom: 3px solid #151515;
	padding-bottom: 5px;
	font-size: 15px;
	line-height: 1.1;
}
.menu-2 li {
	font-size: 14px;
}
.menu > li:hover {
	border-bottom: 3px solid #ee0000;
}
.menu li:last-child {
	border-right: none;
	margin-right: 0;
	padding-right: 0;
}
.menu li:last-child:hover {
	border-bottom: 3px solid #151515;
}
.menu a {
	text-decoration: none;
	color: #fff;
	white-space: nowrap;
}
/* ==========================================================================
modal
========================================================================== */
.modal_pop {
	display: none;
	position: fixed;
	z-index: 999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.4);
}
.modal--content {
	    background-color: #494949;
    margin: 150px auto 0;
    padding: 20px 20px 20px 20px;
    width: 50%;
    position: relative;
    max-width: 600px;
    z-index: 999;
	
	background-image: -moz-linear-gradient(0deg, rgb(84 92 97) 0%, rgb(215 215 215) 100%);
    background-image: -webkit-linear-gradient(0deg, rgb(84 92 97) 0%, rgb(215 215 215) 100%);
    background-image: -ms-linear-gradient(0deg, rgb(84 92 97) 0%, rgb(215 215 215) 100%);
	
/*		
    background-image: -moz-linear-gradient(90deg, #b39855 0%, #fff9e6 50%, #b39855 100%);
    background-image: -webkit-linear-gradient(90deg, #b39855 0%, #fff9e6 50%, #b39855 100%);
    background-image: -ms-linear-gradient(90deg, #b39855 0%, #fff9e6 50%, #b39855 100%);*/
    border-radius: 12px;
}
.modal--title {
	      color: #ffffff;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    line-height: 1.45em;
    margin-bottom: 1em;text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}
.modal--content p {
	font-size: 1.1em;
	color: #fff;
	font-weight: bold;
	margin: 0.5em auto 0;
	text-align: center;
}
.modal--content .btn {
	margin: 10px auto 0;
}
.modal--content .btn:hover{opacity: 0.8;}
.close--button {
	color: #aaaaaa;
	float: right;
	font-size: 22px;
	font-weight: bold;
	position: absolute;
	right: -3px;
	top: -3px;
	background: #fff;
	border-radius: 100px;
	padding: 0 7px;
}
.close--button:hover, .close--button:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}
.attention {
  width: 90%;
  margin: 20px auto;
  padding: 15px;
  font-size: 15px;
}
@media screen and (max-width: 812px) {
	.modal--title {
    font-size: 15px;}
	.modal--content {
		width: 90%;
	}
	.modal--content p {
		font-size: 11px;
	}
	.modal--content .btn {
		margin-top: 15px;
		        width: 100%;
	}
}
/* ==========================================================================
btn
========================================================================== */
.btn_area{margin-top: 2em;}
.btn_b{
    display: flex;
    max-width: 480px;
    width: 90%;
    align-items: center;
    justify-content: center;
    height: 3.5em;
    font-size: 1.2em;
    border-radius: 50em;
	font-weight: bold;
    margin: 0 auto;    flex-flow: column;
position: relative;
line-height: 1.2em;
text-align: center;}
.btn_b:hover{opacity: 0.8;}
.js_arrow{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1em;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(135deg);
  box-sizing: border-box;}
.under_btn .js_arrow{transform: rotate(-45deg);}
.btn-arrow-right::before{content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.2em;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;}
.btn-arrow-right_b::before{content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.2em;
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
  box-sizing: border-box;}
.btn_max .btn-arrow-right::before{transform: rotate(135deg);}
.btn_gr{    background: -webkit-linear-gradient(45deg, hsla(26, 100%, 62%, 1) 0%, hsla(333, 100%, 51%, 1) 100%);
    color: #fff;}
.btn_gold{background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
color: #262626;}
.btn_bl{background:linear-gradient(to right,#2d69d0,#2bcccc);color: #fff;}
.btn_lv{background: linear-gradient(to right, #6d0e08, #bb2420);
    color: #fff;}
.btn_red{background:-webkit-linear-gradient(45deg, hsl(0deg 100% 47.32%) 0%, hsl(337.66deg 100% 54.71%) 100%);color: #fff;}
.btn_black{background:linear-gradient(to right,#000,#2bcccc);color: #fff;}
.btn_max.btn_bl02{background: #0068b7;}
.btn_max.red_bg{background:#cf0808;}
.btn_max{background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);position: relative;height: 4em;}
.btn_gray{pointer-events: none!important;}
.btn_gray::after{content: 'Coming soon';
    background: #00000087;
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10em;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;}
.btn_max p{    background: #fff;
    border-radius: 10em 0 0 10em;
    width: 90%;
    height: 100%;
    align-self: flex-start;
    background-size: 80%;
    background-position: center center;
    background-repeat: no-repeat;
    margin: 4px 0 4px 4px;}
.bg_gr{    background: -webkit-linear-gradient(45deg, hsla(26, 100%, 62%, 1) 0%, hsla(333, 100%, 51%, 1) 100%);}

.btn_area.bn_img{margin-top: 1em;}
.btn_area.bn_img a{        display: block;
    margin: 0 auto;
    max-width: 1000px;}


.max01 p{background-image: url(../images/btn_max.webp);}
.max02 p{background-image: url(../images/btn_max02.webp);}
.max03 p{background-image: url(../images/btn_max03.webp);}
.max04 p{background-image: url(../images/btn_max04.webp);background-size: 85%;}
.max05 p{background-image: url(../images/btn_max05.webp);}
.fix-btn .btn_max{height: 3.5em;}
.btn_w{ background: #fff;
    color: #ff156a;}
.btn_w::before{ content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50px;
    border: 3px solid transparent;
    background: linear-gradient(135deg, rgb(247 220 8) 0%, rgb(255 17 113) 100%) border-box border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
    -webkit-mask-composite: destination-out;
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
    mask-composite: exclude;}
.btn_wb{background: #fff;border: 2px solid #262626;
    color: #262626;}
.btn_b + .btn_b{margin-top: 1em;}
p + .btn_b{margin-top: 0;}
.btn_l{max-width: 550px;}
span.arrow{
  width: 9px;
  height: 9px;
  margin: auto;
  border-top: 2px solid #ff156a;
  border-right: 2px solid #ff156a;
  transform: rotate(45deg);
  box-sizing: border-box;
position: absolute;
right: 1.2em;}
span.arrow_b{border-top: 2px solid #262626;
  border-right: 2px solid #262626;
  }
.btn_yet{background: #333!important;pointer-events: none!important;color: #c5c5c5 !important;}
.btn_yet span.arrow{display: none;}
.btn_yet.btn-arrow-right::before{display: none;}
/* ==========================================================================
mv_area
========================================================================== */
.mv_area {
	position: relative;
	width: 100%;	;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../images/mv_area.png);
	background-position: center top;
	background-color: #151515;
	padding: 40px 0;
}
.mv_area h1 {
	margin: 1em auto;
	color: #fff;
	font-weight: 700;
	text-align: center;
	    font-size: clamp(1.1em, 3vw, 36px);
	max-width: 1100px;
	position: relative;
	padding-right: 5%;
}
.mv_area .kv{max-width: 1000px;margin: 0 auto;}
span.bubble{     position: absolute;
    padding: 0.5em 0;
    top: -1em;
    max-width: 280px;
    right: -2em;
    padding-right: 2em;
    width: 25%;}
span.bubble img {}
p.lead_txt {
  font-size: 1.1em;
  font-weight: bold;
  margin: 1em auto 0;
  text-align: center;
  color: #fff;
}
.lead_txt_s {
  font-size: 11px;
  text-align: center;
  margin: 1em auto 0;
  color: #fff;
}
.highlights {
  max-width: 1100px;
  margin: 0 auto 50px;
  background: #ffffff29;
  width: 96%;
  text-align: center;
  padding: 20px 0 30px;
}
.highlights img {
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
}

.highlights.schedule img {
    max-width: 930px;
}

#schedule ul{    max-width: 930px;
    margin: 0 auto 4em;
    padding: 0 0 3em;}

.notes {
  font-size: 0.8em;
  line-height: 1.4em;
  margin: 10px auto;
  width: 84%;
}/* ==========================================================================
section
========================================================================== */
section {
	width: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	overflow: hidden;
}

section.bg_block {
	background-color: rgba(59, 59, 59, 0.8);
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 50px 50px;
}
section.bg_block02 {
	background-color: rgba(255, 255, 255, 0.8);
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 50px 50px;
	color: #292929;
}

.contents section h2 {
	    font-size: 1.8em;
    font-weight: bold;
    text-align: center;
    --dot-color: #aaa;
    color: #e50000;
    background-image: repeating-linear-gradient(90deg, #fff 0 1px, transparent 1px 2px), repeating-linear-gradient(#fff 0 1px, var(--dot-color) 1px 2px);
    border-top: 2px solid #e50000;
    border-bottom: 2px solid #e50000;
}
.contents section h2.keikoku{background: red;
    color: #fff;}
.contents section h2 + p{text-align: center;margin: 1em auto;font-size: 1.4em;font-weight: bold;}
section .inner {
	margin: 40px auto 0;
	width: auto;
}
section {
	position: relative;
	width: 100%;
	background-size: 100% auto;
	background-repeat: no-repeat;
	padding: 0 0 5%;
}

section .time + .inner{margin-top: 10px;}


.col2_cont{display: flex;margin: 0 auto;flex-wrap: wrap;}
.col2_cont li{padding:0 1em;width: 48%;margin: auto;}
.col2_cont li span.dd{    display: block;
	text-align: center;
    background: red;
    line-height: 1.8em;
    font-size: 0.95em;
    color: #fff;
    font-weight: bold;
    width: 50%;
    background: -webkit-linear-gradient(45deg, hsl(26deg 100% 50%) 0%, hsla(333, 100%, 51%, 1) 100%);
    }
.col2_cont .label{text-align: left;}
.col2_cont .label span{    background: #d52a21;
    padding: 0.2em 0.5em;
    display: inline-block;
    color: #fff;
    font-weight: bold;
    font-size: 0.9em;}

@media screen and (max-width: 812px) {
	.col2_cont li span.dd{ width: 60%;}
	.col2_cont{display: block;margin: 0 auto;}
.col2_cont li{padding:0;width: 100%;margin: auto;}
	.col2_cont li + li{margin-top: 2em;}
}

/* ==========================================================================
コンテンツ
========================================================================== */
.relate h3{font-size: 1.2em;}

/* ==========================================================================
info
========================================================================== */
.info_box{    padding: 2em 0;
    background: #e5e5e5;
    margin: 1em auto;}
.info_box + .info_box{margin-top: 2em;}
.info_box h3{    border: 1px solid #000;
    padding: 0.5em 1em;
    font-weight: bold;
    margin: 0 auto 0.5em;
    max-width: 600px;
    width: 90%;
font-size: 1.4em;    line-height: 1.3em;}
.info_box h5{border-top: 2px dotted #000;
    border-bottom: 2px dotted #000;
    width: 80%;
	max-width: 600px;
    margin: 2em auto 1em;
    font-size: 1.3em;
    font-weight: bold;}
.info_box ul.price{font-size: 1.2em;max-width: 400px;margin: 0 auto;}
.info_box ul.price li{display: flex;margin: 0 auto;flex-flow: column;}
.info_box ul.price li div.price_cate{display: flex; align-items: center;justify-content: center;width: 100%;background: #000;margin: 1em auto 0.5em;}
.info_box ul.price li div.price_inner{display: flex; flex-flow: row;margin: 0 auto;    align-items: center;
    justify-content: center;}
.info_box ul.price li .price_inner div:nth-child(1){width: auto;text-align: left;}
.info_box ul.price li .price_inner div:nth-child(2){width: 12em;text-align: center;width: 12em;
    text-align: center;
    align-items: center;
    justify-content: center;
    display: flex;}
.info_cate{    background: #000;
    color: #fff;
    padding: 0 0.5em;
    margin-right: 0.5em;
font-size: 1em;display: block;width: 3em;}
.info_cate02{    display: flex;
    flex-flow: row;
    height: 2.2em;
	background: #000;color: #fff;
    align-items: center;
    justify-content: center;
    width: 90%;
    margin: 0 auto;
    max-width: 600px;}
.info_day{  
    color: #000;
	text-align: center;
	margin:  0 auto 1em;
    font-size: 1.2em;
    max-width: 600px;
    font-weight: bold;}
.info_day02{    color: #000;
    text-align: center;
    margin: 1em auto 0;
    max-width: 600px;
    font-weight: bold;
    border-top: 2px dotted #000;
    padding-top: 1em;}

.info_box .btn_b{height: 2.8em;}
.info_box .btn_wb{height: 2.5em;}
.info_box img{max-width: 600px;width: 90%;}

.time img{height: 1.5em;}
.contents section h2 + p.time {background: #fff;width: 90%;    font-size: 1.2em;
    padding: 0.2em 0;width: 12em;}
/* ==========================================================================
live
========================================================================== */

#live img{width: 80%;margin: 0 auto;display: block;}
#live .li_about{    text-align: left;
    width: 80%;
    margin: 0 auto 2em;
    font-size: 1.1em;}
#live .li_about li{}
#live .li_about .li_h{font-weight: bold;margin-top: 1em;}

/* ==========================================================================
campaign,
========================================================================== */
#campaign .inner{background: #222;padding: 1.5em;position: relative;}
#campaign h3{ background: -webkit-linear-gradient(45deg, hsl(0deg 100% 50%) 0%, hsl(0deg 0% 13.33% / 31%) 100%);
    font-size: 1.2em;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
    padding-left: 1em;
    font-style: italic;
    margin: 0 0 1em 0;
    width: 20em;
    position: absolute;
    top: -0.5em;
    left: -0.5em;
	
}
#campaign h4{font-weight: bold;margin: 1em auto;;
    font-size: 1.4em;
    line-height: 130%;}
#campaign h4.arrow{position: relative;cursor: pointer;}
#campaign h4.arrow::before,
#campaign h4.arrow::after {
        content: "";
    position: absolute;
    bottom: -1em;
    left: calc(50% - 2px);
    width: 3px;
    height: 20px;
    border-radius: 9999px;
    background-color: #ffffff;
    transform-origin: 50% calc(100% - 1px);
}

#campaign h4.arrow::before {
  transform: rotate(45deg);
}

#campaign h4.arrow::after {
  transform: rotate(-45deg);
}
#campaign p.ad_h{    font-weight: bold;
    font-size: 1.5em;
    margin: 0.5em auto;
    background: #f50303d1;
    padding: 0.5em;}

#campaign ul li{line-height: 1.3em;margin: 0.5em 0;text-indent: -1em;padding-left: 1em;}
#campaign dt{text-align: left;margin: 2em 0 0.5em;position: relative;margin-left: 0.5em;}
#campaign dt::before{    content: '';
    display: block;
    position: absolute;
    background: #cf0808;
    width: 5px;
    height: 1em;
    bottom: 0;
	left: -0.5em;
    top: 0.3em;}
#campaign dd{text-align: left;font-weight: normal;font-size: 0.9em;}

#campaign .kiyaku{font-size: 0.9em;    font-size: 0.9em;
    background: #4d4d4d;
    padding: 5px 10px;
    height: 180px;
    overflow-y: scroll;}
#campaign .kiyaku dt{margin: 1em 0 0;}
#campaign .kiyaku dt::before{display: none;}
#campaign .kiyaku dd{text-indent: -1em;padding-left: 1em;}
#campaign img{max-width: 800px;width: 100%;}

#campaign #max dd.d_max_lead span{display: inline-block;margin-bottom: 0.5em;}
#campaign #max div.plan{        background: #383637;
    padding: 1em 0.5em 2em;}
#campaign #max div.plan + .plan{margin-top: 2em;}
#campaign #max h4{    font-size: 1.2em;
    color: #ffffff;text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
    padding: 0.5em;margin-bottom: 0;
    background: -webkit-linear-gradient(359deg, hsl(330deg 1.82% 21.57%) 0%, hsl(0deg 0% 100% / 34%) 50%, hsl(330deg 1.82% 21.57%) 100%);}


/* ==========================================================================
special,
========================================================================== */
#special .flex_box{display: flex;flex-flow: row;}
.flex_box .box_l,.flex_box .box_r{width: 50%;display: flex;align-items: center;}
.flex_p{align-items: center;justify-content: center;padding: 1em;    flex-flow: column;}
.flex_p p{font-size: 0.9em;}
#special .inner{background: #222;padding: 1.5em;position: relative;}
#special .flex_box h5{border-bottom: 2px solid #e50000;
    margin-bottom: 1em;
    padding-bottom: 0.5em;
    line-height: 1.35em;}
#special h3{ background: -webkit-linear-gradient(45deg, hsl(0deg 100% 50%) 0%, hsl(0deg 0% 13.33% / 31%) 100%);
    font-size: 1.2em;
    color: #ffffff;
    font-weight: bold;
    text-align: left;
    padding-left: 1em;
    font-style: italic;
    margin: 0 0 1em 0;
    width: 20em;
    position: absolute;
    top: -0.5em;
    left: -0.5em;
	
}
#special h4{font-weight: bold;margin: 1em auto;;
    font-size: 1.5em;
    line-height: 130%;}
#special ul{display: flex;flex-wrap: wrap;margin-bottom: 1em;}
#special ul li{width: 20%;margin: 0.5em auto;padding:0 10px;}
#special ul li img{width: 100%;}

/*--------------------------------
テキストclamp
--------------------------------*/

    dd {
      margin: 0 0 1em 0;
      padding: 0;
    }

    .clamp-text {
  display: -webkit-box;
  -webkit-line-clamp: 3; /* 表示する行数 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: all 0.3s ease;
}

.clamp-text.expanded {
  -webkit-line-clamp: unset;
  overflow: visible;
}

.read-more {
  display: inline-block;
  margin-top: 0.5em;
  color: blue;
  cursor: pointer;
}
.read-more{    color: #fff !important;
    display: block;
    width: 100%;
    text-align: center;
    margin: 0.8em auto 0;
    border-radius: 10em;
    align-items: center;
    justify-content: center;
    font-size: 0.9em;
text-align: left;
padding-left: 1em;}


#campaign dd.d_max_lead{font-size: 1em;    margin: 1em auto;}


/* ==========================================================================
card
========================================================================== */
.card h4,.subttl {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
}

.card .card-btn{
	text-align: center;
	margin-top: 40px;
	margin-bottom: 20px;
}
.card .card-btn img{
	width: unset;
	cursor: pointer;
	filter: invert(100%);
}
.card .card-btn img.more{
	display: unset;
}
.card .card-btn img.close{
	display: none;
}
.card.open .card-btn img.more{
	display: none;
}
.card.open .card-btn img.close{
	display: unset;
}
.card > ul > li{
	max-width: 740px;
	margin: 30px auto 0;
	color: #fff;
}

/*.card ul li:nth-child(n+5) {
    display: none; /* 5試合目以降を非表示 
}*/
/*.card ul.open li {
    display: block; /* openクラスが付いたら全部表示 
}*/

.match_list{}
.match_list li{
	background: linear-gradient(140deg, #616161 0%, #272727 45%, #3D3D3D 100%);
    background-repeat: no-repeat;
    background-position: center center;
    z-index: 1;
    box-shadow: 10px 10px 15px -5px #828282;
    position: relative;
    align-items: center;
    justify-content: center;
    display: flex;
	flex-flow: column;}
.match_list li .match_title{display: flex;width: 100%;align-items: center;padding: 1em; background-image: -webkit-linear-gradient(0deg, rgb(54 0 194) 0%, rgb(238 0 117) 100%);position: relative;font-weight: bold;min-height: 5em;}
.match_list li .match_title span{display: block;    min-width: 8em;}
.match_list li .match_title span + span{margin-left: 1em;}
.match_list li .match_title::after{position: absolute;
    content: '';
    right: 0px;
    top: 0px;
    width: 0;
    height: 0;
    border: none;
    border-left: solid 75px transparent;
    border-bottom: solid 80px #363636;
    z-index: 0;}
.match_list li .match_inner{display: flex;align-items: center;justify-content: center;flex-flow: row;width: 100%;}
.match_list li .match_inner div:nth-child(1),.match_list li .match_inner div:nth-child(3){
	    width: 45%;
    flex-flow: column;
    margin: 2em auto;
	min-height: 7.5em;
	display: flex;
    align-items: center;
    justify-content: center;
}
.match_list li .match_inner div:nth-child(2){width: 10%;}
.match_list li div.name_box{}
.match_list li .name{font-size: 2em;
    font-weight: bold;
text-align: center;}
.match_list li .birthplace{font-size: 1.1em;}
.match_list li div.vs{}



.border-txt {
	border: 2px solid #ee0000;
	max-width: 700px;
	margin: 70px auto 0;
	padding: 20px 40px;
	text-align: center;
	background: #232323;
	color: #fff;
box-shadow: 0px 0px 0px 5px rgba(51, 51, 51, 1), 0px 0px 0px 10px rgb(51 51 51);
}
.border-txt dd {
	margin-top: 15px;
}
.border-txt dt {
	font-size: 1.4em;
	font-weight: bold;
}
.cs {
	text-align: center;
}
.cs img {
	width: auto;
}


/* ==========================================================================
sns
========================================================================== */
.sns {
	margin-top: 50px;
}
.sns dt {
	font-size: 20px;
	text-align: center;
	color: #ee0000;
	font-weight: bold;
}
.sns dd {
	margin-top: 20px;
}
.sns dd > ul {
	display: flex;
	justify-content: center;
	    margin: 0 0 2em;
}
.sns ul li {
	margin-left: 20px;
}
.sns ul li:first-child {
	margin-left: 0;
}
header .sns {
	margin-top: 0;
	margin-left: 30px;
}
header .sns ul li {
	margin: 0 0 0 10px;
	max-width: 33px;
}

/* ==========================================================================
goods
========================================================================== */
#goods {text-align: center;}
#goods img{max-width: 800px;width: 80%;margin: auto;}
/* ==========================================================================
fix-content
========================================================================== */
.fix-content {
	bottom: 0;
	left: 0;
	z-index: 998;
	width: 100%;
	text-align: center;
	background-color: rgba(0, 0, 0, 0.7);
	margin: 0 auto;
	padding-top: 10px;
}
.fix-content_bl {
	position: fixed;
	opacity: 1;
	display: block;
}
.fix-content img {
	width: auto;
}
.scrollTop {
	position: fixed;
	right: 0;
	bottom: 130px;
	z-index: 998;
	display: none;
}
.fix-content .fix-btn {
	/* background-color: rgba(0, 0, 0, 0.7);*/

}

.under_btn p{    font-size: 1em;
    color: #fff;
    font-weight: bold;
    padding: 0.5em 0 3px;}
.fix-content .fix_ul {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
	padding-bottom: 10px;
}

.fix-content .fix_ul li {
	width: 50%;
	margin: 0 auto;
	padding: 0 .3em;
}

.blue-btn a {
 line-height: 100%;
 background: linear-gradient(90deg, #3ccdc4 0%, #2871fa 100%)!important;
}
.btn_purple {
	background-image: -moz-linear-gradient(0deg, rgb(40, 0, 200) 0%, rgb(120, 3, 175) 55%, rgb(200, 5, 150) 100%) !important;
	background-image: -webkit-linear-gradient(0deg, rgb(40, 0, 200) 0%, rgb(120, 3, 175) 55%, rgb(200, 5, 150) 100%) !important;
	background-image: -ms-linear-gradient(0deg, rgb(40, 0, 200) 0%, rgb(120, 3, 175) 55%, rgb(200, 5, 150) 100%) !important;
}
.btn_orange {
	background-image: -moz-linear-gradient(0deg, rgb(246 117 7) 0%, rgb(236 0 64) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(246 117 7) 0%, rgb(236 0 64) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(246 117 7) 0%, rgb(236 0 64) 100%);
}
@media screen and (max-width: 812px) {
	.fix-content{padding: 5px 0 10px;}
	.fix-content .fix-btn a {
		font-size: 0.8em;
		height: 3.5em;
	}
	.fix-content .fix-btn a.btn_max{height: 5em;}
	.fix-content .fix-btn a span.btn-s {
		font-size: 1em;
	}
	.fix-content .fix_ul {
		display: block;
		width: 100%;
		padding: 0;
	}
	.fix-content .fix_ul li {
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.fix-content .fix-btn a.btn_max{height: 4.5em;}
}

@media screen and (max-width: 812px) {
	.sp {
		display: block;
	}
	body {
		-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
		-webkit-text-size-adjust: 100%;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic", Helvetica, sans-serif;
	}
	.pc {
		display: none;
	}
	.sp_center {
		text-align: center;
	}
	.mt80-25 {
		margin-top: 25px !important;
	}
	.mt50-25 {
		margin-top: 25px !important;
	}
	.method_title {
		font-size: 20px;
		margin-bottom: 25px;
	}
	.btn a {
		margin-top: 20px;
		padding-right: 0.5em;
		font-size: 13px;
		font-weight: bold;
	}
	.btn a span {
		margin-left: 5px;
	}
	.btn.small {
		margin-left: auto;
		margin-right: auto;
	}
	section#osusume .inner, section#method .inner {
		padding: 0 5%;
		;
	}
	
	.premium {
		width: 60%;
		margin: 30px auto;
	}
		
	.btn.small {
		margin-top: 20px;
	}
	h2 picture img {
		width: 85%;
	}
	
	.bn_area p{color: #fff;font-weight: bold;font-size: 0.8em;}
	
/* ==========================================================================
sp header
========================================================================== */
	footer {
		height: auto;
		min-height: 55px;
	}
	.bgOuter {
		padding: 0;
		background-image: url(../images/bg_outer_sp.png);
	}
	.border-txt {
		padding: 5%;
		margin-top: 35px;
		margin-bottom: 30px;
	}
	.border-txt dt {
		font-size: 17px;
	}

	.sp-left {
		text-align: left !important;
	}
	
	.cpr.en{font-size:0.8em;}
/* ==========================================================================
sp btn
========================================================================== */
	.btn_b{font-size: 1em;height: 3.2em;}
	.btn_max{height: 4em;}
/* ==========================================================================
sp section
========================================================================== */
	section {
		position: relative;
		background-size: 100% auto;
		background-repeat: no-repeat;
	}
	
	.inner {
		width: 100%;
		padding: 0 5%;
	}
	
	.bg_block .inner,.bg_block02 .inner {
		padding: 0;
		margin-top: 30px;
		font-size: 0.9em;
	}
	section.bg_block {
		        padding: 2% 2% 5%;
        margin-bottom: 0;
        width: 96%;
        border: #d0d0d0 solid 2px;
	}
	section.bg_block02 {
		padding: 2%;
		margin-bottom: 0;
		width: 96%;
	}
	.contents.hl{margin-top: 20px;padding-top: 0;}
	.contents section h2 {
		width: 95%;
		        margin: 1.5em auto 0;
        z-index: 999;
		font-size: 1.3em;
		background-image: none;
		background: #fff;
	}
	.contents section h2 + p{font-size: 0.85em;}
	
	.contents {
		padding-top: 10px;
		padding-bottom: 30px;
		margin-top: 0px;
		background-image: url(../images/bg_sp_01.png);
		background-size: 100% auto;
	}
	.contents + .contents{padding: 20px 0 50px;;}
/* ==========================================================================
sp mv_area
========================================================================== */
	.mv_area {
		background-image: url(../images/mv_area_sp.png);
		background-size: cover;
		background-position: left bottom;
		padding-top: 1px;
		padding-bottom: 30px;
	}
	.mv_area h1 {              
		margin-top: 30px;
		margin-bottom: 2.5em;
		padding-right: 0;
	}
	span.bubble {
    bottom: -3.5em;
    max-width: 300px;
		width: 100%;padding-right: 0;
		right: 0;top: unset;}
	p.lead_txt{font-size: 0.8em;}
	.info_box ul.price{width: 90%;}
	.lead_txt_s{text-align: left;margin: 1em 1em 0;}
	.info_box{font-size: 0.9em;}
	.info_box .btn_b{height: 3.5em;font-size: 1.2em;}
	.info_box .btn_wb{height: 2.5em;}
	.info_cate02{    display: flex;
    flex-flow: column;
    height: 2.8em;
    align-items: center;
    justify-content: center;
    width: 80%;
    margin: 0 auto;}
	.info_day,.info_day02{background: none;color: #000;font-size: 1.1em;}
	.info_day02{width: 80%;margin: 1em auto 0;}
	.highlights{    padding: 10px 5px 20px;}
	.notes{font-size: 11px;text-align: left;padding: 0 5px;width: 90%;}
	
	.contents section h2 + p.time{font-size: 0.9em;}
	
/* ==========================================================================
sp コンテンツ
========================================================================== */
.relate h3{font-size: 1em;}
	
	
/* ==========================================================================
sp live
========================================================================== */

	#live .li_about{width: 90%;}
	#live img{width: 100%;}
	
	#schedule ul{margin: 0 auto 0;padding: 0 ;width: 95%;}

/* ==========================================================================
  sp campaign
  ========================================================================== */
	#campaign .inner{padding: 2%;}
	#campaign .btn_b{width: 100%;}
	#campaign .btn_max{height: 4em;}
	#campaign h4{font-size: 1.1em;margin-top: 2em;}
	#campaign p.ad_h{font-size: 1.2em;}
	#campaign dd.d_max_lead{font-size: 1em;}
	
	#campaign #max p.ad_h{font-size: 0.9em;}
	#campaign #max p.ad_h span{font-size: 0.8em!important;}
	#campaign #max h4{font-size: 1em;margin-top: 0.5em;}
	#campaign #max dd.d_max_lead{font-size: 0.85em;text-align: justify;}
/* ==========================================================================
  sp special
  ========================================================================== */
	#special .flex_box{display: flex;flex-flow: column;}
	.flex_box .box_l,.flex_box .box_r{width: 100%;display: flex;}
	#special .flex_box h5{font-size: 0.9em;}
	#special .inner{padding: 2%;}
	#special h4{font-size: 1.1em;}
	#special ul li{min-width: 100px;padding: 0 5px;}
/* ==========================================================================
goods sp
========================================================================== */
#goods h2{font-size: 1.2em;}
#goods h2 + p{font-size: 1em;}
#goods {font-size: 0.9em;}
/* ==========================================================================
sp card
========================================================================== */
	.card {
		margin-top: 35px;
	}
	/*
	.card .card-btn {margin: 20px auto 20px;display: none;}
	.card .card-btn img{max-width: 150px;}*/
	
	
	
	/*.match_list li{flex-flow: column;}*/
	.match_list li .name{font-size: 1.1em;}
	.match_list li .birthplace{font-size: 0.8em;}
	.match_list li .match_title{font-size: 0.85em;}
	.match_list li .match_title::after{border-left: solid 45px transparent;border-bottom: solid 70px #363636;}
	.match_list li .match_inner div:nth-child(1), .match_list li .match_inner div:nth-child(3){        
		width: 47%;
		min-height: 4.5em;
        margin: 1em auto;
        padding: 0 7px;}
	.match_list li .match_inner div:nth-child(2){width: 6%;}
/* ==========================================================================
  sp fix-content
  ========================================================================== */
	.scrollTop img {
		width: 80px;
		display: none;
	}
	.scrollTop a img:hover {
		opacity: 1;
	}
	.scrollTop {
		text-align: right;
		bottom: 90px;
	}
	.fix-content .fix-btn {
		/*  background-color: rgba(0, 0, 0, 0.9);*/
		padding: 5px 2% 0;
	}
	.under_btn p {
    font-size: 0.7em;
    padding: 0.5em 0 0;
}
}
@media screen and (min-width: 813px) {
	.is-sp {
		display: none;
	}
}
@media screen and (max-width: 1200px) {
	header {
		padding: 10px 6%;
	}
	header .inner {
		padding: 0;
	}
	.navbar {
		background-color: unset;
		height: 40px;
		width: 40px;
		border-radius: 5px;
		align-items: center;
		justify-content: center;
	}
	.menu {
		width: 100%;
		max-width: unset;
		padding: 3% 5%;
		position: absolute;
		top: 77px;
		right: -100%;
		z-index: 999;
	}
	.menu a {
		display: block;
		padding-bottom: 15px;
	}
	.menu.active {
		display: block;
		right: 0;
		height: 100vh;
		text-align: center;
		background-color: rgba(0, 0, 0, 0.9);
		overflow-y: scroll;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.menu.active::-webkit-scrollbar {
		display: none;
	}
	.menu.active > li {
		margin: 20px 0 0;
		border-bottom: 2px solid #ee0000;
		font-size: 20px;
		padding-bottom: 0;
	}
	.menu.active > li:last-child {
		border: none;
	}
	.menu.active li img {
		width: auto;
	}
	.menu-toggle {
		display: flex;
	}
	.menu-toggle.active .bar:nth-child(1) {
		transform: rotate(-45deg) translate(-7px, 7px);
	}
	.menu-toggle.active .bar:nth-child(2) {
		opacity: 0;
	}
	.menu-toggle.active .bar:nth-child(3) {
		transform: rotate(45deg) translate(-5px, -5px);
	}
	.title {
		margin: 15% 0 5%;
		font-size: 20px;
	}
	header nav ul li a:hover img {
		transform: scale(1);
	}
	header nav ul.head_sns {
		width: 150px;
		margin: 0 auto;
		justify-content: space-between;
	}
	header .menu.active .sns {
		max-width: 220px;
		margin: 0 auto;
	}
	header .menu.active .sns ul li:first-child {
		margin-left: 0;
	}
	header .menu.active .sns ul li {
		max-width: unset;
		margin-left: 20px;
	}
}
@media (orientation: landscape) {
	.menu.active {
		height: calc(100vh - 70px);
	}
}

@media screen and (max-width: 812px) {
.js-fixed-area {
  position: relative;
}
.js-fixed-elm {
  position: absolute;
  top: 0;
	right: 0;
  left: 0;
}
	.bg_block02 .is-fixed{background: #d0d0d0;}
	.bg_block .is-fixed{ background: #3f3f3f;}
.js-fixed-elm.is-fixed {
  position: fixed;
        z-index: 998;        padding-bottom: 10px;
       
	}
	.is-fixed h2{padding-top: 80px;}
}
.is-hidden{display: none !important;}
.under_btn .hide {
 display: none;
}