@charset "UTF-8";
/*-----------------------------------------
共通設定項目
-----------------------------------------*/
* {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.over {
	overflow: hidden;
	-o-text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.flex {
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display:-webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
}
.warp {flex-wrap: wrap;}
html{
	font-size: 62.5%;
	scroll-behavior: smooth;
}
body {
	/*-webkit-text-size-adjust: 100%;*/
	padding: 0;
	margin: 0;
	color: #333;
	font-size: 1.4rem;
	line-height: 180%;
	font-family: "M PLUS Rounded 1c";
	/*font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	text-align: justify;
	text-justify: inter-ideograph;
}
/*
@media screen and ( min-width:1100px){
	body {
		background-image: url("img/bg.jpg");
		background-size: 58%;
		background-repeat: repeat-x;
		background-position: center bottom 500px;
	}
}
*/
#cont_bg {
	position: absolute;
	top: 0;
	width: 100%;
	height: 80%;
	/*
	background-image: url("img/bg2.jpg");
	background-position: center -440px;
	background-repeat: no-repeat;
	background-size: auto;
	*/
}
@media screen and ( max-width:1460px){#cont_bg {display: none;}}
img {vertical-align: bottom;}
/*画像エフェクト*/
.img_wrap{
  width: 100%;
  height: auto;
  margin: 0 auto;
  overflow: hidden;
}
.img_wrap img{
  width: 100%;
  cursor: pointer;
  transition-duration: 0.5s;
}
.img_wrap:hover img{
  transform: rotateY( 360deg );
  transition-duration: 0.5s;
}
.img_wrap2{
  width: 100%;
  height: auto;
  margin: 0 auto;
  overflow: hidden;
}
.img_wrap2 img{
  width: 100%;
  cursor: pointer;
  transition-duration: 0.5s;
}
.img_wrap2:hover img{
  transform: rotateX( 360deg );
  transition-duration: 0.5s;
}
.img_wrap3{
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
.img_wrap3 img{
  width: 100%;
  transform: scale(1.1);
  cursor: pointer;
  filter: grayscale(0);
  transition-duration: 0.5s;
}
.img_wrap3 img:hover{
  /*filter: grayscale(100%);*/
  filter: brightness(110%);  	
  transition-duration: 0.5s;
}
hr.style1 {
	margin: 2px auto;
	border: 0;
	height: 1px;
	background-image: -webkit-linear-gradient(left,rgba(255,255,255,.5), rgba(255, 102, 153, 1), rgba(255,255,255,.5));
	background-image:    -moz-linear-gradient(left,rgba(255,255,255,.5), rgba(255, 102, 153, 1), rgba(255,255,255,.5));
	background-image:     -ms-linear-gradient(left,rgba(255,255,255,.5), rgba(255, 102, 153, 1), rgba(255,255,255,.5));
	background-image:      -o-linear-gradient(left,rgba(255,255,255,.5), rgba(255, 102, 153, 1), rgba(255,255,255,.5));
}
/*インナーブロック*/
.inner_cont {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
@media screen and (orientation: landscape) {
	h1 {
	position: relative;
	z-index: 100;
	width: 100%;
	margin: 0 0 30px;
	padding: 5px 1%;
	font-size: 1.6rem;
	/*background-color: #FFF;*/
	color: #F69;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
	}
	/*ヘッダー*/
	#head_cont {
		position: relative;
		width: 100%;
		padding: 10px 0 30px;
		/*background-color: #FFF;*/
	}
		#head_cont > .inner_cont > #logo {
			position: relative;
			width: 40%;
			padding-left: 5%;
		}
		#head_cont > .inner_cont > #tel {
			position: relative;
			width: 60%;
			margin-left: 10%;
			font-size: 4.4rem;
			font-weight: bold;
			letter-spacing: 0.2rem;
			color: #666;
			text-align: right;
			line-height: 100%;
		}@media screen and ( max-width:900px){#head_cont > .inner_cont > #tel {font-size:  3.8rem;margin-right: 4%;}}
			#head_cont > .inner_cont > #tel > span {
				position: relative;
				font-size: 1.6rem;
				top:8px;
			}@media screen and ( max-width:800px){#head_cont > .inner_cont > #tel > span {font-size: 1.0rem;}}
	/*スライド*/
	#cont_slide {
		position: relative;
		width: 100%;
		margin-bottom: 40px;
	}
	/*ヘッダーメニュー*/
	#head_menu {
		position: relative;
		width: 100%;
		padding: 8px 0;
		border-top: 1px solid #F69;
		border-bottom: 1px solid #F69;
	}
		#head_menu > .inner_cont > a {
			position: relative;
			display: inline-block;
 		    transition: 0.5s;
			width: 16.6%;
			padding: 10px 0;
			text-align: center;
			text-decoration: none;
			font-size: 1.5rem;
			font-weight: bold;
			color: #666;
			border-left: 1px dotted #CCC;
			border-right: 1px dotted #CCC;
		}@media screen and ( max-width:800px){#head_menu > .inner_cont > a {font-size: 1.1rem;}}
			#head_menu > .inner_cont > a:hover {color: #F69;font-weight: bold;}
			#head_menu > .inner_cont > a::after {
			position: absolute;
			bottom: 0;
			left: 50%;
			content: '';
			width: 0;
			border-bottom: solid 1px #4fb6cf;
			background-color: #eee;
			transition: 0.5s;
			-moz-transform: translateX(-50%);
			-webkit-transform: translateX(-50%);
			transform: translateX(-50%);
			}
			#head_menu > .inner_cont > a:hover::after {
			width: 90%;
			}
	/*メインコンテンツ*/
	#cont_main {
		position: relative;
		width: 100%;
		max-width: 1000px;
		margin: 40px auto 50px;
		padding: 10px 20px 50px;
	}@media screen and ( min-width:1600px){#cont_main {margin-bottom: 300px;}}
		#cont_main > #leftside {
			position: relative;
			width: 30%;
			margin-right: 3%;
			/*background-color: #FFF;*/
		}
			#cont_main > #leftside > .contents {
				position: relative;
				width: 90%;
				margin: 0 auto;
				padding-bottom: 30px;
			}
				#cont_main > #leftside > .contents > #cont_title {
					position: relative;
					background-color: #F69;
					margin-bottom: 35px;
					padding: 5px 2% 5px 4%;
					border-radius: 8px;
					color:#FFF;
					font-weight: bold;
					font-size: 2rem;
				}@media screen and ( max-width:800px){#cont_main > #leftside > .contents > #cont_title {font-size: 1.4rem;}}
				#cont_main > #leftside > .contents > a {
					position: relative;
					display: block;
					margin: 20px 5% 20px 0;
					padding-left: 5%;
					text-decoration: none;
					color: #333;
					border-left: 3px solid #F69;
					font-size: 1.6rem;
				}@media screen and ( max-width:800px){#cont_main > #leftside > .contents > a {font-size: 1.2rem;}}
					#cont_main > #leftside > .contents > a:hover {color: #F69;font-weight: bold;}
					#cont_main > #leftside > .contents > a::after {
					position: absolute;
					bottom: 0;
					left: 50%;
					content: '';
					width: 0;
					border-bottom: solid 1px #F69;
					background-color: #eee;
					transition: 0.5s;
					-moz-transform: translateX(-50%);
					-webkit-transform: translateX(-50%);
					transform: translateX(-50%);
					}
					#cont_main > #leftside > .contents > a:hover::after {
					width: 90%;
					}
				#cont_main > #leftside > .contents2 {
					position: relative;
					width: 90%;
					margin: 0 auto;
				}
				#cont_main > #leftside > .contents3 > #cont_title {
					position: relative;
					background-color: #F69;
					padding: 5px 2% 5px 4%;
					margin-bottom: 50px;
					border-radius: 8px;
					color:#FFF;
					font-weight: bold;
					font-size: 2rem;
				}@media screen and ( max-width:800px){#cont_main > #leftside > .contents3 > #cont_title {font-size: 1.4rem;}}
				#cont_main > #leftside > .contents2 > #s_icon_cont {
					position: relative;
					width: 100%;
					margin: 10px auto;
				}
					#cont_main > #leftside > .contents2 > #s_icon_cont > .s_icon {
						position: relative;
						width: 30%;
						margin: 0 10%;
					}
				#cont_main > #leftside > #s_icon_cont > .s_icon > a {
					display: inline-block;
					position: relative;
					width: 100%;
					height: auto;
					margin: 30px 2% 30px 8%;
				}
				#cont_main > #leftside > .contents3 {
					position: relative;
					width: 90%;
					margin: 0 auto;
				}
				#cont_main > #leftside > .contents3 > a {
					display: block;
					position: relative;
					width: 90%;
					height: auto;
					margin: 0 auto 80px;
				}
		#cont_main > #rightside {
			position: relative;
			width: 67%;
			background-color: #FFF;
		}
	/*アクセス*/
	#cont_access {
		position: relative;
		width: 100%;
		margin: 1px auto 1px;
		padding: 20px 0;
		background-color: #F69;
	}
		#cont_access > .inner_cont > #leftside {
			position: relative;
			width: 50%;
			padding: 0 2%;
		}
			#cont_access > .inner_cont > #leftside > #logo > img {width: 50%;}
			#cont_access > .inner_cont > #leftside > #add_data {
				position: relative;
				width: 100%;
				margin: 15px 0;
				font-size: 1.7rem;
                line-height: 180%;
				color: #FFF;
			}@media screen and ( max-width:800px){#cont_access > .inner_cont > #leftside > #add_data {font-size: 1.4rem;}}
				#cont_access > .inner_cont > #leftside > #add_data > span {
					position: relative;
					display: inline-block;
					/*width: 140px;*/
				}
				#cont_access > .inner_cont > #leftside > #add_data > a {text-decoration: none;color: #FFF;}
			#cont_access > .inner_cont > #leftside > #shinryou_time {
				position: relative;
				width: 100%;
				background-color: #FFF;
			}@media screen and ( max-width:800px){#cont_access > .inner_cont > #leftside > #shinryou_time {font-size: 1.2rem;}}
				#cont_access > .inner_cont > #leftside > #shinryou_time > .line {
					position: relative;
					width: 100%;
					padding: 10px 0;
					border-bottom: 1px solid #EEE;
					color: #C66;
				}
					#cont_access > .inner_cont > #leftside > #shinryou_time > .line > span.item {
						width: 30%;
					}
					#cont_access > .inner_cont > #leftside > #shinryou_time > .line > span {
						position: relative;
						display: inline-block;
						width: 10%;
						text-align: center;
					}
			#cont_access > .inner_cont > #leftside > #alldays {
				position: relative;
				padding: 5px 2%;
				text-align: right;
				color: #FFF;
			}
		#cont_access > .inner_cont > #rightside {
			position: relative;
			width: 50%;
			padding: 0 2%;
			margin: 0 auto;
		}
			#cont_access > .inner_cont > #rightside > #maplink {text-align: right;}
			#cont_access > .inner_cont > #rightside > #maplink > a {text-decoration: none;color: #FFF;}
		.footer_menu {
			position: relative;
			width: 100%;
			max-width: 1000px;
			margin: 0 auto;
		}
			.footer_menu > a {
				text-decoration: none;
				color: #C66;
				font-size: 1.4rem;
				display: inline-block;
				margin: 0 10px;
			}
	.footer_menu > a:hover {color: #4fb6cf;}
}
/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (orientation: portrait) {
	h1 {
	position: relative;
	z-index: 100;
	width: 94%;
	margin: 0 3% 10px;
	padding: 5px 0;
	font-size: 1.2rem;
	background-color: #FFF;
	color: #F69;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
	}
	/*ヘッダー*/
	#head_cont {
		position: relative;
		width: 100%;
		padding: 0;
		background-color: #FFF;
	}
		#head_cont > .inner_cont > #logo {
			position: relative;
			width: 50%;
			margin: 0 auto 0 7%;
		}
		#head_cont > .inner_cont > #tel {display: none;}
		/*スライド*/
	#cont_slide {
		position: relative;
		width: 100%;
		margin: 20px auto 10px;
		background-color: #FFF;
	}
	/*ヘッダーメニュー*/
	#head_menu {display: none;}
	/*メインコンテンツ*/
	#cont_main {
		position: relative;
		width: 100%;
		margin: 10px auto ;
		background-color: #FFF;
		min-height: 400px;
	}
		#cont_main > #leftside {display: none;}
		#cont_main > #rightside {
			position: relative;
			width: 98%;
			margin: 0 auto;
			background-color: #FFF;
	}
	/*アクセス*/
	#cont_access {
		position: relative;
		width: 100%;
		margin: 1px auto;
		padding: 20px 0;
		background-color: #F69;
	}
		#cont_access > .inner_cont > #leftside {
			position: relative;
			width: 94%;
			margin: 0 auto;
			padding-bottom: 20px;
		}
			#cont_access > .inner_cont > #leftside > #logo > img {width: 60%;}
			#cont_access > .inner_cont > #leftside > #add_data {
				position: relative;
				width: 96%;
				margin: 0 auto;
				margin: 10px auto;
				font-size: 1.3rem;
				font-weight: bold;
				color: #FFF;
			}#cont_access > .inner_cont > #leftside > #add_data > span {
					position: relative;
					display: inline-block;
					/*width: 100px;*/
				}
				#cont_access > .inner_cont > #leftside > #add_data > a {text-decoration: none;color: #FFF;}
			#cont_access > .inner_cont > #leftside > #shinryou_time {
				position: relative;
				width: 100%;
				background-color: #FFF;
				font-size: 1.1rem;
				font-weight: bold;
			}
				#cont_access > .inner_cont > #leftside > #shinryou_time > .line {
					position: relative;
					width: 100%;
					padding: 10px 0;
					border-bottom: 1px solid #EEE;
					color: #FF9999;
				}
					#cont_access > .inner_cont > #leftside > #shinryou_time > .line > span.item {
						width: 30%;
					}
					#cont_access > .inner_cont > #leftside > #shinryou_time > .line > span {
						position: relative;
						display: inline-block;
						width: 10%;
						text-align: center;
					}
			#cont_access > .inner_cont > #leftside > #alldays {
				position: relative;
				padding: 5px 2%;
				text-align: right;
				color: #FFF;
			}
		#cont_access > .inner_cont > #rightside {
			position: relative;
			width: 100%;
			padding: 0 5%;
			margin: 0 auto 30px ;
		}
			#cont_access > .inner_cont > #rightside > #maplink {text-align: right;}
			#cont_access > .inner_cont > #rightside > #maplink > a {text-decoration: none;color: #FFF;}
	.footer_menu {display: none;}

}
/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/*フェードイメージ*/
.cont100 {
	position: relative;
	width: 100%;
	display: block;
}
/*マップ*/
.ggmap {
position: relative;
padding-bottom: 113%;
padding-top: 30px;
height: 0;
overflow: hidden;
	margin-bottom: 5px;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/*フッター*/
#foot_cont {
	position: relative;
	width: 100%;
	padding: 30px 0;
	background-color: #FFF;;
}@media screen and (min-width:0px) and ( max-width:500px){ #foot_cont  { padding:0 0 70px;}}

	#foot_cont > #copyright { 
		text-align: right;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}@media screen and (min-width:0px) and ( max-width:500px){ #foot_cont > #copyright { text-indent: 5%;}}
/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/*スマフォメニュー*/
/*styling open close button*/
.button {
	position:fixed;
	right: 24px;
	top: 50px;
	z-index:999;
	font-size:60px;
	height: 60px;
}@media screen and ( max-width:800px){.button {top:45px;}}
@media screen and ( max-width:500px){.button {top:50px; right: 4%;font-size: 44px;height: 56px;}}
.button a {
	text-decoration:none;
}
.btn-open:after {
	color:#34B484;
	content:"\f0c9";
	font-family:"FontAwesome";
	transition-property:all 1.5s linear 0s;
	-moz-transition:all 1.5s linear 0s;
	-webkit-transition:all 1.5s linear 0s;
	-o-transition:all 1.5s linear 0s;
}
.btn-open:hover:after {
	color:#34B484;
}
.nav-toggle-btn_label {
	display: inline;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  bottom: 3px;
  font-size: 1.2rem;
font-weight: bold;
  transition: all 500ms ease-in-out;
	color: #34B484;
}
.btn-close:after {
	color:#333;
	content:"\f00d";
	font-family:"FontAwesome";
	transition-property:all .2s linear 0s;
	-moz-transition:all .2s linear 0s;
	-webkit-transition:all .2s linear 0s;
	-o-transition:all .2s linear 0s;
}
.btn-close:hover:after {
	color: #34B484;
}
/*overlay*/
#overlay {
	display:none;
	position:fixed;
	top:0;
	height:100%;
	width:100%;
	background:rgba(255,255,255,1);
	background-position: top center;
	background-image: url("img/overlay_bg.jpg");
	background-size:cover;
	overflow:auto;
	z-index:111;
	padding: 90px 1% 200px;
	font-size: 1.6rem;
	font-weight: bold;
}
#overlay > .contents > #logo {
	position: relative;
	width: 60%;
	max-width: 300px;
	margin: 0 auto 0 10%;
}
	#overlay > .contents {
		position: relative;
		width: 94%;
		max-width: 600px;
		margin: 0 auto;
	}
	#overlay > .contents > #cont_title {
		position: relative;
		margin: 50px auto;
		background-color: #EA8816;
		padding: 5px 2%;
		border-radius: 8px;
	}
		#overlay > .contents > a {
			position: relative;
			display: block;
			margin: 30px 5%;
			text-decoration: none;
			color: #333;
}@media screen and ( max-width:500px){#overlay > .contents > a {font-size: 1.4rem;}}
	#overlay > .contents2 {
		position: relative;
		width: 94%;
		max-width: 600px;
		margin: 50px auto;
	}@media screen and ( max-width:500px){#overlay > .contents2 {margin: 20px auto;}}
				#overlay > .contents2 > #s_icon_cont {
					position: relative;
					width: 94%;
					max-width: 400px;
					margin: 10px auto;
				}
					#overlay > .contents2 > #s_icon_cont > .s_icon {
						position: relative;
						display: block;
						width: 20%;
						margin: 0 15%;
					}@media screen and ( max-width:500px){#overlay > .contents2 > #s_icon_cont > .s_icon {width: 20%; margin: 20px auto;}}
				#overlay > #s_icon_cont > .s_icon > a {
					display: inline-block;
					position: relative;
					width: 100%;
					height: auto;
					margin: 10px 2% 10px 8%;
				}
	#overlay > .contents3 {
		position: relative;
		width: 94%;
		max-width: 400px;
		margin: 50px auto;
	}@media screen and ( max-width:500px){#overlay > .contents3 {width: 80%; margin: 20px auto;}}

#pagetop {
	position: fixed;
	bottom: 40px;
	right: 24px;
	width: 60px;
	z-index: 1000;
	text-align: right;
}@media screen and ( max-width:800px){#pagetop {width: 48px;right: 22px;}}
@media screen and ( max-width:500px){#pagetop {width: 40px;right: 4%}}
/*ふわっと*/
.scroll-fade{opacity: 0; transition: all 2s/*処理にかかる時間*/;}
.scroll-up{opacity: 0; transform: translateY(100px)/*スクロールアップする距離*/; transition: all 2s/*処理にかかる時間*/;}
.scroll-up.done, .scroll-fade.done{opacity : 1; transform : translate(0, 0);}
.load-fade {opacity : 0; transition : all 2s/*処理にかかる時間*/;}
.load-up{opacity: 0; transform: translateY(100px)/*スクロールアップする距離*/; transition: all 2s/*処理にかかる時間*/;}
.load-up.done, .load-fade.done{opacity : 1; transform : translate(0, 0);}
