@charset "UTF-8";

body{background-color: #f3f3f3;}
input{
border: none;
border-radius: 0;
}
input[type="submit"]::-webkit-search-decoration{
  display: none;
}
input[type="submit"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
*:focus {
  outline: none;
}

/* ==========================================================================

   SP用

========================================================================== */

@media screen and (max-width:640px) {
#contact_main{
width: 90%;
margin: 0 auto;
padding: calc((30.5 / 620) * 100 * 1vw) 0 calc((140 / 620) * 100 * 1vw);
overflow: hidden;
}

#contact_main .pankuzu{
font-size: calc((19 / 620) * 100 * 1vw);
letter-spacing: 0.05em;
line-height: calc((19 / 620) * 100 * 1vw);
}
#contact_main .pankuzu a{
text-decoration: none;
color: #03803F;
}

#contact_main #wrap_contents{
padding-top:calc((89 / 620) * 100 * 1vw); 
}

#contact_main #wrap_contents .left_contents{

}
#contact_main #wrap_contents .left_contents h2{
display: block;
position: relative;
font-size: calc((43 / 620) * 100 * 1vw);
line-height: calc((30.5 / 620) * 100 * 1vw);
font-weight: bold;
color: #03803F;
text-align: center;
}
#contact_main #wrap_contents .left_contents h2::after{
content: "";
display: block;
width: calc((23 / 620) * 100 * 1vw);
border-top: #03803F solid 1px;
position: absolute;
top:calc((66 / 620) * 100 * 1vw);
left: calc(50% - (1.85 * 1vw));
}
#contact_main #wrap_contents .left_contents h2 span{
font-size: calc((18 / 620) * 100 * 1vw);
font-weight: normal;
display: block;
}
#contact_main #wrap_contents .left_contents h2+p{
color: #262626;
font-size: calc((22 / 620) * 100 * 1vw);
line-height: calc((37 / 620) * 100 * 1vw);
margin-top: calc((53 / 620) * 100 * 1vw);
letter-spacing: 0.05em;
}
#contact_main #wrap_contents .right_contents{
margin-top: calc((87 / 620) * 100 * 1vw);
margin-bottom: calc((80 / 620) * 100 * 1vw);
}
#contact_main #wrap_contents .right_contents dl{
clear: both;
overflow: hidden;
margin-top: calc((32 / 620) * 100 * 1vw);
}
#contact_main #wrap_contents .right_contents dl dt{
font-style: italic;
font-size: calc((25 / 620) * 100 * 1vw);
line-height: calc((25 / 620) * 100 * 1vw);
}
#contact_main #wrap_contents .right_contents dl dt.required::after{
content: "Required";
font-size: calc((14 / 620) * 100 * 1vw);
background-color: #c30d23;
color: #FFFFFF;
position: relative;
top: calc((-3 / 620) * 100 * 1vw);
padding: calc((3 / 620) * 100 * 1vw) calc((12 / 620) * 100 * 1vw);
margin-left: calc((17 / 620) * 100 * 1vw);
font-style: normal;
}
#contact_main #wrap_contents .right_contents dl dd{
font-size: calc((22 / 620) * 100 * 1vw);
line-height: calc((38 / 620) * 100 * 1vw);
padding: calc((20 / 620) * 100 * 1vw) 0;
border-bottom: #000000 solid 1px;
background-color: #f3f3f3;
width: 100%;
word-wrap: break-word;
color: #595757;
}
#contact_main #wrap_contents .right_contents dl dd.inquiry{
border-bottom:none;
}
#contact_main #wrap_contents .right_contents dl dd input{
width: 100%;
background-color: #f3f3f3;
font-size: 14px;
}

input::-webkit-input-placeholder {font-family: 'Roboto', sans-serif; font-style: italic;}
input::-moz-placeholder {font-family: 'Roboto', sans-serif; font-style: italic;}
input:-ms-input-placeholder {font-family: 'Roboto', sans-serif; font-style: italic;}

#contact_main #wrap_contents .right_contents dl dd.name_2{
}

#contact_main #wrap_contents .right_contents dl dd textarea{
width: 100%;
height: calc((212 / 620) * 100 * 1vw);
margin-top: calc((21 / 620) * 100 * 1vw);
border: #000000 solid 1px;
}
#contact_main #wrap_contents .wrap_btm{
margin: 0 auto;
overflow: hidden;
clear: both;
width: 100%;
}

#contact_main #wrap_contents .wrap_btm .wrap_return_btn{
position: relative;
width: 100%;
height: calc((92 / 620) * 100 * 1vw);
margin-bottom: calc((20 / 620) * 100 * 1vw);
}

#contact_main #wrap_contents .wrap_btm .wrap_return_btn::after{
position: absolute;
top: calc((41 / 620) * 100 * 1vw);
left: calc((21 / 620) * 100 * 1vw);
margin: auto;
content: "";
vertical-align: middle;
width: calc((12.7 / 620) * 100 * 1vw);
height: calc((12.7 / 620) * 100 * 1vw);
border-left: 1px solid #231815;
border-top: 1px solid #231815;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}
#contact_main #wrap_contents .wrap_btm .return_btn{
width: 100%;
height: calc((92 / 620) * 100 * 1vw);
border: #231815 solid 1px;
font-size: calc((28 / 620) * 100 * 1vw);
transition: .4s;
background-color: #f2f2f2;
}
.return_btn:hover{
background-color:#E0E0E0; 
}

#contact_main #wrap_contents .wrap_btm .send_btn{
width: 100%;
height: calc((92 / 620) * 100 * 1vw);
background-color: #03803F;
color: #FFFFFF;
font-size: calc((28 / 620) * 100 * 1vw);
transition: .4s;
}
#contact_main #wrap_contents .wrap_btm{
margin-top: calc((90 / 620) * 100 * 1vw);
overflow: hidden;
clear: both;
}
#contact_main #wrap_contents .submit_btn{
width: 100%;
height: calc((93 / 620) * 100 * 1vw);
text-align: center;
background-color: #03803F;
font-size: calc((25 / 620) * 100 * 1vw);
line-height: calc((93 / 620) * 100 * 1vw);
color: #FFFFFF;
cursor: pointer;
}
#contact_main #wrap_contents .submit_btn:hover{
opacity: 0.8;
}
#contact_main.sent{
height: calc(100vh - ((266 / 620) * 100 * 1vw));
}

#contact_main #wrap_contents.sent{
width: 100%;
margin: calc((84 / 620) * 100 * 1vw) auto 0;
padding: 0;
}
#contact_main #wrap_contents.sent h2{
color: #03803f;
font-size: calc((32 / 620) * 100 * 1vw);
height: calc((32 / 620) * 100 * 1vw);
font-weight: bold;
}
#contact_main #wrap_contents.sent p{
color: #262626;
font-size: calc((22 / 620) * 100 * 1vw);
line-height: calc((37 / 620) * 100 * 1vw);
margin-top: calc((33 / 620) * 100 * 1vw);
letter-spacing: 0.05em;
}
.input_check{
color: red;
font-size: calc((20 / 620) * 100 * 1vw);
line-height: calc((20 / 620) * 100 * 1vw);
margin-top: 5px;
display: none;
}
#contact_main #wrap_contents .right_contents dl.inq+.input_check{
position: relative;
top:calc((-26 / 620) * 100 * 1vw);
}

}/*SP用end*/




/* ==========================================================================

   PC用

========================================================================== */


@media screen and (min-width:641px) {
#contact_main{
max-width: 1260px;
margin: 0 auto;
padding: 25px 129px 140px 40px;
overflow: hidden;
}

#contact_main .pankuzu{
font-size: 13px;
letter-spacing: 0.05em;
line-height: 13px;
}
#contact_main .pankuzu a{
text-decoration: none;
color: #03803F;
}

#contact_main #wrap_contents{
padding-left: 90px;
padding-top: 74px;
overflow: hidden;
}

#contact_main #wrap_contents .left_contents{
float: left;
width: 208px;
margin-right: 80px;
}
#contact_main #wrap_contents .left_contents h2{
display: block;
position: relative;
font-size: 38px;
line-height: 18px;
font-weight: bold;
color: #03803F;
text-align: center;
top:9px;
}
#contact_main #wrap_contents .left_contents h2::after{
content: "";
display: block;
width: 23px;
border-top: #03803F solid 2px;
position: absolute;
top:55px;
left: calc(50% - 11.5px);
}
#contact_main #wrap_contents .left_contents h2 span{
font-size: 18px;
font-weight: normal;
display: block;
margin-top: 12px;
}
#contact_main #wrap_contents .left_contents h2+p{
color: #262626;
font-size: 13px;
line-height: 28px;
margin-top: 44px;
}
#contact_main #wrap_contents .right_contents{
float: left;
margin-bottom: 100px;
}
#contact_main #wrap_contents .right_contents dl{
clear: both;
width: 711px;
overflow: hidden;
}
#contact_main #wrap_contents .right_contents dl dt{
float: left;
font-style: italic;
font-size: 15.8px;
line-height: 59px;
width: 210px;
}
#contact_main #wrap_contents .right_contents dl dt.required::after{
content: "Required";
font-size: 9px;
background-color: #c30d23;
color: #FFFFFF;
position: relative;
top: -3px;
padding: 0 5px;
margin-left: 7px;
font-style: normal;
}
#contact_main #wrap_contents .right_contents dl dd{
float: left;
width: 500px;
border-bottom: #000000 solid 1px;
font-size: 14px;
line-height: 24px;
padding: 17px 0;
background-color: #f3f3f3;
width: 500px;
word-wrap: break-word;
color: #595757;
}
#contact_main #wrap_contents .right_contents dl dd.inquiry{
border-bottom:none;
}
#contact_main #wrap_contents .right_contents dl dd input{
width: 100%;
background-color: #f3f3f3;
font-size: 14px;
}

input::-webkit-input-placeholder {font-family: 'Roboto', sans-serif; font-style: italic;}
input::-moz-placeholder {font-family: 'Roboto', sans-serif; font-style: italic;}
input:-ms-input-placeholder {font-family: 'Roboto', sans-serif; font-style: italic;}

#contact_main #wrap_contents .right_contents dl dd.name_2{
margin-left: 210px;
}

#contact_main #wrap_contents .right_contents dl dd textarea{
width: 500px;
height: 150px;
margin-top: 20px;
border: #000000 solid 1px;
}
#contact_main #wrap_contents .wrap_btm{
margin: 0 auto;
overflow: hidden;
clear: both;
width: 540px;
}

#contact_main #wrap_contents .wrap_btm .wrap_return_btn{
position: relative;
width: 180px;
height: 67px;
float: left;
margin-right: 40px;
}

#contact_main #wrap_contents .wrap_btm .wrap_return_btn::after{
position: absolute;
top: 32px;
left: 15px;
margin: auto;
content: "";
vertical-align: middle;
width: 5.6px;
height: 5.6px;
border-left: 1px solid #231815;
border-top: 1px solid #231815;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}
#contact_main #wrap_contents .wrap_btm .return_btn{
width: 180px;
height: 67px;
border: #231815 solid 1px;
font-size: 18px;
float: left;
transition: .4s;
background-color: #f2f2f2;
}

#contact_main #wrap_contents .wrap_btm .return_btn.return_btn:hover{
background-color:#A2A2A2;
}


#contact_main #wrap_contents .wrap_btm .send_btn{
width: 320px;
height: 67px;
background-color: #03803F;
color: #FFFFFF;
font-size: 18px;
transition: .4s;
}
#contact_main #wrap_contents .submit_btn{
display: inherit;
width: 409px;
height: 67px;
margin: 0 auto;
text-align: center;
background-color: #03803F;
font-size: 18px;
line-height: 67px;
color: #FFFFFF;
cursor: pointer;
transition: .4s;
}
.submit_btn:hover,.send_btn:hover{
opacity: 0.8;
}

#contact_main.sent{
padding-right: 40px;
height: calc(100vh - 184px);
}

#contact_main #wrap_contents.sent{
width: 490px;
margin: 106px auto 0;
padding: 0;
}
#contact_main #wrap_contents.sent h2{
color: #03803f;
font-size: 27px;
height: 27px;
font-weight: bold;
}
#contact_main #wrap_contents.sent p{
color: #262626;
font-size: 15px;
line-height: 28px;
margin-top: 20px;
letter-spacing: 0.05em;
}

.input_check{
color: red;
font-size: 14px;
line-height: 14px;
padding-left: 210px;
margin-top: 5px;
display: none;
}
#contact_main #wrap_contents .right_contents dl.inq+.input_check{
position: relative;
top:-18px;
}
}/*PC用end*/
