@charset "utf-8";

:root {
  --full-width: 750;
  --wide-full-width: 1440;

  --font-color: #0f203d;
  --accent-red-color: #e60110;
  --accent-blue-color: #007bb9;
  --white-color: #fff;
}

* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  line-height: 1.6;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: calc(28 / var(--full-width) * 100vw);
  font-weight: 400;
  color: var(--font-color);
}

a {
  -webkit-text-decoration: none;
  text-decoration: none;
  color: inherit;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

p {
  font-size: inherit;
  font-weight: inherit;
  line-height: 1.6;
  color: inherit;
}

@media screen and (min-width: 751px) {
  body {
    font-size: calc(20 / var(--wide-full-width) * 100vw);
  }
}

/* 
.fontKo {
  font-family: 'Noto Sans KR', sans-serif;
} */

/* ========== parts ========== */
/* modal */
.modal {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
  display: none;
  background-color: rgb(0 0 0 / 50%);
  height: 100vh;
  height: 100dvh;
  overflow: auto;
}

.modal-container {
  width: 100%;
  min-height: 100%;
  padding: calc((40 + 100) / var(--full-width) * 100vw) calc(20 / var(--full-width) * 100vw) calc(40 / var(--full-width) * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
}

.modal-content {
  position: relative;
}

.modal-close {
  position: absolute;
  top: calc(-80 / var(--full-width) * 100vw);
  right: 0;
  width: calc(80 / var(--full-width) * 100vw);
  height: calc(80 / var(--full-width) * 100vw);
  padding: calc(5 / var(--full-width) * 100vw);
}

.modal-close span {
  position: absolute;
  top: 50%;
  left: calc(10 / var(--full-width) * 100vw);
  width: calc(60 / var(--full-width) * 100vw);
  height: calc(8 / var(--full-width) * 100vw);
  background-color: var(--white-color);
  transform-origin: 50% 50%;
}

.modal-close span:first-child {
  rotate: 45deg;
}

.modal-close span:last-child {
  rotate: -45deg;
}

/* is-open */
.modal.is-open {
  display: block;
}

@media screen and (min-width: 751px) {
  .modal-container {
    padding: calc((50 + 30) / var(--wide-full-width) * 100vw) calc(20 / var(--wide-full-width) * 100vw) calc(40 / var(--wide-full-width) * 100vw);
  }

  .modal-close {
    top: calc(-50 / var(--wide-full-width) * 100vw);
    width: calc(50 / var(--wide-full-width) * 100vw);
    height: calc(50 / var(--wide-full-width) * 100vw);
    padding: calc(5 / var(--wide-full-width) * 100vw);
  }

  .modal-close span {
    left: calc(5 / var(--wide-full-width) * 100vw);
    width: calc(40 / var(--wide-full-width) * 100vw);
    height: calc(4 / var(--wide-full-width) * 100vw);
  }
}

/* ========== common ========== */
@media screen and (min-width: 751px) {
  .c-displayS {
    display: none;
  }
}

.c-shadow {
  box-shadow: calc(4 / var(--full-width) * 100vw) calc(10 / var(--full-width) * 100vw) calc(14 / var(--full-width) * 100vw) 0 rgb(0 0 0 / 32%);
}

@media screen and (min-width: 751px) {
  .c-shadow {
    box-shadow: calc(4 / var(--full-width) * 100vw / var(--wide-full-width) * 480) calc(10 / var(--full-width) * 100vw / var(--wide-full-width) * 480) calc(14 / var(--full-width) * 100vw / var(--wide-full-width) * 480) 0 rgb(0 0 0 / 32%);
  }
}

.sec-border {
  position: relative;
}

.sec-border::before,
.sec-border::after {
  content: '';
  position: absolute;
  z-index: 1;
  top: calc(-30 / var(--full-width) * 100vw);
  display: block;
  width: 0;
  height: 0;
  border-top: calc(30 / var(--full-width) * 100vw) solid transparent;
  border-bottom: calc(30 / var(--full-width) * 100vw) solid transparent;
}

.sec-border::before {
  left: 0;
  border-left: calc(80 / var(--full-width) * 100vw) solid #be212d;
}

.sec-border::after {
  right: 0;
  border-right: calc(80 / var(--full-width) * 100vw) solid #007bb9;
}

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

  .sec-border::before,
  .sec-border::after {
    top: calc(-42 / var(--wide-full-width) * 100vw);
    border-top-width: calc(42 / var(--wide-full-width) * 100vw);
    border-bottom-width: calc(42 / var(--wide-full-width) * 100vw);
  }

  .sec-border::before {
    border-left-width: calc(110 / var(--wide-full-width) * 100vw);
  }

  .sec-border::after {
    border-right-width: calc(110 / var(--wide-full-width) * 100vw);
  }
}

.sec-ttl {
  position: relative;
}

.sec-ttl::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: calc(-79 / var(--full-width) * 100vw);
  left: 0;
  display: block;
  width: calc(323 / var(--full-width) * 100vw);
  height: auto;
  aspect-ratio: 323 / 314;
  background: center/contain no-repeat;
  pointer-events: none;
}

.sec-ttl img {
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 751px) {
  .sec-ttl::before {
    top: calc(-55 / var(--wide-full-width) * 100vw);
    left: calc(383 / var(--wide-full-width) * 100vw);
    width: calc(301 / var(--wide-full-width) * 100vw);
    aspect-ratio: 301 / 220;
  }
}

/* ========== lead ========== */
#lead {
  position: relative;
  padding: calc(130 / var(--full-width) * 100vw) 0 calc(120 / var(--full-width) * 100vw);
  background: top/cover url(../img/contents/lead-bg.webp);
}

#lead::before,
#lead::after {
  content: '';
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  height: auto;
  background: center/contain no-repeat;
}

#lead::before {
  top: 0;
  aspect-ratio: 750 / 80;
  background-image: url(../img/contents/lead-top.webp);
}

#lead::after {
  bottom: calc(-55 / var(--full-width) * 100vw);
  aspect-ratio: 750 / 110;
  background-image: url(../img/contents/lead-bottom.webp);
}

.lead-koreaBtn {
  margin: 0 auto;
  display: block;
  width: calc(406 / var(--full-width) * 100vw);
}

@media (hover: hover) {
  .lead-koreaBtn:hover {
    filter: brightness(1.1);
  }
}

.lead-ttl {
  margin-top: calc(80 / var(--full-width) * 100vw);
}

.lead-ttl::before {
  background-image: url(../img/contents/lead-ttl-deco.webp);
}

.lead-txt {
  margin-top: calc(40 / var(--full-width) * 100vw);
  line-height: 1.8;
  text-align: center;
  text-shadow: 1px 1px 2px rgb(0 0 0 / 30%);
  color: var(--white-color);
}

@media screen and (min-width: 751px) {
  #lead {
    padding: calc(115 / var(--wide-full-width) * 100vw) 0 calc(120 / var(--wide-full-width) * 100vw);
    background-image: url(../img/contents/lead-bg__l.webp);
  }

  #lead::before {
    aspect-ratio: 1440 / 100;
    background-image: url(../img/contents/lead-top__l.webp);
  }

  #lead::after {
    bottom: calc(-41 / var(--wide-full-width) * 100vw);
    aspect-ratio: 1440 / 120;
    background-image: url(../img/contents/lead-bottom__l.webp);
  }

  .lead-koreaBtn {
    width: calc(284 / var(--wide-full-width) * 100vw);
  }

  .lead-ttl {
    margin-top: calc(80 / var(--wide-full-width) * 100vw);
  }

  .lead-ttl::before {
    background-image: url(../img/contents/lead-ttl-deco__l.webp);
  }

  .lead-txt {
    margin-top: calc(40 / var(--wide-full-width) * 100vw);
  }
}

/* ========== lastyear ========== */
#lastyear {
  padding: calc(135 / var(--full-width) * 100vw) 0 calc(100 / var(--full-width) * 100vw);
  background: top/cover url(../img/contents/lastyear-bg.webp);
}

.lastyear-ttl::before {
  background-image: url(../img/contents/lastyear-ttl-deco.webp);
}

.lastyear-inner {
  position: relative;
  z-index: 1;
  margin-top: calc(50 / var(--full-width) * 100vw);
  padding: 0 calc(40 / var(--full-width) * 100vw);
}

.lastyear-yt iframe {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}

.lastyear-result {
  margin-top: calc(40 / var(--full-width) * 100vw);
}

.lastyearResult-ttl {
  text-align: center;
  font-size: calc(34 / var(--full-width) * 100vw);
  font-weight: 700;
}

.lastyearResult-table {
  position: relative;
  margin-top: calc(10 / var(--full-width) * 100vw);
  width: 100%;
  border-collapse: collapse;
}

.lastyearResult-table::after {
  content: '';
  position: absolute;
  top: calc(100% + (10 / var(--full-width) * 100vw));
  right: calc(18 / var(--full-width) * 100vw);
  display: block;
  width: calc(67 / var(--full-width) * 100vw);
  height: auto;
  aspect-ratio: 67 / 18;
  background: center/contain no-repeat url(../img/contents/lastyear-win.webp);
}

.lastyearResult-table thead {
  background-color: var(--font-color);
  color: var(--white-color);
}

.lastyearResult-table tbody {
  background-color: var(--white-color);
}

.lastyearResult-table td {
  border: calc(2 / var(--full-width) * 100vw) solid #5c5c5c;
  text-align: center;
  line-height: 2;
  vertical-align: middle;
  font-size: calc(32 / var(--full-width) * 100vw);
  font-weight: 700;
}

.lastyearResult-table td:first-child {
  width: 15%;
}

.lastyearResult-table td:nth-child(n + 2) {
  width: 10%;
}

.lastyearResult-table td:last-child {
  width: 15%;
}

.lastyearResult-table td._colorBlue {
  color: var(--accent-blue-color);
}

.lastyearResult-table td._colorRed {
  color: var(--accent-red-color);
}

.lastyearResult-table td._fsL {
  line-height: 1;
  font-size: 1.5em;
}

@media screen and (min-width: 751px) {
  #lastyear {
    padding: calc(140 / var(--wide-full-width) * 100vw) 0 calc(145 / var(--wide-full-width) * 100vw);
  }

  .lastyear-ttl::before {
    top: calc(-43 / var(--wide-full-width) * 100vw);
    background-image: url(../img/contents/lastyear-ttl-deco__l.webp);
  }

  .lastyear-inner {
    margin-top: calc(45 / var(--wide-full-width) * 100vw);
    padding: 0 calc(420 / var(--wide-full-width) * 100vw);
  }

  .lastyear-result {
    margin-top: calc(40 / var(--wide-full-width) * 100vw);
  }

  .lastyearResult-ttl {
    font-size: calc(24 / var(--wide-full-width) * 100vw);
  }

  .lastyearResult-table {
    margin-top: calc(15 / var(--wide-full-width) * 100vw);
  }

  .lastyearResult-table::after {
    top: calc(100% + (8 / var(--wide-full-width) * 100vw));
    right: calc(18 / var(--wide-full-width) * 100vw);
    width: calc(59 / var(--wide-full-width) * 100vw);
  }

  .lastyearResult-table td {
    border-width: calc(2 / var(--wide-full-width) * 100vw);
    font-size: calc(32 / var(--wide-full-width) * 100vw);
  }
}

/* ========== detail ========== */
#detail {
  padding: calc(100 / var(--full-width) * 100vw) 0 calc(120 / var(--full-width) * 100vw);
  background: top/cover url(../img/contents/detail-bg.webp);
}

.detail-ttl::before {
  background-image: url(../img/contents/detail-ttl-deco.webp);
}

.detail-inner {
  margin-top: calc((50 + 28) / var(--full-width) * 100vw);
  padding: 0 calc(40 / var(--full-width) * 100vw);
}

.detailCard {
  position: relative;
  padding: calc(48 / var(--full-width) * 100vw) calc(30 / var(--full-width) * 100vw) calc(30 / var(--full-width) * 100vw);
  background-color: var(--white-color);
}

.detailCard+.detailCard {
  margin-top: calc((30 + 28) / var(--full-width) * 100vw);
}

.detailCard-ttl {
  position: absolute;
  top: calc(-28 / var(--full-width) * 100vw);
  left: 50%;
  translate: -50% 0;
  width: calc(171 / var(--full-width) * 100vw);
  background-color: var(--font-color);
  clip-path: polygon(15% 0%, 100% 0, 85% 100%, 0% 100%);
  line-height: 2;
  text-align: center;
  color: var(--white-color);
}

.detailCard-txt {
  text-align: center;
  font-size: calc(25 / var(--full-width) * 100vw);
}

@media screen and (min-width: 751px) {
  #detail {
    padding: calc(100 / var(--wide-full-width) * 100vw) 0 calc(120 / var(--wide-full-width) * 100vw);
    background-image: url(../img/contents/detail-bg__l.webp);
  }

  .detail-ttl::before {
    background-image: url(../img/contents/detail-ttl-deco__l.webp);
  }

  .detail-inner {
    margin-top: calc((45 + 20) / var(--wide-full-width) * 100vw);
    padding: 0 calc(320 / var(--wide-full-width) * 100vw);
  }

  .detailCard {
    padding: calc(35 / var(--wide-full-width) * 100vw) calc(15 / var(--wide-full-width) * 100vw) calc(15 / var(--wide-full-width) * 100vw);
  }

  .detailCard+.detailCard {
    margin-top: calc((15 + 20) / var(--wide-full-width) * 100vw);
  }

  .detailCard-ttl {
    top: calc(-20 / var(--wide-full-width) * 100vw);
    width: calc(120 / var(--wide-full-width) * 100vw);
  }

  .detailCard-txt {
    font-size: calc(20 / var(--wide-full-width) * 100vw);
  }
}

/* ========== present ========== */
#present {
  padding: calc(100 / var(--full-width) * 100vw) 0;
  background: top/cover url();
}

/* .present-ttl::before {
  background-image: url(../img/contents/present-ttl-deco.webp);
} */

.present-bubble {
  margin: calc(50 / var(--full-width) * 100vw) auto 0;
  width: calc(470 / var(--full-width) * 100vw);
}

.present-img {
  margin-top: calc(60 / var(--full-width) * 100vw);
}

.present-notes {
  margin-top: calc(100 / var(--full-width) * 100vw);
  padding: 0 calc(40 / var(--full-width) * 100vw);
}

.present-notes>li {
  padding-left: 1em;
  text-indent: -1em;
}

.present-notes>li::before {
  content: '※';
  color: #cf001d;
}

@media screen and (min-width: 751px) {
  #present {
    padding: calc(100 / var(--wide-full-width) * 100vw) 0;
    ;
  }

  /* .present-ttl::before {
    top: calc(-83 / var(--wide-full-width) * 100vw);
    background-image: url(../img/contents/present-ttl-deco__l.webp);
  } */

  .present-inner {
    margin: calc(50 / var(--wide-full-width) * 100vw) auto 0;
    width: calc(1000 / var(--wide-full-width) * 100vw);
    max-width: 1000px;
  }

  .present-box {
    display: flex;
    justify-content: space-between;
  }

  .present-bubble {
    margin-top: 0;
    width: 100%;
  }

  .present-img {
    margin-top: 0;
    width: 100%;
  }

  .present-notes {
    margin-top: 0;
    padding: 0;
  }
}

/* ========== player ========== */
#player {
  padding: calc(100 / var(--full-width) * 100vw) 0 calc(120 / var(--full-width) * 100vw);
  background-color: #f5f5f5;
}

.player-ttl::before {
  background-image: url(../img/contents/player-ttl-deco.webp);
}

.player-tabBtns {
  position: relative;
  z-index: 1;
  margin-top: calc(50 / var(--full-width) * 100vw);
  display: flex;
  gap: 0 calc(4 / var(--full-width) * 100vw);
}

.player-tabBtns>li {
  position: relative;
  width: 50%;
  cursor: pointer;
}

.player-tabBtns>li div {
  padding: calc(3 / var(--full-width) * 100vw);
  background-color: var(--font-color);
}

.player-tabBtns>li p {
  background-color: #fff;
  line-height: 2;
  text-align: center;
  font-size: calc(40 / var(--full-width) * 100vw);
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;
}

@media (hover: hover) {
  .player-tabBtns>li:not(.is-choiced):hover p {
    background-color: rgb(15 32 61 / 10%);
    color: var(--white-color);
  }
}

.player-tabBtns>li.is-choiced {
  width: 55%;
}

.player-tabBtns>li.is-choiced::before {
  content: '';
  position: absolute;
  bottom: calc(-6 / var(--full-width) * 100vw);
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #c4333f;
  clip-path: polygon(0 0, 100% 0, 96% 100%, 0% 100%);
}

.player-tabBtns>li.is-choiced::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  translate: -50% 0;
  display: block;
  width: 0;
  height: 0;
  border-top: calc(12 / var(--full-width) * 100vw) solid var(--font-color);
  border-left: calc(9 / var(--full-width) * 100vw) solid transparent;
  border-right: calc(9 / var(--full-width) * 100vw) solid transparent;
}

.player-tabBtns>li.is-choiced p {
  background-color: var(--font-color);
  color: #fff;
}

.player-tabBtns>li._japan div,
.player-tabBtns>li._japan p,
.player-tabBtns>li._japan.is-choiced::before {
  clip-path: polygon(0 0, 100% 0, 96% 100%, 0% 100%);
}

.player-tabBtns>li._japan.is-choiced::before {
  background-color: #c4333f;
}

.player-tabBtns>li._korea div,
.player-tabBtns>li._korea p,
.player-tabBtns>li._korea.is-choiced::before {
  clip-path: polygon(4% 0, 100% 0, 100% 100%, 0% 100%);
}

.player-tabBtns>li._korea.is-choiced::before {
  background-color: #0274c0;
}

.player-tabContents {
  margin-top: calc(20 / var(--full-width) * 100vw);
}

.player-tabContents>li {
  display: none;
}

.player-tabContents>li.is-choiced {
  display: block;
}

.player-position {
  text-align: center;
  font-size: calc(36 / var(--full-width) * 100vw);
}

.player-list+.player-position {
  margin-top: calc(80 / var(--full-width) * 100vw);
}

.player-position span {
  position: relative;
}

.player-position span::before,
.player-position span::after {
  content: '';
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  display: block;
  width: calc(42 / var(--full-width) * 100vw);
  height: calc(4 / var(--full-width) * 100vw);
  background-color: var(--font-color);
}

.player-position span::before {
  right: calc(100% + 0.5em);
}

.player-position span::after {
  left: calc(100% + 0.5em);
}

.player-list {
  margin-top: calc(20 / var(--full-width) * 100vw);
  display: flex;
  flex-wrap: wrap;
  gap: calc(50 / var(--full-width) * 100vw) calc(10 / var(--full-width) * 100vw);
}

.playerCard {
  position: relative;
  width: calc((100% - (10 / var(--full-width) * 100vw)) / 2);
  background: bottom/contain no-repeat;
}

.playerCard-name {
  position: absolute;
  z-index: 1;
  bottom: calc(74 / var(--full-width) * 100vw);
  padding: 0.3em 1em 0.3em 0.8em;
  clip-path: polygon(0% 0%, 100% 0, 96% 100%, 0% 100%);
  line-height: 1.2;
  font-size: calc(32 / var(--full-width) * 100vw);
  font-weight: 600;
  color: var(--white-color);
}

.playerCard-name._phS {
  padding: 0.3em 0.6em 0.3em 0.3em;
}

.playerCard-more {
  position: absolute;
  z-index: 2;
  bottom: calc(-19 / var(--full-width) * 100vw);
  right: calc(8 / var(--full-width) * 100vw);
  display: block;
  width: calc(100 / var(--full-width) * 100vw);
  border-radius: calc(1px / 0);
  cursor: pointer;
}

@media (hover: hover) {
  .playerCard-more:hover {
    filter: brightness(1.3);
  }
}

.-japan .playerCard {
  background-image: url(../img/contents/player-img-japan-bg.webp);
}

.-japan .playerCard-name {
  background-color: rgb(191 30 43 / 80%);
}

.-korea .playerCard {
  background-image: url(../img/contents/player-img-korea-bg.webp);
}

.-korea .playerCard-name {
  background-color: rgb(0 123 185 / 80%);
}

.player-credit {
  margin-top: calc(100 / var(--full-width) * 100vw);
  padding: 0 calc(40 / var(--full-width) * 100vw);
  padding-left: calc(5em + (40 / var(--full-width) * 100vw));
  text-indent: -5em;
  font-size: calc(24 / var(--full-width) * 100vw);
}

@media screen and (min-width: 751px) {
  #player {
    padding: calc(100 / var(--wide-full-width) * 100vw) 0 calc(135 / var(--wide-full-width) * 100vw);
  }

  .player-ttl::before {
    content: none;
  }

  .player-tabBtns {
    margin: calc(50 / var(--wide-full-width) * 100vw) auto 0;
    gap: 0 calc(4 / var(--wide-full-width) * 100vw);
    width: calc(634 / var(--wide-full-width) * 100vw);
  }

  .player-tabBtns>li div {
    padding: calc(3 / var(--wide-full-width) * 100vw);
  }

  .player-tabBtns>li p {
    font-size: calc(32 / var(--wide-full-width) * 100vw);
  }

  .player-tabBtns>li.is-choiced::before {
    bottom: calc(-3 / var(--wide-full-width) * 100vw);
  }

  .player-tabBtns>li.is-choiced::after {
    border-top-width: calc(10 / var(--wide-full-width) * 100vw);
    border-left-width: calc(8 / var(--wide-full-width) * 100vw);
    border-right-width: calc(8 / var(--wide-full-width) * 100vw);
  }

  .player-tabContents {
    margin-top: calc(30 / var(--wide-full-width) * 100vw);
    padding: 0 calc(225 / var(--wide-full-width) * 100vw);
  }

  .player-position {
    font-size: calc(32 / var(--wide-full-width) * 100vw);
  }

  .player-list+.player-position {
    margin-top: calc(80 / var(--wide-full-width) * 100vw);
  }

  .player-position span::before,
  .player-position span::after {
    width: calc(36 / var(--wide-full-width) * 100vw);
    height: calc(3 / var(--wide-full-width) * 100vw);
  }

  .player-list {
    margin-top: calc(20 / var(--wide-full-width) * 100vw);
    gap: calc(50 / var(--wide-full-width) * 100vw) calc(30 / var(--wide-full-width) * 100vw);
  }

  .playerCard {
    width: calc((100% - (30 / var(--wide-full-width) * 100vw) * 2) / 3);
  }

  .playerCard-name {
    bottom: calc(64 / var(--wide-full-width) * 100vw);
    font-size: calc(26 / var(--wide-full-width) * 100vw);
  }

  .playerCard-more {
    bottom: calc(-16 / var(--wide-full-width) * 100vw);
    right: calc(8 / var(--wide-full-width) * 100vw);
    width: calc(84 / var(--wide-full-width) * 100vw);
  }

  .player-credit {
    margin-top: calc(100 / var(--wide-full-width) * 100vw);
    padding: 0;
    padding-left: 5em;
    font-size: calc(14 / var(--wide-full-width) * 100vw);
  }
}

/* ----- player modal ----- */
#playerModal .modal-container {
  padding-top: calc((20 + 100) / var(--full-width) * 100vw);
}

.playerModal-content {
  width: calc(600 / var(--full-width) * 100vw);
}

.playerModal-head {
  padding-top: calc(30 / var(--full-width) * 100vw);
  background: center/cover;
}

.playerModal-head img {
  margin: 0 auto;
  width: calc(370 / var(--full-width) * 100vw);
}

.playerModal-body {
  padding: calc(20 / var(--full-width) * 100vw) calc(30 / var(--full-width) * 100vw);
  color: var(--white-color);
}

.playerModal-name {
  position: relative;
  text-align: center;
  font-size: calc(44 / var(--full-width) * 100vw);
  font-weight: 600;
}

.playerModal-name::after {
  content: '';
  position: absolute;
  top: 115%;
  left: 50%;
  translate: -50% 0;
  display: block;
  width: calc(29 / var(--full-width) * 100vw);
  height: auto;
  aspect-ratio: 29 / 20;
  background: center/contain no-repeat url(../img/contents/player-modal-arrow.webp);
}

.playerModal-txt {
  margin-top: calc(40 / var(--full-width) * 100vw);
}

.-japan .playerModal-head {
  background-image: url(../img/contents/player-modal-japan-bg.webp);
}

.-japan .playerModal-body {
  background-color: #bf1e2b;
}

.-korea .playerModal-head {
  background-image: url(../img/contents/player-modal-korea-bg.webp);
}

.-korea .playerModal-body {
  background-color: #007bb9;
}

@media screen and (min-width: 751px) {
  #playerModal .modal-container {
    padding-top: calc((20 + 100) / var(--wide-full-width) * 100vw);
  }

  .playerModal-content {
    width: calc(600 / var(--wide-full-width) * 100vw);
  }

  .playerModal-head {
    padding-top: calc(30 / var(--wide-full-width) * 100vw);
  }

  .playerModal-head img {
    width: calc(260 / var(--wide-full-width) * 100vw);
  }

  .playerModal-body {
    padding: calc(15 / var(--wide-full-width) * 100vw) calc(20 / var(--wide-full-width) * 100vw);
  }

  .playerModal-name {
    font-size: calc(30 / var(--wide-full-width) * 100vw);
  }

  .playerModal-name::after {
    width: calc(19 / var(--wide-full-width) * 100vw);
  }

  .playerModal-txt {
    margin-top: calc(30 / var(--wide-full-width) * 100vw);
  }
}

/* ========== message ========== */
#message {
  padding: calc(100 / var(--full-width) * 100vw) 0 calc(120 / var(--full-width) * 100vw);
  background-color: var(--font-color);
}

.message-ttl::before {
  background-image: url(../img/contents/message-ttl-deco.webp);
}

.message-list {
  margin-top: calc(30 / var(--full-width) * 100vw);
}

.message-list>li+li {
  margin-top: calc(40 / var(--full-width) * 100vw);
}

.messageCard {
  position: relative;
}

.messageCard-more {
  position: absolute;
  z-index: 2;
  bottom: calc(-19 / var(--full-width) * 100vw);
  right: calc(8 / var(--full-width) * 100vw);
  display: block;
  width: calc(150 / var(--full-width) * 100vw);
  border-radius: calc(1px / 0);
  cursor: pointer;
}

@media (hover: hover) {
  .messageCard-more:hover {
    filter: brightness(1.3);
  }
}

@media screen and (min-width: 751px) {
  #message {
    padding: calc(100 / var(--wide-full-width) * 100vw) 0 calc(120 / var(--wide-full-width) * 100vw);
  }

  .message-ttl::before {
    content: none;
  }

  .message-list {
    margin-top: calc(40 / var(--wide-full-width) * 100vw);
    display: flex;
    flex-wrap: wrap;
    gap: calc(30 / var(--wide-full-width) * 100vw);
    padding: 0 calc(220 / var(--wide-full-width) * 100vw);
  }

  .message-list>li {
    width: calc((100% - (30 / var(--wide-full-width) * 100vw)) / 2);
  }

  .message-list>li+li {
    margin-top: 0;
  }

  .messageCard-more {
    bottom: calc(-19 / var(--wide-full-width) * 100vw);
    right: calc(8 / var(--wide-full-width) * 100vw);
    width: calc(100 / var(--wide-full-width) * 100vw);
  }
}

/* ----- messageModal ----- */
.messageModal .modal-container {
  padding-left: 0;
  padding-right: 0;
}

.messageModal-content {
  position: relative;
}

.messageModal-inner {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  padding: calc(40 / var(--full-width) * 100vw) calc(40 / var(--full-width) * 100vw) calc(50 / var(--full-width) * 100vw);
}

.messageModal-txt {
  font-size: calc(31 / var(--full-width) * 100vw);
  color: var(--white-color);
}

@media screen and (min-width: 751px) {
  .messageModal-content {
    width: calc(485 / var(--wide-full-width) * 100vw);
  }

  .messageModal-inner {
    padding: calc(25 / var(--wide-full-width) * 100vw);
  }

  .messageModal-txt {
    font-size: calc(20 / var(--wide-full-width) * 100vw);
  }

  .messageModal-txt._fsS {
    font-size: calc(19 / var(--wide-full-width) * 100vw);
  }
}

/* ========== seat ========== */
#seat {
  padding: calc(100 / var(--full-width) * 100vw) 0 calc(120 / var(--full-width) * 100vw);
  background: top/cover url(../img/contents/seat-bg.webp);
}

.seat-ttl::before {
  aspect-ratio: 323 / 288;
  background-image: url(../img/contents/seat-ttl-deco.webp);
}

.seat-inner {
  margin-top: calc(50 / var(--full-width) * 100vw);
  padding: 0 calc(40 / var(--full-width) * 100vw);
}

.seat-map {
  position: relative;
  padding-bottom: calc(47 / var(--full-width) * 100vw);
}

.timeschedule {
  position: relative;
  padding-bottom: calc(60/ var(--full-width) * 100vw);
}

.seat-btn {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  display: block;
  width: calc(462 / var(--full-width) * 100vw);
  cursor: pointer;
}

@media (hover: hover) {
  .seat-btn:hover {
    opacity: 0.8;
  }
}

.seat-notes {
  margin-top: calc(70 / var(--full-width) * 100vw);
}

.seat-notes>li {
  padding-inline-start: 1em;
  text-indent: -1em;
  color: #606060;
}

.seat-notes>li+li {
  margin-top: 0.5em;
}

.seat-notes>li::before {
  content: '※';
  color: #cf001d;
}

.seat-link {
  text-decoration: underline;
  color: var(--accent-blue-color);
}

.seat-admission {
  margin-top: calc(40 / var(--full-width) * 100vw);
  padding: calc(30 / var(--full-width) * 100vw);
  background-color: #fff;
}

.seatAdmission-note {
  padding-inline-start: 1em;
  text-indent: -1em;
  color: #606060;
}

.seatAdmission-note::before {
  content: '※';
  color: #cf001d;
}

@media screen and (min-width: 751px) {
  #seat {
    padding: calc(100 / var(--wide-full-width) * 100vw) 0 calc(120 / var(--wide-full-width) * 100vw);
    background-image: url(../img/contents/seat-bg__l.webp);
  }

  .seat-ttl::before {
    top: calc(-85 / var(--wide-full-width) * 100vw);
    aspect-ratio: 301 / 202;
    background-image: url(../img/contents/seat-ttl-deco__l.webp);
  }

  .seat-inner {
    margin-top: calc(50 / var(--wide-full-width) * 100vw);
    padding: 0 calc(220 / var(--wide-full-width) * 100vw);
  }

  .seat-map {
    padding: 0 calc(250 / var(--wide-full-width) * 100vw) calc(37 / var(--wide-full-width) * 100vw);
  }

  .seat-btn {
    width: calc(346 / var(--wide-full-width) * 100vw);
  }

  .seat-notes {
    margin-top: calc(30 / var(--wide-full-width) * 100vw);
    font-size: calc(16 / var(--wide-full-width) * 100vw);
  }

  .seat-admission {
    margin-top: calc(30 / var(--wide-full-width) * 100vw);
    padding: calc(25 / var(--wide-full-width) * 100vw);
    font-size: calc(16 / var(--wide-full-width) * 100vw);
  }
}

/* ----- modal ----- */
@media screen and (min-width: 751px) {
  #seatModal .modal-content {
    width: calc(1000 / var(--wide-full-width) * 100vw);
  }
}

.seatAccordion {
  margin-top: calc(30 / var(--full-width) * 100vw);
}

.seatAccordion-head {
  position: relative;
  padding: calc(30 / var(--full-width) * 100vw);
  background-color: #fff;
  cursor: pointer;
}

.seatAccordion-head::before,
.seatAccordion-head::after {
  content: '';
  position: absolute;
  top: 50%;
  right: calc(30 / var(--full-width) * 100vw);
  translate: 0 -50%;
  display: block;
  width: calc(4 / var(--full-width) * 100vw);
  height: calc(24 / var(--full-width) * 100vw);
  background-color: var(--font-color);
  transition: rotate 0.3s;
}

.seatAccordion-head::after {
  rotate: 90deg;
}

.seatAccordion-body {
  display: none;
  padding: calc(30 / var(--full-width) * 100vw);
  background: #fff;
}

/* open */
.seatAccordion.is-open .seatAccordion-head::before {
  rotate: 90deg;
}

@media screen and (min-width: 751px) {
  .seatAccordion {
    margin-top: calc(30 / var(--wide-full-width) * 100vw);
  }

  .seatAccordion-head {
    padding: calc(30 / var(--wide-full-width) * 100vw);
  }

  .seatAccordion-head::before,
  .seatAccordion-head::after {
    right: calc(30 / var(--wide-full-width) * 100vw);
    width: calc(4 / var(--wide-full-width) * 100vw);
    height: calc(24 / var(--wide-full-width) * 100vw);
  }

  .seatAccordion-body {
    padding: calc(30 / var(--wide-full-width) * 100vw);
  }
}

/* ========== news ========== */
#news {
  padding: calc(100 / var(--full-width) * 100vw) 0 calc(120 / var(--full-width) * 100vw);
  background-color: #f5f5f5;
}

.news-ttl::before {
  background-image: url(../img/contents/player-ttl-deco.webp);
}

.news-inner {
  margin-top: calc(50 / var(--full-width) * 100vw);
  padding: 0 calc(40 / var(--full-width) * 100vw);
}

.news-list>li {
  border-bottom: 1px solid #e8e8e8;
}

.news-list._first>li:first-child {
  border-top: 1px solid #e8e8e8;
}

@media screen and (min-width: 751px) {
  #news {
    padding: calc(100 / var(--wide-full-width) * 100vw) 0 calc(120 / var(--wide-full-width) * 100vw);
  }

  .news-inner {
    margin-top: calc(50 / var(--wide-full-width) * 100vw);
    padding: 0 calc(220 / var(--wide-full-width) * 100vw);
  }

  .news-list {
    padding: calc(10 / var(--wide-full-width) * 100vw) calc(50 / var(--wide-full-width) * 100vw);
    background-color: #fff;
    border-radius: calc(10 / var(--wide-full-width) * 100vw);
  }

  .news-list._first>li:first-child {
    border-top: none;
  }

  .news-list._first>li:last-child {
    border-bottom: none;
  }
}

.newsCard {
  line-height: 1.5;
  font-size: calc(28 / var(--full-width) * 100vw);
}

.newsCard a {
  display: block;
  padding: calc(40 / var(--full-width) * 100vw) 0;
}

.newsCard-attr {
  margin-bottom: calc(10 / var(--full-width) * 100vw);
  display: flex;
  gap: calc(10 / var(--full-width) * 100vw);
  font-size: 0.85em;
}

.newsCard-date {
  color: #999;
}

.newsCard-tag {
  display: flex;
  flex-wrap: wrap;
  gap: calc(10 / var(--full-width) * 100vw) calc(20 / var(--full-width) * 100vw);
}

.newsCard-tag>li {
  padding: 0 calc(20 / var(--full-width) * 100vw);
  border-radius: calc(6 / var(--full-width) * 100vw);
  color: #fff;
}

.newsCard-tag>li._event {
  background-color: #ff0000;
  color: #fafafa;
}

.newsCard-tag>li._goods {
  background-color: #00cc99;
  color: #fafafa;
}

.newsCard-tag>li._ticket {
  background-color: #99cc33;
  color: #fafafa;
}

.newsCard-tag>li._campaign {
  background-color: #cc6600;
  color: #fafafa;
}

.newsCard-tag>li._presrelease {
  background-color: #999933;
}

.newsCard-tag>li._gourmet {
  background-color: #f7991d;
}

.newsCard-tag>li._fav {
  background-color: #000066;
}

.newsCard-ttl {
  position: relative;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.newsCard-ttl::after {
  content: '';
  position: absolute;
  top: calc(100% - 2px);
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background-color: #273751;
  transform: translateX(-100%);
  transition: transform 1s;
}

.newsCard._new .newsCard-attr::before {
  content: 'NEW';
  font-weight: 700;
  color: #ff0000;
}

@media (hover: hover) {
  .newsCard a:hover .newsCard-ttl:after {
    transform: translateX(0);
  }
}

@media screen and (min-width: 751px) {
  .newsCard {
    font-size: calc(16 / var(--wide-full-width) * 100vw);
  }

  .newsCard a {
    padding: calc(20 / var(--wide-full-width) * 100vw) 0;
  }

  .newsCard-attr {
    margin-bottom: calc(10 / var(--wide-full-width) * 100vw);
    gap: calc(10 / var(--wide-full-width) * 100vw);
  }

  .newsCard-tag {
    gap: calc(10 / var(--wide-full-width) * 100vw);
  }

  .newsCard-tag>li {
    padding: 0 calc(20 / var(--wide-full-width) * 100vw);
    border-radius: calc(6 / var(--wide-full-width) * 100vw);
  }
}

/* ========== float ========== */
.float-ticket {
  position: fixed;
  top: calc(10 / var(--full-width) * 100vw);
  right: calc(10 / var(--full-width) * 100vw);
  z-index: 10;
  display: block;
  width: calc(200 / var(--full-width) * 100vw);
  opacity: 0;
  transition: opacity 0.3s;
}

.float-ticket.is-scrolled {
  opacity: 1;
}

@media (hover: hover) {
  .float-ticket:hover {
    filter: brightness(1.1);
  }
}

@media screen and (min-width: 751px) {
  .float-ticket {
    top: auto;
    bottom: calc(20 / var(--wide-full-width) * 100vw);
    right: calc(30 / var(--wide-full-width) * 100vw);
    width: calc(150 / var(--wide-full-width) * 100vw);
  }
}

/* ---------- floatMenu ---------- */
.floatMenu {
  position: fixed;
  z-index: 10;
  bottom: calc(-130 / var(--full-width) * 100vw);
  left: 0;
  right: 0;
  display: flex;
  width: 100%;
  background-color: #1d4278;
  border-radius: calc(40 / var(--full-width) * 100vw) calc(40 / var(--full-width) * 100vw) 0 0;
  border: calc(3 / var(--full-width) * 100vw) solid #fff;
  border-bottom: none;
  box-shadow: calc(6 / var(--full-width) * 100vw) calc(-6 / var(--full-width) * 100vw) calc(10 / var(--full-width) * 100vw) rgb(0 0 0 /32%);
  transition: bottom 0.3s;
}

.floatMenu.is-scrolled {
  bottom: 0;
}

.floatMenu-item {
  position: relative;
  flex-grow: 1;
  flex-shrink: 1;
}

.floatMenu-item+.floatMenu-item {
  padding-left: calc(3 / var(--full-width) * 100vw);
}

.floatMenu-item+.floatMenu-item::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  display: block;
  width: calc(3 / var(--full-width) * 100vw);
  height: calc(70 / var(--full-width) * 100vw);
  background-color: #fff;
}

.floatMenu-item a {
  display: block;
  padding: calc(28 / var(--full-width) * 100vw) 0;
}

@media (hover: hover) {
  .floatMenu-item a:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 751px) {
  .floatMenu {
    bottom: calc(-130 / var(--wide-full-width) * 100vw);
    left: 50%;
    right: auto;
    translate: -50% 0;
    width: calc(900 / var(--wide-full-width) * 100vw);
    border-radius: calc(1px / 0);
    border: calc(3 / var(--wide-full-width) * 100vw) solid #fff;
    box-shadow: calc(6 / var(--wide-full-width) * 100vw) calc(6 / var(--wide-full-width) * 100vw) calc(10 / var(--wide-full-width) * 100vw) rgb(0 0 0 /32%);
  }

  .floatMenu.is-scrolled {
    bottom: calc(30 / var(--wide-full-width) * 100vw);
  }

  .floatMenu-item+.floatMenu-item {
    padding-left: calc(3 / var(--wide-full-width) * 100vw);
  }

  .floatMenu-item+.floatMenu-item::before {
    width: calc(3 / var(--wide-full-width) * 100vw);
    height: calc(40 / var(--wide-full-width) * 100vw);
  }

  .floatMenu-item a {
    padding: calc(12 / var(--wide-full-width) * 100vw) 0;
  }
}

/* ---------- scroll top ---------- */
.scrolltop {
  position: fixed;
  z-index: 10;
  bottom: calc(160 / var(--full-width) * 100vw);
  left: calc(30 / var(--full-width) * 100vw);
  display: block;
  width: calc(80 / var(--full-width) * 100vw);
  height: auto;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s, translate 0.3s;
}

.scrolltop.is-scrolled {
  pointer-events: auto;
  opacity: 1;
}

@media (hover: hover) {
  .scrolltop:hover {
    translate: 0 -10%;
  }
}

@media screen and (min-width: 751px) {
  .scrolltop {
    bottom: calc(30 / var(--wide-full-width) * 100vw);
    left: calc(120 / var(--wide-full-width) * 100vw);
    width: calc(50 / var(--wide-full-width) * 100vw);
  }
}

/* ========== footer ========== */
#footer {
  padding-top: calc(50 / var(--full-width) * 100vw);
  padding-bottom: calc(180 / var(--full-width) * 100vw);
  background-color: var(--font-color);
}

.footer-copy {
  display: block;
  text-align: center;
  font-size: calc(24 / var(--full-width) * 100vw);
  font-weight: 400;
  color: var(--white-color);
}

@media screen and (min-width: 751px) {
  #footer {
    padding: calc(15 / var(--wide-full-width) * 100vw);
    background-color: #273751;
  }

  .footer-copy {
    font-size: calc(16 / var(--wide-full-width) * 100vw);
  }
}