@charset "utf-8";

.pc{display: block;}
.sp{display: none;}
.pc_di{display: inline;}
.sp_di{display: none;}

/* Inner
-----------------------------------*/
.inner{
	width: 840px;
	margin: 0 auto;
}
.inner1000{
	width: 1000px;
	margin: 0 auto;
}
/* Header
-----------------------------------*/
.hdr_wrap{
	width: 100%;
}
.hdr_wrap.home{
	position: absolute;
	bottom: 0;
	left: 0;
}
header{
	background: #f0f0f0;
	position: relative;
	width: 100%;
	z-index: 9999;
}
header.active{
	bottom: auto;
	top: 0;
	position: fixed;
}
header .hdr_inner{
	position: relative;
	display: table;
	width: 100%;
}
header .logo{
	display: table-cell;
	vertical-align: middle;
	padding: 10px 15px;
}
header .hdr_right{
	display: table-cell;
	vertical-align: middle;
	text-align: right;
}
header .hdr_right .gnav01{
	display: inline-block;
}
header .hdr_right .gnav01 li{
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	border-left: 1px solid  #ccc;
}
header .hdr_right .gnav01 li a{
	padding: 0 15px;
	color: #444;
	text-decoration: none;
	text-align: center;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
header .hdr_right .gnav01 li a:hover{
	color: #247395;
}
header .hdr_right .gnav02{
	display: inline-block;
	margin-right: 15px;
}
header .hdr_right .gnav02 li{
	display: inline-block;
	font-size: 24px;
	line-height: 100%;
	padding: 0 5px;
}
header .hdr_right .gnav02 li a{
	text-decoration: none;
	vertical-align: middle;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
header .hdr_right .gnav02 li a:hover{
	color: #247395;
}
header .switch{
	display: none;
}
#title_area{
	margin-top: 40px;
	padding: 50px 0 10px 0;
	position: relative;
	border-bottom: 1px solid  #fee5c8;
}
#title_area:after{
	content: "";
	position: absolute;
	height: 40px;
	width: 2px;
	background: #F08307;
	top: 0;
	left: 50%;
	margin-left: -1px;
}
#title_area h1{
	color: #F08307;
	font-size: 32px;
	text-align: center;
}
.slide_menu{
	text-align: left;
	display: none;
	width: 86%;
	position: absolute;
	top: 100%;
	right: 0;
	height: auto;
	background: #fff;
	padding: 5% 7% 7% 7%;
}
.slide_menu  ul{
	clear: both;
}
.slide_menu  ul li{
	border-bottom: 1px solid  #ccc;
	font-size: 14px;
}
.slide_menu  ul li a{
	position: relative;
	display: block;
	padding: 15px 5px;
	color: #666;
	text-decoration: none;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
.slide_menu  ul li a:after{
	position: absolute;
	top: 50%;
	color: #666;
	right: 5px;
	display: block;
	font-weight: 900;
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	     -o-transform: translateY(-50%);
	        transform: translateY(-50%);
	content:'\f105';
	font-family: FontAwesome, "Font Awesome 5 Free";
	font-weight: 900;
}
.slide_menu  ul li a:hover{
	color: #f08307;
}
.slide_menu  ul li a:hover:after{
	color: #F08307;
}
.contact_nav{
	border-top: 1px solid  #247395;
	border-bottom: 1px solid  #247395;
}
.contact_nav ul{
	display: flex;
	-webkit-flex-direction: row;
	    -ms-flex-direction: row;
	        flex-direction: row;
}
.contact_nav li{
	width: 50%;
	border-right: 1px solid  #247395;
	text-align: center;
	-webkit-flex-grow: 1;
	        flex-grow: 1;
}
.contact_nav li:last-child{
	border-right: none;
}
.contact_nav li p{
	font-size: 20px;
	text-align: center;
}
.contact_nav li p:last-child{
	margin-bottom: 0;
}
.contact_nav li p a{
	background: #f5f5f5;
	color: #247395;
	padding: 20px 10px;
	display: block;
	text-decoration: none;
	vertical-align: middle;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
.contact_nav li p a svg,
.contact_nav li p a span{
	vertical-align: middle;
}
.contact_nav li p a svg path{
	fill: #247395;
}
.contact_nav li p a:hover{
	background: #247395;
	color: #f5f5f5;
}
.contact_nav li p a:hover svg path{
	fill: #f5f5f5;
}

/* Bottom Content
-----------------------------------*/
#bottom_content{
	height: 300px;
	background: url(../img/common/bg_bottmcontent.jpg) no-repeat center center;
	color: #FFF;
	padding: 60px 0;
	margin-bottom: 100px;
}
#bottom_content h2{
	font-size: 32px;
	text-align: center;
	margin-bottom: 30px;
}
#bottom_content .btn{
	max-width: 680px;
	margin: 0 auto 30px auto;
	text-align: center;
}
#bottom_content .btn a{
	position: relative;
	text-decoration: none;
	display: block;
	background: #F8930E;
	-webkit-border-radius: 50px;
	        border-radius: 50px;
	color: #fff;
	padding: 20px 0;
	font-size: 36px;
	font-weight: bold;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
#bottom_content .btn a:after{
	position: absolute;
	top: 50%;
	right: 30px;
	display: block;
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	     -o-transform: translateY(-50%);
	        transform: translateY(-50%);
	content:'\f105';
	font-family: FontAwesome, "Font Awesome 5 Free";
	font-weight: 900;
	color:#fff;
}
#bottom_content .btn a:hover{
	color: #F8930E;
	background: #fff;
}
#bottom_content .btn a:hover:after{
	color: #F8930E;
}
#bottom_content .tel{
	text-align: center;
}
#bottom_content .tel .p01{
	font-size: 20px;
	margin-bottom: 10px;
}
#bottom_content .tel .p02{
	font-size: 48px;
	font-weight: bold;
	line-height: 120%;
}
#bottom_content .tel .p02 i{
	font-size: 36px;
	vertical-align: middle;
}
#bottom_content .tel .p02 span{
	vertical-align: middle;
}
#bottom_content .tel .p02 a{
	color: #FFF;
}

/* Footer
-----------------------------------*/
footer{
	vertical-align: middle;
}
footer .totop{
	background: #247395;
	text-align: center;
	padding: 20px 0;
}
footer .ftr_bottom{
	padding: 35px 0;
	position: relative;
}
footer .ftr_bottom .ftr_nav{
	float: right;
	margin-right: 30px;
}
footer .ftr_bottom .ftr_nav li{
	float: left;
}
footer .ftr_bottom .ftr_nav li a{
	padding: 0 10px;
}
footer .ftr_bottom .copyright{
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	   -moz-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	     -o-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}

.sb-slidebar{
	color: #fff;
	background: #247395 !important;
}
.sb-slidebar .sb-close{
	width: 20%;
	cursor: pointer;
	float: right;
	text-align: right;
}
.sb-slidebar ul{
	clear: both;
	border-top: 1px solid  #ccc;
}
.sb-slidebar ul li{
	border-bottom: 1px solid  #ccc;
	font-size: 14px;
	font-weight: bold;
}
.sb-slidebar ul li a{
	position: relative;
	display: block;
	padding: 15px 20px;
	color: #fff;
	text-decoration: none;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
.sb-slidebar ul li a:after{
	position: absolute;
	top: 50%;
	right: 30px;
	display: block;
	font-weight: 900;
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	     -o-transform: translateY(-50%);
	        transform: translateY(-50%);
	content:'\f105';
	font-family: FontAwesome, "Font Awesome 5 Free";
	font-weight: 900;
}
.sb-slidebar ul li a:hover{
	color: #fff;
}
.sb-slidebar ul li a:hover:after{
	color: #fff;
}
#map{
	vertical-align: middle;
}
#map iframe{
	width: 100%;
	height: 480px;
	vertical-align: middle;
}
#breadcrumbs{
	padding: 10px 0;
	font-size: 12px;
}

/* 1250px以下の場合（ナビゲーションがはみ出す） */
/*@media screen and (max-width: 1250px) {
	header .hdr_right .gnav01{
		display: none;
	}
	header .switch{
		display: block;
		float: right;
		max-width: 80px;
		cursor: pointer;
	}
	header .switch .open{
		display: block;
	}
	header .switch .close{
		display: none;
	}
	header .switch.active .open{
		display: none;
	}
	header .switch.active .close{
		display: block;
	}
}*/

/* 768px以下の場合 */
@media screen and (max-width: 750px) {
	.pc{display: none;}
	.sp{display: block;}
	.pc_di{display: none;}
	.sp_di{display: inline;}

	/* Inner
	-----------------------------------*/
	.inner,
	.inner1000{
		width: auto;
		padding: 0 7%;
	}

	/* Header
	-----------------------------------*/
	.hdr_wrap.home{
		position: static;
	}
	header{
		height: auto;
	}
	header .switch{
		display: block;
		float: right;
		max-width: 80px;
		cursor: pointer;
	}
	header .switch .open{
		display: block;
	}
	header .switch .close{
		display: none;
	}
	header .switch.active .open{
		display: none;
	}
	header .switch.active .close{
		display: block;
	}
	header .logo{
		width: 43%;
		padding: 0 0 0 5%;
	}
	header .hdr_right .gnav01{
		display: none;
	}
	header .hdr_right .gnav02{
		display: none;
	}
	header .hdr_right .gnav02 li{
		width: 50%;
		height: auto;
	}
	header .hdr_right .gnav02 li a{
		height: auto;
		font-size: 3vw;
	}
	header .hdr_right .gnav02 li:first-child a{
		border: none;
	}
	header .hdr_right .gnav02 li:last-child a:hover{
		opacity: 1;
	}
	header .switch{
		max-width: 100%;
		width: 30%;
		text-align: center;
	}

	/* Bottom Content
	-----------------------------------*/
	#bottom_content{
		height: auto;
		background: url(../img/common/bg_bottmcontent_sp.jpg) no-repeat center center;
		padding: 30px 0;
		-webkit-background-size: cover;
		     -o-background-size: cover;
		        background-size: cover;
	}
	#bottom_content h2{
		font-size: 28px;
		margin-bottom: 15px;
	}
	#bottom_content .btn{
		margin-bottom: 20px;
	}
	#bottom_content .btn a{
		-webkit-border-radius: 10px;
		        border-radius: 10px;
		padding: 10px 0;
		font-size: 26px;
		font-weight: bold;
	}
	#bottom_content .btn a:after{
		right: 20px;
	}
	#bottom_content .tel .p01{
		font-size: 16px;
		margin-bottom: 0;
	}
	#bottom_content .tel .p02{
		font-size: 30px;
	}

	/* Footer
	-----------------------------------*/
	footer .totop{
		padding: 10px 0;
	}
	footer .ftr_bottom{
		padding-bottom: 0;
	}
	footer .ftr_bottom .ftr_nav{
		float: none;
		text-align: right;
		margin: 0;
		border-top: 1px solid  #333;
	}
	footer .ftr_bottom .ftr_nav li{
		float: left;
		text-align: center;
		width: 50%;
	}
	footer .ftr_bottom .ftr_nav li a{
		display: block;
		padding: 10px;
	}
	footer .ftr_bottom .copyright{
		text-align: center;
		margin-bottom: 35px;
		float: none;
		position: static;
		-webkit-transform: none;
		   -moz-transform: none;
		    -ms-transform: none;
		     -o-transform: none;
		        transform: none;
	}
}