@font-face {
  font-family: Intervar;
  src: url('../fonts/intervar.woff2') format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

body {
  color: #000;
  font-variation-settings: "opsz" 30.4, "wght" 480;
  font-family: Intervar, Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.3;
}

h1 {
  margin: 0;
  font-size: 38px;
  font-weight: 700;
  line-height: 44px;
}

.title {
  font-variation-settings: "opsz" 32, "wght" 480;
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.45rem;
  line-height: 1.2;
}

.title.title--hero {
  letter-spacing: -.03rem;
  font-size: 3.4rem;
  line-height: 1;
}

.title.title--privacy {
  letter-spacing: -.03rem;
  margin-left: 0;
  font-size: 3.4rem;
  line-height: 1;
}

.nav.nav-content {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: space-between;
  align-items: center;
  height: 10vh;
  display: flex;
}

.nav.navi-link {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  font-variation-settings: "opsz" 27.5, "wght" 445;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  transition: opacity .2s;
  display: flex;
}

.nav.navi-link:hover {
  opacity: .5;
}

.nav.navi-link.navi-link---brand {
  font-variation-settings: "opsz" 32, "wght" 480;
  margin-left: -.5rem;
  padding-left: 1rem;
  font-size: 1.1rem;
}

.nav.navi-link.navi-link--apple {
  color: #000;
  font-variation-settings: "opsz" 27.5, "wght" 470;
  background-color: #fff;
  border-radius: 10rem;
  padding: .8rem 2.2rem;
  font-size: .9rem;
}

.nav.navi-link.navi-link--apple:hover {
  opacity: .79;
}

.nav.navi-link.navi-link--small-comment {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  opacity: .83;
  margin-left: auto;
  font-size: .9rem;
}

.nav.navi-link.footer {
  margin-left: -1rem;
  margin-right: -1rem;
  font-size: .95rem;
}

.container {
  width: 80vw;
  margin-left: auto;
  margin-right: auto;
}

.part.part-hero {
  min-height: 100vh;
  padding-top: 10vh;
  padding-bottom: 15vh;
}

.part.part-privacy {
  padding-top: 4vh;
  padding-bottom: 10vh;
}

.content.content-hero.content-hero---text {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.content.content-hero.content-hero---art {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  justify-content: center;
  align-items: flex-start;
  min-height: 65vh;
  padding-top: 10vh;
  padding-bottom: 10vh;
  display: flex;
  overflow: hidden;
}

.content.content-hero.content-hero---art.extra {
  display: none;
}

.content.content-hero.contenet-hero---perks {
  grid-column-gap: 5rem;
  grid-row-gap: 5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  min-height: 16vh;
  display: flex;
}

.content.hero-text {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 50rem;
  min-height: 15vh;
  display: flex;
}

.content.content--privacy {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 35rem;
  min-height: 30vh;
  margin-right: auto;
  display: flex;
}

.frame.frame-hero-icon {
  border-radius: 1.5rem;
  justify-content: center;
  align-items: center;
  width: 5rem;
  height: 5rem;
  transition: all .2s;
  display: flex;
  overflow: hidden;
  box-shadow: 0 .6rem 2.3rem #00000029;
}

.frame.frame-hero-icon:hover {
  box-shadow: 0 .6rem 6.3rem #0000004a;
}

.frame.device-frame {
  aspect-ratio: 1 / 2.1;
  width: 20rem;
  min-width: 20rem;
}

.frame.device-frame.spaced {
  padding-top: 8vh;
}

.image {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  max-width: 1000%;
  height: 100%;
}

.btn-wrap {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: center;
  align-items: center;
  display: flex;
}

.btn-wrap.btn-wrap--hero {
  margin-top: 2rem;
}

.qr-icon {
  filter: invert();
  width: 1rem;
}

.span.span-o50 {
  opacity: .5;
}

.foot.foot-content {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.code {
  height: 0;
  display: none;
  overflow: hidden;
}

.privacy-text {
  font-size: 1.2rem;
  line-height: 2;
}

.qr {
  z-index: 1;
  cursor: pointer;
  position: relative;
}

.kr---base {
  background-color: #fff;
  border-radius: 1rem;
  width: 8rem;
  height: 8rem;
  display: none;
  position: absolute;
  inset: 0% auto auto 0%;
  overflow: hidden;
  box-shadow: 0 2px 3rem #0000004f;
}

.badge.badge-appstore {
  width: auto;
  height: 3rem;
}

.body, .body-2 {
  color: #fff;
  background-color: #0e0e0e;
}

.asd {
  display: none;
}

@media screen and (max-width: 991px) {
  .title {
    font-size: 18px;
    line-height: 1;
  }

  .qr {
    display: none;
  }
}

@media screen and (max-width: 479px) {
  .title {
    font-size: 15px;
  }

  .title.title--hero, .title.title--privacy {
    text-align: center;
    font-size: 2.2rem;
  }

  .nav.nav-content {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .container {
    width: 90vw;
  }

  .part.part-hero {
    padding-top: 6vh;
    padding-bottom: 20vh;
  }

  .content.content-hero.content-hero---text {
    justify-content: flex-start;
    align-items: center;
  }

  .content.content-hero.content-hero---art.extra {
    margin-bottom: 0;
    padding-bottom: 0;
    display: flex;
  }

  .content.hero-text, .content.content--privacy {
    width: 100%;
  }

  .frame.frame-hero-icon {
    border-radius: 1rem;
    width: 4rem;
    height: 4rem;
  }

  .frame.device-frame {
    width: 12rem;
    min-width: 12rem;
  }

  .btn-wrap.btn-wrap--hero {
    flex-flow: column-reverse;
  }

  .phone-plus.base {
    justify-content: center;
    align-items: flex-start;
    margin-top: 5vh;
    display: flex;
    overflow: scroll;
  }

  .asd {
    opacity: .5;
    display: block;
  }
}


@font-face {
  font-family: 'Intervar';
  src: url('../fonts/intervar.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}