.price__container {
  margin: 0 auto;
  width: min(100%, 900px);
  container-type: inline-size;
}

.price__lead {
  position: relative;
  margin: 0 auto 1em;
  padding: 0.8em 1em;
  width: min(480px, 100%);
  text-align: center;
  background-color: #fff;
  border: 3px solid #3DB9EB;
}
@container (min-width: 600px) {
  .price__lead {
    padding: 1em;
  }
}

.price__heading {
  display: inline-block;
  position: relative;
  border-bottom: 4px solid #3DB9EB;
  margin-bottom: 0.2em;
}
.price__heading::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 1.5em;
  height: 4px;
  background: #F2AB2F;
}
@media (max-width: 800px) {
  .price__heading::after {
    width: 1.5em;
  }
}

.price__list {
  margin: 0 auto 40px;
  width: min(800px, 96%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
}
@container (max-width: 600px) {
  .price__list {
    width: 100%;
  }
}

.price__item {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 max(250px, 30%);
          flex: 1 0 max(250px, 30%);
  background-color: #D4F2FF;
  border-radius: 10px;
  overflow: hidden;
  max-width: 400px;
}
.price__item h3 {
  display: grid;
  place-content: center;
  place-items: center;
  grid-auto-flow: column;
  position: relative;
  height: 2.2em;
  background-color: #3DB9EB;
  font-size: 20px;
  z-index: 0;
}
.price__item h3 .--small {
  margin-left: 0.2em;
  font-size: 0.8em;
}
.price__item p {
  padding: 0.7em 1.2em 1em;
  font-weight: normal;
}

.fees {
  margin: 0 auto;
  width: min(800px, 100%);
  container-type: inline-size;
  container-name: fees;
}

.fees__heading {
  z-index: 1;
  position: relative;
  margin: 0 auto 0.8em;
  font-size: clamp(18px, 4.6666666667px + 1.6666666667vw, 26px);
  background: #EE6337;
  font-size: 24px;
  text-align: center;
  line-height: 3;
  text-shadow: 1px 1px 0px #EE6337, -1px 1px 0px #EE6337, 1px -1px 0px #EE6337, -1px -1px 0px #EE6337, 1px 0px 0px #EE6337, 0px 1px 0px #EE6337, -1px 0px 0px #EE6337, 0px -1px 0px #EE6337;
}
@media (max-width: 800px) {
  .fees__heading {
    font-size: 18px;
  }
}
.fees__heading::before {
  z-index: -1;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 60%;
  height: 2.5em;
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../images/text_price_slogan_01.svg);
}

.tickets,
.monthly,
.unlimited {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 2em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.tickets__list,
.monthly__list,
.unlimited__list {
  border-collapse: collapse;
  overflow: hidden;
}
.tickets__heading,
.monthly__heading,
.unlimited__heading {
  padding: 0.2em 0.5em;
  background-color: #3DB9EB;
  font-size: 22px;
}
.tickets__heading .--small,
.monthly__heading .--small,
.unlimited__heading .--small {
  margin-left: 0.2em;
  font-size: 0.8em;
}
@container fees (min-width: 500px) {
  .tickets__heading,
  .monthly__heading,
  .unlimited__heading {
    min-width: 500px;
  }
}
@container fees (max-width: 600px) {
  .tickets__heading,
  .monthly__heading,
  .unlimited__heading {
    font-size: 18px;
  }
}
.tickets th,
.tickets td,
.monthly th,
.monthly td,
.unlimited th,
.unlimited td {
  padding: 0.6em 0.8em;
}
@container (max-width: 570px) {
  .tickets th,
  .tickets td,
  .monthly th,
  .monthly td,
  .unlimited th,
  .unlimited td {
    padding: 0.5em 0.2em;
  }
}
.tickets__caption,
.monthly__caption,
.unlimited__caption {
  width: 100%;
  padding: 0.7em 1.5em;
  background-color: #D4F2FF;
}

@container fees (max-width: 570px) {
  .tickets thead,
  .tickets tr:has(.tickets__expiry) {
    display: none;
  }
}

.tickets__heading {
  margin-bottom: 8px;
}

.tickets__list {
  margin-bottom: 0.5em;
}
@container fees (max-width: 570px) {
  .tickets__list {
    margin-bottom: 0;
  }
}

.tickets__header,
.tickets__lesson {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.tickets__header {
  margin-bottom: 4px;
  gap: 2px;
}

.tickets__head:not(:first-child) {
  background-color: #fff;
  border-radius: 5px;
}
.tickets__head:not(:first-child).--8 {
  border: solid 2px #F2AB2F;
  border-bottom: solid 4px #F2AB2F;
}
.tickets__head:not(:first-child).--16 {
  border: solid 2px #F08733;
  border-bottom: solid 4px #F08733;
}
.tickets__head:not(:first-child).--visiter {
  border: solid 2px #99daf5;
  border-bottom: solid 4px #99daf5;
}

.tickets__lesson {
  text-align: center;
  margin-bottom: 4px;
}

.tickets__type {
  text-align: center;
}

@container fees (min-width: 570px) {
  .tickets__type,
  .tickets__expiry:first-child {
    position: relative;
    margin-right: 8px;
    background-color: #3DB9EB;
  }
  .tickets__type:after,
  .tickets__expiry:first-child:after {
    content: "";
    display: block;
    position: absolute;
    border: 0.5em solid transparent;
    border-left-color: #3DB9EB;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@container fees (min-width: 570px) {
  .tickets__lesson:nth-of-type(1) .tickets__type {
    background-color: #6bcaf0;
  }
  .tickets__lesson:nth-of-type(1) .tickets__type:after {
    border-left-color: #6bcaf0;
  }
  .tickets__lesson:nth-of-type(2) .tickets__type {
    background-color: #3db9eb;
  }
  .tickets__lesson:nth-of-type(2) .tickets__type:after {
    border-left-color: #3db9eb;
  }
  .tickets__lesson:nth-of-type(3) .tickets__type {
    background-color: #32bef6;
  }
  .tickets__lesson:nth-of-type(3) .tickets__type:after {
    border-left-color: #32bef6;
  }
  .tickets__lesson:nth-of-type(4) .tickets__type {
    background-color: #F2AB2F;
  }
  .tickets__lesson:nth-of-type(4) .tickets__type:after {
    border-left-color: #F2AB2F;
  }
  .tickets__lesson:nth-of-type(5) .tickets__type {
    background-color: #F08733;
  }
  .tickets__lesson:nth-of-type(5) .tickets__type:after {
    border-left-color: #F08733;
  }
}
.tickets__price,
.tickets__expiry:not(:last-child) {
  background-color: #D4F2FF;
}

.tickets__price:not(:last-child),
.tickets__expiry:nth-child(2) {
  position: relative;
}
.tickets__price:not(:last-child):after,
.tickets__expiry:nth-child(2):after {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 70%;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
  background-color: #3DB9EB;
}

.tickets__expiry:first-child {
  background-color: #fff;
  border: solid 2px #3DB9EB;
}

.tickets__price div {
  display: none;
}
@container (max-width: 570px) {
  .tickets__price div {
    display: block;
  }
}

@container fees (max-width: 570px) {
  .tickets {
    width: min(500px, 96%);
  }
  .tickets__list {
    width: 100%;
  }
  .tickets__lesson {
    grid-template-columns: repeat(3, minmax(6em, 1fr));
    margin: 0 auto 1em;
    border-radius: 10px;
    overflow: hidden;
  }
  .tickets__type {
    grid-column: 1/4;
    background-color: #fff;
  }
  .tickets__lesson:nth-of-type(1) {
    border: solid 2px #6bcaf0;
  }
  .tickets__lesson:nth-of-type(1) .tickets__type {
    background-color: #6bcaf0;
  }
  .tickets__lesson:nth-of-type(2) {
    border: solid 2px #3db9eb;
  }
  .tickets__lesson:nth-of-type(2) .tickets__type {
    background-color: #3db9eb;
  }
  .tickets__lesson:nth-of-type(3) {
    border: solid 2px #32bef6;
  }
  .tickets__lesson:nth-of-type(3) .tickets__type {
    background-color: #32bef6;
  }
  .tickets__lesson:nth-of-type(4) {
    border: solid 2px #F2AB2F;
  }
  .tickets__lesson:nth-of-type(4) .tickets__type {
    background-color: #F2AB2F;
  }
  .tickets__lesson:nth-of-type(5) {
    border: solid 2px #F08733;
  }
  .tickets__lesson:nth-of-type(5) .tickets__type {
    background-color: #F08733;
  }
  .tickets__price {
    background-color: #fff;
  }
  .tickets__price .--tickets {
    font-size: 14px;
    padding: 0.2em 0;
  }
  .tickets__price:nth-of-type(1) .--tickets {
    background-color: #F2E52F;
  }
  .tickets__price:nth-of-type(2) .--tickets {
    background-color: #F2E52F;
  }
  .tickets__price:nth-of-type(3) .--tickets {
    background-color: #D4F2FF;
  }
  .tickets__price .--price {
    display: inline-block;
    font-size: 22px;
    margin: 0.1em auto;
    border-bottom: solid 4px #EE6337;
  }
  .tickets__price .--yen {
    font-size: 14px;
  }
  .tickets__price .--expiry {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    padding: 0.1em 0.5em;
    font-size: 14px;
  }
}
@container fees (max-width: 570px) {
  .monthly thead,
  .monthly tr:has(.monthly__expiry) {
    display: none;
  }
}

.monthly__heading {
  margin-bottom: 8px;
}

.monthly__list {
  margin-bottom: 0.5em;
}
@container fees (max-width: 570px) {
  .monthly__list {
    margin-bottom: 0;
  }
}

.monthly__header,
.monthly__lesson {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.monthly__header {
  margin-bottom: 4px;
  gap: 2px;
}

.monthly__head:not(:first-child) {
  background-color: #fff;
  border-radius: 5px;
}
.monthly__head:not(:first-child).--1 {
  border: solid 2px #F2AB2F;
  border-bottom: solid 4px #F2AB2F;
}
.monthly__head:not(:first-child).--2 {
  border: solid 2px #F08733;
  border-bottom: solid 4px #F08733;
}

.monthly__lesson {
  text-align: center;
  margin-bottom: 4px;
}

.monthly__type {
  text-align: center;
}

@container fees (min-width: 570px) {
  .monthly__type {
    position: relative;
    margin-right: 8px;
    background-color: #3DB9EB;
  }
  .monthly__type:after {
    content: "";
    display: block;
    position: absolute;
    border: 0.5em solid transparent;
    border-left-color: #3DB9EB;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@container fees (min-width: 570px) {
  .monthly__lesson:nth-of-type(1) .monthly__type {
    background-color: #6bcaf0;
  }
  .monthly__lesson:nth-of-type(1) .monthly__type:after {
    border-left-color: #6bcaf0;
  }
  .monthly__lesson:nth-of-type(2) .monthly__type {
    background-color: #3db9eb;
  }
  .monthly__lesson:nth-of-type(2) .monthly__type:after {
    border-left-color: #3db9eb;
  }
  .monthly__lesson:nth-of-type(3) .monthly__type {
    background-color: #32bef6;
  }
  .monthly__lesson:nth-of-type(3) .monthly__type:after {
    border-left-color: #32bef6;
  }
  .monthly__lesson:nth-of-type(4) .monthly__type {
    background-color: #F2AB2F;
  }
  .monthly__lesson:nth-of-type(4) .monthly__type:after {
    border-left-color: #F2AB2F;
  }
  .monthly__lesson:nth-of-type(5) .monthly__type {
    background-color: #F08733;
  }
  .monthly__lesson:nth-of-type(5) .monthly__type:after {
    border-left-color: #F08733;
  }
  .monthly__lesson:nth-of-type(6) .monthly__type {
    background-color: #fd4848;
  }
  .monthly__lesson:nth-of-type(6) .monthly__type:after {
    border-left-color: #fd4848;
  }
}
.monthly__price {
  background-color: #D4F2FF;
}

.monthly__price:not(:last-child) {
  position: relative;
}
.monthly__price:not(:last-child):after {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 70%;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
  background-color: #3DB9EB;
}

.monthly__price div {
  display: none;
}
@container (max-width: 570px) {
  .monthly__price div {
    display: block;
  }
}

@container fees (max-width: 570px) {
  .monthly {
    width: min(500px, 96%);
  }
  .monthly__list {
    width: 100%;
  }
  .monthly__lesson {
    grid-template-columns: repeat(2, minmax(6em, 1fr));
    margin: 0 auto 1em;
    border-radius: 10px;
    overflow: hidden;
    width: min(400px, 100%);
  }
  .monthly__type {
    grid-column: 1/3;
    background-color: #fff;
  }
  .monthly__lesson:nth-of-type(1) {
    border: solid 2px #6bcaf0;
  }
  .monthly__lesson:nth-of-type(1) .monthly__type {
    background-color: #6bcaf0;
  }
  .monthly__lesson:nth-of-type(2) {
    border: solid 2px #3db9eb;
  }
  .monthly__lesson:nth-of-type(2) .monthly__type {
    background-color: #3db9eb;
  }
  .monthly__lesson:nth-of-type(3) {
    border: solid 2px #32bef6;
  }
  .monthly__lesson:nth-of-type(3) .monthly__type {
    background-color: #32bef6;
  }
  .monthly__lesson:nth-of-type(4) {
    border: solid 2px #F2AB2F;
  }
  .monthly__lesson:nth-of-type(4) .monthly__type {
    background-color: #F2AB2F;
  }
  .monthly__lesson:nth-of-type(5) {
    border: solid 2px #F08733;
  }
  .monthly__lesson:nth-of-type(5) .monthly__type {
    background-color: #F08733;
  }
  .monthly__lesson:nth-of-type(6) {
    border: solid 2px #fd4848;
  }
  .monthly__lesson:nth-of-type(6) .monthly__type {
    background-color: #fd4848;
  }
  .monthly__price {
    background-color: #fff;
  }
  .monthly__price .--monthly {
    font-size: 14px;
    padding: 0.2em 0;
  }
  .monthly__price:nth-of-type(1) .--monthly {
    background-color: #F2E52F;
  }
  .monthly__price:nth-of-type(2) .--monthly {
    background-color: #F2E52F;
  }
  .monthly__price:nth-of-type(3) .--monthly {
    background-color: #D4F2FF;
  }
  .monthly__price .--price {
    display: inline-block;
    font-size: 22px;
    margin: 0.1em auto;
    border-bottom: solid 4px #EE6337;
  }
  .monthly__price .--yen {
    font-size: 14px;
  }
}
@container fees (max-width: 570px) {
  .unlimited thead {
    display: none;
  }
}

.unlimited__heading {
  margin-bottom: 8px;
}

.unlimited__list {
  margin-bottom: 0.5em;
}
@container fees (max-width: 570px) {
  .unlimited__list {
    margin-bottom: 0;
  }
}

.unlimited__header,
.unlimited__lesson {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.unlimited__header {
  margin-bottom: 4px;
  gap: 2px;
}

.unlimited__lesson {
  text-align: center;
  margin-bottom: 4px;
}

@container fees (min-width: 570px) {
  .unlimited__type {
    position: relative;
    margin-right: 8px;
    background-color: #3DB9EB;
  }
  .unlimited__type:after {
    content: "";
    display: block;
    position: absolute;
    border: 0.5em solid transparent;
    border-left-color: #3DB9EB;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.unlimited__type {
  text-align: center;
}

@container fees (min-width: 570px) {
  .unlimited__lesson:nth-of-type(1) .unlimited__type {
    background-color: #32bef6;
  }
  .unlimited__lesson:nth-of-type(1) .unlimited__type:after {
    border-left-color: #32bef6;
  }
  .unlimited__lesson:nth-of-type(2) .unlimited__type {
    background-color: #F08733;
  }
  .unlimited__lesson:nth-of-type(2) .unlimited__type:after {
    border-left-color: #F08733;
  }
}
.unlimited__price {
  background-color: #D4F2FF;
}

.unlimited__price div {
  display: none;
}
@container (max-width: 570px) {
  .unlimited__price div {
    display: block;
  }
}

@container fees (max-width: 570px) {
  .unlimited {
    width: min(600px, 96%);
  }
  .unlimited tbody {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0 auto 1em;
    border-radius: 10px;
    border: solid 2px #6bcaf0;
    width: min(400px, 100%);
    background-color: #fff;
    overflow: hidden;
  }
  .unlimited__list {
    width: 100%;
  }
  .unlimited__lesson {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .unlimited__lesson:not(:last-child) {
    position: relative;
  }
  .unlimited__lesson:not(:last-child):after {
    content: "";
    display: block;
    position: absolute;
    width: 1px;
    height: 70%;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 1;
    background-color: #3DB9EB;
  }
  .unlimited__type {
    display: none;
  }
  .unlimited__price {
    width: 100%;
    background-color: #fff;
  }
  .unlimited__price .--unlimited {
    font-size: 14px;
    padding: 0.2em 0;
  }
  .unlimited__price:nth-of-type(1) .--unlimited {
    background-color: #F2E52F;
  }
  .unlimited__price:nth-of-type(2) .--unlimited {
    background-color: #F2E52F;
  }
  .unlimited__price:nth-of-type(3) .--unlimited {
    background-color: #D4F2FF;
  }
  .unlimited__price .--price {
    display: inline-block;
    font-size: 22px;
    margin: 0.1em auto;
    border-bottom: solid 4px #EE6337;
  }
  .unlimited__price .--yen {
    font-size: 14px;
  }
}
.prices__container {
  margin: 0 auto;
  width: min(100%, 900px);
  container-type: inline-size;
}

.prices__list {
  margin: 0 auto 1em;
  width: max(500px, 50%);
  line-height: 1.2;
}
@media (max-width: 800px) {
  .prices__list {
    width: min(500px, 100%);
  }
}
.prices__list > div {
  padding: 1em min(50px, 4.883vw);
  background: #fff;
  border-width: 4px;
  border-top-width: 1px;
  border-style: solid;
}
@media (max-width: 800px) {
  .prices__list > div {
    padding: 0.5em min(50px, 4.883vw);
    font-size: 15px;
  }
}
.prices__list dl {
  display: grid;
  grid-template-columns: 1fr auto;
}
.prices__list ul {
  display: grid;
  grid-template-columns: 1fr;
}
.prices__list dt,
.prices__list dd,
.prices__list li {
  min-height: 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.prices__list dt:not(:last-of-type),
.prices__list dd:not(:last-of-type),
.prices__list li:not(:last-of-type) {
  border-bottom-width: 2px;
  border-bottom-style: solid;
}
.prices__list dt,
.prices__list li {
  position: relative;
  padding-left: 2em;
}
.prices__list dt::before,
.prices__list li::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0.5em;
  width: 9px;
  height: 9px;
  -webkit-transform: translateY(-30%);
          transform: translateY(-30%);
  border-radius: 50%;
  border-width: 3px;
  border-style: solid;
}
.prices__list dt {
  padding-right: 0.5em;
}
.prices__list dd {
  padding-right: 1em;
  text-align: right;
}
.prices__list li {
  width: 100%;
}
.prices__list.--basic div, .prices__list.--basic dt, .prices__list.--basic dd, .prices__list.--basic dt::before {
  border-color: #F2E52F;
}
.prices__list.--basic p {
  border-top: 2px solid #F2E52F;
}
.prices__list.--trial div, .prices__list.--trial dt, .prices__list.--trial dd, .prices__list.--trial dt::before {
  border-color: #F2AB2F;
}
.prices__list.--trial p {
  border-top: 2px solid #F2AB2F;
}
.prices__list.--payment div, .prices__list.--payment li, .prices__list.--payment li::before {
  border-color: #3DB9EB;
}
.prices__list.--payment p {
  border-top: 2px solid #3DB9EB;
}
.prices__list.--event div, .prices__list.--event dt, .prices__list.--event dd, .prices__list.--event dt::before {
  border-color: #3DB9EB;
}
.prices__list.--event p {
  border-top: 2px solid #3DB9EB;
}
.prices__list p {
  padding: 0.5em 0 0 0.5em;
  font-weight: 400;
}

.prices__heading {
  z-index: 1;
  position: relative;
  padding: 0 0 0 min(3em, 7.03125vw);
  font-size: 24px;
  line-height: 2.5;
}
@media (max-width: 800px) {
  .prices__heading {
    font-size: 18px;
  }
}
.prices__heading::before {
  z-index: -1;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  width: 60%;
  height: 2.5em;
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: contain;
}
.--basic .prices__heading {
  position: relative;
  background: #F2E52F;
}
.--basic .prices__heading::before {
  background-image: url(../images/text_price_slogan_02.svg);
}
.--trial .prices__heading {
  background: #F2AB2F;
}
.--trial .prices__heading::before {
  background-image: url(../images/text_price_slogan_03.svg);
}
.--payment .prices__heading {
  background: #3DB9EB;
}
.--payment .prices__heading::before {
  background-image: url(../images/text_price_slogan_04.svg);
}
.--event .prices__heading {
  background: #3DB9EB;
}
.prices__heading span {
  margin-left: 0.2em;
  font-size: 16px;
}

.prices__guide {
  text-align: center;
}

.prices__btn {
  margin: 0.5em auto 0;
  display: block;
  position: relative;
  width: 13em;
  height: 3em;
  line-height: 3em;
  font-size: clamp(16px, 9.3333333333px + 0.8333333333vw, 20px);
  text-align: center;
  letter-spacing: 0;
  z-index: 2;
}
.prices__btn a {
  display: block;
  width: 100%;
  height: 100%;
  background: #3DB9EB;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.prices__btn a:link,
.prices__btn a:visited,
.prices__btn a:active,
.prices__btn a:hover {
  color: #fff;
}
.prices__btn a::after {
  content: "";
  display: block;
  width: 0;
  position: absolute;
  top: 50%;
  right: 0.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border-style: solid;
  border-width: 0.6em 0 0.6em 0.6em;
  border-color: transparent transparent transparent #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform-origin: center 0.3em;
          transform-origin: center 0.3em;
}
.prices__btn a:hover::after {
  -webkit-transform: rotateX(180deg);
          transform: rotateX(180deg);
}
@media (max-width: 800px) {
  .prices__btn {
    font-size: 16px;
    width: 13em;
  }
}
.prices__btn::before, .prices__btn::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.prices__btn::before {
  background: #F2E52F;
}
.prices__btn::after {
  background: #EE6337;
}
.prices__btn:hover::before {
  -webkit-transform: rotate(4deg) scale(1.05);
          transform: rotate(4deg) scale(1.05);
}
.prices__btn:hover::after {
  -webkit-transform: rotate(1.5deg) scale(1.05);
          transform: rotate(1.5deg) scale(1.05);
}
.prices__btn span {
  position: relative;
  z-index: 2;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.prices__btn:hover span {
  letter-spacing: 0.075em;
}

.rental table {
  border-collapse: collapse;
}
.rental .--small {
  margin-left: 0.2em;
  font-size: 0.8em;
}

.rental__container {
  margin: 0 auto;
  width: min(800px, 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.rental__heading {
  z-index: 1;
  position: relative;
  margin: 0 auto 1.2em;
  width: min(800px, 100%);
  font-size: clamp(18px, 4.6666666667px + 1.6666666667vw, 26px);
  background: #EE6337;
  font-size: 24px;
  text-align: center;
  line-height: 3;
  text-shadow: 1px 1px 0px #EE6337, -1px 1px 0px #EE6337, 1px -1px 0px #EE6337, -1px -1px 0px #EE6337, 1px 0px 0px #EE6337, 0px 1px 0px #EE6337, -1px 0px 0px #EE6337, 0px -1px 0px #EE6337;
}
@media (max-width: 800px) {
  .rental__heading {
    padding-left: 1em;
    text-align: left;
    font-size: 18px;
  }
}
.rental__heading::before {
  z-index: -1;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 60%;
  height: 3em;
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../images/text_price_slogan_05.svg);
}

.rental__read {
  margin-bottom: 1.5em;
}

.rental-floor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1em;
  width: 100%;
  text-align: center;
}

.rental-floor__item {
  margin-bottom: 1.5em;
}

.rental-floor__caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.5em;
}
.--a .rental-floor__caption {
  border: 4px solid #F08733;
  border-top: 2px solid #F08733;
}
.--b .rental-floor__caption {
  border: 4px solid #F2AB2F;
  border-top: 2px solid #F2AB2F;
}

.rental-floor__name {
  position: relative;
  margin-right: 0.5em;
  width: max(6.5em, 30%);
  line-height: 2.5em;
  font-size: clamp(18px, 14.6666666667px + 0.4166666667vw, 20px);
}
@media (max-width: 800px) {
  .rental-floor__name {
    font-size: 18px;
    line-height: 2.2em;
  }
}
.--a .rental-floor__name {
  background-color: #F08733;
}
.--b .rental-floor__name {
  background-color: #F2AB2F;
}
.rental-floor__name:after {
  content: "";
  display: block;
  position: absolute;
  border: 1.25em solid transparent;
  left: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.--a .rental-floor__name:after {
  border-left-color: #F08733;
}
.--b .rental-floor__name:after {
  border-left-color: #F2AB2F;
}

.rental-floor__size {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #FFF;
}

.rental-floor__img {
  display: block;
  margin: 0 auto 0.3em;
  width: min(512px, 95%);
  border-top: 20px solid #060606;
  border-bottom: 20px solid #060606;
}

.studio-rental {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 3em;
  width: 100%;
  text-align: center;
}
@container (min-width: 400px) {}

.studio-rental__heading {
  margin-bottom: 1em;
  width: min(800px, 100%);
  font-size: 20px;
  line-height: 2.5em;
  background-color: #EE6337;
}
@media (max-width: 800px) {
  .studio-rental__heading {
    font-size: 18px;
  }
}

.studio-rental__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  width: 100%;
}
@container (max-width: 600px) {}

.studio-rental__list {
  border-collapse: collapse;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 2em;
  overflow: hidden;
}

.studio-rental__caption {
  margin-bottom: 0.2em;
  background-color: #3DB9EB;
  line-height: 2.5em;
}

.studio-rental__header,
.studio-rental__prices {
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
}
.--one-hour .studio-rental__header, .--night .studio-rental__header,
.--one-hour .studio-rental__prices,
.--night .studio-rental__prices {
  grid-template-columns: repeat(3, minmax(min(7em, 33%), 7em));
}
.--weekday .studio-rental__header, .--weekend-holiday .studio-rental__header,
.--weekday .studio-rental__prices,
.--weekend-holiday .studio-rental__prices {
  grid-template-columns: repeat(4, minmax(min(7em, 25%), 7em));
}

.studio-rental__head,
.studio-rental__time,
.studio-rental__price {
  padding: 0.2em 0;
}

.studio-rental__prices:not(:first-child) .studio-rental__price {
  border-top: 1px solid #3DB9EB;
}

.studio-rental__time {
  border-top: 1px solid #FFF;
}

.studio-rental__head:not(:last-child) {
  border-right: 1px solid #D4F2FF;
}

.studio-rental__price:not(:last-child) {
  border-right: 1px solid #3DB9EB;
}

.studio-rental__head {
  position: relative;
  background-color: #D4F2FF;
}
.studio-rental__head.--both {
  background-color: #EE6337;
}
.studio-rental__head.--a {
  background-color: #F08733;
}
.studio-rental__head.--b {
  background-color: #F2AB2F;
}

.studio-rental__time {
  background-color: #D4F2FF;
}

.studio-rental__price {
  background-color: #fff;
}

.rental-resource {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 2em;
  width: min(400px, 100%);
  background-color: #fff;
  container-type: inline-size;
}

.rental-resource__heading {
  padding: 0.2em 0.5em;
  width: 100%;
  background-color: #EE6337;
  font-size: 22px;
  text-align: center;
  line-height: 2em;
}
@media (max-width: 800px) {
  .rental-resource__heading {
    font-size: 18px;
  }
}

.rental-resource__list {
  width: 100%;
  border: solid 4px #EE6337;
  border-top: none;
}

.rental-resource__items {
  position: relative;
  display: grid;
  margin: 0 auto;
  padding-left: 0.5em;
  width: min(340px, 100%);
  line-height: 1.8em;
}
@container (max-width: 400px) {
  .rental-resource__items {
    margin: 0 auto;
    padding-left: 0.5em;
  }
}
.--equipment .rental-resource__items {
  grid-template-columns: 1fr 6em;
}
.--staffing .rental-resource__items {
  grid-template-columns: 1fr 9em;
}
.rental-resource__items::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0.5em;
  width: 9px;
  height: 9px;
  -webkit-transform: translateY(-30%);
          transform: translateY(-30%);
  border-radius: 50%;
  border-width: 3px;
  border-style: solid;
  border-color: #EE6337;
}
.rental-resource__items:not(:last-child) {
  border-bottom: solid 2px #EE6337;
}

.rental-resource__resource,
.rental-resource__price {
  padding: 0.6em 1em;
}

.rental-resource__resource {
  text-align: left;
}

.rental-resource__price {
  text-align: right;
}/*# sourceMappingURL=price.css.map */