@charset "utf-8";
/* CSS Document */

@import "clear.css";

#footer {
	background: #e60039;
	color: #fff;
}

#footer h3 img {
	border: solid #fff 1px;
}

#contact_form dt {
	text-align: left;
}

#contact_form input,
#contact_form textarea {
	width: 100%;
}

/* PC */
@media (min-width: 768px) {
	body {
		line-height: 3em;
		text-align: center;
	}
	
	#contact {
	    position: absolute;
		top: 35px;
		right: 0;
		z-index: 999;
	}
	
	header {
	    position: relative;
	}
	
	#main_img img {
		width: 100%;
	}
	
	header h1 {
		position: absolute;
		top: 35px;
		left: 40px;
		width: 87px;
		z-index: 999;
	}
	
	#sp_menu,
	.sp_att br {
		display: none;
	}
		
	footer {
		line-height: 40px;
		padding: 80px 0;
	}
	
	#container {
		padding-top: 20px;
	}
	
	.contents {
		margin: auto;
		width: 960px;
	}
	
	h2 {
		line-height: 1em;
		margin: 30px 0;
	}
	
	footer h3 {
		margin-bottom: 40px;
	}
	
	.column_3type {
		margin: 40px 0;
	}
	
	.column_3type li {
		float: left;
		margin-right: 8px;
		width: 312px;
	}
	
	.column_3type li:last-child {
		margin-right: 0;
	}
	
	#key_area {
		background: url(../images/key_bg.jpg) no-repeat center;
		height: 688px;
		margin: 80px 0;
		padding-top: 80px;
	}
	
	.column_2type {
		margin: 30px 0;
	}
	
	.column_2type dt {
		float: left;
		width: 456px;
	}
	
	.column_2type dd {
		float: right;
		width: 456px;
	}
	
	#footer {
		margin-top: 60px;
		padding: 60px 0;
	}
	
	#footer h3 {
		margin-bottom: 60px;
	}
	
	.contact_link {
		margin-top: 60px;
	}
	.contact_link img
	{
		width		:	600px;
	}
	
	#contact img
	{
		width		:	70px;
	}
	#contact_form {
		margin: 0 auto 60px;
		width: 526px;
	}
	
	#contact_form textarea {
		height: 224px;
	}
	
	#contact_form input {
		height: 56px;
	}
	
	.send_complete {
		margin: 60px 0;
	}

}

/* スマホ */
@media screen and (max-width: 767px) {	
	body {
		font-size: 0.95em;
	}
	
	.contents br {
		display: none;
	}
	
	#contact {
		display: none;
	}
	
	header {
		background: #e60039;
		position: fixed;
		width: 100%;
		z-index: 98;
	}
	
	header h1 {
		line-height: 0;
		height: 50px;
		padding: 7px 0;
	}
	
	header h1 img {
		margin-left: 7%;
		max-height: 100%;
	}
	
	#sp_menu {
		position: absolute;
		top: 0;
		right: 0;
		width: 40%;
	}
	
	#sp_menu li {
		float: left;
		height: 64px;
		text-align: center;
		width: 50%;
	}
	
	#sp_menu li a {
		border-left: solid #fff 1px;
		display: block;
		height: 100%;
		position: relative;
	}
	
	#sp_menu li img {
		position: absolute;
		top: 50%;
		left: 50%;
		margin: -18% 0 0 -21%;
		width: 40%;
	}
	
	#main_img {
		padding-top: 64px;
		margin-bottom: 30px;
	}
	
	.contents {
		line-height: 2em;
		margin: 0 7%;
	}
	
	h2 {
		margin: 10px 0;
		text-align: center;
	}
	
	.column_3type {
		text-align: center;
		margin: 20px 0;
	}
	
	.column_3type li {
		margin-bottom: 25px;
	}
	
	#key_area {
		background: #edecf2 url(../images/sp_key_bg.jpg) no-repeat top;
		background-size:contain;
		margin: 60px 0;
		padding: 65% 0 10px;
	}
	
	.column_2type {
		margin: 20px 0;
	}
	
	.column_2type dt {
		margin-bottom: 20px;
	}
	
	.sp_att {
		font-size: 0.75em;
		line-height: 1.4em;
		text-align: center;
	}
	
	.sp_att br {
		display: block;
	}
	
	#footer {
		margin-top: 40px;
		padding: 40px 0 20px;
	}
	
	#footer p {
		margin-bottom: 20px;
	}
	
	#footer h3 {
		text-align: center;
	}
	
	#footer h3 img,
	footer h3 img {
		margin-bottom: 40px;
		width: 40%;
	}
	
	footer {
		font-size: 0.85em;
		line-height: 2em;
		padding: 20px 0;
		text-align: center;
	}
	
	footer a img {
		margin: 15px 0;
		width: 60%;
	}
	
	.sp_contact {
		text-align: center;
		margin-bottom: 40px;
	}
	
	.sp_contact input[type="image"] {
		width: 100%;
	}
	
	#contact_form {
		margin-bottom: 40px;
	}
	
	#contact_form textarea {
		height: 184px;
	}
	
	#contact_form input {
		height: 46px;
	}
	
	.send_complete {
		margin: 30px 0;
		text-align: center;
	}
	
	.send_complete img {
		width: 50%;
	}

}