/*----------------------------------------
    .contact
----------------------------------------*/

.sp_message {
    display: none !important;
}

.contact .section_title {
    padding: 65px 0 29px 0;
}
.contact .contact_section .text_line {
    margin-bottom: 10px;
}
.contact .contact_section .detail01 dl {
	display: table;
	width: 100%;
}
.contact .contact_section .detail01 dl:not(:last-child) {
    border-bottom: 1px solid #fff;
}
.contact .contact_section .detail01 dl dt,
.contact .contact_section .detail01 dl dd {
	display: table-cell;
    padding: 31px 47px 27px 47px;
    box-sizing: border-box;
}
.contact .contact_section .detail01 dl dt {
    border-right: 1px solid #fff;
    background-color: #37A729;
    width: 25%;
    vertical-align: top;
    color: #fff;
    padding: 35px 35px;
}
.contact .contact_section .detail01 dl dt span.must {
	color: #f00;
	font-size: 84%;
}
.contact .contact_section .agree span.must {
	color: #f00;
}
.contact .contact_section .detail01 dl dd {
    padding-left: 57px;
    width: auto;
    line-height: 1.85;
        background: #eee;
}
.contact .contact_section .detail01 dl dd input {
	height: 32px;
    padding: 0 5px;
}
.contact .contact_section .detail01 dl dd input[type=text],
.contact .contact_section .detail01 dl dd input[type=tel],
.contact .contact_section .detail01 dl dd input[type=email],
.contact .contact_section .detail01 dl dd textarea {
	border: 1px solid #e2d1c8;
	width: 100%;
	box-sizing: border-box;
}
.contact .contact_section .detail01 dl dd select {
	height: 30px;
	width: 50px;
	border: 1px solid #e2d1c8;
}
.contact .contact_section .detail01 dl dd select.pulltype1,
.contact .contact_section .detail01 dl dd select.pulltype2,
.contact .contact_section .detail01 dl dd select.pulltype3 {
	width: 90px;
}
.contact .contact_section .detail01 dl dd input[type=button] {
    margin-left: 10px;
    vertical-align: top;
}
.contact .contact_section .detail01 dl dd textarea {
	height: 200px;
    padding: 5px;
}
.contact .agree {
    font-size: 117%;
    margin-top: 15px;
    margin-bottom: 24px;
    text-align: center;
}
.contact span.wpcf7-list-item.first {
	margin: 0;
}
.contact .agree span.wpcf7-list-item-label {
	position: relative;
}
.contact .agree span.wpcf7-list-item-label:after {
	position: absolute;
	content:"（必須）";
	right: -60px;
	color: #ff0000;
}
.contact .wpcf7-not-valid-tip {
    display: block !important;
    color: #ff0000;
    margin-top: 5px;
    font-size: 12px;
}
.contact .contact_section .detail01 dl dd input[type="radio"],
.contact .contact_section .agree input[type="checkbox"]{
	display: inline-block;
	vertical-align: middle;
}
.contact .btn_list {
  margin-top: 40px;
  text-align: center;
}
.contact .btn_list input:hover {
  background: #00a8d0;
}
.contact .btn_list input {
  width: 150px;
  background: #535353;
  border: none;
  box-sizing: border-box;
  font-size: 117%;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  color: #e5e5e5;
  cursor: pointer;
  padding: 15px 0;
  margin-left: 10px;
  -webkit-appearance: none;
}

@media screen and (max-width : 1100px) {
.contact .contact_section .detail01 dl dd select.pulltype1,
.contact .contact_section .detail01 dl dd select.pulltype2,
.contact .contact_section .detail01 dl dd select.pulltype3 {
	width: 75px;
}
}

@media screen and (max-width : 980px) {
.contact section .section_block {
}
.contact .contact_section .detail01 dl dt,
.contact .contact_section .detail01 dl dd {
  padding: 20px;
}
.contact .contact_section .detail01 dl dd select {
	width: 40px;
}
.contact .contact_section .detail01 dl dd select.pulltype1,
.contact .contact_section .detail01 dl dd select.pulltype2,
.contact .contact_section .detail01 dl dd select.pulltype3 {
	width: 60px;
}
}

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

.contact .contact_section .only p {
    line-height: 3;
}
.contact .contact_section .detail01 dl dd select {
	width: 40px;
}
.contact .contact_section .detail01 dl dd select.pulltype1,
.contact .contact_section .detail01 dl dd select.pulltype2,
.contact .contact_section .detail01 dl dd select.pulltype3 {
	width: 70px;
}
.contact .contact_section .detail01 dl {
	display: block;
	width: 100%;
}
.contact .contact_section .detail01 dl dt,
.contact .contact_section .detail01 dl dd {
	display: block;
}
.contact .contact_section .detail01 dl dt {
	width: 100%;
	font-size: 12px;
    padding: 15px 20px;
	box-sizing: border-box;
}
.contact .contact_section .detail01 dl dd {
    padding: 15px 20px;
	font-size: 12px;
}
.contact .contact_section .detail01 dl dd input {
	height: 28px;
}
.contact .contact_section .detail01 dl dd textarea {
	height: 150px;
}
.contact .agree {
    font-size: 12px;
    margin-top: 10px;
}
.contact .btn_list {
  margin-top: 40px;
  text-align: center;
}
.contact .btn_list input {
  width: 100px;
  padding: 8px 0;
  margin: 0 auto 5px auto;
  font-size: 12px;
}
.contact .btn_list input[type=button] {
  margin-right: 5px;
}
.contact .agree span.wpcf7-list-item-label:after {
	right: -50px;
}
.contact span.wpcf7-list-item,
.contact span.wpcf7-list-item.first {
    margin: 0 1em 0 0;
}
.contact span.wpcf7-list-item.last {
    margin: 0;
}
}



.error_section {
  padding: 0 0 150px 0;
}
.error_section .section_title {
  padding-top: 0;
}
.error_section .notfont_txt {
	font-size: 134%;
	text-align: center;
    padding-top: 50px;
}

@media screen and (max-width : 767px) {
.error_section {
  padding: 0 0 120px 0;
}
.error_section .section_title {
  padding-top: 0;
  font-size: 34px;
}
.error_section .notfont_txt {
	font-size: 14px;
}
}
