@charset "UTF-8";
/* CSS Document */

footer.astro-tgc5tww7 {
  background-color: var(--color-core-black)
}

.base-logo.astro-tgc5tww7 {
  width: calc(133 * 1vw * var(--sp-ratio));
  height: calc(39 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .base-logo.astro-tgc5tww7 {
    width: min(calc(160 * 1vw * var(--tb-ratio)), 160 * 1px);
    height: min(calc(46.74 * 1vw * var(--tb-ratio)), 46.74 * 1px)
  }
}

.footer-inner.astro-tgc5tww7 {
  max-width: calc(767 * 1vw * var(--sp-ratio));
  padding: calc(80 * 1vw * var(--sp-ratio)) calc(24 * 1vw * var(--sp-ratio)) calc(40 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .footer-inner.astro-tgc5tww7 {
    max-width: min(calc(1440 * 1vw * var(--tb-ratio)), 1440 * 1px);
    margin: 0 auto;
    padding: min(calc(100 * 1vw * var(--tb-ratio)), 100 * 1px) min(calc(24 * 1vw * var(--tb-ratio)), 24 * 1px)
  }
}

.sns-logos.astro-tgc5tww7 {
  grid-row: 2 / 3;
  grid-column: 1 / 2;
  align-self: flex-end;
  display: flex;
  gap: calc(16 * 1vw * var(--sp-ratio));
  margin-right: calc(60 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .sns-logos.astro-tgc5tww7 {
    grid-row: 1 / 2;
    grid-column: 4 / 5;
    margin-right: min(calc(60 * 1vw * var(--tb-ratio)), 60 * 1px);
    gap: min(calc(16 * 1vw * var(--tb-ratio)), 16 * 1px)
  }
}

.sns-logo.astro-tgc5tww7 svg.astro-tgc5tww7 {
  width: calc(26 * 1vw * var(--sp-ratio));
  height: calc(26 * 1vw * var(--sp-ratio));
  fill: var(--color-gray-400)
}

.sns-logo.astro-tgc5tww7 svg.astro-tgc5tww7:hover {
  cursor: pointer;
  fill: var(--color-white)
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .sns-logo.astro-tgc5tww7 svg.astro-tgc5tww7 {
    width: min(calc(26 * 1vw * var(--tb-ratio)), 26 * 1px);
    height: min(calc(26 * 1vw * var(--tb-ratio)), 26 * 1px)
  }
}

.copy-right.astro-tgc5tww7 {
  background-color: var(--color-origin-gray);
  color: var(--color-gray-400);
  font-size: calc(12 * 1vw * var(--sp-ratio));
  padding: calc(16 * 1vw * var(--sp-ratio)) 0 calc(76 * 1vw * var(--sp-ratio));
  text-align: center
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .copy-right.astro-tgc5tww7 {
    padding: min(calc(30 * 1vw * var(--tb-ratio)), 30 * 1px) 0 min(calc(109 * 1vw * var(--tb-ratio)), 109 * 1px);
    font-size: min(calc(12 * 1vw * var(--tb-ratio)), 12 * 1px)
  }
}

.footer-nav-grid.astro-tgc5tww7 {
  display: grid;
  align-items: flex-start;
  grid-row-gap: calc(40 * 1vw * var(--sp-ratio));
  row-gap: calc(40 * 1vw * var(--sp-ratio));
  grid-column-gap: calc(24 * 1vw * var(--sp-ratio));
  -moz-column-gap: calc(24 * 1vw * var(--sp-ratio));
  column-gap: calc(24 * 1vw * var(--sp-ratio));
  grid-template-rows: repeat(4, auto);
  grid-template-columns: repeat(2, calc(151 * 1vw * var(--sp-ratio)));
  max-width: calc(327 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .footer-nav-grid.astro-tgc5tww7 {
    grid-template-columns: min(calc(195 * 1vw * var(--tb-ratio)), 195 * 1px) min(calc(195 * 1vw * var(--tb-ratio)), 195 * 1px) min(calc(166 * 1vw * var(--tb-ratio)), 166 * 1px) min(calc(140 * 1vw * var(--tb-ratio)), 140 * 1px);
    grid-template-rows: repeat(2, auto);
    row-gap: min(calc(64 * 1vw * var(--tb-ratio)), 64 * 1px);
    -moz-column-gap: min(calc(80 * 1vw * var(--tb-ratio)), 80 * 1px);
    column-gap: min(calc(80 * 1vw * var(--tb-ratio)), 80 * 1px);
    max-width: min(calc(935 * 1vw * var(--tb-ratio)), 935 * 1px);
    margin: 0 auto
  }
}

.column1.astro-tgc5tww7 {
  grid-row: 3 / 4;
  grid-column: 1 / 2
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .column1.astro-tgc5tww7 {
    grid-row: initial;
    grid-column: initial
  }
}

.column2.astro-tgc5tww7 {
  grid-row: 3 / 4;
  grid-column: 2 / 3
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .column2.astro-tgc5tww7 {
    grid-row: initial;
    grid-column: initial
  }
}

.column2.astro-tgc5tww7 .column2-list.astro-tgc5tww7 {
  margin-top: calc(44 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .column2.astro-tgc5tww7 .column2-list.astro-tgc5tww7 {
    margin-top: min(calc(50 * 1vw * var(--tb-ratio)), 50 * 1px)
  }
}

.column3.astro-tgc5tww7 {
  grid-row: 4 / 5;
  grid-column: 1 / 2
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .column3.astro-tgc5tww7 {
    grid-row: initial;
    grid-column: initial
  }
}

.column4.astro-tgc5tww7 {
  grid-row: 4 / 5;
  grid-column: 2 / 3
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .column4.astro-tgc5tww7 {
    grid-row: initial;
    grid-column: initial
  }
}

.footer-nav-title.astro-tgc5tww7 {
  font-family: var(--font-family-axis-bold);
  color: var(--color-white);
  line-height: calc(28.8 * 1vw * var(--sp-ratio));
  font-size: calc(16 * 1vw * var(--sp-ratio));
  letter-spacing: calc(.5 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .footer-nav-title.astro-tgc5tww7 {
    line-height: min(calc(29 * 1vw * var(--tb-ratio)), 29 * 1px);
    font-size: min(calc(16 * 1vw * var(--tb-ratio)), 16 * 1px);
    letter-spacing: min(calc(.5 * 1vw * var(--tb-ratio)), .5 * 1px)
  }
}

.footer-nav-column.astro-tgc5tww7 {
  color: var(--color-gray-400);
  max-width: calc(151.5 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .footer-nav-column.astro-tgc5tww7 {
    grid-row: 2 / 3;
    max-width: auto
  }
}

.footer-nav-column.astro-tgc5tww7 ul.astro-tgc5tww7 {
  margin-top: calc(16 * 1vw * var(--sp-ratio));
  padding: 0;
  line-height: calc(19.6 * 1vw * var(--sp-ratio));
  font-size: calc(14 * 1vw * var(--sp-ratio));
  letter-spacing: calc(.5 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .footer-nav-column.astro-tgc5tww7 ul.astro-tgc5tww7 {
    margin-top: min(calc(24 * 1vw * var(--tb-ratio)), 24 * 1px);
    line-height: min(calc(20 * 1vw * var(--tb-ratio)), 20 * 1px);
    font-size: min(calc(14 * 1vw * var(--tb-ratio)), 14 * 1px);
    letter-spacing: min(calc(.5 * 1vw * var(--tb-ratio)), .5 * 1px)
  }
}

.footer-nav-column.astro-tgc5tww7 li.astro-tgc5tww7+li.astro-tgc5tww7 {
  margin-top: calc(8 * 1vw * var(--sp-ratio))
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .footer-nav-column.astro-tgc5tww7 li.astro-tgc5tww7+li.astro-tgc5tww7 {
    margin-top: min(calc(8 * 1vw * var(--tb-ratio)), 8 * 1px)
  }
}

.footer-nav-column.astro-tgc5tww7 a.astro-tgc5tww7 {
  color: var(--color-gray-400)
}

.footer-nav-column.astro-tgc5tww7 a.astro-tgc5tww7:hover {
  color: var(--color-white)
}

section.astro-g36zkpus {
  position: fixed;
  bottom: 0;
  background: var(--color-gray-100);
  z-index: var(--z-cta);
  width: 100%;
  padding: calc(12 * 1vw * var(--sp-ratio)) 0 calc((12 * 1vw * var(--sp-ratio)) + env(safe-area-inset-bottom));
  padding: calc(12 * 1vw * var(--sp-ratio)) 0 calc(calc(12 * 1vw * var(--sp-ratio)) + env(safe-area-inset-bottom));
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(16 * 1vw * var(--sp-ratio))
}

section.astro-g36zkpus>h2.astro-g36zkpus {
  font-size: calc(20 * 1vw * var(--sp-ratio));
  letter-spacing: calc(-3 * 1vw * var(--sp-ratio));
  line-height: calc(1 * 1vw * var(--sp-ratio))
}

section.astro-g36zkpus>h2.astro-g36zkpus>span.astro-g36zkpus {
  color: var(--color-prime-500)
}

@media screen and (min-width: 1280px),
(min-width: 768px) and (max-width: 1279.98px) {
  section.astro-g36zkpus {
    gap: min(calc(40 * 1vw * var(--tb-ratio)), 40 * 1px);
    padding: min(calc(16 * 1vw * var(--tb-ratio)), 16 * 1px) 0 calc(min(calc(16 * 1vw * var(--tb-ratio)), 16 * 1px) + env(safe-area-inset-bottom))
  }

  section.astro-g36zkpus>h2.astro-g36zkpus {
    font-size: min(calc(32 * 1vw * var(--tb-ratio)), 32 * 1px);
    letter-spacing: max(calc(-4.5 * 1vw * var(--tb-ratio)), -4.5 * 1px);
    line-height: min(calc(1.3 * 1vw * var(--tb-ratio)), 1.3 * 1px)
  }
}

.cta-button.astro-g36zkpus {
  max-width: calc(127 * 1vw * var(--sp-ratio));
  height: calc(36 * 1vw * var(--sp-ratio)) !important;
  letter-spacing: calc(.5 * 1vw * var(--sp-ratio))
}

.cta-button.astro-g36zkpus .icon {
  right: calc(8 * 1vw * var(--sp-ratio)) !important
}

.cta-button.astro-g36zkpus .icon:before,
.cta-button.astro-g36zkpus .icon:after {
  width: calc(5 * 1vw * var(--sp-ratio)) !important;
  height: calc(5 * 1vw * var(--sp-ratio)) !important
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .cta-button.astro-g36zkpus .icon {
    right: min(calc(20 * 1vw * var(--tb-ratio)), 20 * 1px) !important
  }

  .cta-button.astro-g36zkpus .icon:before,
  .cta-button.astro-g36zkpus .icon:after {
    width: min(calc(8 * 1vw * var(--tb-ratio)), 8 * 1px) !important;
    height: min(calc(8 * 1vw * var(--tb-ratio)), 8 * 1px) !important
  }
}

@media screen and (min-width: 1280px),
(min-width: 768px) and (max-width: 1279.98px) {
  .cta-button.astro-g36zkpus {
    max-width: min(calc(260 * 1vw * var(--tb-ratio)), 260 * 1px);
    padding: 0;
    height: min(calc(47 * 1vw * var(--tb-ratio)), 47 * 1px) !important;
    letter-spacing: normal !important
  }
}

.slidein-trigger.astro-g36zkpus {
  transition: transform .4s ease
}

.slidein-trigger.astro-g36zkpus.hidden {
  transform: translateY(100%)
}

.header-wrapper.astro-eiyd7voq {
  position: fixed;
  z-index: var(--z-header);
  top: 0;
  right: 0;
  left: 0;
  padding-bottom: 1px;
  background: var(--color-white);
  transform: translateY(0)
}

.is-scroll.astro-eiyd7voq .header-wrapper.astro-eiyd7voq {
  transition: transform .5s ease
}

.astro-eiyd7voq[data-state=header-hidden] .header-wrapper.astro-eiyd7voq {
  transform: translateY(-100%)
}

.astro-eiyd7voq[data-state=header-up] .header-wrapper.astro-eiyd7voq,
.astro-eiyd7voq[data-state=drawer-opened] .header-wrapper.astro-eiyd7voq,
.astro-eiyd7voq[data-state=select-reason-opened] .header-wrapper.astro-eiyd7voq,
.astro-eiyd7voq[data-leave-state=drawer-opened] .header-wrapper.astro-eiyd7voq,
.astro-eiyd7voq[data-leave-state=select-reason-opened] .header-wrapper.astro-eiyd7voq {
  transform: translateY(calc(var(--header-top-position) * -1))
}

.header-wrapper.astro-eiyd7voq:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  border-bottom: 1px solid #eef0f2
}

.header-body.astro-eiyd7voq {
  display: flex;
  align-items: center
}

.header.astro-eiyd7voq {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 8px 0 8px 20px
}

@media screen and (min-width: 1280px) {
  .header.astro-eiyd7voq {
    display: block;
    max-width: var(--content-width);
    margin: 0 auto;
    padding: 16px 40px
  }
}

.pc-sub-nav-links.astro-eiyd7voq {
  display: flex;
  gap: 24px;
  max-width: 475px;
  margin: 0 0 0 auto;
  line-height: 18px;
  font-size: 12px;
  color: var(--color-origin-gray);
  padding-bottom: 10px
}

.pc-sub-nav-links.astro-eiyd7voq a.astro-eiyd7voq:hover {
  color: var(--color-prime-500)
}

.header-inner.astro-eiyd7voq {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%
}

.header-inner.astro-eiyd7voq .logo.astro-eiyd7voq {
  transition: opacity var(--duration-hover) var(--ease-link)
}

.header-inner.astro-eiyd7voq .logo.astro-eiyd7voq:hover {
  opacity: .8
}

.sp-nav-links.astro-eiyd7voq {
  display: flex;
  align-items: center;
  gap: 30px
}

.sp-nav-links.astro-eiyd7voq>nav.astro-eiyd7voq {
  padding-top: 4px
}

.sp-nav-links.astro-eiyd7voq a.astro-eiyd7voq:not(.logo),
.sp-nav-links.astro-eiyd7voq .anchor.astro-eiyd7voq {
  display: block;
  margin: -16px 0;
  padding: 16px 8px;
  transition: color .2s var(--ease-link)
}

.sp-nav-links.astro-eiyd7voq a.astro-eiyd7voq:hover,
.sp-nav-links.astro-eiyd7voq .anchor.astro-eiyd7voq:hover {
  color: var(--color-prime-500)
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq {
  display: flex;
  justify-content: flex-start;
  gap: 14px;
  font-size: 14px;
  padding: 0
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(1) {
  width: 44px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(2) {
  width: 44px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(3) {
  width: 69px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(4) {
  width: 44px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(5) {
  width: 44px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(6) {
  width: 100px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>li.astro-eiyd7voq:nth-child(7) {
  width: 44px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq {
  position: relative
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq .anchor.astro-eiyd7voq {
  padding-right: 24px
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq span.astro-eiyd7voq:before {
  content: "";
  position: absolute;
  top: 2px;
  right: 8px;
  width: 6px;
  height: 6px;
  border-top: 1.2px solid var(--color-black);
  border-right: 1.2px solid var(--color-black);
  transform: rotate(-225deg);
  transition: transform .3s var(--ease-drawer)
}

@media (hover: hover) {
  .sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq span.astro-eiyd7voq:before {
    transition: transform .3s var(--ease-drawer), border-top var(--duration-hover) var(--ease-link), border-right var(--duration-hover) var(--ease-link)
  }
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq:hover span.astro-eiyd7voq:before {
  border-top: 1px solid var(--color-prime-500);
  border-right: 1px solid var(--color-prime-500)
}

.astro-eiyd7voq[data-state=select-reason-opened] .sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq {
  color: var(--color-prime-500)
}

.astro-eiyd7voq[data-state=select-reason-opened] .sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq span.astro-eiyd7voq:before {
  transform: translateY(4px) rotate(-45deg);
  border-top: 1px solid var(--color-prime-500);
  border-right: 1px solid var(--color-prime-500)
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq .hidden-sub-links.astro-eiyd7voq {
  position: absolute;
  top: 5px;
  left: 50%;
  white-space: nowrap;
  font-size: 14px;
  color: var(--color-black);
  display: flex;
  padding: 15px 0;
  gap: 30px;
  opacity: 0;
  visibility: hidden;
  transition: transform .3s ease-out .1s, opacity .3s ease-out .1s;
  transform: translate(-50%, 43px) translate3d(0, -20px, 0)
}

.astro-eiyd7voq[data-state=select-reason-opened] .sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq .hidden-sub-links.astro-eiyd7voq {
  transform: translate(-50%, 43px) translateZ(0);
  visibility: visible;
  opacity: 1
}

.sp-nav-links.astro-eiyd7voq ul.astro-eiyd7voq>.select-reason-links.astro-eiyd7voq .hidden-sub-links.astro-eiyd7voq>li.astro-eiyd7voq {
  width: auto
}

.login.astro-eiyd7voq {
  color: var(--color-prime-500);
  transition: color .2s var(--ease-link)
}

@media (min-width: 1280px) {
  .login.astro-eiyd7voq {
    width: 53px
  }
}

.login.astro-eiyd7voq:hover {
  color: var(--color-prime-700)
}

.buttons.astro-eiyd7voq {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 14px
}

.buttons.astro-eiyd7voq .header-button.astro-eiyd7voq {
  width: 112px;
  height: 36px;
  font-size: 12px
}

.buttons.astro-eiyd7voq .header-button.astro-eiyd7voq.outline {
  width: 162px
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .buttons.astro-eiyd7voq .header-button.astro-eiyd7voq.filled {
    width: 180px
  }
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .buttons.astro-eiyd7voq .header-button.astro-eiyd7voq {
    height: 40px;
    font-size: 14px
  }
}

@media screen and (min-width: 1280px) {
  .buttons.astro-eiyd7voq {
    gap: 20px;
    padding-right: 41px
  }
}

.hamburger-menu-close.astro-eiyd7voq {
  position: fixed;
  top: 8px;
  right: 0;
  width: 49px;
  height: 49px
}

@media screen and (min-width: 1280px) {
  .hamburger-menu-close.astro-eiyd7voq {
    display: none
  }
}

.hamburger-menu-close.astro-eiyd7voq>span.astro-eiyd7voq {
  position: absolute;
  left: 12px;
  width: 25px;
  height: 2px;
  background: var(--color-black)
}

.hamburger-menu-close.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(1) {
  top: 16px
}

.hamburger-menu-close.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(2) {
  top: 32px
}

.hamburger-menu-close.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(1) {
  transform: translateY(8px) rotate(-45deg)
}

.hamburger-menu-close.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(2) {
  transform: translateY(-8px) rotate(45deg)
}

.hamburger-menu.astro-eiyd7voq {
  position: relative;
  width: 49px;
  height: 49px;
  display: none;
}

@media screen and (min-width: 1280px) {
  .hamburger-menu.astro-eiyd7voq {
    display: none
  }
}

.hamburger-menu.astro-eiyd7voq>span.astro-eiyd7voq {
  position: absolute;
  left: 12px;
  width: 25px;
  height: 2px;
  background: var(--color-black)
}

.hamburger-menu.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(1) {
  top: 16px
}

.hamburger-menu.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(2) {
  top: 24px
}

.hamburger-menu.astro-eiyd7voq>span.astro-eiyd7voq:nth-child(3) {
  top: 32px
}

.side-menu.astro-eiyd7voq {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  background: var(--color-white);
  padding: 50px 20px 0;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  z-index: var(--z-side-menu);
  transform: translate(100%);
  transition: transform .4s var(--ease-drawer)
}

@media (min-width: 768px) and (max-width: 1279.98px) {
  .side-menu.astro-eiyd7voq {
    width: 480px
  }
}

.side-menu.astro-eiyd7voq::-webkit-scrollbar {
  display: none
}

.astro-eiyd7voq[data-state=drawer-opened] .side-menu.astro-eiyd7voq:before {
  transform: translate(100%);
  transition: transform .4s var(--ease-drawer) .32s;
  display: block;
  transform-origin: top left
}

.astro-eiyd7voq[data-state=drawer-opened] .side-menu.astro-eiyd7voq {
  transition: transform .4s var(--ease-drawer);
  transform: translate(0)
}

.side-menu.astro-eiyd7voq .logo-button-wrapper.astro-eiyd7voq {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 16px
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq {
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 28.8px;
  letter-spacing: .5px
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq {
  border-top: 1px solid var(--color-gray-400)
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq>a.astro-eiyd7voq,
.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq>button.astro-eiyd7voq {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 0
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq>a.astro-eiyd7voq.underlayer-link,
.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq>button.astro-eiyd7voq.underlayer-link {
  margin-left: 20px
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq .button.astro-eiyd7voq {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq .select-reason-icon.astro-eiyd7voq {
  transform: rotate(90deg);
  transition: .2s
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq .select-reason-icon.astro-eiyd7voq.open {
  transform: rotate(-90deg)
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>li.astro-eiyd7voq:last-child {
  border-bottom: 1px solid var(--color-gray-500)
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>.underlayer.astro-eiyd7voq {
  border-top: 1px solid var(--color-gray-200);
  visibility: hidden;
  overflow: hidden;
  height: 0;
  transition: height .3s ease-in-out, visibility 0s
}

.side-menu.astro-eiyd7voq .side-menu-nav-list.astro-eiyd7voq>ul.astro-eiyd7voq>.underlayer.astro-eiyd7voq.open {
  height: 58.8px;
  visibility: visible
}

.side-menu.astro-eiyd7voq .side-menu-sub-nav-list.astro-eiyd7voq {
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 28.8px;
  letter-spacing: .5px
}

.side-menu.astro-eiyd7voq .side-menu-sub-nav-list.astro-eiyd7voq li.astro-eiyd7voq {
  margin-bottom: 20px
}

.side-menu.astro-eiyd7voq .side-menu-action.astro-eiyd7voq {
  display: grid;
  grid-gap: 16px 0;
  gap: 16px 0;
  text-align: center;
  position: sticky;
  bottom: 0;
  padding: 24px 20px;
  margin: 0 -20px;
  box-shadow: 0 0 14px #0003;
  background: var(--color-white);
  z-index: var(--z-side-menu)
}

.side-menu.astro-eiyd7voq .side-menu-action.astro-eiyd7voq .side-menu-button.astro-eiyd7voq {
  width: 100%;
  height: 56px;
  font-size: 16px
}

.side-menu.astro-eiyd7voq .side-menu-action.astro-eiyd7voq .login.astro-eiyd7voq {
  line-height: 24px
}

.select-reason-container.astro-eiyd7voq {
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  left: 0;
  height: 51px;
  background: var(--color-white);
  transition: transform .3s
}

.astro-eiyd7voq[data-state=select-reason-opened] .select-reason-container.astro-eiyd7voq {
  transform: translateY(100%)
}

.transparent-black-bg.astro-eiyd7voq {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  background: #000;
  opacity: 0;
  visibility: hidden;
  transition-property: opacity, visibility
}

@media (max-width: 767.98px) {
  .transparent-black-bg.astro-eiyd7voq {
    display: none
  }
}

.transparent-black-bg.astro-eiyd7voq:after,
.transparent-black-bg.astro-eiyd7voq:before {
  content: "";
  width: 1px;
  height: calc(100vh + 1px);
  display: flex
}

.astro-eiyd7voq[data-leave-state=select-reason-opened] .transparent-black-bg.astro-eiyd7voq {
  z-index: calc(var(--z-header) - 1);
  transition-duration: .3s
}

.astro-eiyd7voq[data-leave-state=drawer-opened] .transparent-black-bg.astro-eiyd7voq {
  z-index: calc(var(--z-side-menu) - 1);
  transition-duration: .3s;
  transition-timing-function: var(--ease-drawer)
}

.astro-eiyd7voq[data-state=select-reason-opened] .transparent-black-bg.astro-eiyd7voq {
  z-index: calc(var(--z-header) - 1);
  bottom: 0;
  opacity: .5;
  visibility: visible;
  transition-duration: .3s
}

.astro-eiyd7voq[data-state=drawer-opened] .transparent-black-bg.astro-eiyd7voq {
  z-index: calc(var(--z-side-menu) - 1);
  bottom: 0;
  opacity: .5;
  visibility: visible;
  transition-duration: .4s;
  transition-timing-function: var(--ease-drawer)
}

.no-scroll.astro-eiyd7voq {
  overscroll-behavior: contain;
  overflow-y: scroll;
  touch-action: pan-y;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.no-scroll.astro-eiyd7voq::-webkit-scrollbar {
  display: none
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block
}

body {
  line-height: 1
}

ol,
ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

:root {
  --color-prime-50: #e0f3f4;
  --color-prime-100: #c6e9eb;
  --color-prime-200: #a6dddd;
  --color-prime-300: #7fd1cf;
  --color-prime-400: #AEC6CF;
  --color-prime-500: #83c9e4;
  --color-prime-600: #00a099;
  --color-prime-700: #00938b;
  --color-prime-800: #00827a;
  --color-prime-900: #00726a;
  --color-white: #ffffff;
  --color-gray-50: #f7f8f9;
  --color-gray-100: #edeef1;
  --color-gray-200: #dadce0;
  --color-gray-300: #c1c7d1;
  --color-gray-400: #9ba2ae;
  --color-gray-500: #2e6cf6;
  --color-gray-600: #636978;
  --color-gray-700: #45495b;
  --color-gray-800: #2e3242;
  --color-gray-900: #1e1f2a;
  --color-red-lighter: #fff4f4;
  --color-red-lighter-text: #f87e7e;
  --color-inspiration-red: #ff4600;
  --color-inspiration-hover-red: #de3b00;
  --color-origin-gray: #233237;
  --color-core-black: #0d181e;
  --color-black: #000000;
  --color-border-gray-lighter: #a5acb6;
  --color-bbq-red--lighter: #fff4f4;
  --color-bbq-white--dark: #fcfcfd;
  --color-bbq-gray--dark: #c2c8d2;
  --color-bbq-gray--light: #f0f1f4;
  --color-bbq-gray--lighter: #f8f9fa
}

:root {
  --spacing-8: 8;
  --spacing-16: 16;
  --spacing-24: 24;
  --spacing-32: 32;
  --spacing-40: 40;
  --spacing-64: 64;
  --spacing-72: 72;
  --spacing-80: 80;
  --spacing-120: 120;
  --spacing-144: 144
}

:root {
  --content-width: 1440px;
  --header-height: 52px;
  --header-top-position: 0
}

@media screen and (min-width: 1280px) {
  :root {
    --header-height: 70px
  }
}

:root {
  --z-tooltip: 1;
  --z-cta: 150;
  --z-flc: 180;
  --z-header: 200;
  --z-side-menu: 210;
  --z-hamburger: 300;
  --z-modal-mask: 6000000;
  --z-modal: 6000001
}

:root {
  --duration-hover: .2s
}

:root {
  --ease-link: cubic-bezier(.3, .7, .7, .3);
  --ease-drawer: cubic-bezier(0, 1, 1, 1);
  --ease-button-hover: cubic-bezier(.05, .92, .21, .97);
  --ease-button-icon-hover: cubic-bezier(.05, .85, .36, .98);
  --ease-sticky-section: cubic-bezier(.02, .38, .26, .97);
  --ease-progressbar: cubic-bezier(0, .55, .45, 1);
  --ease-chart-pie1: cubic-bezier(.7, 0, .84, 0);
  --ease-chart-pie2: cubic-bezier(.16, 1, .3, 1);
  --ease-fadeIn: cubic-bezier(.32, 0, .67, 0);
  --ease-fadeInUp: cubic-bezier(0, .55, .45, 1);
  --ease-drawer: cubic-bezier(.89, .05, .27, 1)
}

:root {
  --font-family-base: "Helvetica", "Hiragino Kaku Gothic ProN", "繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3", "Hiragino Sans", Meiryo, Arial, sans-serif;
  --font-family-input: "Inter", "Helvetica", "Hiragino Kaku Gothic ProN", "繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3", "Hiragino Sans", Meiryo, Arial, sans-serif;
  --font-family-axis-regular: "NotoSansJP-Regular", var(--font-family-base);
  --font-family-axis-medium: "NotoSansJP-SemiBold", var(--font-family-base);
  --font-family-axis-bold: "NotoSansJP-Bold", var(--font-family-base);
  --font-family-axis-heavy: "NotoSansJP-ExtraBold", var(--font-family-base);
  --font-family-gilroy-regular: "Gilroy-Regular", var(--font-family-base);
  --font-family-gilroy-semi-bold: "Gilroy-SemiBold", var(--font-family-base);
  --font-family-gilroy-bold: "Gilroy-Bold", var(--font-family-base);
  --font-family-gilroy-extra-bold: "Gilroy-ExtraBold", var(--font-family-base);
  --font-family-inter: "Inter", var(--font-family-base)
}

:root {
  --vw: 1vw;
  --100vw: 100vw;
  --vh: 1vh;
  --sp-ratio: calc(100 / 375);
  --tb-ratio: calc(100 / 1280)
}

@font-face {
  font-family: Gilroy-ExtraBold;
  src: url(https://static.thebase.in/font/v1/gilroy/extraBold/GilroyExtraBold.woff2) format("woff2"), url(https://static.thebase.in/font/v1/gilroy/extraBold/GilroyExtraBold.woff) format("woff");
  font-display: swap
}

@font-face {
  font-family: Gilroy-Bold;
  src: url(https://static.thebase.in/font/v1/gilroy/5538959/e62d07e6-5c21-45b8-8427-79c95511907d.woff2) format("woff2"), url(https://static.thebase.in/font/v1/gilroy/5538959/e667d70b-2326-4c62-8f38-200c31c3b08c.woff) format("woff");
  font-display: swap
}

@font-face {
  font-family: Gilroy-SemiBold;
  src: url(https://static.thebase.in/font/v1/gilroy/5538991/65e59d21-d1cb-42cb-85de-10af9afd2b38.woff2) format("woff2"), url(https://static.thebase.in/font/v1/gilroy/5538991/960a0830-33df-46c5-87bc-24fb52edfa4e.woff) format("woff");
  font-display: swap
}

@font-face {
  font-family: Gilroy-Regular;
  src: url(https://static.thebase.in/font/v1/gilroy/5538977/b261487c-2966-4089-8551-6555085406ad.woff2) format("woff2"), url(https://static.thebase.in/font/v1/gilroy/5538977/bf190033-35ff-42cf-b90c-f5321a94a3df.woff) format("woff");
  font-display: swap
}

@font-face {
  font-family: bbqicon;
  src: url(https://static.thebase.in/font/v1/bbqicon.eot);
  src: url(https://static.thebase.in/font/v1/bbqicon.eot#iefix) format("embedded-opentype"), url(https://static.thebase.in/font/v1/bbqicon.ttf) format("truetype"), url(https://static.thebase.in/font/v1/bbqicon.woff) format("woff"), url(https://static.thebase.in/font/v1/bbqicon.svg) format("svg");
  font-display: swap
}

@font-face {
  font-family: NotoSansJP-Regular;
  font-display: swap;
  src: url(/static-asset/font/NotoSansJP/NotoSansJP-VariableFont_wght.woff2) format("woff2");
  font-weight: 400
}

@font-face {
  font-family: NotoSansJP-SemiBold;
  font-display: swap;
  src: url(/static-asset/font/NotoSansJP/NotoSansJP-VariableFont_wght.woff2) format("woff2");
  font-weight: 600
}

@font-face {
  font-family: NotoSansJP-Bold;
  font-display: swap;
  src: url(/static-asset/font/NotoSansJP/NotoSansJP-VariableFont_wght.woff2) format("woff2");
  font-weight: 700
}

@font-face {
  font-family: NotoSansJP-ExtraBold;
  font-display: swap;
  src: url(/static-asset/font/NotoSansJP/NotoSansJP-VariableFont_wght.woff2) format("woff2");
  font-weight: 800
}

i[class^=i-],
i[class*=i-] {
  font-family: bbqicon, NotoSansJP-Regular, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: "bbqicon", var(--font-family-axis-regular);
  font-style: normal;
  font-weight: 400;
  font-feature-settings: normal;
  font-variant: normal;
  line-height: 1;
  speak: none;
  text-transform: none
}

.gilroy-regular {
  font-family: Gilroy-Regular, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-gilroy-regular)
}

.gilroy-semi-bold {
  font-family: Gilroy-SemiBold, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-gilroy-semi-bold)
}

.gilroy-bold {
  font-family: Gilroy-Bold, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-gilroy-bold)
}

.gilroy-extra-bold {
  font-family: Gilroy-ExtraBold, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-gilroy-extra-bold)
}

.axis-regular {
  font-family: NotoSansJP-Regular, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-axis-regular)
}

.axis-medium {
  font-family: NotoSansJP-SemiBold, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-axis-medium)
}

.axis-bold {
  font-family: NotoSansJP-Bold, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-axis-bold)
}

.axis-heavy {
  font-family: NotoSansJP-ExtraBold, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: var(--font-family-axis-heavy)
}

body {
  padding-top: 52px;
  padding-top: var(--header-height);
  line-height: 1;
  text-align: left;
  font-size: 16px;
  font-style: normal;
  font-family: NotoSansJP-Regular, Helvetica, Hiragino Kaku Gothic ProN, 繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3, Hiragino Sans, Meiryo, Arial, sans-serif;
  font-family: "NotoSansJP-Regular", var(--font-family-base);
  font-feature-settings: "palt";
  color: #233237;
  color: var(--color-origin-gray);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%
}

b,
i {
  font: inherit
}

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

@media (hover: hover) {
  a {
    transition: color .2s cubic-bezier(.3, .7, .7, .3);
    transition: color var(--duration-hover) var(--ease-link)
  }
}

a._textlink {
  -webkit-text-decoration: underline;
  text-decoration: underline;
  color: #0fafaa;
  color: var(--color-prime-500)
}

a._textlink:hover {
  -webkit-text-decoration: none;
  text-decoration: none
}

@media (hover: hover) {
  .hover-duration {
    transition: .2s cubic-bezier(.3, .7, .7, .3);
    transition: var(--duration-hover) var(--ease-link);
    transition-property: color, fill
  }
}

.hover-scale>.prime-circle {
  width: 6.4vw;
  width: calc(24 * 1vw * var(--sp-ratio));
  height: 6.4vw;
  height: calc(24 * 1vw * var(--sp-ratio));
  background-color: #0fafaa;
  background-color: var(--color-prime-500);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  transition: width .2s ease, height .2s ease
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .hover-scale>.prime-circle {
    width: min(1.875vw, 24 * 1px);
    width: min(calc(24 * 1vw * var(--tb-ratio)), 24 * 1px);
    height: min(1.875vw, 24 * 1px);
    height: min(calc(24 * 1vw * var(--tb-ratio)), 24 * 1px)
  }
}

.hover-scale>span {
  transition: transform .2s ease
}

@media (min-width: 768px) and (max-width: 1279.98px),
(min-width: 1280px) {
  .hover-scale:hover>.prime-circle {
    width: min(2.34375vw, 30 * 1px);
    width: min(calc(30 * 1vw * var(--tb-ratio)), 30 * 1px);
    height: min(2.34375vw, 30 * 1px);
    height: min(calc(30 * 1vw * var(--tb-ratio)), 30 * 1px)
  }

  .hover-scale:hover>span {
    transform: translate(min(.3125vw, 4 * 1px));
    transform: translate(min(calc(4 * 1vw * var(--tb-ratio)), 4 * 1px))
  }
}

@media screen and (max-width: 767.98px),
(min-width: 768px) and (max-width: 1279.98px) {
  .pc-only {
    display: none !important
  }
}

@media screen and (min-width: 1280px) {
  .pc-hidden {
    display: none !important
  }
}

@media screen and (min-width: 1280px),
(min-width: 768px) and (max-width: 1279.98px) {
  .sp-only {
    display: none !important
  }
}

@media screen and (max-width: 767.98px) {
  .sp-hidden {
    display: none !important
  }
}

.js-ds.-fade {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .48s ease-out, transform .72s ease-out
}

.js-ds.-fade.-active {
  opacity: 1;
  transform: translateY(0)
}

.animate__fadeInUp {
  animation: fadeInUp .5s;
  animation-timing-function: cubic-bezier(0, .55, .45, 1);
  animation-timing-function: var(--ease-fadeInUp);
  animation-fill-mode: forwards;
  opacity: 0
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(100px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

.animate__loopLeft {
  animation: loopLeft 95s infinite linear .5s both
}

@keyframes loopLeft {
  0% {
    transform: translate(0)
  }

  to {
    transform: translate(-100%)
  }
}

.animate__loopRight {
  animation: loopRight 95s infinite linear .5s both
}

@keyframes loopRight {
  0% {
    transform: translate(-100%)
  }

  to {
    transform: translate(0)
  }
}

/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*,
:before,
:after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent
}

body {
  margin: 0
}

main {
  display: block
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none
}

dt {
  font-weight: 700
}

dd {
  margin-left: 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit
}

pre {
  font-family: monospace, monospace;
  font-size: inherit
}

address {
  font-style: inherit
}

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

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom
}

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default
}

:-moz-focusring {
  outline: auto
}

select:disabled {
  opacity: inherit
}

option {
  padding: 0
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0
}

legend {
  padding: 0
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

[type=number] {
  -moz-appearance: textfield
}

label[for] {
  cursor: pointer
}

details {
  display: block
}

summary {
  display: list-item
}

[contenteditable]:focus {
  outline: auto
}

table {
  border-color: inherit;
  border-collapse: collapse
}

caption {
  text-align: left
}

td,
th {
  vertical-align: top;
  padding: 0
}

th {
  text-align: left;
  font-weight: 700
}

html.noscroll,
body.noscroll {
  overflow: hidden
}