@charset "UTF-8";
#cmsmenu {
  display: none;
}
#main {
  background-color: #F2F5F9;
  position: relative;
  overflow-y: hidden;
}
#main > * {
  position: relative;
  z-index: 1;
}
.form_visual {
  height: 330px;
  padding: 80px 20px;
  background-color: #2e63a2;
  color: #fff;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .form_visual {
    height: 200px;
    padding: 25px 20px;
  }
}
.form_visual .page_title {
  margin: 0;
  position: relative;
  z-index: 1;
}
.form_visual .page_title span.main, .form_visual .page_title span.sub {
  display: block;
}
.form_visual .page_title span.main {
  font-weight: 700;
  font-size: 35px;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .form_visual .page_title span.main {
    font-size: 28px;
  }
}
.form_visual .page_title span.sub {
  margin-top: 7px;
  font-weight: 700;
  font-size: 23px;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .form_visual .page_title span.sub {
    font-size: 18px;
  }
}
.form_contents {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: -77px;
  padding-bottom: 100px;
}
@media screen and (max-width: 1280px) {
  .form_contents {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.phase {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  justify-content: center;
  gap: 5px;
  list-style: none;
  counter-reset: number 0;
}
.phase li {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 230px;
  height: 50px;
  background-color: #e7e7e7;
  color: #b7b7b7;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .phase li {
    padding-top: 20px;
    font-size: 11px;
  }
}
.phase li::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  counter-increment: number 1;
  content: counter(number);
  margin-right: 20px;
  padding: 0 16px;
  border-right: 1px solid #b7b7b7;
  font-weight: 700;
  font-size: 19px;
  line-height: 1.25;
  letter-spacing: 0;
  font-family: "Oswald", sans-serif;
}
@media screen and (max-width: 767px) {
  .phase li::before {
    top: 4px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 5px 2px;
    border-right: 0;
    border-bottom: 1px solid #b7b7b7;
    font-size: 14px;
  }
}
.phase li.done {
  background-color: #333;
  color: #fff;
}
.phase li.done::before {
  border-color: #fff;
}
#main .form_inner {
  position: relative;
  z-index: 1;
  padding: 70px 102px;
  border-radius: 150px 150px 0 0;
  background-color: #fff;
  box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 1024px) {
  #main .form_inner {
    padding: 70px 40px;
  }
}
@media screen and (max-width: 767px) {
  #main .form_inner {
    padding: 30px 20px;
    border-radius: 30px 30px 0 0;
  }
}
#main .form_small_frame {
  margin: 30px auto;
  max-width: 700px;
}
#main .form_small_frame .form_section {
  display: block;
}
#main .form_section {
  display: flex;
  flex-flow: row nowrap;
  margin: 30px 0;
}
@media screen and (max-width: 767px) {
  #main .form_section {
    display: block;
  }
}
#main .form_section.top {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  #main .form_section.top {
    margin-top: 30px;
  }
}
#main .form_section:not(:last-of-type) {
  margin-bottom: 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid darkgray;
}
@media screen and (max-width: 767px) {
  #main .form_section:not(:last-of-type) {
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
}
#main .form_section_title {
  flex: 0 0 25%;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  #main .form_section_title {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
#main .form_section .items {
  flex: 0 0 75%;
  margin: 0;
}
#main .form .privacy {
  width: 90%;
  max-width: 750px;
  margin: 90px auto 35px;
}
#main .form .privacy iframe {
  border: none;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  #main .form .privacy {
    width: 100%;
    margin: 50px auto 35px;
  }
}
#main .form .privacy_title {
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: center;
}
#main .form .privacy_contents {
  width: 100%;
  height: 210px;
  margin: 35px auto;
  border: 1px solid #B8B8B8;
  border-radius: 3px;
  background-color: #fff;
  text-align: left;
}
@media screen and (max-width: 767px) {
  #main .form .privacy_contents {
    margin: 25px auto;
  }
}
#main .form .privacy_contents h4 {
  font-weight: 400;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0;
}
#main .form .privacy_contents p {
  margin: 0;
  font-weight: 400;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0;
}
#main .form .privacy_contents p + h4 {
  margin-top: 20px;
}
#main .form .privacy .checkbox {
  justify-content: center;
}
#main .form .privacy .error {
  text-align: center;
}
#main .form .message p {
  margin: 0;
}
#main .form .message p + p {
  margin-top: 0.5em;
}
#main .form .notice {
  margin: 60px 0 0;
}
#main .form .notice ul {
  border: 2px solid #ccc;
  padding: 20px 40px 20px 50px;
  border-radius: 10px;
}
#main .form .notice .back {
  margin: 30px 0 0;
  display: flex;
  justify-content: center;
}
#main .form .notice .back button {
  border: 2px solid #2e63a2;
  background: white;
  color: #2e63a2;
  width: 280px;
  height: 50px;
  font-size: 15px;
}
#main .form .items dl {
  margin: 0;
  padding: 0;
  border: none;
}
#main .form .items dl.short {
  max-width: 400px;
  margin: 0 auto;
}
#main .form .items dl + dl {
  margin-top: 30px;
}
#main .form .items dl > dt span.required, #main .form .items dl > dd p.question_label span.required {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 2px;
  background-color: #eb126d;
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}
#main .form .items dl > dt {
  display: flex;
  flex-flow: row-reverse nowrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
  font-weight: 500;
  font-size: 15px;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  #main .form .items dl > dt {
    align-items: flex-start;
  }
}
#main .form .items dl > dd {
  margin: 0;
}
#main .form .items dl > dd + dt {
  margin-top: 30px;
}
#main .form .items dl > dd + dd {
  margin-top: 20px;
}
#main .form .items dl > dd p.question_label {
  margin: 0 0 8px;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.7;
  letter-spacing: 0;
}
#main .form .items dl > dd p.question_label + .notes {
  margin: -5px 0 10px;
  font-size: 14px;
}
#main .form .items dl > dd p.caution {
  margin: 15px 0 0;
  color: #858585;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0;
}
#main .form .items_label {
  margin: 0 0 26px;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.8;
  letter-spacing: 0;
}
#main .form .error {
  margin: 5px 0 10px;
  color: #f33f3f;
  font-weight: 700;
}
#main .form .errors {
  margin: 5px 0;
}
#main .form .errors .error {
  margin: 3px 0;
}
#main .form.hide_required_icon .items .required {
  display: none;
}
input[type=text], input[type=tel], input[type=email], input[type=url], input[type=password], input[type=number], textarea {
  width: 100%;
  padding: 14px 15px;
  border: 1px solid #CBD3E0;
  border-radius: 3px;
  background-color: #fff;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 0;
  transition: border-color 0.2s, box-shadow 0.2s;
}
@media screen and (max-width: 767px) {
  input[type=text], input[type=tel], input[type=email], input[type=url], input[type=password], input[type=number], textarea {
    font-size: 16px;
  }
}
input[type=text]::placeholder, input[type=tel]::placeholder, input[type=email]::placeholder, input[type=url]::placeholder, input[type=password]::placeholder, input[type=number]::placeholder, textarea::placeholder {
  color: #909090;
}
input[type=text]:focus, input[type=text]:focus-visible, input[type=tel]:focus, input[type=tel]:focus-visible, input[type=email]:focus, input[type=email]:focus-visible, input[type=url]:focus, input[type=url]:focus-visible, input[type=password]:focus, input[type=password]:focus-visible, input[type=number]:focus, input[type=number]:focus-visible, textarea:focus, textarea:focus-visible {
  outline: 0;
  border-color: #1167E8;
  box-shadow: 0 0 8px rgba(17, 103, 232, 0.3);
}
.error input[type=text], .error input[type=tel], .error input[type=email], .error input[type=url], .error input[type=password], .error input[type=number], .error textarea {
  border-color: red;
}
.file {
  display: flex;
  align-items: flex-start;
  flex-flow: row nowrap;
  gap: 18px;
}
@media screen and (max-width: 767px) {
  .file {
    flex-direction: column-reverse;
  }
}
.file input[type=file] {
  width: 100%;
  font-weight: 500;
  font-size: 13px;
  line-height: 1.69;
  letter-spacing: 0;
  cursor: pointer;
}
.file input[type=file]::file-selector-button {
  width: 160px;
  height: 35px;
  margin-right: 10px;
  color: #fff;
  background-color: #1167E8;
  border: 1px solid #1167E8;
  border-radius: 3px;
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0;
  cursor: pointer;
}
.file .preview {
  flex: 0 0 250px;
  padding: 12px;
  border: 1px dashed #CBD3E0;
  border-radius: 3px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .file .preview {
    padding: 12px 12px;
    flex: 0 0 auto;
    width: 100%;
  }
}
.file .preview_image {
  width: 100%;
  aspect-ratio: 1;
  background: #F4F4F4 url(/img/icon_upload.svg) center / 42px 31px no-repeat;
}
.file .preview img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  background: white;
  object-fit: contain;
}
.file .upload_notes {
  margin-bottom: 24px;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .file .upload_notes {
    margin-bottom: 18px;
  }
}
.file .upload_notes li {
  padding-left: 19px;
  color: #333;
  font-weight: 500;
  font-size: 13px;
  line-height: 1.69;
  letter-spacing: 0;
  position: relative;
}
.file .upload_notes li::before {
  position: absolute;
  top: 10px;
  left: 7px;
  display: block;
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background-color: #333;
}
input[type=text] {
  height: 50px;
}
.radiobox, .checkbox {
  display: flex;
  flex-flow: row nowrap;
  gap: 2px;
}
input[type=radio], input[type=checkbox] {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  background-color: #fff;
  opacity: 0;
}
input[type=radio] + label, input[type=checkbox] + label {
  flex: 0 0 auto;
  display: inline-block;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
  cursor: pointer;
  position: relative;
}
input[type=radio]:focus + label:before, input[type=radio]:focus-visible + label:before, input[type=checkbox]:focus + label:before, input[type=checkbox]:focus-visible + label:before {
  outline: 0;
  border-color: #1167E8;
  box-shadow: 0 0 8px rgba(17, 103, 232, 0.3);
}
input[type=radio]:checked + label:before, input[type=checkbox]:checked + label:before {
  transition: 0.2s ease 0s;
}
input[type=radio]:disabled + label::before, input[type=checkbox]:disabled + label::before {
  border: 1px solid #909090;
  background-color: #E7E7E7;
}
input[type=radio] + label:before {
  content: "";
  position: absolute;
  top: 4px;
  left: -18px;
  opacity: 1;
  width: 14px;
  height: 14px;
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 7px;
  box-shadow: none;
  transition: background-color 0.2s, box-shadow 0.2s, border-color 0.2s;
}
input[type=radio]:checked + label:after {
  content: "";
  position: absolute;
  top: 7px;
  left: -15px;
  opacity: 1;
  width: 8px;
  height: 8px;
  background-color: #1167E8;
  border-radius: 5px;
}
input[type=checkbox] + label:before {
  content: "";
  position: absolute;
  left: -20px;
  top: 5px;
  opacity: 1;
  width: 15px;
  height: 15px;
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 2px;
  box-shadow: none;
  transition: background-color 0.2s, box-shadow 0.2s, border-color 0.2s;
}
input[type=checkbox]:checked + label:before {
  background-color: #1167E8;
}
input[type=checkbox]:checked + label:after {
  content: "";
  position: absolute;
  top: 8px;
  left: -17px;
  opacity: 1;
  width: 9px;
  height: 5px;
  transform: rotate(-45deg);
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
}
.select {
  max-width: 375px;
  height: 50px;
  border-radius: 3px;
  background-color: #fff;
  position: relative;
}
.select:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 18px;
  z-index: 0;
  display: block;
  content: "";
  width: 9px;
  height: 9px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 100%;
  padding: 14px 15px;
  border: 1px solid #CBD3E0;
  border-radius: 3px;
  background-color: rgba(255, 255, 255, 0);
  color: #000;
  cursor: pointer;
  position: relative;
  z-index: 1;
  transition: border-color 0.2s, box-shadow 0.2s;
}
select:focus, select:focus-visible {
  outline: 0;
  border: 1px solid #1167E8;
  box-shadow: 0 0 8px rgba(17, 103, 232, 0.3);
}
textarea {
  resize: none;
  height: 150px;
}
textarea:focus, textarea:focus-visible {
  border-color: #1167E8;
  box-shadow: 0 0 8px rgba(17, 103, 232, 0.3);
}
#main .input_wrap {
  display: flex;
  flex-flow: row wrap;
  gap: 10px 70px;
}
#main .input_wrap .with_unit {
  display: flex;
  gap: 0 10px;
  align-items: center;
}
#main .input_wrap.cols {
  gap: 20px;
}
#main .input_wrap.cols > div {
  flex: 0 0 calc(50% - 10px);
}
#main .input_wrap.cols > div.error {
  background: #fcc;
}
@media screen and (max-width: 767px) {
  #main .input_wrap.cols {
    gap: 10px;
  }
}
#main .input_wrap .items {
  margin: 5px 0;
}
#main .input_wrap .items .item {
  display: inline-block;
  border: 1px solid #ccc;
  border-radius: 50px;
  padding: 5px 15px;
  line-height: 1.1;
  font-size: 14px;
  margin-bottom: 5px;
  margin-right: 5px;
}
#main .business_category .input_wrap {
  gap: 10px 20px;
}
#main .business_category .input_wrap .checkbox {
  flex-basis: 180px;
}
table.interest_table {
  width: 100%;
  margin-top: 22px;
  border-collapse: collapse;
}
table.interest_table th, table.interest_table td {
  border-collapse: collapse;
}
table.interest_table thead tr th {
  height: 38px;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
  border-bottom: 1px solid #000;
}
table.interest_table thead tr th:first-of-type {
  width: 50%;
  font-size: 0;
}
@media screen and (max-width: 767px) {
  table.interest_table thead tr th:first-of-type {
    width: 40%;
  }
}
table.interest_table thead tr th:nth-of-type(2), table.interest_table thead tr th:nth-of-type(3) {
  width: 25%;
}
@media screen and (max-width: 767px) {
  table.interest_table thead tr th:nth-of-type(2), table.interest_table thead tr th:nth-of-type(3) {
    width: 30%;
    font-size: 11px;
  }
}
@media screen and (min-width: 768px) {
  table.interest_table thead tr th:nth-of-type(3) {
    padding-right: 72px;
  }
}
table.interest_table tbody tr th, table.interest_table tbody tr td {
  height: 52px;
  padding: 10px 0;
  border-bottom: 1px solid #CBD3E0;
}
@media screen and (max-width: 767px) {
  table.interest_table tbody tr th, table.interest_table tbody tr td {
    height: 40px;
    padding: 5px 0;
  }
}
table.interest_table tbody tr th {
  font-weight: 500;
  font-size: 15px;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: left;
}
@media screen and (max-width: 767px) {
  table.interest_table tbody tr th {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) {
  table.interest_table tbody tr td:nth-of-type(2) {
    padding-right: 70px;
  }
}
table.interest_table tbody tr td .checkbox {
  justify-content: center;
}
table.interest_table tbody tr td input[type=checkbox] + label::before {
  top: 3px;
  left: -20px;
}
@media screen and (max-width: 767px) {
  table.interest_table tbody tr td input[type=checkbox] + label {
    font-size: 11px;
  }
}
table.interest_table tbody tr td input[type=checkbox]:checked + label::after {
  top: 6px;
  left: -17px;
}
.form_inner + .button_wrap, .form_small_frame + .button_wrap {
  margin-top: 62px;
}
.button_wrap {
  display: flex;
  align-items: center;
  flex-flow: column nowrap;
  justify-content: center;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .button_wrap {
    gap: 10px;
  }
}
button, .button a {
  border: 1px solid #2e63a2;
  border-radius: 30px;
  background-color: #2e63a2;
  color: #fff;
  font-weight: 500;
  font-size: 17px;
  line-height: 1.5;
  letter-spacing: 0;
  position: relative;
  cursor: pointer;
  transition: opacity 0.2s, background-color 0.2s;
}
@media screen and (max-width: 767px) {
  button, .button a {
    font-size: 15px;
  }
}
button::after, .button a::after {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 15px;
  background: #fff url(/img/arrow_next.svg) center / 11px 8px no-repeat;
}
button:hover, .button a:hover {
  opacity: 0.8;
}
button:disabled, button[disabled] {
  pointer-events: none;
  filter: grayscale(1);
  opacity: 0.4;
}
button, .button {
  width: 320px;
  max-width: 100%;
  height: 60px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  button, .button {
    height: 50px;
  }
}
.button a {
  width: 100%;
  height: 100%;
}
.button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  text-decoration: none;
}
.button.return a, .button.send a {
  background-color: #fff;
  color: #2e63a2;
}
.button.return a:hover, .button.send a:hover {
  background-color: rgba(17, 103, 232, 0.15);
}
.button.return a {
  background-color: #fff;
  color: #2e63a2;
}
.button.return a::before {
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 15px;
  background: url(/img/arrow_return.svg) center / 30px no-repeat;
}
.button.return a::after {
  content: none;
}
button.remove {
  width: 80px;
  height: 30px;
  margin: 10px auto 0;
  border-color: #1167E8;
  border-radius: 3px;
  background-color: #1167E8;
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0;
}
button.remove::after {
  content: none;
}
.button.send {
  height: 55px;
}
.button.send a {
  font-size: 16px;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .button.send a {
    font-size: 14px;
  }
}
.button.send a::after {
  right: 23px;
  width: 19px;
  height: 16px;
  border-radius: 0;
  background: url(/img/icon_send.svg) center / 100% no-repeat;
}
.back {
  display: flex;
  justify-content: center;
  margin: 30px 0 0;
}
.back .return {
  width: 240px;
  height: 50px;
  font-size: 15px;
}
.passswitch {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  width: 25px;
  height: 21px;
  border: none;
  border-radius: 0;
  background-color: transparent;
  font-size: 0;
}
.passswitch input[type=text], .passswitch input[type=checkbox] {
  padding: 0;
  border: none;
}
.passswitch input[type=text]:focus, .passswitch input[type=text]:focus-visible, .passswitch input[type=checkbox]:focus, .passswitch input[type=checkbox]:focus-visible {
  border: none;
  box-shadow: unset;
}
.passswitch input[type=text]:focus + label::before, .passswitch input[type=text]:focus-visible + label::before, .passswitch input[type=checkbox]:focus + label::before, .passswitch input[type=checkbox]:focus-visible + label::before {
  box-shadow: unset;
}
.passswitch input[type=text]:disabled + label::before, .passswitch input[type=checkbox]:disabled + label::before {
  filter: grayscale(1);
  opacity: 0.2;
  pointer-events: none;
}
.passswitch input[type=text] + label, .passswitch input[type=checkbox] + label {
  font-size: 0;
}
.passswitch input[type=text] + label::before, .passswitch input[type=checkbox] + label::before {
  top: -16px;
  left: unset;
  right: -10px;
  width: 25px;
  height: 22px;
  border: none;
  display: block;
  content: "";
  background: url(/img/icon_hide.svg) center / 100% no-repeat;
  transition: unset;
}
.passswitch input[type=text]:checked + label::before, .passswitch input[type=checkbox]:checked + label::before {
  top: -16.5px;
  background-color: unset;
  background: url(/img/icon_show.svg) center / 100% no-repeat;
}
.passswitch input[type=text]:checked + label::after, .passswitch input[type=checkbox]:checked + label::after {
  content: none;
}
.complete {
  margin: 70px auto 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .complete {
    margin-top: 30px;
  }
}
.complete_title {
  margin: 0 0 40px;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .complete_title {
    margin-bottom: 20px;
    font-size: 18px;
  }
}
.complete_title.suff, .complete_title.pitch {
  margin: -30px 0 40px;
}
@media screen and (max-width: 767px) {
  .complete_title.suff, .complete_title.pitch {
    margin: -10px 0 40px;
  }
}
.complete_title.suff span, .complete_title.pitch span {
  padding: 3px 10px;
  color: #1f9994;
  border-bottom: 2px solid #1f9994;
  font-feature-settings: "palt";
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .complete_title.suff span, .complete_title.pitch span {
    font-size: 16px;
  }
}
.complete p {
  font-weight: 400;
  font-size: 15px;
  line-height: 1.86;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .complete p {
    font-size: 13px;
  }
}
.complete p.attention {
  margin: 21px 0;
  color: #2e63a2;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.83;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .complete p.attention {
    font-size: 11px;
  }
}
.complete .ceatec {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: 40px;
  width: 98%;
  max-width: 960px;
  margin: 78px auto 0;
  padding: 42px 90px 53px;
  border-radius: 20px;
  background-image: linear-gradient(252deg, rgba(17, 103, 232, 0.15) 16%, rgba(154, 225, 255, 0.15) 100%);
}
.complete .ceatec.jms {
  display: block;
}
.complete .ceatec.jms .ceatec_image {
  margin: 30px 0 40px;
  height: auto;
}
.complete .ceatec.jms .ceatec_image img {
  width: auto;
  height: 50px;
}
@media screen and (max-width: 767px) {
  .complete .ceatec.jms .ceatec_image img {
    height: 30px;
  }
}
@media screen and (max-width: 960px) {
  .complete .ceatec {
    padding: 42px 20px 53px;
  }
}
@media screen and (max-width: 767px) {
  .complete .ceatec {
    gap: 20px;
    margin-top: 30px;
    padding: 30px 20px 40px;
    flex-direction: column-reverse;
  }
}
.complete .ceatec_image {
  flex: 0 0 237px;
  height: 275px;
}
.complete .ceatec_image img {
  width: 100%;
  height: auto;
}
.complete .ceatec_label {
  flex: 1 1 calc(100% - 317px);
}
.complete .ceatec_label p {
  font-weight: 700;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .complete .ceatec_label p {
    margin: 0;
    font-size: 13px;
  }
}
.complete .ceatec_registration_button {
  width: 555px;
  max-width: 100%;
  height: 70px;
  margin: 50px auto 18px;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.4;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .complete .ceatec_registration_button {
    height: 60px;
    margin: 30px auto 0;
    font-size: 15px;
  }
}
.complete .ceatec_registration_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 5px;
  background-color: #EB126D;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.2s;
  position: relative;
}
@media screen and (max-width: 767px) {
  .complete .ceatec_registration_button a {
    padding: 0 32px 0 8px;
    font-size: 14px;
  }
}
.complete .ceatec_registration_button a::after {
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  display: block;
  content: "";
  width: 15px;
  height: 15px;
  background: url(/img/icon_external.svg) center / 100% no-repeat;
}
@media screen and (max-width: 767px) {
  .complete .ceatec_registration_button a::after {
    right: 15px;
  }
}
.complete .ceatec_registration_button a:hover {
  background-color: #E876A6;
}
.error-message {
  margin: 30px 20px;
  border-radius: 4px;
  background: #ffeeee;
  padding: 10px 15px;
  color: #f33;
  font-weight: 700;
}
