
input.t {
  width: 15%
}

input.s {
  width: 50%
}

@media screen and (max-width: 599px) {
  input.s {
    width: 60%
  }
}

input.m {
  width: 70%
}

@media screen and (max-width: 599px) {
  input.m {
    width: 99%
  }
}

input.l {
  width: 99%
}

textarea {
  width: 99%
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 100%
}

.submit {
  margin: 2em 1em;
  text-align: center
}

.submit.confirm>input[value=戻る] {
  background-color: #999
}

@media screen and (min-width: 600px) {
  .submit.confirm {
    display: flex;
    justify-content: space-between
  }

  .submit.confirm>input[value=戻る] {
    order: -1
  }
}

@media screen and (max-width: 599px) {
  .submit.confirm>input {
    width: 100%;
    margin-bottom: 1em
  }
}

select {
  max-width: 100%;
  padding: .6em .8em;
  font-size: 15px;
  color: #222;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 3px
}

select option {
  color: #222
}

select option[value=""] {
  color: #ddd
}

input[type=text],
input[type=email],
input[type=tel],
input[type=number],
textarea {
  padding: .1em .6em;
  font-size: 1em;
  color: #222;
  font-family: inherit;
  border-radius: 3px;
  border: 1px solid #ddd
}

input[type=radio],
input[type=checkbox] {
  margin-right: 2px
}

.row label {
  display: block;
  padding: .15em
}

input[type=submit],
input[type=button],
form button {
  box-sizing: border-box;
  appearance: button;
  border: none;
  border-radius: 0;
  cursor: pointer;
  min-width: 260px;
  padding: 1em;
  font-family: inherit;
  color: #fff;
  font-size: 1.1em;
  letter-spacing: .1em;
  background-color: #105baf
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px
}

input[type=radio] {
  background-color: initial;
  cursor: default;
  appearance: auto;
  box-sizing: border-box;
  margin: 3px 3px 0px 5px;
  padding: initial;
  border: initial;
}


input[type=checkbox] {
  background-color: initial;
  cursor: default;
  appearance: auto;
  box-sizing: border-box;
  margin: 3px 3px 3px 4px;
  padding: initial;
  border: initial;
}


input + br + .mwform-checkbox-field { margin-top: 1em; }

div.submit { text-align: center; }


/* テーブル */
.dl-def .error { color: #b92929; }
.dl-def dt {
  font-weight: bold;
}
.dl-def dt .required { margin-left: 1em; font-size: .88em; color: #b92929; }

.dl-def dd {
  padding: 1em;
  text-align: justify;
  border-bottom: 1px solid #ddd
}

@media screen and (min-width: 600px) {
  .dl-def>div {
    display: flex
  }

  .dl-def>div>dt {
    width: 30%;
    padding: 1em;
    border-bottom: 1px solid #ccc
  }

  .dl-def>div>dd {
    flex: 1
  }

  .dl-def>div:first-child>dt {
    border-top: 1px solid #ccc
  }

  .dl-def>div:first-child>dd {
    border-top: 1px solid #ddd
  }
}

@media screen and (max-width: 599px) {
  .dl-def>div {
    margin-bottom: 1em
  }

  .dl-def>div>dd {
    padding-top: .5em
  }

  .dl-def>div.sbs {
    display: flex
  }

  .dl-def>div.sbs>dt {
    width: 30%;
    padding: 0 0 1em;
    border-bottom: 1px solid #ccc
  }

  .dl-def>div.sbs>dd {
    flex: 1;
    padding-top: 0
  }
}

.dl-def .item-li li { display:flex; flex-wrap:wrap; justify-content:space-between; }
.dl-def .item-li li + li { margin-top: .5em; padding-top: .5em; border-top: 1px solid #eee; }
.dl-def .item-li .l-box { width: calc(100% - 100px); }
.dl-def .item-li .r-box { width: 90px; text-align: right; }
.dl-def .item-li .num { width: 100%; }
.dl-def input[type=text] { width: 100%; }
.dl-def .item-li input[type=text] { width: auto; }
.dl-def .p-about-section03-item-ttl + p { margin-bottom: 1em; }

.red { color: #b92929; }

@media screen and (max-width: 1200px) {
  .dl-def .item-li .l-box { width: 100%; }
  .dl-def .item-li .r-box { width: calc(100% - 150px); text-align: left; }
  .dl-def .item-li .num { width: 130px; text-align: right; }
  .dl-def .item-li .r-box + .l-box { margin-top: 1em; }
}

@media screen and (max-width: 767px) {
  .dl-def .p-about-section03-item-ttl { padding-left: 0; }
}


@media screen and (max-width: 599px) {
  .dl-def .item-li .l-box { width: 100%; }
  .dl-def>div>dd { padding-inline: 0; }
  input[type=text], input[type=email], input[type=tel], input[type=number], textarea { width: 100%; }
  input[type=submit] + input[type=submit] { margin-top: .5em; }
}