.tc-img-logo,
[class*=tc-icon-] {
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  vertical-align: middle;
}

.tc-icon-ng {
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='a' xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill:none;%7D.c%7Bfill:%23a3a3a3;%7D%3C/style%3E%3C/defs%3E%3Crect class='b' width='14' height='14'/%3E%3Crect class='c' y='7' width='14' height='1'/%3E%3C/svg%3E");
}

#ticket {
  min-width: 1200px;
  background: #F5F5F5;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  color: #222121;
  -webkit-text-size-adjust: 100%;
}
#ticket *,
#ticket *::before,
#ticket *::after {
  margin: 0;
  padding: 0;
  font: inherit;
  line-height: inherit;
  color: inherit;
  box-sizing: border-box;
}
#ticket div::after {
  visibility: visible;
  content: none;
}
#ticket ul,
#ticket ol {
  list-style: none;
}
#ticket a {
  text-decoration: none;
}
#ticket table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
#ticket table th,
#ticket table td {
  text-align: left;
  vertical-align: top;
}
#ticket label {
  cursor: pointer;
}
#ticket button {
  appearance: none;
  outline: 0;
  border: none;
  background: none;
  cursor: pointer;
}
#ticket button:disabled {
  pointer-events: none;
}
#ticket select {
  appearance: none;
  outline: 0;
  border: none;
  background: none;
  cursor: pointer;
}
#ticket img {
  border: none;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

#ticket .tc-heading {
  text-align: center;
}
#ticket .tc-heading ~ .tc-heading {
  margin-top: 50px;
}
#ticket .tc-heading.is-mypage {
  text-align: left;
}
#ticket .tc-heading__sub {
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 600;
}
#ticket .tc-heading__logo {
  margin-bottom: 30px;
}
#ticket .tc-heading__logo .tc-img-logo {
  width: 113px;
  height: 50px;
}
#ticket .tc-heading__ttl {
  font-size: 21px;
  font-weight: 600;
}
#ticket .tc-heading__txt {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-heading__txt em {
  font-weight: 600;
}
#ticket .tc-heading__txt em a {
  color: #C7973F;
}
#ticket .tc-heading a {
  text-decoration: underline;
}
#ticket .tc-form input::placeholder {
  color: #A3A3A3;
}
#ticket .tc-form__select {
  display: inline-block;
  position: relative;
}
#ticket .tc-form__select::after {
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 10px;
  height: 7px;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='a' xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill:%23222121;%7D.c%7Bfill:none;%7D%3C/style%3E%3C/defs%3E%3Crect class='c' x='0' width='10' height='7'/%3E%3Cpath class='b' d='M0,.5C0,.36.06.22.17.12c.19-.17.47-.15.64.04,0,0,.02.02.02.03l4.35,5.52L9.15.2c.14-.21.42-.26.63-.12.01,0,.02.01.03.02.21.18.24.48.09.7l-4.33,6c-.14.21-.43.26-.63.12-.04-.03-.07-.06-.1-.1L.11.82C.04.73,0,.62,0,.5Z'/%3E%3C/svg%3E");
  background-size: contain;
  opacity: 0.8;
  content: "";
  transform: translateY(-50%);
}
@keyframes tc-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes tc-fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
#ticket .tc-modal {
  display: none;
  position: relative;
  z-index: 100;
}
#ticket .tc-modal.is-open {
  display: block;
}
#ticket .tc-modal[aria-hidden=false] {
  animation: tc-fadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
#ticket .tc-modal[aria-hidden=true] {
  animation: tc-fadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
#ticket .tc-modal__overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
#ticket .tc-modal__content {
  display: flex;
  flex-direction: column;
  padding: 70px 30px 30px;
  border-radius: 6px;
  width: 660px;
  max-height: 90dvh;
  background: #fff;
}
#ticket .tc-modal-txt {
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-modal-btn {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#ticket .tc-modal-btn button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 170px;
  height: 50px;
  font-size: 16px;
  color: #fff;
}
#ticket .tc-modal-btn__submit {
  background: #00A0E9;
}
#ticket .tc-modal-btn__close {
  background: #A3A3A3;
}
#ticket .tc-scroll__inner {
  overflow: hidden;
  overscroll-behavior: none;
}
#ticket .tc-scroll .ps__rail-y,
#ticket .tc-scroll .ps__rail-x {
  width: 8px;
  height: 8px;
  opacity: 1;
}
#ticket .tc-scroll .ps__thumb-y,
#ticket .tc-scroll .ps__thumb-x {
  background: none;
}
#ticket .tc-scroll .ps__thumb-y::after,
#ticket .tc-scroll .ps__thumb-x::after {
  position: absolute;
  border-radius: 50vw;
  background: #676767;
  content: "";
}
#ticket .tc-scroll .ps__thumb-y {
  right: 0;
  width: 8px;
}
#ticket .tc-scroll .ps__thumb-y::after {
  top: 8px;
  left: 0;
  width: 8px;
  height: calc(100% - 10px);
}
#ticket .tc-scroll .ps__thumb-x {
  bottom: 0;
  height: 8px;
}
#ticket .tc-scroll .ps__thumb-x::after {
  top: 0;
  left: 8px;
  height: 8px;
  width: calc(100% - 10px);
}
#ticket .tc-notice__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 740px;
}
#ticket .tc-notice-txt {
  margin-top: 30px;
  padding: 30px;
  border-radius: 10px;
  background: #fff;
}
#ticket .tc-notice-txt__list {
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-notice-txt__list li {
  padding-left: 1em;
  text-indent: -1em;
}
#ticket .tc-notice-txt__list li ~ li {
  margin-top: 20px;
}
#ticket .tc-notice-agree {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  font-size: 18px;
}
#ticket .tc-notice-agree__label {
  display: flex;
  align-items: center;
}
#ticket .tc-notice-agree__input {
  display: none;
}
#ticket .tc-notice-agree__input:checked ~ .tc-notice-agree__checkbox {
  border-color: transparent;
  background: var(--ticket-main-color);
}
#ticket .tc-notice-agree__input:checked ~ .tc-notice-agree__checkbox::after {
  position: absolute;
  top: 50%;
  left: 50%;
  border: solid #fff;
  border-width: 0 0 2px 2px;
  width: 12px;
  height: 8px;
  content: "";
  transform: translate(-50%, -70%) rotate(-45deg);
}
#ticket .tc-notice-agree__checkbox {
  position: relative;
  margin-right: 10px;
  border: 1px solid #222121;
  border-radius: 3px;
  width: 20px;
  height: 20px;
}
#ticket .tc-notice-btn {
  margin-top: 30px;
}
#ticket .tc-notice-btn button, #ticket .tc-notice-btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  font-size: 18px;
}
#ticket .tc-notice-btn li ~ li {
  margin-top: 30px;
}
#ticket .tc-notice-btn__next {
  background: var(--ticket-main-color);
  font-weight: 600;
  color: #fff;
}
#ticket .tc-notice-btn__next:disabled {
  background: #A3A3A3;
}
#ticket .tc-notice-btn__back {
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#ticket .tc-calendar .is-available {
  background: #C7973F;
}
#ticket .tc-calendar .is-progress {
  background: #A3A3A3;
}
#ticket .tc-calendar .is-loto {
  background: var(--ticket-main-color);
}
#ticket .tc-calendar .is-before {
  background: #A3A3A3;
}
#ticket .tc-calendar .is-ng {
  background: #A3A3A3;
}
#ticket .tc-calendar .is-ng i {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(249deg) brightness(102%) contrast(102%);
}
#ticket .tc-calendar__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 700px;
}
#ticket .tc-calendar-head {
  display: flex;
  margin-top: 30px;
  font-weight: 600;
}
#ticket .tc-calendar-head__btn {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 6px 6px 0 0;
  width: 25%;
  height: 78px;
  background: #EBEBEB;
  font-size: 16px;
}
#ticket .tc-calendar-head__btn.is-active {
  background: #fff;
}
#ticket .tc-calendar-head__date em {
  font-size: 20px;
}
#ticket .tc-calendar-head__type {
  margin-top: 10px;
  border-radius: 50vw;
  width: 110px;
  height: 28px;
  text-align: center;
  font-size: 14px;
  line-height: 28px;
  color: #fff;
}
#ticket .tc-calendar-body {
  display: flex;
  justify-content: center;
  padding: 22px 0;
  border-radius: 0 0 6px 6px;
  background: #fff;
}
#ticket .tc-calendar-body__item {
  width: 0;
  overflow: hidden;
}
#ticket .tc-calendar-body__item.is-active {
  width: 658px;
}
#ticket .tc-calendar-body__inner {
  width: 658px;
}
#ticket .tc-calendar-body__txt {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-calendar-body__txt li {
  padding-left: 1em;
  text-indent: -1em;
}
#ticket .tc-calendar-body__txt li ~ li {
  margin-top: 15px;
}
#ticket .tc-calendar-body__icon {
  display: flex;
  gap: 0 15px;
  margin-top: 15px;
  font-size: 12px;
}
#ticket .tc-calendar-body__icon li {
  display: flex;
  align-items: center;
  gap: 0 5px;
}
#ticket .tc-calendar-body i {
  width: 14px;
  height: 14px;
}
#ticket .tc-calendar-date {
  font-size: 14px;
}
#ticket .tc-calendar-date tr {
  border-bottom: 1px solid #EBEBEB;
}
#ticket .tc-calendar-date th {
  padding-bottom: 10px;
  text-align: center;
}
#ticket .tc-calendar-date td {
  width: 14.2857%;
}
#ticket .tc-calendar-date td button,
#ticket .tc-calendar-date td span {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px 0;
  padding-top: 22px;
  width: 100%;
  height: 85px;
  text-align: center;
}
#ticket .tc-calendar-date td span {
  color: #A3A3A3;
}
#ticket .tc-calendar-date .is-sat {
  color: var(--ticket-main-color);
}
#ticket .tc-calendar-date .is-sun,
#ticket .tc-calendar-date .is-holiday {
  color: #BE1C1C;
}
#ticket .tc-calendar-date i {
  width: 18px;
  height: 18px;
}
#ticket .tc-calendar-notice {
  margin-top: 30px;
}
#ticket .tc-calendar-notice__hdg {
  font-size: 18px;
}
#ticket .tc-calendar-notice__list {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-calendar-notice__list li {
  padding-left: 1em;
  text-indent: -1em;
}
#ticket .tc-calendar-notice__list li ~ li {
  margin-top: 15px;
}
#ticket .tc-calendar-modal {
  display: none;
  position: relative;
  z-index: 100;
}
#ticket .tc-calendar-modal.is-open {
  display: block;
}
#ticket .tc-calendar-modal[aria-hidden=false] {
  animation: tc-fadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
#ticket .tc-calendar-modal[aria-hidden=true] {
  animation: tc-fadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
#ticket .tc-calendar-modal__overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
#ticket .tc-calendar-modal__content {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border-radius: 6px;
  width: 660px;
  max-height: 90dvh;
  background: #fff;
}
#ticket .tc-calendar-sub {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 30px 0 10px;
  font-weight: 600;
}
#ticket .tc-calendar-sub dt {
  font-size: 18px;
}
#ticket .tc-calendar-sub dd {
  border-radius: 50vw;
  width: 90px;
  height: 22px;
  text-align: center;
  font-size: 12px;
  line-height: 22px;
  color: #fff;
}
#ticket .tc-calendar-loto {
  flex-shrink: 1;
  position: relative;
  border: 1px solid #EBEBEB;
  height: 100vh;
  max-height: 420px;
  font-weight: 600;
}
#ticket .tc-calendar-loto__inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
}
#ticket .tc-calendar-loto__list {
  border-collapse: separate;
  user-select: none;
}
#ticket .tc-calendar-loto__list th {
  background: #222121;
  white-space: nowrap;
  vertical-align: middle;
  color: #fff;
}
#ticket .tc-calendar-loto__list th,
#ticket .tc-calendar-loto__list .is-ng {
  border: solid #fff;
  border-width: 0 1px 1px 0;
}
#ticket .tc-calendar-loto__list td:not(.is-ng) {
  border: solid #EBEBEB;
  border-width: 0 1px 1px 0;
}
#ticket .tc-calendar-loto__list thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 9px 0 6px;
  text-align: center;
  font-size: 14px;
}
#ticket .tc-calendar-loto__list thead th:first-child {
  left: 0;
  z-index: 3;
  padding: 15px 9px;
}
#ticket .tc-calendar-loto__list thead th:last-child {
  border-right: none;
}
#ticket .tc-calendar-loto__list thead span {
  display: block;
  margin-top: 7px;
  font-size: 12px;
}
#ticket .tc-calendar-loto__list tbody th {
  position: sticky;
  left: 0;
  z-index: 1;
  padding: 0 15px;
  text-align: right;
  font-size: 14px;
}
#ticket .tc-calendar-loto__list tbody tr:last-child th, #ticket .tc-calendar-loto__list tbody tr:last-child td {
  border-bottom: none;
}
#ticket .tc-calendar-loto__list tbody td:last-child {
  border-right: none;
}
#ticket .tc-calendar-loto__list tbody span {
  display: block;
  position: relative;
  padding: 6px;
}
#ticket .tc-calendar-loto label {
  display: block;
}
#ticket .tc-calendar-loto input {
  display: none;
}
#ticket .tc-calendar-loto input:checked ~ span::after {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--ticket-main-light-color);
  font-size: 22px;
  color: var(--ticket-main-color);
  content: "";
}
#ticket .tc-calendar-loto input:checked.is-1 ~ span::after {
  content: "1";
}
#ticket .tc-calendar-loto input:checked.is-2 ~ span::after {
  content: "2";
}
#ticket .tc-calendar-loto input:checked.is-3 ~ span::after {
  content: "3";
}
#ticket .tc-calendar-loto i {
  width: 40px;
  height: 40px;
}
#ticket .tc-calendar-loto i.tc-icon-ng {
  background-size: 14px;
}
#ticket .tc-calendar-status {
  display: flex;
  align-items: center;
  gap: 0 12px;
  margin-top: 20px;
  font-size: 12px;
}
#ticket .tc-calendar-status dt {
  font-weight: 600;
}
#ticket .tc-calendar-status dd {
  display: flex;
  align-items: center;
  gap: 0 5px;
}
#ticket .tc-calendar-status i {
  width: 16px;
  height: 16px;
}
#ticket .tc-calendar-available {
  flex-shrink: 1;
  position: relative;
  margin-top: 10px;
  height: 139px;
}
#ticket .tc-calendar-available__inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-x: auto;
}
#ticket .tc-calendar-available__list {
  white-space: nowrap;
  font-size: 0;
  user-select: none;
}
#ticket .tc-calendar-available__list li {
  display: inline-block;
}
#ticket .tc-calendar-available__list li ~ li {
  border-left: 1px solid #EBEBEB;
}
#ticket .tc-calendar-available label {
  display: block;
}
#ticket .tc-calendar-available input {
  display: none;
}
#ticket .tc-calendar-available input:disabled ~ span {
  background: #A3A3A3;
}
#ticket .tc-calendar-available input:disabled ~ span i {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(249deg) brightness(102%) contrast(102%);
}
#ticket .tc-calendar-available input:checked ~ span {
  border-color: #C7973F;
  background: #FFF6E5;
}
#ticket .tc-calendar-available span {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px 0;
  border: 2px solid transparent;
  width: 110px;
  height: 139px;
  font-size: 16px;
  font-weight: 600;
}
#ticket .tc-calendar-available i {
  width: 18px;
  height: 18px;
}
#ticket .tc-calendar-btn {
  margin-top: 20px;
}
#ticket .tc-calendar-btn button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
}
#ticket .tc-calendar-btn li ~ li {
  margin-top: 15px;
}
#ticket .tc-calendar-btn__next {
  background: var(--ticket-main-color);
  font-weight: 600;
  color: #fff;
}
#ticket .tc-calendar-btn__next:disabled {
  pointer-events: none;
  background: #A3A3A3;
}
#ticket .tc-calendar-btn__back {
  border: 1px solid #A3A3A3;
  background: #fff;
}
#ticket .tc-admission__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 740px;
}
#ticket .tc-admission-date {
  margin-top: 30px;
  padding: 30px 75px;
  border-radius: 6px;
  background: #fff;
}
#ticket .tc-admission-date__item {
  display: flex;
  align-items: center;
  gap: 0 15px;
}
#ticket .tc-admission-date__item ~ .tc-admission-date__item {
  margin-top: 30px;
}
#ticket .tc-admission-date__list {
  font-size: 18px;
  line-height: 1.5;
}
#ticket .tc-admission-date__list dt {
  font-weight: 600;
  color: var(--ticket-sub-color);
}
#ticket .tc-admission-date__list dd {
  flex-grow: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#ticket .tc-admission-date__list dd:not(:has(.tc-admission-date__btn)) {
  padding: 0 75px;
}
#ticket .tc-admission-date__btn {
  display: flex;
  justify-content: space-between;
  width: 180px;
}
#ticket .tc-admission-date__edit {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--ticket-main-color);
  border-radius: 10px;
  width: 85px;
  height: 37px;
  font-size: 16px;
  font-weight: 600;
  color: var(--ticket-main-color);
}
#ticket .tc-admission-date__delete {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  width: 85px;
  height: 37px;
  background: #A3A3A3;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
}
#ticket .tc-admission-date__add {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  background: var(--ticket-main-color);
  font-size: 16px;
  font-weight: 600;
  color: #fff;
}
#ticket .tc-admission-ticket {
  margin-top: 30px;
  padding: 30px 150px;
  border-radius: 6px;
  background: #fff;
}
#ticket .tc-admission-ticket__list {
  font-size: 18px;
}
#ticket .tc-admission-ticket__list th, #ticket .tc-admission-ticket__list td {
  vertical-align: middle;
}
#ticket .tc-admission-ticket__list th {
  padding-right: 15px;
  white-space: nowrap;
}
#ticket .tc-admission-ticket__list td:last-child {
  padding-left: 15px;
  text-align: right;
}
#ticket .tc-admission-ticket__list tbody th, #ticket .tc-admission-ticket__list tbody td {
  padding-bottom: 30px;
}
#ticket .tc-admission-ticket__list label {
  width: 100px;
}
#ticket .tc-admission-ticket__list select {
  padding: 0 25px 0 10px;
  border: 1px solid #222121;
  border-radius: 10px;
  width: 100%;
  height: 40px;
  background: #fff;
}
#ticket .tc-admission-ticket__list select:focus {
  outline: 1px solid var(--ticket-sub-color);
  border-color: var(--ticket-sub-color);
}
#ticket .tc-admission-ticket__txt {
  margin-top: 30px;
  text-align: center;
  font-size: 16px;
  line-height: 1.125;
}
#ticket .tc-admission-btn {
  margin-top: 50px;
}
#ticket .tc-admission-btn__next {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  background: var(--ticket-main-color);
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}
#ticket .tc-admission-btn__next:disabled {
  pointer-events: none;
  background: #A3A3A3;
}
#ticket .tc-entry__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 740px;
}
#ticket .tc-entry-payment {
  margin-top: 50px;
}
#ticket .tc-entry-payment__list dt {
  text-align: center;
  font-size: 18px;
}
#ticket .tc-entry-payment__list label {
  display: block;
  margin: 20px auto 0;
  width: 300px;
}
#ticket .tc-entry-payment__list select {
  padding: 0 25px 0 10px;
  border-radius: 10px;
  width: 100%;
  height: 40px;
  background: #fff;
  font-size: 16px;
}
#ticket .tc-entry-payment__txt {
  margin-top: 20px;
  text-align: center;
  font-size: 14px;
  line-height: 1.5;
}
#ticket .tc-entry-payment__txt a {
  text-decoration: underline;
}
#ticket .tc-entry-companion {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #A3A3A3;
}
#ticket .tc-entry-companion__hdg {
  text-align: center;
  font-size: 18px;
}
#ticket .tc-entry-companion__txt {
  margin-top: 15px;
  text-align: center;
  font-size: 14px;
  line-height: 1.2857142857;
  color: #BE1C1C;
}
#ticket .tc-entry-list {
  margin-top: 20px;
  padding: 25px 190px;
  border-radius: 6px;
  background: #fff;
  font-size: 16px;
}
#ticket .tc-entry-list__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
}
#ticket .tc-entry-list__head h3 {
  color: var(--ticket-sub-color);
}
#ticket .tc-entry-list__head span {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50vw;
  width: 200px;
  height: 26px;
  background: var(--ticket-sub-color);
  color: #fff;
}
#ticket .tc-entry-list__body {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 0;
  margin-top: 20px;
  font-size: 18px;
}
#ticket .tc-entry-list__body dt {
  width: 5em;
}
#ticket .tc-entry-list__body dd {
  width: calc(100% - 5em);
}
#ticket .tc-entry-list__input p {
  margin: 10px 0 -5px;
  font-size: 14px;
  line-height: 1.5;
}
#ticket .tc-entry-list__input dt {
  margin: 20px 0 10px;
}
#ticket .tc-entry-list__input dd ~ dd {
  display: flex;
  justify-content: space-between;
}
#ticket .tc-entry-list__input label {
  width: 110px;
}
#ticket .tc-entry-list__input input,
#ticket .tc-entry-list__input select {
  border: 1px solid #222121;
  border-radius: 10px;
  width: 100%;
  height: 40px;
  background: #fff;
}
#ticket .tc-entry-list__input input:focus,
#ticket .tc-entry-list__input select:focus {
  outline: 1px solid var(--ticket-sub-color);
  border-color: var(--ticket-sub-color);
}
#ticket .tc-entry-list__input input {
  padding: 0 10px;
}
#ticket .tc-entry-list__input select {
  padding: 0 25px 0 10px;
}
#ticket .tc-entry-list__foot {
  margin-top: 20px;
  line-height: 1.5;
}
#ticket .tc-entry-list__foot label {
  display: flex;
  align-items: center;
}
#ticket .tc-entry-list__foot input {
  display: none;
}
#ticket .tc-entry-list__foot input:checked ~ span {
  border-color: transparent;
  background: var(--ticket-main-color);
}
#ticket .tc-entry-list__foot input:checked ~ span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  border: solid #fff;
  border-width: 0 0 2px 2px;
  width: 12px;
  height: 8px;
  content: "";
  transform: translate(-50%, -70%) rotate(-45deg);
}
#ticket .tc-entry-list__foot span {
  flex-shrink: 0;
  position: relative;
  margin-right: 10px;
  border: 1px solid #222121;
  border-radius: 3px;
  width: 20px;
  height: 20px;
}
#ticket .tc-entry-list__foot ~ .tc-entry-list__input {
  display: none;
}
#ticket .tc-entry-btn {
  margin-top: 50px;
}
#ticket .tc-entry-btn button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  font-size: 18px;
}
#ticket .tc-entry-btn li ~ li {
  margin-top: 30px;
}
#ticket .tc-entry-btn__next {
  background: var(--ticket-main-color);
  font-weight: 600;
  color: #fff;
}
#ticket .tc-entry-btn__next:disabled {
  background: #A3A3A3;
}
#ticket .tc-entry-btn__back {
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#ticket .tc-entry-error {
  display: none;
  margin: 50px 0 -30px;
  text-align: center;
  color: #BE1C1C;
}
#ticket .tc-entry-error dt {
  margin-bottom: 0.5em;
  font-size: 16px;
}
#ticket .tc-entry-error dd {
  font-size: 14px;
  line-height: 1.5;
}
#ticket .tc-entry-modal {
  display: none;
  position: relative;
  z-index: 100;
}
#ticket .tc-entry-modal.is-open {
  display: block;
}
#ticket .tc-entry-modal[aria-hidden=false] {
  animation: tc-fadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
#ticket .tc-entry-modal[aria-hidden=true] {
  animation: tc-fadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
#ticket .tc-entry-modal__overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
#ticket .tc-entry-modal__content {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border-radius: 6px;
  width: 760px;
  max-height: 90dvh;
  background: #fff;
}
#ticket .tc-entry-modal__hdg {
  margin-bottom: 30px;
  text-align: center;
  font-size: 21px;
  line-height: 1.2857142857;
  font-weight: 600;
}
#ticket .tc-entry-modal__txt {
  flex-shrink: 1;
  max-height: 450px;
  overflow-y: auto;
}
#ticket .tc-entry-modal__list {
  padding-bottom: 10px;
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-entry-modal__list dt {
  font-weight: 600;
}
#ticket .tc-entry-modal__list dt ~ dt {
  margin-top: 34px;
}
#ticket .tc-entry-modal__list li {
  margin-top: 14px;
  padding-left: 1em;
  text-indent: -1em;
}
#ticket .tc-entry-modal__list a {
  text-decoration: underline;
}
#ticket .tc-entry-modal__agree {
  display: flex;
  justify-content: center;
  margin-top: 30px;
  font-size: 18px;
}
#ticket .tc-entry-modal__label {
  display: flex;
  align-items: center;
}
#ticket .tc-entry-modal__input {
  display: none;
}
#ticket .tc-entry-modal__input:checked ~ .tc-entry-modal__checkbox {
  border-color: transparent;
  background: var(--ticket-main-color);
}
#ticket .tc-entry-modal__input:checked ~ .tc-entry-modal__checkbox::after {
  position: absolute;
  top: 50%;
  left: 50%;
  border: solid #fff;
  border-width: 0 0 2px 2px;
  width: 12px;
  height: 8px;
  content: "";
  transform: translate(-50%, -70%) rotate(-45deg);
}
#ticket .tc-entry-modal__input:disabled ~ .tc-entry-modal__checkbox {
  border-color: transparent;
  background: #EBEBEB;
}
#ticket .tc-entry-modal__checkbox {
  position: relative;
  margin-right: 10px;
  border: 1px solid #222121;
  border-radius: 3px;
  width: 20px;
  height: 20px;
}
#ticket .tc-entry-modal__btn {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  background: var(--ticket-main-color);
  font-size: 16px;
  font-weight: 600;
  color: #fff;
}
#ticket .tc-entry-modal__btn:disabled {
  background: #A3A3A3;
}
#ticket .tc-confirm__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 740px;
}
#ticket .tc-confirm-sec {
  margin-top: 30px;
  padding: 25px 0;
  border-radius: 5px;
  background: #fff;
}
#ticket .tc-confirm-sec ~ .tc-confirm-sec {
  margin-top: 30px;
}
#ticket .tc-confirm-sec__wrap {
  display: flex;
  justify-content: space-between;
}
#ticket .tc-confirm-sec__wrap .tc-confirm-sec {
  padding: 25px;
  width: calc(50% - 16px);
}
#ticket .tc-confirm-sec__hdg {
  text-align: center;
  font-size: 21px;
  font-weight: 600;
}
#ticket .tc-confirm-date {
  margin-top: 30px;
  padding: 0 160px;
}
#ticket .tc-confirm-date__item ~ .tc-confirm-date__item {
  margin-top: 25px;
}
#ticket .tc-confirm-date__list {
  font-size: 18px;
  line-height: 1.5;
}
#ticket .tc-confirm-date__list dt {
  font-weight: 600;
  color: var(--ticket-sub-color);
}
#ticket .tc-confirm-date__list dt:not(:empty) {
  margin-bottom: 10px;
}
#ticket .tc-confirm-date__list dd {
  flex-grow: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#ticket .tc-confirm-date__btn {
  display: flex;
  justify-content: space-between;
  width: 180px;
}
#ticket .tc-confirm-date__edit {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--ticket-main-color);
  border-radius: 10px;
  width: 85px;
  height: 37px;
  font-size: 16px;
  font-weight: 600;
  color: var(--ticket-main-color);
}
#ticket .tc-confirm-info {
  display: table;
  margin: 30px auto 0;
}
#ticket .tc-confirm-info__list {
  font-size: 18px;
}
#ticket .tc-confirm-info__list li ~ li {
  margin-top: 25px;
}
#ticket .tc-confirm-info__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
  font-weight: 600;
  background: #A3A3A3;
  color: #fff;
}
#ticket .tc-confirm-info__head {
  width: auto;
  font-size: 18px;
  line-height: 1.1666666667;
}
#ticket .tc-confirm-info__head tr ~ tr > * {
  padding-top: 25px;
}
#ticket .tc-confirm-info__head th {
  padding-right: 30px;
  white-space: nowrap;
}
#ticket .tc-confirm-info__body {
  margin-top: 25px;
  width: auto;
  font-size: 14px;
}
#ticket .tc-confirm-info__body tr ~ tr > * {
  padding-top: 20px;
}
#ticket .tc-confirm-info__body tr ~ tr > *:has(table) {
  padding-top: 10px;
}
#ticket .tc-confirm-info__body table tr ~ tr > * {
  padding-top: 10px;
}
#ticket .tc-confirm-info__body th {
  padding-right: 15px;
}
#ticket .tc-confirm-info__body td + td {
  padding-left: 15px;
}
#ticket .tc-confirm-list {
  margin: 30px auto 0;
  width: 340px;
  font-size: 18px;
}
#ticket .tc-confirm-list__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 60px;
  padding: 0 60px;
}
#ticket .tc-confirm-list__wrap .tc-confirm-list {
  width: 280px;
}
#ticket .tc-confirm-list__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
  font-weight: 600;
}
#ticket .tc-confirm-list__head h3 {
  color: var(--ticket-sub-color);
}
#ticket .tc-confirm-list__head span {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50vw;
  width: 200px;
  height: 26px;
  background: var(--ticket-sub-color);
  color: #fff;
}
#ticket .tc-confirm-list__body {
  display: flex;
  flex-wrap: wrap;
  gap: 25px 0;
  margin-top: 20px;
}
#ticket .tc-confirm-list__body dt {
  width: 5em;
}
#ticket .tc-confirm-list__body dd {
  width: calc(100% - 5em);
}
#ticket .tc-confirm-list__foot {
  margin-top: 20px;
  line-height: 1.5;
}
#ticket .tc-confirm-list__foot dl {
  overflow: hidden;
}
#ticket .tc-confirm-list__foot dl > * {
  margin-top: 10px;
}
#ticket .tc-confirm-list__foot dl dt {
  clear: both;
  float: left;
  margin-right: 10px;
}
#ticket .tc-confirm-btn {
  margin-top: 30px;
}
#ticket .tc-confirm-btn__txt {
  margin: 50px 0 20px;
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
  color: #BE1C1C;
}
#ticket .tc-confirm-btn__edit {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border: 1px solid var(--ticket-main-color);
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
  font-weight: 600;
  color: var(--ticket-main-color);
}
#ticket .tc-confirm-btn__next {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  background: var(--ticket-main-color);
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}
#ticket .tc-confirm-btn__next:disabled {
  pointer-events: none;
  background: #A3A3A3;
}
#ticket .tc-complete__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 700px;
}
#ticket .tc-complete-sec {
  margin-top: 30px;
  padding: 30px;
  border-radius: 10px;
  background: #fff;
}
#ticket .tc-complete-sec__txt {
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-complete-sec__txt p ~ p {
  margin-top: 20px;
}
#ticket .tc-complete-sec__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border: 1px solid var(--ticket-main-color);
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
  font-weight: 600;
  color: var(--ticket-main-color);
}
#ticket .tc-ticket .is-loto {
  background: #00A0E9;
  color: #fff;
}
#ticket .tc-ticket .is-available {
  background: #C7973F;
  color: #fff;
}
#ticket .tc-ticket .is-entry,
#ticket .tc-ticket .is-elected {
  border-color: #00A0E9;
  color: #00A0E9;
}
#ticket .tc-ticket .is-cancel {
  border-color: #BE1C1C;
  color: #BE1C1C;
}
#ticket .tc-ticket .is-failed {
  border-color: #A3A3A3;
  color: #A3A3A3;
}
#ticket .tc-ticket .is-purchased {
  border-color: #C7973F;
  color: #C7973F;
}
#ticket .tc-ticket__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 740px;
}
#ticket .tc-ticket-list {
  margin-top: 30px;
}
#ticket .tc-ticket-list__item {
  position: relative;
  padding: 18px 30px;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#ticket .tc-ticket-list__item.is-disabled {
  background: #EBEBEB;
}
#ticket .tc-ticket-list__item ~ .tc-ticket-list__item {
  margin-top: 30px;
}
#ticket .tc-ticket-list__status {
  display: flex;
  align-items: flex-start;
  gap: 0 10px;
  font-size: 14px;
  font-weight: 600;
}
#ticket .tc-ticket-list__status li {
  display: flex;
  align-items: center;
  padding: 0 15px;
  border-radius: 8px;
  border: 1px solid transparent;
  height: 35px;
}
#ticket .tc-ticket-list__hdg {
  margin-top: 20px;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.5;
}
#ticket .tc-ticket-list__data {
  margin-top: 20px;
  width: 400px;
  font-size: 16px;
  line-height: 1.3125;
}
#ticket .tc-ticket-list__data li ~ li {
  margin-top: 10px;
}
#ticket .tc-ticket-list__data a {
  text-decoration: underline;
}
#ticket .tc-ticket-list__btn {
  position: absolute;
  right: 30px;
  bottom: 30px;
}
#ticket .tc-ticket-list__btn a, #ticket .tc-ticket-list__btn button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border: 1px solid;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
  background: #fff;
}
#ticket .tc-ticket-list__btn li ~ li {
  margin-top: 20px;
}
#ticket .tc-ticket-list__btn--next {
  border-color: #00A0E9;
  font-weight: 600;
  color: #00A0E9;
}
#ticket .tc-ticket-list__btn--cancel {
  border-color: #BE1C1C;
  color: #BE1C1C;
}
#ticket .tc-ticket-btn {
  margin-top: 50px;
}
#ticket .tc-ticket-btn__back {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  font-size: 18px;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#ticket .tc-detail .is-loto {
  background: #00A0E9;
  color: #fff;
}
#ticket .tc-detail .is-available {
  background: #C7973F;
  color: #fff;
}
#ticket .tc-detail .is-entry,
#ticket .tc-detail .is-elected {
  border-color: #00A0E9;
  color: #00A0E9;
}
#ticket .tc-detail .is-cancel {
  border-color: #BE1C1C;
  color: #BE1C1C;
}
#ticket .tc-detail .is-failed {
  border-color: #A3A3A3;
  color: #A3A3A3;
}
#ticket .tc-detail .is-purchased {
  border-color: #C7973F;
  color: #C7973F;
}
#ticket .tc-detail__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 740px;
}
#ticket .tc-detail__inner--entry {
  width: 840px;
}
#ticket .tc-detail__inner--entry .tc-detail-list__wrap .tc-detail-list {
  width: 360px;
}
#ticket .tc-detail-ticket {
  position: relative;
  margin-top: 30px;
}
#ticket .tc-detail-ticket__status {
  display: flex;
  align-items: flex-start;
  gap: 0 10px;
  font-size: 14px;
  font-weight: 600;
}
#ticket .tc-detail-ticket__status li {
  display: flex;
  align-items: center;
  padding: 0 15px;
  border-radius: 8px;
  border: 1px solid transparent;
  height: 35px;
}
#ticket .tc-detail-ticket__hdg {
  margin-top: 20px;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.5;
}
#ticket .tc-detail-ticket__data {
  margin-top: 20px;
  width: 400px;
  font-size: 16px;
  line-height: 1.3125;
}
#ticket .tc-detail-ticket__data li ~ li {
  margin-top: 10px;
}
#ticket .tc-detail-ticket__data a {
  text-decoration: underline;
}
#ticket .tc-detail-ticket__btn {
  position: absolute;
  right: 0;
  bottom: 10px;
}
#ticket .tc-detail-ticket__btn a, #ticket .tc-detail-ticket__btn button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
}
#ticket .tc-detail-ticket__btn li ~ li {
  margin-top: 20px;
}
#ticket .tc-detail-ticket__btn--next {
  background: #fff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16);
}
#ticket .tc-detail-ticket__btn--cancel {
  border: 1px solid #BE1C1C;
  color: #BE1C1C;
}
#ticket .tc-detail-sec__item {
  margin-top: 30px;
  padding: 25px 30px;
  border-radius: 5px;
  background: #fff;
}
#ticket .tc-detail-sec__wrap {
  display: flex;
  justify-content: space-between;
}
#ticket .tc-detail-sec__wrap .tc-detail-sec__item {
  width: calc(50% - 16px);
}
#ticket .tc-detail-sec__hdg {
  text-align: center;
  font-size: 21px;
  font-weight: 600;
}
#ticket .tc-detail-sec__txt {
  margin-top: 15px;
  text-align: center;
  font-size: 16px;
  line-height: 1.3125;
}
#ticket .tc-detail-sec__msg {
  margin-top: 10px;
  text-align: center;
  font-size: 14px;
  line-height: 1.5;
  color: #BE1C1C;
}
#ticket .tc-detail-sec__notice {
  margin-top: 15px;
  text-align: center;
  font-size: 14px;
  color: #BE1C1C;
}
#ticket .tc-detail-info {
  display: table;
  margin: 30px auto 0;
}
#ticket .tc-detail-info__list {
  font-size: 18px;
}
#ticket .tc-detail-info__list li ~ li {
  margin-top: 25px;
}
#ticket .tc-detail-info__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
  font-weight: 600;
  background: #A3A3A3;
  color: #fff;
}
#ticket .tc-detail-info__head {
  width: auto;
  font-size: 18px;
  line-height: 1.1666666667;
}
#ticket .tc-detail-info__head tr ~ tr > * {
  padding-top: 25px;
}
#ticket .tc-detail-info__head th {
  padding-right: 30px;
  white-space: nowrap;
}
#ticket .tc-detail-info__body {
  margin-top: 25px;
  width: auto;
  font-size: 14px;
}
#ticket .tc-detail-info__body tr ~ tr > * {
  padding-top: 20px;
}
#ticket .tc-detail-info__body tr ~ tr > *:has(table) {
  padding-top: 10px;
}
#ticket .tc-detail-info__body table tr ~ tr > * {
  padding-top: 10px;
}
#ticket .tc-detail-info__body th {
  padding-right: 15px;
}
#ticket .tc-detail-info__body td + td {
  padding-left: 15px;
}
#ticket .tc-detail-list {
  margin: 30px auto 0;
  width: 340px;
  font-size: 16px;
}
#ticket .tc-detail-list:has(.tc-detail-list__input) {
  width: 360px;
}
#ticket .tc-detail-list__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 60px;
}
#ticket .tc-detail-list__wrap .tc-detail-list {
  width: 300px;
}
#ticket .tc-detail-list__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
}
#ticket .tc-detail-list__head h3 {
  color: #C7973F;
}
#ticket .tc-detail-list__head span {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50vw;
  width: 200px;
  height: 26px;
  background: #C7973F;
  color: #fff;
}
#ticket .tc-detail-list__body {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 0;
  margin-top: 20px;
  font-size: 18px;
}
#ticket .tc-detail-list__body dt {
  width: 5em;
}
#ticket .tc-detail-list__body dd {
  width: calc(100% - 5em);
}
#ticket .tc-detail-list__input p {
  margin: 10px 0 -5px;
  font-size: 14px;
  line-height: 1.5;
}
#ticket .tc-detail-list__input dt {
  margin: 20px 0 10px;
}
#ticket .tc-detail-list__input dd ~ dd {
  display: flex;
  justify-content: space-between;
}
#ticket .tc-detail-list__input label {
  width: 110px;
}
#ticket .tc-detail-list__input input,
#ticket .tc-detail-list__input select {
  border: 1px solid #222121;
  border-radius: 10px;
  width: 100%;
  height: 40px;
  background: #fff;
}
#ticket .tc-detail-list__input input:focus,
#ticket .tc-detail-list__input select:focus {
  outline: 1px solid #C7973F;
  border-color: #C7973F;
}
#ticket .tc-detail-list__input input {
  padding: 0 10px;
}
#ticket .tc-detail-list__input select {
  padding: 0 25px 0 10px;
}
#ticket .tc-detail-list__foot {
  margin-top: 20px;
  line-height: 1.5;
}
#ticket .tc-detail-list__foot p {
  font-size: 18px;
  line-height: 1.5;
}
#ticket .tc-detail-list__foot dl {
  font-size: 18px;
  line-height: 1.5;
  overflow: hidden;
}
#ticket .tc-detail-list__foot dl > * {
  margin-top: 10px;
}
#ticket .tc-detail-list__foot dl dt {
  clear: both;
  float: left;
  margin-right: 10px;
}
#ticket .tc-detail-list__foot label {
  display: flex;
  align-items: center;
}
#ticket .tc-detail-list__foot input {
  display: none;
}
#ticket .tc-detail-list__foot input:checked ~ span {
  border-color: transparent;
  background: #C7973F;
}
#ticket .tc-detail-list__foot input:checked ~ span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  border: solid #fff;
  border-width: 0 0 2px 2px;
  width: 12px;
  height: 8px;
  content: "";
  transform: translate(-50%, -70%) rotate(-45deg);
}
#ticket .tc-detail-list__foot span {
  flex-shrink: 0;
  position: relative;
  margin-right: 10px;
  border: 1px solid #222121;
  border-radius: 3px;
  width: 20px;
  height: 20px;
}
#ticket .tc-detail-list__foot ~ .tc-detail-list__input {
  display: none;
}
#ticket .tc-detail-list__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 30px auto 0;
  border: 1px solid #00A0E9;
  border-radius: 50vw;
  width: 260px;
  height: 50px;
  font-size: 16px;
  font-weight: 600;
  color: #00A0E9;
}
#ticket .tc-detail-btn {
  margin-top: 50px;
}
#ticket .tc-detail-btn__back {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  font-size: 18px;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#ticket .tc-info__inner {
  margin: 0 auto;
  padding: 40px 0 100px;
  width: 100%;
  max-width: 1500px;
}
#ticket .tc-info-sec {
  margin-top: 30px;
  padding: 40px 0;
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}
#ticket .tc-info-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 322px));
  justify-content: space-around;
  gap: 0 2%;
  padding: 0 2%;
}
#ticket .tc-info-list__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  max-width: 322px;
}
#ticket .tc-info-list__hdg {
  padding-left: 20px;
  text-indent: -20px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}
#ticket .tc-info-list__hdg span {
  display: inline-block;
  width: 20px;
  text-indent: 0;
}
#ticket .tc-info-list__img {
  margin-top: 20px;
}
#ticket .tc-info-list__txt {
  margin-top: 15px;
  font-size: 14px;
  line-height: 1.5;
}
#ticket .tc-info-list__txt em {
  color: #BE1C1C;
}
#ticket .tc-info-list__doc {
  margin-top: 25px;
  font-size: 14px;
  line-height: 1.5;
}
#ticket .tc-info-list__doc dt {
  margin-bottom: 10px;
  font-weight: 600;
}
#ticket .tc-info-list__doc dd {
  padding: 15px 20px;
  border: 1px solid #222121;
  border-radius: 6px;
}
#ticket .tc-info-list__doc ul {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 0;
  padding-left: 1em;
  list-style-type: disc;
}
#ticket .tc-info-list__doc ul li:nth-child(odd) {
  width: 60%;
}
#ticket .tc-info-list__doc ul li:nth-child(even) {
  width: 40%;
}
#ticket .tc-info-btn {
  margin-top: 40px;
}
#ticket .tc-info-btn__next {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 50vw;
  width: 360px;
  height: 50px;
  background: #fff;
  font-size: 18px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#ticket .tc-faq__inner {
  padding: 70px 0 100px;
}
#ticket .tc-faq-hdg {
  padding: 14px;
  background: #222121;
  text-align: center;
  font-size: 21px;
  font-weight: bold;
  line-height: 1.5238095238;
  color: #fff;
}
#ticket .tc-faq-sec {
  margin: 74px auto 0;
  width: 745px;
}
#ticket .tc-faq-sec ~ .tc-faq-sec {
  margin-top: 65px;
}
#ticket .tc-faq-sec__hdg {
  position: relative;
  margin-bottom: 14px;
  padding-left: 25px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3333333333;
}
#ticket .tc-faq-sec__hdg::before {
  position: absolute;
  top: 3px;
  left: 0;
  width: 18px;
  height: 18px;
  background: #222121;
  content: "";
}
#ticket .tc-faq-list {
  border-radius: 6px;
  padding: 35px 30px;
  background: #fff;
}
#ticket .tc-faq-list__item ~ li {
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px solid #EBEBEB;
}
#ticket .tc-faq-qa {
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-faq-qa__q, #ticket .tc-faq-qa__a {
  position: relative;
  padding-left: 25px;
}
#ticket .tc-faq-qa__q::before, #ticket .tc-faq-qa__a::before {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
  color: #C7973F;
}
#ticket .tc-faq-qa__q {
  font-weight: bold;
}
#ticket .tc-faq-qa__q::before {
  content: "Q.";
}
#ticket .tc-faq-qa__a {
  margin-top: 14px;
}
#ticket .tc-faq-qa__a::before {
  content: "A.";
}
#ticket .tc-faq-qa__a a {
  text-decoration: underline;
}
#ticket .tc-faq-note {
  margin: 65px auto 0;
  width: 745px;
  font-size: 16px;
  line-height: 1.5;
}
#ticket .tc-faq-note a {
  text-decoration: underline;
}
#ticket ~ #cduFooter {
  padding-top: 25px;
  min-width: 1200px;
  background: none;
}