@charset "UTF-8";
/*--------------------------
リセット
---------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}
img{
	height:auto;
}



/*--------------------------
基本：基本タグ
---------------------------- */
/* [ PC - SP switch ] */
@media screen and (min-width: 768px) {
  .pcOFF {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  /* Smartphone */
  .spOFF {
    display: none !important;
  }
}
/* -------*/
* {
  box-sizing: border-box;
}

html {
  overflow-y: scroll;
}
body {
	font-family: "Hina Mincho", serif;
	font-weight: 400;
	font-style: normal;
	line-height:1.8;
	color:#333333;
	position:relative;
}
a{
	text-decoration:none;
	text-underline-offset: 0.4ex;
}
a:hover{
	text-decoration:underline;
	color:#b8a47c;
}

a img:hover{
	opacity: 0.85;
}

@media screen and (max-width: 767px) { /* Smartphone */
	body {
		background:#fff;
	}
}


/* フェードインさせる要素 */
.fade, .fadeDelay {
    opacity: 0; /* 最初は非表示にしておく */
    transition: all 1.5s; /* 動きを滑らかに */
}
/* フェードイン用のクラス */
.fadeIn {
    opacity: 1;
}


/*--------------------------
基本書式
---------------------------- */
.tit01{
	font-size:clamp(32px , 3.6vw , 40px);
	letter-spacing:3px;
	position:relative;
	padding-bottom:15px;
	margin-bottom:45px;
	text-align:center;
	color: #9d8148;

}
.tit01:after{
	content:"";
	display:block;
	width:300px;
	height:1px;
	background:#b8a47c;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
}
.tit02{
	font-size:clamp(22px , 2.8vw , 30px);
	letter-spacing:3px;
	position:relative;
	padding: 0px 5px;
	border-left: solid 1px #b8a47c;
	margin-bottom: 20px;
}

.tit02::before{
	content:"";
	border-left: 1px solid #b8a47c;
	padding-right: 15px;
}

@media screen and (max-width: 767px) { /* Smartphone */
	.tit01{
		padding-bottom:15px;
		margin-bottom:30px;
	}
	.tit02{
		padding-bottom:15px;
		margin-bottom:30px;
	}
}

/* ---------- */
.lnkBtn{
	text-align:center;
}
.lnkBtn a{
	display:inline-block;
	background:#222222;
	font-size:clamp(16px , 2.0vw , 20px);
	text-align:center;
	padding:20px 5px;
	color:#fff;
	width:100%;
}
.lnkBtn a:hover{
	background:#870404;
	text-decoration:none;
}
@media screen and (max-width: 767px) { /* Smartphone */
	.lnkBtn a{
		padding:10px 5px;
		color:#fff;
		width:100%;
	}
}


/*----------------------------------------------------
SP-nav
------------------------------------------------------ */
/* スマホヘッダー */
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  z-index: 9999999;
}

#fixed-top {
  position: fixed;
  top: 0;
  z-index: 99999999;
  width: 100%;
  height:55px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
	background: #eeeeee87;
}

/* ヘッダーのロゴ */
#fixed-top .logo {
  padding: 5px 0 0 6px;
}

#fixed-top .logo img {
  width: auto;
  max-width: 102px;
  height: 50px;
  vertical-align:bottom;
}

/* ヘッダーのボタン関連 */
#fixed-top .headerButtons {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: right;
  justify-content: right;
}
#fixed-top .headerButtons img{
  vertical-align:bottom;
}
#fixed-top .headerButtons li a {
  display: block;
}

#fixed-top .headerButtons li img {
  vertical-align: bottom;
  height: 55px;
  width: auto;
}

/* ----------------------
 * wrapper
 * ---------------------- */
#wrapper{
	margin-top:85px;
}
body.body-top-page #wrapper{
	margin-top:0px;
}

/*ナビ固定がメインコンテンツと被らないように*/
#wrapper .mainVisualBox{
	padding-top: 100px;
    margin-top:-100px;
}

#wrapper .aboutArea{
	padding-top: 100px;
    margin-top:-100px;
}

#wrapper .aboutDetailArea__lst .item{
	padding-top: 100px;
    margin-top:-100px;
}

#wrapper .grantArea{
	padding-top: 100px;
    margin-top:-100px;
}

#wrapper .scheduleBox{
	padding-top: 100px;
    margin-top:-100px;
}

#wrapper .topInfoArea{
	padding-top: 100px;
    margin-top:-100px;
}



@media screen and (max-width: 767px) { /* Smartphone */
	#wrapper{
		margin-top:55px;
	}
	body.body-top-page #wrapper{
		margin-top:0px;
	}
}





/*--------------------------
mainContent
---------------------------- */

.mainContent{
	width:100%;
	max-width:1000px;
	margin:100px auto 0;
}
@media screen and (max-width: 1000px) { /* スマートフォン */
	.mainContent{
		margin-top:30px;
		max-width:calc( 100% - 30px);
	}
}
/*--------------------------
layoutBox
---------------------------- */
.layoutBox{
	margin-bottom: clamp(50px, 12.1212vw + 4.5455px, 150px); /* 375px ～ 1200px の間で可変する */
}


.layoutBox .box{
	margin-bottom: clamp(30px, 5.1020vw + 10.8673px, 50px); /* Vary between 375px and 767px */
}
.layoutBox .box:last-child{
	margin-bottom:0;
}





/* スマホ ボタン */
.spMenu-btn {
	margin-bottom:30px;
}
.spMenu-btn a{
	display:block;
	width: calc(100% - 40px);
	margin:0 auto;
	border-radius: 38.5px;
	background:#b8a47c;
	padding:10px 0;

	font-size: 17px;
	letter-spacing: 0.1em;
	text-align: center;
	color: #fff;
	text-decoration:none;

}
.spMenu-btn a span{
	display:inline-block;
	padding-right:20px;
	background:url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227.785%22%20height%3D%2213.345%22%20viewBox%3D%220%200%207.785%2013.345%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_190%22%20data-name%3D%22%E3%83%91%E3%82%B9%20190%22%20d%3D%22M12.1%2C0a1.249%2C1.249%2C0%2C0%2C0-.878.358L6.672%2C4.836%2C2.119.358a1.256%2C1.256%2C0%2C0%2C0-1.756%2C0%2C1.208%2C1.208%2C0%2C0%2C0%2C0%2C1.727L5.795%2C7.427a1.255%2C1.255%2C0%2C0%2C0%2C1.756%2C0l5.431-5.342a1.207%2C1.207%2C0%2C0%2C0%2C0-1.727A1.247%2C1.247%2C0%2C0%2C0%2C12.1%2C0Z%22%20transform%3D%22translate(0%2013.345)%20rotate(-90)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E') no-repeat right center;
}

/* スマホ サブリンク */
.spMenu-sublnk{
	padding:20px 25px;
}
.spMenu-sublnk li{
}
.spMenu-sublnk li.spMenu-sublnk-parent a{
	display:block;
	text-decoration:none;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: left;
	color: #333;
	padding:10px;
	border-top:solid 1px #D5D5D5;
}
.spMenu-sublnk li.spMenu-sublnk-child a{
	display:block;
	text-decoration:none;
	font-weight: bold;
	font-size: 14px;
	letter-spacing: 0.1em;
	text-align: left;
	color: #333;
	padding:10px 20px;
}

@media screen and (max-width: 1200px) {  /* ipad safari対応 */

	.nav__lst{
	}
	.nav__lst__item{
	}
	.nav__lst__item.toggle > a {
		font-size:15px !important;
	}

	.nav__lst__item:nth-child(6) { flex-basis:150px !important; }
	.nav__lst__item.btnContact > a {
		font-size:15px !important;
		padding-bottom:30px !important;
	}
	.nav__lst__item.btnContact > a span {
		background-size:20px auto;
		padding-left:30px !important;
	}
}

@media screen and (max-width: 375px) { 
	#fixed-top .logo img{
		width:100%;
		height:40px;
	}
}

@media print  {
	#spheader{
		display: none !important;
	}
}

.sp_navsns{
	display: flex;
	gap: 10px;
	justify-content: center;
}
.sp_navsns li {
	padding:  0px;	
}

.sp_navsns a {
	padding: 10px;
	border-radius: 5px;
	display: inline-block;
}

.sp_navsns li a img{
	width: 30px;
	vertical-align: middle;
}




/*--------------------------
pcHeaer
---------------------------- */
.pcHeaer{
	background:rgba(255, 255, 255, 0.8);
	position:fixed;
	width:100%;
	height:85px;
	z-index:999999999999999;
	top: 0;
	display:flex;
	justify-content:center;
	align-items:center;
}
.pcHeaer .inner{
	width:100%;
	max-width:calc( 100% - 50px);

	display:flex;
	justify-content:space-between;
	gap:0 10px;
	align-items:center;
}
@media screen and (max-width: 1600px) { /* スマートフォン */
	.pcHeaer .inner{
	}
}
.pcHeaderLogo{
}
.pcHeaderLogo img{
	width:auto;
	height:80px;
}
/*--------------------------
pcHeader_nav
---------------------------- */
.pcHeader_nav {
	/* position: relative; 削除 */
	display: flex;
}
.pcHeader_nav .navLst {
	display: flex;
	gap: 0 2em;
	margin-right: 1em;
	/* position: relative; 削除 */
}
.pcHeader_nav .navLst li {
	position: relative; /* メガメニューの子要素の絶対配置の基準 */
}
.pcHeader_nav .navLst li a {
	color: #222;
	font-size: 18px;
	text-decoration: none; /* リンクの下線を除去 */
	display: block; /* ホバー領域を広げる */
	padding: 27px 0; /* 適度なパディング */
}
.pcHeader_nav .navLst li a:hover {
	color: #b8a47c;
}
.pcHeader_nav .hasMegaMenu .megaMenu {
	display: none; /* 初期状態は非表示 */
	position: fixed; /* 固定配置に変更 */
	left: 0; /* 画面の左端に配置 */
	top: 83px; /* ヘッダーの高さに合わせる */
	width: 100vw; /* 画面全体の幅 */
	background:url(../img/bk02.png) repeat;
	padding: 20px 0;
	box-sizing: border-box;
	z-index: 1000; /* 他の要素より前面に表示 */
}
.pcHeader_nav .hasMegaMenu:hover .megaMenu {
	display: block; /* ホバー時に表示 */
}

.pcHeader_nav .hasMegaMenu:hover{
	background:url(../img/megaMenuParent_arrow.png) no-repeat center bottom -10px;
}

.megaMenu ul {
	display: flex;
	justify-content: center;
	/* 必要に応じてレイアウトを調整 */
}
.megaMenu ul li {
	margin: 0 20px; /* メニュー項目間のスペース */
}
.megaMenu ul li a {
	color: #000 !important;
	font-size: 16px;
	text-decoration: none;
	padding: 10px 20px;
	display: block;
}
.megaMenu ul li a:before{
	content:"・";
}
.megaMenu ul li a:hover {
	text-decoration:underline;
}


.pcHeader_nav .navsns{
	display: flex;
	gap: 0.5em;
}
.pcHeader_nav .navsns li {
	padding: 27px 0px;	
}
.pcHeader_nav .navsns li a img{
	width: 25px;
	vertical-align: middle;
}



/* レスポンシブ対応 */
@media screen and (max-width: 1100px) { /* スマートフォン */
	.pcHeader_nav .navLst{
		gap: 0 1em;
	}
	.pcHeader_nav .navLst li a{
		font-size: 15px;
	}
	.megaMenu ul li a{
		font-size: 14px;
		padding: 8px 16px;
	}
}

@media screen and (max-width: 850px) { /* スマートフォン */
	.pcHeader_nav .navLst{
		gap: 0 0.5em;
	}
	.pcHeader_nav .navLst li a{
		font-size: 14px;
	}
	.megaMenu ul li a{
		font-size: 13px;
		padding: 6px 12px;
	}
}
/*--------------------------
mainVisualBox
---------------------------- */
.mainVisualBox{
	width:100%;
	margin-bottom:105px;
	margin-left:auto;
	margin-right:auto;
}
.mainVisualBox .inner{
	position:relative;
}
.mainVisualBox .inner .mainVisualLst{
	position:relative;
	z-index:1;
}
.mainVisualBox .inner .mainVisualLogo{
	position:absolute;
	display:block;
	top:0;
	left:0;
	bottom:0;
	right:0;
	margin:auto;
	z-index:10;

	display:flex;
	justify-content:center;
	align-items:center;
}
.mainVisualLogo_inner img{
	width:100%;
	height:auto;
}
.mainVisualBox .inner .mainVisualSnsButtons{
	position:absolute;
	width:100%;
	z-index:10;
	bottom:10px;
}


@media screen and (max-width:767px) { /* Smartphone */
	.mainVisualBox{
		margin-bottom:50px;
	}	
}


/* mainVisualLst   --------- */
.mainVisualLst{
}
.mainVisualLst li{
}
.mainVisualLst li img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}

/* mainVisualSnsButtons   --------- */
.mainVisualSnsButtons{
}
.mainVisualSnsButtons{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:0 30px;
}
.mainVisualSnsButtons li{
	text-align:center;
}
.mainVisualSnsButtons li a{
}
.mainVisualSnsButtons li a img{
	width:100%;
	max-width:38px;
}
@media screen and (max-width: 767px) { /* Smartphone */
	.mainVisualSnsButtons{
	}
	.mainVisualSnsButtons{
		gap:0 20px;
	}
	.mainVisualSnsButtons li a img{
		max-width:30px;
	}
}


/*--------------------------
aboutArea
---------------------------- */
.aboutArea{
	margin-bottom:100px;
}
.aboutArea .inner{
	width:1000px;
	margin-left:auto;
	margin-right:auto;
}
 .aboutArea .inner .cnt{
	 margin-bottom:40px;
 }
 .aboutArea .inner .txt{
	font-size:clamp(14px , 1.8vw , 16px);
	line-height:2;
}
.aboutArea .inner .txt + *{
	margin-top:1.5em;
}
.aboutArea .lnkBtn a{
	width:90%;
}
@media screen and (max-width: 1000px) { /* Smartphone */
	.aboutArea .inner{
		width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.aboutArea{
		margin-bottom:50px;
	}
}


/*--------------------------
aboutDetailArea
---------------------------- */
.aboutDetailArea{
	margin-bottom:100px;
	background:url(../img/bk02.png);
	padding:100px 0;
}

.aboutDetailArea .inner{
	width:1600px;
	margin-left:auto;
	margin-right:auto;
}
/* aboutDetailArea__lst */
.aboutDetailArea__lst{
}
.aboutDetailArea__lst .item{
	display:flex;
	flex-wrap:wrap;
	gap:20px 4%;

	margin-bottom:80px;
}
.aboutDetailArea__lst .item:last-child{
	margin-bottom:0;
}
.aboutDetailArea__lst .item .pic{
	width:50%;
}
.aboutDetailArea__lst .item .pic img{
	width:100%;
	height:auto;
}
.aboutDetailArea__lst .item .cnt{
	width:46%;
}
.aboutDetailArea__lst .item:nth-child(odd) .cnt{
	padding-right:10%;
}
.aboutDetailArea__lst .item:nth-child(even) .cnt{
	padding-left:10%;
}

.aboutDetailArea__lst .item:nth-child(even) .pic{
	order:2;
}
.aboutDetailArea__lst .item:nth-child(even) .cnt{
	order:1;
}


@media screen and (max-width: 1600px) { /* Smartphone */
	.aboutDetailArea .inner{
		width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.aboutDetailArea{
		margin-bottom:55px;
		padding:50px 0;
	}
	.aboutDetailArea__lst .item{
		gap:0px 4%;
		margin-bottom:80px;
	}
	.aboutDetailArea__lst .item .pic{
		width:100%;
		margin-bottom:15px;
	}
	.aboutDetailArea__lst .item .cnt{
		width:100%;
	}
	.aboutDetailArea__lst .item:nth-child(even) .pic{
		order:1;
	}
	.aboutDetailArea__lst .item:nth-child(even) .cnt{
		order:2;
	}
	.aboutDetailArea__lst .item:nth-child(odd) .cnt{
		padding:0%;
	}
	.aboutDetailArea__lst .item:nth-child(even) .cnt{
		padding:0%;
	}
}
/*--------------------------
aboutDetailArea
---------------------------- */
.grantArea{
	margin-bottom:100px;
}

.grantArea .inner{
	width:960px;
	margin-left:auto;
	margin-right:auto;
}
/* grantArea__lst01 */
.grantArea__lst01{
	margin-bottom:80px;
}
.grantArea__lst01 .item{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:20px 4%;
	margin-bottom:60px;
}
.grantArea__lst01 .item:last-child{
	margin-bottom:0;
}
.grantArea__lst01 .item .pic{
	width:28%;
}
.grantArea__lst01 .item .pic img{
	width:100%;
	height:auto;
}
.grantArea__lst01 .item .cnt{
	width:68%;
}
.grantArea__lst01 .item .cnt .tit{
	font-size:clamp(20px , 2.6vw , 25px);
	margin-bottom:20px;
}

/* grantArea__lst02 */
.grantArea__lst02{
	margin-bottom:80px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:20px 2%;
}
.grantArea__lst02 .item{
	width:calc((100% - 8%) /  5);
}
.grantArea__lst02 .item{
}
.grantArea__lst02 .item .pic{
}
.grantArea__lst02 .item .pic img{
	width:100%;
	height:auto;
}
.grantArea__lst02 .item .tit{
	text-align:center;
	font-size:clamp(14px , 1.8vw , 16px);
}

@media screen and (max-width: 960px) { /* Smartphone */
	.grantArea .inner{
		width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.grantArea{
		margin-bottom:55px;
	}
	.grantArea__lst01 .item{
		gap:0px 4%;
		margin-bottom:50px;
	}
	.grantArea .item .pic{
		order:2;
		width:100%;
		margin-bottom:15px;
		text-align:center;
	}
	.grantArea__lst01 .item .pic img{
		width:56%;
		margin-bottom:0;
	}
	.grantArea__lst01 .item .cnt{
		order:1;
		width:100%;
		margin-bottom:20px;
	}
	.grantArea__lst01 .item .cnt .tit{
		text-align:center;
		font-size:18px;
	}
	.grantArea__lst02 .item{
		width:calc((100% - 2%) /  2);
	}
	.grantArea__lst02 .item .pic{
		margin:5px;
	}
}

/*--------------------------
scheduleBox
---------------------------- */
.scheduleBox{
	margin-bottom:100px;
}
.scheduleBox .inner{
	width:1200px;
	margin:0 auto;
}
/* ----- */
.scheculeTbl{
	border:solid 1px #BBB4C6;
}
.scheculeTbl tr:first-child{
	border-top:solid 1px #BBB4C6;
}
.scheculeTbl tr{
	border-bottom:solid 1px #BBB4C6;
}
.scheculeTbl tr th,
.scheculeTbl tr td{
	padding:15px 10px;
	font-size:clamp(14px , 1.8vw , 16px);
	border-left:solid 1px #BBB4C6;
}
.scheculeTbl .tblMonth{
	width:13%;
	background:#DBD6E2;
	text-align:center;
	font-size:clamp(16px , 2.0vw , 20px);
}

.scheculeTbl .tblEventName{
	width:27%;
}
.scheculeTbl .tblCnt{
	width:60%;
}
.scheculeTbl .tblCnt .tblEventName__tit{
	display:none;
}

@media screen and (max-width: 1200px) { /* Smartphone */
	.scheduleBox{
		margin-bottom:50px;
	}
	.scheduleBox .inner{
		width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.scheculeTbl tr th,
	.scheculeTbl tr td{
		padding:10px 5px;
		vertical-align:top;
	}
	.scheculeTbl .tblEventName{
		display:none;
	}
	.scheculeTbl .tblMonth{
		width:13%;
	}
	.scheculeTbl .tblCnt{
		width:87%;
	}
	.scheculeTbl .tblCnt .tblEventName__tit{
		display:block;
	}
}

/*--------------------------
imageBannersArea
---------------------------- */
.imageBannersArea{
	margin-bottom:100px;
}
.imageBannersArea .inner{
	width:100%;
	/*max-width:1600px;*/
	margin-left:auto;
	margin-right:auto;
}
.imageBannersLst{
	display:flex;
	flex-wrap:wrap;
}
.imageBannersLst li{
	width:33.33%;
}
.imageBannersLst li a{
}
.imageBannersLst li img{
	width:100%;
	vertical-align:bottom;
}

@media screen and (max-width: 767px) { /* Smartphone */
	.imageBannersArea{
		margin-bottom:50px;
	}
	.imageBannersLst li{
		width:50%;
	}
	.imageBannersLst li:last-child{
		width:100%;
	}
}

/*--------------------------
contentBannerArea
---------------------------- */
.contentBannerArea{
	margin-bottom:100px;
}
.contentBannerArea .inner{
	max-width:1000px;
	margin:0 auto;
}
.contentBannerLst{
	display:flex;
	flex-wrap:wrap;
	gap:30px 5%;
}
.contentBannerLst li{
}
.contentBannerLst li:first-child{
	width:100%;
}
.contentBannerLst li:nth-child(n+2){
	width:calc( (100% - 5%) / 2);
}



.contentBannerLst li a{
}
.contentBannerLst li a img{
	width:100%;
}

@media screen and (max-width: 1000px) { /* Smartphone */
	.contentBannerArea .inner{
		max-width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.contentBannerArea{
		margin-bottom:50px;
	}
	.contentBannerLst{
		gap:10px;
	}
	.contentBannerLst li,
	.contentBannerLst li:first-child,
	.contentBannerLst li:nth-child(n+2){
		width:100%;
	}
}
/*--------------------------
topInfoArea
---------------------------- */
.topInfoArea{
	margin-bottom:100px;
}
.topInfoArea .inner{
	max-width:1000px;
	margin:0 auto;

}
/* ----- */
.topInfoArea .inner .map{
	width:100%;
	margin-top: 30px;
	margin-bottom:30px;
}
.topInfoArea .inner .map iframe{
	width:100%;
	height:300px;
}

.topInfoArea__information{
	display:flex;
	flex-wrap:wrap;
	gap:20px 0;
}
.topInfoArea__information .cnt{
	width:40%;
	padding-left:10px;
}
.topInfoArea__information .cntAccess{
	width:60%;
	border-left: solid 1px #000;
	padding-left:20px;
}

/* ----- */
.topInfoArea .inner .cnt{
}



/* ----- */
.topInfoArea .inner .txt{
	margin-bottom:20px;
	font-size:clamp(14px , 1.8vw , 16px);
}
.topInfoArea .inner .txt a{
	font-size:clamp(18px , 2.3vw , 24px);
	color:#000;
}

.topInfoArea__information .cntAccess ul{
	list-style:disc;
	margin-left:20px;
}
.topInfoArea__information .cntAccess ul li{
	margin-bottom:15px;
}
.topInfoArea__information .cntAccess .tit{
	font-size:clamp(16px , 2.0vw , 20px);
	margin-bottom:0px;
}
.topInfoArea__information .cntAccess .txt{
	font-size:clamp(14px , 1.8vw , 18px);
}

@media screen and (max-width: 1000px) { /* Smartphone */
	.topInfoArea .inner{
		max-width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.topInfoArea{
		margin-bottom:50px;
	}
	.topInfoArea .inner .map iframe{
		height:200px;
	}
	.topInfoArea .inner .cnt .tit{
		padding-bottom:20px;
		margin-bottom:15px;
	}
	.topInfoArea__information .cnt{
		width:100%;
		padding-left:00px;
	}
	.topInfoArea__information .cntAccess{
		border-top:solid 1px #ccc;
		padding-top:20px;
		width:100%;
		border-left: none;
		padding-left:0px;
	}

}

/*--------------------------
jumokuBannerArea
---------------------------- */
.jumokuBannerArea{
	margin-bottom:100px;
}
.jumokuBannerArea .inner{
	max-width:1000px;
	margin:0 auto;
}
.jumokuBannerLst{
	display:flex;
	flex-wrap:wrap;
	gap:20px 0;
}
.jumokuBannerLst li{
	width:100%;
}
.jumokuBannerLst li a{
	display:block;
	width:100%;
}
.jumokuBannerLst li a img{
	width:100%;
	max-width:1000px;
}

@media screen and (max-width: 1000px) { /* Smartphone */
	.jumokuBannerArea .inner{
		max-width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.jumokuBannerArea{
		margin-bottom:50px;
	}
}
/*--------------------------
footerBannersArea
---------------------------- */
.footerBannersArea{
	background:url(../img/bk02.png);
	padding:100px 0;
}
.footerBannersArea .inner{
	max-width:1000px;
	margin:0 auto;
}
.footerBannerLst{
	display:flex;
	flex-wrap:wrap;
	gap:10px 5%;
}
.footerBannerLst li{
	width:calc( (100% - 10%) / 3);
	text-align:center;
}
.footerBannerLst li a{
}
.footerBannerLst li a img{
	width:100%;
	max-width:300px;
}
@media screen and (max-width: 1000px) { /* Smartphone */
	.footerBannersArea{
		padding:30px 0;
	}
	.footerBannersArea .inner{
		max-width:calc(100% - 30px);
	}
}
@media screen and (max-width: 500px) { /* Smartphone */
	.footerBannerLst li{
		width:100%;
	}
}

/*--------------------------
snsBar
---------------------------- */
.snsBar{
	padding:50px 0;
}
.snsBarlnk{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:0 30px;
}
.snsBarlnk li{
	text-align:center;
}
.snsBarlnk li a{
}
.snsBarlnk li a img{
	width:100%;
	max-width:38px;
}
@media screen and (max-width: 767px) { /* Smartphone */
	.snsBar{
		padding:25px 0;
	}
	.snsBarlnk{
		gap:0 20px;
	}
	.snsBarlnk li a img{
		max-width:30px;
	}
}
/*--------------------------
footer
---------------------------- */
.footer{
	background:#000 url(../img/bk01.png) repeat center center;
	padding:30px 0;
}
.footer .inner{
	width:100%;
	max-width:1300px;
	margin-left:auto;
	margin-right:auto;
}
@media screen and (max-width: 1300px) { /* Smartphone */
	.footer .inner{
		max-width:calc(100% - 30px);
	}
}
/* ----- */
.footerLogo{
	text-align:center;
	margin-bottom:50px;
}
.footerLogo a{
	display:inline-block;
}
.footerLogo a:hover{
	text-decoration:underline;
}
.footerLogo a img{
	width:100%;
	max-width:125px;
}
/* ----- */
.footerLnk{
	text-align:center;
	margin-bottom:50px;
}
.footerLnk li{
	display:inline-block;
	border-right:solid 1px #fff;
	text-align:center;
	padding:0 1.5em;
}
.footerLnk li:last-child{
	border:none;
}
.footerLnk li a{
	color:#fff;
	font-size:clamp(14px , 2.0vw , 18px);
}
/* ----- */
.footerInfo{
	text-align:center;
	color:#fff;
	font-size:clamp(14px , 2.0vw , 18px);
	margin-bottom:60px;
}
.footerInfo{
}
/* ----- */
.address{
	font-size:12px;
	text-align:center;
	color:#fff;
}
@media screen and (max-width: 767px) { /* Smartphone */
	.footerLogo{
		text-align:center;
		margin-bottom:15px;
	}
}

/*--------------------------
pageTop
---------------------------- */
.pageTop{
}
.pageTop a{
	background:rgba( 54 ,47 ,64, 0.6);
	color:#fff;
	font-size:12px;
	display:inline-block;
	padding:10px;
}

















#spheader .header {
  position: sticky; /* headerを追従にする */
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
	background:rgba(255, 255, 255, 0.8);
	position:fixed;
  z-index: 1111111111111111111;
}
#spheader .header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 1rem;
}

/* ヘッダーのロゴ */
#spheader .logo {
}

#spheader .logo img {
  width: auto;
  max-width: 102px;
  height: 50px;
  vertical-align:bottom;
}

#spheader .drawer__nav__inner .logo img {
  max-width: 152px;
  height: 80px;
}

/* ハンバーガーボタンのデザイン */
#spheader .drawer__button {
  position: relative;
  width: 3rem;
  height: 3rem;
  background-color: transparent;
  border: none;
  cursor: pointer;
  z-index: 999; /* メニューを開いている時もクリックできるよう設定 */
}
/* ハンバーガーボタン内の線 */
#spheader .drawer__button > span {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2rem;
  height: 2px;
  background-color: black;
  transform: translateX(-50%);
}
#spheader .drawer__button > span:first-child {
  transform: translate(-50%, calc(-50% - 0.5rem));
  transition: transform 0.3s ease;
}
#spheader .drawer__button > span:nth-child(2) {
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
#spheader .drawer__button > span:last-child {
  transform: translate(-50%, calc(-50% + 0.5rem));
  transition: transform 0.3s ease;
}
/* 展開時のデザイン */
#spheader .drawer__button.active > span:first-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}
#spheader .drawer__button.active > span:nth-child(2) {
  opacity: 0;
}
#spheader .drawer__button.active > span:last-child {
  transform: translate(-50%, -50%) rotate(45deg);
}


/* メニューのデザイン */
#spheader .drawer__nav {
  position: fixed; /* 追従ヘッダーなどでも表示できるよう設定しておく */
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity 0.3s ease;
  opacity: 0;
  visibility: hidden;
}
#spheader .drawer__nav.active {
  opacity: 1;
  visibility: visible;
}
#spheader .drawer__nav__inner {
  position: relative;
  width: 80%;
  height: 100%;
  background-color: white;
  padding: 4rem 1.5rem 1rem;
  margin: 0 0 0 auto;
  overflow: scroll;
  transform: translateX(100%);
  transition: transform 0.3s ease;
}
#spheader .drawer__nav.active .drawer__nav__inner {
  transform: translateX(0);
}
#spheader .drawer__nav__menu {
  list-style: none;
  padding-left: 0;
  padding: 30px 0px;
}
#spheader .drawer__nav__menu a{
	display:block;
	text-decoration:none;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: left;
	color: #333;
	padding:10px;
	border-top:solid 1px #D5D5D5;
}




/* ハンバーガーメニュー展開時、背景を固定 */
body.active {
  height: 100%;
  overflow: hidden;
}
