@charset "utf-8";
/*
construction.css
各ページ固有のCSS
*/

/******************************************

header

*******************************************/

header {
}

@media screen and (max-width: 768px) {
header {
	padding: 0 10px;
}

}

/* nav */	
#chousei{
	width: 100%;
	height:1px;
}
#chousei.HeightMin2{
	height:160px;
}
#header{
    /*はじめの高さを設定*/
	height: 180px;
	width:100%;
	
   /*以下はレイアウトのためのCSS*/
	display: flex;
	justify-content: space-between;
	align-items: center;
	background:#FFF;
	text-align: center;
	padding: 0;
	margin: 0;
}

/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#header.HeightMin{
	position: fixed;
    z-index: 999;/*最前面へ*/
	height:80px;
	animation: DownAnime 0.5s forwards;
	top:0;
	background:#FFF;
	margin: 0;
	border-bottom: 1px solid #e5e5e5;
border-top: solid 6px #2692e6;
}
.hd_line{
	border-top: solid 6px #2692e6;
	display: block;
}
@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-180px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}

#navArea{ 
	width: 1100px;
	margin: 0 auto 30px auto;
	position: static;
}
#navArea .logo{
	position: relative;
}
#navArea h1{ 
	/*display: none;*/
	width: 335px;
	height: 104px;
	padding-top: 24px;
}
#header.HeightMin #navArea h1{ 
	display:block;
	float: left;
	width: 200px;
	text-align: left;
	padding-top: 50px;
}
#header.HeightMin #navArea h1 img{ 
	width: 186px;
	height: auto;
}
nav ul li a{
text-decoration: none;
color: #222;
}
nav ul li a:hover{
text-decoration: none;

}
nav ul{
list-style: none;
display: flex;
justify-content: center;
}
nav ul li{
padding:30px 0 0 0;
	border-right: solid 1px #e4e4e4;
	font-size: 0.94rem;
	width: 122px;
	position: relative;
	cursor: pointer;
}
nav ul li:first-child{
	border-left: solid 1px #e4e4e4;
}

#header.HeightMin nav ul li a{
text-decoration: none;
color: #FFF;
}
#header.HeightMin nav ul{
list-style: none;
display: flex;
justify-content: center;
	margin-top: 42px;
}
#header.HeightMin nav ul li{
padding:24px 0 0 0;
	border-right: solid 1px #e4e4e4;
	font-size: 0.8rem !important;
}
#header.HeightMin nav ul li:first-child{
	border-left: solid 1px #e4e4e4;
}

.nav_home{
background: url("../img/shared/icn_home.png") no-repeat top center;	
background-size: 24px 24px;
}
#header.HeightMin .nav_home{
background: url("../img/shared/icn_home.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_facilityinfo,
#header.HeightMin .nav_facilityinfo{
background: url("../img/shared/icn_facilityinfo.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_pool,
#header.HeightMin .nav_pool{
background: url("../img/shared/icn_pool.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_admissionfee,
#header.HeightMin .nav_admissionfee{
background: url("../img/shared/icn_admissionfee.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_usageguide,
#header.HeightMin .nav_usageguide{
background: url("../img/shared/icn_usageguide.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_shop,
#header.HeightMin .nav_shop{
background: url("../img/shared/icn_shop.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_rental,
#header.HeightMin .nav_rental{
background: url("../img/shared/icn_rental.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_access,
#header.HeightMin .nav_access{
background: url("../img/shared/icn_access.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_reserved,
#header.HeightMin .nav_reserved{
background: url("../img/shared/icn_reserved.png") no-repeat top center;	
background-size: 24px 24px;
}
.nav_faq,
#header.HeightMin .nav_faq{
background: url("../img/shared/icn_faq.png") no-repeat top center;	
background-size: 24px 24px;
}


@media screen and (max-width: 768px) {
#chousei{
	width: 100%;
	height:100px;
}
#chousei.HeightMin2{
	height:100px;
}
/* nav */
#header,
#header.HeightMin{
	position: fixed;
	/*はじめの高さを設定*/
	height: 52px;
	width:100%;
   /*以下はレイアウトのためのCSS*/
	display: flex;
	justify-content: space-between;
	align-items: center;
	background:#2b4c8b;
	color:#fff;
	text-align: center;
	padding: 20px;
    z-index: 999;/*最前面へ*/
		animation: none;
	margin: 0;
	border-top: none;
}
.hd_line{
	display: none;
}
#navArea,
#header.HeightMin #navArea{ 
	width: 100%;
	margin: 0 auto;
	position: static;
}

#navArea h1,
#header.HeightMin #navArea h1{ 
	display:block;
	width: 200px;
	height: 70px;
	float: left;
background: url("../img/shared/img_hdlogoW.png") no-repeat;	
background-size: 160px auto;
	background-position:  top 22px left 0;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
	
nav {
	display: block;
	position: fixed;
	top: 0;
	left: -220px;
	bottom: 0;
	width: 220px;
	background: #FFF;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	transition: all .5s;
	z-index: 3;
	opacity: 0;
}
.open nav {
	left: 0;
	opacity: 1;
	background-color: #2692e6;
}
nav .inner {
	padding: 25px;

}
nav .inner ul,
#header.HeightMin nav .inner ul{
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: block;
}
nav .inner ul li,
#header.HeightMin nav .inner ul li  {
	position: relative;
	margin: 0;
	border-bottom: 1px solid #fff;
	width: 100%;
	padding:16px 0 14px 40px;
	border-right: none;
	text-align: left;
	font-size: 0.9rem !important;
}
nav ul li:first-child,
#header.HeightMin nav ul li:first-child{
	border-left: none;
	border-top: 1px solid #fff;
}
nav .inner ul li a,
#header.HeightMin nav .inner ul li a{
	display: block;
	color: #222;
	padding: 30px 0 10px 0;
	text-decoration: none;
	transition-duration: 0.2s;
}
nav .inner ul li a:hover,
#header.HeightMin nav .inner ul li a:hover{
	color: #0665a3;
}
.nav_home,
#header.HeightMin .nav_home{
background: url("../img/shared/icn_home.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_facilityinfo,
#header.HeightMin .nav_facilityinfo{
background: url("../img/shared/icn_facilityinfo.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_pool,
#header.HeightMin .nav_pool{
background: url("../img/shared/icn_pool.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_admissionfee,
#header.HeightMin .nav_admissionfee{
background: url("../img/shared/icn_admissionfee.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_usageguide,
#header.HeightMin .nav_usageguide{
background: url("../img/shared/icn_usageguide.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_shop,
#header.HeightMin .nav_shop{
background: url("../img/shared/icn_shop.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_rental,
#header.HeightMin .nav_rental{
background: url("../img/shared/icn_rental.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_access,
#header.HeightMin .nav_access{
background: url("../img/shared/icn_access.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_reserved,
#header.HeightMin .nav_reserved{
background: url("../img/shared/icn_reserved.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_faq,
#header.HeightMin .nav_faq{
background: url("../img/shared/icn_faq.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
.nav_recruit,
#header.HeightMin .nav_recruit{
background: url("../img/shared/icn_recruit.png") no-repeat top 16px left 10px;	
background-size: 20px 20px;
}
	
/* .toggle_btn */
.toggle_btn {
	display: block;
	position: fixed;
	top: 10px;
	right: 20px;
	width: 30px;
	height: 30px;
	transition: all .5s;
	cursor: pointer;
	z-index: 3;
}
.toggle_btn span {
	display: block;
	position: absolute;
	left: 0;
	width: 30px;
	height: 2px;
	background-color: #FFF;
	border-radius: 4px;
	transition: all .5s;
}
.toggle_btn span:nth-child(1) {
	top: 4px;
}
.toggle_btn span:nth-child(2) {
	top: 14px;
}
.toggle_btn span:nth-child(3) {
	bottom: 4px;
}
.open .toggle_btn span {
	background-color: #fff;
}
.open .toggle_btn span:nth-child(1) {
	-webkit-transform: translateY(10px) rotate(-315deg);
	transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
	opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
	-webkit-transform: translateY(-10px) rotate(315deg);
	transform: translateY(-10px) rotate(315deg);
}
/* #mask */
#mask {
	display: none;
	transition: all .5s;
}
.open #mask {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .8;
	z-index: 2;
	cursor: pointer;
}
}


/******************************************

footer

*******************************************/

footer{
	background-color: #86c4ea;
	color: #222;
}
footer .ft_box{ width: 100%; text-align: center;  margin:0 auto; padding: 0;  position: relative;}
footer .ft_img img{
	width: 100%;
	height: auto;
}
footer .copyright {
	text-align: center;
	font-size: 0.9rem;
	padding-bottom: 70px;
}
footer .privacypolicy {
	text-align: center;
	font-size: 0.9rem;
	padding-bottom: 20px;
}
footer .privacypolicy a{
    text-decoration: underline;
}
footer .privacypolicy a:hover{
    text-decoration:none;
}
@media screen and (max-width: 768px) {

footer{
	background-color: #86c4ea;
	color: #222;
}
footer .ft_box{ width: 100%; text-align: center;  margin:0 auto; padding: 0;  position: relative;}
footer .ft_img img{
	width: 100%;
	height: auto;
}
footer .copyright {
	text-align: center;
	font-size: 0.7rem;
	padding-top: 0;
	padding-bottom: 20px;
}
footer .privacypolicy {
	text-align: center;
	font-size: 0.7rem;
	padding-bottom: 5px;
}

}
/******************************************

common

*******************************************/

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

#ttl_second{
	background: url('../img/shared/bg_header.png') no-repeat bottom ;
background-size: 200%;
	background-color: #006cc0;
	height: 300px;
}
.ttl_2nd{
	background-color: #1b94f4;
	padding: 54px 0 38px 0;
}
.wd_1000 {
	width: 1000px;
	margin: 0 auto ;
	padding: 0 0 100px 0;
}
.wd_1000 a{
	text-decoration: underline;
}
.wd_1000 a:hover{
	text-decoration: none;
}
.bodytext{
	text-align: left;
	margin: 0 0 20px 0;
	}
.separatorline{
	border-bottom: 2px solid #dcdcdc;
	padding: 50px 0 0 0;
	margin:  50px 0;
}
.imground img{
	border-radius:12px;
	filter: drop-shadow(0 0 0.2rem #8a8a8a);
}
.imground-noshadow img{
	border-radius:12px;
}
.imgcaption{
	margin-top: 10px;
	font-size: 0.9rem;
}
.cont_flex{
	display: flex;
	justify-content: space-between;
	padding: 10px 0 0 0 ;
	margin: 0 0 40px 0;
}
.cont_flex .cont_1-2_L{
	width: 310px;
}
.cont_flex .cont_1-2_R{
	width: 650px;
}
.cont_flex .cont_1-1-1{
	width: 310px;
}
.cont_flex .cont_1-1_L{
	width: 430px;
}
.cont_flex .cont_1-1_R{
	width: 530px;
}
.cont_flex div.flexmb25{
}
.cont_flex div.flexmb15{
}

#snscont{
	padding: 80px 0 40px 0;
	font-size: 0.8rem;
}
#snscont .snslink{
	display: flex;
	justify-content: center;
	margin-top: 20px;
}

#snscont .snslink .sns_instagram{
	background-color: #e40086;
	width: 280px;
	padding: 16px;
	cursor: pointer;
	position: relative;
}
#snscont .snslink .sns_facebook{
	background-color: #1877f2;
	width: 280px;
	padding: 16px;
	cursor: pointer;
	position: relative;
}
#snscont .snslink .sns_twitter{
	background-color: #161616;
	width: 280px;
	padding: 16px;
	cursor: pointer;
	position: relative;
}
#snscont .snslink img{
	width: 26px;
	margin-right: 16px;
}
#snscont .snslink span{
	color: #FFF;
	font-size: 1.2rem;
}
#bn_cont{
	background-color: #f4f5f5;
	padding: 60px 0;
}
#bn_cont .bn_slider{
	width: 1000px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
#bn_cont .bn_slider img{
	width: 314px;
	height: auto;
}
#bn_cont_ticket{
	background-color: #FFFFFF;
	padding: 60px 0;
}
#bn_cont_ticket .bn_slider{
	width: 1000px;
	display: flex;
	justify-content:center;
    flex-wrap: wrap;
	margin: 0 auto;
}
#bn_cont_ticket .bn_slider img{
	width: 400px;
	height: auto;
    margin: 15px;
}
@media screen and (max-width: 768px) {
.wd_1000 {
	width: 100%;
	margin: 0 auto ;
	padding: 0 15px 80px 15px;
}
.bodytext{
	text-align: left;
	margin: 0 0 20px 0;
	}
.separatorline{
	border-bottom: 2px solid #dcdcdc;
	padding: 40px 0 0 0;
	margin:  40px 0;
}
.imground img{
	border-radius:6px;
	filter: drop-shadow(0 0 0.2rem #8a8a8a);
}
.imground-noshadow img{
	border-radius:6px;
}
.imgcaption{
	margin-top: 10px;
	font-size: 0.9rem;
}
.cont_flex{
	display:block;
	justify-content: space-between;
	padding: 10px 0 0 0 ;
	margin: 0 0 40px 0;
}
.cont_flex .cont_1-2_L{
	width: 100%;
}
.cont_flex .cont_1-2_R{
	width: 100%;
}
.cont_flex .cont_1-1-1{
	width: 100%;
}
.cont_flex .cont_1-1_L{
	width: 100%;
}
.cont_flex .cont_1-1_R{
	width: 100%;
}
.cont_flex div.flexmb25{
	margin: 0 0 25px 0;
}
.cont_flex div.flexmb15{
	margin: 0 0 15px 0;
}

#ttl_second{
	background: url('../img/shared/bg_headerSP.png') no-repeat bottom;
	background-size: cover;
	background-color: #006cc0;
	height: 160px;
}
.ttl_2nd{
	background-color: #1b94f4;
	padding: 100px 0 26px 0;
}
#snscont{
	padding: 80px 0 40px 0;
	font-size: 0.8rem;
}
#snscont .snslink{
	display: flex;
	justify-content: center;
	margin-top: 20px;
}

#snscont .snslink .sns_instagram{
	background-color: #e40086;
	width: 33.3%;
	padding: 14px;
	cursor: pointer;
	position: relative;
}
#snscont .snslink .sns_facebook{
	background-color: #1877f2;
	width: 33.3%;
	padding: 14px;
	cursor: pointer;
	position: relative;
}
#snscont .snslink .sns_twitter{
	background-color: #161616;
	width: 33.3%;
	padding: 14px;
	cursor: pointer;
	position: relative;
}
#snscont .snslink img{
	width: 20px;
	margin-right: 0;
	margin-bottom: 2px;
}
#snscont .snslink span{
	color: #FFF;
	font-size: 0.8rem;
	font-weight: 900;
}
#bn_cont{
	background-color: #f4f5f5;
	padding: 40px 30px 20px 30px;
}
#bn_cont .bn_slider{
	width: 100%;
	display: block;
	margin: 0 auto;
}
#bn_cont .bn_slider img{
	width: 100%;
	height: auto;
	margin: 0 0 25px 0;
}	
#bn_cont_ticket{
	background-color: #FFFFFF;
	padding: 40px 30px 20px 30px;
}
#bn_cont_ticket .bn_slider{
	width: 100%;
	display: block;
	margin: 0 auto;
}
#bn_cont_ticket .bn_slider img{
	width: 100%;
	height: auto;
	margin: 0 0 25px 0;
}		
	
	
}
/* トップページSP版コード ここまで */


	.Lttl {
	font-size: 2.4rem;
	font-weight: 900;
	color: #303030;
		padding: 40px 0 60px 0;
}

.fadein {
  /* 最初は非表示 */
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: opacity 1s, visibility 1s, transform 1s;
}
/* フェードイン時に入るクラス */
.is-fadein {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

/*ボタン*/
.btn_common {
	position: relative;
	display: inline-block;
	font-size: 1.2rem;
	padding: 0.8rem 7rem;
	text-decoration: none;
	color: #015ca3;
	background: #FFF;
	border: solid 2px #015ca3;
 transition: ease .2s;
	border-radius: 100px;
	cursor: pointer;
}
.btn_common::before {
content: '';
background-image: url(../img/shared/img_arrowR.png);
background-size: contain;
    border: 0;
    width: 20px;
    height: 12px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: calc(50% - 6px);
    right: 20px;
    /*アニメーションの指定*/
    transition: all .3s;
}
/*hoverした際の移動*/
.btn_common:hover::before{
    right: 16px;
}
a .aLink{
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
}
a span.arrow {
	width: 18px;
	height: 8px;
	background-image: url('../img/common/icn_arrow.png');
	background-size: 18px 8px;
	display: inline-block;
	text-indent: -9999px;
	/* 位置合わせ用 */
	vertical-align: middle;
	right: 0;
	margin: 0 0 4px 10px;
}
a.underline {
	border-bottom: solid 1px #333;
	padding-bottom: 5px;
}
.shikirisen {
	border-bottom: solid 2px #000;
	text-indent: -9999px;
	margin: 25px auto 45px auto;
	width: 170px;
}
a.anchor{
    display: block;
    padding-top: 170px;
    margin-top: -170px;
}
.moreBtn {
    position: relative;
	display: inline-block;
color: #FFF!important;
	padding: 0.6rem 4rem;
	background: #003578;
	text-decoration: none;
	text-align: center;
	transition: .4s;
	font-family: 'Roboto';
	margin-top: 20px;
}
.moreBtn_text{	font-size: 0.9rem; 	font-weight: bold; font-family: 'Roboto', YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }
.moreBtn_arrow{  position: absolute; right:20px;    background: url("../img/common/icn_arrow_w.png") no-repeat center right;
    background-size: 20px 9px; min-width: 100%; height: auto; }
.moreBtn:hover {
opacity: 0.9;
}
@media screen and (max-width: 768px) {
/*ボタン*/
.btn_common {
	position: relative;
	display: block;
	font-size: 1rem;
	padding: 0.5rem 4rem;
	text-decoration: none;
	color: #015ca3;
	background: #FFF;
	border: solid 2px #015ca3;
 transition: ease .2s;
	border-radius: 100px;
	cursor: pointer;
}
.btn_common::after {
content: '';
background-image: url(../img/shared/img_arrowR.png);
background-size: contain;
    border: 0;
    width: 20px;
    height: 12px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: calc(50% - 6px);
    right: 20px;
    /*アニメーションの指定*/
    transition: all .3s;
}
/*hoverした際の移動*/
.btn_common:hover::after{
    right: 16px;
}
}

@media screen and (min-width: 768px) {
.sp_br {
	display: none;
}
}
#page_top {
	width: 60px;
	height: 60px;
	position: fixed;
	right: 20px;
	bottom: -50px;
	opacity: 0.9;
	padding-top: 16px;
	cursor: pointer;
background: url("../img/shared/img_pagetop.png") no-repeat center right;
    background-size: 100%; 
}
@media screen and (max-width: 768px) {
#page_top {
	width: 40px;
	height: 40px;
	position: fixed;
	right: 20px;
	bottom: -50px;
	opacity: 0.9;
	padding-top: 16px;
	cursor: pointer;
background: url("../img/shared/img_pagetop.png") no-repeat;
    background-size: 100%; 
filter: drop-shadow(0 0 0.2rem #8a8a8a);
}
}

h2 {
	color: #FFF;
	font-size: 2.6rem;
	text-align: center;
}
.ttl_2nd_en{
	color: #aaf2ff;
	font-size: 0.9rem;
	padding-top: 20px;
}
h3 {
	font-size: 2.2rem;
	font-weight: 600;
	text-align: center;
	padding: 30px 0 36px 0;
	margin:0 0 50px 0;
	background: url("../img/shared/bg_h3.png") bottom center no-repeat;
	background-size: 120px auto;
}
h4 {
	color: #222;
	font-size: 1.5rem;
	font-weight: 700;
	padding: 6px 0 0 30px;
	margin-bottom: 25px;
	position: relative;
	text-align: left;
}
h4:before {
	background-image: linear-gradient(180deg, #38a4f8 0%, #38a4f8 55%, #38a4f8 100%); /* 円のグラデーション */
	border-radius: 50%;
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	left: 0;
	width: 24px; /* 円の幅 */
	height: 24px; /* 円の高さ */
}
h4:after {
	background-color: #fff; /* 白抜き円 */
	border-radius: 50%;
	content: '';
	display: block;
	position: absolute;
	top: 16px;
	left: 6px;
	width: 12px; /* 白抜き円の幅 */
	height: 12px; /* 白抜き円の高さ */
}
h5{
	font-size: 1.3rem;
	font-weight: 500;
	border-left: solid 2px #222;
	text-align: left;
	padding-left: 16px;
	margin-bottom: 30px;
	margin-top: 45px;
}

h6{
	font-size: 1.2rem;
	margin-top: 20px;
	margin-bottom: 10px;
	font-weight: 400;
}
@media screen and (max-width: 768px) {

h2 {
	color: #FFF;
	font-size: 1.6rem;
	text-align: center;
}
.ttl_2nd_en{
	color: #aaf2ff;
	font-size: 0.9rem;
	padding-top: 4px;
}
h3 {
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	padding: 30px 0 36px 0;
	margin:0 0 40px 0;
	background: url("../img/shared/bg_h3.png") bottom center no-repeat;
	background-size: 110px auto;
}
h4 {
	color: #222;
	font-size: 1.1rem;
	font-weight: 600;
	padding: 8px 0 0 30px;
	margin: 0 0 15px 0;
	position: relative;
	text-align: left;
}
h4:before {
	background-image: linear-gradient(180deg, #38a4f8 0%, #38a4f8 55%, #38a4f8 100%); /* 円のグラデーション */
	border-radius: 50%;
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	left: 0;
	width: 24px; /* 円の幅 */
	height: 24px; /* 円の高さ */
}
h4:after {
	background-color: #fff; /* 白抜き円 */
	border-radius: 50%;
	content: '';
	display: block;
	position: absolute;
	top: 16px;
	left: 6px;
	width: 12px; /* 白抜き円の幅 */
	height: 12px; /* 白抜き円の高さ */
}
h5{
	font-size: 1.1rem;
	font-weight: 500;
	border-left: solid 2px #222;
	text-align: left;
	padding-left: 16px;
	margin-bottom: 20px;
	margin-top: 25px;
}
h6{
	font-size: 1.2rem;
	margin-top: 20px;
	margin-bottom: 10px;
	font-weight: 400;
}
}


/******************************************

top

*******************************************/
#congestion{
	margin: 40px auto;
}
#congestion_iframe{
	width: 400px;
	height: 260px;
}

.congestion_ttl {
  position: relative;
	font-size: 2rem;
	margin-bottom: 50px;
    padding-top: 10px;
	padding-bottom: 20px;
}
.congestion_ttl:before {
content: "";
    display: inline-block;
    position: absolute;
    left: calc(50% - 50px) ;
    bottom: -7px;
    width: 100px;
    height: 3px;
    border-radius: 5px;
  background: #000;
}

@media screen and (max-width: 768px) {
#congestion{
	margin: 40px auto;
}
#congestion_iframe{
	width: 300px;
	height: 200px;
}
.congestion_ttl {
  position: relative;
	font-size: 1.2rem;
	margin-bottom: 40px;
    padding-top: 0;
	padding-bottom: 15px;
}
.congestion_ttl:before {
content: "";
    display: inline-block;
    position: absolute;
    left: calc(50% - 50px) ;
    bottom: -7px;
    width: 100px;
    height: 3px;
    border-radius: 5px;
  background: #000;
}
}

.topinfo div{
	background: #FFF;
	padding: 60px 20px;


}
.topinfo span{
    background:linear-gradient(transparent 70%, #ff6 60%);
	font-size: 3rem;
	font-weight: 700;
	line-height: 4.5rem;
	color: #00489a;
}
@media screen and (max-width: 768px) {
.topinfo div{
	background: #FFF;
	padding: 60px 20px;


}
.topinfo span{
    background:linear-gradient(transparent 70%, #ff6 60%);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2.5rem;
	color: #00489a;
}
}
#keyarea{background-color: #4fadf6;}
.key_main {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 auto 0 auto;
	padding-top: 0px;
	background-color: #4fadf6;
}
.key_main img{
	width: 100%;
	height: auto;
}
.key_main_copy{
	width: 1100px;
	margin: 0 auto;
	position: relative;
}
.key_main_copy div{
	position: absolute;
        bottom: 160px;
        right: 0;
/*transform: translate(-50%, -50%);*/
	text-align: center;
	color: #FFF;
	z-index: 2;
}
.key_main_copy img{
	width: 500px;
	height: auto;
}
.key_main_cover{
	position: absolute;
        bottom: 0;
	text-align: center;
	z-index: 1;
	margin-bottom: -1px;
}


#NEWS{
	background-color: #f4f5f5;
	padding: 60px 0;
}
.news_cont{
	background-color: #FFF;
	width: 1000px;
	margin: 0 auto;
	padding: 50px;
	border-radius: 10px;
	/*filter: drop-shadow(0 0 0.35rem #308ace);*/
}
.news_ttl{

  position: relative;
  display: flex;
	justify-content: center;
  margin-bottom: 20px;
	margin-top: 10px;
}
.news_ttl_eng{ 
	font-size: 2rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #006cc0;
}
.news_ttl p{
	font-size: 0.8rem;
	color: #333;
	text-align: center;
}
	.news_ttl_imgL{
	background:  url("../img/top/img_waveL.png") top left no-repeat;
background-size: 80px;
		width: 80px;
		margin-right: 10px;
		margin-top: 2px;
	}
	.news_ttl_imgR{
	background:  url("../img/top/img_waveR.png") top left no-repeat;
background-size: 80px;
		width: 80px;
		margin-left: 10px;
		margin-top: 2px;
	}
.news_box{
	width: 100%;
	margin: 0 auto;
	text-align: left;
	border-top: dotted 1px #c8c8c8;
}
.news_box ul{
	border-bottom: dotted 1px #c8c8c8;
	padding: 20px 0;
	display: flex;
}
.news_box ul .news_date{
	margin-right: 20px;
	width: 9rem;
}
.news_box a{
	text-decoration: underline;
}
.news_box a:hover{
	text-decoration: none;
}
.link_news_list{
    text-align: right;
    margin: 20px 0 0 0;
}




.top_ttls{
	font-size: 1.8rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #006cc0;
  position: relative;
  display: inline-block;
  margin-bottom: 1.2em;
}
.top_ttls:before {
  content: '';
  position: absolute;
  bottom: -1px;
  display: inline-block;
  width: 70px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #51a4e5;
	border-radius: 3px;
}
.info_kari{
	margin: 80px auto 60px auto;
	width: 800px;
}
.top_ttls_ja{
	font-size: 1.8rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #006cc0;
  position: relative;
  display: inline-block;
  margin-bottom: 1.2em;
}
.top_ttls_ja:before {
  content: '';
  position: absolute;
  bottom: -20px;
  display: inline-block;
  width: 70px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #51a4e5;
	border-radius: 3px;
}
.top_ttls p{
	font-size: 0.8rem;
	color: #333;
	text-align: center;
}
#TOP_calendar{
	background-color: #4eacf5;
	/*background-color: #deb887;  */  
	padding: 60px 0;
}
#TOP_calendar .TOP_calendar_ttl {
  position: relative;
	font-size: 2rem;
	margin-bottom: 70px;
	padding-bottom: 20px;
}
#TOP_calendar .TOP_calendar_ttl:before {
content: "";
    display: inline-block;
    position: absolute;
    left: calc(50% - 50px) ;
    bottom: -7px;
    width: 100px;
    height: 3px;
    border-radius: 5px;
  background: #000;
}
#TOP_calendar .TOP_calendar_info {
	background-color: #FFFFFF;
    border:solid 2px #CCCCCC;
	border-radius: 16px;
	padding: 20px 20px 20px 0;
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_hd {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 600;
	width: 180px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt {
	text-align: left;
	border-left: 2px solid #CCCCCC;
	padding: 0 0 0 30px;
	font-size: 1.1rem;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul {
    display: flex;
    justify-content: flex-start;
    padding: 5px 0;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul li {
    line-height: 2.4rem;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul li span {
    font-size: 1.1rem;
    color: #FFFFFF;
    background-color: #666666;
    border-radius: 10px;
    display: inline-block;
    padding: 0 40px;
    width: 16rem;
    text-align: center;
    margin-right: 20px;
}

/*
#TOP_calendar .TOP_calendar_info {
	background-color: #f8f6f3;
	border-radius: 6px;
	padding: 20px 20px 20px 0;
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_hd {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 600;
	width: 180px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt {
	text-align: left;
	border-left: 3px solid #c4c4c4;
	padding: 10px 0 10px 30px;
	font-size: 1.2rem;
}
*/
.calendar_att_text{
	font-size: 0.9rem;
	text-align: left;
	margin: 10px 0 0 0;
}
.calendar_att_text ul{
    list-style-type: none;
 list-style-position: inside;
}
.calendar_att_text ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
}
.calendar_kyugyou_cont{
	display: flex;
	align-items: center;
}
.calendar_kyugyou_hd{
	color: #FFF;
	background-color: #695f5d;
	font-weight: 600;
	font-size: 0.9rem;
	width: 200px;
	text-align: center;
	border-radius: 100px;
	padding: 3px 0;
	margin: 5px 0;
}
.calendar_kyugyou_txt{
	margin-left: 20px;
}
#TOP_calendar .TOP_calendar_cont{
	background-color: #FFF;
	width: 1000px;
	margin: 0 auto;
	padding: 80px 50px 50px 50px;
	border-radius: 10px;
	/*filter: drop-shadow(0 0 0.35rem #937044);*/
	filter: drop-shadow(0 0 0.35rem #2d7fbe);
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 80px;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box::after{
  content:"";
  display: block;
  width:30%;
} 
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box div{
	width: 270px;
	margin-bottom: 40px;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box .TOP_calendar_kinds{
	background-color: #f8f6f3;
	border-radius:6px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
display:flex;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box .TOP_calendar_kinds img{
	width: 220px;
	height: auto;
}
.TOP_schedule_ttl{
    /*font-size: 1.8rem;  */ 
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 40px;
}
.TOP_schedule_box{
    border: solid 2px #cccccc;
    border-radius: 16px;
    padding: 30px 0;
    margin-bottom: 30px;
}
.TOP_schedule_cont{
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
}
.TOP_schedule_cont .sc_cont{
    width: 450px;
    border-left: 2px solid #cccccc;
    padding: 0 15px;
    
}
.TOP_schedule_cont .sc_cont:first-child{
    border-left:none;
}
.TOP_schedule_cont .sc_cont .sc_ttl_cont{
    display: flex;
    align-items: center;
    justify-content: center;
}
.TOP_schedule_cont .sc_cont .sc_ttl_cont .sc_ttl{
    font-size: 1.6rem;
    font-weight: 500;
    display: inline-block;
    padding: 0 0 10px 10px;
}
.TOP_schedule_cont .sc_cont .sc_daypool{
    background-color: #e0f2ff;
    border:2px solid #e0f2ff; 
    border-radius:  4px;
    width: 2.2rem;
    height: 2.2rem;
    display: inline-block;
}
.TOP_schedule_cont .sc_cont .sc_gogopool{
    background-color: #e0f2ff;
    border:2px solid #f85902; 
    border-radius:  4px;
    width: 2.2rem;
    height: 2.2rem;
    display: inline-block;
}
.TOP_schedule_cont .sc_cont .sc_nightpool{
    /*background-color: #e0f2ff;*/
    border:2px solid #006cc0; 
    border-radius:  4px;
    width: 2.2rem;
    height: 2.2rem;
    display: inline-block;
    position: relative;
}
.TOP_schedule_cont .sc_cont .sc_nightpool:after{
content: '';
background-image: url("../img/shared/icn_night.png");
background-size: contain;
    border: 0;
    width: 18px;
    height: 18px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: -9px;
    right: -8px;
}
.TOP_schedule_cont .sc_cont .sc_time{
    font-size: 1.4rem;
    font-weight: 500;
    margin-top: 10px;
}
.TOP_schedule_cont .sc_cont .sc_limited{
    font-size: 0.8rem;
    color: #FFFFFF;
    background-color: #006cc0;
    border-radius: 30px;
    display: inline-block;
    padding: 0 40px;
    margin: 15px 0 5px 0;
}
.TOP_schedule_cont .sc_cont .sc_txt{
    font-size: 1.2rem;
    font-weight: 400;
}
.sc_sample_outer{
    background-color: #f8f8f8;
    padding: 10px 0;
    border-radius: 16px;
}
.sc_sample{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
}
.sc_sample .sc_sample_cont{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 20px 0 10px;
}
.sc_sample .sc_sample_ttl{
    font-size: 1.1rem;
    font-weight: 500;
    display: inline-block;
    padding: 0 0 3px 10px;
}
.sc_sample .sc_sample_daypool{
    background-color: #e0f2ff;
    border:2px solid #e0f2ff; 
    border-radius:  4px;
    width: 2rem;
    height:  2rem;
    display: inline-block;
}
.sc_sample .sc_sample_gogopool{
    background-color: #e0f2ff;
    border:2px solid #f85902; 
    border-radius:  4px;
    width: 2rem;
    height:  2rem;
    display: inline-block;
}
.sc_sample .sc_sample_nightpool{
    /*background-color: #e0f2ff;*/
    border:2px solid #006cc0; 
    border-radius:  4px;
    width: 2rem;
    height:  2rem;
    display: inline-block;
    position: relative;
}
.sc_sample .sc_sample_nightpool:after{
content: '';
background-image: url("../img/shared/icn_night.png");
background-size: contain;
    border: 0;
    width: 14px;
    height: 14px;
    position: absolute;
    top: -9px;
    right: -8px;
}
.sc_sample .sc_sample_camp{
    width: 2rem;
    height:  2rem;
    display: inline-block;
    position: relative;
}
.sc_sample .sc_sample_camp:after{
content: '';
background-image: url("../img/shared/icn_camp.png");
background-size: contain;
    border: 0;
    width: 2rem;
    height: 2rem;
    position: absolute;
    top: 0;
    left: 0;
}
.sc_sample .sc_sample_supkayak{
    width: 2rem;
    height:  2rem;
    display: inline-block;
    position: relative;
}
.sc_sample .sc_sample_supkayak:after{
content: '';
background-image: url("../img/shared/icn_supkayak.png");
background-size: contain;
    border: 0;
    width: 1.8rem;
    height: 1.8rem;
    position: absolute;
    top: 0;
    left: 0;
}
.sc_sample .sc_sample_outdoor{
    width: 2rem;
    height:  2rem;
    display: inline-block;
    position: relative;
}
.sc_sample .sc_sample_outdoor:after{
content: '';
background-image: url("../img/shared/icn_outdoor.png");
background-size: contain;
    border: 0;
    width: 1.8rem;
    height: 1.8rem;
    position: absolute;
    top: 0;
    left: 0;
}
.sc_sample .sc_sample_freemarket{
    width: 2rem;
    height:  2rem;
    display: inline-block;
    position: relative;
}
.sc_sample .sc_sample_freemarket:after{
content: '';
background-image: url("../img/shared/icn_freemarket.png");
background-size: contain;
    border: 0;
    width: 1.8rem;
    height: 1.8rem;
    position: absolute;
    top: 0;
    left: 0;
}
.sc_sample .sc_sample_teikyu{
    background-color: #bdbdbd;
    border:2px solid #bdbdbd; 
    border-radius:  4px;
    width: 2rem;
    height:  2rem;
    display: inline-block;
}
.sc_sample .sc_sample_kashikiri{
    border:2px solid #bdbdbd; 
background-image: url("../img/shared/bg_kashikiri.png");
    background-size: 160%;
    border-radius:  4px;
    width: 2rem;
    height:  2rem;
    display: inline-block;
}
#fw_cont{
	background-color: #f4f5f5;
	/*    background-color: #f5deb3;    9月以降に△と差し替え */ 
    
	padding: 60px 0 40px 0;
	/*    padding: 60px 0 20px 0;    9月以降に△と差し替え */ 
}
#fw_cont a img{
	opacity: 1;
}
#fw_cont .fw_bnarea{
	/*    width: 660px;    プール期切り替え時に差し替え */ 
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#fw_cont .fw_bnarea img{
	border-radius: 10px;
	/*   width: 320px;    プール期切り替え時に差し替え */ 
	 width: 480px; 
	height: auto;
	/*   margin-bottom: 20px; プール期切り替え時に差し替え */ 
	 margin-bottom: 40px;   
}
#fw_cont .fw_bnarea div{
	position: relative;
}
#fw_cont .fw_bnarea div:first-child{
    margin-right: 40px;
}
#fw_cont .fw_bnarea div .fw_bnarea_ttl{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	/*    font-size: 1.8rem;  プール期切り替え時に差し替え */ 
	font-size: 2.6rem; 
	font-weight: 600;
	color: #FFF;
	/*    	padding-bottom: 2rem;   プール期切り替え時に差し替え */ 
	padding-bottom: 3rem; 
}
#fw_cont .fw_bnarea div .fw_bnarea_sttl{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	font-size: 1rem;
	font-weight: 600;
	color: #FFF;
	padding-top: 2rem;
}
.ttl_eigyou_af_9{
    background-color: #374754;
    color: #FFF;
    font-weight: 500;
    font-size: 1.6rem;
	/*    	width: 660px;  プール期切り替え時に差し替え */ 
	width: 1000px;
    border-radius: 6px;
    /*    	margin: 0 auto 20px auto;   プール期切り替え時に差し替え */ 
    margin: 0 auto 40px auto;
    padding: 20px 0;
}

#insta{
		margin-top: 80px;
}
.insta_cont{
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.insta_cont img{
	width: 250px;
	height: auto;
}
#fb_tw{
	display: flex;
	justify-content: space-between;
	width: 1000px;
	margin: 80px auto ;
}
.fb_cont{
	width: 486px;
	height: 440px;
	background-color: #FFF;
	margin: 0 auto;
	padding: 20px;
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
}
.facebook_wrap{
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
 
.fb-page,
.fb-page span,
.facebook_wrap iframe{
  width: 100% !important;
  height: 400px !important;
}
.tw_cont{
	width: 486px;
	height: 440px;
	background-color: #FFF;
	margin: 0 auto;
	padding: 20px;
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
}
#top_company{
	background-color: #006cc0;
	padding: 60px 0;
}
#top_company table tr td a{
	color: #FFF !important;
}
.top_company_cont{
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.top_company_txt{
	width: 300px;
	color: #FFF;
	text-align: left;
	padding-top: 60px;
}
.top_company_ttl{
	font-size: 1.6rem;
	margin-bottom: 20px;
}
.top_company_map{
	width: 640px;
	height: 300px;
}
#top_banner{
	width: 1000px;
	margin: 0 auto;
}
.top_banner_top{
	width: 1000px;
	margin: 70px auto 10px auto;
	display: flex;
	justify-content: space-between;
}
.top_banner_top img{
	border: 1px solid #ccc;
}
.top_banner_bottom{
	width: 960px;
	margin: 0 auto 70px auto;
	display: flex;
  justify-content:space-between;
    flex-wrap: wrap;
}
.top_banner_bottom::after{
  content:"";
  display: block;
    width: 320px;
}
.top_banner_bottom div{
    width: 320px;
  box-sizing:border-box;  
}
.top_banner_bottom img{
	margin:  10px 0;
}
.banner_area{
	width: 1000px;
	margin: 40px auto 40px auto ;
	text-align: center;	
	display: flex;
	justify-content: space-between;
}
.top_banner_recruit{

}
.top_banner_ticket{
	width: 485px;
	margin: 0 auto;
}
.top_banner_recruit img,
.top_banner_event img,
.top_banner_ticket img,
.top_banner_bus img{
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
}
.bn_bbq{
	text-align: center;
	margin: 0 0 0 0;
	padding: 10px 0 0 0;
}
.bn_bbq img{
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
	margin-top: 10px;
}
.table-container {
	margin:20px 0;
}
.tb_product{
	border: 1px solid #222;	
}
.tb_product th{
	background-color: #eff3f8;
}
.tb_product th,
.tb_product td{
	border: 1px solid #222;
	vertical-align: middle;
	padding: 2px 6px;
	font-size: 0.9rem;
	text-align: center;
}
.product_sozai_att{
	font-size: 0.9rem;
	text-align: left;
	margin-top: 10px;
}
.scroll-hint {
	display: none;
}


.shopinfo_cont{
	display: flex;
	justify-content: space-between;
}
.shopinfo_cont div{
	width: 390px;
}
.restaurant_cont{
	margin: 20px 0 0 0;
	text-align: left;
}
.baiten_cont{
	margin: 20px 0 0 0;
	text-align: left;
	display: flex;
}
.baiten_txt{
	padding: 60px 0 0 20px;
}
@media screen and (max-width: 1080px) {
#keyarea{position: relative;}
.main {

}
}
@media screen and (max-width: 768px) {
#keyarea_SP{position: relative;
	padding-top: 52px;}
.main {

}
#keyarea_SP{background-color: #4fadf6;}
.key_main {
	position: relative;
width: 100%;
height: auto;
	margin: 0 auto 0 auto;
	padding-top: 0px;
	background-color: #4fadf6;
}
.key_main img{
width:100%;
height: auto;
}
.key_main_copy{
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.key_main_copy div{
	position: absolute;
        bottom: 60px;
        right: 20px;
/*transform: translate(-50%, -50%);*/
	text-align: center;
	color: #FFF;
	z-index: 2;
}
.key_main_copy img{
	width: 300px;
	height: auto;
}


#NEWS{
	background-color: #f4f5f5;
	padding: 40px 20px;
}
.news_cont{
	background-color: #FFF;
	width: 100%;
	margin: 0 auto;
	padding: 40px 20px;
	border-radius: 10px;
	/*filter: drop-shadow(0 0 0.35rem #308ace);*/
}
.news_ttl{

  position: relative;
  display: flex;
	justify-content: center;
  margin-bottom: 10px;
	margin-top: 10px;
}
.news_ttl_eng{ 
	font-size: 1.8rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #006cc0;
}
.news_ttl p{
	font-size: 0.8rem;
	color: #333;
	text-align: center;
}
	.news_ttl_imgL{
	background:  url("../img/top/img_waveL.png") top left no-repeat;
background-size: 60px;
		width: 60px;
		margin-right: 10px;
		margin-top: 6px;
	}
	.news_ttl_imgR{
	background:  url("../img/top/img_waveR.png") top left no-repeat;
background-size: 60px;
		width: 60px;
		margin-left: 10px;
		margin-top: 6px;
	}
.news_box{
	width: 100%;
	margin: 0 auto;
	text-align: left;
	border-top: dotted 1px #c8c8c8;
}
.news_box ul{
	border-bottom: dotted 1px #c8c8c8;
	padding: 20px 0;
	display: block;
}
.news_box ul .news_date{
	margin-right: 20px;
	
}
.news_box a{
	text-decoration: underline;
}
.news_box a:hover{
	text-decoration: none;
}

.top_ttls{
	font-size: 1.6rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #006cc0;
  position: relative;
  display: inline-block;
  margin-bottom: 1.2em;
}
.top_ttls:before {
  content: '';
  position: absolute;
  bottom: -1px;
  display: inline-block;
  width: 70px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #51a4e5;
	border-radius: 3px;
}
.top_ttls p{
	font-size: 0.8rem;
	color: #333;
	text-align: center;
}
.info_kari{
	margin: 40px auto 60px auto;
	width: 100%;
	padding: 0 20px;
}
.top_ttls_ja{
	font-size: 1.4rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #006cc0;
  position: relative;
  display: inline-block;
  margin-bottom: 1.2em;
}
.top_ttls_ja:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 70px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #51a4e5;
	border-radius: 3px;
}
#TOP_calendar{
	background-color: #4eacf5;
	/*background-color: #deb887;  */  
	padding: 30px 20px;
}
#TOP_calendar .TOP_calendar_ttl {
  position: relative;
	font-size: 1.4rem;
	margin-bottom: 40px;
	padding-bottom: 20px;
}
#TOP_calendar .TOP_calendar_ttl:before {
content: "";
    display: inline-block;
    position: absolute;
    left: calc(50% - 50px) ;
    bottom: -7px;
    width: 100px;
    height: 3px;
    border-radius: 5px;
  background: #000;
}
#TOP_calendar .TOP_calendar_info {
	background-color: #FFFFFF;
    border: solid 2px #cccccc;
	border-radius: 16px;
	padding: 20px 0;
	display: block;
	margin-bottom: 20px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_hd {
	text-align: center;
	font-size: 1.2rem;
	font-weight: 500;
	width: 100%;
	margin: 10px 0;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt {
	text-align: left;
	border-left: none;
	padding: 10px 15px 0 15px;
	font-size: 1rem;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul {
    display: block;
    padding: 5px 0;
    margin-bottom: 10px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul:last-child {
    display: block;
    padding: 5px 0;
    margin-bottom: 0;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul li {
    line-height: 2.4rem;
    text-align: center;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt ul li span {
    font-size: 1rem;
    font-weight: 500;
    color: #FFFFFF;
    background-color: #666666;
    border-radius: 8px;
    display: inline-block;
    padding: 0 20px;
    width: 100%;
    text-align: center;
    margin-right: 20px;
}
/*
#TOP_calendar .TOP_calendar_info {
	background-color: #f8f6f3;
	border-radius: 6px;
	padding: 20px 0;
	display: block;
	margin-bottom: 20px;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_hd {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 600;
	width: 100%;
	margin: 10px 0;
}
#TOP_calendar .TOP_calendar_info .TOP_calendar_info_txt {
	text-align: left;
	border-left: none;
	padding: 10px 20px ;
	font-size: 1.2rem;
}
*/
.calendar_att_text{
	font-size: 0.9rem;
	text-align: left;
	margin: 10px 0 0 0;
}
.calendar_att_text ul{
    list-style-type: none;
 list-style-position: inside;
}
.calendar_att_text ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
}
.calendar_kyugyou_cont{
	display: block;
}
.calendar_kyugyou_hd{
	color: #FFF;
	background-color: #695f5d;
	font-weight: 600;
	font-size: 0.9rem;
	width: 100%;
	text-align: center;
	border-radius: 100px;
	padding: 3px 0;
	margin: 5px 0;
}
.calendar_kyugyou_txt{
	margin-left: 0;
	text-align: center;
	margin-bottom: 20px;
}
#TOP_calendar .TOP_calendar_cont{
	background-color: #FFF;
	width: 100%;
	margin: 0 auto;
	padding: 40px 20px 20px 20px;
	border-radius: 10px;
	/*filter: drop-shadow(0 0 0.35rem #937044);*/
	filter: drop-shadow(0 0 0.35rem #2d7fbe);
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 80px;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box div{
	width: 100%;
	margin-bottom: 40px;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box div img{
	width: 80%;
	height: auto;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box .TOP_calendar_kinds{
	background-color: #f8f6f3;
	border-radius:6px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
display:flex;
	padding: 30px 0;
}
#TOP_calendar .TOP_calendar_cont .TOP_calendar_box .TOP_calendar_kinds img{
	width: 66% !important;
	height: auto;
}
.TOP_schedule_ttl{
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 0;
    padding: 20px 0 10px 0;
}
.TOP_schedule_box{
    border: solid 2px #cccccc;
    border-radius: 16px;
    padding: 10px 20px 30px 20px;
    margin-bottom: 30px;
}
.TOP_schedule_cont{
    display: block;
    margin-bottom: 15px;
}
.TOP_schedule_cont .sc_cont{
    width:100%;
    border-left: none;
    border-bottom:2px solid #cccccc;
    padding: 20px 0 20px 0;
    
}
.TOP_schedule_cont .sc_cont:last-child{
    border-bottom: none;
}

.TOP_schedule_cont .sc_cont .sc_ttl_cont{
    display: flex;
    align-items: center;
    justify-content: center;
}
.TOP_schedule_cont .sc_cont .sc_ttl_cont .sc_ttl{
    font-size: 1.4rem;
    font-weight: 500;
    display: inline-block;
    padding: 0 0 10px 10px;
}
.TOP_schedule_cont .sc_cont .sc_daypool{
    background-color: #e0f2ff;
    border:2px solid #e0f2ff; 
    border-radius:  4px;
    width: 1.8rem;
    height: 1.8rem;
    display: inline-block;
}
.TOP_schedule_cont .sc_cont .sc_gogopool{
    background-color: #e0f2ff;
    border:2px solid #f85902; 
    border-radius:  4px;
    width: 1.8rem;
    height: 1.8rem;
    display: inline-block;
}
.TOP_schedule_cont .sc_cont .sc_nightpool{
    background-color: #e0f2ff;
    border:2px solid #006cc0; 
    border-radius:  4px;
    width: 1.8rem;
    height: 1.8rem;
    display: inline-block;
}
.TOP_schedule_cont .sc_cont .sc_time{
    font-size: 1.2rem;
    font-weight: 500;
    margin-top: 5px;
}
.TOP_schedule_cont .sc_cont .sc_limited{
    font-size: 0.8rem;
    color: #FFFFFF;
    background-color: #006cc0;
    border-radius: 30px;
    display: inline-block;
    padding: 0 40px;
    margin: 15px 0 5px 0;
}
.TOP_schedule_cont .sc_cont .sc_txt{
    font-size: 1.1rem;
    font-weight: 400;
}
.sc_sample_outer{
    background-color: #f8f8f8;
    padding: 10px 0;
    border-radius: 16px;
}
.sc_sample{
    display: block;

    padding: 0 20px;
    border-radius: 16px;
}
.sc_sample .sc_sample_cont{
    display: flex;
    align-items: center;
    justify-content:flex-start;
    margin: 14px 5px;
}
.sc_sample .sc_sample_ttl{
    font-size: 1rem;
    font-weight: 500;
    display: inline-block;
    padding: 0 0 3px 10px;
}



 

#fw_cont{
	background-color: #f4f5f5;
	padding: 40px 20px 20px 20px;
}
#fw_cont .fw_bnarea{
	width: 100%;
	margin: 0 auto;
	display: block;
}
#fw_cont .fw_bnarea img{
	border-radius: 10px;
	width: 100%;
	height: auto;
	margin-bottom: 20px;
}
#fw_cont .fw_bnarea div{
	position: relative;
}
#fw_cont .fw_bnarea div:first-child{
    margin-right: 0;
}
#fw_cont .fw_bnarea div .fw_bnarea_ttl{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	font-size: 1.8rem;
	font-weight: 600;
	color: #FFF;
	padding-bottom: 2rem;
}
#fw_cont .fw_bnarea div .fw_bnarea_sttl{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	font-size: 0.9rem;
	font-weight: 600;
	color: #FFF;
	padding-top: 1.5rem;
}

.ttl_eigyou_af_9{
    background-color: #374754;
    color: #FFF;
    font-weight: 500;
    font-size: 1.2rem;
	width: 100%;
    border-radius: 6px;
    margin: 0 auto 20px auto;
    padding: 10px 0;
}   
#insta{
		margin-top: 60px;
}
.insta_cont{
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	padding: 0 20px;
}
.insta_cont div{
	width: 50%;
}
.insta_cont img{
	width: 100%;
	height: auto;
}
#fb_tw{
	display: block;
	width: 100%;
	margin: 60px auto ;
	padding: 0 20px;
}
.fb_cont{
	width: 100% !important;
	height: 440px;
	background-color: #FFF;
	margin: 0 auto 60px auto;
	padding: 20px;
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
}
.fb-page {
  width: 100% !important;
}
.tw_cont{
	width: 100%;
	height: 440px;
	background-color: #FFF;
	margin:  0 auto;
	padding: 20px;
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
}
#top_company{
	background-color: #006cc0;
	padding: 0;
}
.top_company_cont{
	width: 100%;
	margin: 0 auto;
	display: block;
	padding: 40px 20px;
}
.top_company_txt{
	width: 100%;
	color: #FFF;
	text-align: left;
	padding-top: 0;
	margin-bottom: 20px;
}
.top_company_ttl{
	font-size: 1.4rem;
	margin-bottom: 10px;
}
.top_company_map{
	width: 100%;
	height: 300px;
}
#top_banner{
	width: 100%;
	margin: 0 auto;
}
.top_banner_top{
	width: 100%;
	margin: 20px auto 0 auto;
	display: flex;
flex-wrap: wrap;
	padding: 20px;
}
.top_banner_top div{
	width: calc(50% - 5px);
		margin-bottom: 10px;
}
.top_banner_top img{
	border: 1px solid #ccc;
	width: 100%;
	height: auto;
}
.top_banner_bottom{
	width: 100%;
	margin: 0 auto 60px auto;
	display: block;
}
.top_banner_bottom img{
	margin: 0 0 10px 0;
}

.top_banner_bottom div{
    width: 100%;
  box-sizing:border-box;  
}

.banner_area{
	width: 100%;
	margin: 40px auto 40px auto ;
	text-align: center;	
	display: block;
}

.top_banner_recruit img,
.top_banner_event img,
.top_banner_ticket img,
.top_banner_bus img{
	width: 100%;
	height: auto;
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
}
.top_banner_ticket{
	width:100%;
	margin: 30px auto;
}
	
.top_banner_recruit,
.top_banner_event,
.top_banner_ticket,
.top_banner_bus{
	margin: 40px 0 0 0 ;
	padding: 0 20px;
	width: 100%;
}
.bn_bbq{
	text-align: center;
	margin: 0 0 0 0;
	padding: 10px 20px 40px 20px;
}
.bn_bbq img{
	width: 100%;
	height: auto;
	border-radius: 10px;
	filter: drop-shadow(0 0 0.35rem #e4e4e4);
	margin-top: 10px;
}
.table-container {
  position: relative;
  overflow-x: auto;
	margin:20px 0 20px 0;
}
.tb_product{
	border: 1px solid #222;
  border-collapse: collapse;
}
.tb_product th{
	background-color: #eff3f8;
}
.tb_product th,
.tb_product td{
	border: 1px solid #222;
	vertical-align: middle;
	padding: 2px 6px;
	font-size: 0.9rem;
	text-align: center;
  min-width: 200px;
}
.product_sozai_att{
	font-size: 0.9rem;
	text-align: left;
	margin-top: 10px;
}

	
.scroll-hint {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	width:220px;
  padding: 10px ;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  display: none;
  animation: scroll-hint-animation 2s infinite ease;
}
@keyframes scroll-hint-animation {
  0% {
    transform: translate(-50%, -50%);
  }
  50% {
    transform: translate(-40%, -50%);
  }
  100% {
    transform: translate(-50%, -50%);
  }
}

.scroll-hint--show {
  display: block;
}
	
	

.shopinfo_cont{
	display: block;
}
.shopinfo_cont div{
	width: 100%;
	margin-bottom: 30px;
}	
.restaurant_cont{
	margin: 20px 0 0 0;
	text-align: left;
}
.restaurant_img{
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
	margin: 20px 0 0 0 ;
}


.baiten_cont{
	margin: 20px 0 0 0;
	text-align: left;
	display: flex;
}
.baiten_ph img{
	width: 100px;
	height: auto;
}
.baiten_txt{
	padding: 30px 0 0 20px;
}	
}

/**NEWS**/
#news_detail{
	width: 820px; 
	margin: 80px auto;
}

#NEWSichiran{width: 820px; margin: 80px auto; }
.newstitle{font-size: 2rem; color: #623416; font-weight: bold;}

.newsTop ul{
	margin:0;
	padding:2px 0 0 0;
	font-size: 0.9rem;
}
.newsTop ul li{
	margin:0;
	padding:2px 0;
	list-style-type:none;
	text-align: left !important;
}
.newsTop ul li span.newsdate,
.newsList ul li span.newsdate{
	display: table-cell;
	width: 10rem;
}
.newsTop ul li span.newstext,
.newsList ul li span.newstext{
	display: table-cell;

}
.newsList ul{
	margin:0;
	padding:2px 0 0 0;
	font-size: 1rem;
	border-top: dotted 1px #c8c8c8;
}
.newsList ul li{
	margin:0;
	padding:20px 0;
	border-bottom: dotted 1px #c8c8c8;
	list-style-type:none;
	text-align: left !important;
}
.newsList ul li a{
 text-decoration: underline;
}
.newsList ul li a:hover{
 text-decoration: none;
}
.pNav{
	font-size: 0.8rem;
	text-align: left;
}
.event_titlearea{
	width: 100%;
}

.ttl_event{
	font-size: 1.2rem;
	font-weight: bold;
	text-align: left;
	border-top:solid 3px #000;
	padding: 20px 0 0 0 ;
	margin: 20px 0 0 0;
	color: #222 !important;
}
#up_ymd{
	text-align: right;
	font-size: 0.9rem;
	margin-top: 30px;
}
#postID{
	
}
.news_column{
	margin: 0 0 40px 0;
}
.detailText{
	text-align: left;
	margin: 40px 0 0 0;
}
.detailText p{
	padding: 8px 0;
}
.detailText a{
	text-decoration: underline;
}
.detailText a:hover{
	text-decoration: none;
}

.news_guest{
	display: flex;
	margin-top: 50px;
}
.news_guest_ph{
}
.news_guest_txt{
	margin-left: 30px;
}
.news_attention{
	border: 2px solid #e2e2e2;
	padding: 30px 40px;
	text-align: center;
	margin: 0 0 40px 0;
}

.news_marker{
	background:linear-gradient(transparent 70%, #86d0ff 60%);
}
.t-news table{
	
}
table .t-news th{
	width: 7rem;
	padding: 5px 0;
	
}
.t-news table td{
	
}

.news_otoiawase{
	background-color: #f8f8f8;
	border-radius: 10px;
	margin-top: 80px;
	padding: 30px;
}

@media screen and (max-width: 768px) {
#news_detail{
	margin: 40px 0;
	padding: 0 20px;
	width: 100%;
}
#NEWSichiran{width: 100%; margin: 40px auto; 	padding: 0 20px;}
.newstitle{font-size: 2.2rem; color: #623416;  }
.newsList ul,
.newsTop ul{
	margin:20px 0 0 0;
	padding:0 0 20px 0;
	border-top: dotted 1px #c8c8c8;
}
.newsList ul li,
.newsTop ul li{
	margin:0 0 0 0;
	padding:20px 0;
	border-bottom: dotted 1px #c8c8c8;
	list-style-type:none;
	text-align: left !important;
}
.newsList ul li span.newsdate,
.newsTop ul li span.newsdate{
	display: inline-block;
}
.newsList ul li span.newstext,
.newsTop ul li span.newstext{
	display: inline-block;
}
.pNav{
	font-size: 0.8rem;
	text-align: left;
}
.event_titlearea{
	width: 100%;
}

.ttl_event{
	font-size: 1.2rem;
	font-weight: bold;
	text-align: left;
	border-top:solid 3px #000;
	padding: 20px 0 0 0 ;
	margin: 20px 0 0 0;
	color: #222 !important;
}
#up_ymd{
	text-align: right;
	font-size: 0.9rem;
	margin-top: 30px;
}
#postID{
	
}
.news_column{
	margin: 0 0 40px 0;
}
.detailText{
	text-align: left;
	margin: 40px 0 0 0;
}
.detailText p{
	padding: 8px 0;
}
.detailText a{
	text-decoration: underline;
}
.detailText a:hover{
	text-decoration: none;
}

.news_guest{
	display: block;
	margin-top: 50px;
}
.news_guest_ph{
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}
.news_guest_ph img{
	width: 100%;
	height: auto;
}
.news_guest_txt{
	margin-left: 0;
}
table .t-news{
	
}
table .t-news th{
	width: 100%;
	padding: 15px 0 5px 0;
	display: block;
}
table .t-news td{
	width: 100%;
	display: block;
}

.news_otoiawase{
	background-color: #f8f8f8;
	border-radius: 10px;
	margin-top: 80px;
	padding: 30px;
}
}


.news_sns{
display: flex;
    justify-content: center;
    margin: 10px auto 0 auto;
}
.news_sns_th{
display: flex;
    justify-content: center;
    margin: 10px auto 0 auto;
}
.news_sns_th div{
    width: 100px;
}
.link_sns {
    margin: 0 20px;
    font-size: 0.9rem;
}
.link_sns a{
    text-decoration: underline;
}
.link_sns a:hover{
    text-decoration: none;
}
.link_sns span {
	display: block ;
    margin-bottom: 5px;
}
.icn_arrow {
	position: relative;
	display: inline-block;
	text-decoration: none;
 transition: ease .2s;
	cursor: pointer;
}
.icn_arrow::after {
content: '';
background-image: url(../img/shared/icn_arrow.png);
background-repeat: no-repeat;
background-size: 0.6rem 0.6rem;
    border: 0;
    width: 0.6rem;
    height: 0.6rem;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: calc(50% - 0.2rem);
    margin: 0 0 0 6px;
    /*アニメーションの指定*/
    transition: all .3s;
}

#sns{
		margin: 80px 0;
}
.sns_cont{
	width: 1000px;
	margin: 0 auto;
}
.sns_txt{
margin: -15px 0 30px 0;
}

@media screen and (max-width: 768px) {
.news_sns_th div{
    width: 90px;
}
.link_sns {
    margin: 0 10px;
    font-size: 0.8rem;
}

#sns{
		margin: 80px 0;
}
.sns_cont{
	width: 100%;
	margin: 0 auto;
}
.sns_txt{
margin: -15px 0 30px 0;
}
    
}

/******************************************

ticket

*******************************************/
#busticket{
	margin-top: 80px;
}
.busticket_logo{
	margin-bottom: 40px;
    margin-top: 40px;
}

@media screen and (max-width: 768px) {
#busticket{
	width:100%;
	margin: 40px auto 0 auto;
}
.busticket_logo{
	margin-bottom: 0;
    margin-top: 30px;
}
.busticket_logo img{
	width: 80%;
	height: auto;
}
.busticket_logo .table-container table{
		width: 100%;
	}
.tb_product th,
.tb_product td{
	border: 1px solid #222;
	vertical-align: middle;
	padding: 2px 6px;
	font-size: 0.9rem;
	text-align: center;
  min-width:inherit;
}
}

/******************************************

recruit

*******************************************/
#recruit{
	margin-top: 80px;
}
table.t-recruit {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 60px;
	margin-top: 30px;  
	border-top:  #939393 solid 1px;
}
table.t-recruit tr{
	border-bottom: #939393 solid 1px;
	outline: solid 3px #FFF;    /* 外側の線になる5pxの一本線の枠線をひく*/
	outline-offset: 1px;        /* 内側の線になる一本線の枠線をひく*/
}
table.t-recruit tbody th {
	padding: 14px 1rem;
	vertical-align: top;
	white-space: nowrap;
	width: 10rem;
	background-color: #eef9ff;
}
table.t-recruit tbody td {
	text-align: left;
	padding: 0;
	vertical-align: top;
}
table.t-recruit tbody td span {
	padding: 14px 0 14px 2rem;
	display: table-cell;
}
.recruit_slider{
}
.recruit_lead{
	margin: 20px 0 60px 0;
}
.recruit_lead .recruit_txt{
	margin-bottom: 40px;
}
.slider_block{
	padding-top: 30px;
}
.slider_s {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width:94%;
    margin:0 auto;

}

.slider_s img {
    width:50vw;/*スライダー内の画像を50vwにしてレスポンシブ化*/
    height:auto;
	border-radius: 10px;
}

.slider_s .slick-slide {
  transform: scale(0.8);/*左右の画像のサイズを80%に*/
  transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
  opacity: 1;/*透過50%*/
}

.slider_s .slick-slide.slick-center{
  transform: scale(1);/*中央の画像のサイズだけ等倍に*/
  opacity: 1;/*透過なし*/
}


/*矢印の設定*/

/*戻る、次へ矢印の位置*/


.slick-prev::before, 
.slick-next::before,
.slick-prev::after,
.slick-next::after{
  content: ""; /* 疑似要素に指定必須 */
  width: 20px; /* 線の長さを指定 */
  height: 4px; /* 線の幅を指定 */
  display: inline-block; /* インラインブロックにする */
  border-radius: 3px; /* 線を角丸にする */
  background: #626262;   /* 線の色を指定 */
  position: absolute; /* 相対位置に指定 */

}

.slick-prev::before, 
.slick-next::before {
  top: calc(50% - 8px);     /* 数値は微調整してください */
  transform: rotate(45deg); /* 45度回転させる */
}
.slick-prev::after,
.slick-next::after {
  bottom: calc(50% - 8px);   /* 数値は微調整してください */
  transform: rotate(-45deg); /* -45度回転させる */
}



.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/

}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(180deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;

}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
  margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
  margin:16px 12px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:10px;/*ドットボタンのサイズ*/
    height:10px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
	border: none;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#2170ba;/*ドットボタンの現在地表示の色*/
}
.form_hissu{
	color: #fff; 
	margin-left: 10px;
	background-color: #ff4208;
	font-size: 0.7rem;
	padding: 3px 5px;
	border-radius: 2px;
}
.form_lead p { padding-top: 10px;}
.form_box { padding:  0;
	margin: 40px 0 30px 0;

}
.form_ttl_eng{
	font-weight: 700;
	font-size: 1.2rem;
	margin-left: 10px;
}
.form_ttl_jp{
	font-size: 1.2rem;
	font-weight: 700;
}

.inquiry_telno{ font-size:1.6rem;}
a.historyback { color:#000; font-weight:bold;}
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input:focus{
  background: #f7f7f7; /*フォーカス時背景色*/
}
textarea:focus {
  background: #f7f7f7; /*フォーカス時背景色*/
	
}
input[type="text"],
textarea {
    padding: 0.8rem;
    outline: none;
	border: solid 2px  #549cd5;
    font-size: 1rem;
}
input::placeholder {
  color: #cccccc;
}

input.sysNextSubmit {
	display: block;
	padding: 0.8rem 7rem;
	border:none;
	background-color: #ccc;
	cursor: pointer;
	border-radius: 100px;
	font-size: 1.2rem;
	color: #015ca3;
	background: #FFF;
}

.btn_sysNextSubmit {
	position: relative;
	display: inline-block;
	text-decoration: none;
	border: solid 2px #015ca3;
 transition: ease .2s;
	border-radius: 100px;
	cursor: pointer;
}
.btn_sysNextSubmit::after {
content: '';
background-image: url(../img/shared/img_arrowR.png);
background-size: contain;
    border: 0;
    width: 20px;
    height: 12px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: calc(50% - 6px);
    right: 20px;
    /*アニメーションの指定*/
    transition: all .3s;
}
/*hoverした際の移動*/
.btn_sysNextSubmit:hover::after{
    right: 16px;
}

.radio-input + label{
  padding-left: 2rem;
  position:relative;
  margin-right: 20px;
}
.radio-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: -3.5px;
  left: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
	background-color: #FFF;
	border: solid 2px  #549cd5;	
}
.radio-input:checked + label{

}
.radio-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 3.5px;
  left: 7px;
  width: 16px;
  height:  16px;
  background: #006cc0;
  border-radius: 50%;
}
select::-ms-expand {
	display: none;
}
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin-bottom: 20px;
	padding: 12px 30px 12px 10px;
	font-size: 1rem;
	line-height: 1.1em;
	border-radius: 5px;
	border: solid 2px  #549cd5;	
	background-image: url("../img/shared/icon_arrow.svg");
	background-repeat: no-repeat;
	background-size: 12px 10px;
	background-position: right 10px center;
	background-color: #FFF;

}
.toiform_shimei,
.toiform_company,
.toiform_mailaddress,
.toiform_mailaddress2,
.toiform_tel,
.toiform_introducer
{width: 40rem;}

.toiform_naiyou{width:40rem; height:15rem}
.tb_st01{
	width:100%;
*border-collapse:collapse;
margin:40px 0;
}
    table.tb_st01 th,
    table.tb_st01 td {
        display: block;
    }
.tb_st01 th{
padding:5px 0;
margin:1px;
	width: 100%;
}

.tb_st01 td{
text-align:left;
vertical-align:top;
margin:1px;
padding:5px 0 20px 0;
}
.tb_st02{
	width:100%;
*border-collapse:collapse;
margin:0;
}

.tb_st02 th{
padding:0;
	width: 6rem;
vertical-align:middle;
}

.tb_st02 td{
text-align:left;
vertical-align:middle;

}
.error{ margin: 30px 0;}
@media screen and (max-width: 768px) {
#recruit{
	width:100%;
	margin: 40px auto 0 auto;
}
	
table.t-recruit {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 40px;
	margin-top: 20px;  
}
table.t-recruit tr{
	border-top:  #939393 solid 1px;
	border-bottom: #939393 solid 1px;
	outline: solid 3px #FFF;    /* 外側の線になる5pxの一本線の枠線をひく*/
	outline-offset: 1px;        /* 内側の線になる一本線の枠線をひく*/
	margin: 6px;  
}
table.t-recruit tbody th {
	padding: 12px 1rem 7px 1rem;
	border-bottom: none;
	vertical-align: top;
	white-space: nowrap;
	display: block;
	width: 100%;
	background-color: #eef9ff;
}
table.t-recruit tbody tr:last-child th {
	border-bottom: none;
	white-space: nowrap;
	display: block;
}
table.t-recruit tbody td {
	text-align: left;
	padding: 10px 0;
	border-top: none;
	border-bottom: none;
	vertical-align: top;
	display: block;
}

table.t-recruit tbody td span {
	padding: 0 0 7px 1rem;
	display: table-cell;
	display: block;
}
.slider_block{
background-image: url('../img/schedule/bg_slider_sp.png');
background-size: contain;
background-repeat: no-repeat;
	padding-top: 30px;
}

.slider_s {
    width:96%;
    margin:0 auto;

}

.slider_s img {
    width:70vw;
    height:auto;
	border-radius: 8px;
}

.slider_s .slick-slide {
  transform: scale(0.9);/*左右の画像のサイズを80%に*/
  transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
  opacity: 1;/*透過50%*/
}

.slider_s .slick-slide.slick-center{
  transform: scale(1);/*中央の画像のサイズだけ等倍に*/
  opacity: 1;/*透過なし*/
}


/*矢印の設定*/

/*戻る、次へ矢印の位置*/


.slick-prev::before, 
.slick-next::before,
.slick-prev::after,
.slick-next::after{
  content: ""; /* 疑似要素に指定必須 */
  width: 20px; /* 線の長さを指定 */
  height: 4px; /* 線の幅を指定 */
  display: inline-block; /* インラインブロックにする */
  border-radius: 3px; /* 線を角丸にする */
  background: #626262;   /* 線の色を指定 */
  position: absolute; /* 相対位置に指定 */

}

.slick-prev::before, 
.slick-next::before {
  top: calc(50% - 8px);     /* 数値は微調整してください */
  transform: rotate(45deg); /* 45度回転させる */
}
.slick-prev::after,
.slick-next::after {
  bottom: calc(50% - 8px);   /* 数値は微調整してください */
  transform: rotate(-45deg); /* -45度回転させる */
}



.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/

}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(180deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;

}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
  margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
  margin:16px 12px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:10px;/*ドットボタンのサイズ*/
    height:10px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
	border: none;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#2170ba;/*ドットボタンの現在地表示の色*/
}
.form_hissu{
	color: #fff; 
	margin-left: 10px;
	background-color: #ff4208;
	font-size: 0.7rem;
	padding: 3px 5px;
	border-radius: 2px;
}
.form_lead p { padding-top: 10px;}
.form_box { padding:  0;
	margin: 40px 0 30px 0;
}
.form_ttl_eng{
	font-weight: 900;
	font-size: 1rem;
}
.form_ttl_jp{
	font-size: 1rem;
}
.inquiry_telno{ font-size:1.6rem;}
a.historyback { color:#000; font-weight:bold;}
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input:focus{
  background: #f7f7f7;
}
textarea:focus {
  background: #f7f7f7;
}
input[type="text"],
textarea {
    padding: 0.8rem;
    outline: none;
    font-size: 1rem;
	border: solid 2px  #549cd5;
}


input.sysNextSubmit {
	display: block;
	padding: 0.8rem 0;
	width: 100%;
	border:none;
	background-color: #ccc;
	cursor: pointer;
	border-radius: 100px;
	font-size: 1rem;
	color: #015ca3;
	background: #FFF;
}

.btn_sysNextSubmit {
	position: relative;
	display: block;
	text-decoration: none;
	border: solid 2px #015ca3;
 transition: ease .2s;
	border-radius: 100px;
	cursor: pointer;
}
.btn_sysNextSubmit::after {
content: '';
background-image: url(../img/shared/img_arrowR.png);
background-size: contain;
    border: 0;
    width: 20px;
    height: 12px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: calc(50% - 6px);
    right: 20px;
    /*アニメーションの指定*/
    transition: all .3s;
}
/*hoverした際の移動*/
.btn_sysNextSubmit:hover::after{
    right: 16px;
}
	
	
.radio-input{border: none;}
.radio-input + label{
  padding-left: 2rem;
  position:relative;
  margin-right: 20px;
}
.radio-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: -3.5px;
  left: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
	background-color: #FFF;
	border: solid 2px  #549cd5;	
}
.radio-input:checked + label{

}
.radio-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 3.5px;
  left: 7px;
  width: 16px;
  height:  16px;
  background: #006cc0;
  border-radius: 50%;
}
	select{width: 100%;}
.toiform_shimei,
.toiform_company,
.toiform_mailaddress,
.toiform_mailaddress2,
.toiform_tel,
.toiform_introducer
{width: 100%;}

.toiform_naiyou{width:100%; height:15rem}
.tb_st01{
	width:100%;
*border-collapse:collapse;
margin:20px 0;

}
    table.tb_st01 th,
    table.tb_st01 td {
        display: block;
    }
.tb_st01 th{
padding:5px 0;
margin:1px;
	width: 100%;
}

.tb_st01 td{
text-align:left;
vertical-align:top;
margin:1px;
padding:5px 0 20px 0;
}
.error{ margin: 30px 0;}
}

/**施設案内**/
#facility{
	margin-top: 80px;
}

@media screen and (max-width: 768px) {
#facility{
	width:100%;
	margin: 40px auto 0 auto;
}	

}


/**プール**/
#pool{
	margin-top: 80px;
scroll-behavior: smooth;
}
.pool_cont{
	border-bottom: solid 2px #CCC;
	padding: 0 0 30px 0;
	margin: 0 0 40px 0;
}
.slider_block-p{
background-image: url('../img/schedule/bg_slider.png');
background-size: contain;
background-repeat: no-repeat;
	padding-top: 30px;
    margin-bottom: 40px;
}
.slider_s {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width:94%;
    margin:0 auto;

}

.slider_s img {
    width:50vw;/*スライダー内の画像を50vwにしてレスポンシブ化*/
    height:auto;
	border-radius: 20px;
}

.slider_s .slick-slide {
  transform: scale(0.8);/*左右の画像のサイズを80%に*/
  transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
  opacity: 1;/*透過50%*/
}

.slider_s .slick-slide.slick-center{
  transform: scale(1);/*中央の画像のサイズだけ等倍に*/
  opacity: 1;/*透過なし*/
}


/*矢印の設定*/

/*戻る、次へ矢印の位置*/


.slick-prev::before, 
.slick-next::before,
.slick-prev::after,
.slick-next::after{
  content: ""; /* 疑似要素に指定必須 */
  width: 20px; /* 線の長さを指定 */
  height: 4px; /* 線の幅を指定 */
  display: inline-block; /* インラインブロックにする */
  border-radius: 3px; /* 線を角丸にする */
  background: #626262;   /* 線の色を指定 */
  position: absolute; /* 相対位置に指定 */

}

.slick-prev::before, 
.slick-next::before {
  top: calc(50% - 8px);     /* 数値は微調整してください */
  transform: rotate(45deg); /* 45度回転させる */
}
.slick-prev::after,
.slick-next::after {
  bottom: calc(50% - 8px);   /* 数値は微調整してください */
  transform: rotate(-45deg); /* -45度回転させる */
}



.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/

}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(180deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;

}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
  margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
  margin:16px 12px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:10px;/*ドットボタンのサイズ*/
    height:10px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
	border: none;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#2170ba;/*ドットボタンの現在地表示の色*/
}

table.t-pool {
	border-collapse: collapse;
	border-top:  #939393 solid 1px;
}
table.t-pool tr{
	border-bottom: #939393 solid 1px;
	border-left: #939393 solid 1px;
	border-right: #939393 solid 1px;
	outline: solid 3px #FFF;    /* 外側の線になる5pxの一本線の枠線をひく*/
	outline-offset: 1px;        /* 内側の線になる一本線の枠線をひく*/
}
table.t-pool tbody th {
	padding: 14px 1rem;
	vertical-align: top;
	white-space: nowrap;
	background-color: #eef9ff;
}
table.t-pool tbody td {
	text-align: left;
	padding: 0;
	vertical-align: top;
}
table.t-pool tbody td span {
	padding: 14px 1rem;
	display: table-cell;
}
.pool_link{
display: flex;
justify-content: center;
margin: 80px 0 80px 0;

}
.pool_link div{
    width: 160px;
    text-align: center;
    font-size: 0.9rem;
    line-height: 140%;
}
.pool_link img{
    width: 80px;
    height: auto;
    margin-bottom: 6px;
}
#pool_01,
#pool_02,
#pool_03,
#pool_04,
#pool_05{
     display: block;
    padding-top: 100px;
    margin-top: -100px;
}

@media screen and (max-width: 768px) {
#pool{
	width:100%;
	margin: 40px auto 0 auto;
}	
.slider_block-p{
background-image: url('../img/schedule/bg_slider_sp.png');
background-size: contain;
background-repeat: no-repeat;
	padding-top: 30px;
    margin-bottom: 20px;
}

.slider_s {
    width:96%;
    margin:0 auto;

}

.slider_s img {
    width:70vw;
    height:auto;
	border-radius: 12px;
}

.slider_s .slick-slide {
  transform: scale(0.9);/*左右の画像のサイズを80%に*/
  transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
  opacity: 1;/*透過50%*/
}

.slider_s .slick-slide.slick-center{
  transform: scale(1);/*中央の画像のサイズだけ等倍に*/
  opacity: 1;/*透過なし*/
}


/*矢印の設定*/

/*戻る、次へ矢印の位置*/


.slick-prev::before, 
.slick-next::before,
.slick-prev::after,
.slick-next::after{
  content: ""; /* 疑似要素に指定必須 */
  width: 10px; /* 線の長さを指定 */
  height: 2px; /* 線の幅を指定 */
  display: inline-block; /* インラインブロックにする */
  border-radius: 3px; /* 線を角丸にする */
  background: #626262;   /* 線の色を指定 */
  position: absolute; /* 相対位置に指定 */

}

.slick-prev::before, 
.slick-next::before {
  top: calc(50% - 4px);     /* 数値は微調整してください */
  transform: rotate(45deg); /* 45度回転させる */
}
.slick-prev::after,
.slick-next::after {
  bottom: calc(50% - 4px);   /* 数値は微調整してください */
  transform: rotate(-45deg); /* -45度回転させる */
}



.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 36%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/

}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(180deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;

}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
  margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
  margin:16px 6px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:6px;/*ドットボタンのサイズ*/
    height:6px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
	border: none;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#2170ba;/*ドットボタンの現在地表示の色*/
}
    
.pool_link{
display: flex;
justify-content: center;
    flex-wrap: wrap;
margin: 40px 0 30px 0;

}
.pool_link div{
    width: 100px;
    text-align: center;
    font-size: 0.7rem;
    line-height: 140%;
    margin-bottom: 20px;
}
.pool_link img{
    width: 60px;
    height: auto;
    margin-bottom: 6px;
}
#pool_01,
#pool_02,
#pool_03,
#pool_04,
#pool_05{
     display: block;
    padding-top: 60px;
    margin-top: -60px;
}
    
}




/**ご利用料金**/
#fee{
	margin-top: 80px;
}
.att_nightpool{
	background-color: #e65826;
	color: #FFFFFF;
	border-radius:6px;
	padding: 10px ;
	font-size: 1.1rem;
	font-weight: 500;
}
.att_nightpool2{
    color: #e65826;
    border: 2px solid #e65826;
	border-radius:6px;
	padding: 10px ;
	font-size: 1.1rem;
	font-weight: 500;
    margin-top: 20px;
    margin-bottom: 20px;
}
.fee_cont{
	margin: 20px auto 0 auto;
	width: 100%;
    overflow-x: auto;
    display: block;
}
.fee_cont tbody{
	border-top: 1.5px solid #999999;
}
.fee_cont tbody tr{
	border-bottom: 1.5px solid #999999;
	text-align: left;
	border-right: 1.5px solid #999999;
}
.fee_cont tbody tr td{
	padding: 20px 15px;
	border-left: 1.5px solid #999999;
    text-align: center;
    vertical-align: middle;
}
.fee_cont tbody tr td.fee_hd{
	font-weight: 600;
	background-color: #f4f4f4;
    white-space: nowrap;
}
/* スクロールバー全体を対象にする */
.fee_cont::-webkit-scrollbar {
    width: 10px; /* スクロールバーの幅 */
    height: 10px; /* スクロールバーの高さ */
}

/* スクロールバーの背景部分をカスタマイズ */
.fee_cont::-webkit-scrollbar-track {
    background: #f1f1f1; /* スクロールバーの背景色 */
    border-radius: 5px; /* 角丸にする */
}

/* スクロールバーの操作部分をカスタマイズ */
.fee_cont::-webkit-scrollbar-thumb {
    background: #888; /* スクロールバーの操作部分の背景色 */
    border-radius: 5px; /* 角丸にする */
}

/* スクロールバーの操作部分にホバーした時のスタイル */
.fee_cont::-webkit-scrollbar-thumb:hover {
    background: #555; /* ホバー時のスクロールバーの操作部分の背景色 */
}

@media screen and (max-width: 768px) {
#fee{
	width:100%;
	margin: 40px auto 0 auto;
}
.att_nightpool{
	background-color: #e65826;
	color: #FFFFFF;
	border-radius:6px;
	padding: 10px ;
	font-size: 1rem;
	font-weight: 500;
}
.att_nightpool2{
    color: #e65826;
    border: 2px solid #e65826;
	border-radius:6px;
	padding: 10px ;
	font-size: 1rem;
	font-weight: 500;
    margin-top: 20px;
    margin-bottom: 20px;
}
.fee_cont{
	margin: 20px auto 0 auto;
	width: 100%;
}
.fee_cont tbody{
	border-top: 1.5px solid #999999;
}
.fee_cont tbody tr{
	border-bottom: 1.5px solid #999999;
	text-align: left;
	border-right: 1.5px solid #999999;
}
.fee_cont tbody tr td{
	padding: 15px 10px;
	border-left: 1.5px solid #999999;
    text-align: center;
    vertical-align: middle;
}
.fee_cont tbody tr td.fee_hd{
	font-weight: 600;
	background-color: #f4f4f4;
}
}







/**ご利用ガイド**/
#guide{
	margin-top: 80px;
}
.useinfo_cont{
	text-align: left;
	margin: 10px auto 40px auto;
}
.useinfo_cont ul{
    list-style-type: none;
 list-style-position: inside;
}
.useinfo_cont ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
	margin-bottom: 12px;
}
.guide_cal{
	display: flex;
	justify-content: space-between;
}
.guide_cal img{
	width: 310px;
}
.guide_cont{
	margin: 60px auto 30px auto;
	width: 100%;
}
.guide_cont tbody{
	border-top: 2px solid #dcdcdc;
}
.guide_cont tbody tr{
	border-left: 2px solid #dcdcdc;
	border-right: 2px solid #dcdcdc;
	border-bottom: 2px solid #dcdcdc;
	text-align: left;
}
.guide_cont tbody tr td{
}
.guide_cont tbody tr td.guide_hd{
	font-weight: 600;
	border-right: 2px solid #dcdcdc;
	width: 300px;
}
.guide_cont tbody tr td.guide_txt{
	padding: 26px 30px 30px 30px;
	vertical-align: middle;
}
.guide_cont tbody tr td.guide_ttl{
	padding: 18px;
	vertical-align: middle;
    text-align: center;
    font-weight: 500;
    font-size: 1.4rem;
    background-color: #006cc0;
    color: #FFF;
}
.guide_cont img{
	width: 220px;
	height: auto;
	padding: 20px 0 20px 30px;
}
.guide_time{
	font-size: 1.6rem;
	font-weight: 600;
}
@media screen and (max-width: 768px) {
#guide{
	width:100%;
	margin: 40px auto 0 auto;
}	

.useinfo_cont{
	width: 100%;
	text-align: left;
	margin: 10px auto 40px auto;
}
.useinfo_cont ul{
    list-style-type: none;
 list-style-position: inside;
}
.useinfo_cont ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
	margin-bottom: 12px;
}
.guide_cal{
	display: block;
}
.guide_cal img{
	width: 80%;
	height: auto;
	margin: 10px 0;
}
.guide_cont{
	margin: 60px auto 30px auto;
	width: 100%;
}
.guide_cont tbody{
	border-top: 2px solid #dcdcdc;
}
.guide_cont tbody tr{
	border-left: 2px solid #dcdcdc;
	border-right: 2px solid #dcdcdc;
	border-bottom: 2px solid #dcdcdc;
	text-align: left;
}
.guide_cont tbody tr td{
      display: block;
}
.guide_cont tbody tr td.guide_hd{
	font-weight: 600;
	border-right: none;
	width: 300px;
}
.guide_cont tbody tr td.guide_txt{
	padding: 10px 20px 20px 20px;
	vertical-align: middle;
}
.guide_cont img{
	width: 220px;
	height: auto;
	padding: 20px 0 0 20px;
}
.guide_time{
	font-size: 1.6rem;
	font-weight: 600;
}
}


/**食事・買い物**/
#shop{
	margin-top: 80px;
}
.restaurant_img{
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
	margin: 30px 0 0 0 ;
}
.restaurant_img div{
	width: calc(100% / 3);
}
.restaurant_img img{
	width: 100%;
	height: auto;
}
.restaurant_ttl{
	font-size: 1.4rem;
	font-weight: 600;
	margin: 50px 0 30px 0;
}
.restaurant_menu{
	margin: 30px auto 0 auto;
	width: 100%;
}
.restaurant_menu ul{
	border-bottom: 2px solid #dcdcdc;
	border-top: 1px solid #dcdcdc;
}
.restaurant_menu ul li{
	border-top: 1px solid #dcdcdc;
	display: inline-block;
	padding: 15px 30px;
}
.restaurant_menu ul li:first-child,
.restaurant_menu ul li:second-child{
	border:none;
}
.restaurant_menu ul li.restaurant_name{
	width: 80%;
	text-align: left;
}
.restaurant_menu ul li.restaurant_price{
	width: 20%;
	text-align: right;
}
.bbqpitcamp_img{
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
	margin: 30px 0 0 0 ;
}
.bbqpitcamp_img div{
	width: calc(100% / 3);
}
.bbqpitcamp_img div.col2{
	width: calc(100% / 2);
}
.bbqpitcamp_img img{
	width: 100%;
	height: auto;
}
.cont_flex .btn_bbqtel,
.cont_flex .btn_bbqnet{
	margin-top: 30px;
	width: 490px;
}
.bbq_menu{
 	border-top: 2px solid #dcdcdc;
    margin-bottom: 30px;
}
.bbq_menu_cont{
	border-bottom: 2px solid #dcdcdc;    
    padding: 20px 20px;
}
.bbq_menu_main{
    display: flex;
    justify-content: space-between;  
}
.bbq_ttl{
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 10px;
}
.bbq_price{
    font-size: 1.1rem;
    font-weight: 500;
}
.bbq_price span{
    font-size: 1.1rem;
    font-weight: 500;
    color: #007bd8;
}


@media screen and (max-width: 768px) {
#shop{
	width:100%;
	margin: 40px auto 0 auto;
}	
.restaurant_img div{
	width: 50%;
}
.restaurant_img img{
	width: 100%;
	height: auto;
}
.restaurant_menu{
	margin: 30px auto 0 auto;
	width: 100%;
}

.restaurant_menu ul li{
	border-top: 1px solid #dcdcdc;
	display: inline-block;
	padding: 15px 20px;
}

.restaurant_menu ul li.restaurant_name{
	width: 76%;
	text-align: left;
}
.restaurant_menu ul li.restaurant_price{
	width: 24%;
	text-align: right;
}
.bbqpitcamp_img{
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
	margin: 30px 0 0 0 ;
}
.bbqpitcamp_img div,
.bbqpitcamp_img div.col2{
	width: 100%;
}
.bbqpitcamp_img img{
	width: 100%;
	height: auto;
}
.cont_flex .btn_bbqtel{
	margin-top: 20px;
	width: 100%;
}
.cont_flex .btn_bbqnet{
	margin-top: 10px;
	width: 100%;
}
.bbq_menu{
 	border-top: 2px solid #dcdcdc;
    margin-bottom: 30px;
}
.bbq_menu_cont{
	border-bottom: 2px solid #dcdcdc;    
    padding: 20px 20px;
}
.bbq_menu_main{
    display: block;
}
.bbq_ttl{
    font-size: 1.1rem;
    font-weight: 500;
    margin-bottom: 5px;
}
.bbq_price{
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 5px;
}
.bbq_price span{
    font-size: 1rem;
    font-weight: 500;
    color: #007bd8;
}
}


/**レンタル**/
#rental{
	margin-top: 80px;
}

@media screen and (max-width: 768px) {
#rental{
	width:100%;
	margin: 40px auto 0 auto;
}	

}


/**アクセス**/
#access{
	margin-top: 80px;
}
.access_map{
	border-radius: 10px;
	margin-top: 60px;
}
.access_btn{
	display: flex;
	justify-content: center;
	margin-bottom: 100px;
}
.access_btn div{
	width: 240px;
}
.access_btn img{
	margin-bottom: 20px;
}
.access_btn a{
	font-size: 1.2rem;
	font-weight: 500;
	text-decoration: none;
}
.att_text{
	font-size: 1rem;
	text-align: left;
	margin: 10px 0 20px 0;
}
.att_text ul{
    list-style-type: none;
 list-style-position: inside;
}
.att_text ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
}
.att_access{
    color: #e65826;
    border: 2px solid #e65826;
	border-radius:6px;
	padding: 10px ;
	font-size: 1.1rem;
	font-weight: 500;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: left;
}
.att_access .att_text{
	font-size: 1rem;
	text-align: left;
	margin: 0;
}
.att_access .att_text ul{
    list-style-type: none;
 list-style-position: inside;
}
.att_access .att_text ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
	font-weight: 500;
}
@media screen and (max-width: 768px) {
#access{
	width:100%;
	margin: 40px auto 0 auto;
}	
.access_btn{
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
.access_btn div{
	width: 44%;
	line-height: 1rem;
}
.access_btn img{
	width: 110px;
	height: auto;
	margin-bottom: 10px;
}
.access_btn a{
	font-size: 0.8rem;
	font-weight: 500;
	text-decoration: none;
}
.att_text{
	font-size: 1rem;
	text-align: left;
	margin: 10px 0 20px 0;
}
.att_text ul{
    list-style-type: none;
 list-style-position: inside;
}
.att_text ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
}
}


/**貸切利用**/
#private{
	margin-top: 80px;
}
.private_sttl{
	font-size: 1.2rem;
	font-weight: 600;
	text-align: left;
	margin: 30px 0 20px 0;
}
.private_pdf{
	text-align: left;
	margin-top: 15px;
}
.private_pdf img{
	margin-right: 10px;
}
.reserved_phcont{
	display: flex;
	flex-wrap: wrap;
	margin: 50px 0 70px 0;
}
.reserved_phcont div{
	width: 50%;
	height: auto;
	position: relative;
}
.reserved_phcont div .phcont_ssttl{
	position: absolute;
	bottom: 20px;
	left: 20px;
	background-color: #000;
	color: #FFF;
	font-weight: 600;
	font-size: 0.9rem;
	padding: 4px 20px;
}

@media screen and (max-width: 768px) {
#private{
	width:100%;
	margin: 40px auto 0 auto;
	
}	
.private_sttl{
	font-size: 1.1rem;
	font-weight: 600;
	text-align: left;
	margin: 30px 0 20px 0;
}
.private_pdf{
	text-align: left;
	margin-top: 15px;
}
.private_pdf img{
	margin-right: 10px;
}
.reserved_phcont{
	display: flex;
	flex-wrap: wrap;
	margin: 30px 0 30px 0;
}
.reserved_phcont div{
	width: 100%;
	height: auto;
	position: relative;
}
.reserved_phcont div .phcont_ssttl{
	position: absolute;
	bottom: 20px;
	left: 20px;
	background-color: #000;
	color: #FFF;
	font-weight: 600;
	font-size: 0.9rem;
	padding: 4px 20px;
}
}



/**FAQ**/
#faq{
	margin-top: 80px;
}
.faq_btn{
	display: flex;
	justify-content: center;
	margin-bottom: 100px;
}
.faq_btn div{
	width: 240px;
}
.faq_btn img{
	margin-bottom: 20px;
}
.faq_btn a{
	font-size: 1.2rem;
	font-weight: 500;
	text-decoration: none;
}
/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    width: 100%;
    margin:0 auto 80px auto;
	border-bottom: 1px solid #ccc;
}
.accordion-area li{
    margin: 10px 0;
}

.accordion-area section {
	border-top: 1px solid #ccc;
}

/*アコーディオンタイトル*/
.q_title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1.1rem;
    font-weight: 500;
    padding: 40px 0 30px 50px;
    transition: all .5s ease;
	text-align: left;
	background: url('../img/faq/img_Q.png') no-repeat top 38px left 0 ;
	background-size: 30px 30px;	
}

/*アイコンの＋と×*/
.q_title::before,
.q_title::after{
    position: absolute;
    content:'';
    width: 18px;
    height: 2px;
    background-color: #0c326b;
    
}
.q_title::before{
    top:50px;
    right: 15px;
    transform: rotate(0deg);
    
}
.q_title::after{    
    top:50px;
    right: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.q_title.close::before{
	transform: rotate(45deg);
}

.q_title.close::after{
	transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.box {
    display: none;/*はじめは非表示*/
	padding: 0 0 30px 50px;
	background: url('../img/faq/img_A.png') no-repeat top 0 left 0 ;
	background-size: 30px 30px;	
}

@media screen and (max-width: 768px) {
#faq{
	width:100%;
	margin: 40px auto 0 auto;
}	
.faq_btn{
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
.faq_btn div{
	width: 240px;
	line-height: 1rem;
}
.faq_btn img{
	width: 90px;
	height: auto;
	margin-bottom: 10px;
}
.faq_btn a{
	font-size: 0.8rem;
	font-weight: 500;
	text-decoration: none;
}
/*アコーディオン全体*/
.accordion-area{
    list-style: none;
    width: 100%;
    margin:0 auto 40px auto;
	border-bottom: 1px solid #ccc;
}

.accordion-area li{
    margin: 10px 0;
}

.accordion-area section {
	border-top: 1px solid #ccc;
}

/*アコーディオンタイトル*/
.q_title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1rem;
    font-weight: 500;
    padding: 20px 46px 10px 36px;
    transition: all .5s ease;
	text-align: left;
	background: url('../img/faq/img_Q.png') no-repeat top 25px left 6px ;
	background-size: 18px 18px;	
}

/*アイコンの＋と×*/
.q_title::before,
.q_title::after{
    position: absolute;
    content:'';
    width: 14px;
    height: 2px;
    background-color: #0c326b;
    
}
.q_title::before{
    top:32px;
    right: 15px;
    transform: rotate(0deg);
    
}
.q_title::after{    
    top:32px;
    right: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.q_title.close::before{
	transform: rotate(45deg);
}

.q_title.close::after{
	transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.box {
    display: none;/*はじめは非表示*/
	padding: 0 46px 5px 36px;
	background: url('../img/faq/img_A.png') no-repeat top 5px left 6px ;
	background-size: 18px 18px;	
}
}


/**アウトドア**/
#outdoor{
	margin-top: 80px;
}
.outdoor_sttl{
	color: #FFF;
	background-color: #38a4f8;
	font-weight: 500;
	font-size: 1.6rem;
	margin: 0 0 40px 0;
	padding: 20px;
	border-radius:10px;
	text-align: left;
	
}
.outdoor_ssttl{
  position: relative;
	margin: 60px 0 20px 0;
	text-align: left;
	padding: 5px 0 5px 1.6rem;
		font-weight: 500;
	font-size: 1.4rem;
}
.outdoor_ssttl:before {
content: "";
    display: inline-block;
    position: absolute;
  top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    border-radius: 5px;
  background: #38a4f8;
}
.outdoor_cont{
    display: flex;
    justify-content: space-between;
}
.outdoor_img{
    width: 360px;
}
.outdoor_txt{
    width: 600px;
}

@media screen and (max-width: 768px) {
#outdoor{
	width:100%;
	margin: 40px auto 0 auto;
}	

.outdoor_ssttl{
  position: relative;
	margin: 40px 0 20px 0;
	text-align: left;
	padding: 5px 0 5px 1rem;
		font-weight: 500;
	font-size: 1.2rem;
}
.outdoor_ssttl:before {
content: "";
    display: inline-block;
    position: absolute;
  top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    border-radius: 5px;
  background: #38a4f8;
}
.outdoor_cont{
    display: block;
}
.outdoor_img{
    width: 100%;
}
.outdoor_txt{
    margin-top: 15px;
    width: 100%;
}
}


/**キャンプ教室**/
#camp{
	margin-top: 80px;
}
.cont_camp{
	display: flex;
	justify-content: space-between;
	margin: 0 0 40px 0;
}
.cont_camp .cont_camp_ph{
	width: 482px;

}
.gaiyou_cont{
	margin: 30px auto 0 auto;
	width: 100%;
}
.gaiyou_cont tbody{
	border-top: 1.5px solid #999999;
}
.gaiyou_cont tbody tr{
	border-bottom: 1.5px solid #999999;
	text-align: left;
}
.gaiyou_cont tbody tr td{
	padding: 26px 30px;
}
.gaiyou_cont tbody tr td.gaiyou_hd{
	font-weight: 600;
	background-color: #f4f4f4;


}
.att_gaiyou{
	font-size: 1rem;
	text-align: left;
	margin: 5px 0 0 0;
}
.att_gaiyou ul{
  list-style-type: none;
 list-style-position: inside;
}
.att_gaiyou ul li{
	padding-left: 1rem; 
	text-indent: -1rem;
}
.flow_sttl{
	color: #FFFFFF;
	font-weight: 600;
	padding: 5px 0;
	background-color: #333;
	border-radius:30px;
	margin: 35px auto 20px 0;
	width: 160px;
}
.flow_cont{
	border-left: 3px solid #dcdcdc;	
	padding: 6px 0 6px 26px;
	margin: 0 0 0 20px;
}
.flow_box{
	display: flex;
	justify-content: flex-start;
}
.flow_hd{
	width: 5rem;
	text-align: left;
	font-weight: 600;
}
.flow_txt{
	text-align: left;
}
@media screen and (max-width: 768px) {
#camp{
	width:100%;
	margin: 40px auto 0 auto;
}
.cont_camp{
	display: flex;
	justify-content: space-between;
	margin: 0 0 30px 0;
}
.cont_camp .cont_camp_ph{
	width: calc( 50% - 8px );

}
.gaiyou_cont{
	margin: 30px auto 0 auto;
	width: 100%;
}
.gaiyou_cont tbody{
	border-top: 1.5px solid #999999;
}
.gaiyou_cont tbody tr{
	border-bottom: 1.5px solid #999999;
	text-align: left;
}
.gaiyou_cont tbody tr td{
	padding: 15px 10px;
	display: block;
}
.gaiyou_cont tbody tr td.gaiyou_hd{
	font-weight: 600;
	padding: 15px 10px 15px 10px;
}
.flow_sttl{
	color: #FFFFFF;
	font-weight: 600;
	padding: 5px 0;
	background-color: #333;
	border-radius:30px;
	margin: 30px auto 15px 0;
	width: 160px;
}
.flow_cont{
	border-left: 3px solid #dcdcdc;	
	padding: 6px 0 6px 26px;
	margin: 0 0 0 10px;
}
.flow_box{
	display: block;
}
.flow_hd{
	width: 5rem;
	text-align: left;
}
.flow_txt{
	text-align: left;
	margin-bottom: 15px;
}
}



/**SUP/KAYAK**/
#supkayak{
	margin-top: 80px;
}

@media screen and (max-width: 768px) {
#supkayak{
	width:100%;
	margin: 40px auto 0 auto;
}	

}