body, h1, h2, h3, h4, h5, p, ul, ol, li, a, dl, dt, dd, table, tr, th, td, span, figure {
  margin: 0;
  padding: 0;
  text-decoration: none;
  font-weight: inherit;
  list-style: none;
  outline: none;
}

* {
  line-height: 1.2;
  letter-spacing: 0;
  box-sizing: border-box;
}

.slick-slide:focus {
  outline: none;
}

picture {
  display: block;
}

button, input, select, textarea {
  background-color: unset;
  border: none;
  outline: none;
  -webkit-appearance: none;
  border-radius: 0;
  color: var(--c-main);
  font-weight: var(--f-main_w);
  font-family: var(--f-main_ff);
}

table {
  border-collapse: collapse;
}

select::-ms-expand {
  display: none;
}

@font-face {
  font-family: inter;
  src: url(../fonts/inter/Inter-Light.ttf) format("truetype");
  font-weight: 300;
}
@font-face {
  font-family: inter;
  src: url(../fonts/inter/Inter-Medium.ttf) format("truetype");
  font-weight: normal;
}
@media screen and (min-width: 1400px) {
  #n-tokyo {
    --rate-pc: 1px;
  }
}

:root {
  --c-main: #FFF;
  --c-292929: #292929;
  --c-282828: #282828;
  --c-1a1a1a: #1a1a1a;
  --c-000: #000;
  --f-main_ff: "hiragino-kaku-gothic-pron", sans-serif;
}

html, body {
  font-size: 62.5%;
  font-family: var(--f-main_ff);
  position: relative;
  color: var(--c-main);
}

a {
  display: inline-block;
  color: var(--c-main);
  transition: all 0.2s;
}

input {
  transition: all 0.2s;
}

a:hover, input[type=checkbox]:hover, [type=submit]:hover, [type=reset]:hover {
  opacity: 0.6;
  transition: all 0.2s;
}

.sp {
  display: none;
}

.pc {
  display: block;
}

img, svg {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

@media screen and (max-width: 640px) {
  html, body {
    font-size: 1.5625vw;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
#n-tokyo {
  position: relative;
  background-color: var(--c-292929);
}
@media screen and (min-width: 641px) {
  #n-tokyo {
    width: 100%;
    max-width: 64rem;
    margin: 0 auto;
  }
}
#n-tokyo .js-animation {
  opacity: 0;
  transform: translateY(4rem);
  transition: all 0.7s ease;
}
#n-tokyo .js-animation.vis {
  opacity: 1;
  transform: translateY(0);
}
#n-tokyo .btn {
  position: relative;
  overflow: hidden;
  border-radius: 60px;
}
#n-tokyo .btn::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -1.8rem;
  left: 0;
  width: 2.4rem;
  height: 100%;
  background-color: #fbfbfb;
  animation: btn_animation 2.5s ease-in-out infinite;
}
#n-tokyo .header {
  padding-block: 2rem;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
#n-tokyo .header .inner {
  padding-inline: 2rem 1.6rem;
  display: grid;
  grid-template-columns: 9.2rem 26rem;
  align-items: center;
  justify-content: space-between;
}
#n-tokyo .contactBtn {
  background-color: var(--c-1a1a1a);
  padding-block: 4rem 4.4rem;
}
#n-tokyo .contactBtn._02 {
  padding-top: 4.7rem;
}
#n-tokyo .contactBtn .btn {
  display: block;
  width: 100%;
  max-width: 57.6rem;
  margin: 0 auto;
}
#n-tokyo .mv {
  background: url(../img/mv_img01.webp) top center/cover no-repeat;
  height: 94.4rem;
}
#n-tokyo .mv .inner {
  position: relative;
  width: 100%;
  height: 100%;
}
#n-tokyo .mv .inner .ttl {
  position: absolute;
  width: 100%;
  max-width: 62rem;
  top: 10.9rem;
  left: 1.4rem;
}
#n-tokyo .mv .inner .txt {
  position: absolute;
  width: 100%;
}
#n-tokyo .mv .inner .txt._01 {
  max-width: 17.4rem;
  right: 2.1rem;
  bottom: 16.2rem;
}
#n-tokyo .mv .inner .txt._02 {
  max-width: 42.3rem;
  right: 0;
  left: 0;
  margin: auto;
  bottom: 4.8rem;
}
#n-tokyo .sec01 {
  background-color: var(--c-282828);
  padding-block: 9.8rem 10rem;
}
#n-tokyo .sec01 .inner {
  padding-inline: 3rem;
}
#n-tokyo .sec01 .inner .txt {
  width: 100%;
  max-width: 55rem;
  margin: 0 auto;
}
#n-tokyo .sec01 .inner .img {
  margin-top: 5.5rem;
}
#n-tokyo .sec01 .inner .ttl {
  width: 100%;
  max-width: 20.7rem;
  margin: 6.3rem auto 0;
}
#n-tokyo .sec01 .inner .lead {
  width: 100%;
  max-width: 57.3rem;
  margin: 5.3rem auto 0;
}
#n-tokyo .sec02 {
  position: relative;
  background-color: var(--c-000);
  padding-block: 10rem 9.8rem;
}
#n-tokyo .sec02::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 46.5rem;
  background: url(../img/sec02_bg01.webp) top center/cover no-repeat;
}
#n-tokyo .sec02 .inner {
  padding-inline: 3.3rem;
}
#n-tokyo .sec02 .inner .ttl {
  width: 100%;
  max-width: 38.7rem;
  margin: 0 auto;
  position: relative;
  left: -0.5rem;
}
#n-tokyo .sec02 .inner .list {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.7rem;
  margin-top: 5.7rem;
}
#n-tokyo .sec03 {
  position: relative;
  background-color: var(--c-000);
  padding-block: 10rem 11.4rem;
}
#n-tokyo .sec03::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 38.2rem;
  background: url(../img/sec03_bg01.webp) top center/cover no-repeat;
}
#n-tokyo .sec03 .inner .ttl {
  width: 100%;
  max-width: 53.7rem;
  margin: 0 auto;
  position: relative;
}
#n-tokyo .sec03 .inner .list {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 7rem;
  margin-top: 3.3rem;
}
#n-tokyo .sec04 {
  position: relative;
  background-color: var(--c-282828);
  padding-block: 9.9rem 9.8rem;
}
#n-tokyo .sec04::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 98.1rem;
  background: url(../img/sec04_bg01.webp) top center/cover no-repeat;
}
#n-tokyo .sec04 .inner {
  position: relative;
  padding-inline: 3.3rem;
}
#n-tokyo .sec04 .inner .ttl {
  width: 100%;
  max-width: 53.7rem;
  margin: 0 auto;
}
#n-tokyo .sec04 .inner .dsc {
  margin-top: 5.3rem;
}
#n-tokyo .sec04 .inner .dsc .img {
  margin-top: 2.9rem;
}
#n-tokyo .sec04 .inner .dsc:nth-of-type(1) .ttl {
  max-width: 46.6rem;
}
#n-tokyo .sec04 .inner .dsc:nth-of-type(2) {
  margin-top: 5.8rem;
}
#n-tokyo .sec04 .inner .dsc:nth-of-type(2) .ttl {
  max-width: 42.3rem;
}
#n-tokyo .sec05 {
  position: relative;
  background: url(../img/sec05_bg01.webp) top center/cover no-repeat;
  padding-block: 10.7rem 2.7rem;
}
#n-tokyo .sec05::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 30.1rem;
  background: url(../img/sec05_bg02.webp) top center/cover no-repeat;
}
#n-tokyo .sec05 .inner {
  position: relative;
}
#n-tokyo .sec05 .inner .ttl {
  width: 100%;
  max-width: 45.6rem;
  margin: 0 auto;
}
#n-tokyo .sec05 .inner .img {
  width: 100%;
  max-width: 51.2rem;
  margin: -1.8rem auto 0;
  position: relative;
  left: -1.6rem;
}
#n-tokyo .sec06 {
  position: relative;
  background-color: var(--c-000);
  padding-block: 9.4rem 10rem;
}
#n-tokyo .sec06::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 43.8rem;
  background: url(../img/sec06_bg01.webp) top center/cover no-repeat;
}
#n-tokyo .sec06 .inner {
  position: relative;
  padding-inline: 3.3rem;
}
#n-tokyo .sec06 .inner .ttl {
  width: 100%;
  max-width: 27.3rem;
  margin: 0 auto;
}
#n-tokyo .sec06 .inner .list {
  margin-top: 6.2rem;
  display: grid;
  grid-auto-columns: 1fr;
  gap: 10.6rem;
}
#n-tokyo .sec06 .inner .list .blk .img {
  width: 100%;
  max-width: 46.4rem;
  margin: 3.8rem auto 0;
}
#n-tokyo .sec06 .inner .list .blk .txt {
  width: 100%;
  margin: 5.4rem auto 0;
}
#n-tokyo .sec06 .inner .list .blk .lead {
  margin-top: 5.2rem;
}
#n-tokyo .sec06 .inner .list .blk:nth-of-type(1) .txt {
  max-width: 47.9rem;
  margin-top: 5.8rem;
}
#n-tokyo .sec06 .inner .list .blk:nth-of-type(2) .txt {
  max-width: 43.5rem;
}
#n-tokyo .sec06 .inner .list .blk:nth-of-type(3) .txt {
  max-width: 37.6rem;
}
#n-tokyo .sec07 {
  padding-top: 8.1rem;
  background-color: var(--c-000);
}
#n-tokyo .sec07 .inner {
  padding-inline: 3.1rem;
}
#n-tokyo .sec07 .inner .ttl {
  width: 100%;
  max-width: 46.6rem;
  margin: 0 auto;
  position: relative;
  left: 0.4rem;
}
#n-tokyo .sec07 .inner .txt {
  width: 100%;
  max-width: 52.6rem;
  margin: 3rem auto 0;
}
#n-tokyo .sec07 .contain {
  background-color: var(--c-282828);
  margin-top: -0.6rem;
  padding-block: 3.4rem 8.1rem;
}
#n-tokyo .sec07 .contain .lead {
  width: 100%;
  max-width: 48.1rem;
  margin: 2.8rem auto 0;
}
#n-tokyo .sec07 .contain .par {
  width: 100%;
  max-width: 50.7rem;
  margin: 3.7rem auto 0;
}
#n-tokyo .sec08 {
  background-color: var(--c-000);
  padding-block: 10rem 9.2rem;
}
#n-tokyo .sec08 .inner {
  padding-inline: 3.2rem;
}
#n-tokyo .sec08 .inner .ttl {
  width: 100%;
  max-width: 22.3rem;
  margin: 0 auto;
}
#n-tokyo .sec08 .inner .mapBlk {
  margin-top: 4.6rem;
  height: 36rem;
}
#n-tokyo .sec08 .inner .mapBlk .map {
  width: 100%;
  height: 100%;
}
#n-tokyo .sec08 .inner .txt {
  margin-top: 3.6rem;
}
#n-tokyo .copy {
  background-color: var(--c-000);
  padding-block: 4rem;
}
#n-tokyo .copy .img {
  display: block;
  width: 100%;
  max-width: 17.5rem;
  margin: 0 auto;
}

@keyframes btn_animation {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}/*# sourceMappingURL=style.css.map */