@charset "utf-8";

* {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
*:before,
*:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

button, input, optgroup, select, textarea {
	margin: 0;
	outline: none;
	font: inherit;
	color: inherit;
}

/* --------------------------------------------- */



#contact form#mail_form {
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.3;
	font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}

#contact form#mail_form .inner {
    width: 100%;
    margin: 0 auto;
}

#contact form#mail_form dl {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}

#contact form#mail_form dl dt {
	color: #555;
	clear: both;
	width: 250px;
	float: left;
	border-top: 1px solid #BBB;
	margin: 0;
	padding: 22px 10px 15px 10px;
	overflow: hidden;
}

#contact form#mail_form dl dd {
	width: calc(100% - 250px);
	float: left;
	border-top: 1px solid #BBB;
	margin: 0;
	padding: 15px 0px 10px 0px;
}

#contact form#mail_form dl dt span {
	font-size: 87%;
	display: block;
}
#contact form#mail_form dl dd p {
	margin: 0px 0px 0px;
	line-height: 1.5;
}

#contact form#mail_form dl dt:first-child,
#contact form#mail_form dl dt:first-child + dd {
	border-top: none;
}


/* -- for JavaScript ここから------------------ */

form#mail_form dl dt span.required,
form#mail_form dl dt span.optional {
	display: inline-block;
	font-weight: normal;
	color: #FFF;
	margin-right: 10px;
	padding: 0px 5px;
	background: #C40018;
	float: right;
	line-height: 1.6;
}
form#mail_form dl dd>span {
	display: block;
	color: #C40018;
}

/* -- for JavaScript ここまで------------------ */

#contact form#mail_form input {
	height: 1.8em;
	font-size: 16px;
	border: 1px solid #CCC;
	background: #FCFCFC;
	height: 30px;
	margin-bottom: 5px;
	padding: 0px 8px;
}
#contact form#mail_form textarea {
	height: 100px;
	font-size: 16px;
	resize: vertical;
	border: 1px solid #CCC;
	background: #FCFCFC;
	font-family: inherit;
	padding: 4px 8px;
}
#contact form#mail_form input:focus,
#contact form#mail_form textarea:focus {
	box-shadow: 0px 0px 5px #4CB5E8;
	border: 1px solid #4CB5E8;
	background: #FFF;
}

#contact form#mail_form input#name_1,
#contact form#mail_form input#name_2 {
	width: 100%;
}
#contact form#mail_form input#read_1,
#contact form#mail_form input#read_2 {
	width: 100%;
}
#contact form#mail_form input#mail_address,
#contact form#mail_form input#mail_address_confirm {
	width: 100%;
}
#contact form#mail_form ul li {
	list-style-type: none;
	margin-right : 15px;
}
#contact form#mail_form ul li label:hover {
	cursor: pointer;
}
#contact form#mail_form ul li input {
	height: auto;
	margin-right: 0.5em;
}
#contact form#mail_form input#postal {
	width: 150px;
}
#contact form#mail_form input#address_1,
#contact form#mail_form input#address_2 {
	display: block;
	width: 430px;
}
#contact form#mail_form input#address_1 {
	margin-bottom: 7px;
}
#contact form#mail_form input#phone,
#contact form#mail_form input#fax {
	width: 100%;
}
#contact form#mail_form input#company,
#contact form#mail_form input#busho,
#contact form#mail_form input#yakushoku,
#contact form#mail_form input#mail_subject {
	width: 430px;
}
#contact form#mail_form textarea#mail_contents {
	width: 100%;
}
#contact form#mail_form input#mail_submit_button {
	display: block;
	margin: 25px auto;
	width: 320px;
	height: 50px;
	vertical-align: middle;
	color: #FFF;
	font-size: 18px;
	background-color: #cd8a04;
	font-family: inherit;
	border: none;
	border-radius: 5px;
}
#contact form#mail_form input#mail_submit_button:hover {
	cursor: pointer;
	opacity: 0.8;
}

#contact .space2chara:first-letter {
	letter-spacing: 1em;
}


/* --responsive------------------------------------------- */

/* 780pixel start */
@media screen and (max-width: 780px){

    #contact main,
    #thanks main, {
        margin-top: 60px;
    }
    
    #contact .ttl-1  {
        width: 96%;
        margin: 0 auto;
    }
    
    #contact .contents {
        width: 96%;
        margin: 0 auto;
    }
    
    #contact form#mail_form {
	width: auto;
    margin: 0;
}
 #contact form#mail_form .inner {
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}


#contact form#mail_form dl {
	width: 100%;
	background: none;
}

#contact form#mail_form dl dt {
	width: 100%;
	float: none;
	text-align: left;
	padding: 15px 0px 5px 0px;
}

#contact form#mail_form dl dd {
	width: 100%;
	float: none;
	border-top: none;
	padding: 0px 0 13px 0px;
}

#contact form#mail_form dl dd:last-child {
	width: 100%;
}

#contact form#mail_form dl dt span {
	font-weight: normal;
}

/* -- for JavaScript ここから------------------ */

form#mail_form dl dt span.required,
form#mail_form dl dt span.optional {
	float: left;
	margin: 0px 8px 3px 0px;
}
form#mail_form dl dt span {
	margin: 0px;
	padding: 0px;
}

/* -- for JavaScript ここまで------------------ */

#contact form#mail_form input#mail_submit_button,
#contact form#mail_form input#name_1,
#contact form#mail_form input#name_2,
#contact form#mail_form input#read_1,
#contact form#mail_form input#read_2,
#contact form#mail_form input#mail_address,
#contact form#mail_form input#mail_address_confirm,
#contact form#mail_form input#postal,
#contact form#mail_form input#address_1,
#contact form#mail_form input#address_2,
#contact form#mail_form input#phone,
#contact form#mail_form input#fax,
#contact form#mail_form input#company,
#contact form#mail_form textarea {
	max-width: 98%;
	-webkit-appearance: none;
}

}
/* 780pixel end */

@media screen and (max-width: 380px){
#contact form#mail_form input#mail_submit_button {
	font-size: 14px;
	}
}

/* --------------------------------------------- */

#thanks .thanks {
	margin: 200px auto 200px auto ;
	padding: 20px;
	font-size: 1.0em;
	border: 2px solid #E3E3E3;
	border-radius: 5px;
    text-align: center;
    width: 80%;
}

.thanks span {
    font-weight: bold;
    font-size: 18px;
    color: #448F43;
}

@media screen and (max-width: 780px){
.thanks {
	margin: 30px 20px 100px;
    text-align: left;
}
	}
}
