body {
  position: relative;
  top: 0px;
  left: 0px;
  width: 1280px;
  height: 7829px;
  margin: 0px;
  background: transparent
    linear-gradient(90deg, #e0e4ed 0%, #ffffff 37%, #e0e4ed 100%) 0% 0%
    no-repeat padding-box;
  opacity: 1;
}
.site-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 1280px;
  height: 72px;
  background: transparent;
  z-index: 10;
}

.header-container {
  position: relative;
  top: 24px;
  left: 24px;
  width: 172px;
  height: 49px;
  opacity: 1;
}

.header-container a img {
  width: 172px;
  height: auto;
}

.hero {
  position: relative;
  width: 1280px;
  height: 640px;
  overflow: hidden;
}

.hero-image img {
  width: 1538px;
  height: auto;
  object-fit: cover;
  transform: translate(-178px, -40px);
}

.hero-content {
  position: absolute;
  top: 125px;
  left: 110px;
  width: 510px;
  height: 464px;
}

.hero-divider {
  position: absolute;
  width: 220px;
  height: 32px;
  text-align: left;
  font: normal normal bold 22px/35px Noto Sans JP;
  letter-spacing: 0px;
  color: #7a6b20;
  opacity: 1;
}
.hero-sub-title {
  position: absolute;
  top: 20px;
}
.highlight {
  font: normal normal bold 22px/35px Noto Sans JP;
  letter-spacing: 0px;
  color: #7a6b20;
}

.normal-text {
  font: normal normal bold 22px/35px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
}

.hero-main-title {
  position: absolute;
  top: 54px;
  left: 0px;
  width: 480px;
  height: 137px;
  text-align: left;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  opacity: 1;
}
.highlight-green {
  color: #007c7c;
}

.hero-description {
  position: absolute;
  top: 190px;
  left: 0px;
  width: 510px;
  height: 110px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  white-space: nowrap;
  opacity: 1;
  margin-top: 24px;
}

.hero-cta {
  position: absolute;
  top: 378px;
  left: 0;
  width: 312px;
  height: 83px;
  text-align: center;
  opacity: 1;
}

.cta-text {
  display: block;
  width: 100%;
  height: 17px;
  font: normal normal bold 12px/19px Noto Sans JP;
  color: #1f1f1f;
  text-align: center;
  opacity: 1;
  margin-bottom: 8px;
}

.cta-button {
  display: block;
  width: 312px;
  height: 58px;
  background: #d79c34;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 58px;
  text-decoration: none;
  border-radius: 4px;
  margin-top: 0px;
}

.cta-button:hover {
  background: #c78b2b;
}

.language-support {
  position: relative;
  left: 0;
  width: 1280px;
  height: 560px;
  background: rgba(255, 255, 255, 0);
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.language-support * {
  opacity: 1 !important;
}
.language-support .title {
  font-size: 48px;
  font-weight: bold;
  line-height: 67px;
  color: #1f1f1f;
  opacity: 1;
}
.language-support .highlight-green {
  color: #007c7c;
}

.language-support .description {
  font-size: 16px;
  line-height: 29px;
  text-align: center;
  color: #1f1f1f;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  opacity: 1;
}

.language-logos {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 30px;
  opacity: 1;
}

.language-logos img {
  height: 56px;
  width: auto;
}

.price {
  position: relative;
  width: 1280px;
  height: 587px;
  background: rgba(255, 255, 255, 0.56);
  opacity: 1;
}

.price-title {
  position: absolute;
  top: 120px;
  left: 304px;
  width: 690px;
  height: 70px;
  text-align: center;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  opacity: 1;
}

.price-title .highlight-green {
  color: #007c7c;
}

.price-description {
  position: absolute;
  top: 246px;
  left: 80px;
  width: 1120px;
  height: 82px;
  text-align: center;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.cta-container {
  position: absolute;
  top: 384px;
  left: 484px;
  width: 312px;
  height: 83px;
  text-align: center;
  opacity: 1;
}
.cta-text {
  display: block;
  width: 100%;
  height: 17px;
  font: normal normal bold 12px/19px Noto Sans JP;
  color: #1f1f1f;
  text-align: center;
  opacity: 1;
  margin-bottom: 8px;
}

.cta-button {
  display: block;
  width: 312px;
  height: 58px;
  background: #d79c34;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 58px;
  text-decoration: none;
  border-radius: 4px;
  margin-top: 0px;
}

.cta-button:hover {
  background: #b5833b;
}

.inner {
  position: relative;
  width: 1280px;
  height: 2417px;
  background: rgba(255, 255, 255, 0);
  opacity: 1;
}
.inner-title {
  position: absolute;
  top: 120px;
  left: 0px;
  width: 1280px;
  height: 137px;
}
.inner-title .highlight-green {
  position: absolute;
  width: 1280px;
  height: 70px;
  text-align: center;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  display: inline-block;
  opacity: 1;
}

.inner-title .black-text {
  position: absolute;
  top: 67px;
  width: 1280px;
  height: 70px;
  text-align: center;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.item {
  position: absolute;
  top: 337px;
  left: 0px;
  width: 1200px;
  height: 600px;
  opacity: 1;
}
.item .item-image {
  width: 760px;
  height: 600px;
}
.item .item-image img {
  position: absolute;
  width: 1198px;
  height: auto;
  object-fit: cover;
  transform: translate(-219px, -333px);
  clip-path: inset(333px 219px 453px 219px);
}

.item .item-title {
  position: absolute;
  top: 141px;
  left: 840px;
  width: 360px;
  height: 105px;
  text-align: left;
  font: normal normal bold 24px/35px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.item .item-description {
  position: absolute;
  top: 262px;
  left: 840px;
  width: 360px;
  height: 197px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.item2 {
  position: absolute;
  top: 1017px;
  left: 80px;
  width: 1200px;
  height: 600px;
  opacity: 1;
}
.item2 .item-image {
  position: absolute;
  left: 440px;
  width: 760px;
  height: 600px;
}
.item2 .item-image img {
  position: absolute;
  width: 1727px;
  height: auto;
  object-fit: cover;
  transform: translate(-330px, -0px);
  clip-path: inset(0px 640px 259px 348px);
}

.item2 .item-title {
  position: absolute;
  top: 123px;
  left: 0px;
  width: 360px;
  height: 105px;
  text-align: left;
  font: normal normal bold 24px/35px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.item2 .item-description {
  position: absolute;
  top: 251px;
  left: 0px;
  width: 360px;
  height: 197px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.item3 {
  position: absolute;
  top: 1697px;
  left: 0px;
  width: 1200px;
  height: 600px;
  opacity: 1;
}

.item3 .item-image {
  position: absolute;
  left: 0px;
  width: 760px;
  height: 600px;
  opacity: 1;
}
.item3 .item-image img {
  position: absolute;
  width: 1362px;
  height: auto;
  object-fit: cover;
  transform: translate(-297px, -0px);
  clip-path: inset(0px 305px 1px 297px);
}
.item3 .item-title {
  position: absolute;
  top: 141px;
  left: 840px;
  width: 360px;
  height: 105px;
  text-align: left;
  font: normal normal bold 24px/35px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.item3 .item-description {
  position: absolute;
  top: 262px;
  left: 840px;
  width: 360px;
  height: 197px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.sample {
  position: absolute;
  top: 4204px;
  left: 0.000732421875px;
  width: 1280px;
  height: 1167px;
  background: rgba(255, 255, 255, 0.56);
  opacity: 1;
}

.sample .sample-container {
  position: absolute;
  top: 120px;
  left: 56px;
  width: 1168px;
  height: 951px;
  opacity: 1;
}

.sample-container .sample-title {
  position: absolute;
  top: 0px;
  left: 248px;
  width: 680px;
  height: 70px;
  text-align: center;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  opacity: 1;
}

.sample-title .highlight-green {
  color: #007c7c;
}

.sample-container .sample-description {
  position: absolute;
  top: 94px;
  left: 229px;
  width: 715px;
  height: 20px;
  text-align: center;
  font: normal normal normal 14px/22px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.sample-container .case {
  position: absolute;
  top: 194px;
  left: 24px;
  width: 520px;
  height: 733px;
  border: 1px solid #007c7c;
  opacity: 1;
}

.case .case-title {
  position: absolute;
  top: 24px;
  left: 24px;
  width: 472px;
  height: 35px;
  text-align: left;
  font: normal normal bold 24px/38px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.case .case-image {
  position: absolute;
  top: 83px;
  left: 24px;
  width: 472px;
  height: 200px;
  opacity: 1;
}

.case .case-image img {
  position: absolute;
  width: 533px;
  height: auto;
  object-fit: cover;
  transform: translate(-30px, -24px);
  clip-path: inset(24px 30.5px 120px 30.5px);
}

.case .case-description {
  position: absolute;
  top: 307px;
  left: 24px;
  width: 472px;
  height: 402px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.sample-container .case2 {
  position: absolute;
  top: 194px;
  left: 624px;
  width: 520px;
  height: 733px;
  border: 1px solid #007c7c;
  opacity: 1;
}

.case2 .case-title {
  position: absolute;
  top: 24px;
  left: 24px;
  width: 472px;
  height: 35px;
  text-align: left;
  font: normal normal bold 24px/38px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.case2 .case-image {
  position: absolute;
  top: 83px;
  left: 24px;
  width: 472px;
  height: 200px;
  opacity: 1;
}
.case2 .case-image img {
  position: absolute;
  width: 554px;
  height: auto;
  object-fit: cover;
  transform: translate(-70px, -24px);
  clip-path: inset(24px 12px 88px 70px);
}
.case2 .case-description {
  position: absolute;
  top: 307px;
  left: 24px;
  width: 472px;
  height: 402px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.reason {
  position: absolute;
  top: 5371px;
  left: 0.000732421875px;
  width: 1280px;
  height: 837px;
  background: rgba(255, 255, 255, 0);
  opacity: 1;
}

.reason .reason-container {
  position: absolute;
  top: 120px;
  left: 72px;
  width: 1128px;
  height: 597px;
  opacity: 1;
}

.reason-container .reason-title {
  position: absolute;
  top: 0px;
  left: 207px;
  width: 720px;
  height: 70px;
  text-align: center;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  opacity: 1;
}

.reason-title .highlight-green {
  color: #007c7c;
  font-size: 48px;
  line-height: 67px;
}

.reason-container .reason-description {
  position: absolute;
  top: 94px;
  left: 204px;
  width: 730px;
  height: 20px;
  text-align: center;
  font: normal normal normal 14px/22px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.reason-container .reason-case {
  position: absolute;
  top: 190px;
  left: 0px;
  width: 528px;
  height: 407px;
  opacity: 1;
}

.reason-case .case-category {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.case-category .case-tag {
  display: inline-block;
  width: 56px;
  height: 28px;
  border: 1px solid #1f1f1f;
  text-align: center;
  line-height: 28px;
  font-size: 14px;
  font-weight: normal;
  color: #1f1f1f;
}

.case-category .case-subtitle {
  font-size: 14px;
  color: #1f1f1f;
}
.reason-case .case-title {
  position: absolute;
  top: 48px;
  left: 8px;
  width: 520px;
  height: 73px;
  text-align: left;
  font: normal normal bold 24px/38px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.reason-case .case-description {
  position: absolute;
  top: 137px;
  left: 8px;
  width: 520px;
  height: 402px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.reason-case2 {
  position: absolute;
  top: 190px;
  left: 600px;
  width: 528px;
  height: 379px;
  opacity: 1;
}

.reason-case2 .case2-category {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.case2-category .case2-tag {
  display: inline-block;
  width: 56px;
  height: 28px;
  border: 1px solid #1f1f1f;
  text-align: center;
  line-height: 28px;
  font-size: 14px;
  font-weight: normal;
  color: #1f1f1f;
}

.case2-category .case2-subtitle {
  font-size: 14px;
  color: #1f1f1f;
}
.reason-case2 .case-title {
  position: absolute;
  top: 48px;
  left: 8px;
  width: 520px;
  height: 73px;
  text-align: left;
  font: normal normal bold 24px/38px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.reason-case2 .case-description {
  position: absolute;
  top: 137px;
  left: 8px;
  width: 520px;
  height: 402px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.image-grid {
  position: absolute;
  display: flex;
  top: 6208px;
  left: 0px;
  width: 1280px;
  height: 200px;
  opacity: 1;
  flex-wrap: nowrap;
}

.image-grid .image-item {
  width: 320px;
  height: 200px;
  overflow: hidden;
}

.image-grid .image-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.block {
  position: absolute;
  top: 6408px;
  left: 0px;
  width: 1280px;
  height: 708px;
  background: rgba(255, 255, 255, 0.56);
  opacity: 1;
}

.block .block-container {
  position: absolute;
  top: 120px;
  left: 120px;
  width: 1040px;
  height: 468px;
  opacity: 1;
}

.block-container .block-title {
  position: absolute;
  top: 0px;
  left: 256px;
  width: 528px;
  height: 70px;
  text-align: left;
  font: normal normal bold 48px/67px Noto Sans JP;
  letter-spacing: 0px;
  color: #007c7c;
  opacity: 1;
}

.block-container .block-content {
  position: absolute;
  display: flex;
  top: 150px;
  left: 80px;
  width: 890px;
  height: 242px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.block-container .block-signature {
  position: absolute;
  top: 415px;
  left: 80px;
  width: 880px;
  height: 53px;
  text-align: right;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.closing {
  position: absolute;
  top: 7116px;
  left: 0px;
  width: 1280px;
  height: 600px;
  opacity: 1;
}

.closing-image img {
  width: 100%;
  height: 600px;
  object-fit: cover;
  object-position: top;
}

.closing .closing-content {
  position: absolute;
  top: 92px;
  left: 200px;
  width: 880px;
  height: 242px;
  opacity: 1;
}

.closing-content .closing-description {
  position: absolute;
  width: 880px;
  height: 53px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.closing-content .bullet-list {
  position: absolute;
  display: flex;
  top: 77px;
  flex-direction: column;
  gap: 10px;
}

.bullet-item {
  display: flex;
  height: 24px;
  align-items: center;
  font: normal normal bold 16px/38px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
}

.bullet-item::before {
  content: "•";
  font-size: 16px;
  color: #007c7c;
  font-weight: bold;
  margin-right: 8px;
  margin-left: 8px;
}

.closing-content .closing-message {
  position: absolute;
  top: 189px;
  left: 0px;
  width: 880px;
  height: 53px;
  text-align: left;
  font: normal normal normal 16px/29px Noto Sans JP;
  letter-spacing: 0px;
  color: #1f1f1f;
  opacity: 1;
}

.closing-content .closing-cta {
  position: absolute;
  top: 298px;
  left: 0px;
  width: 312px;
  height: 83px;
  opacity: 1;
}

.closing-cta .cta-text {
  position: absolute;
  display: block;
  width: 100%;
  height: 17px;
  font: normal normal bold 12px/19px Noto Sans JP;
  color: #1f1f1f;
  text-align: center;
  opacity: 1;
  margin-bottom: 8px;
}

.closing-cta .cta-button {
  position: absolute;
  display: block;
  top: 25px;
  width: 312px;
  height: 58px;
  background: #d79c34;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 58px;
  text-decoration: none;
  border-radius: 4px;
  margin-top: 0px;
}

.cta-button:hover {
  background: #c78b2b;
}

.site-footer {
  position: absolute;
  top: 7716px;
  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;
    margin: 0;
    padding: 0;
    min-height: 100vh;
    width: 100%;
    background: linear-gradient(90deg, #e0e4ed 0%, #ffffff 37%, #e0e4ed 100%);
    overflow-x: hidden;
  }

  .site-header {
    width: 100%;
    height: 64px;
  }

  .header-container {
    top: 16px;
    left: 16px;
    width: 113px;
    height: 32px;
  }

  .header-container a img {
    width: 113px;
    height: auto;
  }

  .hero {
    position: relative;
    width: 375px;
    height: 695px;
    overflow: hidden;
  }
  .hero-image {
    width: 375px;
    height: 695px;
  }
  .hero-image img {
    width: 990px;
    height: auto;
    object-fit: cover;
    transform: translate(-400px, -0px);
    clip-path: inset(0px 0px 0px 400px);
  }

  .hero-content {
    position: absolute;
    top: 120px;
    left: 16px;
    width: 343px;
    height: 515px;
  }

  .hero-divider {
    position: absolute;
    width: 176px;
    height: 32px;
    text-align: left;
    font: normal normal bold 22px/46px Noto Sans JP;
    letter-spacing: 0px;
    color: #7a6b20;
    opacity: 1;
  }
  .hero-sub-title {
    position: absolute;
    top: 23px;
    width: 220px;
    height: 67px;
    text-align: left;
    font: normal normal bold 22px/35px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }
  .highlight {
    font: normal normal bold 22px/35px Noto Sans JP;
    letter-spacing: 0px;
    color: #7a6b20;
  }

  .normal-text {
    font: normal normal bold 22px/35px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
  }
  .hero-main-title {
    position: absolute;
    top: 94px;
    width: 320px;
    height: 136px;
    text-align: left;
    font: normal normal bold 32px/45px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .highlight-green {
    color: #007c7c;
  }

  .hero-content .hero-description {
    position: absolute;
    top: 263px;
    width: 343px;
    height: 132px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
    white-space: normal;
    overflow: hidden;
  }
  .hero-description br {
    display: none;
  }
  .hero-cta {
    top: 434px;
    width: 343px;
    height: 81px;
    opacity: 1;
  }
  .hero-cta .cta-text {
    font-size: 12px;
    font-weight: bold;
    color: #1f1f1f;
    margin-bottom: 0px;
  }
  .hero-cta .cta-button {
    display: block;
    top: 25px;
    width: 343px;
    height: 56px;
    background: #ce994a 0% 0% no-repeat padding-box;
    border-radius: 4px;
    opacity: 1;
  }

  .cta-button:hover {
    background: #c78b2b;
  }

  .language-support {
    position: absolute;
    top: 695px;
    left: 0px;
    width: 375px;
    height: 435px;
    background: rgba(255, 255, 255, 0);
  }

  .language-support .title {
    position: absolute;
    top: 56px;
    left: 50px;
    width: 276px;
    height: 71px;
    text-align: center;
    font: normal normal bold 23px/37px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .language-support .highlight-green {
    display: block;
    color: #007c7c;
  }

  .language-support .description {
    position: absolute;
    top: 167px;
    left: 16px;
    width: 343px;
    height: 132px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
    white-space: normal;
    overflow: hidden;
  }
  .description br {
    display: none;
  }

  .language-logos {
    position: absolute;
    top: 339px;
    left: 16px;
    width: 351px;
    height: 40px;
    opacity: 1;
  }

  .language-logos img {
    height: 40px;
    width: 40px;
  }
  .language-logos img:nth-child(n + 7) {
    display: none;
  }

  .price {
    position: absolute;
    top: 1130px;
    left: 0px;
    width: 375px;
    height: 506px;
    background: rgba(255, 255, 255, 0.56);
  }

  .price-title {
    position: absolute;
    top: 56px;
    left: 80px;
    width: 216px;
    height: 73px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .price-title .highlight-green {
    color: #007c7c;
  }

  .price-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;
    white-space: normal;
    overflow: hidden;
  }
  .price-description br {
    display: none;
  }

  .cta-container {
    position: absolute;
    top: 369px;
    left: 16px;
    width: 343px;
    height: 81px;
    opacity: 1;
  }

  .cta-container .cta-text {
    font-size: 12px;
    font-weight: bold;
    color: #1f1f1f;
  }

  .cta-container .cta-button {
    display: block;
    background: #d79c34;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    line-height: 50px;
    text-decoration: none;
    border-radius: 4px;
    margin: 0 auto;
    top: 25px;
    width: 343px;
    height: 56px;
    opacity: 1;
  }

  .cta-button:hover {
    background: #c78b2b;
  }

  .inner {
    position: absolute;
    top: 1636px;
    left: 0px;
    width: 375px;
    height: 1749px;
    margin-top: 56px;
    opacity: 1;
  }

  .inner-title {
    position: absolute;
    top: 0px;
    left: 32px;
    width: 312px;
    height: 112px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .inner-title .highlight-green {
    position: absolute;
    top: 0px;
    left: 12px;
    width: 288px;
    height: 35px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
  }

  .inner-title .black-text {
    position: absolute;
    top: 38px;
    left: 0px;
    width: 312px;
    height: 35px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
  }
  .item {
    position: absolute;
    top: 136px;
    left: 0px;
    width: 375px;
    height: 523px;
    opacity: 1;
  }

  .item .item-image {
    top: 136px;
    left: 0px;
    width: 375px;
    height: 200px;
    opacity: 1;
  }
  .item .item-image img {
    position: absolute;
    width: 800px;
    height: auto;
    object-fit: cover;
    transform: translate(-155px, -300px);
    clip-path: inset(300px 268px 428px 108px);
  }

  .item .item-title {
    position: absolute;
    top: 224px;
    left: 16px;
    width: 330px;
    height: 55px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .item .item-description {
    position: absolute;
    top: 295px;
    left: 16px;
    width: 343px;
    height: 188px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }
  .item2 {
    position: absolute;
    top: 659px;
    left: 0px;
    width: 375px;
    height: 523px;
    opacity: 1;
  }
  .item2 .item-image {
    top: 0px;
    left: 0px;
    width: 375px;
    height: 200px;
    opacity: 1;
  }

  .item2 .item-image img {
    position: absolute;
    width: 852px;
    height: auto;
    object-fit: cover;
    transform: translate(-163px, -50px);
    clip-path: inset(50px 316px 180px 150px);
  }

  .item2 .item-title {
    position: absolute;
    top: 224px;
    left: 16px;
    width: 330px;
    height: 55px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .item2 .item-description {
    position: absolute;
    top: 295px;
    left: 16px;
    width: 343px;
    height: 188px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .item3 {
    position: absolute;
    top: 1182px;
    left: 0px;
    width: 375px;
    height: 523px;
    opacity: 1;
  }

  .item3 .item-image {
    top: 0px;
    left: 0px;
    width: 375px;
    height: 200px;
    opacity: 1;
  }

  .item3 .item-image img {
    position: absolute;
    width: 672px;
    height: auto;
    object-fit: cover;
    transform: translate(-15px, -0px);
    clip-path: inset(0px 282px 95px 15px);
  }
  .item3 .item-title {
    position: absolute;
    top: 224px;
    left: 16px;
    width: 330px;
    height: 55px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .item3 .item-description {
    position: absolute;
    top: 295px;
    left: 16px;
    width: 343px;
    height: 188px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .sample {
    position: absolute;
    top: 3441px;
    left: 0px;
    width: 375px;
    height: 1738px;
    background: rgba(255, 255, 255, 0.56);
  }

  .sample .sample-container {
    display: contents !important;
  }

  .sample .sample-title {
    position: absolute;
    top: 56px;
    left: 80px;
    width: 216px;
    height: 73px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .sample-title .highlight-green {
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .sample .sample-description {
    position: absolute;
    top: 153px;
    left: 16px;
    width: 343px;
    height: 36px;
    text-align: left;
    font: normal normal normal 12px/19px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .sample .case {
    position: absolute;
    top: 213px;
    left: 16px;
    width: 343px;
    height: 698px;
    border: 1px solid #007c7c;
    opacity: 1;
  }

  .case .case-title {
    position: absolute;
    top: 16px;
    left: 16px;
    width: 311px;
    height: 26px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .case .case-image {
    position: absolute;
    top: 58px;
    left: 16px;
    width: 311px;
    height: 160px;
    opacity: 1;
  }

  .case .case-image img {
    position: absolute;
    width: 352px;
    height: auto;
    object-fit: cover;
    transform: translate(-20px, -19px);
    clip-path: inset(19px 20px 50px 20px);
  }

  .case .case-description {
    position: absolute;
    top: 242px;
    left: 16px;
    width: 311px;
    height: 440px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .sample .case2 {
    position: absolute;
    top: 927px;
    left: 16px;
    width: 343px;
    height: 755px;
    border: 1px solid #007c7c;
    opacity: 1;
  }

  .case2 .case-title {
    position: absolute;
    top: 16px;
    left: 16px;
    width: 311px;
    height: 55px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .case2 .case-image {
    position: absolute;
    top: 87px;
    left: 16px;
    width: 311px;
    height: 160px;
    opacity: 1;
  }
  .case2 .case-image img {
    position: absolute;
    width: 366px;
    height: auto;
    object-fit: cover;
    transform: translate(-46px, -19px);
    clip-path: inset(19px 8px 30px 46px);
  }
  .case2 .case-description {
    position: absolute;
    top: 271px;
    left: 16px;
    width: 311px;
    height: 440px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .reason {
    position: absolute;
    top: 5179px;
    left: 0px;
    width: 375px;
    height: 1189px;
    background: rgba(255, 255, 255, 0);
  }

  .reason .reason-container {
    display: contents !important;
  }

  .reason .reason-title {
    position: absolute;
    top: 56px;
    left: 80px;
    width: 216px;
    height: 73px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    opacity: 1;
  }

  .reason-title .highlight-green {
    left: 36px;
    width: 144px;
    height: 35px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
  }

  .reason .reason-description {
    position: absolute;
    top: 153px;
    left: 16px;
    width: 343px;
    height: 36px;
    text-align: left;
    font: normal normal normal 12px/19px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .reason .reason-case {
    position: absolute;
    top: 209px;
    left: 8px;
    width: 351px;
    height: 458px;
    opacity: 1;
  }

  .reason-case .case-category {
    position: absolute;
    display: flex;
    top: 0px;
    left: 8px;
    width: 294px;
    height: 33px;
    opacity: 1;
  }

  .case-category .case-tag {
    position: absolute;
    display: inline-block;
    left: 0px;
    width: 51px;
    height: 25px;
    border: 1px solid #1f1f1f;
    text-align: center;
    font: normal normal normal 12px/19px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .case-category .case-subtitle {
    position: absolute;
    left: 67px;
    width: 230px;
    height: 17px;
    text-align: left;
    font: normal normal normal 12px/19px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }
  .reason-case .case-title {
    position: absolute;
    top: 45px;
    left: 8px;
    width: 343px;
    height: 55px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .reason-case .case-description {
    position: absolute;
    top: 116px;
    left: 8px;
    width: 343px;
    height: 342px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .reason-case2 {
    position: absolute;
    top: 703px;
    left: 8px;
    width: 351px;
    height: 430px;
    opacity: 1;
  }

  .reason-case2 .case2-category {
    position: absolute;
    display: flex;
    left: 8px;
    width: 199px;
    height: 33px;
  }

  .case2-category .case2-tag {
    position: absolute;
    display: inline-block;
    width: 51px;
    height: 25px;
    border: 1px solid #1f1f1f;
    text-align: center;
    line-height: 28px;
    font: normal normal normal 12px/19px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .case2-category .case2-subtitle {
    position: absolute;
    left: 67px;
    width: 230px;
    height: 17px;
    text-align: left;
    font: normal normal normal 12px/19px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }
  .reason-case2 .case-title {
    position: absolute;
    top: 45px;
    left: 8px;
    width: 343px;
    height: 55px;
    text-align: left;
    font: normal normal bold 18px/29px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .reason-case2 .case-description {
    position: absolute;
    top: 116px;
    left: 8px;
    width: 343px;
    height: 342px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .image-grid {
    position: absolute;
    display: flex;
    top: 6371px;
    left: 0px;
    width: 375px;
    height: 56px;
    opacity: 1;
    flex-wrap: nowrap;
  }

  .image-grid .image-item {
    width: 93.75px;
    height: 56px;
    overflow: hidden;
  }

  .image-grid .image-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .block {
    position: absolute;
    top: 6427px;
    left: 0px;
    width: 375px;
    height: 753px;
    background: rgba(255, 255, 255, 0.56);
  }

  .block .block-container {
    display: contents !important;
  }

  .block .block-title {
    position: absolute;
    top: 56px;
    left: 55px;
    width: 264px;
    height: 35px;
    text-align: center;
    font: normal normal bold 24px/38px Noto Sans JP;
    letter-spacing: 0px;
    color: #007c7c;
    opacity: 1;
  }

  .block .block-content {
    position: absolute;
    display: flex;
    top: 115px;
    left: 16px;
    width: 343px;
    height: 510px;
    text-align: left;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .block-container .block-signature {
    position: absolute;
    top: 649px;
    left: 16px;
    width: 343px;
    height: 48px;
    text-align: right;
    font: normal normal normal 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
    opacity: 1;
  }

  .closing {
    position: absolute;
    top: 7236px;
    left: 0px;
    width: 375px;
    height: 737px;
    opacity: 1;
  }

  .closing .closing-image {
    position: absolute;
    top: 477px;
    left: 0px;
    width: 375px;
    height: 260px;
    opacity: 1;
  }

  .closing .closing-image img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 575px;
    height: 260px;
    object-fit: cover;
    transform: translate(-200px, 0px);
    clip-path: inset(0px 0px 0px 200px);
  }

  .closing .closing-content {
    display: contents !important;
  }
  .closing .closing-description {
    position: absolute;
    top: 0px;
    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;
  }

  .closing .bullet-list {
    position: absolute;
    display: flex;
    top: 120px;
    flex-direction: column;
    gap: 10px;
  }

  .bullet-item {
    display: flex;
    height: 24px;
    align-items: center;
    font: normal normal bold 14px/28px Noto Sans JP;
    letter-spacing: 0px;
    color: #1f1f1f;
  }

  .bullet-item::before {
    content: "•";
    font-size: 16px;
    color: #007c7c;
    font-weight: bold;
    margin-right: 8px;
    margin-left: 8px;
  }

  .closing .closing-message {
    position: absolute;
    top: 212px;
    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;
  }

  .closing-content .closing-cta {
    position: absolute;
    top: 340px;
    left: 17px;
    width: 343px;
    height: 81px;
    opacity: 1;
  }

  .closing-cta .cta-text {
    position: absolute;
    display: block;
    width: 100%;
    height: 17px;
    font: normal normal bold 12px/19px Noto Sans JP;
    color: #1f1f1f;
    text-align: center;
    opacity: 1;
    margin-bottom: 8px;
  }

  .closing-cta .cta-button {
    position: absolute;
    display: block;
    top: 25px;
    width: 343px;
    height: 56px;
    background: #d79c34;
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 58px;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 0px;
  }

  .cta-button:hover {
    background: #c78b2b;
  }

  .site-footer {
    position: absolute;
    top: 7973px;
    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;
  }
}
