@charset "UTF-8";
/* ----------------------------------------------------------------------------------------
固定css
-------------------------------------------------------------------------------------------- */
a {
 display: block;
}
a.opacity:hover {
 opacity: .6;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}
/* ----------------------------------------------------------------------------------------
813px以上の固定css(PC)
-------------------------------------------------------------------------------------------- */
@media screen and (min-width: 813px) {
.sp {
  display: none;
 }
 .pc {
  display: block;
 }
.home {
  position: fixed;
  top: 18px;
  left: 20px;
  width: 20%;
  max-width: 130px;
  z-index: 1000;
}
}
/* ----------------------------------------------------------------------------------------
今回追加した813px以上のcss(PC)
-------------------------------------------------------------------------------------------- */
body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
main {
  position: relative;
  z-index: 0;
  font-size: 16px;
  background: #151515;
  background-attachment: fixed;
}
.bg_inner {
  background-image: url("../images/bg.webp");
  background-position: center;
  background-size: 100%;
  background-attachment: fixed;
  z-index: 1;
}
.cpl {
  font-family: "vdl-logog", "Noto Sans JP",sans-serif;
font-weight: 400;
font-style: normal;
}
span.big {
	font-size: 150%;
}
.mt30 {
	margin-top: 30px!important;
}
.margin0 {
	margin: 0 auto!important;
}
/* ----------------------------------------------
header
------------------------------------------------*/
.menu.pc {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  position: fixed;
  top: 10px;
  right: 10px;
  /*background-color:rgba(1,9,38,0.8);*/
  z-index: 2;
  font-weight: 700;
  /*box-shadow:1px 1px 0px 0px #ff00f6, 2px 2px 0px 0px #00ffff;*/
}
.menu.pc li {
  text-align: center;
  font-size: 18px;
  font-weight: 900;
  text-shadow: 1px 1px 0 #ff00f6;
  width: 180px;
  padding: 5px 0 2px;
  line-height: 120%;
  margin-right: 20px;
}
.menu.pc li span {
  font-size: 12px;
  font-weight: 500;
}
.menu.pc li.top {
  box-shadow:5px 5px 0px 0px rgba(135,0,124,.5);
  border: 3px solid #fff;
  border-image: linear-gradient(to right,  rgba(0,125,119,1) 0%, rgba(135,0,124,1) 100%);
  border-image-slice: 1;
  background:linear-gradient(to right, rgba(0,125,119,.4) 0%,rgba(135,0,124,.4) 100%);
}
 .menu.pc li.pickup {
  box-shadow:5px 5px 0px 0px rgba(255,127,2,0.3);
  border: 3px solid #fff;
  border-image: linear-gradient(to right,rgba(255,169,0.7) 0%, rgba(255,127,2,0.7)100%);
  border-image-slice: 1;
  background:linear-gradient(to right,rgba(255,169,2,.4) 0%, rgba(255,127,2,.4) 100%);
}
 .menu.pc li.artist {
  box-shadow:5px 5px 0px 0px rgba(255,0,204,.4);
  border: 3px solid #fff;
  border-image: linear-gradient(to right,rgba(255,0,204,.7) 0%, rgba(233,0,255,.7)100%);
  border-image-slice: 1;
  background:linear-gradient(to right,rgba(255,0,204,.3) 0%, rgba(233,0,255,.3) 100%);
}
 .menu.pc li.campaign {
  box-shadow:5px 5px 0px 0px rgba(0,195,209,.4);
  border: 3px solid #fff;
  border-image: linear-gradient(to right,rgba(0,214,174,.7) 0%, rgba(0,195,209,.7)100%);
  border-image-slice: 1;
  background:linear-gradient(to right,rgba(0,214,174,.3) 0%, rgba(0,195,209,.3) 100%);
	text-shadow: 1px 1px 0 #00D1D1;
}
 .menu.pc li.goods {
  box-shadow:5px 5px 0px 0px rgba(0, 240, 8,.4);
  border: 3px solid #fff;
  border-image: linear-gradient(134deg,rgba(212, 255, 0, .7) 0%, rgba(0, 255, 8, .7) 100%);
  border-image-slice: 1;
  background: linear-gradient(134deg,rgba(212, 255, 0, .3) 0%, rgba(0, 255, 8,.3) 100%);
	text-shadow: 1px 1px 0 #00B506;
}
.menu.pc li:hover {
  transition: all 0.2s ease-in-out;
  transform: translateX(2px) translateY(2px);
  box-shadow:0px 0px 0px 0px rgba(86,0,91,0);
}
/* ----------------------------------------------
TOP
------------------------------------------------*/
.top_bg {
  width: 100%;
  background: url("../images/bg_all.webp") no-repeat top  center;
	position: relative;
	display: block;
}
.cp_tab {
	width: 180px;
	position: fixed;
	bottom: 330px;
	right: -20px;
	z-index: 5;
}
.cp_tab.another {
	width: 180px;
	position: fixed;
	bottom: 220px;
	right: -20px;
}
.cp_tab.third {
	width: 180px;
	position: fixed;
	bottom: 125px;
	right: -20px;
}
.cp_tab:hover {
	transform: translateX(-15px) scale(1.05) rotate(5deg);
	transition: all 0.3s cubic-bezier(0.52,-0.37,0.45,1.4);
}
.top_flex {
	/*display: flex; 
  height: 100vh; 
  justify-content: center; 
  align-items: center; */
	padding: 130px 0 40px;
}
h1 .logo {
	max-width: 600px;
  margin: 0 auto 0;
	/*vertical-align: middle;*/
	
}
span.bg {
	display: inline;
	background-color: rgba(186, 0, 197, 0.5);
}
.top_title {
  font-size: 32px;
  font-weight: bold;
  position: relative;
  text-shadow: 0px 0px 10px #ff00f6;
  /*text-shadow: 1px 1px 0px #ff00f6, -1px -1px 0px #00ffff;*/
  /*text-shadow: 1px 1px 0px #ff00f6;*/
  line-height: 150%;
  letter-spacing: 3px;
  text-align: center;
  padding-top: 60px;
}
/* ----------------------------------------------
BUTTON
------------------------------------------------*/
.btn a {
  width: 100%;
  margin: auto;
  border-radius: 50px;
  padding: 15px;
  font-size: 20px;
  font-weight: 700;
  position: relative;
  box-shadow: 0px 0px 10px 1px rgba(14,4,57,0.2);
  background: linear-gradient(90deg, rgba(253,211,49,1) 0%, rgba(255,0,132,1) 100%);
}
.btn a::after {
  content: "";
  display: inline-block;
  background: url("../images/btn_onpu.png") no-repeat center / 25px;
  width: 25px;
  height: 25px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.btn a:hover {
  transition: all 0.4s cubic-bezier(0.52,-0.37,0.45,1.4);
  transform: scale(0.95);
}
.btn.purple a {
	background: linear-gradient(135deg, rgba(200,0,187,1) 0%, rgba(147,35,214,1) 100%);
}
.btn.cp.margin0 a{
	margin: 0 auto;
}
.btn span.tx {
	display: inline-block;
}
button {
  width: 50%;
  margin: auto;
  border-radius: 50px;
  padding: 15px;
  font-size: 18px;
  font-weight: 700;
  position: relative;
  box-shadow: 0px 0px 10px 1px rgba(14,4,57,0.2);
  background: linear-gradient(-135deg,rgba(0, 144, 201, 1) 0%, rgba(0, 193, 196, 1)100%);
	color: #fff;
}
button.ticket {
  width: 100%;
  font-size: 14px;
}
button::after {
  content: "";
  display: inline-block;
  background: url("../images/btn_onpu.png") no-repeat center / 25px;
  width: 25px;
  height: 25px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
button.ticket::after {
  content: "";
  display: none;
	opacity: 0;
}
button:hover {
  transition: all 0.4s cubic-bezier(0.52,-0.37,0.45,1.4);
  transform: scale(0.95);
}
/* ----------------------------------------------
SECTION
------------------------------------------------*/
.bg_block {
  width: 100%;
  margin: auto;
  border-top: 1px dashed #ff00f6;
  padding: 100px 20px;
  text-align: center;
}
.bg_block h2{
  text-align: center;
  font-size: 50px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ff00f6;
  line-height: 80%;
  font-family: "vdl-logog", "Noto Sans JP",  serif;
  font-weight: 900;/*700*/
  font-style: normal;
  text-shadow: 1px 1px 0 #ff00f6, -1px -1px 0 #00ffff,0 0 10px rgba(255,0,246,0.3);
}
.bg_block h2 span {
  font-size: 16px;
  font-weight: 500;
	text-shadow: 1px 1px 0 #ff00f6;
}
#lapone_day::before,#day2::before {
  display: block;
  content: '';
  padding-top: 60px;
  margin-top: -60px;
}
/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: 0.5s cubic-bezier(0.75,-0.44,0.16,1.46);
  transform: translateY(30px);
  opacity: 0;
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeUpAnime {
  from {
  opacity: 0;
  transform: translateY(50px);
  }
  to {
  opacity: 1;
  transform: translateY(0);
  }
}
/* ----------------------------------------------
 NEWS
------------------------------------------------*/
.news.bg_block {
  background: linear-gradient(308deg,rgba(41, 41, 41, 0.3) 0%, rgba(176, 176, 176, 0.3) 100%);
  border-top: 1px dashed #B0B0B0;
}
#news h2 {
	border-bottom:1px solid #B0B0B0;
}
.news_list {
	max-width: 800px;
	width: 90%;
	margin: 40px auto 0;
	overflow-y: scroll;
	height: 200px;
	padding-right: 30px;
}
.news_list::-webkit-scrollbar {
  background-color: rgba(21,21,21,0.8);
  width: 5px;
}
.news_list::-webkit-scrollbar-thumb {
  background: #fff;
  border-radius: 20px;
}
.news_box {
	display: flex;
	justify-content: flex-start;
	width: 100%;
	padding: 20px 10px;
	border-bottom: 1px solid #B0B0B0;
	text-align: left;
}
.news_box:last-of-type {
	border-bottom: 0;
}
.news_date {
	width: 25%;
}
/* ----------------------------------------------
 ピックアップテーマ
------------------------------------------------*/
.pickup.bg_block {
  background: linear-gradient(135deg, rgba(255,169,2,.3) 0%, rgba(255,127,2,.3) 100%);
  border-top: 1px dashed #ff7f02;
}

#pickup h2 {
  border-bottom: 1px solid #ff7f02;
}
#campaign h2 {
  border-bottom: 1px solid #ff7f02;
}
#ppv h2 {
  border-bottom: 1px solid #ff7f02;
}
#goods h2 {
  border-bottom: 1px solid #00F008;
}
.h3_flex {
  display: flex;
  width: 70%;
  margin: auto;
  flex-wrap: wrap;
}
.h3box {
  width: 45%;
  padding-top: 50px;
  margin-right: 10%;
}
.h3box:nth-of-type(2n) {
  margin-right: 0;
}
.h3box:nth-of-type(n+3) {
  margin-top: 40px;
}
.btn.pickup a {
  width: 80%;
}
#pickup h3 {
  font-size: 35px;
  font-weight: 700;
}
.caption {
  padding: 30px 0;
}
/* ----------------------------------------------
アーティスト
------------------------------------------------*/
.artist.bg_block {
  background: linear-gradient(135deg, rgba(250,0,187,.4) 0%, rgba(147,35,214,.3) 100%);
}
.artist_list {
  display: flex;
  flex-wrap: wrap;
}
.artist_list .list {
  width: 30%;
  margin-right: 5%;
}
.artist_list .list .artist_img {
  box-shadow: 5px 5px 0 0 rgba(255,55,187,.2);
}
.artist_list .list .artist_name {
  padding-top: 8px;
  font-size: 18px;
}
.artist_list .list:nth-of-type(3n) {
  margin-right:0 ;
}
.artist_list .list:nth-of-type(n+4) {
  margin-top:30px ;
}
.artist_box {
  width: 80%;
  margin: 0 auto 80px;
}
.day_title {
  /*text-align: left;*/
  font-size: 30px;
  padding: 50px 0 30px;
  text-shadow: 1px 1px 0 #ff00f6, 0 0 7px #ff00f6;
	font-weight: bold;
}
.day_concept {
	font-size: 18px;
	padding-bottom: 30px;
}

/* ----------------------------------------------
キャンペーン
------------------------------------------------*/
#day2 h2 {
  border-bottom: 1px solid #00ffff;
  text-shadow:  1px 1px 0 #ff00f6, -1px -1px 0 #00ffff,0 0 10px rgba(0,255,255,0.3);
}
.campaign.bg_block {
  background: linear-gradient(-135deg, rgba(0, 175, 245,.2) 0%, rgba(0, 251, 255,.2) 100%);
  border-top: 1px dashed #00ffff;
}
.cp_inner {
  padding: 50px 0;
  /*width: 70%;
  margin: auto;*/
  position: relative;
}
.kakuyaku {
  position: absolute;
  top: -50px;
  right: 60px;
  max-width: 220px;
  transform: rotate(8deg);
}
.mem_limited {
  background: linear-gradient(90deg, rgba(255,168,49,1) 0%, rgba(255,40,135,1) 100%);
  font-weight: bold;
  font-size: 24px;
	line-height: 100%;
	display: inline-block;
	padding: 10px ;
	margin: 30px 0 ;
	border-radius: 5px;
	/*box-shadow: 3px 3px 0 rgba(0,0,0,.2)*/
}
.cp_title {
  font-size: 32px;
  text-shadow: 1px 1px 0 #00D1D1, 0 0 10px #008F8F;
	padding-bottom:30px;
	line-height: 180%;
}
span.pink_shadow {
	text-shadow: 1px 1px 0 #ff00f6;
}
.fwb {
	font-weight: bold;
}
span.small {
  font-size: 75%;
	font-weight: 400;
	line-height: 100%;
}
span.under_line {
	text-decoration: underline;
	text-decoration-style: wavy;
}
.white_bg {
	max-width: 1000px;
	width: 100%;
	margin:0 auto;
}
.cp_img {
  max-width: 1000px;
  margin: 30px auto;
  box-shadow:5px 5px 0px 0px rgba(0,0,0,.2);
}
.cp_date {
  font-size: 24px;
  display: inline-block;
  padding: 0 10px 0 0;
  margin: 20px 0 0;
	background-color: #fff;
	color: #0FAABD;
	border-radius: 10px;
}
.cp_date.push {
	background: linear-gradient(90deg,rgba(15, 170, 189, 1) 0%, rgba(78, 217, 191, 1) 100%);
	border: 2px solid #008C9E;
	padding: 8px 15px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.5);
	color: #fff;
	position: absolute;
	right: 30px;
	top: 110px;
	border-radius: 20px;
	font-size: 14px;
}
span.span_bg {
	background-color: #0FAABD;
	padding:10px;
	display: inline-block;
	color: #fff;
	margin: 0 10px 0 0;
	border-radius: 10px 0px 0px 10px;
}
.cp_date.target {
	font-size: 20px;
  display: block;
  padding: 0 0 20px;
  margin: 15px 0;
	border-radius: 10px;
	line-height: 110%	;
}
.cp_date.target span.span_bg {
	padding:10px;
	display: block;
	margin: 0 0 0 0;
	border-radius: 10px 10px 0 0;
}
.white_bg.lapone_stage .cp_date {
	color: #BA1EB8;
}
.white_bg.lapone_stage span.span_bg {
	background-color: #BA1EB8;
}
.btn_wrap.cp {
  display: flex;
  justify-content: space-between;
  max-width: 800px;
  margin: 30px auto 60px;
}
.btn.cp a {
  max-width: 500px;
  padding: 20px;
	margin: 60px auto;
}
.btn.endbtn a {
	background: #707070;
	pointer-events: none;
	
}
.btn.endbtn a::after {
	display: none;
}
.blue a {
  background: linear-gradient(-135deg,rgba(0, 144, 201, 1) 0%, rgba(0, 193, 196, 1)100%);
}
.cp_wrap {
  padding: 30px 0;
  text-align: center;
}
.cp_wrap h3 {
  font-size: 32px;
  padding: 10px 0;
  margin: auto;
  text-shadow:  0 0 10px #1A8F91;
	background-color: rgba(0, 48, 48, .8);
	line-height: 100%;
	font-weight: bold;
}
.white_bg.lapone_stage .cp_wrap h3 {
  text-shadow:  0 0 10px #FF00FB;
	background-color: rgba(33, 0, 33, .5);
}
.step_h3 {
	font-size: 32px;
	text-shadow: 1px 1px 0 #FF7B00, 0 0 10px #B35600;
	padding-top: 30px;
}
.wrap_tx{
  font-size: 22px;
  padding: 40px 0 0;
	line-height: 1.5;
}

.lemino_c {
  background: linear-gradient(90deg, rgba(255,180,0,1) 0%, rgba(255,40,150,1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 900;
}
.stage_img_wrap {
  width: 50%;
  margin: 0 auto;
	position: relative;
	padding-top: 40px;
}
.saisoku_tab {
	position: absolute;
	width: 70%;
	top: 0;
	left: -250px;
	transform: rotate(-10deg);
}
.stage_img {
	width: 100%;
}
/* ----------------------------------------------
注意事項
------------------------------------------------*/
.attention_box {
  border: 3px solid #fff;
  border-image:linear-gradient(90deg,rgba(255, 123, 0, 1) 0%, rgba(255, 179, 0, 1) 100%);
  border-image-slice: 1;
  background:linear-gradient(90deg,rgba(255, 123, 0, .2) 0%, rgba(255, 179, 0, .2) 100%);
  width: 70%;
  margin: 50px auto;
  padding: 15px 30px;
}
.attention_box.ticket_attention {
  border: 2px solid #fff;
  border-image:linear-gradient(90deg,rgba(255, 144, 41, 1) 0%, rgba(255, 0, 106, 1) 100%);
	border-image-slice: 1;
  background:linear-gradient(90deg,rgba(255, 144, 41, 0.2) 0%, rgba(255, 0, 106,0.2) 100%);
  width: 100%;
  margin: 0 auto 30px;
	padding: 15px;
}
.attention_title {
  background-color: #FD1D1D;
  display: inline-block;
}
.attention_list {
  text-align: left;
  font-weight: 400;
  font-size: 15px;
}
.attention_list li {
  padding: 12px 0 0;
}
.attention_list li a {
	text-decoration: underline;
	display: inline;
}
.at_title {
  font-weight: 700;
  font-size: 18px;
}
.attention_list li.tx_indent {
  text-indent: 16px;
	font-size: 13px;
	padding-top: 4px;
}
.tac {
	text-align: center;
}
/*----------------------------------------
アコーディオン 
----------------------------------------*/
.accordion {
  margin-inline: auto;
  margin-top: 30px;
  width: 100%;
  position: relative;
}
.white_bg.lapone_stage .cp_wrap h3.accordion-title {
  cursor: pointer;
  font-size: 22px;
  font-weight: 700;
  padding: 20px;
  /*background: linear-gradient(90deg,rgba(135, 135, 135, 1) 0%, rgba(189, 189, 189, 1) 50%, rgba(128, 128, 128, 1) 100%);*/
	background-color: rgba(187, 0, 194,.95);
	text-shadow: none;
}
.white_bg .cp_wrap h3.accordion-title.end {
	background-color:  rgba(105, 105, 105,.95);
}
.white_bg .cp_wrap h3.accordion-title.still {
	background-color: #CC3341;
}
.white_bg .cp_wrap h3.accordion-title {
  cursor: pointer;
  font-size: 22px;
  font-weight: 700;
  padding: 20px;
  /*background: linear-gradient(90deg,rgba(135, 135, 135, 1) 0%, rgba(189, 189, 189, 1) 50%, rgba(128, 128, 128, 1) 100%);*/
	background-color: #0faabd;
	text-shadow: none;
}
.white_bg .cp_wrap h3.accordion-title.orange {
	background-color: #f75506;
}
.white_bg.lapone_stage .cp_wrap h3.accordion-title.end {
	background-color: rgba(105, 105, 105,.95);
}
.white_bg.lapone_stage .cp_wrap h3.accordion-title.still {
	background-color:  #CC3341;
}
.accordion-content {
  display: none;
  padding: 30px;
	background-color: rgba(0,0,0,0.2);
}
.accordion-content.open {
  display: block;
  padding: 30px;
	background-color: rgba(0,0,0,0.2);
}
/* -------矢印-------- */
.accordion-title {
  position: relative;
}
.accordion-title::after {
  border-right: solid 2px #fff;
  border-top: solid 2px #fff;
  content: "";
  display: block;
  height: 8px;
  position: absolute;
  right: 25px;
  top: 38%;
  transform: rotate(135deg);
  width: 8px;
}
.accordion-title.open::after {
  top: 45%;
  transform: rotate(-45deg);
}
/* ------- アコーディオン中身 ------- */
/* ----------------------------------------------
TICKET
------------------------------------------------*/
.white_bg.lapone_stage .cp_wrap h3.ticket_type_ttl {
  font-weight: 700;
	font-size: 22px;
  padding: 20px;
  /*background: linear-gradient(90deg,rgba(135, 135, 135, 1) 0%, rgba(189, 189, 189, 1) 50%, rgba(128, 128, 128, 1) 100%);*/
	background-color: rgba(187, 0, 194,.95);
	text-shadow: none;
	border-radius: 10px 10px 0px 0px;
	margin-top: 30px;
}
.ticket_type_wrap {
	background-color: rgba(0,0,0,0.2);
	padding: 20px 15px 30px;
	margin-bottom: 30px;
	border-radius: 0px 0px 10px 10px;
}
.ticket_box_wrap {
	background-color: rgba(255,255,255,0.1);
	padding: 20px 40px;
	border-radius: 10px;
	margin: 30px 0;
	position: relative;
}
.ticket_box_wrap.seat_style  {
	padding: 10px 20px;
	margin: 10px 0;
}
.ticket_box_wrap.seat_style:first-of-type {
	margin: 30px 0 10px;
}

.tokubetsu_tab {
	position: absolute;
	width: 200px;
	top: -100px;
	left: -140px;
	transform: rotate(-10deg);
}
.push_tab {
	position: absolute;
	width: 220px;
	top: -88px;
	right: 70px;
}
.ticket_box {
  display: flex;
  justify-content: flex-start;
  margin: auto;
  width: 100%;
}
.ticket_box_wrap.seat_style .ticket_box {
	align-items: center;
}
.ticket_box.option {
  margin: 50px auto 0;
  width: 100%;
}
.ticket_num {
  max-width: 100px;
  margin-right: 50px;
  padding-top: 8px;
}
.ticket_box_wrap.seat_style .ticket_num {
	max-width: 80px;
	padding-top: 0;
	margin-right: 20px;
}
.ticket_cost {
  text-align: left;
  font-size: 20px;
  line-height: 160%;
}
.ticket_cost p.kome {
	font-size: 14px;
	line-height: 120%;
	font-weight: 300;
	padding-top: 2px;
}
.ticket_cost .big {
  font-size: 32px;
}
.ticket_cost span.small {
  font-size: 14px;
}
/* ----------------------------------------------
STEP
------------------------------------------------*/
.step_list {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin: 50px auto ;
	position: relative;
}

.step_list.six {
	margin: 50px auto 20px;
}
.step_list.five {
	margin: 50px auto 0;
}
.step_list.six li {
	width: 15%;
	position: relative;
}
.step_list.six li::after {
	content: "";
	width: 10px;
	height: 10px;
	border: 3px solid;
	border-color: #fd1f5e #f76b3a transparent transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: -30px;
}
.step_list.six li:last-of-type::after {
  display: none;
}
.step {
  width: 22%;
  color: #151515;
  border-radius: 20px;
  text-align: center;
  padding: 20px 10px 20px;
  box-shadow:5px 5px 0px 0px rgba(78, 24, 143,.4);
  background:linear-gradient(90deg,rgba(238, 224, 255, 1) 0%, rgba(255, 222, 255, 1) 100%);;
  position: relative;
}
.step::after{
    content: "";
    width: 20px;
    height: 20px;
    border: 4px solid;
    border-color: #C30FFF #FF00FF transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: -25px;
}
.step.blue_ver {
  box-shadow:5px 5px 0px 0px rgba(0, 143, 148,.4);
  background:linear-gradient(90deg,rgba(214, 243, 255, 1) 0%, rgba(227, 255, 240, 1) 100%);
}
.step.blue_ver::after{
    border-color: #00E1FF #00FFA2 transparent transparent;
}
.step:last-of-type::after {
  display: none;
}
.step_list.five li.step {
	width: 18%;
}
.step_list.five li.step::after{
    content: "";
    width: 20px;
    height: 20px;
    border: 4px solid;
    border-color: #C30FFF #FF00FF transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: -15px;
}
.step_list.five li.step.blue_ver::after{
    border-color: #00E1FF #00FFA2 transparent transparent;
}
.step_num {
  font-size: 30px;
  padding: 10px 0 15px;
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 5;
}
.step_contents {
	align-content: center;
	height: 100%;
}
.step_contents.f_start {
	align-content: flex-start
}
.step_contents.pt_need {
	padding-top: 35px;
}
.step_tx {
  padding: 14px 0 10px;
	font-size: 15px;
}
.step_attention {
	font-size: 12px;
	font-weight: 400;
	text-align: left;
	line-height: 100%;
	text-indent: -1em;
  margin-left: 1em;
	padding-top: 5px;
}
.step_attention a {
	display: inline;
	text-decoration: underline;
}
.step_img {
  margin: auto;
  width: 80%;
}
.btn.ticket a {
  width: 100%;
  font-size: 14px;
  color: #fff;
  padding: 10px 0;
  margin: 10px 0;
	/*background: linear-gradient(90deg,rgba(255, 123, 0, 1) 0%, rgba(255, 179, 0, 1) 100%);*/
}
.btn.ticket.blue a {
  padding: 15px 0;
}
.btn.ticket a:after {
  display: none;
}
.btn.ticket.pt45 {
	padding-top: 45px;
}
.d_check {
	margin: 20px auto 50px;
	color: #fff;
	text-align: left;
	font-weight: 400;
	font-size: 14px;
	position: absolute;
	bottom: -100px;
	right: 120px;
}
.d_check a,.more_detail a {
	text-decoration: underline;
	display: inline;
}
.d_check a,.more_detail a:hover {
	color: #ff00f6;
	transition: all 0.2s ease-in;
}
.more_detail {
	text-align: center;
	font-size: 14px;
}
/* ----------------------------------------------------------------------------------
dcard
-----------------------------------------------------------------------------------------*/
.flex_box {
	display: flex;
	justify-content: space-between;
}
.flex_box.three li {
	width: 33%;
}
.flex_box.jc {
	display: flex;
	justify-content: center;
}
.flex_box.dcard {
	margin: 20px auto;
}
.flex_box.dcard li {
	width: 25%;
	margin-right: 2%;
}
.flex_box.jc li:last-of-type {
	margin-right: 0;
}
.tx_list li{
	padding: 5px 0;
}
.dpoint {
	font-size: 22px;
}
/* ------------------------------------------------------------------------------------------
作品情報
--------------------------------------------------------------------------------------------*/
.contents_list {
	display: flex;
	flex-wrap: wrap;
	
}
.contents_list .content {
	width: 32%;
	margin-right: 2%;
	margin-top: 5%;
}
.contents_list .content:nth-of-type(3n) {
	margin-right: 0;
}
.contents_list .content:nth-of-type(n+4) {
	margin-top: 5%;
}
.contents_copy {
	font-weight: 300;
	padding: 20px 0;
}
.btn.contents a {
	padding: 20px 0;
	width: 80%;
}
/* ------------------------------------------------------------------------------------------
GOODS
--------------------------------------------------------------------------------------------*/
.goods.bg_block {
  background: linear-gradient(134deg,rgba(212, 255, 0, .3) 0%, rgba(0, 240, 8, .3) 100%);
  border-top: 1px dashed #00F008;
}
.goods_list_inner {
	padding: 20px 10px;
	background-color: rgba(0,0,0,0.2);
	margin-top: 30px;
}
.goods_list_inner li {
	padding: 5px 0;
}
.goods_list_ttl {
	font-size: 18px;
}
/* ------------------------------------
規約
--------------------------------------*/
.gojitu {
	width: 80%;
	margin: 15px auto;
	text-align: left;
}
.copy {
  padding: 40px 0 10px;
}
.accordion-006 {
    width: 80%;
		margin: 0 auto 7px;
    margin-bottom: 7px;
    background-color: rgba(0,0,0,0.5);
    border-radius: 5px;
}
.accordion-006 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em;
    color: #ffffff;
    font-weight: 600;
		font-size: 16px;
    cursor: pointer;
}
.accordion-006 summary::-webkit-details-marker {
    display: none;
}
.accordion-006 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
    transition: transform .3s;
}
.accordion-006[open] summary::after {
    transform: rotate(225deg);
}
.accordion-006 p {
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: .3em 2em 1.5em;
  transition: transform .5s, opacity .5s;
  font-size: 12px;
  text-align: left;
}
.accordion-006[open] p {
  transform: none;
  opacity: 1;
}
.accordion-006 p a {
	display: inline;
	text-decoration: underline;
}

button.close-btn {
  display: block;
	max-width: 120px;
  margin: 20px auto 0;
  padding: 10px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
	text-align: center;
	background: #fff;
	color: #000;
	font-size: 14px;
}
button.close-btn::after {
	display: none;
}
.accordion_inner {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease;
}

details[open] .accordion_inner {
  max-height: 2000px;
}

.closing {
  max-height: 0 !important;
}



/* ----------------------------------------------
おすすめ
------------------------------------------------*/
.recomend_box {
	border-radius: 20px;
  text-align: center;
  padding: 40px;
  box-shadow:5px 5px 0px 0px rgba(204, 126, 0,.4);
  background:linear-gradient(90deg,rgba(255, 236, 204, 1) 0%, rgba(255, 250, 199, 1) 100%);
  position: relative;
	color: #151515;
	width: 80%;
	margin: 0 auto ;
}
.rec_h3 {
	font-size: 32px;
	font-weight: bold;
}
.rec_ttl {
	font-size: 32px;
	background: linear-gradient(90deg, rgba(255,180,0,1) 0%, rgba(255,40,150,1) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	padding: 0 0 50px;
	font-weight: bold;
	line-height: 140%;
}
.rec_cost {
	font-size: 20px;
	font-weight: bold;
}
.cp_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 80%;
	align-items: stretch; /* 追加 */
	margin: 0 auto 80px;
}
.cp_list .banner {
	width: 48%;
	margin-right: 2%;
	position: relative;
}
.cp_list .banner:nth-of-type(2n) {
	margin-right: 0;
}
.cp_list .banner .com_soon {
	background-color: rgba(0,0,0,0.7);
	width: 100%;
	height: 100%;
	position: absolute;
	text-align: center;
	align-content: center;
}
/* ----------------------------------------------
その他
------------------------------------------------*/
.info_list li {
   padding: 10px 0;
} 
.info_list li.title {
  font-size: 20px;
  padding-top: 20px;
 }
 .info_list .btn a {
   max-width: 200px;
   font-size: 14px;
   padding: 10px;
 }
 .info_list li a {
	display: inline;
	text-decoration: underline;
}
.info_list li.access a {
	text-decoration: none;
}
 .info_list li.access {
   position: relative;
	 background-color: #fff;
	 padding: 15px ;
	 border-radius: 50px;
	 max-width: 380px;	
	 margin:10px auto;
	 color: #151515;
	 font-weight: 600;
 }
 .access::before {
   display: inline-block;
   content: "";
   background: url("../images/spot_icon.png") no-repeat center/20px 20px;
   width: 20px;
   height: 20px;
   position: absolute;
   top: 16px;
   left: 25px;
 }
 .map_img {
 	max-width: 500px;
	margin: auto;
	text-align: left;
 }
/*----------------------------
追従
----------------------------*/
.lp_cta_fixed{
  padding: .5em;
  text-align: center;
  width: 100%;
  background-color:rgba(21,21,21,0.7);
  position: fixed;
  bottom: 0;
  left: 0;
  font-weight: 700;
  z-index: 9999;
  }
.lp_cta_fixed .point_cp {
  text-decoration: underline;
  font-size: 18px;
  padding-bottom: 10px;
}
.btn_wrap {
  display: flex;
  width: 70%;
  margin: auto;
  justify-content: space-between;
}
.btn_wrap.one {
	justify-content: center;
}
.btn.fix {
  width: 48%;
}
.btn.fix a {
   width: 100%;
   padding: 20px 0;
   font-size: 18px;
   margin: 0;
	 max-width: 1000px;
}
.btn.fix a::after {
	display: none;
}
.btn.fix button {
   width: 100%;
   padding: 5px 0;
   font-size: 18px;
   margin: 0;
}
.btn.fix.lemino a {
  background: linear-gradient(90deg, rgba(255,168,49,1) 0%, rgba(255,40,135,1) 100%);
  padding: 10px 0;
	line-height: 120%;
}
.btn.fix a .s_text {
  font-size: 14px;
}
@media screen and (max-width: 1290px) {
 .cp_date {
  font-size: 18px;
  display: block;
  padding: 0 0 20px;
  margin: 15px 0;
	border-radius: 10px;
}
span.span_bg {
	padding:10px;
	display: block;
	margin: 0 0 10px 0;
	border-radius: 10px 10px 0 0;
}
.tokubetsu_tab {
	position: absolute;
	width: 200px;
	top: -130px;
	left: 0px;
	transform: rotate(-10deg);
}
 }
@media screen and (max-width: 1030px) {
 .d_check {
	margin: 20px auto 50px;
	color: #fff;
	text-align: left;
	font-weight: 400;
	font-size: 14px;
	position: absolute;
	bottom: -100px;
	right: 90px;
}
 }

/* ----------------------------------------------------------------------------------------
今回追加した812px以下のcss(SP)
-------------------------------------------------------------------------------------------- */
@media screen and (max-width: 812px) {
.bg_inner {
  background-image: url("../images/bg_sp.webp");
  background-attachment: inherit;
}
/* ----------------------------------------------
TOP
------------------------------------------------*/
.top_bg {
  width: 100%;
  background: url("../images/bg_all_sp.webp") repeat-y top center/120% ;
}
.top_flex {
	padding-top: 30px;
	padding-bottom: 20px;
}
h1 .logo {
  width: 50%;
  margin: 0 auto;
}
.top_title {
  font-size: 19px;
  letter-spacing: 0px;
  padding: 10px 15px 0;
	line-height: 180%;
}
.cp_tab {
	width: 100px;
	position: fixed;
	bottom: 235px;
	right: -10px;
	z-index: 5;
}
.cp_tab.another {
	width: 100px;
	position: fixed;
	bottom: 170px;
	right: -10px;
}
.cp_tab.third {
	width: 100px;
	position: fixed;
	bottom: 115px;
	right: -10px;
}
/* ----------------------------------------------
BUTTON
------------------------------------------------*/
.btn a {
  width: 100%;
  font-size: 18px;
}
.btn a::after {
  background: url("../images/btn_onpu.png") no-repeat center / 15px;
  width: 15px;
  height: 15px;
  right: 15px;
}
.btn button::after {
  display: none;
}
button {
  width: 100%;
  font-size: 16px;
}
button.ticket {
  font-size: 16px;
}
/* ----------------------------------------------
SECTION
------------------------------------------------*/
section.bg_block {
  width: 100%;
  margin:auto;
  padding: 30px 15px;
}
.bg_block h2{
  font-size: 36px;
	line-height: 120%;
}
.bg_block h2 span {
  font-size: 15px;
}
/* ----------------------------------------------
NEWS
------------------------------------------------*/
.news_list {
	margin: 0 auto;
	width: 100%;
	padding-right: 15px;
	padding-top: 10px;
	height: 350px;
}
.news_box {
	flex-direction: column;
	padding: 20px 10px;
}
.news_date {
	width: 100%;
}
.news_tx {
	text-align: left;
	padding-top: 10px;
}
/* ----------------------------------------------
 ピックアップテーマ
------------------------------------------------*/
.h3_flex {
  width: 85%;
  margin: auto;
  flex-direction: column;
}
.h3box {
  width: 100%;
  padding-top: 60px;
  margin-right: 0;
}
.h3box:first-of-type {
  padding-top: 40px;
}
.h3box:nth-of-type(2n) {
  margin-right: 0;
}
.h3box:nth-of-type(n+3) {
  margin-top: 0;
}
.btn.pickup a {
  width: 100%;
}
#pickup h3 {
  font-size: 30px;
}
.caption {
  padding: 25px 0;
}
/* ----------------------------------------------
アーティスト
------------------------------------------------*/
.artist_box {
  width:100%;
  margin: 0 auto 30px;
}
.artist_list .list {
  width: 48%;
  margin-right: 2%;
}
.artist_list .list .artist_img {
  box-shadow: 2px 2px 0 0 rgba(255,55,187,.2);
}
.artist_list .list .artist_name {
  padding-top: 5px;
  font-size: 16px;
}
.artist_list .list:nth-of-type(3n) {
  margin-right:2%;
}
.artist_list .list:nth-of-type(2n) {
  margin-right:0;
}
.artist_list .list:nth-of-type(n+4) {
  margin-top:0 ;
}
.artist_list .list:nth-of-type(n+3) {
  margin-top:40px ;
}
.day_title {
  font-size: 24px;
  padding: 30px 0 20px;
	line-height: 150%;
}
.day_concept {
	font-size: 16px;
	padding-bottom: 30px;
}
/* ----------------------------------------------
キャンペーン
------------------------------------------------*/
.cp_inner {
  padding: 20px 0 30px;
}
.kakuyaku {
  top: -30px;
  right: -12px;
  max-width: 100px;
  transform: rotate(5deg);
}
.mem_limited {
  font-size: 18px;
	padding: 8px ;
	margin: 20px 0 ;
	border-radius: 5px;
}
.cp_title {
  font-size: 24px;
	padding-bottom: 10px;
}
span.small {
  font-size: 75%;
}
.white_bg {
	width: 100%;
}
.cp_img {
  box-shadow:3px 3px 0px 0px rgba(0,0,0,.4);
  width: 100%;
}
.cp_date {
  font-size: 16px;
  display: block;
  padding: 0 0 20px;
  margin: 15px 0;
	border-radius: 10px;
	line-height: 110%	;
}
.cp_date.push {
	padding: 3px 5px 5px;
	font-size: 12px;
	position: absolute;
	box-shadow: 3px 3px 3px rgba(0,0,0,0.5);
	right: 5px;
	top: 155px;
	border-radius: 15px;
	line-height: 140%	;
}
.cp_date.target {
	font-size: 16px;
}
span.span_bg {
	padding:10px;
	display: block;
	margin: 0 0 0 0;
	border-radius: 10px 10px 0 0;
}
.btn_wrap {
  width: 100%;
  margin: 30px auto 80px;
  
}
.btn_wrap.cp {
  flex-direction: column;
}
.btn.cp {
  width: 100%;
}
.btn.cp a {
  width: 100%;
  padding: 15px;
  font-size: 16px;
  font-weight: 500;
  margin-bottom:20px;
	margin-top: 30px;
}

.cp_wrap {
  padding: 20px 0;
}
.cp_wrap h3 {
  font-size: 20px;
  padding: 10px 0;
  margin: auto;
  text-shadow:  0 0 10px #1A8F91;
	background-color: rgba(0, 48, 48, .4);
	line-height: 100%;
}
.wrap_tx{
  font-size: 18px;
  padding: 30px 0 0;
}

.stage_img_wrap {
  width: 90%;
  margin:30px auto 10px;
	position: relative;
	padding-top: 0;
}
.saisoku_tab {
	position: absolute;
	width: 68%;
	top: -42px;
	left: -50px;
	transform: rotate(-5deg);
}
.stage_img {
	width: 100%;
}
/*----------------------------------------
注意事項 
----------------------------------------*/
.top_flex .attention_box {
	width: 90%;
	margin: 30px auto;
}
.attention_box {
  width: 100%;
  margin: 30px auto;
  padding: 15px;
}
.attention_list li {
  padding: 12px 0 0;
	text-indent: -1em;
  margin-left: 1em;
}
.at_title {
  font-weight: 500;
  font-size: 16px;
}
.attention_title {
  font-size: 15px;
}
.attention_list li.tx_indent {
  text-indent: 0;
}
.tac {
	text-align: left;
}
/*----------------------------------------
アコーディオン 
----------------------------------------*/
.accordion {
  margin-inline: auto;
  margin-top: 30px;
  width: 100%;
  position: relative;
}
.white_bg.lapone_stage .cp_wrap h3.accordion-title {
  font-size: 16px;
  padding: 15px;
}
.white_bg .cp_wrap h3.accordion-title {
  font-size: 16px;
  padding: 15px;
}
.accordion-content {
  display: none;
  padding: 15px;
}
/* -------矢印-------- */
.accordion-title::after {
  right: 15px;
  top: 38%;
  transform: rotate(135deg);
  width: 8px;
}
.accordion-title.open::after {
  top: 45%;
  transform: rotate(-45deg);
}
/* ----------------------------------------------
TICKET
------------------------------------------------*/
.white_bg.lapone_stage .cp_wrap h3.ticket_type_ttl {
	font-size: 16px;
  padding: 15px;
}
.white_bg .cp_wrap h3.ticket_type_ttl {
	font-size: 16px;
  padding: 15px;
}
.ticket_type_wrap {
	background-color: rgba(0,0,0,0.2);
	padding: 5px 10px 15px;
	margin-bottom: 30px;
	border-radius: 0px 0px 10px 10px;
}
.ticket_box_wrap {
  padding: 10px ;
  border-radius: 10px  ;  
	margin-top: 20px;
}
.ticket_box_wrap.seat_style  {
	padding: 5px ;
	margin: 10px 0;
}
.tokubetsu_tab {
	position: absolute;
	width: 120px;
	top: -60px;
	left: 0px;
	transform: rotate(-5deg);
}
.push_tab {
	width: 110px;
	top: -165px;
	right: -25px;
}
.ticket_box_wrap.tab_set {
	margin-top: 60px;
}
.ticket_box {
  /*flex-direction: column;*/
  justify-content: space-between;
  margin: 0 auto;
  width: 100%;
  padding: 10px ;
  border-radius: 10px  ;  
}
.ticket_box.option {
	justify-content: space-between;
	display: flex;
	margin-top: 20px;
}
.ticket_num {
  max-width: 400px;
  width: 26%;
  margin-right: 10px;
  padding-top: 0;
  text-align: center;
}
.ticket_cost {
  font-size: 16px;
  line-height: 120%;
  text-align: center;
  width: 72%;
}
.ticket_box_wrap.seat_style .ticket_cost{
	text-align: left;
}
.ticket_cost p.kome {
	font-size: 12px;
	padding-top: 5px;
}

.ticket_cost .big {
  font-size: 28px;
  line-height: 160%;
}
.ticket_cost span.small {
  font-size: 14px;
}
.ticket_cost span.small.ss {
  font-size: 12px;
  line-height: 100%;
}
/* ----------------------------------------------
STEP
------------------------------------------------*/
.step_list {
  width: 100%;
  margin: 30px auto 30px;
  flex-direction: column;
}
.step {
  width: 100%;
  margin: 0 auto 40px;
  border-radius: 15px;
  padding: 15px;
  box-shadow:3px 3px 0px 0px  rgba(204, 126, 0,.4);
}
.step::after{
    content: "";
    width: 20px;
    height: 20px;
    border: 4px solid;
    border-color:transparent  #C30FFF #FF00FF transparent;
    transform: rotate(45deg);
    position: absolute;
    top: inherit;
    bottom: -22px;
    right: 47%;
}
.step_list.five li.step::after{
    content: "";
    width: 20px;
    height: 20px;
    border: 4px solid;
    border-color:transparent  #C30FFF #FF00FF transparent;
    transform: rotate(45deg);
    position: absolute;
    top: inherit;
    bottom: -22px;
    right: 47%;
}
.step_list.five li.step.blue_ver::after{
    border-color:transparent #00E1FF #00FFA2 transparent;
}
.step_list.six {
	margin: 30px auto 20px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.step_list.six li {
	width: 30%;
	position: relative;
}
.step_list.six li:nth-of-type(n+4) {
	margin-top: 20px;
}
.step_list.six li::after {
	right: -10px;
}
.step_list.six li:nth-of-type(3n)::after {
  display: none;
}
.step_list.five li.step {
	width: 100%;
}
.step.blue_ver::after{
    border-color:transparent #00E1FF #00FFA2 transparent;
}
.step:last-of-type::after {
  display: none;
}
.step:last-of-type {
  margin-bottom: 0;
}
.step_num {
  font-size: 24px;
  padding: 0;
	top: 15px;
}
.step_contents {
	align-content: center;
	height: 100%;
	padding-top: 35px;
}
.step_contents.pt_need {
	padding-top: 35px;
}
.step_tx {
  padding: 0 0 10px;
	font-size: 16px;
}
.step_attention {
	text-align: center;
	padding-top: 10px;
}
.step_img {
  margin: 0 auto 0;
  width: 70%;
}
	.d_check {
	margin: 0 auto ;
	text-align: center;
	position: static;
	color: #000;
}
.btn.ticket.pt45 {
	padding-top: 10px;
}
/* ----------------------------------------------------------------------------------
dcard
-----------------------------------------------------------------------------------------*/
.flex_box.dcard {
	margin: 20px auto;
}
.flex_box.dcard li {
	width: 32%;
	margin-right: 2%;
}
.tx_list li{
	padding: 8px 0;
}
.dpoint {
	font-size: 20px;
	line-height: 160%;
}
/* ------------------------------------
作品情報
--------------------------------------*/
.contents_list .content {
	width: 48%;
	margin-right: 2%;
	margin-top: 5%;
	font-size: 14px;
	font-weight: 400;
}
.contents_list .content:nth-of-type(3n) {
	margin-right: 2%;
}
.contents_list .content:nth-of-type(2n) {
	margin-right: 0;
}
.contents_copy {
	padding: 20px 0;
	font-size: 12px;
}
.btn.contents a {
	padding: 15px 0;
	width: 100%;
}
/* ------------------------------------
規約
--------------------------------------*/
.gojitu {
	width: 100%;
	margin: 15px auto;
}
.tokuten_scroll {
  width: 100%;
  font-size: 12px;
}
.tokuten_scroll .inn {
  height: 250px;
  padding: 10px  ;
}
.tokuten_scroll .inn::-webkit-scrollbar {
    width: 6px;
 }
.accordion-006 {
	width: 100%;
}
.accordion-006 summary {
		font-size: 14px;
}
details[open] .accordion_inner {
  max-height: 3000px;
}

 /* ----------------------------------------------
おすすめ
------------------------------------------------*/
.recomend_box {
  padding: 20px;
  box-shadow:3px 3px 0px 0px rgba(0,195,209,.3);
	width: 100%;
	margin: 0 auto;
}
.rec_h3 {
	font-size: 28px;
}
.rec_ttl {
	font-size: 24px;
	padding: 0 0 10px;
	font-weight: bold;
	line-height: 140%;
}
.rec_cost {
	font-size: 20px;
	line-height: 180%;
}
.cp_list {
	flex-direction: column;
	width: 100%;
	margin: 0 auto 40px;
}
.cp_list .banner {
	width: 100%;
	margin-right: 0;
	position: relative;
	margin-bottom: 20px;
}
.cp_list .banner:last-of-type {
	margin-bottom: 0;
}
 /* ----------------------------------------------
その他
------------------------------------------------*/
.info_list li {
   padding: 5px 0;
	 font-size: 15px;
	 font-weight: 400;
} 
.info_list li.title {
  font-size: 16px;
  padding-top: 20px;
 }
 .info_list .btn a {
   max-width: 200px;
   font-size: 14px;
   padding: 10px;
 }
/*----------------------------
追従
----------------------------*/
.lp_cta_fixed .point_cp {
  font-size: 12px;
  padding-bottom: 5px;
}
.btn_wrap {
  display: flex;
  width: 99%;
  margin: auto;
  justify-content: space-between;
}
.btn.fix {
  width: 98%;
}
.btn.fix a {
  margin-top: 0;
  width: 98%;
  margin-bottom: 0;
  font-size: 12px;
  padding: 9px 0;
	border-radius: 15px;
}
.btn.fix button {
  margin-top: 0;
  width: 98%;
  margin-bottom: 0;
  font-size: 12px;
  padding: 8px 0;
}
.btn.fix.lemino a {
  padding:13px 0;
}
.btn_wrap.one .btn.fix.lemino a {
  padding:15px 0;
}
.btn.fix a .s_text {
  font-size: 9px;
}
.btn.fix a::after {
  display: none;
}
.btn.fix button::after {
  display: none;
}
.info_list li.access {
	width: 90%;
 }
/* ----------------------------------------------
ハンバーガーメニュー
------------------------------------------------*/

#nav-drawer {
  position: relative;
}
.nav-unshown {
  display:none;/*チェックボックス等は非表示に*/
}
/*アイコンのスペース*/
#nav-open {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  width: 50px;
  height: 40px;
  right: 10px;
  top: 10px;
  z-index: 99999;
}
/*ハンバーガーの形をCSSで表現*/
#nav-open span,
#nav-open span:before,
#nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 40px;/*長さ*/
  background:  #fff;
  display: block;
  content: '';
  cursor: pointer;
  transition: 0.5s;
  z-index: 9999;
  border-radius: 20px;
}
#nav-open span:before {
  bottom: 12px;
}
#nav-open span:after {
  top: 12px;
}
/* アイコンがクリックされたら真ん中の線を透明にする */
#nav-input:checked ~ #nav-open span {
  background: rgba(255, 255, 255, 0);
  box-shadow: none;
}
/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#nav-input:checked ~ #nav-open span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#nav-input:checked ~ #nav-open span::after {
  top: 0;
  transform: rotate(-45deg);
}  
/*閉じる用の薄黒箇所*/
#nav-close {
  display: none;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000901;
  opacity: 0;
  transition: .3s ease-in-out;
}
/*メニューの中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 999;
  width: 90%;
  max-width: 300px;
  height: 100%;
  background:rgba(0,0,0,.7);
  transition: .3s ease-in-out;
  -webkit-transform: translateX(105%);
  transform: translateX(105%);
  color: #fff;
}
.nav_item {
  text-align: center;
  font-size: 20px;
/*  font-family: "Noto Serif JP", serif;  font-weight: 700;*/
  font-style: normal;
  padding-top: 50px;
}
.nav_item li a {
  display: inline-block;
  margin: 30px 0;
  font-size: 20px;
  font-weight: 700;
  text-shadow: 1px 1px 0 #ff00f6;
}
.nav_item a span {
  font-size: 12px;
  font-weight: 500;
}
.nav_item li.top {
  background:linear-gradient(to right, rgba(0,125,119,.7) 0%,rgba(135,0,124,.7) 100%);
}
 .nav_item li.artist {
  background:linear-gradient(to right,rgba(255,0,204,.6) 0%, rgba(233,0,255,.6) 100%);
}
 .nav_item li.campaign {
  background:linear-gradient(to right,rgba(0,214,174,.6) 0%, rgba(0,195,209,.6) 100%);
	text-shadow: 1px 1px 0 #00D1D1;
}
 .nav_item li.pickup {
  background:linear-gradient(to right,rgba(255,169,2,.6) 0%, rgba(255,127,2,.6) 100%);
}
 .nav_item li.goods {
  background: linear-gradient(134deg,rgba(212, 255, 0, .6) 0%, rgba(0, 255, 8,.6) 100%);
}
/*チェックがついたら表示させる*/
#nav-input:checked ~ #nav-close {
  opacity: .5;
  display: block;
}
#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
.header_menu{
 display: flex;
 display: -moz-flex;
 display: -o-flex;
 display: -webkit-flex;
 display: -ms-flex;
 flex-direction: row;
 -moz-flex-direction: row;
 -o-flex-direction: row;
 -webkit-flex-direction: row;
 -ms-flex-direction: row;
}
}
@media screen and (max-width: 348px) {
 .top_title {
  font-size: 18px;
}
.white_bg.lapone_stage .cp_wrap h3.accordion-title {
  font-size: 14px;
  padding: 15px 15px 15px 5px;
}
.white_bg .cp_wrap h3.accordion-title {
  font-size: 14px;
  padding:15px 15px 15px 5px;
}
 }
/* ----------------------------------------------------------------------------------------
812px以下の固定css(SP)
-------------------------------------------------------------------------------------------- */
@media screen and (max-width: 812px) {
 .common_footer_wrapper .footer_inner {
  width: 93%!important;
 }
 /*ユーザーエージェント出し分け用*/
.iphone .android_show, .iphone .pc_show {display:none;}
.android .iphone_show, .android .pc_show {display:none;}
.pc .iphone_show, .pc .android_show {display:none;}
.pc .visible .iphone_show, .pc .visible .android_show {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;
  }
 .sp {
  display: block;
 }
 .pc {
  display: none;
 }
 .home {
  position: fixed;
  top: 14px;
  left: 10px;
  width: 20%;
  max-width: 130px;
  z-index: 1000;
 }
}
