html, body {
  margin: 0;
}

/* header */
.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #FFF;
  padding: 24px;
}

.header-logo {
  width: 173px;
  height: 41px;
}


/* main */
.fv {
  display: flex;
}
.fv-noon, .fv-night {
  width: 50%;
  height: 630px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}

.fv-noon {
  background-image: url('./images/fv-noon.png');
}

.fv-night {
  background-image: url('./images/fv-night.png');
}

.fv-night__cover {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.6);
}

.fv-noon__content, .fv-night__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  height: 100%;
}

.fv-noon__content_text, .fv-night__content_text {
  max-width: 480px;
  margin: 0 auto;
  color: #000;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  margin-top: 80px;
}

.fv-night__content_text {
  color: #FFF;
}

.fv-night__content {
  position: relative;
  z-index: 10;
}

.fv-noon__logo,
.fv-night__logo {
  width: min(100%, 300px);
  /* height: 92px; */
}

.fv-noon__btn, .fv-night__btn {
  position: absolute;
  left: 50%;
  bottom: 50px;
  transform: translateX(-50%);
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  display: inline-block;
  width: 260px;
  border-radius: 98px;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  padding: 22px 0;
  text-decoration: none;
  margin-top: 129px;
  z-index: 10;
}

.fv-noon__btn {
  color: #FFF;
  background-color: #000;
}

.fv-night__btn {
  color: #000;
  background-color: #FFF;
}

.main-content {
  background-image: url('./images/s-parts1.png'), url('./images/s-parts2.png'), url('./images/s-parts3.png');
  background-position: right 0 top -20%, left 0 top 113px, left bottom -280px;
  background-size: 80% auto, 100% auto, 80% auto;
	background-repeat: no-repeat, no-repeat, no-repeat;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 132px 0 160px 0;
}

.main-content__top {
  max-width: 840px;
  margin: 0 auto 140px auto;
  text-align: center;
}

.main-content__top_title {
  color: #000;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 30px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 32px;
}

.main-content__top_content {
  color: #000;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 220%;
  margin-bottom: 20px;
}

.main-content__section {
  margin-bottom: 140px;
}

.main-content__section_title {
  color: #000;
  font-family: "Roboto", sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 32px;
}

.main-content__access {
  display: flex;
  align-items: center;
}

.main-content__access_map {
  width: 623px;
  height: 346px;
  border-radius: 20px;
  margin-right: 52px;
  overflow: hidden;
}

.main-content__access_info-title {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  margin-bottom: 0;
}

.main-content__access_info-content {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  margin-top: 0;
  margin-bottom: 24px;
}

/* News */
.main-content__news {
}
.main-content__news_noContent {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  margin-top: 0;
  margin-bottom: 24px;
}

/* footer */

.footer {
  background-color: #000;
  padding: 61px 120px 41px 120px;
}

.footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer-top__img_1 {
  width: 231px;
  height: 55px;
}

.footer-top__img_2 {
  width: 154px;
  height: 33px;
}

.footer-top__icons {
  display: flex;
}

.footer-top__icon_link {
  display: inline-block;
  margin-right: 23px;
}

.footer-top__icon {
  width: 44px;
  height: 44px;
}

.footer-top__icon_link:last-child {
  margin-right: 0;
}

.footer-bottom, .footer-bottom__left, .footer-bottom__right {
  display: flex;
}

.footer-bottom {
  justify-content: space-between;
  margin-top: 76px;
}

.footer-bottom__left a, .footer-bottom__right {
  color: #C7C7C7;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.footer-bottom__right_text, .footer-bottom__left a {
  margin: 0;
  margin-right: 32px;
}

.footer-bottom__right_text:last-child {
  margin-right: 0;
}

.footer-bottom__left {
  text-decoration-line: underline;
}

.pc_only {
  display: block;
}
.sp_only {
  display: none;
}

@media screen and (max-width: 767px) {
  /* header */
  .header {
    padding: 24px 20px;
  }

  .header-logo {
    width: 138px;
    height: 33px;
  }

  /* main */
  .fv {
    flex-direction: column;
  }
  .fv-noon, .fv-night {
    width: 100%;
    height: 400px;
  }

  /* .fv-noon__logo {
    width: 225px;
    height: 52px;
    object-fit: cover;
  } */

  .fv-noon__logo,
  .fv-night__logo {
    width: min(100%, 111px);
    /* height: 92px; */
  }

  .fv-noon__content, .fv-night__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 100%;
  }

  .fv-noon__content_text, .fv-night__content_text {
    width: 335px;
    font-size: 14px;
    margin-top: 46px;
    margin-bottom: 28px;
  }

  .fv-night__content_text {
    color: #FFF;
  }

  .fv-night__content {
    position: relative;
    z-index: 10;
  }

  .fv-noon__btn, .fv-night__btn {
    bottom: 30px;
  }

  .container {
    max-width: 730px;
    width: 90%;
    padding: 64px 0 80px 0;
  }

  .main-content {
    background-image: url('./images/s-parts1.png'), url('./images/s-parts2.png'), url('./images/s-parts3.png');
    background-position: right -100px top 5%, left -150px top 413px, left -300px bottom 80px;
    background-size: 150% auto, 200% auto, 200% auto;
    background-repeat: no-repeat, no-repeat, no-repeat;
  }

  .main-content__top {
    max-width: 100%;
    margin: 0 auto 60px auto;
    text-align: left;
  }

  .main-content__top_title {
    font-size: 24px;
  }

  .main-content__top_content {
    /* text-align: left; */
    font-size: 14px;
  }

  .main-content__section {
    margin-bottom: 80px;
  }

  .main-content__section_title {
    font-size: 32px;
    margin-top: 0;
    margin-bottom: 22px;
  }

  .main-content__access {
    flex-direction: column;
  }

  .main-content__access_map {
    min-width: 335px;
    width: 335px;
    height: 256px;
    margin: 0 auto;
  }

  .main-content__access_info-title {
    font-size: 14px;
  }

  .main-content__access_info-content {font-size: 14px;
    font-style: normal;
    margin-bottom: 20px;
  }

  .main-content__news_noContent {
    font-size: 14px;
  }


  /* footer */
  .footer {
    padding: 52px 37px 22px 37px;
  }

  .footer-top {
    justify-content: space-between;
    flex-direction: column;
    margin-bottom: 36px;
  }

  .footer-top__img_1 {
    width: 198px;
    height: 47px;
    margin-bottom: 43px;
  }

  .footer-top__img_2 {
    width: 128px;
    height: 27px;
  }

  .footer-top__imgs {
    margin-bottom: 43px;
  }

  .footer-top__icon_link {
    display: inline-block;
    margin-right: 23px;
  }

  .footer-top__icon {
    width: 36px;
    height: 36px;
  }

  .footer-bottom, .footer-bottom__left, .footer-bottom__right {
    display: flex;
  }

  .footer-bottom, .footer-bottom__right {
    flex-direction: column;
  }

  .footer-bottom {
    justify-content: space-between;
    margin-top: 0;
  }

  .footer-bottom__left a, .footer-bottom__right {
    font-size: 11px;
  }

  .footer-bottom__right_text, .footer-bottom__left a {
    margin-right: 24px;
  }

  .footer-bottom__right_text {
    margin-bottom: 6px;
    text-align: center;
  }

  .footer-bottom__left {
    justify-content: center;
    margin-bottom: 20px;
  }

  .pc_only {
    display: none;
  }
  .sp_only {
    display: block;
  }
}