@charset 'UTF-8';

body {
  background-color: rgb(215, 227, 229);
}
article {
  padding-top: 6.5rem;
  padding-bottom: 6.5rem;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 768px) {
  article {
    padding-top: 14rem;
    padding-bottom: 7rem;
    margin: 0 auto;
    max-width: 85.4rem;
  }
}

/* header */
#header {
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 14rem;
}
@media screen and (min-width: 768px) {
  #header {
    margin: 0;
    width: auto;
  }
}
#header h1 {
  padding-top: 1.75em;
  margin: 0;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  #header h1 {
    padding-top: 0.3em;
    font-size: 4.2rem;
  }
}
#header h1 strong {
  font-size: 3.3rem;
  font-weight: inherit;
  line-height: 1;
  letter-spacing: normal;
}
@media screen and (min-width: 768px) {
  #header h1 strong {
    font-size: 6.6rem;
  }
}
#header .desc {
  padding: 0.1em 0;
  font-size: 1.4rem;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  #header .desc {
    font-size: 2.6rem;
  }
}
#header .desc p {
  margin: 0;
  font-weight: 600;
}

/* gform */
#gform {
  height: calc(100svh - 35rem);
  min-height: 54.2rem;
  background-color: rgb(255, 255, 255);
  border-radius: 8px;
  position: relative;
  overflow-y: scroll;
}
#gform iframe {
  width: 100%;
  height: 100%;
  border: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/* bg */
#bg {
  position: absolute;
  top: 45.8rem;
  bottom: 0;
  left: calc(50% - 50vw);
  right: calc(50% - 50vw);
  z-index: -10;
}
@media screen and (min-width: 768px) {
  #bg {
    top: 24.6rem;
  }
}
#bg .image {
  height: 100%;
}
#bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 0;
  object-position: 50% 0;
}
}