body {
  opacity: 0;
  transition: opacity 0.2s ease;
}

body.loaded {
  opacity: 1;
}

.download-page {
  margin: 0;
  background: #ffffff;
  color: #000000;
}

.download-page .site-header,
.download-page .title,
.download-page .main_area,
.download-page .site-footer__inner {
  width: min(100%, 120rem);
  margin: 0 auto;
  box-sizing: border-box;
}

.download-page .site-header {
  width: 100%;
  border-bottom: 0.1rem solid #e5e5e5;
  background: #ffffff;
}

.download-page .site-header__inner {
  min-height: 8rem;
  padding: 0 1.6rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
}

.download-page .site-header__logo,
.download-page .site-footer__logo {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.download-page .site-header__nav {
  flex: 1;
}

.download-page .site-header__list,
.download-page .site-footer__list {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  flex-wrap: wrap;
}

.download-page .site-header__list a,
.download-page .site-footer__list a {
  font-size: 1.4rem;
  line-height: 1.6;
}

.download-page .site-header__contact,
.download-page .site-footer__contact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4.4rem;
  padding: 0 2rem;
  border: 0.1rem solid #000000;
  border-radius: 9999px;
  font-size: 1.4rem;
  font-weight: 700;
  white-space: nowrap;
}

.download-page .page-title {
  padding: 7rem 0 4rem;
  /* 7rem = fixed header offset */
}

.download-page .page-title .title h2,
.download-page .page-title .title h1 {
  color: #ffffff;
}

.download-page .title {
  padding: 0 4rem;
  text-align: left;
}

.download-page .title h2 {
  color: #f08a24;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 0.4rem;
}

.download-page .title h1 {
  margin-top: 0.8rem;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.3;
}

.download-page .page-title__breadcrumb {
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 1.6rem;
  line-height: 1.6;
}

.download-page .main_area {
  padding: 0 1.6rem 8rem;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 6rem;
  padding-top: 60px;
}

.download-page .left{
  display: none;
}

.download-page .left,
.download-page .right {
  width: calc((100% - 6rem) / 2);
  max-width: none;
  box-sizing: border-box;
  width: 100%;
  max-width: 90rem;
}

.download-page .tradingResults,
.download-page .materialImage1,
.download-page .suggestion,
.download-page .checkList,
.download-page .privacy,
.download-page .privacyPolicy,
.download-page .confirmation,
.download-page .company1,
.download-page .yourname1,
.download-page .mail1,
.download-page .phone1,
.download-page .businessModel1,
.download-page .industry1,
.download-page .annualSales1,
.download-page .employee1,
.download-page .numberOfEmployees1,
.download-page .know1 {
  width: 100%;
  max-width: 90rem;
  box-sizing: border-box;
  margin: auto;
}

.download-page .paperTitle {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
}

.download-page .materialImage1 {
  margin-top: 2.4rem;
}

.download-page .materialImage2 {
  display: block;
  width: 100%;
  max-width: 40rem;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
}

.download-page .suggestion {
  margin-top: 2.4rem;
}

.download-page .suggestion p {
  font-size: 1.6rem;
  line-height: 1.9;
}

.download-page .ok p {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
}

.download-page .checkList {
  margin-top: 2rem;
  padding: 2.4rem;
  border: 0.1rem solid #f08a24;
  border-radius: 1.6rem;
}

.download-page .checkList ul {
  display: grid;
  gap: 1.2rem;
}

.download-page .checkList li {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.5rem;
  line-height: 1.8;
  margin-left: 0;
}

.download-page .checkList li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #f08a24;
  padding-right: 0;
}

.download-page form {
  margin-top: 3.2rem;
}

.download-page .company1,
.download-page .yourname1,
.download-page .mail1,
.download-page .phone1,
.download-page .businessModel1,
.download-page .industry1,
.download-page .annualSales1,
.download-page .employee1,
.download-page .numberOfEmployees1,
.download-page .know1,
.download-page .privacy,
.download-page .privacyPolicy,
.download-page .confirmation {
  margin-top: 2rem;
  font-size: 1.6rem;
}

.download-page .company2,
.download-page .yourname2,
.download-page .mail2,
.download-page .phone2,
.download-page .businessModel2,
.download-page .industry2,
.download-page .annualSales2,
.download-page .employee2,
.download-page .numberOfEmployees2,
.download-page .know2 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.8rem;
  padding-right: 0;
  margin-bottom: 0.8rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.6;
}

.download-page input[type="text"],
.download-page input[type="email"],
.download-page input[type="tel"],
.download-page select {
  width: 100%;
  min-height: 4.8rem;
  padding: 0 1.6rem;
  border: 0.1rem solid #2F2F2F;
  border-radius: 0;
  background: #ffffff;
  font-size: 1.6rem;
  box-sizing: border-box;
  border: 0.1rem solid #999;
}

.download-page select {
  padding-right: 3.2rem;
}

.download-page .required {
  min-width: 3.6rem;
  height: 2rem;
  padding: 0 0.6rem;
  background-color: #E56E07;
  /* border-radius: 9999px; */
  font-size: 1rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  line-height: 1;
  color: #fff;
}

.download-page .privacy,
.download-page .privacyPolicy {
  max-width: 52rem;
}

.download-page .privacy .link,
.download-page .privacyPolicy .link {
  color: #666666;
  font-size: 1.2rem;
  line-height: 1.8;
}

.download-page .consentRow {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-top: 1.2rem;
}

.download-page input[type="checkbox"] {
  appearance: auto;
  -webkit-appearance: checkbox;
  -moz-appearance: auto;
  width: 1.6rem;
  height: 1.6rem;
  flex-shrink: 0;
  margin-right: 3px;
}

.download-page .confirmation {
  max-width: 52rem;
}

.download-page .confirmation .noLine,
.download-page .confirmation button {
  width: 100%;
  min-height: 5.6rem;
  border: none;
  border-radius: 0.4rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #f08a24;
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
  font-size: 1.6rem;
  font-weight: 700;
}

.download-page .confirmation__arrow {
  margin-left: 0.8rem;
  font-size: 1.4rem;
}

.download-page .site-footer {
  border-top: 0.1rem solid #e5e5e5;
  background: #ffffff;
}

.download-page .site-footer__inner {
  padding: 4.8rem 1.6rem;
  display: grid;
  gap: 2rem;
}

.download-page .site-footer__address {
  font-style: normal;
  font-size: 1.4rem;
  line-height: 1.8;
}

.download-page .site-footer__copy {
  font-size: 1.2rem;
  color: #666666;
}

.download-page .complete-section__top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 2.4rem;
  align-items: start;
}

.download-page .complete-section__left,
.download-page .complete-section__right {
  min-width: 0;
}

.download-page .complete-section__video iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  display: block;
}

.contact-form-section {
  padding: 6rem 1.6rem 0;
}

.contact-form-section__inner {
  width: min(100%, 80rem);
  margin: 0 auto;
}

.contact-form-section__heading {
  margin-bottom: 3.2rem;
}

.contact-form-section__heading-en,
.contact-form-section__heading-ja {
  margin: 0;
}

.contact-form-section__heading-desc {
  margin: 1.2rem 0 0;
}

.contact-form {
  display: grid;
  gap: 0;
}

.wpcf7-list-item label {
  display: flex;
  align-items: center;
}

.tradingCompanies {
  width: 95%;
}


/* confirm */

.main_area.confirm {
  width: 75.4rem;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  gap: 3rem;
}

.download_confirm_line {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.dc_line_left {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.3rem;
}

.download_confirm_requi {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: #E56E07;
  aspect-ratio: 3633/1789;
  width: 3.633rem;
  /* border-radius: 1.3rem; */
  font-size: .814rem;
  font-weight: 500;
  color: #fff;
  display: inline-block;
  background-color: #E56E07;
  color: #fff;
  padding: 0.2rem 0.4rem;
  margin: 0.4rem;
  font-size: 1.2rem;
  border-radius: 0.2rem;
}

.download_confirm_label {
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1em;
  width: fit-content;
}

.download_confirm_content {
  width: 46rem;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: calc(25.6em/16);
}

.conf_buttons {
  margin: 2rem auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem;
}

.conf_button {
  display: flex;
  align-items: center;
  justify-content: start;
  width: 29rem;
  height: 4.7rem;
  padding: 0 2rem;
  border-radius: 2.35rem;
  border: solid .1rem black;
  font-size: 1.35rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}


.download-page {
  background-color: #fff;
}

.inner.comp.down {
  flex-direction: row-reverse;
}

.comp_text span {
  font-weight: 700;
}

.download_cf {
  width: fit-content;
  margin: auto;
  padding-bottom: 9.2rem;
}

.download_cf_head {
  padding-left: 3rem;
  font-size: 2rem;
  font-weight: 700;
}

.download_cf_head span {
  margin-left: 2rem;
  font-size: 2rem;
  font-weight: 700;
}

.download_cf_ex {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  letter-spacing: .04em;
}

/* 完了画面 */
.p-form-complete {
  position: relative;
  padding: 6rem 0 6rem;
  background-color: #FFFFFF;
  overflow: hidden;
}

.l-inner-m {
  max-width: 90rem;
  margin: 0 auto;
  padding-inline: 2.4rem;
}

.p-form-complete__content {
  display: flex;
  -webkit-box-align: center;
  align-items: flex-start;
  gap: 3.2rem;
  -webkit-box-pack: justify;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}

.p-form-contact__inner {
  background-color: #FFFFFF;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 6.4rem;
  padding: 0 0 3.2rem;
}

.p-form-complete__recommendation {
  max-width: 48rem;
  width: 100%;
  display: none;
}

.p-form-complete__recommendation-image {
  max-width: 48rem;
  width: 100%;
  border-radius: 0.714rem;
  overflow: hidden;
}

.p-form-complete__recommendation-img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.p-form-complete__message {
  -webkit-box-flex: 0;
/*   flex: 0 0 56rem; */
}

.p-form-complete__title {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 160%;
  color: #E56E07;
  margin: 0 0 4rem 0;
}

.p-form-complete__text-group {
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 1.6rem;
}

.p-form-complete__text {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 160%;
  color: #3C3C3C;
  margin: 0;
}

.p-form-contact__description {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 160%;
}

.conp_button {
  text-align: center;
}

.privacyPolicy input{
  display: none;
}

@media (max-width: 767px) {
  .download-page .complete-section__top {
    grid-template-columns: 1fr;
  }

  .download-page .site-header__inner {
    min-height: auto;
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
    flex-direction: column;
    align-items: flex-start;
  }

  .download-page .site-header__nav {
    width: 100%;
  }

  .download-page .site-header__list,
  .download-page .site-footer__list {
    gap: 1.2rem 1.6rem;
  }

  .download-page .title {
    padding: 0 1.6rem;
  }

  .download-page .page-title__breadcrumb {
    font-size: 1.0rem;
    line-height: 1.5;
    margin-bottom: 1.2rem;
  }

  .download-page .title h1 {
    font-size: 3rem;
  }

  .download-page .title h2 {
    font-size: 1.4rem;
    line-height: 1.2;
  }

  .download-page .main_area {
    padding-bottom: 6rem;
    flex-direction: column;
    gap: 4rem;
    padding: 4rem 2.4rem 8rem;
  }

  .download-page .left,
  .download-page .right {
    width: 100%;
  }

  .download-page .tradingResults,
  .download-page .materialImage1,
  .download-page .suggestion,
  .download-page .checkList,
  .download-page .privacy,
  .download-page .privacyPolicy,
  .download-page .confirmation,
  .download-page .company1,
  .download-page .yourname1,
  .download-page .mail1,
  .download-page .phone1,
  .download-page .businessModel1,
  .download-page .industry1,
  .download-page .annualSales1,
  .download-page .employee1,
  .download-page .numberOfEmployees1,
  .download-page .know1 {
    max-width: 100%;
    margin-top: 3rem;
  }

  .download-page .paperTitle {
    font-size: 2rem;
  }

  .download-page .checkList {
    padding: 2rem 1.6rem;
  }

  .download-page .privacy .link,
  .download-page .privacyPolicy .link {
    line-height: 1.6;
  }

  .download-page .checkList li {
    font-size: 1.3rem;
  }


  /* confirm */
  .main_area.confirm {
    width: 100%;
    gap: 2.4rem;
  }

  .download_confirm_line {
    flex-direction: column;
    justify-content: start;
    gap: .8rem;
    width: 100%;
  }

  .dc_line_left {
    justify-content: start;
    flex-direction: row-reverse;
    gap: .8rem;
  }

  .download_confirm_requi {
    aspect-ratio: 44/22;
    width: 4.4rem;
    border-radius: 1.6rem;
    font-size: 1rem;
  }

  .download_confirm_label {
    font-size: 1.3rem;
    letter-spacing: 0;
    line-height: 1em;
    font-weight: 700;
    width: fit-content;
  }

  .download_confirm_content {
    width: 100%;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: calc(15em/14);
  }

  .conf_buttons {
    width: 100%;
    margin-top: .6rem;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: .8rem;
  }

  .conf_button {
    width: 100%;
    height: 4.8rem;
    padding: 0 2.5rem;
    border-radius: 2.4rem;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.04em;
  }


  .inner.comp.down {
    flex-direction: column;
  }

  .download_cf_ex {
    font-size: 1.4rem;
    text-align: center;
  }

  /* ダウンロード */
  .p-form-complete {
    padding: 15.625vw 0 7.8125vw;
  }

  .l-inner-m {
    width: 100%;
    padding-inline: 5.2083333333vw;
  }

  .p-form-complete__content {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    gap: 3.2rem;
    -webkit-box-pack: justify;
    justify-content: space-between;
    position: relative;
    z-index: 1;
  }

  .p-form-complete__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10.4166666667vw;
  }

  .p-form-complete__recommendation {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 100%;
  }

  .p-form-complete__recommendation-image {
    width: 100%;
    height: auto;
    aspect-ratio: 480 / 269.17;
  }

  .p-form-complete__message {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 100%;
  }

  .p-form-complete__title {
    font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 5.2083333333vw;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 160%;
    text-align: center;
    margin: 0 0 5.2083333333vw 0;
  }

  .p-form-complete__text-group {
    gap: 2.0833333333vw;
  }

  .p-form-complete__text {
    font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 3.3854166667vw;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 160%;
    text-align: center;
  }

  .p-form-contact__heading {
    text-align: center;
  }

  .p-form-contact__description {
    font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 3.3854166667vw;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 160%;
  }

  .p-form-contact__inner{
    padding: 1.5rem;
  }

}