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

a { transition: .3s; }

/* .clearfix:before,.clearfix:after {
  content: "";
  display: table;
}*/

/* .clearfix:after {
  clear: both;
}*/

.clearfix {
	overflow:hidden;
	zoom:1;
}
.clear {
  clear: both;
}



body {
  font-family: "游ゴシック",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  /*font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;*/
  font-size: 1.6rem;
  color: #666666;
  /*background:#f0f0f0;*/
}

.pc-only { display: block !important; }
.sp-only { display: none !important; }

/* ========================================================================== */
/* HEADER
   ========================================================================== */
   
header {
	/*position: fixed;*/
	width: 100%;
	z-index: 1000;
	background: #FFFFFF;
	
	position:fixed;
	top:0;
	left:0;
}

header > div {
	position: relative;
	max-width: 1200px;
	height: auto;
	display: flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	align-items: center;
	-webkit-align-items: center;
	-ms-align-items: center;
	/*padding: 1.5% 0;
	box-sizing: border-box;
	background: #DDD;*/
	margin: 0 auto;
	text-align: center;
}

header > div h1 img {
    max-width: 150px;
    width: 100%;
}

header > div nav#Gnav {
	width: 740px;
}
header > div nav#Gnav ul {
	width: 100%;
	display: flex;
	margin: 0 auto;
	/*background: #DDD;*/
	justify-content: space-between;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
}

	header > div nav#Gnav ul li {
		position: relative;
		line-height: 1;
		font-size: 16px;
		text-align: center;
		/*padding: 0 1.8%;*/
		/*padding: 65px 1.8% 35px;*/
		padding: 65px 0 35px;
		/*opacity: 0.7;*/
		font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
	}
		header > div nav#Gnav ul li:nth-child(5) {
			margin-right: 10px;	
		}
		header > div nav#Gnav ul li.current {
			border-bottom: 1px solid #be0008;
		}
	header > div nav#Gnav ul li a{
		/*padding: 15px 23px 15px 22px;
		letter-spacing: -0.01em;*/
		display: block;
		color: #333333;
		text-decoration: none;
	}
	header > div nav#Gnav ul li:hover {
		filter:alpha(opacity=70);
		-moz-opacity: 0.7;
		opacity: 0.7;
		border-bottom: 1px solid #be0008;
	}
	header > div nav#Gnav ul li.tel {
		position: absolute;
		top: 10px;
		right: 165px;
		line-height: 0;
		font-size: 20px;
		text-align: center;
		padding: 12px 0 0 0;
		/*font-family: "游ゴシック Bold",YuGothic,YuGothicB;
		font-style: italic;*/
		font-weight:bold;
		letter-spacing: 0.02em;
	}
		header > div nav#Gnav ul li.tel a { color: #be0008;}
		header > div nav#Gnav ul li.tel span { font-size: 12px;}
	header > div nav#Gnav ul li.inquiry {
		max-width: 140px;
		width: 100%;
		/*position: absolute;
		top: 0;
		right: 0;*/
		padding: 0;
		background: url(../img/common/mail.svg) no-repeat center 30px #be0008;
		background-size: 20% auto;
	}
	header > div nav#Gnav ul li.inquiry a {
		padding: 70px 0 30px;
		display: block;
		/*background:#be0008;*/
		line-height: 0;
		font-size: 16px;
		text-align: center;
		color: #FFFFFF;
		box-sizing: content-box !important;
	}
	
	#nav_toggle{
		display: none;
	}
	
	
@media screen and (max-width: 1024px) {
	header > div { 
		margin-left: 2%;
	}
	header > div h1 img {
		max-width: 150px;
		width: 100%;
	}
	header > div nav#Gnav {
		width: 676px;
	}
	header > div nav#Gnav ul li {
		position: relative;
		line-height: 1;
		font-size: 14px;
		text-align: center;
		/*padding: 0 1.8%;*/
		padding: 62px 2% 24px;
	}
		header > div nav#Gnav ul li:nth-child(5) {
			margin-right: 10px;	
		}
	
	header > div nav#Gnav ul li.inquiry a {
		padding: 52px 0 0 !important;
		display: block;
		/*background:#be0008;*/
		line-height: 1 !important;
		font-size: 14px;
		text-align: center;
		color: #FFFFFF;
		box-sizing: content-box;
	}
	header > div nav#Gnav ul li.tel {
		font-size: 20px;
		padding: 15px 0 0 0;
		right: 160px;
	}
	
	#nav_toggle{
		display: none;
	}

}

@media screen and (max-width: 896px) {
	
	header > div nav#Gnav {
		width: 616px;
	}
	header > div nav#Gnav ul li {
		position: relative;
		line-height: 1;
		font-size: 13px;
		text-align: center;
		/*padding: 0 1.8%;*/
		padding: 65px 2% 22px;
	}
	header > div nav#Gnav ul li.inquiry {
		width: 120px;
		/*padding: 0 0 12px !important;*/
	}
	header > div nav#Gnav ul li.inquiry a {
		padding: 60px 0 0 !important;
		display: block;
		/*background:#be0008;*/
		line-height: 1 !important;
		font-size: 13px;
		text-align: center;
		color: #FFFFFF;
		box-sizing: content-box;
	}
	header > div nav#Gnav ul li.tel {
		font-size: 18px;
		padding: 15px 0 0 0;
		right: 140px;
	}
	
	#nav_toggle{
		display: none;
	}
	
}


@media (min-width: 751px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}


@media screen and (max-width: 480px) {
	
header > div {
	position: relative;
	width: 100%;
	height: auto;
	display: flex;
	/*text-align: center;*/
	margin: 0 auto;
	padding: 3% 4%;
	border-bottom: 1px solid #EEEEEE;
}
	header > div h1 img {
		max-width: 115px;
		width: 100%;
	}
	header > div nav#Gnav {
		display: none;
		position: absolute;
		width: 100%;
		/*background: #006598;*/
		top:70px;
		background: #FFFFFF;
		left: 0;
		z-index: 1000;
	}
	header > div nav#Gnav ul {
		display: block;
		margin: 0 auto;
		width: 90%;
	}
	header > div nav#Gnav ul li {
		margin: 0 auto;
		text-align: center;
		border-bottom: 1px solid #EEEEEE;
		padding: 0;
	}
	header > div nav#Gnav ul li.tel {
		position: inherit !important;
		max-width: 100% !important;
		width: 100% !important;
		color: #FFFFFF !important;
		background: #666666 !important;
		padding: 0;
		margin: 3% 0 7%;
	}
	header > div nav#Gnav ul li.tel a span {
		color: #FFFFFF;
	}
		
		header > div nav#Gnav ul li.tel a {
			padding: 28px 0 26px !important;
			width: 100% !important;
			display: block;
			line-height: 0;
			font-size: 20px;
			font-style: italic;
			text-align: center;
			color: #FFFFFF;
		}
		
	header > div nav#Gnav ul li.inquiry {
		max-width: 100% !important;
		width: 100% !important;
		background: #be0008 !important;
		padding: 0;
		display: block !important;
		margin: 7% 0 3%;
	}
		header > div nav#Gnav ul li.inquiry a {
			padding: 20px 0 !important;
			width: 100% !important;
			display: block;
			line-height: 0;
			font-size: 16px;
			text-align: center;
			/*box-sizing: content-box !important;*/
		}
	header > div nav#Gnav ul li:last-child {
		border: none;
	}
	header > div nav#Gnav ul li a {
		padding: 20px 0 !important;
		width: 100% !important;
		display: block; 
		text-align: center;
		font-size: 16px;
	}
	
/*開閉ボタン*/
	#nav_toggle{
		display: block;
		width: 30px;
		height: 22px;
		position: relative;
		/*top: 4px;*/
		z-index: 100;
	}
	#nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 3px;
		background: #333333;
		position:absolute;
		width: 100%;
		left: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;	
	}
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:10px;
	}
	#nav_toggle span:nth-child(3){
		top:20px;
	}
	
/*開閉ボタンopen時*/
	.open #nav_toggle span:nth-child(1) {
		top: 12px;
		-webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	.open #nav_toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav_toggle span:nth-child(3) {
		top: 12px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}
	
	
}






/* ========================================================================== */
/* FOOTER
   ========================================================================== */
   
footer {
	width: 100%;
	/*z-index: 1000;*/
	background:#f0f0f0;	
}


footer nav {
	width: 100%;
	background: #7c7c7c;
}
	footer nav ul {
		position: relative;
		max-width: 1200px;
		width: 100%;
		height: auto;
		margin: 0 auto;
		text-align: center;
	}

		footer nav ul li {
			line-height: 1;
			font-size: 13px;
			text-align: left;
			float: left;
			padding: 15px 0;
			margin: 0 3% 0 0;
			background: url(../img/common/fl_mark.svg) no-repeat left center;
			background-size: auto 25%;
		}
		footer nav ul li a {
			color: #FFFFFF;
			text-decoration: none;
			padding: 0 0 0 20px;
			display: block;
			font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
		}
		footer nav ul li:last-child {
			position: absolute;
			top: 0;
			right: 0;
			margin: 0;
			padding: 15px 15px;
			background: url(../img/common/fl_mark.svg) no-repeat 15px center #999999;
			background-size: auto 25%;
		}




footer > div.footer-inner {
	/*position: relative;*/
	max-width: 1200px;
	width: 100%;
	height: auto;
	/*display: flex;*/
	/*justify-content: space-between;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;*/
	/*align-items: center;
	-webkit-align-items: center;
	-ms-align-items: center;
	padding: 1.5% 0;
	box-sizing: border-box;
	background: #DDD;*/
	margin: 0 auto;
	/*padding: 3% 0;*/
	text-align: center;
}


	footer > div#ft-contact {
		height: auto;
	}
		footer > div#ft-contact h2 {
			width: 200px;
			height: 130px;
			float: left;
			color: #333333;
			background: url(../img/common/ft-contact-bk.png) right no-repeat;
			text-align: left;
			padding-top: 40px;
			font-family: "bebas", sans-serif;
			font-weight: normal;
			letter-spacing: .1em;
		}
		footer > div#ft-contact h2 span {
			color: #be0008;
		}
		footer > div#ft-contact h2 p {
			font-size: 14px;
			color: #666666;
			padding: 8px 0 0 0;
			letter-spacing: normal;
  			font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
		}
		
		footer > div#ft-contact div {
			position: relative;
			max-width: 1000px;
			width: 100%;
			float: left;
			padding-top: 40px;
			
			display: flex;
			justify-content: space-between;
			-webkit-justify-content: space-between;
			-ms-justify-content: space-between;
			
		}
			footer > div#ft-contact div p.c-msg {
				max-width: 540px;
				width: 100%;
				font-size: 15px;
				text-align: left;
				line-height: 1.4;
			}
			footer > div#ft-contact div ul {
				width: 460px;
				/*height: 50px;*/
				list-style: none;
				
				/*float: right;*/
				
				/*
				position: absolute;
				top: 40px;
				right: 0;
				*/
			}
				footer > div#ft-contact div ul li.tel {
					width: 49%;
					margin-right: 1%;
					float: left;
					
					font-family: "bebas", sans-serif;
					font-weight: normal;
					letter-spacing: .06em;
					font-size: 26px;
					text-align: left;
					color: #333333;
				}
					footer > div#ft-contact div ul li.tel span { font-size: 18px;}
					footer > div#ft-contact div ul li.tel p {
						font-size: 12px;
						color: #666666;
						padding: 8px 0 0 0;
						letter-spacing: normal;
						font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
					}
				footer > div#ft-contact div ul li.btn {
					width: 49%;
					margin-left: 1%;
					float: left;
				}
				footer > div#ft-contact div ul li.btn a {
					font-size: 16px;
					color: #FFFFFF;
					text-decoration: none;
					background: #be0008;
					border-radius: 3px;        /* CSS3草案 */  
					-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
					-moz-border-radius: 3px;   /* Firefox用 */
					display: block;
					padding: 16px 0;
					font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
					
					background: -moz-linear-gradient(top left, #be0008, #a00007); 
					background: -webkit-linear-gradient(top left, #be0008, #a00007); 
					background: linear-gradient(to bottom right, #be0008, #a00007);
		
				}
				footer > div#ft-contact div ul li.btn a:hover {
					filter:alpha(opacity=70);
					-moz-opacity: 0.7;
					opacity: 0.7;
				}
		
		
	footer > div#ft-address {
		padding: 50px 0;
		background: #fff;
		/*padding: 3% 0;*/
	}

	footer > div#ft-address > div.footer-inner {
		max-width: 1200px;
		width: 100%;
		margin: 0 auto;
	}
	
	footer > div#ft-address dl {
		float: left;
		width: 50%;
	}
		footer > div#ft-address dl dt {
			line-height: 1;
			font-size: 15px;
			text-align: left;
			color: #333333;
			padding-bottom: 8px;
		}
		footer > div#ft-address dl dd {
			line-height: 1.4;
			font-size: 14px;
			text-align: left;
			color: #666666;
		}
	footer > div#ft-address address {
		float: right;
		width: 50%;
		font-style: normal;
		font-size: 13px;
		text-align: right;
		/*line-height: 0;*/
	}
		footer > div#ft-address address span {
			font-size: 20px;
			/*line-height: 0;*/
			vertical-align: middle;
		}




@media screen and  (min-width: 1024px) and (max-width: 1200px) {
	
		footer > div#ft-contact div {
			max-width: 800px;
			width: 100%;
		}
			footer > div#ft-contact div p.c-msg {
				width: 43.5%;
				margin-right: 2%;
			}
			footer > div#ft-contact div ul {
				width: 55.5%;
			}
	
}



@media screen and (max-width: 1024px) {
	/*
	footer > div { 
		margin: 0 2%;
	}
	*/
	
		footer nav ul {
			width: 94%;
		}
		
	footer > div dl {
		width:63% !important;
		margin-left: 2%;
	}
	footer > div address {
		width:33% !important;
		margin-right: 2%;
	}
		
	footer > div#ft-contact {
		height: auto;
		display: block;
	}
		footer > div#ft-contact h2 {
			width: 100%;
			height: auto;
			background: none;
			text-align: center;
			padding: 40px 0 25px;
		}
		
	footer > div#ft-contact div {
		position: relative;
		width: 90%;
		float: none;
		padding: 10px 0 40px;
		margin: 0 auto;
		display: block;
		
	}
		footer > div#ft-contact div p.c-msg {
			max-width: none;
			width: 100% !important;
			font-size: 15px;
			text-align: center;
			line-height: 1.4;
			padding-bottom: 20px;
		}
		
		footer > div#ft-contact div ul {
			width: 460px;
			/*height: 50px;*/
			list-style: none;
			margin: 0 auto;
			
			/*float: right;*/
			
			/*
			position: absolute;
			top: 40px;
			right: 0;
			*/
		}
}


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

	footer nav {
		width: 100%;
		background: #7c7c7c;
	}
		footer nav ul {
			width: 100%;
			/*height: auto;
			margin: 0 auto;
			text-align: center;*/
			
			/*display: flex;
			justify-content: space-between;
			-webkit-justify-content: space-between;
			-ms-justify-content: space-between;
			align-items: center;
			-webkit-align-items: center;
			-ms-align-items: center;*/
		}
	
			footer nav ul li {
				width: 50%;
				line-height: 1;
				font-size: 14px;
				text-align: left;
				float: left;
				padding: 5% 0;
				margin: 0;
				background: url(../img/common/fl_mark.svg) no-repeat 10px center;
				background-size: auto 30%;
				box-sizing: border-box !important;

			}
			footer nav ul li a {
				color: #FFFFFF;
				text-decoration: none;
				padding: 0 0 0 32px;
				display: block;
			}
				footer nav ul li:first-child {
					border-bottom: 1px solid #999999;
				}
				footer nav ul li:nth-child(2) {
					border-bottom: 1px solid #999999;
					border-left: 1px solid #999999;
				}
				footer nav ul li:nth-child(3) {
					border-right: 1px solid #999999 !important;
				}
				footer nav ul li:last-child {
					position: inherit;
					padding: 5% 0;
					background: url(../img/common/fl_mark.svg) no-repeat 10px center #999999;
					background-size: auto 30%;
				}


	footer > div {
		width: 100%;
		height: auto;
		/*display: flex;
		text-align: center;*/
		margin: 0 auto;
		padding: 5% 0 !important;
	}
	
		footer > div#ft-contact {
			height: auto;
		}
			footer > div#ft-contact h2 {
				width: 100%;
				height: auto;
				background: none;
				text-align: center;
				padding-top: 5%;
			}
		
			footer > div#ft-contact div ul {
				width: 100%;
				/*height: 50px;*/
				list-style: none;
				margin: 0 auto;
				
				/*float: right;*/
				
				/*
				position: absolute;
				top: 40px;
				right: 0;
				*/
			}
			footer > div#ft-contact div ul li.tel {
				width: 48%;
				margin-right: 2%;
				float: left;
				
				font-family: "bebas", sans-serif;
				font-weight: normal;
				letter-spacing: .01em;
				font-size: 24px;
				text-align: right;
				color: #333333;
			}
				footer > div#ft-contact div ul li.tel p {
					font-size: 10px;
					padding: 8px 0 0 0;
				}
				footer > div#ft-contact div ul li.tel span { font-size: 12px;}
				
			footer > div#ft-contact div ul li.btn {
				width: 48%;
				margin-left: 2%;
				float: left;
			}
				footer > div#ft-contact div ul li.btn a {
					font-size: 14px;
					padding: 16px 0;
				}
	
	
	
		footer > div#ft-address dl {
			width: 90% !important;
			display: block;
			text-align: center;
			float: none !important;
			border-bottom: 1px solid #DDDDDD;
			margin: 0 auto 5%;
			padding-bottom: 5%;
		}
			footer > div#ft-address dl dt,
			footer > div#ft-address dl dd {
				display: block;
				text-align: center;
			}
			
		footer > div#ft-address address {
			width: 90% !important;
			display: block;
			text-align: center;
			margin: 0 auto;
			float: none !important;
		}
		
	.sp-only { display: block !important; }

}