@charset "UTF-8";

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

	base

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

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

	contact_block

-----------------------------------*/
#contact_block {
	padding: 80px 0 100px;
}
#contact_block .contents_inner{
	max-width: 780px;
	width: 96%;
}
#contact_block .contact_box {
    margin-bottom: 30px;
    background: #d8dee7;
    text-align: center;
    padding: 30px;
    border-bottom: 4px solid #c5c9d0;
    padding-bottom: 20px;
    border-radius: 15px;
}
#contact_block .text {
    line-height: 200%;
    text-align: left;
}
#contact_block .text_box{
	width: 50%;
	display: inline-block;
    vertical-align: middle;
}
#contact_block .tel_box {
    width: 46%;
    display: inline-block;
    vertical-align: middle;
    background: #fff;
    padding: 20px;
    border-radius: 10px;
}
#contact_block .title {
    background: #304c80;
    text-align: center;
    color: #fff;
    border-radius: 20px;
}
#contact_block .tel{
	color:#0d295e;
	font-size:32px;
	font-weight:600;
	margin-top:10px;
	text-align:center;
}
#contact_block span {
	color: #f30404;
}
#contact_block table {
	border-top: 1px dashed #dedede;
	width: 100%;
	margin-bottom: 50px;
}
#contact_block table tr{
	border-bottom: 1px dashed #dedede;
}
#contact_block table th{
	padding: 15px 0 15px 20px;
	text-align: left;
	background: #e5e5e5;
	width: 240px;
	font-size: 15px;
	vertical-align: top;
	font-weight: 400;
}
#contact_block table td{
	padding: 15px 20px;
}
#contact_block input {
    padding: 0;
    border: none;
    border-radius: 0;
    outline: none;
    background: transparent;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
#contact_block textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
    padding: 0;
    border: 0;
	border-radius: 0;
    outline: none;
    background: transparent;
    height: 200px;
}
#contact_block .w330, #contact_block .wFull {
    border: 1px solid #d2d2d2;
    padding: 10px;
}
#contact_block .w330 {
    max-width: 330px;
    width: 100%;
}
#contact_block .wFull {
    width: 100%;
}
#contact_block .button_area {
    text-align: center;
}
#contact_block .button_submit,
#contact_block .button_reset {
    background: #0d295e;
    width: 260px;
    display: inline-block;
	transition : 0.2s ;
	-webkit-transition : 0.2s ;
	-moz-transition    : 0.2s ;
	-o-transition      : 0.2s ;
	-ms-transition     : 0.2s ;
}
#contact_block .button_submit:hover,
#contact_block .button_reset:hover {
    opacity: 0.6;
}
#contact_block input[type=submit],
#contact_block input[type=reset] {
    font-size: 18px;
    padding: 20px;
    display: inline-block;
    color: #fff;
	border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
#contact_block .button_reset {
    background: #8c8c8c;
    margin-right: 5%;
}
#contact_block h2 {
	float:none;
    font-size: 20px;
    max-width: 800px;
    width: 100%;
    margin: 0 auto 20px;
    text-align: left;
    letter-spacing: 0.1em;
    /* line-height: 1; */
}
@media screen and (max-width: 840px) {
	
	#contact_block h2 {
		font-size:18px;	
		margin: 0 auto 20px;
	}
	#contact_block .tel_box {
		width: 100%;
		float:none;
	}
	#contact_block .text_box{
		width: 100%;
		float:none;
		margin-bottom: 20px;
	}
	
}
@media screen and (max-width: 640px) {
	#contact_block {
		padding: 40px 0;
	}
	#contact_block .tel {
		font-size: 18px;
	}
	#contact_block table {
		margin-bottom: 30px;
	}
	#contact_block table th{
		padding: 15px;
		background: #e5e5e5;
		width: 100%;
		font-size: 14px;
		display: block;
	}
	#contact_block table td{
		padding: 15px;
		display: block;
		width: 100%;
	}
	#contact_block .button_reset {
	    margin-right: 0;
	}
	#contact_block input[type=submit],
	#contact_block input[type=reset] {
		display: block;
		margin: 0 auto 20px;
	}
}
/*-----------------------------------

	error/alert

-----------------------------------*/
.error {
  color: #f30404;
  font-size: 14px;
  padding-bottom: 0.3em;
}
.alert {
  display: block;
  padding: 0.5em;
  text-align: center;
  border: 1px solid red;
  background: rgba(255,0,0,0.1);
  color: #f30404;
	margin: 30px 0;
}