@charset "utf-8";

/* -----------------------------------------------------------------
.sec_intro
----------------------------------------------------------------- */
.sec_intro {
  position: relative;
  z-index: 1;
}
.sec_intro .cmn_ttl01 {
  margin-top: var(--margin_size_L);
}
.sec_intro .sec_body {
  width: min(80%,46em);
  margin-top: var(--margin_size_XS);
}
.sec_intro .info_img {
  margin-top: var(--margin_size_S);
}
@media screen and (max-width: 767px) {
  .sec_intro .sec_body {
    width: 100%;
  }
  .sec_intro .info_img {
    display: flex;
    justify-content: center;
  }
  .sec_intro .info_img picture {
    width: 80%;
    max-width: 300px;
  }
}



/* -----------------------------------------------------------------
.sec_form
----------------------------------------------------------------- */
.sec_form{
  margin-top: var(--margin_size_S);
}
.sec_form .group{
  margin-top: var(--margin_size_S);
}

.sec_form .privacy {
  margin-top: var(--margin_size_XS);
  padding: 2rem 5vw;
  border-radius: 9999px;
  border: #ccc 1px solid;
}
.label_required .smf-item__label__text,
.label_optional .smf-item__label__text {
  position: relative;
  padding-left: 55px;
}
.label_required .smf-item__label__text::before,
.label_optional .smf-item__label__text::before {
  position: absolute;
  color:  #fff;
  width:  40px;
  height: 22px;
  top: 50%;
  transform: translateY(-50%);
/*  left: -50px;*/
  display: grid;
  place-items: center;
  background:  #b24d4d;
  border-radius: 9999px;
  font-size: 0.7rem;
}
.label_required .smf-item__label__text::before {
  content: '必須';
}
.label_optional .smf-item__label__text::before {
  content: '任意';
  background: #aaa;
}
.sec_form .privacy h3 {
  font-weight: 700;
  font-size: 1rem;
}
.sec_form .privacy p {
  font-size: .8rem;
  color: #333;
}
input[type="text"],input[type="email"],input[type="tel"], textarea {
  width: 100%;
  padding: .2rem .5rem;
  border-radius: var(--round_size_50) !important;
}
input::placeholder {
  font-size: .8rem;
  color: #ccc;
}
.smf-checkbox-control,
.smf-radio-button-control {
  margin-bottom: 0.5rem;
  padding: .7rem 1.2rem;
  border-radius: 9999px;
  background: #fff;
}
.smf-action .smf-button-control__control {
  width: 16vw !important;
  min-width: 11rem;
  padding: 1rem !important;
  border:none !important;
  border-radius: 9999px !important;
  background-color: var(--color_obj_mint) !important;
  background-image:linear-gradient(180deg, var(--color_obj_mint), var(--_lighter-color-color_obj_mint)) !important;
  color: #fff !important;
  transition: all 0.3s ease-out;
}

.smf-progress-tracker__item__number {
  width: 3rem !important;
  height: 3rem !important;
}
.smf-progress-tracker__item[aria-current=true] .smf-progress-tracker__item__number {
  background-color: var(--color_txt_base) !important;
}
.smf-progress-tracker__item:before {
    top:1.5rem  !important;
}

.smf-progress-tracker__item:after {
    top:1.5rem  !important;
}
form[data-screen="confirm"] .smf-form--simple-table .smf-item__col--controls {
  padding: 0.8rem 1rem;
  border: #ddd 4px solid;
  border-radius: 50px !important;
  min-height: 3.3rem;
  color: #000;
}

@media (hover: hover) and (pointer: fine) {
  .smf-action .smf-button-control__control:hover {
    background-color: var(--color_txt_base) !important;
    background-image:linear-gradient(180deg, var(--color_txt_base), var(--color_txt_base)) !important;
  }
}

