*, *:before, *:after {
box-sizing:border-box;
}
*:focus {
outline: none;
}

html {
font-family: sans-serif;
}

body {
margin:0;
padding:0;
font-family:'Noto Sans JP', sans-serif;
} 

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
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::placeholder,
textarea::placeholder {
  color: #999;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #999;
}
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #999;
}
.selectbox {
background: url(../img/select.svg) calc(100% - 1rem) 50% no-repeat #fff;
}

main {
margin:0 auto;
width:1300px;
}
@media only screen and (max-width: 750px) {
main {
width:100%;
}
}

.form-area {
background:#e3ddcb;
padding:60px 120px;
}
.form-title {
margin:0;
text-align:center;
font-weight:normal;
font-size:38px;
}
.form-tel {
margin-top:50px;
}
.form-attention {
font-size:22px;
line-height:1.7;
margin:40px 0 0;
padding:0 50px;
}
.form-contents {
border:solid 1px #40220f;
margin-top:50px;
display:flex;
flex-wrap:wrap;
width:100%;
font-size:17px;
}
.form-contents dt {
width:25%;
padding:20px 15px;
background:#ba9f57;
color:#fff;
display:flex;
align-items:flex-start;
border-right:solid 1px #40220f;
display:flex;
align-items:center;
}
.form-contents dd {
width:75%;
padding:16px 25px;
margin:0;
}
span.req {
border:solid 1px #ff0000;
font-size:15px;
color:#ff0000;
background:#fff;
padding:2px 0 3px;
width:55px;
margin-right:15px;
text-align:center;
}
.form-contents dd + dt,
.form-contents dd + dt + dd {
border-top:solid 1px #40220f;
}
.form-cb {
display:flex;
flex-direction:row;
gap:0 20px;
flex-wrap:wrap;
padding:20px 25px !important;
}

input[type="text"], input[type="number"], input[type="email"], select, textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
.form-contents input[type="text"], .form-contents input[type="number"], .form-contents input[type="email"], .form-contents select, .form-contents textarea {
font-family: inherit !important;
font-size: 16px !important;
width: 100% !important;
padding: 8px 12px !important;
box-sizing: border-box !important;
border: solid 1px #333 !important;
line-height: 1.4;
}

.choose-date {
display:flex;
align-items:center;
gap:14px;
}
.choose-date select {
width:180px !important;
}
.choose-date + .choose-date {
margin-top:12px;
}
.choose-attention {
font-size:16px;
margin:20px 0 0;
text-indent:-1em;
padding-left:1em;
white-space: pre-wrap;
}

.name-input {
display:flex;
align-items:center;
gap:24px;
}
.name-input input {
width:200px;
}
.name-input span {
display:flex;
align-items:center;
gap:10px;
white-space:nowrap;
}
.form-contents input.p-postal-code,
.form-contents input.p-region {
width:10em !important;
}

.form-contents dd input + input {
margin-top:12px;
}

.form-privacy {
text-align:center;
font-size:26px;
font-weight:normal;
margin:40px 0 0;
}
.form-privacy-text {
text-align:center;
font-size:14px;
margin:10px 0 0;
line-height:1.6;
}

.consent-area {
display:flex;
justify-content:space-between;
width:100%;
}
.consent-area a {
color:#000;
}

.form_btn {
display:flex;
justify-content:center;
gap:20px;
margin-top:50px;
}
.form_btn input {
box-shadow: none;
color: #fff;
text-decoration: none;
text-align: center;
box-sizing: border-box;
border-radius: 4px;
font-size: 18px;
line-height: 50px !important;
height: 50px;
box-sizing: border-box;
}
.confirm-btn {
background: #40220f;
width: 224px;
}
.back-btn {
background: #828882;
width: 224px;
}
.send-btn {
background: #40220f;
width: 224px;
}

span.error {
display:block;
width:100%;
background:#ff0000;
color:#fff;
padding:2px 8px;
margin-top:10px;
}



@media only screen and (max-width: 750px) {
.form-area {
padding:30px 20px;
}
.form-title {
font-size:23px;
}
.form-tel {
margin-top:30px;
}
.form-attention {
font-size:17px;
line-height:1.5;
margin:20px 0 0;
padding:0 10px;
}

.form-contents {
margin-top:40px;
display:inline-block;
font-size:16px;
}
.form-contents dt {
width:100%;
padding:12px;
border:none;
}
.form-contents dd {
width:100%;
padding:16px 12px;
}
span.req {
font-size:14px;
width:50px;
margin-right:12px;
}
.form-contents dd + dt,
.form-contents dd + dt + dd {
border:none;
}
.form-contents dd + dt,
.form-contents dd {
border-top:solid 1px #40220f !important;
}
.form-cb {
flex-direction:column;
gap:0;
flex-wrap:nowrap;
padding:16px 12px !important;
}

.choose-date {
align-items:flex-start;
flex-direction:column;
gap:6px;
}
.choose-date select {
width:100% !important;
}
.choose-date + .choose-date {
margin-top:18px;
}
.choose-attention {
font-size:14px;
margin:16px 0 0;
}

.name-input {
gap:18px;
}

.form-contents dd input + input {
margin-top:6px;
}

.form-privacy {
font-size:22px;
margin:20px 0 0;
}
.form-privacy-text {
text-align:left;
font-size:13px;
line-height:1.5;
}

.consent-area {
flex-direction:column;
}
.consent-area a {
font-size:15px;
}

.form_btn {
margin-top:25px;
}
.form_btn input {
font-size: 16px;
}

.back-btn {
width: 138px;
}
.send-btn {
width: 138px;
}


}

