@charset "utf-8";

/*------------------------------------------------------------
	body
------------------------------------------------------------*/
body, html, #main, .contact-box {
	height: 100%;
}

#main {
	padding-bottom: 100px;

}

#contents {
	position: relative;
    height:auto !important;
	height: 100%;
	min-height: 100%;
	
}

footer {
position: absolute;
bottom: 0;
width: 100%;
	
}

/*------------------------------------------------------------
	page-title
------------------------------------------------------------*/

#page-title {
	position: relative;
	width: 100%;
	height: 220px;
    background-image: url(../img/contact-bg.jpg);
    background-position: bottom;
	background-size: cover;
    background-repeat: no-repeat;
	background-color: #333;	
	text-align: center;
	margin-bottom: 10px;
}



/* contact */

.contact-box {
	max-width: 1000px;
	margin-bottom: 20px;
	margin: 0 auto;
	padding: 40px 10px;
	text-align: center;
}

.contact-box h2 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 35px;
}

.contact-box h2:after {
    background-color: #333;
    content: "";
    width: 60px;
    height: 1px;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
	margin-top: 40px;
}

.form {
	text-align: left;

}

.form.step1 dl {
	margin-top: 20px;
	
}

.form.step1 dt {
	margin-bottom: 8px;
	
}

.form.step1 dd input {
	border: solid 1px #c5c5c5;
	background: #f5f5f5;
	width: 100%;
	padding: 10px 12px;
	margin-bottom: 5px;
	box-sizing: border-box;
}

.form.step1 dd textarea {
	border: solid 1px #c5c5c5;
	background: #f5f5f5;
	width: 100%;
	height: 100px;
	padding: 10px 12px;
	margin-bottom: 5px;
	box-sizing: border-box;
}

:focus {
    outline: 0;
}

.form.step1 .required {
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	background: #b6291d;
	padding: 3px;
	margin-left: 5px;
}

.form.step1 .error {
    color:#b6291d;
}

.form.step1 .privacy p {
	font-size: .8em;
	text-align: justify;
	margin: 5px 0 30px
}

/*---------------- ボタン ----------------*/


#contact .btnBox input {
    width: 180px;
    height: 40px;
    border: none;
    background: #333;
    color: #fff;
    cursor: pointer;
    font-size: 13px;
	font-weight: bold;
    letter-spacing: 1px;
    margin: 0 auto;
    margin-bottom: 15px;
	outline: none;
}

.message .btn {
	text-align: center;
    width: 180px;
	line-height: 40px;
	border: none;
    background: #333;
    color: #fff;
    cursor: pointer;
    font-size: 13px;
	font-weight: bold;
    letter-spacing: 1px;
    margin: 0 auto;
    margin-bottom: 15px;
	outline: none;
}

.message .btn a {
	color: #fff;
	display: block;
}

#contact #main input:hover,
#contact #main .btn:hover {
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
    -webkit-transition: all .2s linear 0s;
    -moz-transition: all .2s linear 0s;
    -o-transition: all .2s linear 0s;
    transition-property: all .2s linear 0s;
}


/*--- Step2
------------------------------------------------------------*/

.form.step2 .confirm {
	border-top: solid 1px #d5d5d5;
	border-bottom: solid 1px #d5d5d5;
	padding: 15px 10px;
	margin: 40px 0 40px;
}

.form.step2 .confirm dt {
	font-size: .9em;
	box-sizing: border-box;
	padding-bottom:3px 
}

.form.step2 .confirm dt:first-child {
	border-top: none;
}

.form.step2 .confirm dd {
	color: #888;
	font-size: .9em;
	box-sizing: border-box;
	padding-bottom: 15px
}

.form.step2 .confirm dd:last-child {
	padding-bottom: 0;
}

/*--- Step3
------------------------------------------------------------*/

#contact #main .message p {
    text-align: left;
	font-size: .9em;
	margin: 50px 0 50px;
}
