@charset "utf-8";

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type='checkbox'],
input[type='radio'] {
  display: none;
}

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

input.age {
width: 60px !important;
}
dl#table-form * {
box-sizing: border-box;
}
dl#table-form > dt.required::after,
dl#table-form > dt span.sp-required {
display: inline-flex;
justify-content: center;
align-items: center;
border-radius: 2px;
color: red;
background: white;
margin-left: 1em;
line-height: 1;
padding: .4em 1em;
font-weight: bold;
font-size: 60%;
flex-shrink: 0;
white-space: nowrap;
}
dl#table-form > dt.required::after {
content: "必須";
}
@media only screen and (min-width: 481px) {
dl#table-form > dt.required::after,
dl#table-form > dt span.sp-required {
margin-left: 0;
margin-top: 1em;
}
}
dl#table-form > dt:not(:first-of-type) {
background: #86B200;
color: white !important;
font-weight: bold;
padding: .5em !important;
display: flex;
justify-content: center;
align-items: center;
font-feature-settings: "palt" 1;
line-height: 1.4;
font-size: inherit !important;
}
@media only screen and (max-width: 480px) {
dl#table-form > dt:not(:first-of-type) {
justify-content: flex-start;
}
}
dl#table-form > dt:first-of-type {
font-size: 24px;
color: #230A01;
line-height: 2;
padding: 10px 0 16px 0;
}
@media only screen and (min-width: 481px) {
dl#table-form > dt:first-of-type {
grid-column: 1 / 3;
}
dl#table-form > dt {
justify-content: center;
align-items: center;
flex-direction: column;
}
}
dl#table-form > dd {
background: white;
padding: .5em !important;
}
@media only screen and (min-width: 481px) {
dl#table-form {
display: grid;
grid-template: auto / 240px 1fr;
}
dl#table-form > dt:nth-of-type(even) {
background: #608000;
}
dl#table-form > *:is(dt,dd) {
width: 100% !important;
float: none !important;
}
dl#table-form > dd {
padding: .5em !important;
}
dl#table-form > dd:nth-of-type(even) {
background: white;
}
}

dl#table-form > dd.dd-name {
display: grid;
grid-template: auto auto / auto 1fr;
place-items: center start;
gap: 8px;
white-space: nowrap;
}
dl#table-form > dd.dd-name .mfp_err {
grid-column: 1 / 3;
}
@media only screen and (min-width: 481px) {
dl#table-form > dd.dd-name {
grid-template: auto / 40px 1fr 40px 1fr;
}
dl#table-form > dd.dd-name span:nth-of-type(2) {
place-self: center start;
padding-left: .1em !important;
}
dl#table-form > dd.dd-name .mfp_err {
grid-column: 1 / 5;
}
}
dl#table-form > dd.birth {
display: grid;
grid-template: auto auto / 100px auto 50px auto 50px auto;
place-items: center start;
place-content: center start;
gap: .5em;
}
dl#table-form > dd.birth .mfp_err {
grid-column: 1 / 7;
}
input:not([type="radio"]):not([type="checkbox"]),
textarea,
select {
width: 100%;
background: #fafafa;
border: 1px solid #ccc;
transition: all .2s ease-in-out;
padding: .5em !important;
font-family: fontplus-unused;
font-size: inherit;
border-radius: 8px;
}
input[type="radio"],
input[type="checkbox"] {
width: 1em;
height: 1em;
}
input:not([type="radio"]):not([type="check"]):focus,
textarea:focus {
border-color: #555;
}
input#sendbutton {
background: #86B200;
color: white;
font-weight: bold;
cursor: pointer;
transition: all .2s ease-in-out;
}
input#sendbutton:hover {
opacity: .8;
}
input#sendbutton:active {
background: #b70d0d
}

dl#table-form label {
background: white;
transition: all .2s ease-in-out;
border-radius: 8px;
}
dl#table-form label:hover {
opacity: .8;
}


dl#table-form div.mfp_err[style="display: block;"] {
background: none;
display: flex !important;
justify-content: flex-start;
align-items: center;
gap: .5em;
}
dl#table-form div.mfp_err::before {
content: "";
display: block;
width: 1.3em;
aspect-ratio: 1/1;
-webkit-mask-image: url(../img/error.svg);
mask-image: url(../img/error.svg);
-webkit-mask-position: center;
-webkit-mask-size: contain;
-webkit-mask-repeat: no-repeat;
mask-position: center;
mask-size: contain;
mask-repeat: no-repeat;
background: #b70d0d;
}

@media only screen and (min-width: 481px) {
dl#table-form dl.dp-wrap {
display: grid;
grid-template: auto / auto 1fr;
gap: 1em;
}
dl#table-form dl.dp-wrap dt {
padding-block: .7em;
}
dl#table-form dl.dp-wrap dd {
margin-top: 0;
display: grid;
grid-template: auto / auto 1fr;
gap: .5em;
place-items: start start;
}
dl#table-form > dd.dd-name .mfp_err {
grid-column: 1 / 3;
}
}

dl#table-form dl.dp-wrap *:is(input,select) {
cursor: pointer !important;
}

@media only screen and (max-width: 480px) {
dl#table-form dl.dp-wrap dt:not(:first-of-type) {
margin-top: .5em;
}
dl#table-form dl.dp-wrap dd {
display: flex;
justify-content: space-between;
align-items: flex-start;
gap: .5em;
}
}

dl#table-form > dd.dd-dates input {
width: 180px;
text-align: center;
}
@media only screen and (max-width: 480px) {
dl#table-form > dd.dd-dates input {
width: 150px;
}
}
dl#table-form > dd.dd-dates select {
width: max-content;
height: 100%;
}

dl#table-form > dd.checkboxes,
dl#table-form > dd.response {
display: grid;
grid-template: auto / 1fr 1fr;
gap: .5em;
}

/* @media only screen and (min-width: 481px) {
dl#table-form > dd.checkboxes {
grid-template: auto / 1fr 1fr 1fr;
}
} */

dl#table-form > dd.checkboxes label,
dl#table-form > dd.response label {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
padding: 1em;
border: 1px solid #ccc;
transition: all .2s ease-in-out;
}

#soudan-other {
grid-column: 1 / 3;
}

@media only screen and (min-width: 481px) {
#soudan-other {
grid-column: 1 / 4;
}
}


select span {
display: none;
}

div.recaptcha {
margin-block: 2em;
text-align: center;
}
div.recaptcha div.g-recaptcha {
text-align: center;
}
div.recaptcha div.g-recaptcha div {
margin-inline: auto;
}

.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev,
#sendbutton.mfp_element_submit  {
background: #86B200;
font-size: inherit;
color: white;
font-weight: bold;
text-shadow: none;
transition: all .2s ease-in-out;
border: 0;
cursor: pointer;
padding: 1em;
box-shadow: 0;
border-radius: 0;
margin-bottom: 2em;
}
#sendbutton.mfp_element_submit:hover {
opacity: .8;
}

input.center {
text-align: center;
}
span.wrap option {
display: none;
} 

#notice,
#notice * {
box-sizing: border-box;
}
#notice {
background: #fafafa;
border: 4px solid #86B200;
text-align: center;
padding: 3em 2em;
margin-bottom: 3em;
}
#notice span {
display: inline-block;
}
#notice strong {
color: #b70d0d;
}

#mfp_overlay_inner h4 {
color:#86B200;
margin-bottom: 1em;
font-size: 120%;
text-align: center;
}
#mfp_overlay_inner table {
width: 100%;
}
#mfp_overlay_inner th {
font-weight: bold;
background: #86B200;
color: white;
}
#mfp_overlay_inner th,
#mfp_overlay_inner td {
padding: 8px;
box-sizing: border-box;
}

#mfp_overlay_inner *:is(#mfp_button_cancel,#mfp_button_send) {
padding-block: .5em;
transition: all .2s ease-in-out;
}
#mfp_overlay_inner #mfp_button_send:hover {
background: #86B200;
color: white;
opacity: .8;
}
#mfp_overlay_inner #mfp_button_cancel {
color: #86B200;
background: white;
}
#mfp_overlay_inner #mfp_button_cancel:hover {
color: #86B200;
background: white;
}

@media only screen and (max-width: 480px) {
#notice,
form {
width: 95%;
margin-inline: 2.5%;
}
}

dl#table-form > dd:is(.checkboxes,.response) div {
grid-column: 1 / 3;
}
/* @media only screen and (min-width: 481px) {
dl#table-form > dd.checkboxes div.shoshin-saishin {
grid-column: 1 / 4;
}
} */

*:has(> wbr) {
white-space: pre-wrap;
word-break: keep-all;
}

dl#table-form > dt:has(span.wrap) small {
display: block;
}

@media only screen and (min-width: 481px) {
dl#table-form > dt span.wrap {
text-align: center;
}
dl#table-form > dt span.wrap small {
margin-top: .5em;
}
}

dl#table-form > dd textarea {
height: auto;
aspect-ratio: 4/1;
}
@media only screen and (max-width: 480px) {
dl#table-form > dd textarea {
aspect-ratio: 2/1;
}
}

dl#table-form > dt span.wrap2,
dl#table-form > dt span.wrap2 span {
display: inline-block;
text-align: center;
}

form#mailformpro label.mfp_checked {
color: #b70d0d;
font-weight: bold;
}


#recruit .s04 ul li.w-100 {
float: none;
width: 100%;
margin-inline: auto;
}

#recruit .s04 dl + dl {
margin-top: 2em;
}

#recruit .s04 dl:has(form) *:is(dt,dd) {
padding: 1em;
box-sizing: border-box;
width: 100%;
float: none;
border-radius: 8px;
}
#recruit .s04 dl:has(form) dt {
padding-bottom: 0;
}

#recruit .s04 div.form {
border: 2px solid #608000;
margin: 0 1.5%;
border-radius: 12px;
margin-top: 2em;
padding: .8em !important;
}

#recruit div.thanks {
text-align: center;
float: none !important;
width: 100% !important;
}
#recruit .s01 div.thanks h5 {
width: 100% !important;
}
#recruit div.thanks p span {
display: inline-block;
}

dl#table-form > dd.response label:last-of-type:first-of-type {
grid-column: 1 / 3;
}

#recruit .s04 ul li.w-100 a {
margin-inline: auto;
width: max-content;
min-width: 450px;
}

#recruit input.age {
margin-right: 4px
}

@media only screen and (min-width: 481px) {
#recruit dd.dates > div {
display: grid;
grid-template: auto / auto auto;
gap: 0 1em;
place-content: start;
}
#recruit dd.dates .mfp_err {
grid-column: 1 / 3;
}
}

#recruit dd.dates .mfp_err {
width: 100%;
}