@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;
}


input, select, button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

/*--------------------------
基本：基本タグ
---------------------------- */
/* [ 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;
  font-size:16px; /* 1rm = 16px*/
}
body {
	font-family: "Noto Sans JP", sans-serif;
	line-height:1.8;
	letter-spacing: 1px;
	font-weight: 400;
	color:#333333;
	position:relative;
	font-size: 1rem; /* 16px */
}
a{
	color:#4e7654;
	text-decoration:none;
	text-underline-offset: 0.4ex;
}
a:hover{
	text-decoration:underline;
	color:#66986e;
}

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 {
	text-align: center;
	margin-bottom: 50px;
}
.tit01 span{
	position: relative;
	display: inline-block;
	padding: 0 50px;
	color: #4e7654;
	font-size: clamp(24px, 1.5306vw + 18.2602px, 30px); /* Vary between 375px and 767px */
	font-weight: bold;
}
.tit01 span:after,.tit01 span:before{
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 25px;
	height: 1px;
	background-color: #4e7654;
}


.tit01 span:before {
	left:0;
}

.tit01 span:after {
	right: 0;
}




.tit02{
	font-size: clamp(18px, 0.2424vw + 17.0909px, 20px); /* 375px ～ 1200px の間で可変する */
	letter-spacing:3px;
	margin-bottom: clamp(15px, 1.5758vw + 9.0909px, 28px); /* 375px ～ 1200px の間で可変する */
}

.tit03 {
    position: relative; /* 必要に応じて追加 */
	font-size: clamp(18px, 0.2424vw + 17.0909px, 20px); /* 375px ～ 1200px の間で可変する */
	letter-spacing:3px;
	margin-bottom: clamp(15px, 1.5758vw + 9.0909px, 28px); /* 375px ～ 1200px の間で可変する */
}

.tit03::before {
    content: "[ ";
    /* 角括弧のスタイルを調整 */
    color: #333; /* 例: 色 */
    font-size: 1em; /* 必要に応じてサイズ調整 */
}

.tit03::after {
    content: " ]";
    /* 角括弧のスタイルを調整 */
    color: #333; /* 例: 色 */
    font-size: 1em; /* 必要に応じてサイズ調整 */
}

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



.txt01{
	font-size: clamp(14px, 0.5102vw + 12.0867px, 16px); /* 375px ～ 767px の間で可変する */
	text-align: justify;
}

a.tel{
}

.small{
	font-size: clamp(13px, 0.2551vw + 12.0434px, 14px); /* Vary between 375px and 767px */
}


/* ---------- */
.lnkBtn{
	text-align:center;
}
.lnkBtn a{
	display:inline-block;
	background:#4e7654;
	font-size: clamp(14px, 0.5102vw + 12.0867px, 16px); /* Vary between 375px and 767px */
	text-align:center;
	padding:5px 10px;
	color:#fff;
	width:100%;
	border-radius:30px;
}
.lnkBtn a:hover{
	background:#66986e;
	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: 80px;
  z-index: 9999999;
}

#fixed-top {
  position: fixed;
  top: 0;
  z-index: 99999999;
  width: 100%;
  height:80px;
  background:rgba( 255 , 255, 255, 0.8);

  display: flex;
  flex-wrap:wrap;
  gap:0;
}

/* ヘッダーのロゴ */
#fixed-top .logo {
	width:calc( 100% - 50px);
	padding: 5px 0 0 40px;
	text-align:center;
}

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

/* ヘッダーのボタン関連 */
#fixed-top .headerButtons {

	width:50px;

  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: 80px;
  width: auto;
}

/* スマートフォン用ナビゲーション*/
#slidar_menu ,
#slidar_menu_lang {
  background: #F2F2F2;
  z-index: 999999999999999999;
}
#slidar_menu .sb-close ,
#slidar_menu_lang .sb-close {
  text-align: left;
  padding:15px 15px 0px;
  margin-bottom: 20px;
}

#slidar_menu .sb-right-inner .logo ,
#slidar_menu_lang .sb-left-inner .logo {
  margin: 0px 0 20px;
  text-align: center;
  overflow: hidden;
}

#slidar_menu .sb-right-inner .logo img ,
#slidar_menu_lang .sb-left-inner .logo img {
  display: block;
  width: auto;
  height: 80px;
  margin: 10px auto;
  text-align: center;
}


/* ヘッダー言語切替エリア */
.spLanguageArea{
	z-index:100;
	display: none;
	position:absolute;
	width: 100%;
	background: #d2e8e8;
	bottom:-54px;
	left:0;
	padding: 15px 10px;
	text-align:center;
	box-sizing: border-box;
	box-shadow:0px 4px 16px -7px #1d1e21 inset;
}
.spLanguageBtn{
	display:block;
}
.spLanguageArea .toggle_lang{
	width:60%;
	margin:0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.spLanguageArea .toggle_lang li{
	flex-basis:50%;
	border-right:1px solid #000;
}
.spLanguageArea .toggle_lang li:last-child{
	border:none;
}
.spLanguageArea .toggle_lang a{
	display:block;
	width:90%;
	text-decoration:none;
	color:#000;
	font-weight:bold;
}


/* ヘッダー検索エリア */
.spResearchArea{
	display: none;
	position:absolute;
	z-index:100;
	width: 100%;
	background: #d2e8e8;
	bottom:-55px;
	left:0;
	padding: 15px 10px;
	text-align:center;
	box-sizing: border-box;
	box-shadow:0px 4px 16px -7px #1d1e21 inset;
}
.spResearchArea input[type="text"]{
	width:80%;
	border: 1px solid #333;
	padding: 8px 5px;
	box-sizing: border-box;
	border-radius: 3px;
}
.spResearchArea input[type="submit"]{
	width:15%;
	border: 1px solid #333;
	padding: 5px;
	box-sizing: border-box;
	display:inline-block;
	border-radius: 3px;
}


/* スマホアコーディオンメニュー */
.spMenu-accordion{
	margin-bottom:35px;
}
.spMenu-accordion .acCheck {
	display: none;
}
.spMenu-accordion .ac-label {		/*タイトル*/
	padding: 1em;
	display: block;

	font-weight: bold;
	font-size: 22px;
	letter-spacing: 0.1em;
	color: #333;
	border-bottom:solid 1px #D5D5D5;
}
.spMenu-accordion .ac-label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #C40016;
	border-right: 2px solid #C40016;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.spMenu-accordion .ac-label,
.spMenu-accordion .ac-content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.spMenu-accordion .ac-content {		/*本体*/
	height: 0;
	padding:0px 25px;
	overflow: hidden;
	background:#fff;
}
.spMenu-accordion .acCheck:checked + .ac-label + .ac-content {	/*開閉時*/
	height: auto;
	padding:28px 25px 30px;
	transition: all .3s;
}
.spMenu-accordion .acCheck:checked + .ac-label::before {
	transform: rotate(-45deg) !important;
}
.spMenu-accordion .ac-content ul li {

}
.spMenu-accordion .ac-content ul li a{
	display:block;
	font-weight: bold;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: left;
	color: #333;
	text-decoration:none;
	background:url(../img/sp/ac-content_arrow.png) no-repeat 9px center;
	padding:16px 0px 16px 30px;
	border-bottom:solid 1px #CECECE;
}
.spMenu-accordion .ac-content ul li:last-child a{
	border:none;
}

/* スマホ バナー */
.spMenu-banner{
	width: calc(100% - 30px);
	margin:0 auto 55px;;
}
.spMenu-banner li{
	margin-bottom:10px;
}
.spMenu-banner li a{
	display:block;
}
.spMenu-banner li a img{
	width:100%;
	height:auto;
}

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

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

}
.spMenu-btn a span{
	display:inline-block;
	padding:0 30px;
	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-weight: bold;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: left;
	color: #66986e;
	padding:5px;
	border-top:solid 1px #D5D5D5;
}
.spMenu-sublnk li.spMenu-sublnk-child a{
	display:block;
	text-decoration:none;
	font-size: 17px;
	letter-spacing: 0.1em;
	text-align: left;
	color: #66986e;
	padding:5px 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{
	}
}

@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: 25px;
	vertical-align: middle;
}


/*--------------------------
pcHeader
---------------------------- */
.pcHeader{
	background:rgba(255, 255, 255, 0.8);
	position:fixed;
	width:100%;
	height:85px;
	z-index:999999;

	display:flex;
	justify-content:center;
	align-items:center;
}
.pcHeader .inner{
	width:100%;
	/*max-width:1600px;*/
	max-width:calc( 100% - 50px);

	display:flex;
	justify-content:space-between;
	gap:0 10px;
	align-items:center;
}
@media screen and (max-width: 900px) { /* スマートフォン */
	.pcHeader .inner{
		max-width:calc( 100% - 30px);
	}
}

.pcHeaderLogo{
}
.pcHeaderLogo img{
	width:auto;
	height:60px;
}

/*--------------------------
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: #4e7654;
	font-size: 17px;
	text-decoration: none; /* リンクの下線を除去 */
	display: block; /* ホバー領域を広げる */
	padding: 27px 0; /* 適度なパディング */
	font-weight: 600;
}
/*
.pcHeader_nav .navLst li a::before{
	content: url(../img/btn_arr2.png);
	padding-right: 5px;
	float: left;
}
*/

.pcHeader_nav .navLst li a:hover {
	color: #66986e;
	text-decoration: underline;
}
.pcHeader_nav .hasMegaMenu .megaMenu {
	display: none; /* 初期状態は非表示 */
	position: fixed; /* 固定配置に変更 */
	left: 0; /* 画面の左端に配置 */
	top: 83px; /* ヘッダーの高さに合わせる */
	width: 100vw; /* 画面全体の幅 */
	background:url(../img/bk01.png) repeat;
	padding: 20px 0;
	box-sizing: border-box;
	z-index: 1000; /* 他の要素より前面に表示 */
}
.pcHeader_nav .hasMegaMenu:hover .megaMenu {
	display: block; /* ホバー時に表示 */
}

.pcHeader_nav .hasMegaMenu:hover{
}

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

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

@media screen and (max-width: 950px) { /* スマートフォン */
	.pcHeader_nav .navLst{
		gap: 0 0.5em;
		margin-right: 0.5em;
	}
	.pcHeader_nav .navLst li a{
		font-size: 14px;
		letter-spacing: 0;
	}
	.pcHeader_nav .navsns{
		gap: 0.5em;
	}
	.megaMenu ul li a{
		font-size: 13px;
		padding: 6px 12px;
		letter-spacing: 0;
	}
}


.pcHeader_nav .navsns{
	display: flex;
	gap: 10px;
}
.pcHeader_nav .navsns li {
	padding: 27px 0px;	
}
.pcHeader_nav .navsns li a{
	vertical-align: text-top;
}
.pcHeader_nav .navsns li a img{
	width: 25px;
	vertical-align: text-bottom;
}


/*--------------------------
wrapper
---------------------------- */
#wrapper{
	margin-top:85px;
}
@media screen and (max-width:767px) { /* Smartphone */
	#wrapper{
		margin-top:80px;
	}
}
/*--------------------------
mainContent
---------------------------- */

.mainContent{
	width:100%;
	max-width:1000px;
	margin:0 auto;
	position: relative; /* 子要素の位置調整のために相対位置を指定 */
}
@media screen and (max-width: 1000px) { /* スマートフォン */
	.mainContent{
		max-width:calc( 100% - 30px);
	}
}

/*--------------------------
overflowBox
---------------------------- */
.overflowBox {

    width: 100vw; /* ビューポート幅に設定 */
    box-sizing: border-box; /* パディングやボーダーを含めてサイズを計算 */
    position: relative;
    left: 50%;
    right: 50%;

    margin-left: -50vw; /* 左側にビューポート幅の半分分ネガティブマージン */
    margin-right: -50vw; /* 右側にも同様にネガティブマージン */
	margin-bottom: clamp(50px, 25.5102vw + -45.6633px, 150px); /* Vary between 375px and 767px */



	padding-top: clamp(40px, 15.3061vw + -17.3980px, 100px); /* Vary between 375px and 767px */
	padding-bottom: clamp(40px, 15.3061vw + -17.3980px, 100px); /* Vary between 375px and 767px */

	background:url(../img/bk02.png) repeat;
}
	
.overflowBox .layoutBox{
	margin-bottom:0;
}

.overflowBox .inner{
	width:100%;
	max-width:1000px;
	margin:0 auto;
}

@media screen and (max-width: 1000px) { /* スマートフォン */
	.overflowBox .inner{
		max-width:calc( 100% - 45px);
	}
}

/*--------------------------
pageTit
---------------------------- */
.pageTit{
	margin-bottom: clamp(50px, 12.1212vw + 4.5455px, 150px); /* 375px ～ 1200px の間で可変する */
	position:relative;
}
.pageTit .inner{
	width:100%;
	position:absolute;
	z-index:10;

	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.pageTit .tit{
	font-size: clamp(28px, 5.8673vw + 2.9974px, 48px); /* Vary between 375px and 767px */
	font-weight: bold;
	color:#fff;
	letter-spacing:3px;
	text-align:center;
}

.pageTit .pic{
	position:relative;
	z-index:1;
	text-align:center;
}
.pageTit .pic img{
	
	/*width:auto;*/
	/*height: clamp(300px, 11.5473vw + 211.4319px, 350px); */ /* Vary between 767px and 1200px */

	width:100%;
	height:auto;


	object-fit: cover; /* この一行を追加するだけ！ */
	vertical-align:bottom;
}


/* 小さい画面 */
@media (max-width: 767px) {
	.pageTit .tit{
		padding-bottom:15px;
	}
    .pageTit .pic img {
        height: 250px;
    }
}

/* 中くらいの画面 */
@media (min-width: 768px) and (max-width: 1199px) {
    .pageTit .pic img {
        height: 325px;
    }
}

/* 大きい画面 */
@media (min-width: 1200px) {
    .pageTit .pic img {
        height: 350px;
    }
}


/*--------------------------
mainVisualBox
---------------------------- */
.mainVisualBox{
	width:100%;
	margin-left:auto;
	margin-right:auto;
}
.mainVisualBox .inner{
	position:relative;
	display:flex;
}
.mainVisualBox .inner .mainVisualLst{
	position:relative;
	order:1;
	width:60%;
}
.mainVisualBox .inner .mainVisualLogoSns{
	width:40%;
	flex-wrap: wrap;
	position:relative;
	order:2;
	top:0;
	left:0;
	bottom:0;
	right:0;
	margin:auto;
	z-index:10;
	display:flex;
	justify-content:center;
	align-items:center;
}
.mainVisualBox .inner .mainVisualLogo img{
	width:100%;
	max-width:80px;
	height:auto;
}


.mainVisualBox .inner .mainVisualLogoSns .snsBarlnk{
	width: 100%;
	margin-top: 30px;
	gap: 15px !important;
}

@media screen and (max-width:767px) { /* Smartphone */
	.mainVisualBox{
	}	
}
@media screen and (max-width:550px) { /* Smartphone */
	.mainVisualBox .inner .mainVisualLst{
		width:100%;
	}
	.mainVisualBox .inner .mainVisualLogo{
		display:none;
	}
}


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


/*--------------------------
newsLstArea
---------------------------- */
.newsLstArea{
	margin-bottom:100px;
	background:#f3f3eb;
	padding:80px 0;
}
.newsLstArea .inner{
	max-width:1000px;
	margin:0 auto;
}
/* ----- */
.newsLst{
	margin-bottom:40px;
	display:flex;
	flex-wrap:wrap;
	gap:15px 2%;
}
.newsLst li{
	width:calc( (100% - 6%) / 3);
}
.newsLst li a{
	display:block;
	color:#333;
}
.newsLst li a:hover{
	text-decoration:none;
}
.newsLst li a .pic{
	overflow:hidden;
	margin-bottom:10px;
	border-radius: 10px;	
}
.newsLst li a .pic img{
	width:100%;
	height:100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	vertical-align: bottom;
}
.newsLst li a .catdate{
	display:flex;
	flex-wrap:wrap;
	justify-content:between;
	margin-bottom:10px;
}
.newsLst li a .catdate .cat{
	flex-basis:calc(100% - 110px);
}
.newsLst li a .catdate .cat span{
	display:inline-block;
	/*background:#4e7654;*/
	font-size:14px;
	text-align:center;
	padding:0px 1em;
	color:#fff;
	width:auto;
	border-radius:20px;
}
.newsLst li a .catdate .date{
	flex-basis:100px;
	text-align:right;
}

.newsLst li a .tit{
	font-size:clamp(16px , 2.0vw , 18px);
	color: #4e7654;
	font-weight:bold;
	margin-bottom:8px;
}
.newsLst li a .txt{
	font-size:14px;
	line-height:1.8;
}

.newsLst li a:hover .tit{
	text-decoration:underline;
}

/* ----- */
.newsLstArea .lnkBtn{
}
.newsLstArea .lnkBtn a{
	max-width:240px;
}

.newsLstArea .lnkBtn a::after{
	content: url(../img/btn_arr.png);
	padding-right: 5px;
	float: right;
}


@media screen and (max-width:1000px) { /* Smartphone */
	.newsLstArea .inner{
		width:calc( 100% - 30px);
	}	
	.newsLst li a .catdate{
	}
	.newsLst li a .catdate .cat{
		flex-basis:100%;
	}
	.newsLst li a .catdate .date{
		flex-basis:100%;
	}
}

@media screen and (max-width: 900px) { /* Smartphone */

	.newsLst{
		margin-bottom:40px;
		gap:25px 2%;
	}
	.newsLst li{
		width:calc((100% - 2%) / 2);
	}
	.newsLst li a .catdate{
		margin-bottom:10px;
	}
}

@media screen and (max-width: 550px) { /* Smartphone */
	.newsLstArea{
		margin-bottom:50px;
		padding:40px 0;
	}
	.newsLst li{
		width:100%;
	}
	.newsLst li a .catdate .cat{
		flex-basis:calc(100% - 110px);
	}
	.newsLst li a .catdate .cat span{
		font-size:14px;
	}
	.newsLst li a .catdate .date{
		flex-basis:100px;
	}
	/* ----- */
	.newsLstArea .lnkBtn{
		text-align:centr;
	}
	.newsLstArea .lnkBtn a{
		max-width:100%;
	}
}
@media screen and (max-width: 350px) { /* Smartphone */
	.newsLst li a .catdate .cat{
		flex-basis:100%;
	}
	.newsLst li a .catdate .date{
		flex-basis:100%;
	}
}
/*--------------------------
aboutArea
---------------------------- */
.aboutArea{
	margin-bottom:100px;
}
.aboutArea .inner{
	width:350px;
	margin-left:auto;
	margin-right:auto;
}
 .aboutArea .inner .cnt{
	 margin-bottom:40px;
 }
 .aboutArea .inner .txt{
	font-size: clamp(14px, 0.5102vw + 12.0867px, 16px); /* Vary between 375px and 767px */
	line-height:2;
}
.aboutArea .lnkBtn a{
	width:90%;
}
@media screen and (max-width: 350px) { /* Smartphone */
	.aboutArea .inner{
		width:calc(100% - 30px);
	}
}
@media screen and (max-width: 767px) { /* Smartphone */
	.aboutArea{
		margin-bottom:50px;
	}
	.aboutArea .lnkBtn a{
		width:100%;
	}
}

/*--------------------------
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;
	justify-content: space-between;
	gap:30px 0.6%;
}
.contentBannerLst li{
	width:calc( (100% - 1.8%) / 3);
}

.contentBannerLst li:first-child{
	width:100%;
}

.contentBannerLst li a{
	display:block;
	position:relative;
}
.contentBannerLst li a .pic {
	display:block;
	position:relative;
	z-index:1;
}
.contentBannerLst li a .pic img{
	width:100%;
	vertical-align: bottom;
	border-radius: 10px;
}
.contentBannerLst li a .lbl{
	display:block;
	position:absolute;
	z-index:10;
	top:-20px;
	left:10px;
	border-top: #4e7654 solid 6px;
	height:200px;
	background:#fff;
	box-shadow:0px 4px 16px -7px #111;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	padding:0em 5px;
	text-align:center;
	border-radius: 6px;
}
.contentBannerLst li a .lbl span{
	display:inline-block;
	font-size: clamp(16px, 1.0204vw + 12.1735px, 20px); /* Vary between 375px and 767px */
	border-radius:5px;
	color: #4e7654;
}

@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:25px;
	}
	.contentBannerLst li,
	.contentBannerLst li:first-child,
	.contentBannerLst li:nth-child(n+2){
		width:100%;
	}

	.contentBannerLst li a .lbl{
		display:block;
		position:absolute;
		z-index:10;
		top:auto;
		left:auto;
		right:10px;
		bottom:-10px;
		border-left: #4e7654 solid 6px;
		border-top:none;
		-ms-writing-mode: unset;
		writing-mode:unset;
		text-orientation:unset;

		height:auto;
		width:200px;
	}
	.contentBannerLst li a .lbl span{
		display:inline-block;
		font-size: clamp(16px, 0.5102vw + 14.0867px, 18px); /* Vary between 375px and 767px */
		color: #4e7654;

	}


}
@media screen and (max-width: 400px) { /* Smartphone */
	.contentBannerLst li a .lbl{
		width:160px;
	}
	.contentBannerLst li a .lbl span{
	}
}
/*--------------------------
topInfoArea
---------------------------- */
.topInfoArea{
	margin-bottom:100px;
}
.topInfoArea .inner{
	max-width:1000px;
	margin:0 auto;

}
/* ----- */
.topInfoArea .inner .map{
	margin-bottom:5px;
}
.topInfoArea .inner .map iframe{
	width:100%;
	height:300px;
	border-radius: 10px;
}
/* ----- */
.topInfoArea .inner .cnt{
	margin-bottom:20px;
}
.topInfoArea .inner .tit{
	font-size: clamp(16px, 1.0204vw + 12.1735px, 20px); /* Vary between 375px and 767px */
	padding-bottom:50px;
	margin-bottom:20px;
	border-bottom:solid 1px #000;
}
.topInfoArea .inner .txt{
	font-size: clamp(14px, 0.5102vw + 12.0867px, 16px); /* Vary between 375px and 767px */
	text-align:center;
}
.topInfoArea .inner .txt a{
	color:#000;
}

.topInfoArea .txt_address{
}
.topInfoArea .txt_tel{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:10px 1em;
}
.topInfoArea .txt_time{
}


.topInfoArea .lnkBtn{
}
.topInfoArea .lnkBtn a{
	width:100%;
	max-width:240px;
}

.topInfoArea .lnkBtn a::after{
	content: url(../img/btn_arr.png);
	padding-right: 5px;
	float: right;
}


@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{
		width:100%;
		order:2;
	}
	/* ----- */
	.topInfoArea .inner .map{
		width:100%;
		order:1;
		margin-bottom:10px;
	}
	.topInfoArea .inner .tit{
	}

	.topInfoArea .txt_address{
		margin-bottom:0.5em;
	}
	.topInfoArea .txt_tel{
		margin-bottom:0.5em;
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
		gap:0px 0em;
	}
	.topInfoArea .txt_tel .tel{
		width:100%;
	}
	.topInfoArea .txt_tel .fax{
		width:100%;
	}
	.topInfoArea .txt_time{
	}
	.topInfoArea .lnkBtn a{
		max-width:100%;
	}

}

/*--------------------------
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;
	border-radius: 10px;
}

@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{
	display:block;
}
.footerBannerLst li a img{
	width:100%;
	max-width:300px;
	vertical-align:bottom;
	border-radius: 8px;
}
@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;
	align-items: flex-start;
	display:flex;
	flex-wrap:wrap;
	gap:0px 0px;


}
@media screen and (max-width: 1300px) { /* Smartphone */
	.footer .inner{
		max-width:calc(100% - 30px);
	}
}
/* ----- */
.footerInformations{
	width:44%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:0px 0px;
	padding-right:15px;
}
.footerLogo{
	width:25%;
}
.footerInfo{
	width:67%;
	color:#fff;
	font-size: clamp(16px, 1.0204vw + 12.1735px, 20px); /* Vary between 375px and 767px */
	margin-bottom:60px;
}
.footerInfo{
}
/* ----- */
.footerLogo{
	text-align:center;
}
.footerLogo a{
	display:inline-block;
}
.footerLogo a:hover{
	text-decoration:underline;
}
.footerLogo a img{
	width:100%;
	max-width:125px;
}

/* ----- */
.footerAddress{
	font-size: clamp(14px, 0.7653vw + 11.1301px, 17px); /* Vary between 375px and 767px */
	margin-bottom:15px;
}
/* ----- */
.footerSnslnk{
	text-align:left;
}
.footerSnslnk li{
	display:inline-block;
	margin-right:5px;
}
/* ----- */
.footerLnkBox{
	width:56%;
	display:flex;
	flex-wrap:wrap;
	gap:0px 15px;
}
.footerLnkBox .footerLnk{
	width:calc((100% - 30px) / 3);
	border-left:solid 1px #fff;
	padding-left:2em;
}
.footerLnk li a{
	color:#fff;
}
/* ----- */

/* ----- */
.address{
	font-size:12px;
	text-align:center;
	color:#fff;
}
@media screen and (max-width: 767px) { /* Smartphone */


	.footerInformations{
		width:100%;
		justify-content:center;
		padding-right:0;
	}
	.footerLogo{
		width:100%;
	}

	.footerLogo{
		text-align:center;
		margin-bottom:15px;
	}
}

/*--------------------------
pageTop
---------------------------- */
.pageTop{
	position: fixed;
	inset: auto 50px 50px auto;
	z-index: 99999;
	margin: auto;
}
.pageTop a{
	background:rgba( 0 , 0, 0, 0.6);
	color:#fff;
	font-size:12px;
	padding: 30px 0px;
	display:inline-block;
	text-align: center;
	height: 100px;
	width: 100px;
	border-radius:100px;
}

@media screen and (max-width: 767px) { /* Smartphone */

	.pageTop{
		position: fixed;
		inset: auto 10px 10px auto;
		z-index: 99999;
		margin: auto;
	}
	.pageTop a{
		background:rgba( 0 , 0, 0, 0.6);
		color:#fff;
		font-size:12px;
		padding: 20px 0px;
		display:inline-block;
		text-align: center;
		height: 80px;
		width: 80px;
		border-radius:80px;
	}
}/*--------------------------
gmapBox
---------------------------- */
.gmapBox{

}
.gmapBox .map{
	margin-bottom: clamp(8px, 4.0816vw + -7.3061px, 24px); /* Vary between 375px and 767px */
}

.gmapBox iframe{
	width:100%;
	height: clamp(200px, 51.0204vw + 8.6735px, 400px); /* Vary between 375px and 767px */
	border-radius: 10px;
}


/*--------------------------
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;
}

/*--------------------------
.layoutLst01
---------------------------- */
.layoutLst01{
}
.layoutLst01 .item{
	margin-bottom: clamp(30px, 1.2121vw + 25.4545px, 40px); /* 375px ～ 1200px の間で可変する */
	display:flex;
	flex-wrap:wrap;
	gap:0px 6%;
}
.layoutLst01 .item .pic{
	width:30%;
}
.layoutLst01 .item .pic img{
	width:100%;
	height:auto;
	border-radius: 10px;
}
.layoutLst01 .item .cnt{
	width:64%;
}
.layoutLst01 .item .cnt{
}
@media screen and (max-width: 767px) { /* Smartphone */
	.layoutLst01 .item .pic{
		width:100%;
	}
	.layoutLst01 .item .cnt{
		width:100%;
		padding: clamp(10px, 3.8265vw + -4.3495px, 25px); /* Vary between 375px and 767px */
	}
	.layoutLst01 .item .cnt .tit02{
		margin-bottom:15px;
	}
}



/*--------------------------
.layoutLst02
---------------------------- */
.layoutLst02 {
    list-style: none;
    padding: 0;
    margin: 0;
}

.layoutLst02 .item {
    position: relative; /* 重なりの基準 */
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start; /* 上揃え */
    margin-bottom: clamp(30px, 1.2121vw + 25.4545px, 40px); /* 375px ～ 1200px の間で可変 */
}

.layoutLst02 .item:last-child {
    margin-bottom: 0;
}

.layoutLst02 .item .pic {
	z-index:2;
}

.layoutLst02 .item:nth-child(even) {
	z-index:1;
}
/* 偶数項目の順序を変更 */
.layoutLst02 .item:nth-child(even) .pic {
    order: 2;
}

.layoutLst02 .item:nth-child(even) .cnt {
    order: 1;
}

/* pic と cnt の共通スタイル */
.layoutLst02 .item .pic, 
.layoutLst02 .item .cnt {
    width: 50%;
    flex-shrink: 0;
    position: relative; /* 重なりのために相対位置を設定 */
}

/* 画像のスタイル */
.layoutLst02 .item .pic img {
    width: 100%;
    height: auto;
    display: block;
	border-radius: 10px;
}

/* cnt のスタイル */
.layoutLst02 .item .cnt {
    transition: margin 0.3s ease; /* シフト時のスムーズなアニメーション */
    max-width: calc(50% + 50px); /* シフト分を加えた最大幅 */
}

.layoutLst02 .item:nth-child(odd) .cnt {
    padding: 0px 30px 30px 60px;
}
.layoutLst02 .item:nth-child(even) .cnt{
    padding: 0px 60px 30px 30px;
}


/* 奇数項目 (.item:nth-child(odd)) の .cnt を左にシフト */
.layoutLst02 .item:nth-child(odd) .cnt {
}

/* 偶数項目 (.item:nth-child(even)) の .cnt を右にシフト */
.layoutLst02 .item:nth-child(even) .cnt {
}


@media screen and (max-width: 767px) { /* スマートフォン */
    .layoutLst02 .item {
        flex-direction: column;
        align-items: center;
        margin-bottom: 45px;
    }

    /* 偶数項目の順序を元に戻す */
    .layoutLst02 .item:nth-child(even) .pic,
    .layoutLst02 .item:nth-child(even) .cnt {
        order: initial;
    }

    /* pic と cnt を全幅に */
    .layoutLst02 .item .pic,
    .layoutLst02 .item .cnt {
        width: 100%;
        margin: 0; /* 重なりを解除 */
        padding: 0;
    }

    .layoutLst02 .item .cnt {
        padding: 10px 0px !important;
		max-width: 100%;

    }
}


/*--------------------------
.layoutLst03
---------------------------- */
.layoutLst03 {
    list-style: none;
    padding: 0;
    margin: 0;
}

.layoutLst03 .item {

}

.layoutLst03 .item .cnt {
	margin-bottom: 30px;
}



.layoutLst03 .item .imgright {
	float: right;
	margin: 0px 0px 30px 30px;
}

.layoutLst03 .item .imgleft {
	float: left;
	margin: 0px 30px 30px 0px;
}

.layoutLst03 .item .pic img{
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
}

.layoutLst03 .item .imgright img{

}

.layoutLst03 .item .imgleft img{


}





/*--------------------------
scheduleBox
---------------------------- */
.scheduleBox{
	margin-bottom:100px;
}
.scheduleBox .inner{
	width:1000px;
	margin:0 auto;
}
/* ----- */
.scheculeTbl{
	border:solid 1px #4e7654;
}
.scheculeTbl tr:first-child{
	border-top:solid 1px #4e7654;
}
.scheculeTbl tr{
	border-bottom:solid 1px #4e7654;
}
.scheculeTbl tr th,
.scheculeTbl tr td{
	padding:15px 10px;
	font-size:clamp(14px , 1.8vw , 16px);
	border-left:solid 1px #4e7654;
}
.scheculeTbl .tblMonth{
	width:13%;
	background:#d8e2d6;
	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;
	}
}



/*--------------------------
blogLstArea
---------------------------- */

.blogLstArea{

	margin: 0 calc(50% - 50vw);
	margin-bottom:100px;
	width: 100vw;
}
.blogLstArea .inner{
	max-width:1000px;
	margin:0 auto;
}


.blogLstArea .inner .archiveSearch{
	display: flex;
	align-items: center;
	gap: 40px;
}

.blogLstArea .inner .archiveSearch .column{
	display: flex;
	align-items: center;
	gap: 10px;
}
.blogLstArea .inner .archiveSearch .item{
	position: relative;
}
.blogLstArea .inner .archiveSearch .item select{
	border-radius: 6px;
    background: #fff;
    border: 1px solid #e5e5e5;
    padding: 10px 50px 10px 10px;
  -webkit-appearance: auto; /* Safari, iOS向け */
  -moz-appearance: auto; /* Firefox向け */
  appearance: auto; /* 標準 */
}


.blogLstArea .inner .archiveSearch .item::before{
  position: absolute;
  top: 12px;/*矢印の上からの位置*/
  right: 12px;/*矢印の右からの位置*/
  content: '';
  width: 7px;/*矢印の横幅*/
  height: 7px;/*矢印の縦幅*/
  border-top: 2px solid #4e7654;/*矢印の線の太さと色*/
  border-left: 2px solid #4e7654;/*矢印の線の太さと色*/
  transform: rotate(-135deg);/*矢印を回転*/
  pointer-events: none;/*矢印部分をクリックできるようにする*/
}

.blogLstArea .inner .archiveSearch .item:last-child::before{
	content:none;
}
.blogLstArea .inner .archiveSearch .item:last-child span{
	display:inline-block;
	cursor: pointer;
	background: #fff;
	border: 1px solid #e5e5e5;
	padding:3px 10px;
	border-radius:5px;

}

@media screen and (max-width: 767px) { /* Smartphone */
	.blogLstArea .inner .archiveSearch{
		flex-wrap: wrap;
		gap: 10px;
		padding: 10px;
	}
}




/* ----- */
.blogLst{
	margin:40px 0px;
	display:flex;
	flex-wrap:wrap;
	gap:40px 2%;
}
.blogLst li{
	width:calc( (100% - 6%) / 3);
}
.blogLst li a{
	display:block;
	color:#333;
}
.blogLst li a:hover{
	text-decoration:none;
}
.blogLst li a .pic{
	overflow:hidden;
	margin-bottom:10px;
	border-radius: 10px;
}
.blogLst li a .pic img{
	width:100%;
	height:100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	vertical-align: bottom;
	
}
.blogLst li a .catdate{
	display:flex;
	flex-wrap:wrap;
	justify-content:between;
	margin-bottom:10px;
}
.blogLst li a .catdate .cat{
	flex-basis:calc(100% - 110px);
}
.blogLst li a .catdate .cat span{
	display:inline-block;
	/*background:#4e7654;*/
	font-size:14px;
	text-align:center;
	padding:0px 1em;
	color:#fff;
	width:auto;
	border-radius:20px;
}

/* カテゴリーのカラー変更 ※カテゴリ・トップページ */
/*
li a .catdate .cat-event span{background: #4e7654 !important;}
li a .catdate .cat-message span{background: #81580c !important;}
li a .catdate .cat-seasons span{background: #113c99 !important;}
*/

.blogLst li a .catdate .date{
	flex-basis:100px;
	text-align:right;
}

.blogLst li a .tit{
	font-size:clamp(16px , 2.0vw , 18px);
	color: #4e7654;
	font-weight:bold;
	margin-bottom:8px;
}
.blogLst li a .txt{
	font-size:14px;
	line-height:1.8;
}

.blogLst li a:hover .tit{
	text-decoration:underline;
}

/* ----- */
.blogLstArea .lnkBtn{
}
.blogLstArea .lnkBtn a{
	max-width:240px;
}

.blogLstArea .lnkBtn a::after{
	content: url(../img/btn_arr.png);
	padding-right: 5px;
	float: right;
}

.blogLstArea .pagination{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
.blogLstArea .pagination ul{
	text-align:center;
}
.blogLstArea .pagination ul li{
	display:inline-block;
	margin-right:10px;
}
.blogLstArea .pagination ul li:last-child{
	margin-right:0;
}
.blogLstArea .pagination ul li a{
	border:solid 1px #ccc;
	border-radius:6px;
	display:block;
	padding:5px 10px;
	color:#000;
	background: #fff;
	text-decoration:none;
	min-width:15px;
	font-size:13px;
}

.blogLstArea .pagination ul li a:hover{
	background:#4e7654;
	color: #fff;
}

@media screen and (max-width: 767px) { /* Smartphone */
	.blogLstArea .pagination ul li{
		margin-right:5px;
	}
}



@media screen and (max-width:1000px) { /* Smartphone */
	.blogLstArea .inner{
		width:calc( 100% - 30px);
	}	
	.blogLst li a .catdate{
	}
	.blogLst li a .catdate .cat{
		flex-basis:100%;
	}
	.blogLst li a .catdate .date{
		flex-basis:100%;
	}
}

@media screen and (max-width: 900px) { /* Smartphone */

	.blogLst{
		margin-bottom:40px;
		gap:25px 2%;
	}
	.blogLst li{
		width:calc((100% - 2%) / 2);
	}
	.blogLst li a .catdate{
		margin-bottom:10px;
	}
}

@media screen and (max-width: 550px) { /* Smartphone */
	.blogLstArea{
		margin-bottom:50px;
		padding:40px 0;
	}
	.blogLst li{
		width:100%;
	}
	.blogLst li a .catdate .cat{
		flex-basis:calc(100% - 110px);
	}
	.blogLst li a .catdate .cat span{
		font-size:14px;
	}
	.blogLst li a .catdate .date{
		flex-basis:100px;
	}
	/* ----- */
	.blogLstArea .lnkBtn{
		text-align:centr;
	}
	.blogLstArea .lnkBtn a{
		max-width:100%;
	}
}
@media screen and (max-width: 350px) { /* Smartphone */
	.blogLst li a .catdate .cat{
		flex-basis:100%;
	}
	.blogLst li a .catdate .date{
		flex-basis:100%;
	}
}


/*--------------------------
blogDetailArea
---------------------------- */


.blogDetailArea{
	margin-bottom:100px;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	background:#f3f3eb;
	padding:20px 0;
}
.blogDetailArea .inner{
	max-width:900px;
	margin:0 auto;
}

.blogDetailArea .inner .archiveSearch{
	display: flex;
	align-items: center;
	gap: 40px;
}

.blogDetailArea .inner .archiveSearch .column{
	display: flex;
	align-items: center;
	gap: 10px;
}

.blogDetailArea .inner .archiveSearch .item select{
	border-radius: 4px;
    background: #fff;
    border: 1px solid #e5e5e5;
    padding: 10px;
}

.blogDetailArea .inner .blogDetail{
	margin: 50px 0px;
}

.blogDetail .datecate{
	display: flex;
}

.blogDetail .datecate{
	display:flex;
	margin-bottom:10px;
	gap: 20px;
}
.blogDetail .datecate .cate{
	flex-basis:calc(100% - 110px);
}
.blogDetail .datecate .cate p{
	display:inline-block;
	background:#4e7654;
	font-size:14px;
	text-align:center;
	padding:0px 1em;
	color:#fff;
	width:auto;
	border-radius:20px;
}

/* カテゴリーのカラー変更 ※カテゴリ */
.blogDetail .datecate .cat-event p{background: #4e7654;}
.blogDetail .datecate .cat-message p{background: #81580c;}
.blogDetail .datecate .cat-seasons p{background: #113c99;}




.blogDetail .datecate .date{
	flex-basis:100px;
	text-align:right;
}


.blogDetailArea .inner .blogDetail .blogDetailtit{
	font-size:clamp(20px , 2.6vw , 26px);
	color: #4e7654;
	font-weight:bold;
	padding-bottom: 20px;
	margin-bottom:20px;
	border-bottom: dotted #4e7654 1px;
	
}

.blogDetailArea .inner .blogDetail .blogDetailtxt{
	display:flex;
	flex-direction:column;
	gap:1em;
}

.blogDetailArea .inner .blogDetail .blogDetailtxt img{
	max-width: 900px;
}


.blogDetailArea .inner .blogNavi{
	margin: 50px 0px;
}

.blogDetailArea .inner .blogNavi ul{
	margin: 50px 0px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.blogDetailArea .inner .blogNavi ul li.prevpost{}
.blogDetailArea .inner .blogNavi ul li.prevpost span::before{
	content: "≪";
}

.blogDetailArea .inner .blogNavi ul li.nextpost{}

.blogDetailArea .inner .blogNavi ul li.nextpost span::after{
	content: "≫";
}

.blogDetailArea .inner .blogNavi ul li.listbtn{
	display:inline-block;
	background:#fff;
	font-weight: bold;
	text-align:center;
	padding:0.5em 1.5em;
	color:#4e7654;
	width:auto;
	border-radius:20px;
}


@media screen and (max-width:1000px) { /* Smartphone */
	.blogDetailArea{
		margin: 0;
		width: 100%;
		padding:80px 0;
	}
	.blogDetailArea .inner{
		width:calc( 100% - 30px);
	}
	.blogDetailtxt img{
		width:100%;
	}

	.blogDetailArea .inner .archiveSearch{
		flex-wrap: wrap;
		gap: 10px;
	}

.blogDetailArea .inner .blogNavi ul{
	justify-content: space-around;
	gap: 20px;
	flex-wrap: wrap;
}
.blogDetailArea .inner .blogNavi ul li.prevpost{
	order: 1;
}


.blogDetailArea .inner .blogNavi ul li.nextpost{
	order: 2;
}


.blogDetailArea .inner .blogNavi ul li.listbtn{
	order: 3;
}


}
