@charset "utf-8";


.thankyou {
	padding: 40px 0 60px 0;
	text-align: center;
	width: 100%;
}





/* ------------------------------------------------------------ common */

input[type="text"],
input[type="submit"],
textarea {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

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

#nav-toggle {
	display: none;
	position: absolute;
	right: 3%;
	top: 18px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 101;
}

#nav-toggle div {
	position: relative;
}

#nav-toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #a70808;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
	top: 0;
}

#nav-toggle span:nth-child(2) {
	top: 11px;
}

#nav-toggle span:nth-child(3) {
	top: 22px;
}

.SP {
	display: none;
}

.PC {
	display: block;
}

#service ul.font-mini li p {
	font-size: 0.86em;
	text-align: left;
	overflow: hidden;
}

.thminifont {
	line-height: 1.2em;
}

.thminifont span.font-mini-bk {
	font-size: 0.84em;
	color: #666;
}

#firstview {
	padding: 175px 0 165px;
	text-align: center;
	background: url(../img/fv_00v2.jpg) no-repeat center top;
	background-size: cover;
}

#firstview h2 span {
	font-size: 20px;
	font-weight: bold;
	display: block;
	padding: 10px 0;
	color: #fff;
}

#border_type {
	margin: 30px 0;
}

#border_type div {
	width: 49%;
	text-align: center;
	background-size: cover !important;
}

#border_type div.type1 {
	float: left;
	background: url(../img/pic_00.jpg) no-repeat center center #000;
}

#border_type div.type2 {
	float: right;
	background: url(../img/pic_01.jpg) no-repeat center center #000;
}

#border_type div h3 {
	border: 5px solid #000;
	padding: 215px 20px 35px;
	color: #3d564e;
	font-weight: bold;
	font-size: 18px;
	background: url(../img/icn_00.png) no-repeat center 95%;
}

#border_type div h3 span {
	display: block;
	font-family: 'geo', serif;
	font-size: 51px;
	line-height: 100%;
}

#noborder_type {
	margin: 30px 0;
}

#noborder_type div {
	width: 49%;
	text-align: center;
	background-size: cover !important;
}

#noborder_type div.type1 {
	float: left;
	background: url(../img/pic_00.jpg) no-repeat center center #000;
}

#noborder_type div.type2 {
	float: right;
	background: url(../img/pic_01.jpg) no-repeat center center #000;
}

#noborder_type div h3 {
	padding: 215px 20px 35px;
	color: #3d564e;
	font-weight: bold;
	font-size: 18px;
	background: url(../img/icn_00.png) no-repeat center 95%;
}

#noborder_type div h3 span {
	display: block;
	font-family: 'geo', serif;
	font-size: 51px;
	line-height: 100%;
}


#obon {
	text-align: center;
	padding: 50px 0 50px 0;
	width: 1100px;
	margin: 0 auto;
	border: 1px solid #000;
}

#obon h4 {
	font-size: 20px;
	font-weight: bold;
}

#obon span {
	font-size: 20px;
	font-weight: bold;
}

#about {
	padding: 90px 0 125px;
}

#about .ab-img {
	float: left;
	width: 500px;
}

#about .ab-detail {
	float: right;
	width: 540px;
	padding: 0;
}

#about .ab-detail p {
	padding: 0;
	line-height: 2.2;
}

#about_2column {
	padding: 90px 0 125px;
}

#about_2column .ab-img {
	float: left;
	width: 550px;
}

#about_2column .ab-img p {
	padding: 20px 0 0;
	line-height: 225%;
}

#about_2column .ab-detail {
	float: right;
	width: 500px;
}

#about_2column .ab-detail p {
	padding: 20px 0 0;
	line-height: 225%;
}

#about_simple {
	padding: 80px 0 150px;
	background: #a70808;
	margin-bottom: 30px;
	text-align: center;
	color: #fff;
}

#about_simple p.caption {
	padding: 25px 0 40px;
}

#service {
	padding: 80px 0 150px;
	background: #666;
	margin-bottom: 30px;
	text-align: center;
	color: #fff;
}

#service p.caption {
	padding: 25px 0 40px;
}

#service ul {
	width: 96%;
	margin: 0 auto;
	max-width: 1120px;
}

#service ul li {
	float: left;
	width: 31.3%;
	margin: 0 1% 12px;
}

#service ul li img {
	width: 100%;
	height: auto;
}

#service ul li p {
	font-size: 18px;
	padding: 5px 0;
}


#service_six {
	padding: 80px 0 150px;
	background: #a70808;
	margin-bottom: 30px;
	text-align: center;
	color: #fff;
}

#service_six p.caption {
	padding: 25px 0 40px;
}

#service_six ul {
	width: 96%;
	margin: 0 auto;
	max-width: 1120px;
}

#service_six ul li {
	float: left;
	width: 31%;
	margin: 0 1% 12px;
}

#service_six ul li img {
	width: 100%;
	height: auto;
}

#service_six ul li p {
	font-size: 18px;
	padding: 5px 0;
}


#2block {
	border: 7px solid #000;
	margin-bottom: 30px;
	background: #a70808;
	height: 530px;
	overflow: hidden;
}

#2block .pass-inner {
	width: 100%;
	margin: 0 auto;
}

#2block .pass-inner .bg {
	height: 530px;
	float: left;
	width: 60%;
	background: url(../img/pic_11.jpg) no-repeat right center #00a8e7;
	background-size: cover !important;
}

#2block .pass-inner .content {
	float: right;
	text-align: center;
	padding: 55px 0 120px;
	width: 40%;
}

#2block .pass-inner .content h3 {
	font-size: 18px;
}

#2block .pass-inner .content h3 span {
	font-size: 42px;
	letter-spacing: 4px;
}

#2block .pass-inner .content p.text {
	color: #fff;
	padding: 15px 0 55px;
	line-height: 220%;
}

#noborder_2block {
	margin-bottom: 30px;
	background: #a70808;
	height: 530px;
	overflow: hidden;
}

#noborder_2block .pass-inner {
	width: 100%;
	margin: 0 auto;
}

#noborder_2block .pass-inner .bg {
	height: 530px;
	float: left;
	width: 60%;
	background: url(../img/pic_11.jpg) no-repeat right center #00a8e7;
	background-size: cover !important;
}

#noborder_2block .pass-inner .content {
	float: right;
	text-align: center;
	padding: 55px 0 120px;
	width: 40%;
}

#noborder_2block .pass-inner .content h3 {
	font-size: 18px;
}

#noborder_2block .pass-inner .content h3 span {
	font-size: 42px;
	letter-spacing: 4px;
}

#noborder_2block .pass-inner .content p.text {
	color: #fff;
	padding: 15px 0 55px;
	line-height: 220%;
}

#2block_right {
	border: 7px solid #000;
	margin-bottom: 30px;
	background: #fff;
	height: 530px;
	overflow: hidden;
}

#2block_right .t-inner {
	width: 100%;
	margin: 0 auto;
}

#2block_right .t-inner .bg {
	height: 530px;
	float: right;
	text-align: right;
	width: 60%;
	background: url(../img/pic_14.jpg) no-repeat left center #fff;
	background-size: cover !important;
}

#2block_right .t-inner .content {
	float: left;
	text-align: center;
	padding: 55px 0 120px;
	width: 40%;
}

#2block_right .t-inner .content h3 {
	font-size: 18px;
}

#2block_right .t-inner .content h3 span {
	font-size: 42px;
	letter-spacing: 4px;
}

#2block_right .t-inner .content p.text {
	padding: 15px 0 55px;
	line-height: 220%;
}


#noborder_2block_right {
	margin-bottom: 30px;
	background: #fff;
	height: 530px;
	overflow: hidden;
}

#noborder_2block_right .t-inner {
	width: 100%;
	margin: 0 auto;
}

#noborder_2block_right .t-inner .bg {
	height: 530px;
	float: right;
	text-align: right;
	width: 60%;
	background: url(../img/pic_14.jpg) no-repeat left center #fff;
	background-size: cover !important;
}

#noborder_2block_right .t-inner .content {
	float: left;
	text-align: center;
	padding: 55px 0 120px;
	width: 40%;
}

#noborder_2block_right .t-inner .content h3 {
	font-size: 18px;
}

#noborder_2block_right .t-inner .content h3 span {
	font-size: 42px;
	letter-spacing: 4px;
}

#noborder_2block_right .t-inner .content p.text {
	padding: 15px 0 55px;
	line-height: 220%;
}

#companyprofile {
	text-align: center;
	padding: 75px 0 100px;
}

#companyprofile h3 {
	padding: 0 0 65px;
}

#companyprofile .info {
	float: left;
	width: 516px;
	text-align: left;
}

#companyprofile .info dl dt {
	float: left;
	font-weight: bold;
	padding: 20px;
}

#companyprofile .info dl dd {
	padding: 20px 20px 20px 116px;
}

#companyprofile .info dl dd.color {
	background: #eaeaea;
}

#companyprofile .map {
	float: right;
	width: 552px;
}

#companyprofile .map iframe {
	width: 100%;
	height: 550px;
}

#companyprofile .map p.gmap {
	padding: 10px 0;
	font-size: 14px;
	text-align: right;
	text-decoration: underline;
	font-family: "Yu Mincho", YuMincho, "Hiragino Mincho Pro", "MS PMincho", serif;
}

#companyprofile .map p.gmap img {
	margin-right: 8px;
}

#likebox {
	width: 500px;
	margin: 0 auto;
	padding: 100px 0 100px;
}

#likebox-wrap {
	background: #fafafa;
}

/* ------------------------------------------------------------ mobile */

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

	/* ------------------------------------------------------------ common */
	/* ------------------------------------------------------------ */
	#firstview {
		padding: 100px 6% 110px;
	}

	#firstview h2 img {
		width: 60%;
		height: auto;
		max-width: 250px;
	}

	#firstview h2 span {
		font-size: 14px;
	}

	#border_type {
		margin: 15px 0 0;
	}

	#border_type div {
		float: none;
		width: 100%;
		margin: 0 0 15px;
	}

	#border_type div h3 {
		font-size: 14px;
		padding: 30% 6% 18px;
		background-size: 12px 8px;
	}

	#border_type div h3 span {
		font-size: 26px;
	}

	#noborder_type {
		margin: 15px 0 0;
	}

	#noborder_type div {
		float: none;
		width: 100%;
		margin: 0 0 15px;
	}

	#noborder_type div h3 {
		font-size: 14px;
		padding: 30% 6% 18px;
		background-size: 12px 8px;
	}

	#noborder_type div h3 span {
		font-size: 26px;
	}

	#obon {
		text-align: center;
		padding: 20px 3% 20px;
		width: 94%;
		margin: 0 auto;
		border: 1px solid #000;
		font-size: 14px;
	}

	#obon h4 {
		font-size: 20px;
		font-weight: bold;
	}

	#obon span {
		font-size: 16px;
		font-weight: bold;
	}

	#obon p {
		padding: 10px 0;
	}

	#about {
		width: 100%;
		padding: 90px 0 20px;
	}

	#about .ab-img {
		width: 100%;
		float: none;
	}

	#about .ab-img img {
		width: 100%;
		height: auto;
	}

	#about .ab-detail {
		float: none;
		width: 100%;
		padding: 30px 0 20px;
	}

	#about .ab-detail p {
		padding: 10px 3% 0;
		font-size: 14px;
		line-height: 180%;
	}


	#about_2column {
		width: 100%;
		padding: 0;
	}

	#about_2column .ab-img {
		width: 100%;
		float: none;
	}

	#about_2column .ab-img p {
		padding: 10px 3% 0;
		font-size: 14px;
		line-height: 180%;
	}

	#about_2column .ab-detail {
		float: none;
		width: 100%;
		padding: 30px 0 20px;
	}

	#about_2column .ab-detail p {
		padding: 10px 3% 0;
		font-size: 14px;
		line-height: 180%;
	}

	#service {
		padding: 90px 1% 30px;
		margin-bottom: 15px;
	}

	#service p.caption {
		font-size: 14px;
		text-align: left;
		padding: 15px 5% 30px;
	}

	#service ul li {
		width: 46%;
		margin: 0 2% 5px;
	}

	#service ul li p {
		font-size: 12px;
	}

	#service_six {
		padding: 40px 1% 30px;
		margin-bottom: 15px;
	}

	#service_six p.caption {
		font-size: 14px;
		text-align: left;
		padding: 15px 5% 30px;
	}

	#service_six ul li {
		width: 46%;
		margin: 0 2% 5px;
	}

	#service_six ul li p {
		font-size: 12px;
	}



	#2block {
		overflow: visible;
		height: auto;
		border: 5px solid #000;
		margin-bottom: 15px;
	}

	#2block .pass-inner .bg {
		width: 100%;
		float: none;
		border-bottom: 5px solid #000;
		height: auto;
		padding: 52% 0 0;
		background: url(../img/pic_11.jpg) no-repeat center bottom #00a8e7;
	}

	#2block .pass-inner .content {
		float: none;
		width: 100%;
		padding: 20px 0 30px;
	}

	#2block .pass-inner .content h3 {
		font-size: 16px;
	}

	#2block .pass-inner .content h3 span {
		font-size: 26px;
	}

	#2block .pass-inner .content p.text {
		font-size: 14px;
		text-align: left;
		padding: 10px 6% 25px;
		line-height: 170%;
	}

	#noborder_2block {
		overflow: visible;
		height: auto;
		margin-bottom: 15px;
	}

	#noborder_2block .pass-inner .bg {
		width: 100%;
		float: none;
		border-bottom: 5px solid #000;
		height: auto;
		padding: 52% 0 0;
		background: url(../img/pic_11.jpg) no-repeat center bottom #00a8e7;
	}

	#noborder_2block .pass-inner .content {
		float: none;
		width: 100%;
		padding: 20px 0 30px;
	}

	#noborder_2block .pass-inner .content h3 {
		font-size: 16px;
	}

	#noborder_2block .pass-inner .content h3 span {
		font-size: 26px;
	}

	#noborder_2block .pass-inner .content p.text {
		font-size: 14px;
		text-align: left;
		padding: 10px 6% 25px;
		line-height: 170%;
	}

	#2block_right {
		overflow: visible;
		height: auto;
		border: 5px solid #000;
	}

	#2block_right .t-inner .bg {
		width: 100%;
		float: none;
		border-bottom: 5px solid #000;
		height: auto;
		padding: 52% 0 0;
		background: url(../img/pic_14.jpg) no-repeat center bottom #00a8e7;
	}

	#2block_right .t-inner .content {
		float: none;
		width: 100%;
		padding: 20px 0 30px;
	}

	#2block_right .t-inner .content h3 {
		font-size: 16px;
	}

	#2block_right .t-inner .content h3 span {
		font-size: 26px;
	}

	#2block_right .t-inner .content p.text {
		font-size: 14px;
		text-align: left;
		padding: 10px 6% 25px;
		line-height: 170%;
	}

	#noborder_2block_right {
		overflow: visible;
		height: auto;
	}

	#noborder_2block_right .t-inner .bg {
		width: 100%;
		float: none;
		border-bottom: 5px solid #000;
		height: auto;
		padding: 52% 0 0;
		background: url(../img/pic_14.jpg) no-repeat center bottom #00a8e7;
	}

	#noborder_2block_right .t-inner .content {
		float: none;
		width: 100%;
		padding: 20px 0 30px;
	}

	#noborder_2block_right .t-inner .content h3 {
		font-size: 16px;
	}

	#noborder_2block_right .t-inner .content h3 span {
		font-size: 26px;
	}

	#noborder_2block_right .t-inner .content p.text {
		font-size: 14px;
		text-align: left;
		padding: 10px 6% 25px;
		line-height: 170%;
	}

	#companyprofile {
		width: 100%;
		padding: 90px 0 50px;
	}

	#companyprofile h3 {
		padding: 0 0 30px;
	}

	#companyprofile .info {
		width: 100%;
		float: none;
		padding: 0 0 30px;
	}

	#companyprofile .info dl dt {
		float: none;
		background: #eaeaea;
		padding: 12px 3%;
		font-size: 14px;
	}

	#companyprofile .info dl dd {
		padding: 10px 3%;
		font-size: 14px;
	}

	#companyprofile .info dl dd.color {
		background: none;
	}

	#companyprofile .map {
		width: 100%;
	}

	#companyprofile .map iframe {
		height: 400px;
	}

	#companyprofile .map p.gmap {
		text-align: center;
		font-size: 12px;
	}

	#likebox {
		width: 100%;
		padding: 50px 0 50px;
		margin: 0 0 3%;
	}

	#likebox .fb-page {
		width: 100% !important;
	}

	#likebox .fb-page span {
		width: 100% !important;
	}

	#likebox span iframe {
		width: 100% !important;
	}

	#nav-toggle {
		display: block;
	}

	.open #nav-toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(315deg);
		transform: rotate(315deg);
	}

	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}

	.open #nav-toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}

	.open #global-nav {
		-webkit-transform: translateY(567px);
		transform: translateY(567px);
	}

	#global-nav {
		position: absolute;
		top: -508px;
		left: 0;
		background: #a70808;
		width: 100%;
		text-align: center;
		-webkit-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
	}

	#header ul.nav li a {
		display: block;
		line-height: 50px;
		height: 50px;
		font-family: 'geo';
		font-weight: bold;
		color: #fff;
		padding: 0;
	}

	#header ul.nav,
	#header ul.nav li {
		float: none;
		padding: 10px 0;
	}

	.SP {
		display: block;
	}

	.PC {
		display: none;
	}

	h3.h3-common {
		padding-bottom: 0;
	}
}