@charset "UTF-8";
/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/
body {
  width: 100% !important;
  color: #424242;
  line-height: 1.6;
  overflow: hidden;
  font-size: 1.8rem;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-family: "noto sans JP", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.15em;
  position: relative;
}
body::before {
  content: "";
  display: block;
  width: 100%;
  height: 100vh;
  position: fixed;
  background: url(../img/ticket/bg.webp) no-repeat center center/cover;
  z-index: -1;
}
body .open {
  height: 100vh;
}

.en {
  font-family: "DM Serif Text", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/* color */
.white {
  color: #fff;
}

.blue {
  color: #36839f;
}

.red {
  color: #b53112;
}

.green {
  color: green;
}

.yellow {
  color: #fff041;
}

.naby {
  color: #0e264d;
}

.naby2 {
  color: #2a3c58;
}

.bgwh {
  background: #fff;
}

.bgblu {
  background: #70cef0;
}

.bgred {
  background: #b33b5d;
}

.bggre {
  background: green;
}

.bgyel {
  background: #fff041;
}

.bgblack {
  background: #2e2e2e;
}

.bgnaby {
  background: #0e264d;
}

.bgnaby2 {
  background: #2a3c58;
}

/*リンク表示方法*/
a {
  text-decoration: underline;
}

a:link {
  color: white;
}

a:visited {
  color: white;
}

a:active {
  color: white;
}

a:hover img {
  opacity: 0.7;
}

a:hover img {
  opacity: 1;
}

.hLogo a:hover {
  opacity: 1;
}

:has(> .lista) {
  position: relative;
}

.lista {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

/*-----------------------------------------------------------
PCサイズ
-----------------------------------------------------------*/
.pc,
.pc2 {
  display: block;
}

.sp,
.sp2,
.spTel {
  display: none;
}

.pcTel {
  display: inline;
}

/*-----------------------------------------------------------
header
-----------------------------------------------------------*/
header {
  position: relative;
}

.headerUl {
  margin: 20px 0 0;
  height: 80px;
}
.headerUl li {
  background: #1a1a1a;
  margin-left: 17px;
  height: 80px;
  width: 80px;
  border-radius: 3px;
}
.headerUl li:first-child {
  width: 164px;
}

.hLogo {
  background: #000;
  width: 160px;
  height: 160px;
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-content: center;
  padding: 1.5%;
}
.hLogo img {
  max-width: 125px;
}

.logo a:hover img {
  opacity: 1;
}

/*-----------------------------------------------------------
テーブル共通
-----------------------------------------------------------*/
table {
  border-collapse: separate;
}
table th {
  background: #333;
  color: #fff;
}
table td {
  background: #f5f5f5;
  color: #1a1a1a;
}

/*-----------------------------------------------------------
 nav
-----------------------------------------------------------*/
nav {
  width: calc(100% - 60px);
  max-width: 1860px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}
nav ul {
  display: flex;
  justify-content: flex-end;
}
nav ul li a:hover {
  color: #888;
}
nav a {
  display: block;
  text-decoration: none;
  color: white;
}

/*-----------------------------------------------------------
#slide
-----------------------------------------------------------*/
#modal {
  display: none;
}

/*-----------------------------------------------------------
#cover
-----------------------------------------------------------*/
#ticket_cover {
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  /* background: url(../img/ticket/FV.webp) no-repeat center bottom/cover; */
  display: grid;
  place-content: center;
  position: relative;
  padding-bottom: 70px;
}
#ticket_cover:after {
  content: "";
  background: url(../img/ticket/fv.webp) no-repeat center bottom/cover;
  width: 100%;
  height: min(78vh, 680px);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
#ticket_cover .sp {
  display: none !important;
}

.cov-div {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: min(80vw, 860px);
}
.cov-div h2 {
  margin: 2em auto 0;
}
.cov-div h2 img {
  width: clamp(300px, 25vw, 450px);
}

ul.cov-date {
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 100%;
  max-width: 860px;
  margin: -30px;
  padding: 0 5%;
}
ul.cov-date li.date-item {
  text-align: center;
  width: calc(50% - 20px);
  max-width: 380px;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
ul.cov-date li.date-item:nth-child(-n+2) {
  margin-bottom: clamp(25px, 5%, 53px);
}
ul.cov-date li.date-item h3 {
  font-family: "noto sans JP", sans-serif;
  font-size: clamp(28px, 4.8vw, 48px);
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.1em;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3);
}
ul.cov-date li.date-item h3 span:not(.en) {
  font-size: clamp(15px, 2vw, 20px);
  padding: 7px 20px;
  border-radius: 3px;
  margin-right: 1em;
}
ul.cov-date li.date-item h3 span.en {
  display: block;
  line-height: 1.45;
}
ul.cov-date li.date-item .dateImg {
  margin: 0 auto;
  width: min(72%, 345px);
}
ul.cov-date li.date-item .datePlace {
  font-size: clamp(18px, 2.6vw, 26px);
  font-weight: 600;
  text-decoration: none;
  color: white;
  margin: 0.5em auto;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 591px) {
  ul.cov-date li.date-item .datePlace {
    color: white;
  }
}
ul.cov-date li.date-item:first-child .datePlace {
  height: 2em;
  display: grid;
  place-content: center;
}

a.btn01 {
  background: white;
  width: min(95%, 280px);
  height: 55px;
  display: grid;
  place-content: center;
  border: 1px solid #242424;
  color: #242424;
  font-weight: 700;
  text-decoration: none;
  position: relative;
  margin: 30px auto 0;
  transition: 0.2s;
  font-size: clamp(15px, 1.8vw, 18px);
}
a.btn01.done {
  background: #aaa;
  color: #333;
}
a.btn01:hover {
  background: #ccc;
}
a.btn01:after {
  content: "";
  background: url(../img/ticket/arrow01.svg) no-repeat center center/cover;
  width: 15px;
  height: 7px;
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

a.blabtn:hover {
  background: #222222;
}
a.blabtn:hover img {
  opacity: 0.8;
}

header a,
footer a {
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  place-content: center;
  transition: 0.2s;
}

footer ul.f-sns a:hover {
  opacity: 0.7;
}

footer .f-policy {
  font-size: 12px;
  margin-top: 12px;
  text-align: center;
  letter-spacing: 0.04em;
}
footer .f-policy a {
  color: #bc7f91;
  text-decoration: none;
}

/*-----------------------------------------------------------
 #main
-----------------------------------------------------------*/
#main {
  width: 100%;
  margin: 0 auto;
}

.inner {
  width: 95%;
  max-width: 980px;
  margin: 0 auto;
}

.inner2 {
  width: 95%;
  max-width: 1200px;
  margin: 0 auto;
}

.mainTit {
  font-size: clamp(15px, 2vw, 20px);
  text-align: center;
  line-height: 1.3;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #70cef0;
}
.mainTit span {
  display: block;
  font-size: clamp(23px, 6vw, 60px);
  font-weight: 400;
  color: white;
}

.come {
  font-size: 15px;
  display: block;
}

.flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.content01 {
  margin: 0 auto;
  padding-top: 1em;
}
.content01 .inner {
  max-width: 960px;
}
.content01 .mainTit {
  margin: 80px auto min(8%, 75px);
}

.i-text {
  display: inline-block;
}

.boxwrap {
  margin-bottom: clamp(30px, 10%, 80px);
}
.boxwrap .attP {
  font-size: clamp(13px, 1.5vw, 15px);
  margin: 0.8em auto 0;
  letter-spacing: 0;
  width: 95%;
}
.boxwrap .attP + .attP {
  margin-top: 0.4em;
}

.c02Box {
  background: #e88a9a;
  border-radius: 30px;
  padding: 34px min(8%, 40px) 0;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1);
  border: 1px solid #151c2b;
  color: #242424;
}
.c02Box a:link {
  color: #242424;
}
.c02Box a:visited {
  color: #242424;
}
.c02Box h2 {
  font-size: clamp(15px, 2.8vw, 28px);
  text-align: center;
  margin-bottom: 25px;
  position: relative;
  display: block;
  z-index: 2;
}
.c02Box h2::before {
  content: "";
  background: #242424;
  height: 1px;
  width: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.c02Box h2:after {
  content: "";
  background: #e88a9a;
  height: 1em;
  width: 9em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.c02Box h3 {
  background: #242424;
  border-radius: 6px;
  padding: 0.2em 1em;
  color: white;
  display: inline-block;
  font-size: clamp(13px, 2.2vw, 22px);
  font-weight: 600;
  margin-bottom: 20px;
}
.c02Box h3 span {
  font-size: 0.5em;
  font-family: "DM Serif Text", serif;
  margin-left: 0.3em;
}
.c02Box .come {
  font-size: clamp(12px, 1.3vw, 13px);
  margin: 0 0 1em 3%;
  letter-spacing: 0.04em;
  display: none;
}
.c02Box .flex {
  align-items: flex-start;
  justify-content: center;
}
.c02Box .tssflex {
  width: 100%;
}
.c02Box .tssflex .tssList {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
  width: auto;
}
.c02Box .tssflex .tssList .tss-item {
  margin-right: 20px;
}
.c02Box .tssflex .tssList .tss-item a {
  text-decoration: none;
}
.c02Box .tssflex .tssList .tss-item dt {
  font-size: clamp(23px, 4.3vw, 43px);
  font-weight: 400;
  margin-bottom: 12px;
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.c02Box .tssflex .tssList .tss-item dt span {
  font-size: 13px;
  margin-top: 0.5em;
}
.c02Box .tssflex .tssList .tss-item dd {
  text-align: center;
  background: white;
  border-radius: 8px;
  width: 86px;
  height: 86px;
  padding: 12px;
  display: grid;
  place-content: center;
}
.c02Box .tssflex .tssList .tss-item dd div {
  height: 29px;
  margin: 0.5em auto;
  display: grid;
  place-content: center;
}
.c02Box .tssflex .tssList .tss-item dd p {
  color: #ea8165;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1;
  font-size: clamp(12px, 1.6vw, 16px);
  margin-right: -0.3em;
}
.c02Box .tssflex .tssList .tss-item dd p.red {
  color: #be5731;
}
.c02Box .tssflex .tssList .tss-item dd p.blue {
  color: #2a82a2;
}
.c02Box .tssWrap {
  text-align: center;
  width: 100%;
  margin: 0 1.5%;
}
.c02Box .m-txt {
  font-size: clamp(38px, 5.8vw, 58px);
  line-height: 1;
  text-align: center;
  font-family: "DM Serif Text", serif;
  padding-top: 8px;
  font-weight: 700;
  margin-right: 24px;
  width: 1em;
}
.c02Box .m-txt span {
  font-size: 20px;
  display: block;
  margin-top: 5px;
}
.c02Box .d-txt {
  font-family: "DM Serif Text", serif;
}

.c01Box {
  background: rgba(14, 38, 77, 0.4);
  border: 1px solid white;
  padding: 39px;
  width: min(95%, 860px);
  text-align: center;
  font-size: clamp(18px, 2.3vw, 23px);
  font-weight: 600;
  margin: 0 auto min(10%, 60px);
}
.c01Box p {
  display: block;
}
.c01Box span.yellow {
  font-size: clamp(18px, 2.8vw, 28px);
  margin: 0 16px;
  position: relative;
  display: inline-block;
  margin-bottom: 32px;
  line-height: 1.25;
}
.c01Box span.yellow::after {
  content: "";
  width: 100%;
  height: 0.6em;
  background: url(../img/ticket/con01_tx.webp) no-repeat center bottom/contain;
  display: block;
  position: absolute;
  bottom: -0.6em;
  left: 0;
}
.c01Box .come {
  margin-top: 0.8em;
  letter-spacing: 0.05em;
}

.texyellow {
  color: #fff041;
  margin-top: 0.3em !important;
}

li.art-pre-wrap {
  margin-bottom: 60px;
}

.option_area {
  width: min(90%, 816px);
  object-fit: contain;
  margin: 1.5em auto clamp(50px, 10%, 100px);
}
.option_area img {
  width: 100%;
  height: auto;
}

dl.pre-head {
  display: flex;
  flex-direction: column;
  margin-bottom: 40px;
}
dl.pre-head dt {
  background: white;
  padding: 12px 0 6px 33px;
  order: 2;
}
dl.pre-head dt img {
  max-height: 62px;
  width: auto;
}
dl.pre-head dd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  order: 1;
  margin-bottom: 30px;
  font-size: clamp(17px, 2vw, 20px);
  flex-wrap: wrap;
}
dl.pre-head dd p {
  display: flex;
  align-items: center;
  font-weight: 700;
}
dl.pre-head dd span {
  color: white;
  font-size: clamp(15px, 2.8vw, 28px);
  padding: 7px 20px;
  margin-right: 25px;
  font-weight: 500;
}
dl.pre-head dd .en {
  font-size: clamp(20px, 2.3vw, 23px);
  margin: 12px 0 12px auto;
}
dl.pre-head dd a {
  color: #242424;
  text-decoration: none;
  position: relative;
  padding-right: 1.2em;
}
dl.pre-head dd a::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url(../img/top/icon_map.svg) no-repeat center center/contain;
  display: block;
  position: absolute;
  right: -0.5em;
  top: 50%;
  transform: translateY(-48%);
}
dl.pre-head.ticket dd {
  color: #242424;
}
dl.pre-head.ticket dt {
  font-size: 46px;
  font-weight: 700;
  letter-spacing: 0.15em;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: white;
  background: none;
  padding: 25px 0;
  border-left: none;
  border-right: none;
  border-top: 1px solid #0e264d;
  border-bottom: 1px solid #0e264d;
}
dl.pre-head.ticket dt span {
  font-size: 18px;
  margin-left: 8px;
}
dl.pre-head.ticket dt .txt {
  font-size: 26px;
  margin-left: 35px;
}

ul.artistList {
  padding: 0 3%;
}
ul.artistList li.artList-item {
  width: calc(33.3333333333% - 30px);
  margin-bottom: 40px;
}

.art-head p {
  margin: 15px auto 0;
  font-size: 20px;
  font-weight: 700;
}

.art-bottom {
  margin-top: 17px;
  display: flex;
  flex-wrap: wrap;
}
.art-bottom .tag {
  padding: 7px 20px 4px;
  border-radius: 25px;
  background: #ebf3ff;
  border: 2px solid #0e264d;
  font-size: 15px;
  color: #0e264d;
  font-weight: 700;
  margin: 0 8px 8px 0;
  line-height: 1.2;
}

.content02 {
  background: #ffe4dc;
  padding: 1px 0 min(10%, 100px);
  position: relative;
  z-index: 0;
}
.content02::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/ticket/con02_bg.webp) repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.ticket-pre-wrap {
  margin-bottom: 60px;
}
.ticket-pre-wrap .come a {
  text-decoration: underline;
  color: #b33b5d;
  font-weight: 700;
  padding: 1em 0 0 0;
  display: block;
  letter-spacing: 0.04em;
  text-align: right;
}

.ruleArea-wrap {
  margin: 20px auto 8%;
  padding: 0 5% 0;
  color: #0e264d;
  width: 100%;
}
.ruleArea-wrap h4 {
  font-size: clamp(20px, 2.3vw, 23px);
  margin-bottom: 20px;
  text-align: center;
  line-height: 1;
  width: 100%;
}
.ruleArea-wrap a {
  color: #b33b5d !important;
}
.ruleArea-wrap a:link, .ruleArea-wrap a:hover, .ruleArea-wrap a:visited {
  color: #b33b5d !important;
}
.ruleArea-wrap .price-attention__term .modal-btn {
  color: #b33b5d !important;
  font-weight: 700;
  border-bottom: 1px solid #b33b5d !important;
}

.car_box {
  color: #e04925;
  border-radius: 8px;
  padding: 0 1em 1em 0;
  font-weight: 700;
  text-align: let;
}

ul.ruleMenu {
  font-size: 14px;
  margin-bottom: min(5%, 40px);
  padding: 0 1em;
  width: 100%;
}
ul.ruleMenu li {
  position: relative;
  text-indent: -1em;
  padding-left: 1em;
  letter-spacing: 0.08em;
}
ul.ruleMenu li .bold {
  font-weight: 700;
}
ul.ruleMenu li .i-text {
  padding-left: 1em;
  display: block;
}
ul.ruleMenu li::before {
  content: "※";
}

.ruleArea {
  padding: 5%;
  background: white;
  border: 1px solid #e2e2e2;
  height: 180px;
  overflow-y: scroll;
  font-size: clamp(12px, 1.3vw, 13px);
  width: 100%;
}

.ruleArea ul {
  width: 100%;
}
.ruleArea ul li {
  margin-bottom: min(3%, 25px);
  letter-spacing: 0.04em;
}
.ruleArea ul li:last-child,
.ruleArea ul ol li {
  margin-bottom: 0;
}
.ruleArea ul dt {
  margin-bottom: 12px;
  font-size: clamp(15px, 1.8vw, 18px);
  font-weight: 700;
}
.ruleArea ul dt span {
  margin-right: 1em;
}
.ruleArea ul dd ol {
  margin-top: 1em;
}
.ruleArea ul dd ol span {
  padding-left: 1em;
  display: block;
}

a.btn02.mar {
  /* background: #a36565; */
  color: #0e264d;
  position: relative;
  padding-right: 30px;
  display: block;
  width: 162px;
  margin: 12px 0 0 auto;
}

a.btn02.mar::before {
  content: "";
  background: url(../img/ticket/arrow01.svg) no-repeat center center/cover;
  width: 12px;
  height: 7px;
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%) rotate(-90deg);
}

.content03 {
  padding: 112px 0 135px;
}

.content03 .titBox {
  position: relative;
  padding-bottom: 80px;
  margin-bottom: 85px;
}
.content03 .titBox span {
  color: #242424;
}
.content03 .titBox::before {
  content: "";
  width: 1px;
  height: 45px;
  background: #b33b5d;
  bottom: -45px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  display: block;
}

.content03 h2 {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative;
  color: #242424;
  font-size: 48px;
  position: relative;
}
.content03 h2 span {
  font-size: 32px;
  margin-left: 8px;
  padding-bottom: 3px;
}
.content03 h2::after {
  content: "";
  background: url(../img/ticket/con03_tit.webp) no-repeat center center/contain;
  width: 67px;
  height: 61px;
  display: block;
  position: relative;
  right: 0;
  bottom: 12px;
}

.ticketAbout {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.ticketAbout li {
  width: min(33.3333333333%, 285px);
  margin: 0 1.2%;
}
.ticketAbout .circle {
  background: rgba(202, 61, 61, 0.3);
  width: 175px;
  height: 175px;
  border-radius: 50%;
  display: grid;
  place-content: center;
  margin: 0 auto 20px;
}
.ticketAbout .circle img {
  max-width: 100px;
}
.ticketAbout dl {
  display: grid;
  grid-template-rows: 138px 1fr;
}
.ticketAbout dt {
  font-size: clamp(16px, 2.3vw, 23px);
  font-weight: 700;
  padding-bottom: 55px;
  position: relative;
  text-align: center;
  display: grid;
  place-content: center;
}
.ticketAbout dd {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.dots::after {
  content: "";
  background: url(../img/ticket/tenten.webp) no-repeat center center/contain;
  display: block;
  bottom: 40px;
  width: 51px;
  height: 7px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
}

.ticket-pre-wrap .pre-head {
  margin-bottom: 0;
}

.ticket-pre-wrap {
  width: 95%;
  max-width: 980px;
  margin: 80px auto 0;
}

.pre-head-big {
  font-size: 1.45em;
}

/*アコーディオン*/
.accordion-area {
  list-style: none;
  width: 100%;
  margin: 0 auto;
  color: #333;
}
.accordion-area li {
  background: #b33b5d;
  border-radius: 12px;
  position: relative;
  margin: 0 auto 1.5em;
}
.accordion-area li .accLink {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  transition: 0.2s;
}
.accordion-area section {
  border: 1px solid #ccc;
}

/*アコーディオンタイトル*/
.acctitle {
  position: relative;
  cursor: pointer;
  font-size: 1rem;
  font-weight: normal;
  padding: 2em 60px 2em 2em;
  transition: all 0.5s ease;
  color: white;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  /*アイコンの＋と×*/
  /*　closeというクラスがついたら形状変化　*/
}
.acctitle p {
  color: white;
}
.acctitle .blue {
  color: #6a95de;
}
.acctitle .red {
  color: rgb(233, 131, 131);
}
.acctitle .en {
  font-size: clamp(32px, 4.6vw, 46px);
  font-weight: 600;
  width: 20%;
}
.acctitle .en span {
  font-size: 18px;
  margin-left: 8px;
}
.acctitle .txt {
  font-size: clamp(20px, 2.8vw, 28px);
  font-weight: 500;
  letter-spacing: 0.12em;
  margin-left: 35px;
  width: 80%;
}
.acctitle .txt.car {
  font-size: clamp(18px, 2.6vw, 26px);
}
.acctitle.done {
  position: relative;
  color: #a6a6a6;
}
.acctitle:after {
  content: "";
  position: absolute;
  display: block;
  background: url(../img/ticket/arrow02_pink.webp) no-repeat center center/contain;
  width: 60px;
  height: 60px;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
  right: 1.5em;
  transition: 0.2s;
}
.acctitle.close::after {
  transform: translateY(-50%) rotate(180deg);
}

.accLink:hover {
  background: rgba(14, 38, 77, 0.3);
}

.accLink:hover + .acctitle::after {
  transform: translateY(-50%) rotate(180deg);
}

/*アコーディオンで現れるエリア*/
.accbox {
  display: none;
  margin-bottom: 3%;
  padding: 2%;
}
.accbox .car-come {
  font-size: clamp(13px, 1.5vw, 15px);
  letter-spacing: 0.04em;
  margin-bottom: 1.5em;
}
.accbox .car-come .bold {
  font-weight: 700;
}
.accbox ul.ticketList {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.accbox ul.ticketList li.list-item {
  width: calc(25% - 20px);
  border-bottom: none;
  margin: 0 20px 40px 0;
  position: relative;
}
.accbox ul.ticketList li.list-item:last-child {
  margin-right: 0;
}
.accbox dl {
  display: flex;
  flex-direction: column;
}
.accbox dt {
  order: 2;
  font-size: 15px;
}
.accbox dt .prace {
  margin-top: 8px;
  font-size: 20px;
}
.accbox dd {
  order: 1;
  margin-bottom: 12px;
  max-width: 230px;
}

a.ticketlink {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.2s;
}
a.ticketlink:hover {
  background: rgba(0, 0, 0, 0.1);
}

.active768,
.active414 {
  display: none;
}

.info_wrap {
  text-align: center;
  font-size: clamp(15px, 2.3vw, 23px);
  color: #ff5d5d;
  background: #151c2b;
  border-radius: 12px;
  padding: 0.5em 1em;
  margin-bottom: 1em;
}

/*-----------------------------------------------------------
 footer
-----------------------------------------------------------*/
footer {
  padding: 30px 0;
}
footer .inner {
  width: min(95%, 1680px);
  margin: auto;
}
footer ul.f-info {
  display: flex;
  justify-content: flex-start;
}
footer ul.f-info li {
  width: 80px;
  height: 80px;
  background: #1a1a1a;
  border-radius: 3px;
  margin-right: 17px;
}
footer ul.f-info li a {
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
}
footer ul.f-sns {
  display: flex;
  justify-content: center;
  margin-top: -44px;
  padding: 0 1em;
}
footer ul.f-sns li:first-child {
  margin-right: 40px;
}

.tablewrap {
  width: 100%;
  overflow-x: scroll;
}
.tablewrap .come {
  margin: 0.8em 0 1em 0;
  font-size: clamp(13px, 1.5vw, 15px);
}

.ticketTable {
  border-collapse: separate;
  border: 2px solid #6b5a4e;
  display: block;
  background: #242424;
  color: white;
  text-align: center;
  width: 100%;
  min-width: 535px;
  overflow-x: auto;
}
.ticketTable td .acc {
  color: #b33b5d;
  font-weight: 700;
}
.ticketTable tbody {
  width: 100%;
  display: block;
}
.ticketTable .first_th {
  width: 244px;
}
.ticketTable .baby-tr .first_th {
  width: 244px;
}
.ticketTable .kindth {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.ticketTable th {
  font-size: clamp(15px, 2vw, 20px);
  width: calc(50% - 90px);
  padding: 0.5em;
  border-right: 1px solid #6b5a4e;
  border-bottom: 1px solid #6b5a4e;
  line-height: 1.25;
  display: grid;
  place-content: center;
}
.ticketTable th span {
  font-size: clamp(11px, 1.2vw, 12px);
  display: block;
  margin-top: 5px;
  font-weight: 400;
  letter-spacing: 0.02em;
}
.ticketTable th .withlantern {
  font-size: clamp(10px, 1.1vw, 11px);
  border-radius: 6px;
  padding: 0.3em 0.5em;
  display: grid;
  place-content: center;
  margin-left: 1.5em;
}
.ticketTable th.midashi {
  padding-top: 1.5em;
}
.ticketTable th.midashi span:nth-of-type(1) {
  margin-top: 1.5em;
}
.ticketTable td {
  font-size: clamp(15px, 2vw, 20px);
  font-weight: 700;
  display: grid;
  place-content: center;
  width: calc(50% - 90px);
  padding: 0.5em 1em;
  border-right: 1px solid #6b5a4e;
  border-bottom: 1px solid #6b5a4e;
}
.ticketTable td.mar {
  width: calc(100% - 180px);
}
.ticketTable td span {
  letter-spacing: 0.02em;
}
.ticketTable tr {
  display: flex;
}
.ticketTable tr.opt-tr td {
  font-size: 0.8em;
  font-weight: 400;
  justify-content: flex-start;
}
.ticketTable tr.opt-tr td span {
  text-align: left;
}

/* 全ページ共通クラス
----------------------------------------------------------- */
/*--- パンくず ---*/
.pankuzu {
  width: 1000px;
  margin: 0 auto;
  font-size: 12px;
  padding: 16px 0 0;
}
.pankuzu li {
  margin: 0 0 0 10px;
  display: inline;
}
.pankuzu li:first-child {
  margin: 0;
}
.pankuzu li a {
  margin: 0 10px 0 0;
  color: #f44336;
}
.pankuzu li a:hover {
  color: #0071bc;
}

/*--- ページトップ ---*/
#pageTop {
  position: fixed;
  bottom: 200px;
  right: 25px;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.9);
  width: 80px;
  height: 80px;
  display: block;
  border-radius: 3px;
}
#pageTop a {
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
  transition: 0.2s;
}
#pageTop a:hover {
  background: #333;
}
#pageTop img {
  padding-bottom: 2px;
}

/* TOP
----------------------------------------------------------- */
/*-- スクロールバーデザイン --*/
.scroll-pane {
  width: 100% !important;
  height: 300px; /*箱の高さ*/
  margin: 40px auto 0;
  overflow-y: auto;
}
.scroll-pane:focus {
  outline: none;
}

.jspContainer {
  width: 100% !important;
  overflow: hidden;
  position: relative;
}

.jspPane {
  width: 100% !important;
  position: absolute;
}

.jspVerticalBar {
  width: 20px;
  position: absolute;
  top: 0;
  right: -5px;
}

.jspArrowUp,
.jspArrowDown {
  margin: 0;
  padding: 0;
  display: block;
  cursor: pointer;
  /* background: url(../img/scroll_top.png) no-repeat center; */
}

.jspArrowDown {
  background: url(../img/scroll_bottom.png) no-repeat center;
}

.jspTrack {
  /* background: url(./../img/scroll_bg1.png) repeat-y; */
  position: relative;
  background-position: center;
}

.jspDrag {
  width: 4px;
  margin: 0 auto;
  background: #6b6b6b;
  position: relative;
  cursor: pointer;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
}

.jspArrow.jspDisabled {
  cursor: default;
}

.jspVerticalBar .jspArrow {
  height: 20px;
}

.jspVerticalBar .jspArrow:focus {
  outline: none;
}

/*-- 固定ここまで --*/
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 1200px) {
  .c02Box .m-txt {
    font-size: clamp(30px, 3.8vw, 38px);
    margin-right: 12px;
  }
  .c02Box h3 {
    margin-bottom: 1em;
  }
  .tssList .tss-item {
    margin-right: 13px;
  }
}
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 1000px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /*-----------------------------------------------------------
  全体スタイル
  -----------------------------------------------------------*/
  img {
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  /*-----------------------------------------------------------
  header
  -----------------------------------------------------------*/
  header h1 {
    font-size: 80%;
  }
  .logo {
    width: 28%;
  }
  /*-----------------------------------------------------------
  footer
  -----------------------------------------------------------*/
  .copyright small {
    width: 96%;
  }
  /* トップページ
  ----------------------------------------------------------- */
  .cov-div {
    width: 100vw;
  }
  .cov-div ul.cov-date {
    padding: 0 3%;
  }
  .conte02 .txtBox {
    width: 96%;
    padding: 2%;
  }
  .scroll-pane {
    width: 100% !important;
  }
  .c02Box {
    padding: 4% 4% 0;
  }
  .c02Box .come {
    display: block;
  }
  .tssflex {
    overflow-x: scroll;
  }
  .tssList .tss-item dd {
    width: 72px;
    height: 72px;
    padding: 8px;
  }
  .tssList .tss-item dd img {
    width: auto;
  }
  .c02Box .m-txt span {
    font-size: 15px;
  }
  .tablewrap tr.opt-tr td span {
    font-size: 0.8em;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 1000px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 768px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  .c01Box span.yellow::after {
    bottom: -12px;
  }
  .c01Box span.yellow {
    margin: 0 0.3em 0.5em;
  }
  .active768 {
    display: block;
  }
  .c01Box {
    padding: 5%;
  }
  #pageTop {
    width: 60px;
    height: 60px;
  }
  .headerUl {
    height: 60px;
  }
  .headerUl li,
  footer ul.f-info li {
    height: 60px;
    width: 60px;
  }
  .headerUl li img,
  footer ul.f-info li img {
    width: 20px;
  }
  .headerUl li:first-child {
    width: 90px;
    font-size: 14px;
  }
  .hLogo {
    width: max(20vw, 80px);
    height: max(20vw, 80px);
  }
  footer {
    padding: 30px 0;
  }
  footer ul.f-sns {
    justify-content: flex-end;
    margin-right: 5%;
    margin-top: 0;
  }
  footer .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  ul.cov-date {
    width: 100%;
    padding: 0;
  }
  .ticketAbout .circle {
    width: 120px;
    height: 120px;
    display: grid;
    place-content: center;
  }
  .ticketAbout .circle img {
    width: 80%;
    margin: auto;
  }
  li.date-item .dateImg img {
    height: auto;
    width: 100%;
  }
  .c02Box h2 {
    margin-bottom: 12px;
  }
  .c02Box .flex {
    justify-content: flex-start;
  }
  .ticketTable .first_th {
    width: 180px;
  }
  .ticketTable .baby-tr .first_th {
    width: 180px;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 768px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 591px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  .cov-div ul.cov-date {
    flex-direction: column;
    margin-top: -20px;
  }
  #main {
    margin-top: 24px;
  }
  ul.artistList {
    flex-wrap: wrap;
  }
  li.artList-item {
    width: 47%;
  }
  .art-head p {
    font-size: 16px;
  }
  .c02Box .tssflex .tssList {
    margin-bottom: 20px;
  }
  .c02Box .tssflex .tssList .tss-item {
    margin-right: 0.5em;
  }
  .c02Box .tssflex .tssList .tss-item dt {
    margin-bottom: 8px;
  }
  .c02Box .tssflex .tssList .tss-item dd {
    height: 64px;
    width: 64px;
  }
  .c02Box .tssflex .tssList .tss-item dd div {
    height: 24px;
  }
  .c02Box .tssflex .tssList .tss-item dd img {
    max-width: 24px;
  }
  .c02Box .tssflex .tssList .tss-item dd p {
    margin-bottom: 6px;
  }
  dl.pre-head dt img {
    height: 42px;
  }
  dl.pre-head dd {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  dl.pre-head dd p span {
    margin-bottom: 8px;
  }
  dl.pre-head dd .en {
    margin: 8px 0 0 auto;
  }
  .art-bottom .tag:last-child {
    margin-right: 0;
  }
  li.artList-item:last-child {
    margin-bottom: 0;
  }
  .ticket-pre-wrap.fukuoka {
    margin-top: 40px;
  }
  #pageTop {
    right: 5%;
    /* bottom: 20px !important; */
  }
  .acctitle {
    align-items: center;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }
  .acctitle .en {
    font-size: 23px;
    width: 100%;
  }
  .acctitle .en span {
    font-size: 20px;
  }
  .acctitle .txt {
    margin: 0;
    font-size: 15px;
    width: 100%;
  }
  .acctitle::after {
    width: 42px;
    height: 42px;
  }
  .headerUl li,
  footer ul.f-info li {
    height: 42px;
    width: 42px;
    margin-left: 8px;
    margin-right: 0;
  }
  .headerUl li:first-child {
    width: 80px;
    margin-left: 0;
    font-size: 13px;
  }
  nav {
    left: initial;
    right: 12px;
    transform: initial;
  }
  footer ul.f-sns {
    margin-bottom: 0;
  }
  .content03 {
    padding: clamp(60px, 10%, 110px) 0;
  }
  li.date-item:first-child .datePlace {
    height: auto;
  }
  .content03 .titBox::before {
    height: 42px;
    bottom: -42px;
  }
  .content03 .titBox {
    padding-bottom: 50px;
    margin-bottom: 60px;
  }
  .content03 h2 {
    font-size: 28px;
  }
  .content03 h2 span {
    font-size: 23px;
  }
  .content03 h2::after {
    width: 55px;
    height: 55px;
  }
  ul.ticketAbout {
    flex-direction: column;
    align-items: center;
  }
  ul.ticketAbout li {
    width: min(100%, 385px);
    margin-bottom: 20px;
  }
  .ticketAbout dl {
    grid-template-rows: 88px 1fr;
  }
  .dots::after {
    bottom: 20px;
  }
  .accbox ul.ticketList li.list-item {
    width: calc(50% - 10px);
    margin: 0 10px 30px 0;
  }
  ul.cov-date {
    flex-direction: column;
    margin: 0 auto;
  }
  ul.cov-date li.date-item {
    width: 95%;
    margin: 0 auto clamp(25px, 5%, 53px);
  }
  li.date-item .dateImg {
    margin: 10px auto;
    width: 75%;
  }
  #ticket_cover {
    padding-bottom: 0px;
  }
  .ruleArea-wrap {
    padding: 3%;
  }
  ul.ruleMenu {
    padding: 0;
    font-size: 13px;
  }
  a.btn02.mar {
    font-size: 13px;
    width: 125px;
  }
  .price-attention .price-attention__term .modal-btn {
    border-bottom: none !important;
  }
  .tablewrap .ticketTable th span {
    letter-spacing: 0;
  }
  .tablewrap .ticketTable th .withlantern {
    width: 100%;
    margin: 0.5em auto 0;
  }
  .tablewrap .ticketTable th .vanish591 {
    display: none;
  }
  .tablewrap .ticketTable .first_th {
    flex-direction: column;
    width: 135px;
  }
  .tablewrap .ticketTable th {
    width: calc(50% - 67px);
  }
  .tablewrap .ticketTable td {
    width: calc(50% - 67px);
    padding: 0.5em 1em;
  }
  .tablewrap .ticketTable .baby-tr td {
    width: calc(100% - 133px);
  }
  .tablewrap .ticketTable .opt-tr td {
    font-size: 13px;
    letter-spacing: 0;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 591px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 414px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  .cov-div h2 img {
    width: 230px;
  }
  a.btn01 {
    margin: 12px auto 40px;
  }
  ul.cov-date li.date-item h3 span:not(.en) {
    font-size: 13px;
  }
  .content01 {
    margin-top: 1px;
  }
  ul.cov-date li.date-item {
    margin-bottom: 0;
  }
  .c02Box .flex {
    justify-content: flex-start;
  }
  .tssWrap {
    text-align: left;
  }
  .c01Box .come {
    text-align: left;
    text-indent: -1em;
    margin-left: 1em;
  }
  .vanish414 {
    display: none;
  }
  ul.cov-date li.date-item:nth-child(-n+2) {
    margin-bottom: 0;
  }
  ul.artistList {
    flex-direction: column;
  }
  li.artList-item {
    width: 100%;
  }
  dl.pre-head dd p {
    font-size: 15px;
  }
  dl.pre-head dd .en {
    font-size: 15px;
  }
  dl.pre-head dt {
    padding: 3% 4% 2%;
  }
  dl.pre-head {
    margin-bottom: 25px;
  }
  .art-bottom .tag {
    font-size: 13px;
  }
  li.artList-item {
    margin-bottom: 20px;
  }
  dl.pre-head dd p {
    flex-direction: column;
    align-items: flex-start;
  }
  .headerUl li img {
    width: 16px;
  }
  .content03 h2 {
    font-size: 25px;
  }
  .content03 h2 span {
    font-size: 20px;
    margin-left: 0;
  }
  .content03 h2::after {
    width: 42px;
    height: 42px;
  }
  .dots::after {
    width: 42px;
  }
  .accbox dt {
    font-size: 13px;
  }
  .accbox dt .prace {
    margin-top: 2px;
    font-size: 16px;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 414px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (max-width: 320px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 320px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/*# sourceMappingURL=maps/ticketpage.css.map */
