@charset "UTF-8";
/* default parts design */
a[class^=btn_],
button[class^=btn_] {
  background-color: var(--primary-bg-color-1);
  border-radius: 4px;
  color: var(--secondary-color-1);
  display: inline-block;
  font-size: 1rem;
  text-align: center;
  padding: 0.5rem 1rem;
  margin: 0.25rem 0;
  min-width: 6rem;
  transition: all 0.3s;
  text-decoration: none;
  cursor: pointer;
  opacity: 1;
}
a[class^=btn_]:hover,
button[class^=btn_]:hover {
  text-decoration: none;
  color: var(--secondary-color-1);
  opacity: 0.8;
}
a[class^=btn_]:visited,
button[class^=btn_]:visited {
  color: var(--secondary-color-1);
}
a[class^=btn_]:disabled,
button[class^=btn_]:disabled {
  opacity: 0.3;
}
a[class^=btn_].btn_more:after,
button[class^=btn_].btn_more:after {
  content: "\f061";
  font-family: "Font Awesome 6 free";
  font-size: 0.9rem;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-left: 0.75rem;
  vertical-align: middle;
}
a[class^=btn_].btn_next:after,
button[class^=btn_].btn_next:after {
  content: "\f105";
  font-family: "Font Awesome 6 free";
  font-size: 18px;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-left: 0.5rem;
  vertical-align: middle;
}
a[class^=btn_].btn_back:before,
button[class^=btn_].btn_back:before {
  content: "\f060";
  font-family: "Font Awesome 6 free";
  font-size: 0.9rem;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-right: 0.75rem;
  vertical-align: middle;
}
a[class^=btn_].btn_save:before,
button[class^=btn_].btn_save:before {
  content: "\f019";
  font-family: "Font Awesome 6 free";
  font-size: 18px;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-right: 0.5rem;
  vertical-align: middle;
}
a[class^=btn_].btn_file_download,
button[class^=btn_].btn_file_download {
  padding: 1rem 3rem;
}
a[class^=btn_].btn_file_download:before,
button[class^=btn_].btn_file_download:before {
  content: "\f15c";
  font-family: "Font Awesome 6 free";
  font-size: 24px;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-right: 0.75rem;
  vertical-align: middle;
  font-weight: bold;
}
a[class^=btn_].btn_download,
button[class^=btn_].btn_download {
  padding: 1rem 3rem;
}
a[class^=btn_].btn_download:before,
button[class^=btn_].btn_download:before {
  content: "\f0ed";
  font-family: "Font Awesome 6 free";
  font-size: 24px;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-right: 0.75rem;
  vertical-align: middle;
  font-weight: bold;
}
a[class^=btn_].btn_agree,
button[class^=btn_].btn_agree {
  background-color: var(--secondary-bg-color-1);
  padding: 1rem 3rem;
  opacity: 1;
}
a[class^=btn_].btn_agree:before,
button[class^=btn_].btn_agree:before {
  content: "\f058";
  font-family: "Font Awesome 6 free";
  font-size: 24px;
  display: inline-block;
  color: var(--secondary-color-1);
  margin-right: 0.75rem;
  vertical-align: middle;
  font-weight: bold;
}
a[class^=btn_].btn_agree:hover,
button[class^=btn_].btn_agree:hover {
  opacity: 0.8;
}
a[class^=btn_].size-l,
button[class^=btn_].size-l {
  font-size: 1rem;
  padding: 1em 2em;
}
a[class^=btn_].size-m,
button[class^=btn_].size-m {
  font-size: 0.8rem;
}
a[class^=btn_].size-s,
button[class^=btn_].size-s {
  font-size: 0.6rem;
}
a[class^=btn_].btn_document,
button[class^=btn_].btn_document {
  background-color: var(--secondary-bg-color-1);
  opacity: 1;
}
a[class^=btn_].btn_document:hover,
button[class^=btn_].btn_document:hover {
  opacity: 0.8;
}

a[class^=btn_] em,
button[class^=btn_] em {
  font-weight: bold;
}

.list-btn {
  margin: 30px 0 0;
  text-align: center;
}
.list-btn .button-set {
  margin: 0;
  padding: 0;
}

.isfw_btn:before {
  color: #fff;
}
.isfw_btn .btn-item {
  background-color: var(--primary-bg-color-1);
  border-radius: 4px;
  color: var(--secondary-color-1);
  font-size: 1rem;
  transition: all 0.3s;
  opacity: 1;
}
.isfw_btn .btn-item:before {
  color: var(--secondary-color-1);
}
.isfw_btn .btn-item:hover {
  opacity: 0.8;
  color: var(--secondary-color-1);
}
.isfw_btn.isfw_btn-gray .btn-item {
  color: var(--secondary-color-1);
}

.section_margin {
  margin: 0 0 60px;
}

/* =================================================
  form
================================================= */
.isfw_form button {
  background: none;
  border: none;
  outline: none;
  appearance: none;
}
.isfw_form p {
  margin-bottom: 0;
}
.isfw_form em {
  font-style: normal;
}
.isfw_form input[type=text], .isfw_form input[type=email], .isfw_form input[type=submit] {
  appearance: none;
  border-radius: 0;
  max-width: 100%;
}
.isfw_form button, .isfw_form textarea {
  -webkit-appearance: none;
  border-radius: 0;
}
.isfw_form label {
  cursor: pointer;
}
.isfw_form .caution-list {
  margin-bottom: 20px;
}
.isfw_form .caution-list ul {
  list-style-type: disc;
  margin-left: 1em;
}
.isfw_form .caution-list ul li {
  font-weight: bold;
  color: #ba002f;
}
.isfw_form .caution_msg {
  display: none;
  font-weight: bold;
  margin-bottom: 10px;
}
.isfw_form .caution {
  display: block;
  color: #ba002f;
  margin-top: 5px;
}
.isfw_form .icon-notice {
  background-color: #f0f0f0;
  border-radius: 5px;
  color: #666;
  font-size: 0.8rem;
  padding: 0 0.5rem;
  margin-left: 0.5rem;
  white-space: nowrap;
}
.isfw_form .icon-required {
  background-color: #ffe2e2;
  border-radius: 5px;
  color: var(--attention);
  font-size: 0.8rem;
  font-weight: bold;
  padding: 0 0.5rem;
  margin-left: 0.5rem;
  white-space: nowrap;
}
.isfw_form .text-input,
.isfw_form input[type=text],
.isfw_form input[type=number],
.isfw_form input[type=tel],
.isfw_form input[type=email],
.isfw_form input[type=file],
.isfw_form textarea,
.isfw_form select {
  padding: 0.375rem 0.75rem;
  background-color: #fff;
  border: 1px solid #ced4da;
  box-sizing: border-box;
  border-radius: 0.25rem;
  display: inline-block;
  width: fit-content;
}
.isfw_form .text-input + *,
.isfw_form input[type=text] + *,
.isfw_form input[type=number] + *,
.isfw_form input[type=tel] + *,
.isfw_form input[type=email] + *,
.isfw_form input[type=file] + *,
.isfw_form textarea + *,
.isfw_form select + * {
  margin: 0 0.5rem;
}
.isfw_form .text-input.f-error_form,
.isfw_form input[type=text].f-error_form,
.isfw_form input[type=number].f-error_form,
.isfw_form input[type=tel].f-error_form,
.isfw_form input[type=email].f-error_form,
.isfw_form input[type=file].f-error_form,
.isfw_form textarea.f-error_form,
.isfw_form select.f-error_form {
  background-color: #ffefef !important;
  border: 1px solid #e09595 !important;
  color: var(--bs-body-color);
  font-weight: normal;
}
.isfw_form .text-input:disabled,
.isfw_form input[type=text]:disabled,
.isfw_form input[type=number]:disabled,
.isfw_form input[type=tel]:disabled,
.isfw_form input[type=email]:disabled,
.isfw_form input[type=file]:disabled,
.isfw_form textarea:disabled,
.isfw_form select:disabled {
  background-color: #f5f5f5 !important;
  pointer-events: none;
}
.isfw_form select {
  padding-right: 2.5rem;
}
.isfw_form select.select_min {
  min-width: 12em;
}
.isfw_form input[type=file] {
  padding: 0;
}
.isfw_form input[type=number]::-webkit-outer-spin-button,
.isfw_form input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.isfw_form .cols {
  display: flex;
  flex-wrap: wrap;
}
.isfw_form ul {
  margin: 0;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
}
.isfw_form ul li {
  width: 100%;
  box-sizing: border-box;
}
.isfw_form ul li + li {
  margin-top: 1rem;
}
.isfw_form ul.cols {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -1rem;
}
.isfw_form ul.cols li {
  width: auto;
  margin: 0 2rem 1rem 0;
}
.isfw_form ul.cols li:last-child {
  margin-right: 0;
}
.isfw_form .form-content input::placeholder {
  color: #ccc;
}
.isfw_form .form-content .form-item {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
}
.isfw_form .form-content .form-item .form-title, .isfw_form .form-content .form-item .form-content {
  padding: 1.5rem 0;
}
.isfw_form .form-content .form-item .form-title {
  color: #5b5b5b;
  display: flex;
  align-items: baseline;
  font-weight: lighter;
  flex-basis: 33.33333%;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .isfw_form .form-content .form-item .form-title {
    max-width: 33.3333333333%;
    padding-right: 0.75rem;
  }
}
.isfw_form .form-content .form-item .form-content {
  display: flex;
  justify-content: center;
  flex-direction: column;
  flex-basis: 66.66666%;
  margin-bottom: 0;
}
.isfw_form .form-content .form-item .form-content .form-cap {
  color: #999;
  display: inline-block;
  margin-top: 0.5rem;
  margin-right: auto;
}
.isfw_form .form-content .form-item.inline-title .form-title {
  margin-right: 1rem !important;
}
.isfw_form .form-content .form-item.inline-title .form-content + .form-title {
  margin-right: 0;
  margin-top: 0.5rem;
}
@media screen and (min-width: 767px) {
  .isfw_form .form-content .form-item.inline-title .form-content + .form-title {
    margin-left: 1rem;
    margin-top: 0rem;
  }
}
.isfw_form .form-content .form-item .form-item .form-title {
  color: var(--bs-body-color);
  padding: 0.5rem 0;
  flex-basis: 25%;
}
.isfw_form .form-content .form-item .form-item .form-content {
  padding: 0.5rem 0;
  flex-basis: 80%;
}
.isfw_form .form-content .form-item .form-item:first-of-type .form-title {
  padding-top: 0.5rem;
}
.isfw_form .form-content .form-item .form-item:first-of-type .form-content {
  padding-top: 0;
}
.isfw_form .form-content .form-item .form-item:last-of-type .form-title, .isfw_form .form-content .form-item .form-item:last-of-type .form-content {
  padding-bottom: 0;
}
.isfw_form .form-content .form-item.form-inline {
  margin-top: 1rem;
}
.isfw_form .form-content .form-item.form-inline .form-title {
  flex-basis: auto;
  margin-right: 2rem;
}
.isfw_form .form-content .form-item.form-inline .form-content {
  flex-basis: auto;
}
.isfw_form .form-content.form-confirm .form-item .form-title, .isfw_form .form-content.form-confirm .form-item .form-content {
  padding: 0.75rem 0;
}
.isfw_form .cols li .form-item.form-inline {
  margin-top: 0;
}
.isfw_form .file-upload {
  background-color: #f5f5f5;
  border: 2px dashed #ddd;
  border-radius: 4px;
  padding: 20px;
  position: relative;
  text-align: center;
}
.isfw_form .file-upload:hover {
  border: 2px dashed #ccc;
}
.isfw_form .file-upload input[type=file] {
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
  box-sizing: border-box;
  cursor: pointer;
}
.isfw_form .file-upload .upload-text {
  color: #999;
}
.isfw_form .file-upload .upload-text span {
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 3px;
  display: inline-block;
  margin-left: 1rem;
  padding: 0.25rem 0.75rem;
}
.isfw_form .file-upload .upload-text:before {
  color: #ddd;
  content: "\f382";
  display: inline-block;
  font-family: "Font Awesome 6 free";
  font-weight: bold;
  font-size: 42px;
}
.isfw_form .upload-file-list {
  margin-top: 1rem;
}
.isfw_form .upload-file-list li {
  display: flex;
  align-items: center;
  padding: 10px 0 0;
}
.isfw_form .upload-file-list li + li {
  border-top: 1px solid #eee;
}
.isfw_form .upload-file-list li:first-of-type {
  padding-top: 0;
}
.isfw_form .upload-file-list li .item-thumbnail {
  max-width: 110px;
  margin-right: 10px;
}
.isfw_form .upload-file-list li .item-thumbnail img {
  max-width: 100px;
}
.isfw_form .upload-file-list li .item-thumbnail i {
  font-size: 36px;
}
.isfw_form .upload-file-list li .item-path, .isfw_form .upload-file-list li .item-size {
  color: #666;
  font-size: 12px;
  margin-right: 10px;
  word-break: break-all;
  width: 100%;
  box-sizing: border-box;
  min-width: 4rem;
}
.isfw_form .upload-file-list li .item-delete {
  margin-left: auto;
}
.isfw_form .upload-file-list li .item-delete i {
  font-size: 20px;
  color: #aaa;
  cursor: pointer;
}
.isfw_form .upload-file-list li .item-delete i:hover {
  opacity: 0.5;
}
.isfw_form ul.name-group {
  margin-top: 0.5rem;
}
.isfw_form ul.name-group li {
  width: calc((100% - 2rem) / 2);
}
.isfw_form ul.name-group li span {
  display: inline-block;
  min-width: 2.5rem;
}
.isfw_form ul.name-group li input {
  max-width: 16em;
}
.isfw_form ul.name-group + ul.name-group {
  margin-top: 0.5rem;
}
.isfw_form ul.zipcode-group {
  align-items: center;
}
.isfw_form ul.zipcode-group li {
  margin-right: 0;
  width: auto;
}
.isfw_form ul.zipcode-group li input {
  width: 5rem;
}
.isfw_form ul.zipcode-group li + li {
  margin-left: 0;
}
.isfw_form ul.zipcode-group li .btn_default {
  margin-left: 1rem;
}
.isfw_form ul.zipcode-group.zipcode-one li input {
  width: 10rem;
}
.isfw_form ul.phone-group {
  align-items: center;
  flex-wrap: nowrap;
}
.isfw_form ul.phone-group li {
  margin-right: 0;
  width: auto;
}
.isfw_form ul.phone-group li input {
  width: 6rem;
}
.isfw_form ul.phone-group li + li {
  margin-left: 0;
}
.isfw_form ul.phone-group li:nth-child(4) {
  margin-left: 2rem;
}
.isfw_form .checkbox input.checkbox-input {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  margin: -1px;
}
.isfw_form .checkbox .checkbox-parts {
  display: inline-block;
  padding-left: 25px;
  position: relative;
}
.isfw_form .checkbox .checkbox-parts:before {
  border: 2px solid #adb5bd;
  border-radius: 3px;
  content: "";
  display: block;
  font-family: "Font Awesome 6 Free";
  font-weight: 400;
  font-size: 18px;
  line-height: 1;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 5px;
  left: 0;
  z-index: 2;
}
.isfw_form .checkbox .checkbox-parts:after {
  background-color: #fff;
  border-radius: 3px;
  content: "";
  width: 14px;
  height: 14px;
  position: absolute;
  top: 5px;
  left: 1px;
  z-index: 1;
}
.isfw_form .checkbox input[type=checkbox]:disabled + .checkbox-parts {
  opacity: 0.5;
}
.isfw_form .checkbox input[type=checkbox]:checked + .checkbox-parts:before {
  border: none;
  color: #000;
  content: "\f14a";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  top: 4px;
}
.isfw_form table.checkbox {
  border: 1px solid #eee;
}
.isfw_form table.checkbox .checkbox-parts {
  display: block;
  height: 14px;
  width: 14px;
  padding: 0;
  margin: 0 auto;
}
.isfw_form table.checkbox .checkbox-parts span {
  display: none;
}
.isfw_form table.checkbox th {
  background-color: #f5f5f5;
}
.isfw_form table.checkbox th, .isfw_form table.checkbox td {
  border: 1px solid #eee;
  padding: 10px;
}
.isfw_form table.checkbox thead th {
  text-align: center;
}
.isfw_form table.checkbox tbody td {
  text-align: center;
}
.isfw_form .checkbox-btn input.checkbox-input {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  margin: -1px;
}
.isfw_form .checkbox-btn .checkbox-parts {
  background-color: #eee;
  border-radius: 0.25rem;
  display: inline-block;
  padding: 15px 20px 15px 45px;
  position: relative;
}
.isfw_form .checkbox-btn .checkbox-parts:before {
  color: #adb5bd;
  content: "\f0c8";
  font-family: "Font Awesome 6 Free";
  font-size: 1.25rem;
  position: absolute;
  top: 10px;
  left: 20px;
  z-index: 2;
}
.isfw_form .checkbox-btn input[type=checkbox]:checked + .checkbox-parts {
  background-color: #000;
  color: #fff;
}
.isfw_form .checkbox-btn input[type=checkbox]:checked + .checkbox-parts:before {
  color: #fff;
  content: "\f14a";
  font-family: "Font Awesome 6 Free";
}
.isfw_form .radio input.radio-input {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  margin: -1px;
}
.isfw_form .radio .radio-parts {
  display: inline-block;
  padding-left: 25px;
  position: relative;
}
.isfw_form .radio .radio-parts:before {
  color: #adb5bd;
  content: "\f111";
  font-family: "Font Awesome 6 Free";
  font-size: 16px;
  position: absolute;
  top: -1px;
  left: 0;
  z-index: 2;
}
.isfw_form .radio .radio-parts:after {
  color: #fff;
  content: "●";
  font-size: 18px;
  position: absolute;
  top: -2px;
  left: 0;
  z-index: 1;
}
.isfw_form .radio input.radio-input:disabled + .radio-parts {
  opacity: 0.5;
}
.isfw_form .radio input.radio-input:checked + .radio-parts:before {
  color: #000;
  content: "\f192";
  font-family: "Font Awesome 6 Free";
}
.isfw_form table.radio {
  border: 1px solid #eee;
}
.isfw_form table.radio .radio-parts {
  display: block;
  height: 14px;
  width: 14px;
  padding: 0;
  margin: 0 auto;
}
.isfw_form table.radio .radio-parts span {
  display: none;
}
.isfw_form table.radio th {
  background-color: #f5f5f5;
}
.isfw_form table.radio th, .isfw_form table.radio td {
  border: 1px solid #eee;
  padding: 10px;
}
.isfw_form table.radio thead th {
  text-align: center;
}
.isfw_form table.radio tbody td {
  text-align: center;
}
.isfw_form .radio-btn {
  flex-wrap: nowrap !important;
}
.isfw_form .radio-btn input.radio-input {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  margin: -1px;
}
.isfw_form .radio-btn .radio-parts {
  background-color: #eee;
  border-radius: 0.25rem;
  display: inline-block;
  padding: 15px 20px 15px 45px;
  position: relative;
}
.isfw_form .radio-btn .radio-parts:before {
  color: #adb5bd;
  content: "\f111";
  font-family: "Font Awesome 6 Free";
  font-size: 16px;
  position: absolute;
  top: 10px;
  left: 20px;
  z-index: 2;
  font-weight: 400;
}
.isfw_form .radio-btn input.radio-input:checked + .radio-parts {
  background-color: #000;
  color: #fff;
}
.isfw_form .radio-btn input.radio-input:checked + .radio-parts:before {
  color: #fff;
  content: "\f192";
  font-family: "Font Awesome 6 Free";
  font-weight: 400;
}
.isfw_form .list-btn {
  padding: 30px 0 0;
}
.isfw_form .list-btn .button-set {
  display: flex;
  justify-content: center;
  position: relative;
}
.isfw_form .list-btn .button-set li {
  width: auto;
}
.isfw_form .list-btn .button-set li .btn_back {
  background-color: #999;
}
.isfw_form .list-btn .button-set li .btn_back:hover {
  background-color: #b3b3b3;
}
.isfw_form .list-btn .button-set li.btn-left {
  position: absolute;
  left: 0;
}
.isfw_form .list-btn .button-set li.btn-right {
  position: absolute;
  right: 0;
}

.privacy-content {
  border: 1px solid #ccc;
  line-height: 1.7;
  max-height: 30rem;
  overflow-y: scroll;
  padding: 3rem;
  margin: 2rem 0;
}

.privacy-agree {
  background-color: #f5f5f5;
  margin-top: 1rem;
  padding: 2rem;
  text-align: center;
}

.form-finish {
  padding: 3rem 0;
  text-align: center;
}

/***** TITLE *****/
.title_lv1 {
  background-color: var(--primary-bg-color-1);
  border-color: none;
  border-style: none;
  border-width: 0 0 0 0;
  margin: 0 0 2rem;
  position: relative;
  font-weight: bold;
  color: var(--primary-color-1);
  font-size: 1.25rem;
  padding: 18px 40px;
}
.title_lv1 .ttl_item {
  position: relative;
}

.title_lv2 {
  position: relative;
  background-color: transparent;
  border-color: var(--primary-bg-color-1);
  border-style: solid;
  border-width: 0 0 1px 0;
  margin: 2rem 0 1rem;
  padding: 0 0 0.5rem;
  font-weight: bold;
  color: var(--primary-bg-color-2);
  font-size: 1.25rem;
}
.title_lv2 .ttl_item {
  position: relative;
}
.title_lv2 .ttl_item:before {
  color: #adb5bd;
}
.title_lv2 .isfw_btn {
  position: absolute;
  top: calc((100% - 30px) / 2);
  right: 0;
}

.title_lv3 {
  background-color: #f5f5f5;
  border-color: none;
  border-style: none;
  border-width: 0 0 0 0;
  margin: 0 0 20px;
  padding: 15px 20px;
  position: relative;
  font-weight: bold;
  color: #333;
  font-size: 16px;
}
.title_lv3 .ttl_item {
  position: relative;
}
.title_lv3 .ttl_item:before {
  color: #adb5bd;
}

.title_lv4 {
  background-color: #e9ecef;
  border-color: none;
  border-style: none;
  border-width: 0 0 0 0;
  margin: 0 0 20px;
  padding: 15px 20px 10px 20px;
  position: relative;
  font-weight: bold;
  color: #222;
  font-size: 16px;
}
.title_lv4 .ttl_item {
  position: relative;
}
.title_lv4 .ttl_item:before {
  color: #adb5bd;
}

/***** PAGETOP ******/
.isfw_pagetop a {
  background-color: var(--primary-bg-color-1);
  border-radius: 0.25rem;
  color: #fff;
  opacity: 1;
}
.isfw_pagetop a:before {
  color: #fff;
}
.isfw_pagetop a:hover {
  opacity: 0.8;
}

.header {
  display: block;
  padding: 0;
  color: var(--header-color);
}
.header_main {
  display: flex;
  background-color: var(--header-bg-color);
  margin: 0 auto;
  position: relative;
  align-items: center;
  height: 80px;
  padding: 0 2rem;
  justify-content: space-between;
}
.header_logo {
  width: 220px;
  height: 95px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  border-radius: 0 0 20px 20px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  position: absolute;
  left: 2rem;
  top: 0;
}
.header_logo img {
  max-width: 100px;
}
.header_importer {
  padding-left: calc(220px + 2rem);
}
.header_importer img {
  max-height: 24px;
}
.header_dateTime-list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 0 2rem;
  padding: 0;
}
.header_dateTime li {
  font-size: 12px;
  margin-left: 1em;
  margin-bottom: 0.25em;
}
.header_dateTime li.deadline {
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .header {
    height: 50px;
    margin-bottom: calc(50px + 3rem);
  }
  .header_main {
    height: 50px;
    padding: 0;
  }
  .header_logo {
    width: 120px;
    height: 60px;
    border-radius: 0 0 20px 0px;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
    position: absolute;
    left: 0rem;
    top: 0;
  }
  .header_logo img {
    max-width: 55px;
  }
  .header_importer {
    padding-left: calc(120px + 1.5rem);
  }
  .header_importer img {
    max-height: 14px;
  }
  .header_dateTime {
    position: absolute;
    top: calc(50px + 1.5rem);
    right: 0;
    box-sizing: border-box;
  }
  .header_dateTime-list {
    justify-content: flex-end;
    margin: 0;
    padding: 0 10px;
  }
  .header_dateTime li {
    max-width: 50%;
    margin-left: 0;
  }
  .header_dateTime li:nth-child(2n), .header_dateTime li:last-child {
    text-align: right;
    margin-left: 1em;
  }
  .header_dateTime li.deadline {
    color: var(--attention);
  }
  .header.base_page {
    margin-bottom: 3rem;
  }
}
footer small {
  display: block;
  text-align: center;
  font-size: 0.9em;
}

.footer_ten {
  padding: 50px 30px 105px;
  margin-bottom: 0;
}
.footer_ten .flex-body {
  margin-right: auto;
  margin-left: auto;
  justify-content: center;
  display: flex !important;
}
.footer_ten .flex-body .flex-item {
  width: calc(50% - 30px);
}
.footer_ten .flex-body .flex-item:last-child {
  padding-left: 60px;
  border-left: 1px solid #ccc;
  width: calc(18.5em + 60px);
}
.footer_ten .flex-body .flex-item:first-child {
  max-width: calc(18.5em + 60px);
  min-width: calc(16.5em + 60px);
  padding-right: 60px;
  flex-wrap: wrap;
}
.footer_ten h4 {
  font-size: 1rem;
  font-weight: 600;
}
.footer_ten ul {
  padding: 0;
  margin: 0;
}
.footer_ten ul li {
  margin: 0 0.25rem 0.25rem 0;
}
.footer_ten .footer_ten_text {
  width: 100%;
  text-align: center;
  margin-top: 50px;
}
@media screen and (min-width: 769px) {
  .footer_ten .flex-body .flex-item:first-child {
    padding-left: 2.5em;
  }
}
@media screen and (max-width: 767px) {
  .footer_ten .flex-body {
    display: block !important;
  }
  .footer_ten .flex-body .flex-item {
    min-width: auto !important;
  }
  .footer_ten .flex-body .flex-item:first-child {
    justify-content: flex-start;
    width: 100%;
    padding-right: 0;
    margin-bottom: 1.5rem;
  }
  .footer_ten .flex-body .flex-item:last-child {
    border-left: none;
    border-top: 1px solid #ccc;
    padding-left: 0;
    padding-top: 1.5rem;
    width: 100%;
  }
  .footer_ten .footer_ten_text {
    padding: 0 !important;
    width: 100%;
    margin-top: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .footer_ten {
    padding: 1.5rem 1.5rem 5.5rem;
    margin-bottom: 0;
  }
  .footer_ten .footer_brand_info_container {
    flex-direction: row;
  }
}
.footer_page {
  margin-bottom: 0;
  padding-top: 25px;
  background-color: #F4F4F4;
  padding: 1.5rem 0;
}
.footer_page .footer_page_text {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .footer_page {
    padding: 1rem 0;
  }
}

.jacss-steps__box--active .jacss-steps__checked:after {
  height: 2px;
  background: #c4c4c4;
}
.jacss-steps__box--active.entered .jacss-steps__checked {
  background-color: #c4c4c4;
}
.jacss-steps__box--active.entered .jacss-steps__checked i {
  color: #c4c4c4;
}
.jacss-steps__box--active.entered .jacss-steps__checked:after, .jacss-steps__box--active.entered .jacss-steps__checked:before {
  background-color: #c4c4c4;
}

.jacss-steps ul {
  width: 100%;
  justify-content: space-between;
}
.jacss-steps .jacss-steps__box:not(:first-child) {
  margin-left: 10px;
}
@media screen and (max-width: 900px) {
  .jacss-steps {
    overflow-x: auto;
  }
}
.jacss-steps .jacss-steps__checked:after, .jacss-steps .jacss-steps__checked:before,
.jacss-steps .jacss-steps__blank:after,
.jacss-steps .jacss-steps__blank:before {
  /* .mainの幅/9を算出 */
  width: 123.7777777778px;
}
.jacss-steps .jacss-steps__checked:after,
.jacss-steps .jacss-steps__blank:after {
  z-index: -10;
}
.jacss-steps .jacss-steps__checked:before,
.jacss-steps .jacss-steps__blank:before {
  z-index: -5;
}
.jacss-steps.step-8 .jacss-steps__box .jacss-steps__checked:after, .jacss-steps.step-8 .jacss-steps__box .jacss-steps__checked:before,
.jacss-steps.step-8 .jacss-steps__box .jacss-steps__blank:after,
.jacss-steps.step-8 .jacss-steps__box .jacss-steps__blank:before {
  /* .mainの幅/8を算出 */
  width: 138px;
}
.jacss-steps.step-7 .jacss-steps__box .jacss-steps__checked:after, .jacss-steps.step-7 .jacss-steps__box .jacss-steps__checked:before,
.jacss-steps.step-7 .jacss-steps__box .jacss-steps__blank:after,
.jacss-steps.step-7 .jacss-steps__box .jacss-steps__blank:before {
  /* .mainの幅/8を算出 */
  width: 156.2857142857px;
}

@media screen and (max-width: 768px) {
  .jacss-steps .jacss-steps__box {
    min-width: 80px;
  }
  .jacss-steps .jacss-steps__box:not(:first-child) {
    margin-left: 0px;
  }
  .jacss-steps .jacss-steps__box .jacss-steps__checked:after, .jacss-steps .jacss-steps__box .jacss-steps__checked:before,
.jacss-steps .jacss-steps__box .jacss-steps__blank:after,
.jacss-steps .jacss-steps__box .jacss-steps__blank:before {
    /* .固定値として算出 */
    width: 90px !important;
  }
}
/***** VISIBLE *****/
.isfw_sp {
  display: none !important;
}

.isfw_pc {
  display: block !important;
}

/***** PAGE HEADER *****/
body {
  color: var(--bs-body-color);
  min-width: 1024px;
}

.isfw_header .header_content {
  margin: 0 auto;
  min-width: 1024px;
  width: 1024px;
}

@media (min-width: 769px) {
  body {
    min-width: 1024px;
  }
}
/***** PAGE FOOTER *****/
.isfw_footer .footer_content {
  margin: 0 auto;
  min-width: 1024px;
  width: 1024px;
}

/***** BODY *****/
.isfw_pagebody {
  margin: 0 auto;
  min-width: 1024px;
  width: 1024px;
}

a {
  color: var(--bs-body-color);
  transition: all 0.3s;
  text-decoration: underline;
}
a:visited {
  color: var(--bs-body-color);
  text-decoration: underline;
}
a:active {
  color: var(--bs-body-color);
  text-decoration: underline;
}
a:hover {
  color: var(--bs-body-color);
  text-decoration: underline;
}

a[class^=btn_],
button[class^=btn_] {
  background-color: var(--primary-bg-color-1);
  border-radius: 4px;
  color: var(--secondary-color-1);
  font-size: 1rem;
  transition: all 0.3s;
}
a[class^=btn_]:visited,
button[class^=btn_]:visited {
  color: var(--secondary-color-1);
}
a[class^=btn_].btn_more:after,
button[class^=btn_].btn_more:after {
  font-size: 0.9rem;
  color: var(--secondary-color-1);
}
a[class^=btn_].btn_back:before,
button[class^=btn_].btn_back:before {
  font-size: 0.9rem;
  color: var(--secondary-color-1);
}
a[class^=btn_].size-l,
button[class^=btn_].size-l {
  font-size: 1rem;
}
a[class^=btn_].size-s,
button[class^=btn_].size-s {
  font-size: 0.75rem;
}

.tal {
  text-align: left !important;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

.fss {
  font-size: 14.4px;
}

.fsl {
  font-size: 24px;
}

.alb {
  align-items: baseline !important;
}

.alc {
  align-items: center !important;
}

.jcc {
  justify-content: center !important;
}

p {
  margin: 0;
}

p + p {
  margin-top: 1rem;
}

.text-alert {
  color: var(--attention);
  font-weight: bold;
  line-height: 2;
}

b {
  font-weight: bold;
}

ul.list-pure {
  list-style-type: disc;
  margin: 0 0 1.5em 1.5em;
}
ul.list-pure li + li {
  margin-top: 0.75em;
}
ul.list-pure ul {
  margin-top: 0.75em;
}

ol.list-pure {
  list-style-type: decimal;
  margin: 0 0 0 1.5em;
}
ol.list-pure li + li {
  margin-top: 0.75em;
}
ol.list-pure ul {
  margin-top: 0.75em;
}

ul.list-indent-num {
  margin: 0;
  padding: 0;
}
ul.list-indent-num li {
  margin-left: 2.5rem;
  text-indent: -2.5rem;
}
ul.list-indent-num li + li {
  margin-top: 1rem;
}

ul.supplement {
  padding-left: 0;
}
ul.supplement li {
  position: relative;
  padding-left: 1.25rem;
}
ul.supplement li:before {
  position: absolute;
  left: 0;
  content: "※";
}
ul.supplement.fs-14 li {
  font-size: 14px;
}

.w3rem {
  width: 3rem !important;
}

.w4rem {
  width: 4rem !important;
}

.w5rem {
  width: 5rem !important;
}

.w6rem {
  width: 6rem !important;
}

.w7rem {
  width: 7rem !important;
}

.w8rem {
  width: 8rem !important;
}

.w9rem {
  width: 9rem !important;
}

.w10rem {
  width: 10rem !important;
}

.w11rem {
  width: 11rem !important;
}

.w12rem {
  width: 12rem !important;
}

.w13rem {
  width: 13rem !important;
}

.w14rem {
  width: 14rem !important;
}

.w15rem {
  width: 15rem !important;
}

.w16rem {
  width: 16rem !important;
}

.w17rem {
  width: 17rem !important;
}

.w18rem {
  width: 18rem !important;
}

.w19rem {
  width: 19rem !important;
}

.w20rem {
  width: 20rem !important;
}

.w100 {
  width: 100%;
}

.flex-body {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.flex-body .flex-item {
  max-width: calc(50% - 1.5rem);
  width: 100%;
}
.flex-body .flex-item > .title_lv2:first-child {
  margin-top: 0;
}
.flex-body .flex-item.col-1 {
  max-width: calc(8.3333333333% - 1.5rem);
}
.flex-body .flex-item.col-2 {
  max-width: calc(16.6666666667% - 1.5rem);
}
.flex-body .flex-item.col-3 {
  max-width: calc(25% - 1.5rem);
}
.flex-body .flex-item.col-4 {
  max-width: calc(33.3333333333% - 1.5rem);
}
.flex-body .flex-item.col-5 {
  max-width: calc(41.6666666667% - 1.5rem);
}
.flex-body .flex-item.col-6 {
  max-width: calc(50% - 1.5rem);
}
.flex-body .flex-item.col-7 {
  max-width: calc(58.3333333333% - 1.5rem);
}
.flex-body .flex-item.col-8 {
  max-width: calc(66.6666666667% - 1.5rem);
}
.flex-body .flex-item.col-9 {
  max-width: calc(75% - 1.5rem);
}
.flex-body .flex-item.col-10 {
  max-width: calc(83.3333333333% - 1.5rem);
}
.flex-body .flex-item.col-11 {
  max-width: calc(91.6666666667% - 1.5rem);
}
.flex-body .flex-item.col-12 {
  max-width: 100%;
}

/*-------------
  Base
-------------*/
body {
  color: var(--bs-body-color);
  font-family: "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 16px;
}

@media (max-width: 768px) {
  section {
    margin: 0 0 40px;
    padding: 0 0 0 0;
  }
}
@media (min-width: 769px) {
  section {
    margin: 0 0 60px;
    padding: 0 0 0 0;
  }
}
.section_inner {
  margin: 0 auto;
}
.section_title + section {
  margin: 0 0 60px;
}
.section_title-sub {
  color: var(--primary-bg-color-1);
  font-size: 16px;
}

@media (min-width: 769px) {
  .section_inner {
    width: 1024px;
  }
  .section_title .ttl_item {
    font-size: 32px;
    margin-bottom: 50px;
  }
  .section_title-sub {
    font-size: 20px;
  }
}
.title_lv1 {
  border-radius: 10px;
}
.title_lv1 .ttl_item {
  font-weight: 700;
}

a[class^=btn_].btn_default,
button[class^=btn_].btn_default {
  background-color: var(--primary-bg-color-2);
  color: var(--primary-color-2);
  font-weight: bold;
}
a[class^=btn_] em,
button[class^=btn_] em {
  color: var(--secondary-color-1);
}

#button:disabled {
  pointer-events: none;
}

button[class^=btn_]:disabled:hover {
  background-color: #222;
}

/*Important matters*/

.box {

  min-height: 200px;

  background-color: #eeecc8;

  border: 1px solid #e24e4e;

  padding: 15px;

  align-items: center;

}

.box1 {

  border-radius: 5px;

  width: 40px;

  height: 25px;

  background-color: #ffffff;

  border: 1px solid #e24e4e;

  text-align: center;

  margin: 0 0 0.1rem;

  font-weight: bold;

  color: #e24e4e;

  white-space: nowrap;

}

p.memo {

  color: #000000;

}



span.text-bold1 {

  font-weight: bold;

  color: #e24e4e;

}



span.text-bold2 {

  font-weight: bold;

}

/*--------------------------*/



/*Customer Information*/

.flex-container {

  display: flex;

  gap: 20px;

  align-items: flex-start;

  font-size: 0.9rem;

}



.calc-list2 {

  font-size: 0.9rem;

}

.calc-list2 dl {

  padding: 0 0.5rem;

  border-bottom: 1px solid #ccc;

  display: flex;

  flex-wrap: wrap;

  justify-content: space-between;

  margin-bottom: 0;

}

.calc-list2 dt,

.calc-list2 dd {

  padding: 0.75rem 0rem;

  margin: 0;

}

.calc-list2 dt {

  font-weight: normal;

}

.calc-list2 dt,

.calc-list2 dd {

  padding: 0.75rem 0rem;

  margin: 0;

}

.calc-list2 dd {

  width: 555px;

}

@media screen and (min-width: 768px) {

  .calc-list2 dd {

    width: 555px;

  }

}

/*--------------------------*/

.list-btn.footer-btn {
  background-color: var(--primary-bg-color-2);
  height: 80px;
  overflow: hidden;
  padding: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.list-btn.footer-btn ul.cols {
  height: 100%;
  position: relative;
}
.list-btn.footer-btn ul.cols li {
  margin: 0;
  display: flex;
}
.list-btn.footer-btn ul.cols li button {
  background-color: var(--primary-bg-color-2);
  border-radius: 0;
  box-shadow: -5px 0px 5px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 40px;
  margin: 0;
  min-width: 220px;
  font-size: 1.25rem;
  font-weight: bold;
}
.list-btn.footer-btn ul.cols li button em {
  color: var(--primary-color-2);
}
.list-btn.footer-btn ul.cols li:last-child button {
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
}
.list-btn.footer-btn ul.cols li.back {
  /*
  position: absolute;
  left: 2rem;
  top: 50%;
  transform: translateY(-50%);

  button.btn_back {
    border: #999;
    background-color: #F4F4F4;
    padding: .5rem 1rem;
    min-width: auto;
    font-size: 1rem;
    font-weight: normal;
    border-radius: 10px;

    &:before {
      font-weight: bold;
      color: #222;
      margin-right: .5rem;
      content: "\f104";
      font-family: "Font Awesome 6 free";
    }

    em {
      color: #222;
    }
    &:hover{
      background-color: darken(#F4F4F4, 10%);
    }
  }*/
}
.list-btn.footer-btn ul.cols li.back button.btn_back {
  background-color: var(--primary-bg-color-2);
}
@media screen and (max-width: 768px) {
  .list-btn.footer-btn ul.cols li.back button.btn_back {
    padding: 1rem 15px 2.5rem;
  }
}

.list-btn.btn-payment {
  margin-bottom: 2rem;
}
.list-btn.btn-payment a[class^=btn_],
.list-btn.btn-payment button[class^=btn_] {
  width: 100%;
}
.list-btn.btn-payment .button-set li + li {
  margin-top: 1rem;
}

.isfw_form ul.zipcode-group li .btn_default {
  padding: 0.5rem;
  min-width: inherit;
}
.isfw_form ul.zipcode-group li .btn_default span {
  margin: 0;
}
.isfw_form .list-other {
  width: 100% !important;
}
.isfw_form .list-other .other_container {
  margin-left: 1rem;
}

.calc-list {
  font-size: 0.9rem;
}
.calc-list dl {
  padding: 0 0.5rem;
  border-bottom: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 0;
}
.calc-list dt,
.calc-list dd {
  padding: 0.75rem 0rem;
  margin: 0;
}
.calc-list dt {
  font-weight: normal;
  padding-right: 1rem;
}
.calc-list dd {
  margin-left: auto;
  padding-left: 1rem;
}
@media screen and (max-width: 767px) {
  .calc-list dt,
.calc-list dd {
    padding: 0.5rem 0rem;
  }
}
.calc-list .calc-item.calc-focused {
  background-color: var(--secondary-bg-color-2);
  color: var(--attention);
}

.high-light {
  background-color: var(--secondary-bg-color-2);
  color: var(--attention);
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.plan-list {
  margin-top: 2rem;
}
.plan-list ul.radio-btn li {
  display: flex;
  align-items: center;
}
.plan-list ul.radio-btn li .plan-description {
  width: calc(100% - 1rem - 280px);
  margin-left: 1rem;
}
.plan-list ul.radio-btn .radio-parts {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  background-color: var(--primary-bg-color-3);
  border-radius: 10px;
  color: var(--primary-bg-color-2);
  min-height: 100px;
  width: 280px;
  padding: 10px;
  padding-left: 55px;
  border-bottom: 1px solid var(--primary-bg-color-1);
  align-content: flex-start;
  font-weight: bold;
}
.plan-list ul.radio-btn .radio-parts:before {
  content: "\f0c8";
  font-size: 18px;
  display: inline-block;
  vertical-align: middle;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--primary-bg-color-1);
  font-size: 1.5rem;
}
.plan-list ul.radio-btn .radio-parts:after {
  content: "";
  height: 1.2rem;
  width: 1.2rem;
  position: absolute;
  left: 20px;
  background-color: #fff;
  border-radius: 0.3rem;
}
.plan-list ul.radio-btn input.radio-input:checked + .radio-parts {
  background-color: var(--primary-bg-color-1);
  font-size: 16px;
  font-weight: bold;
  border-bottom: none;
  border: 1px solid var(--primary-bg-color-1);
  box-shadow: 0px 1px 1px 0px rgb(227, 245, 235) inset;
}
.plan-list ul.radio-btn input.radio-input:checked + .radio-parts:before {
  content: "\f14a";
  color: #fff;
  font-weight: bold;
}
.plan-list ul.radio-btn input.radio-input:checked + .radio-parts:after {
  display: none;
}

/*-------------
  overwrite
-------------*/
.validation-mark {
  margin-right: 0.5rem;
}

.alertBox {
  background-color: #f0f0f0;
  color: #434343;
  font-size: 0.9rem;
  font-weight: normal;
  margin-top: 1rem;
  padding-left: 40px;
  position: relative;
}
.alertBox:before {
  border: 2px solid #434343;
  border-radius: 50%;
  content: "i";
  display: inline-block;
  font-size: 0.7rem;
  font-weight: bold;
  line-height: 15px;
  text-align: center;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 14px;
  left: 12px;
}
.alertBox + .cols {
  margin-top: 1rem;
}
.alertBox p {
  margin-bottom: 2rem;
}
.alertBox p:last-child {
  margin-bottom: 0;
}

.form-item + .alertBox {
  margin-top: -0.5rem;
}

.form-item .form-item + .alertBox {
  margin-top: 1rem;
}

.attentionBox {
  color: var(--attention);
  background: var(--secondary-bg-color-2);
  border-radius: 5px;
  padding: 12px;
  font-weight: bold;
  margin: 1rem 0;
}
.attentionBox .color-default {
  color: var(--secondary-color-2);
}
.attentionBox .color-default:before, .attentionBox .color-default:after {
  color: var(--secondary-color-2);
}

.f-error {
  color: var(--attention);
  font-weight: bold;
  margin: 0.5rem 0 0 !important;
}

#purpose_other {
  margin-left: 1rem;
}

.invisible {
  height: 0 !important;
  margin: 0 !important;
}

@media (min-width: 769px) {
  .main {
    padding: 0;
    margin: 50px auto 0;
    width: 1024px;
  }
}
@media screen and (min-width: 768px) {
  .main .title_lv1 + p {
    margin-left: 40px;
  }
}
/*-------------
  title
-------------*/
.title_lv1 {
  position: relative;
  display: flex;
  align-items: center;
}
.title_lv1 .isfw_btn {
  margin-left: 1rem;
}
.title_lv1 .isfw_btn a {
  background-color: #fff;
  padding: 0.25rem 1rem;
  font-size: 16px;
  text-decoration: none;
  color: #2e2e2e;
  border-radius: 0.5rem;
  display: block;
  opacity: 1;
}
.title_lv1 .isfw_btn a:hover {
  opacity: 0.8;
}

@media screen and (min-width: 768px) {
  .main .title_lv1 + p {
    margin-left: 40px;
  }
}
/*-------------
  装飾
-------------*/
input[type=email] {
  min-width: 20rem;
}

span.form-text {
  color: #aaa;
  margin: 0.25rem 0 !important;
}

.isfw_form textarea {
  width: 100%;
}

.image {
  text-align: center;
  margin: 1rem 0;
}
.image img {
  margin: 0 auto;
}

.image_blank {
  margin: 1rem auto !important;
  background: #E5E5E5;
  padding: 2em;
  min-height: 200px;
  min-width: 300px;
  max-height: 100%;
  max-width: 100%;
}
.image_blank + .image_caption {
  margin: 0 auto;
  width: 435px;
  text-align: right;
  max-width: 90%;
}

.file-image img {
  object-fit: contain;
}

.validation-mark.rounded-circle {
  background: var(--primary-bg-color-1);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
  height: 28px;
  width: 28px;
  min-width: 28px;
}

.row {
  flex-wrap: wrap;
}
.row dt,
.row dd {
  width: 100%;
  flex-basis: auto !important;
}
.row .form-content {
  padding-top: 0 !important;
}

b.title {
  display: inline-block;
  font-weight: bold;
  margin-bottom: 0.5rem;
}

.list {
  padding: 0;
  margin: 0.5rem 0;
}
.list li {
  position: relative;
  padding: 0 0 0.25rem 1.25rem;
}
.list li:before {
  position: absolute;
  left: 0;
  top: 0;
}

ul.list li:before {
  content: "・";
  color: #2e2e2e;
}
ul.list li + li {
  margin-top: 0;
}

ol.list {
  counter-reset: li;
}
ol.list li:before {
  color: #2e2e2e;
  counter-increment: li;
  content: counter(li) "、";
  font-weight: bold;
}

.form-content span.text-red + * {
  margin-top: 0.5rem;
}

span.text-red {
  color: var(--attention);
}

.color-default {
  color: #222;
}
.color-default:before, .color-default:after {
  color: #222;
}

.weight-normal {
  font-weight: normal;
}
.weight-normal:before, .weight-normal:after {
  font-weight: normal;
}

b.title {
  display: block;
  margin: 1rem 0 0.5rem;
}

p.after-add {
  margin: 1rem 0;
}

.button_checkbox {
  background-color: var(--secondary-bg-color-2);
  color: var(--attention);
  padding: 1rem 2rem;
  text-align: center;
  margin-bottom: 1rem;
}
.button_checkbox .checkbox .checkbox-parts {
  font-size: 1.2rem;
  font-weight: bold;
  text-align: left;
}
.button_checkbox .checkbox .checkbox-parts:before {
  top: 5px;
}
@media screen and (max-width: 767px) {
  .button_checkbox {
    padding: 0.5rem 1rem;
    text-align: left;
  }
  .button_checkbox .checkbox .checkbox-parts {
    font-size: 1rem;
  }
  .button_checkbox .checkbox .checkbox-parts:before {
    font-size: 1.2rem;
    top: 5px;
  }
}

.alertBox_green {
  background-color: var(--primary-bg-color-3);
  padding: 1em;
  color: var(--primary-color-3);
}

@media screen and (min-width: 767px) {
  .pc-tac {
    text-align: center !important;
  }
}

i,
cite,
em,
var,
address,
dfn {
  font-style: normal;
}

.privacy-content > *:first-child {
  margin-top: 0;
}

.list-btn.btn-download {
  margin-bottom: 2rem;
}
.list-btn.btn-download a[class^=btn_],
.list-btn.btn-download button[class^=btn_] {
  width: 100%;
  max-width: 500px;
}
@media screen and (max-width: 767px) {
  .list-btn.btn-download a[class^=btn_],
.list-btn.btn-download button[class^=btn_] {
    line-height: 1.2;
  }
}
.list-btn.btn-download .button-set li + li {
  margin-top: 1rem;
}

.finish {
  max-width: 600px;
  margin: 0 auto;
}
.finish .title {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
}
.finish p {
  line-height: 1.8;
}

.footer_finish {
  margin-bottom: 0;
}
.footer_finish .footer_ten_text {
  padding-bottom: 20px;
}

/* =================================================
  Sp
================================================= */
@media only screen and (max-width: 768px) {
  /* default parts design */
  /* =================================================
    form
  ================================================= */
  .isfw_form input[type=text], .isfw_form input[type=email] {
    font-size: 16px;
  }
  .isfw_form button, .isfw_form textarea {
    font-size: 16px;
  }
  .isfw_form ul {
    width: auto;
  }
  .isfw_form ul.cols:not(.zipcode-group, .phone-group) {
    flex-direction: column;
  }
  .isfw_form ul.phone-group {
    flex-wrap: wrap;
  }
  .isfw_form ul.phone-group li:nth-child(4) {
    margin-left: 0;
    width: 100%;
  }
  .isfw_form ul.cols.mb-cols {
    flex-direction: row;
  }
  .isfw_form ul.cols.mb-cols li {
    margin-right: 0.5rem;
  }
  .isfw_form ul.cols.alc {
    align-items: baseline !important;
  }
  .isfw_form .form-content .form-item {
    flex-direction: column;
  }
  .isfw_form .form-content .form-item .form-title, .isfw_form .form-content .form-item .form-content {
    padding: 1rem 0;
  }
  .isfw_form .form-content .form-item .form-title {
    margin-right: 0;
    padding: 1.5rem 0 0.5rem;
    flex-basis: 100%;
  }
  .isfw_form .form-content .form-item .form-content {
    display: flex;
    justify-content: center;
    flex-direction: column;
    flex-basis: 100%;
    padding-bottom: 1.5rem;
  }
  .isfw_form .form-content .form-item .form-item {
    border: none;
    margin: 1rem 0 0;
  }
  .isfw_form .form-content .form-item .form-item .form-title {
    flex-basis: 100%;
    padding: 0 0 0.5rem !important;
  }
  .isfw_form .form-content .form-item .form-item .form-content {
    flex-basis: 100%;
    padding: 0 0 0.5rem;
  }
  .isfw_form .form-content .form-item .form-item:first-of-type .form-title {
    padding-top: 0 !important;
  }
  .isfw_form .form-content.form-confirm .form-item .form-title, .isfw_form .form-content.form-confirm .form-item .form-content {
    padding: 0.5rem 0;
  }
  .isfw_form .form-content.form-confirm .form-item .form-title {
    padding-bottom: 0.25rem;
  }
  .isfw_form .form-content.form-confirm .form-item .form-content {
    padding: 0 0 1rem;
  }
  .isfw_form ul.name-group li {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.25rem;
    width: 100%;
  }
  .isfw_form ul.name-group + ul.name-group {
    margin-top: 1rem;
  }
  .isfw_form ul.phone-group {
    flex-wrap: wrap;
  }
  .isfw_form ul.phone-group li:nth-child(4) {
    margin-left: 0;
    width: 100%;
  }
  .isfw_form table.radio .radio-parts, .isfw_form table.radio .checkbox-parts, .isfw_form table.checkbox .radio-parts, .isfw_form table.checkbox .checkbox-parts {
    display: block;
    height: auto;
    width: auto;
    padding: 0 0 0 25px;
    margin: 0 auto;
  }
  .isfw_form table.radio .radio-parts span, .isfw_form table.radio .checkbox-parts span, .isfw_form table.checkbox .radio-parts span, .isfw_form table.checkbox .checkbox-parts span {
    display: inline-block;
  }
  .isfw_form table.radio th, .isfw_form table.checkbox th {
    background-color: #f5f5f5;
  }
  .isfw_form table.radio th, .isfw_form table.radio td, .isfw_form table.checkbox th, .isfw_form table.checkbox td {
    border: 1px solid #eee;
    display: block;
    padding: 10px;
  }
  .isfw_form table.radio td, .isfw_form table.checkbox td {
    border: none;
  }
  .isfw_form table.radio td + td, .isfw_form table.checkbox td + td {
    padding-top: 2px;
  }
  .isfw_form table.radio thead, .isfw_form table.checkbox thead {
    display: none;
  }
  .isfw_form table.radio tbody td, .isfw_form table.checkbox tbody td {
    text-align: left;
  }
  .isfw_form .list-btn .button-set {
    flex-direction: column;
  }
  .isfw_form .list-btn .button-set li {
    order: 1;
    margin: 0 auto 1rem;
  }
  .isfw_form .list-btn .button-set li.btn-left {
    position: relative;
    order: 3;
  }
  .isfw_form .list-btn .button-set li.btn-right {
    position: absolute;
    order: 2;
  }

  .privacy-content {
    max-height: 15rem;
    padding: 1rem;
  }

  /***** TITLE *****/
  .isfw_ttlh1 .ttl_item {
    font-size: 28.8px;
  }

  .isfw_ttlh2 .ttl_item {
    font-size: 18px;
  }

  .isfw_ttlh3 .ttl_item {
    font-size: 14.4px;
  }

  .isfw_ttlh4 .ttl_item {
    font-size: 14.4px;
  }

  .section_margin {
    margin: 0 1rem 3rem;
  }

  input[type=text], input[type=email], input[type=number], input[type=tel], input[type=password], input[type=file],
textarea, select {
    font-size: 16px !important;
  }

  /***** VISIBLE *****/
  .isfw_sp {
    display: block !important;
  }

  .isfw_pc {
    display: none !important;
  }

  /***** PAGE HEADER *****/
  body {
    min-width: inherit;
  }

  .isfw_header .header_content {
    min-width: inherit;
    width: 100%;
  }

  .isfw_pagebody {
    min-width: inherit;
    width: 100%;
  }

  /***** PAGE FOOTER *****/
  .isfw_footer .footer_content {
    min-width: inherit;
    width: 100%;
  }

  .flex-body {
    display: block;
  }
  .flex-body .flex-item {
    max-width: initial;
    margin-bottom: 2rem;
  }
  .flex-body .flex-item:last-child {
    margin-bottom: 0rem;
  }
  .flex-body .flex-item.col-1, .flex-body .flex-item.col-2, .flex-body .flex-item.col-3, .flex-body .flex-item.col-4, .flex-body .flex-item.col-5, .flex-body .flex-item.col-6, .flex-body .flex-item.col-7, .flex-body .flex-item.col-8, .flex-body .flex-item.col-9, .flex-body .flex-item.col-10, .flex-body .flex-item.col-11, .flex-body .flex-item.col-12 {
    max-width: initial;
  }
  .flex-body.col-3 .flex-item {
    max-width: initial;
  }

  .title_lv1 {
    border-radius: 0;
    padding: 0.5rem 1rem;
  }

  .title_lv2 {
    margin-top: 2rem;
  }

  .main .section_margin {
    margin-left: 1rem;
    margin-right: 1rem;
  }

  .list-btn.footer-btn {
    height: auto;
    overflow: inherit;
  }
  .list-btn.footer-btn ul.cols {
    flex-direction: row;
    height: 100%;
    flex-wrap: nowrap;
  }
  .list-btn.footer-btn ul.cols li button {
    min-width: inherit;
    font-size: 1rem;
    padding: 1rem 15px 2.5rem;
    min-width: 100px;
  }
  .list-btn.footer-btn ul.cols li button em {
    font-weight: lighter;
  }
  .list-btn.footer-btn ul.cols li.back {
    left: 0.75rem;
  }

  .plan-list ul.radio-btn li {
    flex-direction: column;
  }
  .plan-list ul.radio-btn li .plan-description {
    width: 100%;
    margin-left: 0;
    margin-top: 1rem;
  }
  .plan-list ul.radio-btn li + li {
    margin-top: 2rem;
  }
  .plan-list ul.radio-btn .radio-parts {
    height: auto;
    padding: 1.5rem 0.5rem 1.5rem 3.5rem;
    width: 100%;
  }
}
.modal-body .description p + select {
  margin-top: 1rem !important;
}
.modal-body .description .form-select {
  border-color: #ced4da !important;
}

.modal-content p {
  margin-bottom: 0.5rem;
}

@media screen and (min-width: 241px) and (max-width: 480px) {
  #toast-container > div {
    padding: 22px 8px 22px 50px !important;
    min-height: 5em;
  }
}
#toast-container .toast.toast-error {
  background-color: var(--primary-color-1) !important;
  border-color: var(--attention);
  color: var(--attention);
  background-image: url(../img/toastr_red.png) !important;
}
#toast-container > .toast {
  background-position: 15px 17px;
}
#toast-container > .toast:hover {
  opacity: inherit;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  cursor: default;
}

@media only screen and (max-width: 767px) {
  .list-btn.footer-btn.test1 ul.cols {
    padding-left: 100px;
  }
  .list-btn.footer-btn.test1 ul.cols li.back {
    top: 40%;
    left: 1.75rem;
  }
  .list-btn.footer-btn.test1 ul.cols li.back button.btn_back {
    padding: 0.5rem 0.75rem;
  }
}
a[class^=btn_].btn_download.second_document {
  padding: 1rem 1rem;
}

/* =================================================
  ipad
================================================= */
@media screen and (min-width: 768px) {
  .is-smaller-ipad {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .is-smaller-ipad {
    display: block !important;
  }
}

/*# sourceMappingURL=style.css.map */
