

.wrapper{
 height: 100%;
    min-height: 100vh;
    position: relative;
    padding-bottom: 70px;
    box-sizing: border-box;
}

button, input, select, textarea {
font-family : inherit;
font-size : 100%;
}

#path{
	padding: 1rem 0;
	font-size: .8rem;
}

#path span{
	color: #ccc;
	padding: 0 10px;
}

#path a{
	color: #313131;
	transition: .3s all;
}

#path a:hover{
	opacity: .7;
}

.ttl_area{
	background: #999 url("../images/contact_bg.jpg") no-repeat center / cover;
	background-blend-mode: multiply;
	padding: 12rem 0;
	text-align: center;
}

.top_txt{
	text-align: center;
}

#form_box{
	margin: 1rem auto 5rem;
}

#form_box h4{
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 1rem;
}

#form_box dl{
	margin-top: 2rem;
	border-bottom: 1px solid #ccc;
}

#form_box dl .form_item{
	padding: 1.5rem 0 1.5rem 1.5rem;
	display: flex;
	border-top: 1px solid #ccc;
}

#form_box dl .form_item dt{
	width: 30%;
	display: flex;
	align-items: center;
	font-weight: bold;
}
#form_box dl .form_item dd{
	width: 70%;
}

#form_box input{
	box-sizing: border-box;
}

#form_box input[type="text"],
#form_box textarea,
#form_box select{
    display: inline-block;
    width: 100%;
	padding: 1rem;
	border:none;
	background: #F0F0F0;
}

#form_box select {
  /* 初期化 */
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  position: relative;
  background: #F0F0F0 url("../images/arrows.svg") no-repeat right 10px center / 16px auto;
}

#form_box select option{
	padding: 10px 0;
}

.required{
	background: #C7243A;
	color: #fff;
	font-size: .9rem;
	padding: 3px 10px 5px;
	line-height: 1;
	margin-left: auto;
	margin-right: 2rem;
}


#form_box input.submit{
	margin-right: 1rem;
}

#form_box input.submit,
#form_box input.reset{
	border:none;
	background: #313131;
    color: #fff;
	padding: 1rem 2rem;
	cursor: pointer;
	transition: .3s all ease;
}


#form_box input.submit:hover,
#form_box input.reset:hover{
	opacity: .7;
}


#form_box .input-b{
	margin: 2rem auto;
	text-align: center;
}

.con_f_txt{
	text-align: center;
}

.con_f_txt a{
	color: #313131;
	text-decoration: underline;
}

.con_f_txt a:hover{
	text-decoration: none;
}

.c_btn{
	margin-top: 2rem;
	text-align: center;
}

.c_btn a{
	background: #313131;
	color: #fff;
	padding: 10px 30px;
	border-radius: 25px;
	display: inline-block;
}

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





@media screen and (max-width: 768px) {

#form_box {
    margin: 2rem auto;
}
	
.ttl_area {
	padding: 8rem 0;
}
	
.top_txt,
.con_f_txt{
	text-align: justify;
}

#form_box dl .form_item{
	flex-direction: column;
	padding: 1.5rem 0 2rem 0;
}
	
#form_box dl .form_item dt{
	margin-bottom: 1rem;
}

#form_box dl .form_item dt,
#form_box dl .form_item dd{
	width: 100%;
}

.required {
    margin-left: 1rem;
    margin-right:0;
}
	
#form_box input.submit, #form_box input.reset {
    display: block;
	width: 100%;
}

#form_box input.submit {
	margin-right: 0;
    margin-bottom: 1rem;
}


#form_box input[type=submit],
#form_box input[type=reset],
#form_box input[type=button] {
  -webkit-appearance: none;
  border-radius: 0;
}
	
	
}










