#cmsmenu {
  display: none;
}
#main {
  background-color: #F2F5F9;
  position: relative;
  overflow-y: hidden;
}
#main::before, #main::after {
  position: absolute;
  display: block;
  content: "";
  width: 100px;
  height: 100%;
  z-index: 0;
}
#main::before {
  top: 513px;
  left: 0;
  width: 258px;
  background: url(../media/images/common/bg_left.svg) left top / 100% no-repeat;
}
#main::after {
  top: 1759px;
  right: 0;
  width: 300px;
  background: url(../media/images/common/bg_right.svg) right top / 100% no-repeat;
}
#main > * {
  position: relative;
  z-index: 1;
}
.form_visual {
  height: 330px;
  padding: 80px 20px;
  background-color: #1B2684;
  color: #fff;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .form_visual {
    height: 200px;
    padding: 25px 20px;
  }
}
.form_visual::before, .form_visual::after {
  position: absolute;
  display: block;
  content: "";
}
.form_visual::before {
  top: 0;
  left: 0;
  width: 234px;
  height: 243px;
  background: url(../media/images/common/bg_visual_left.svg) top / 100% no-repeat;
}
@media screen and (max-width: 767px) {
  .form_visual::before {
    width: 100px;
  }
}
.form_visual::after {
  top: 0;
  right: 0;
  width: 330px;
  height: 419px;
  background: url(../media/images/common/bg_visual_right.svg) top / 100% no-repeat;
}
@media screen and (max-width: 767px) {
  .form_visual::after {
    width: 100px;
  }
}
.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 {
  /*.error {
		margin: 5px 0 10px;
		color: #f33f3f;
		font-weight: 700;
	}

	.errors {
		margin: 5px 0;
		.error {
			margin: 3px 0;
		}
	}

	&.hide_required_icon .items .required {
		display: none;
	}*/
}
#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;
  /*dl {
				margin: 0;
				padding: 0;
				border: none;

				&.short {
					max-width: 400px;
					margin: 0 auto;
				}

				+ dl {
					margin-top: 30px;
				}
				
				%required {
					display: inline-block;
					padding: 4px 8px;
					border-radius: 2px;
					background-color: rgb(235,18,109);
					color: #fff;
					@include font(12, 1, 700, 0);
				}

				> dt {
					@include flex(row-reverse nowrap, flex-end, null);
					gap: 8px;
					margin-bottom: 10px;
					@include font(15, 1.4, 500, 0);

					span.required {
						@extend %required;
					}

				}

				> dd {
					margin: 0;

					+ dt {
						margin-top: 30px;
					}
					+ dd {
						margin-top: 20px;
					}

					p.question_label {
						margin: 0 0 8px;
						@include font(15, 1.7, 400, 0);
						
						span.required {
							@extend %required;
						}
						
						+ .notes {
							margin: -5px 0 10px;
							font-size: 14px;
						}
					}

					p.caution {
						margin: 15px 0 0;
						color: #858585;
						@include font(12, 1.7, 400, 0);
					}
				}
			}

			&_label {
				margin: 0 0 26px;
				@include font(15, 1.8, 700, 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 #1B2684;
  background: white;
  color: #1B2684;
  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(../media/images/common/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);
}
/*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;
	@include font(14, 1.45, 400, 0);
	transition: border-color .2s, box-shadow .2s;

	@include media(sp) {
		font-size: 16px;
	}

	&::placeholder {
		color: #909090;
	}

	&:focus,
	&:focus-visible {
		outline: 0;
		border-color: $color-blue;
		box-shadow: 0 0 8px rgba($color-blue, 0.3);
	}
	.error & {
		border-color: red;
	}
}*/
#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;
}
/*.file {
	@include flex(row nowrap, null, flex-start);
	gap: 18px;

	@include media(sp) {
		flex-direction: column-reverse;
	}

	input[type=file] {
		width: 100%;
		@include font(13, 1.69, 500, 0);
		cursor: pointer;

		&::file-selector-button {
			width: 160px;
			height: 35px;
			margin-right: 10px;
			color: #fff;
			background-color: $color-blue;
			border: 1px solid $color-blue;
			border-radius: 3px;
			@include font(14, 1, 500, 0);
			cursor: pointer;
		}
	}

	.preview {
		flex: 0 0 250px;
		padding: 12px;
		border: 1px dashed #CBD3E0;
		border-radius: 3px;
		text-align: center;

		@include media(sp) {
			padding: 12px 12px;
			flex: 0 0 auto;
			width: 100%;
		}

		&_image {
			width: 100%;
			aspect-ratio: 1 / 1;
			background: #F4F4F4 url(../media/images/common/icon_upload.svg) center / 42px 31px no-repeat;
		}

		img {
			display: block;
			width: 100%;
			aspect-ratio: 1;
			background: white;
			object-fit: contain;
		}
	}
	.upload {
		&_notes {
			margin-bottom: 24px;
			list-style: none;

			@include media(sp) {
				margin-bottom: 18px;
			}

			li {
				padding-left: 19px;
				color: #333;
				@include font(13, 1.69, 500, 0);
				position: relative;

				&::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 {
	@include flex(row nowrap, null, null);
	gap: 2px;
}

input[type=radio],
input[type=checkbox] {
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background-color: #fff;
	opacity: 0;

	& + label {
		flex: 0 0 auto;
		display: inline-block;
		@include font(14, 1.5, 400, 0);
		cursor: pointer;
		position: relative;
	}

	&:focus,
	&:focus-visible {

		& + label {
			&:before {
				outline: 0;
				border-color: $color-blue;
				box-shadow: 0 0 8px rgba($color-blue, 0.3);
			}
		}
	}

	&:checked {

		& + label {
			&:before {
				transition: 0.2s ease 0s;
			}
		}
	}

	&: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 .2s, box-shadow .2s, border-color .2s;
		}
	}

	&:checked {

		& + label {

			&:after {
				content: "";
				position: absolute;
				top: 7px;
				left: -15px;
				opacity: 1;
				width: 8px;
				height: 8px;
				background-color: $color-blue;
				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 .2s, box-shadow .2s, border-color .2s;
		}
	}

	&:checked {

		& + label {
			&:before {
				background-color: $color-blue;
			}

			&: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;
			}
		}
	}
}*/
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;
}
/*.select {
	max-width: 375px;
	height: 50px;
	border-radius: 3px;
	background-color: #fff;
	position: relative;

	&: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 .2s, box-shadow .2s;

	&:focus,
	&:focus-visible {
		outline: 0;
		border: 1px solid $color-blue;
		box-shadow: 0 0 8px rgba($color-blue, 0.3);
	}
}

textarea {
	resize: none;
	height: 150px;

	&:focus,
	&:focus-visible {
		border-color: $color-blue;
		box-shadow: 0 0 8px rgba($color-blue, 0.3);
	}
}*/
.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 #1B2684;
  border-radius: 30px;
  background-color: #1B2684;
  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(../media/images/common/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: #1B2684;
}
.button.return a:hover, .button.send a:hover {
  background-color: rgba(17, 103, 232, 0.15);
}
.button.return a {
  background-color: #fff;
  color: #1B2684;
}
.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(../media/images/common/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(../media/images/common/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(../media/images/common/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(../media/images/common/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: #1B2684;
  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(../media/images/common/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;
}
/*# sourceMappingURL=./form.css.map */