@charset "UTF-8";
.contact-content{
background: #F6F6F6;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
margin-bottom: 80px;
}

.contact-title{
background: #333;
color: #fff;
font-size: 21px;
line-height: 1em;
text-align: center;
padding: 20px 0;
-webkit-border-radius: 20px 20px 0 0;
-moz-border-radius: 20px 20px 0 0;
border-radius: 20px 20px 0 0;
}

.contact-title.thx{
background:var(--c-green);
}

.contact-content-inner{
padding: 20px 10% 80px;
font-family: 'Noto Sans JP', sans-serif;
}

.contact-content-inner.thx{
padding: 40px 10% 60px;
}

.contact-content-inner p.read{
font-size: 14px;
line-height: 2em;
}

.contact-content-inner.thx p{
font-size: 14px;
line-height: 2em;
}

.contact-content-inner.thx p.read{
font-size: 18px;
line-height: 2em;
color: var(--c-green);
text-align: center;
}

.contact-content-inner dl{
margin: 30px 0;
}

.contact-content-inner.confirm dl{
margin: 30px 0 40px;
}

.contact-content-inner dl dt{
font-size: 14px;
margin-bottom: 10px;
font-weight: 500;
}

.contact-content-inner dl dt.must:after{
content: "必須";
background: #FF001F;
color: #fff;
font-size: 10px;
font-weight: 400;
line-height: 1em;
padding: 3px 5px 4px;
display: inline-block;
margin-left: 10px;
vertical-align: 1px;
}

.contact-content-inner dl dd{
margin: 0;
padding: 0;
}

.contact-content-inner.confirm dl dd{
font-size: 14px;
line-height: 2em;
}

input:focus,textarea:focus {
  outline: none;
}

input[type="text"],textarea{
-webkit-appearance: none;
width: 100%;
border: 1px solid #D9D9D9;
padding: .5em 0;
background: #fff;
text-indent: .5em;
line-height: 2.4em;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}

.selectbox{
  position: relative;
  width: 300px;
}

.selectbox:before{
position: absolute;
top: 12px;
right: 15px;
content: '';
width: 10px;
height: 10px;
border-top: solid 5px #333;
border-right: solid 5px transparent;
border-bottom: solid 5px transparent;
border-left: solid 5px transparent;
pointer-events: none;
}

select{
-webkit-appearance: none;
width: 100%;
border: 1px solid #D9D9D9;
background: #fff;
padding: .5em 0;
text-indent: .5em;
line-height: 2.4em;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}

select:invalid { color: #969696; }

label{
font-size: 14px;
display: block;
margin-bottom: 10px;
}

label input[type="radio"]{
margin-right: 5px;
}

input.btn-confirm{
-webkit-appearance: none;
width: 100%;
max-width: 320px;
background: var(--c-green);
color: #fff;
font-size: 16px;
border: 0;
line-height: 4em;
-webkit-border-radius: 50px;
-moz-border-radius: 50px;
border-radius: 50px;
}

input.btn-submit{
-webkit-appearance: none;
width: 100%;
max-width: 320px;
background: var(--c-orange);
color: #fff;
font-size: 16px;
border: 0;
line-height: 4em;
-webkit-border-radius: 50px;
-moz-border-radius: 50px;
border-radius: 50px;
margin-bottom: 30px;
}

input.btn-back,
a.btn-back{
  display: inline-block;
-webkit-appearance: none;
width: 100%;
max-width: 320px;
background:#979797;
color: #fff;
font-size: 16px;
border: 0;
line-height: 4em;
-webkit-border-radius: 50px;
-moz-border-radius: 50px;
border-radius: 50px;
}


.contact-content-inner .attention{
padding: 20px 0;
font-size: 14px;
line-height: 2em;
}

.contact-content-inner.confirm .attention{
padding: 60px 0 20px;
text-align: center;
}

.contact-content-inner .attention a{
color:  var(--c-green);
text-decoration: underline;
}

.conv-btns{
text-align: center;
padding-top: 40px;
}

@media (min-width: 768px) {
.contact-title{
font-size: 34px;
line-height: 1em;
text-align: center;
padding: 30px 0;
}

.contact-content-inner{
padding: 40px 0 80px;
max-width: 550px;
margin: 0 auto;
}

.contact-content-inner p.read{
font-size: 16px;
text-align: center;
padding-bottom: 30px;
}
.contact-content-inner dl dt{
font-size: 16px;
}
label{
font-size: 16px;
display: inline-block;
margin-bottom: 10px;
margin-right: 30px;
}

.contact-content-inner.thx{
padding: 60px 0 80px;
text-align: center;
}

.contact-content-inner.thx p{
font-size: 16px;
line-height: 2em;
}

.contact-content-inner.thx p.read{
font-size: 26px;
line-height: 2em;
padding-bottom: 0;
}
}


@media (min-width: 1024px) {
}


/* inline error */
.contact-content-inner p.error{
  color: #D93025;
  font-size: 13px;
  line-height: 1.6em;
  margin: 6px 0 0;
}

input.is-error,
textarea.is-error,
select.is-error{
  border-color: #D93025;
  background: #FFF5F5;
}

.contact-content-inner dl dd.is-error{
  border-left: 3px solid #D93025;
  padding-left: 10px;
}

.recaptcha .error{
  color: #D93025;
  margin-top: 8px;
}