body {
  position: relative;
  top: 0px;
  left: 0px;
  width: 1280px;
  height: 2382px;
  margin: 0px;
  background: transparent
    linear-gradient(90deg, #e0e4ed 0%, #ffffff 37%, #e0e4ed 100%) 0% 0%
    no-repeat padding-box;
  opacity: 1;
}
.site-header {
  position: relative;
  top: 0px;
  left: 0px;
  width: 1280px;
  height: 72px;
  opacity: 1;
}

.header-container {
  position: relative;
  top: 24px;
  left: 24px;
  width: 172px;
  height: 49px;
  opacity: 1;
}
.header-container a img {
  width: 172px;
  height: auto;
}
.content {
  position: absolute;
  top: 0px;
  left: 240px;
  width: 800px;
  height: 2270px;
  opacity: 1;
}

.main-title {
  position: absolute;
  top: 180px;
  left: 113px;
  width: 574px;
  height: 70px;
  text-align: center;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
  white-space: nowrap;
}

.description {
  position: absolute;
  top: 350px;
  left: 0px;
  width: 800px;
  height: 76px;
  text-align: left;
  font: normal normal normal 14px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.text1 {
  position: absolute;
  top: 506px;
  left: 0px;
  width: 800px;
  height: 137px;
  opacity: 1;
}
.text2 {
  position: absolute;
  top: 723px;
  left: 0px;
  width: 800px;
  height: 194px;
  opacity: 1;
}
.text3 {
  position: absolute;
  top: 997px;
  left: 0px;
  width: 800px;
  height: 101px;
  opacity: 1;
}
.text4 {
  position: absolute;
  top: 1178px;
  left: 0px;
  width: 800px;
  height: 129px;
  opacity: 1;
}
.text5 {
  position: absolute;
  top: 1387px;
  left: 0px;
  width: 800px;
  height: 277px;
  opacity: 1;
}
.imformation {
  position: absolute;
  top: 173px;
  left: 0px;
  right: 484px;
  width: 316px;
  height: 104px;
  text-align: left;
  font: normal normal normal 14px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
  white-space: nowrap;
}
.text6 {
  position: absolute;
  top: 1744px;
  left: 0px;
  width: 800px;
  height: 101px;
  opacity: 1;
}
.text7 {
  position: absolute;
  top: 1925px;
  left: 0px;
  width: 800px;
  height: 185px;
  opacity: 1;
}

h2 {
  position: absolute;
  font-size: 20px;
  margin-top: 0px;
  margin-bottom: 0px;
}

p {
  position: absolute;
  font-size: 14px;
  line-height: 20px;
  margin-top: 53px;
  margin-bottom: 8px;
}

ul {
  position: absolute;
  list-style-type: none;
  top: 89px;
  left: 0px;
  width: 800px;
  opacity: 1;
  padding-left: 0px;
}

ul li {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 8px;
}

.site-footer {
  position: absolute;
  top: 2270px;
  left: 0;
  width: 1280px;
  height: 112px;
  background: #007c7c;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
}

.footer-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 1120px;
  height: 32px;
}

.footer-logo img {
  width: 113px;
  height: 32px;
  margin-right: 40px;
}

.footer-links {
  display: flex;
  align-items: center;
  gap: 40px;
}

.footer-links a {
  color: white;
  text-decoration: none;
  font-size: 14px;
  white-space: nowrap;
}

.footer-links a img {
  margin-left: 5px;
}

.footer-links a:hover {
  text-decoration: underline;
}

.footer-copyright {
  font-size: 14px;
  color: #ffffff;
  margin-left: auto;
}

@media (max-width: 768px) {
  body {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    margin: 0;
    padding: 0;
    min-height: 100vh;
    max-width: 100%;
    width: 100vw;
    overflow-x: hidden;
    background: linear-gradient(90deg, #e0e4ed 0%, #ffffff 37%, #e0e4ed 100%);
  }
  .site-header {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    width: 375px;
    height: 64px;
    opacity: 1;
  }

  .header-container {
    position: absolute;
    top: 16px;
    left: 16px;
    width: 113px;
    height: 32px;
    opacity: 1;
  }
  .header-container a img {
    width: 113px;
    height: 32px;
  }
  .content {
    position: relative;
    top: 0px;
    left: -16px;
    width: 375px;
    height: 2450px;
    opacity: 1;
  }

  .main-title {
    position: absolute;
    top: 100px;
    left: 16px;
    width: 343px;
    height: 29px;
    text-align: left;
    font: normal normal bold 20px/20px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .description {
    position: absolute;
    top: 169px;
    left: 16px;
    width: 343px;
    height: 160px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .content .text1 {
    position: absolute;
    top: 369px;
    left: 16px;
    width: 343px;
    height: 236px;

    opacity: 1;
  }
  .content .text2 {
    position: absolute;
    top: 645px;
    left: 16px;
    width: 343px;
    height: 348px;

    opacity: 1;
  }
  .content .text3 {
    position: absolute;
    top: 1033px;
    left: 16px;
    width: 343px;
    height: 116px;

    opacity: 1;
  }
  .content .text4 {
    position: absolute;
    top: 1189px;
    left: 16px;
    width: 343px;
    height: 200px;

    opacity: 1;
  }
  .content .text5 {
    position: absolute;
    top: 1429px;
    left: 16px;
    width: 343px;
    height: 376px;

    opacity: 1;
  }
  .imformation {
    position: absolute;
    top: 272px;
    left: 16px;
    width: 343px;
    height: 104px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
    white-space: nowrap;
  }
  .content .text6 {
    position: absolute;
    top: 1845px;
    left: 16px;
    width: 343px;
    height: 173px;

    opacity: 1;
  }
  .content .text7 {
    position: absolute;
    top: 2058px;
    left: 16px;
    width: 343px;
    height: 312px;

    opacity: 1;
  }

  h2 {
    position: absolute;
    text-align: left;
    font: normal normal bold 16px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
  }

  p {
    position: absolute;
    margin-top: 40px;
    margin-bottom: 16px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  ul {
    position: absolute;
    left: 0px;
    width: 343px;
    opacity: 1;
    padding-left: 0px;
  }

  ul li {
    margin-top: 8px;
    margin-bottom: 8px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .site-footer {
    position: absolute;
    top: 2450px;
    left: 0;
    width: 375px;
    height: 271px;
    background: #007c7c;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    opacity: 1;
  }

  .footer-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    height: 100%;
    justify-content: space-between;
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .footer-logo img {
    width: 98px;
    height: 28px;
    margin-right: 0px;
  }

  .footer-links {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
  }

  .footer-links a {
    font-size: 14px;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
  }

  .footer-links a:hover {
    text-decoration: underline;
  }

  .footer-copyright {
    font-size: 12px;
    color: #ffffff;
    text-align: center;
    white-space: nowrap;
    margin-top: 40px;
    margin-left: 0px;
  }
}
