@charset "utf-8";

input,
select,
textarea {
  font-family: var(--gothic);
  font-size: 100%;
  color: var(--base-black);
  border-radius: .5rem;
  border: 1px solid var(--base-black);
  padding: 1rem;
  background-color: #fff;
}
button {
  font-family: var(--gothic);
  font-size: 100%;
  color: var(--base-black);
}

time {
  margin-right: 1rem;
}

button:hover {
  cursor: pointer;
}

.ml1rem {margin-left: 1rem}
.mr1rem {margin-right: 1rem}
.mb05rem {margin-bottom: .5rem}
.lh1-8 {line-height: 1.8!important}

.form-section {
  margin-bottom: 6rem;
}

.form-section table {
  width: 100%;
}

.form-section table tr {
  border-top: .5px solid var(--base-black);
  border-bottom: .5px solid var(--base-black);
}

.form-section table th {
  /* width: 26rem; */
}

.form-section table td {
  width: auto;
}

.form-section table td,
.form-section table th {
  text-align: left;
  padding: 2rem;
  vertical-align: middle;
}

.table01 th {
  background-color: #F5F4F2;
}

.fm_entry-Radio li {
  line-height: 2;
}

.fm_input-text.size-s,
.fm_input-textarea.size-s,
.fm_input-select.size-s {
  width: 7em;
}

.fm_input-text.size-m,
.fm_input-textarea.size-m,
.fm_input-select.size-m {
  width: 16em;
}

.fm_input-text.size-l,
.fm_input-textarea.size-l,
.fm_input-select.size-l {
  width: 30em;
}

.error {
  color: var(--dsuma-red);
}

.need {
  color: var(--dsuma-red);
  border: 1px solid var(--dsuma-red);
  border-radius: .5rem;
  padding: .25rem .5rem;
  margin-left: 1rem;
}

.fm_com {
  font-size: var(--font15-13);
  line-height: 1.6!important;
  margin-bottom: 1rem;
}


.form-submit {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 3rem;
  row-gap: 2rem;
}

.privacy {
  width: 100%;
  padding: 3rem;
  overflow: scroll;
  border: solid 1px var(--base-black);
  height: 10em;
  margin: 3rem auto;
}

.btn01 {
  background: var(--dsuma-blue);
  color: #fff;
  padding: 2rem 3rem;
  border-radius: 2rem;
  font-size: var(--font20-16);
  border: double #fff 3px;
}


.btn02 {
  color: var(--dsuma-blue);
  padding: 2rem 3rem;
  border-radius: 2rem;
  font-size: var(--font20-16);
  border: double var(--dsuma-blue) 3px;
}

/* reCAPTCHAのバッヂ */
.grecaptcha-badge {
  bottom: 360px !important;
}



/* ====================================

  1280px以下：小型PC 

======================================*/

@media screen and (max-width:1280px) {

}

/* ====================================

  960px以下：タブレット・スマホ横

======================================*/
@media screen and (max-width:960px) {

  .form-section table td,
  .form-section table th {
    display: block;
  }

  .form-section table th {
    border: none;
    width: auto;
  }

  .form-section {
    padding: 0;
  }

  .form-section table td {
    padding-left: 0;
    padding-right: 0;
  }

  input,
  select {
    width: auto;
  }

  .fm_input-text.size-s,
  .fm_input-textarea.size-s,
  .fm_input-select.size-s,
  .fm_input-text.size-m,
  .fm_input-textarea.size-m,
  .fm_input-select.size-m,
  .fm_input-text.size-l,
  .fm_input-textarea.size-l,
  .fm_input-select.size-l {
    width: 95%;
  }

  textarea {
    width: 95%;
  }


}

@media screen and (max-width: 896px) {
  .grecaptcha-badge {
    bottom: 80px !important;
  }
}

/* ====================================

  768px以下：スマホ縦  

======================================*/

@media screen and (max-width:768px) {

}


@media screen and (max-width: 600px) {
  .fm_radio-label {
    padding: .5em 1em;
  }
  .fm_entry-Radio li {
    width: 49%;
  }

}


/* ====================================

  520px以下：スマホ縦  

======================================*/

@media screen and (max-width:520px) {

}