@charset "UTF-8";

/*/////////////////////////////
 index - トップページ
 /////////////////////////////*/

/* index_news
 * ------------------------- */
.index_news {
	float: left;
	width: 470px;
}
/* index_news_body */
.index_news_body {
	background: #fff;
	font-size: 11px;
	color: #5b5b5b;
}
.index_news_body ul {
	width:100%!important;
	height: 125px;
	padding: 4px 0px;
	box-sizing: border-box;
	overflow: auto;
}
.index_news_body ul li {
	margin: 0 0 2px;
	padding: 0 12px;
	max-width:470px;
	box-sizing:border-box;
}
.index_news_body ul li:hover, .index_news_body ul li a:hover {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
	text-decoration: underline;
}
.index_news_body .jspContainer{
	width:100%!important;
	height:100%!important;
}
.index_news_body ul .jspPane{
	width:100%!important;
}

/* index_projects
 * ------------------------- */
.index_projects {
	float: right;
	width: 468px;
}
.index_projects ul li{
	width:144px;
}
.index_projects .list_img ul li img {
	max-width: 144px;
}
/* Tab
 * -----------------------------*/
@media screen and (max-width: 768px) {
	/* index_news
	 * ------------------------- */
	.index_news {
		float: none;
		width: auto;
		margin: 0 0 30px;
	}
	/* index_news_body */
	.index_news_body {
		font-size: 12px;
	}
	.index_news_body ul {
		padding: 15px 0;
	}
	.index_news_body ul li {
		margin: 0 0 9px;
		padding: 0 15px;
		max-width:100%;
	}
	/* index_projects
	 * ------------------------- */
	.index_projects {
		float: none;
		width: auto;
	}
	.index_projects ul li {
		float: none;
		display: inline-block;
		width: auto;
	}
	.index_projects .list_img ul li img {
		max-width: 144px;
	}
}
/* SP
 * -----------------------------*/
@media screen and (max-width: 640px) {
	.index_projects ul {
		margin: 0 -5% 0 0;
	}
	.index_projects ul li {
		float: left;
		display: block;
		width: 46%;
		margin: 0 3% 15px 0;
	}
	.index_projects .list_img ul li img {
		width: 100%;
		max-width: 100%;
	}
}

/*/////////////////////////////
 About
 /////////////////////////////*/
.page_about {
	margin-bottom: 8px;
}
/* about_head
 * ------------------------- */
.about_head {
	padding-bottom: 20px;
}
/* title */
.about_head > .title {
	font-size: 21px;
	font-weight: normal;
	margin: 0 0 25px;
	line-height: 1.2em;
}
/* body */
.about_head .body {
	line-height: 1.8em;
}
.about_head .body > .title {
	font-weight: bold;
}
.about_head .body > .text {
	margin: 0 0 20px;
}
/* about_body
 * ------------------------- */
/* title */
.about_body .title {
	margin: 0 0 20px;
}
/* -- left --*/
.about_body .left {
	width: 465px;
}
/* table */
.about_body .left table {
	width: 100%;
}
.about_body .left table th, .about_body .left table td {
	vertical-align: top;
	padding: 0 0 10px;
}
.about_body .left table th {
	width: 90px;
}
/* -- right --*/
.about_body .right {
	width: 465px;
}
.about_body .right .google_map {
	margin: 0 0 5px;
}
.about_body .right .google_map iframe {
	width: 100%;
}
/* Tab
 * ------------------------- */
@media screen and (max-width: 768px) {
	/* -- left --*/
	.about_body .left {
		float: none;
		width: 100%;
		margin: 0 0 40px;
	}
	/* -- right --*/
	.about_body .right {
		float: none;
		width: 100%;
	}
}
/* SP
 * ------------------------- */
@media screen and (max-width: 640px) {
	.about_head > .title {
		font-size: 18px;
		line-height: 1.5em;
	}
}

/*/////////////////////////////
 Works
 /////////////////////////////*/
.page_works .title {
	margin-bottom: 15px;
}

/*/////////////////////////////
 Privacy Policy
 /////////////////////////////*/
.page_privacy {
	margin: 0 0 200px;
}
.page_privacy .text {
	margin: 0 0 20px;
	line-height: 1.8em;
}
/* Tab
 * ------------------------- */
@media screen and (max-width: 768px) {
	.page_privacy {
		margin: 0 0 30px;
	}
}
/* SP
 * ------------------------- */
@media screen and (max-width: 640px) {
	.page_privacy {
		margin: 0 0 0px;
	}
}

/*/////////////////////////////
 Contact
 /////////////////////////////*/
.page_contact {
	margin: 0 0 40px;
}
/* contact_head
 * ------------------------- */
.contact_head {
	margin: 0 0 40px;
}
.contact_head .title_border_black{
	margin:0 0 20px;
}
/* contact_body
 * ------------------------- */
.contact_body {
	font-size: 14px;
}
/* table */
.contact_body table {
	width: 100%;
	margin: 0 0 30px;
}
.contact_body table th, .contact_body table td {
	vertical-align: top;
	padding: 10px 5px;
}
.contact_body table th {
	font-weight: bold;
	width: 20%;
}
.contact_body table th span{
	color:#ff0000;
}
.contact_body table td label {
	display: inline-block!important;
	margin: 0 0 10px!important;
}
.contact_body table td input[type="text"] {
	width: 100%;
	border: 1px solid #eaeaea;
	padding: 3px;
	margin: 0;
}
form#mailformpro textarea {
	padding: 3px;
	font-size: 14px;
	vertical-align: middle;
	width: 100% !important;
	height: 100px !important;
	border: 1px solid #eaeaea;
}
/*.contact_body table td textarea {
 width: 100%;
 height: 100px;
 border: 1px solid #eaeaea;
 }*/
/* checkbox */
.contact_body table td input[type=checkbox] {
	display: inline-block;
	margin-right: 6px;
}
.contact_body table td input[type=checkbox] + label {
	position: relative;
	display: inline-block;
	margin: 0 0 10px;
	font-size: 14px;
	cursor: pointer;
}
@media (min-width: 640px) {
	.contact_body table td input[type=checkbox] {
		display: none;
		margin: 0;
	}
	.contact_body table td input[type=checkbox] + label {
		padding: 0 0 0 30px;
	}
	.contact_body table td input[type=checkbox] + label::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		display: block;
		width: 18px;
		height: 18px;
		margin-top: -9px;
		background: #FFF;
	}
	.contact_body table td input[type=checkbox] + label::before {
		border: 1px solid #efefef;
	}
	.contact_body table td input[type=checkbox]:checked + label::after {
		content: "";
		position: absolute;
		top: 50%;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		display: block;
	}
	.contact_body table td input[type=checkbox]:checked + label::after {
		left: 3px;
		width: 16px;
		height: 8px;
		margin-top: -8px;
		border-left: 3px solid #E71063;
		border-bottom: 3px solid #E71063;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
}
@media screen and (max-width: 640px) {
	div.mfp_buttons button#mfp_button_send {
		width:100%;
		margin:0 0 5px;
	}
	div.mfp_buttons button#mfp_button_cancel {
		width:100%;
	}
}
/* buttos(submit) */
.contact_body .buttons {
	padding: 0 0 0 217px;
}
.contact_body .buttons span {
	margin: auto 40px auto auto;
}
.contact_body .buttons input[type="submit"] {
	border: 0px;
	margin: 0;
	padding: 0;
	width: 267px;
	height: 37px;
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	font-size: 17px;
	letter-spacing: 2px;
	background: #494949;
	cursor: pointer;
}
/* mailformpro
 * ------------------------- */
div#mfp_phase_confirm h4 {
	font-size: 20px;
	padding: 10px 0px 20px 0px;
	text-align: center;
}
table#mfp_confirm_table {
	border-spacing: 0px;
	border-collapse: collapse;
	width: 100%;
	margin: 0 0 15px;
}
table#mfp_confirm_table tr th {
	white-space: nowrap;
	width: 25%;
}
div.mfp_buttons button {
	border: 0px;
	margin: 0;
	padding: 0;
	width: 267px;
	height: 37px;
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	font-size: 17px;
	letter-spacing: 2px;
	background: #494949;
	cursor: pointer;
}
div.mfp_buttons button:hover {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
}
/* Tab
 * ------------------------- */
@media screen and (max-width: 768px) {
	.contact_body .buttons {
		padding: 0;
		text-align: center;
	}
	.contact_body .buttons input[type="submit"] {
		margin: 20px 0 0;
	}
}
/* SP
 * ------------------------- */
@media screen and (max-width: 640px) {
	.contact_body table th {
		font-weight: bold;
		width: 30%;
	}
}
