@charset "utf-8";

/* CSS Document */
/* reset
==================================== */
html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	margin: 0 auto;
	text-align: left;
	padding: 0 0 0 0;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	font-size:16px;
	background: #ffffff;
}
img{
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	border:0;
}
 h1, h2, h3, h4, h5, h6, p, br, ul, ol, li, dl, dt, dd, table, th, td, form, input, select{
	margin:0;
	padding:0;
	border:0;
	font-size: 16px;
	line-height:1.5em;
	letter-spacing:0;
	font:inherit;
	vertical-align:baseline;
	outline:none;
	color:#333;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
 ol,ul,ol,ul{
	list-style:none;
}
 table,table{
	border-collapse:collapse;
	border-spacing:0;
}
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,article, article, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: top;
	background: transparent;
}
article,article,details,figcaption,figure,footer,header,hgroup,menu,nav,section { 
	display: block;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	text-decoration: none;
	outline: none;
	color:#00a0e9;
	-webkit-transition: 0.3s ease-in-out;  
	-moz-transition: 0.3s ease-in-out;  
	-o-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;
}
a:hover {
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
a img:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
aside .current{
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
.non_hover a img:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}
.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}
.clearfix {
	display: inline-block;
	display: block;
}
* html .clearfix {
	height: 1%;
}
/* layout -----------------------------------------------------*/
.pc_obj {display: block;}
.sp_obj {display: none;}
.alignCenter {text-align: center !important;}
.alignLeft {text-align: left !important;}
.alignRight {text-align: right !important;}
.alignRight_pc {text-align: right !important;}
.clB{color: #0062b2;}
.clG{color: #009245;}
.clO{color: #f2902c;}
.bd_b{border-bottom: 2px solid #ff7bac;}
.fBold{font-weight: bold;}
.f_left{float: left;}
.f_right{float: right;}
.ft_14{font-size: 14px;}
.ft_20{font-size: 20px;}

.mb00 { margin-bottom: 0 !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }


/* --------------------------------------------------------------------------*/
/* ■■■共通style■■■ -----------------------------------------------------------*/
/* --------------------------------------------------------------------------*/
.inner{
	margin: 0 auto;
	width: 100%;
	max-width: 1170px;
	overflow: hidden;
}
.img_r {
	float: right;
	margin: 0 0em 0.5em 1em;
}
.img_l {
	float: left;
	margin: 0 1em 0.5em 0em;
}
.t_indent {
	text-indent: -1em;
	margin-left: 1em;
}




.link_button {
	display: inline-block;
	padding: 0.2em 1em;
	color: #fff;
	background: #002977;
}

.link_map {
	display: inline-block;
	padding: 0.2em 1em;
	color: #fff;
	background: #002977;
}

.link_map:before {
	display: inline-block;
	font-family: FontAwesome;
	content: "\f041";
	font-weight: normal;
	font-style: normal;
	margin-right: 0.5em;
}
.link_link:before {
	font-family: FontAwesome;
	content: "\f138\00a0";
}




.icon_check li:before {
	display: inline-block;
	font-family: FontAwesome;
	content: "\f046";
	font-weight: normal;
	font-style: normal;
	margin-right: 0.5em;
	color: #ffa500;
}
.icon_link:before {
	display: inline-block;
	font-family: FontAwesome;
	content: "\f0da";
	font-weight: normal;
	font-style: normal;
	margin-right: 0.5em;
}
.in_list li {
	display: inline-block;
	margin: 0 1em 0.2em;
}
.icon_tel:before {
	display: inline-block;
	font-family: FontAwesome;
	content: "\f098";
	font-weight: normal;
	font-style: normal;
	margin-right: 0.5em;
}
.fa{
	vertical-align: middle;
}
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
#pageTop a {
  display: block;
  z-index: 999;
  padding: 5px 10px;
	border-radius: 8px;
  background-color: #002977;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
#pageTop a:before{
	content:"\f0aa";
	font-family:FontAwesome;
	padding-right:0.3em;
	font-size:1.5em;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.flex{
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
}
.flex_wrap{
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.justify_center{
	-webkit-justify-content:center;
	justify-content:center;
}
.justify_between{
	-webkit-justify-content:space-between;
	justify-content:space-between;
}
.justify_around{
	-webkit-justify-content:space-around;
	justify-content:space-around;
}
.aitems_center{
	align-items: center;
	-webkit-align-items: center;
}
.aitems_end{
	align-items: flex-end;
	-webkit-align-items: flex-end;
}
.column2{
	width: 47%;
}
.flex_img{
	max-width: 250px;
	width: 32%;
}
.flex_txt{
	width: 65%;
}






/* PCで左→右に配置／SPで上→下に配置 */
.flex_LRTB{
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	-webkit-flex-direction: row;
}

/* PCで右→左に配置／SPで上→下に配置 */
.flex_RLTB{
	display: flex;
	display: -webkit-flex;
	flex-direction:row-reverse;
	-webkit-flex-direction: row-reverse;
}
.flex1 { flex: 1 1 auto; max-width: 100%; }
.flex3 { flex: 3 1 auto; max-width: 30%; }
.flex4 { flex: 4 1 auto; max-width: 40%; }
.flex5 { flex: 5 1 auto; max-width: 50%; }
.flex6 { flex: 6 1 auto; max-width: 60%; }
.flex7 { flex: 7 1 auto; max-width: 70%; }


/* ==== flexには両端余白を付ける ==== */
.flex1, .flex3, .flex4, .flex5, .flex6, .flex7, .flex3333, .flex6667 { padding:0 1%; }


.nospd { padding:0 !important; }



.sp_nav {
	display: none;
}





/* TABLET
================================================================================================================== */
@media only screen and (max-width: 1169px) {
	body {
		width: 100%;
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
		font-size: 92%;
	}
	#pageTop {
		bottom: 10px;
		right: 10px;
	}
	.pc_obj {
		display: none;
	}


}
/* sp
================================================================================================================== */
@media only screen and (max-width: 767px){
	body {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	.pc_obj {
		display: none;
	}
	.sp_obj {
		display: block;
	}
	.alignRight_pc {
		text-align: left !important;
	}
	.alignLeft_sp {
		text-align: left;
	}
	.f_left,.f_right{
		float: none;
	}
	.img_r {
		float: none;
		margin: 0 auto 1em auto;
		display: block;
		text-align: center;
	}
	.img_l {
		float: none;
		margin: 0 auto 1em auto;
		text-align: center;
	}
	.mr1 { margin-right: 0 !important; }
	.inner,.inner_indent{
		margin: 0 auto;
		width: 98%;
	}
	.column2{
		width: 100%;
		margin: 0 auto;
	}
	.flex_wrap_sp{
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.flex_img{
		max-width: inherit;
		width: 100%;
		text-align: center;
	}
	.flex_txt{
		width: 100%;
	}

	/* ==== flex setting SP ==== */
	.flex_LRTB{
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	.flex_RLTB{
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	.flex1 { flex: 1 1 auto; max-width: 100%; }
	.flex3 { flex: 3 1 auto; max-width: 100%; }
	.flex4 { flex: 4 1 auto; max-width: 100%; }
	.flex5 { flex: 5 1 auto; max-width: 100%; }
	.flex6 { flex: 6 1 auto; max-width: 100%; }
	.flex7 { flex: 7 1 auto; max-width: 100%; }
	.flex1, .flex3, .flex4, .flex6, .flex5, .flex7, .flex3333, .flex6667 { padding:0 !important;}
	
	.sp_nav {
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
		box-sizing: border-box;
		display: flex;
	}
	.sp_nav li {
		width: 50%;
		background: #1864B2;
		border-top: 2px solid #fff;
		box-sizing: border-box;
	}
	.sp_nav li a {
		display: flex;
		justify-content: center;
		align-items: center;
		color: #fff;
		font-family: "游明朝 Medium", "YuMincho Medium";
		font-size: 1.1em;
		width: 100%;
		height: 48px;
	}
	.sp_nav li a span::before {
		display: inline-block;
		font-family: FontAwesome;
		margin-right: 0.5em;
	}
	.sp_nav li.tel {
		border-right: 1px solid #fff;
	}
	.sp_nav li.tel a span::before {
		content: "\f2a0";
	}
	.sp_nav li.reserve {
		border-left: 1px solid #fff;
	}
	.sp_nav li.reserve a span::before {
		content: "\f274";
	}
	
	#pageTop {
    bottom: 60px;
    right: 10px;
	}
}
