@charset "shift_JIS";
/* CSS Document */

/* パソコンで見たときは"pc"のclassがついた画像が表示される */	
/* ここからがリセットスタイルシートになります。
-------------------------------------------------------------- */

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, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
/*フォーカスとは、ブラウザの画面上でマウスをクリックし、入力状態にあるまでの動作を指します*/
:focus {/* remember to define focus styles! */
	outline: 0;
}
body {/*行の高さをフォントサイズと同じにしています*/
	line-height: 1;
	margin:0;
	padding: 0;
	overflow-x: hidden;
	width: 100%;

}
ol, ul {
	list-style: none;
}
table {/* 隣接するセルのボーダーを結合し、間隔を0に指定しています */
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {/*captionとはテーブル（表）にキャプションをつける。キャプションとは、主に図版や写真について説明のために付け加えられた文字情報のことである。*/
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after, q:before, q:after {/*blockquote要素、q要素の前後にコンテンツを追加しないように指定しています*/
	content: "";
}
blockquote, q {/*引用符の表示が出ないようにしています*/
	quotes: "" "";
}
a img {
	border: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {/*html5の新しいタグをブロック要素として表示される。*/
	display: block;
}
/* reset.cssに下記を追加 */
header, footer, main, nav, article, aside, section {
	display: block;
}
/* ここまでがリセットスタイルシートになります。
-------------------------------------------------------------- */
body, td, th {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.wf-roundedmplus1c {
	font-family: "Rounded Mplus 1c";
}
html {
	margin: 0px;
	padding: 0px;
	height: 100%;
	width: 100%;
}
body {
	margin: 0px;
	padding: 0px;
	width: 100%;
	}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	zoom: 1;
}
a {
	font-weight: bold;
	text-transform: none;
	color: #09C;
}
a:hover {
	color: #F60;
	text-decoration: underline;
}

figure{
	margin:0;
	padding:0;
}
figcaption{
	padding: 0.5em;
	padding-top: 0;
	font-size: 14px;
	color: #666633;
	text-align: center;
}
div{
	box-sizing: border-box;
}
img {
	max-width: 100%;
	height:auto;
}



/*=======================================================*/
/*　　　　　　　　　header                               */
/*=======================================================*/
body {
	background-image: url(images/topbg_l.png), url(images/topbg_r.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top left, top right;
	}
header {
	width: min(100% - 2em, 1200px);
	margin-inline: auto;
	box-sizing: border-box;
	min-height: 200px; /*最小の高さ*/
	text-align: center;
	background-image: url(images/headerbg_l.png), url(images/headerbg_r.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top 20px left, top 20px right;
	background-size: 20% auto, 20% auto;
	position: relative;
	padding-top: 0px;
	padding-bottom: 10px;
		
}

.logo {
	margin-inline: auto;
	text-align: center;
	
}


	
/*=======================================================*/
/*　　　　　　　　 footer                                */
/*=======================================================*/

footer {
	width: 100%;
	text-align: center;
	color: #666600;
	background-image: url(images/footer.png);
	background-repeat: repeat-x;
	background-position: top center;
	background-color: #EFF1A5;
	box-sizing: border-box;
	height: 200px;
	display: flex;
	align-items:flex-end;
	justify-content: center;
	padding-bottom: 2em;
}
#footer {
	text-align: center;
	font-size: 14px;
}
	
@media screen and (max-width:768px) {

	 
	
header {
	
	background-image: none, none;
	
}
	

footer {
	
	background-size:  auto;	
	
}
body {
	
	background-size: 20% auto, 20%, auto;
	}
.logo.pc2 img {
	width: 80%;
	height: auto;
}

}
 @media screen and (max-width:480px) {
body {
	
	background-size: 40% auto, 40%, auto;
	}
 	 
.logo.sp2 {
	padding-top: 50px;
}

}

	
/*=======================================================*/
/*　　　　　　　　　ナビゲーション                       */
/*=======================================================*/

nav {
	width: 100%;
	z-index:999;
	
	}
nav ul {
	width:min(100% - 2em, 900px);
	margin-inline: auto;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	padding-top: 10px;
	padding-bottom: 10px;
}
nav ul li {
	width: calc(100% / 6 - 20px);
	height: auto;
	display: block;
	text-align: center;
	align-self: center;
}
nav ul li img {
	max-width: 100%;
	height: auto;
	transition-duration: 0.5s;
	cursor: pointer;

}

/*ナビボタン*のアニメーション*/

nav a:hover img {
	transform: scale(1.2, 1.2);

}


 @media screen and (max-width:768px) {
	 
nav ul {
	width:min(100% - .6em, 400px);
}
	 
nav ul li {
	width: calc(100% / 3 - 5px);
	
}

}
 @media screen and (max-width:480px) {
}



/*-----------------------------------*/
/*　　　     SP用ナビ　　 　　　  　 */
/*-----------------------------------*/

/*=======================================================================*/

#sp_navi {
	display: none;
	z-index: 999; /*9999から変更*/
	
}
/* ++++ トグルボタン ++++ */
	
#navTgl {
	display: none;
}
#sp_navi label {
	cursor: pointer;
	position: fixed;
	top: 0;
	right: 0;
}
.open {
	z-index: 998;　/*9998から変更*/
	box-sizing: border-box;
	width: 60px;
	height: 50px;
	transition: background .5s, transform .5s cubic-bezier(0.76, 0.52, 0.29, 1.25);
	box-sizing: border-box;
	background-color: #CCCC66;/*トグルカラー*/
	border-radius: 0px;
}
.open::before, .open::after {
	content: "";
}
.open span, .open::before, .open::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 30%;
	width: 40%;
	border-bottom: 2px solid white;
　/*トグルボタンのサイズとカラー*/
 transition: transform .5s cubic-bezier(0.76, 0.52, 0.29, 1.25);
}
.open::before {
	transform: translateY(-8px);
}
.open::after {
	transform: translateY(8px);
}
.close {
	z-index: 997;/*9997から変更*/
	width: 100%;
	height: 100%;
	pointer-events: none;
	transition: background .5s;
}
.active + .open span {
	transform: scaleX(0);
}
.active + .open::before {
	transform: rotate(45deg);
}
.active + .open::after {
	transform: rotate(-45deg);
}
.active ~ .close {
	background-color: rgba(255,255,255,0.5); /*背景色*/
}
/* ++++ ドロワーメニュー ++++ */
.menu {
	z-index: 997;/*9997から変更*/
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	width: 100%;
	height: 60%;
	padding: 50px 6% 6% 6%;
	margin: 0;
	box-sizing: border-box;
	transform: translatey(-100%);
	transition: transform .5s cubic-bezier(0.33, 1.01, 0.33, 0.97);
	background-color:rgba(255,255,255,1);
}
.active ~ .menu {
	transform: none;
}

/* リンク全体：縦並び・中央揃え */
#sp_navi ul li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  padding: 12px 0;
  color:#663300;
  font-family: "Zen Maru Gothic", serif;
  text-decoration:none;
 }
#sp_navi ul li {
	margin-bottom: 20px;
	z-index: 999;
}

 @media screen and (max-width:768px) {
/*TB SP ナビゲーション*/
#sp_navi {
	display: block;
	width: 100%;
}
.pc_nav {
	display: none;
	width: 100%;
	float: none;
}
}
/**=======================================================**/



/*=======================================================*/
/*　　　　　　　　　TOPに戻る                            */
/*=======================================================*/

/*jquery トップに戻る　*/
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 77%;
	z-index: 999;/*99999から変更*/
}

#page-top img {
	max-width: 100%;
	height: auto;
}

#page-top a {
	text-decoration: none;
	color: #fff;
	width: 100px;
	text-align: center;
	display: block;
		}
#page-top a:hover {
	text-decoration: none;
	opacity: 0.5;
}


/*=======================================================*/
/*　　　　　　　　　全ページ共通                         */
/*=======================================================*/
body {

}

/*mainとboxエリア*/

main {
	height: 100%;
	min-height: 80vh; /*最小の高さ*/
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.txt_box {
	/*width: 90%;*/
	margin-inline: auto;
	line-height: 135%;
	color: #663300;
}

.box {
	/*width: 90%;*/
	margin-inline: auto;
}

/*リンクのホバー*//*
a:hover {
	opacity: 0.6;
}
*/


/*-------------見出し-----------------*/


h2 {
	box-sizing: border-box;
	width: min(100% - 2em, 1000px);
	padding: 1em;
	margin: 1em auto 2em auto;
	display: block;
	text-align: center;
		
}

h2 img{
	max-width: 100%;
	height:auto;
}





/*----PDFリンク----*/
.pdf {
	width:min(100%, 800px);
	margin-inline: auto;
}
.pdf li {
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 1em;
	background-color: #66CCCC;
	border-radius: 15px;
	padding: 1em 2em;
	font-family: "Kosugi Maru", sans-serif;
	color: #FFFFFF;
	display: flex;
	align-items: center;
	gap: 1em;
}

.pdf li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f15b";
  color: #FFFFFF;
  font-size: 1.5em;     
  flex-shrink: 0;       
}

.pdf a {
	text-decoration: none;
	display: block;
	color: #FFFFFF;
	width: 100%;
	box-sizing: border-box;
	border-radius: 15px;
}

/* マウスオーバー時 */
.pdf li:hover {
	color: #FFFFFF;
	background-color: #E1D1B7;
	cursor: pointer;
}


/*-------テキストの修飾-----------------*/


.txt_r {
	text-align: right;
}
.txt_l {
	text-align: left;
}


/*--------リンクエリアの設定（エリア全体をリンク）-------------*/

.link-item {
    position: relative;
    width: 100%;
    height: 100%;
  }
.link-item a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
  }


  
/*--------------リスト----------------*/
.liststyle ul {
	padding-top: 1em;
	margin-bottom: 1em;
}
.liststyle ul li {
	/*display: flex;
	align-items: baseline;
	justify-content:left;*/
	margin-bottom: .5em;
	text-indent:1em;　
}
.liststyle ul li:before {
	content: "\f621"; /*アイコン番号*/
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 5px;
	color: #FEBEAB;
　/*色*/
}


/* olのスタイル */
.liststyle ol {
	padding-top: 1em;
	margin-bottom: 1em;
	list-style: none; /* デフォルトの数字を非表示に */
	counter-reset: li;
	padding-left: 1em;
}
/* ol内のliのスタイル */
.liststyle ol li {
	position: relative;
	font-size: 16px;
	padding-left: 1.5em;
	line-height: 1.5;
	　
}
/* 2つ目以降のliにmargin-topを指定 */
.liststyle ol li:not(:first-child) {
	margin-top: 0.5em;
}
/* 数字のスタイル */
.liststyle ol li::before {
	counter-increment: li;
	content: counter(li);
	position: absolute;
	left: 0;
	top: 2px; /* 数字のY軸線上の位置を調整 */
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
  background-color: #669900;
	font-size: 12px;
	color: #fff;
	line-height: 20px;
	text-align: center;
}
/*テーブル*/
.liststyle table {
	border-collapse: separate;
	border-spacing: 3px;
	margin-bottom: 1em;
	margin-top: 1em;
		}
.liststyle table th {
	background-color: #C5E6EB;
	padding: 10px;
	color: #006699;
	font-weight: bold;	
}
.liststyle table td{
	background-color: #F8F0EB;
	padding: 10px;
}


 @media only screen and (max-width: 480px) {
	 

body {
	font-size: 18px;
}
	 
	 
.liststyle table  {
   	width: 100%;
	box-sizing: border-box;
}

.liststyle table th, .liststyle table td{
	display: block;
	width: 100%;
	box-sizing: border-box;
}

.pdf li {
	width:min(100% - 2em);
	margin-inline: auto;
	box-sizing: border-box;
	margin-bottom: 1em;
	border-radius: 15px;
	padding: 0.5em 0.5em 0.5em 0.5em;
}
.pdf li a {
	text-decoration: none;
	display: block;
	width: 100%;
	padding: 0.5em 0.5em 0.5em 0.5em;
	box-sizing: border-box;
	border-radius: 15px;	
}
	 
	 
 }



/*=======================================================*/
/*　　　　　　レスポンシブテーブル                       */
/*=======================================================*/



.re_table {
　/*border-collapse: collapse;*//*隣接するポーターラインを重ねる*/
	}
	
.re_table th, .re_table td {
/*border: 1px solid #999999;
	padding: 8px;*/
}

.re_table th {
	text-align: left;
}
 @media only screen and (max-width: 768px) {
.re_table tr, .re_table th, .re_table td {
	display: block;
	width: auto;
}
.re_table tr:first-child {
/*border-top: 1px solid #999999;*/
}
.re_table th, .re_table td {
/*border-top: none;*/
}
}
/*レスポンシブテーブルここまで*/





/*=======================================================*/
/*　　　　　　　　　写真の表示　　                       */
/*=======================================================*/


/*アルバム　横3枚*/
.album3 {
	width: min(100% - 2em, 1200px);
	margin: 0 auto 2em auto;
	box-sizing: border-box;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	}
.album3 li {
	width: calc(100% / 3 - 10px);
	margin-bottom: 1em;
	text-align: center;
	box-sizing: border-box;
	
}
.album3 li img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 300px;
	border-radius: 5px;
	/*box-shadow: 3px 3px 5px rgba(0,0,0,0.3);*/
}
.album3 figcaption {
	font-size; 0.8em;
	color: #666633;
	box-sizing: border-box;
	width: 100%;
	padding: 5px 10px 5px 10px;
	text-align: center;
}




/*アルバム　横2枚*/	
.album2 {
	width: min(100% - 2em, 1000px);
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	margin-right: auto;
	margin-left: auto;
}
.album2 li {
	width: calc(100% / 2 - 10px);
	margin-bottom: 1em;
	text-align: center;
}
.album2 li img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 300px;
	margin-bottom: 5px;
	border-radius: 5px;
	/*box-shadow: 3px 3px 5px rgba(0,0,0,0.3);*/
}
.album2 figcaption {
	font-size; 0.8em;
	color: #666633;
	box-sizing: border-box;
	width: 100%;
	padding: 5px 10px 5px 10px;
	text-align: center;
}


 @media screen and (max-width:768px) {
.album3 li {
	width: calc(100% / 2 - 10px);
	margin-bottom: 1em;
}
}
 @media screen and (max-width:480px) {
.album2 li {
	box-sizing: border-box;
	width: 100%;
	height: autot;
	padding: 10px;
	margin-bottom: 1em;
}
.album3 li {
	box-sizing: border-box;
	width: 100%;
	height: auto;
	padding: 10px;
	margin-bottom: 1em;
}
}
/*写真の表示ここまで*/



/*=======================================================*/
/*　　　　　　　　　Flex-box                             */
/*=======================================================*/


/*左右の端による配置 ※左右いっぱいにしたいときはこちら*/	
.flexboxb {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
/*均等割り付け*/	
.flexboxa {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;
}
/*中のbox*/		
.inbox2 {
	width: calc(100% / 2 - 10px);
	margin-bottom: 10px;
}
.inbox3 {
	width: calc(100% / 3 - 10px);
	margin-bottom: 10px;
}
.inbox4 {
	width: calc(100% / 4 - 10px);
	margin-bottom: 10px;
}
 @media screen and (max-width:768px) {
.inbox2 {
	width: 100%;
}
.inbox3 {
	width: calc(100% / 2 - 10px);
}
.inbox4 {
	width: calc(100% / 2 - 10px);
}
}
 @media screen and (max-width:480px) {
.inboxy {
	width: 100%;
}
.inbox3 {
	width: 100%;
}
.inbox4 {
	width: 100%;
}
}




/*=======================================================
　　　　　　　　PCスマホ表示の切り替

 　　　　　　 .pc　.sp　タブレット以下切り替え
 
 　　　　　　 .pc2 .sp2　スマホ以下で切り替え          
       
=======================================================*/




/*-- PC版表示CSS   --*/


.pc, .pc2 {
	display: block;
}
.sp, .sp2 {
	display: none;
}


/*-- スマホ版表示CSS  --*/


@media screen and (max-width: 768px) {
.pc {
	display: none;
}
.sp {
	display: block;
}
}

@media screen and (max-width: 480px) {
.pc2 {
	display: none;
}
.sp2 {
	display: block;
}

}



/*=========================================================================================================================================================*/

/*----------------ここより下各ページ---------------------------*/

/*=========================================================================================================================================================*/
.contents {
	width: min(100% - 2em, 1200px);
	margin-inline: auto;
}


.bg_nami {
	background-image: url(images/bg_nami_top.png), url(images/bg_nami_bottom.png);
	background-position: top center, bottom center;
	background-repeat: repeat-x, repeat-x;
	padding-top:50px;
	padding-bottom:50px;
}


/*------------------------
　　　　TOPページ
-------------------------*/

/*------------slickの設定-----------*/

.slick01 .slick-slide {
  /*width: 600px;
  height: 400px;
  margin: 0 40px;*/
  position: relative;
  overflow: hidden;
}
.slick01.slick-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slick01 .slick-arrow {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: #F99;
	cursor: pointer;
	border: none;
	outline: none;
	font-size: 0;
	position: absolute;
	top: 50%;
	z-index: 1;
	filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
}
.slick01 .slick-arrow::before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #fff;
  border-width: 3px 3px 0 0;
  position: absolute;
  top: 15px;
  transform: rotate(45deg);
}
.slick01 .slick-next {
  right:20%;
}
.slick01 .slick-prev {
  left: 20%;
}
.slick01 .slick-next::before {
  left: 10px;
}
.slick01 .slick-prev::before {
  border-width: 0 0 3px 3px;
  right: 10px;
}
.dots01 .slick-dots {
  text-align: center;
  z-index: 999;
}
.dots01 .slick-dots li {
  display: inline-block;
}
.dots01 .slick-dots button {
	display: block;
	width: 10px;
	height: 10px;
	margin: 6px;
	font-size: 0;
	padding: 0;
	border: 0;
	outline: none;
	cursor: pointer;
	background-color: #CCCC66;
	border-radius: 50%;
}
.dots01 .slick-dots .slick-active button {
	background-color: #003399;
}
/*-----スライドショー-----*/

#ss {
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	width: 100%;
	position: relative;
	background-color:#F9F8F4;
}
#ss ul {
	
}

#ss li img {
	width: 100%;
	height: 50vw; /*写真の大きさが揃うように高さを調整する*/
	object-fit: cover;
}
.slide_illust {
	width: 100%;
	position: absolute;
	top: -10px;
	left: 0px;
	z-index: 98;
	pointer-events: none;
}
.slide_illust2 {
	max-width: 13%;
	position: absolute;
	left: 10px;
	z-index:98;
	pointer-events: none;
	top: 10%;
}
.slide_illust3 {
	max-width: 13%;
	position: absolute;
	right: 10px;
	z-index: 98;
	pointer-events: none;
	top:15%;
}
.slide_illust4 {
	width: 100%;
	height:100px;
	background-image: url(images/ss_bottom_bg.png);
	background-repeat: repeat-x;
	background-position: top center;
	background-size: 100% auto;
	position: absolute;
	bottom: -50px;
	left: 0;
	z-index: 99;
	pointer-events: none;

}
.catchcopy{
	position: absolute;
	width: min(70%, 700px);
	position: absolute;
	top:10%;
	left: 50%;
    transform: translateX(-50%);
	z-index: 98;
	pointer-events: none;
	text-align: center;
}
/*----/スライドショーここまで----*/



/*-----更新情報-----*/
#new {
	background-color:#F9F8F4;
	padding-top:50px;
	padding-bottom: 50px;
	margin-bottom: 2em;
	background-image: url(images/bg_edal.png), url(images/bg_edar.png);
	background-repeat: no-repeat, no-repeat;
	background-position: bottom 10% left, bottom 20% right;
	
}
#new .contents {
	width: min(100% - 2em, 800px);
	margin-inline: auto;
	padding: 1em;
	border-radius: 20px;
	background-color:#fff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);


	}
#new table {
	width:100%;
	margin-inline: auto;
	
	}
#new table td {
		padding: .5em;
	}
#new table tr{
	border-bottom: #BAD1BD 2px dotted;
}
.new_date {
	color: #E2620C;
	font-size: 16px;
	width: 6em;
	
	}
.new_text {
	color: #666600;
	font-size: 16px;
	line-height: 135%;
	}
.new_text a {
	font-weight:normal;
	color:#666600;
	
}
/*-----基本情報-----*/
#kihon {
	padding-bottom: 100px;
	background-image:url(images/bg_treeline.png);
	background-repeat:repeat-x;
	background-position:bottom;
	}
#kihon .contents {
	width: min(100%, 1000px);
	margin-inline: auto;
}
#kihon table {
	width: min(100%, 600px);
	margin-inline: auto;
	border-spacing: 5px;
	border-collapse: separate;

}

#kihon table th {
	padding: 10px;
	border-radius:5px;
	background-color: #EAE9D7;
	color: #666600;
	font-family: "Kosugi Maru", sans-serif;
	text-align: center;


}
#kihon table td {
	padding: 10px;
	border-radius:5px;
	line-height: 150%;
	font-family: "Kosugi Maru", sans-serif;

	color: #333333;
	background-color: #F8F8F8;
}


/*----Googleマップ----*/

#map {
	margin-bottom: 100px;
}
#map  iframe {
	
	width: 100%;
	height: 450px
}


@media screen and (max-width:768px) {



			  
/*======================================
           sp-スライドショー
======================================*/
#ss {
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	position: relative;
	width: 100%;
}

#ss li img {
	width: 100%;
	height: 80vw; /*写真の大きさが揃うように高さを調整する*/
	object-fit: cover;
}
	
.catchcopy{
	position: absolute;
	width: min(80%, 400px);
	position: absolute;
	top:20%;
	left: 50%;
    transform: translateX(-50%);
	z-index: 98;
	pointer-events: none;
	text-align: center;
}
.slide_illust2 {
	max-width: 15%;
	position: absolute;
	left: 15px;
	z-index:100;
	pointer-events: none;
	top: 60%;
}
.slide_illust3 {
	max-width: 15%;
	position: absolute;
	right: 15px;
	z-index: 100;
	pointer-events: none;
	top:65%;
}

/*基本情報*/
#kihon table th {
	padding: 10px;
	border-radius:0px;
	background-color: #EAE9D7;
	color: #666600;
	font-family: "Kosugi Maru", sans-serif;
	text-align: left;


}
#kihon table td {
	padding: 10px;
	border-radius:0px;
	line-height: 150%;
	font-family: "Kosugi Maru", sans-serif;

	color: #333333;
	background-color: #F8F8F8;
}


}
 @media screen and (max-width:480px) {

}

/*------------------------
　　　　園のご案内
-------------------------*/
/*----ごあいさつ----*/
#greeting {
	background-image: url(images/bg_top_w.png), url(images/bg_treeline2.png);
	background-size: 100% auto, auto;
	background-position: top center, bottom 20px center;
	background-repeat: no-repeat, repeat-x;
	padding-top: 50px;
	padding-bottom: 150px;
	background-color: #F0F1E0;	

	}
#greeting .contents {
	width: min(100% - 2em, 900px);
	line-height: 150%;
	color: #666633;
	font-family: "Kosugi Maru", sans-serif;

}


/*------保育目標----*/
#moku{
	margin-bottom: 50px;
	background-image: url(images/bg_ivy_l.png), url(images/bg_ivy_r.png);
	background-position: top left, top right;
	background-repeat: no-repeat, no-repeat;

	}
#moku .contents .moku_chatch {/*2026/06/19追加*/
    text-align: center;
	font-size:1.6em;
	color: #3399CC;
	 font-family: "Kosugi Maru", sans-serif;
	 width:100%;
	 box-sizing: border-box;
	 padding:1em;
	 margin-bottom:1em;


	}	
#moku .contents ul {
	width: min(100%, 400px);
	margin-inline:auto;
	box-sizing: border-box;
}

#moku .contents ul li {
  line-height: 150%;
  margin-bottom: 40px;
  font-size: 1.5em;
  font-family: "Kosugi Maru", sans-serif;
  color: #666633;
  list-style: none;
  position: relative;
  padding-left: 50px; /* アイコン幅＋余白分 */
  border-bottom: #CCCCCC dashed 2px;
  box-sizing: border-box;
}

#moku .contents ul li::before {
  content: "";
  width: 41px;   /* 横 */
  height: 60px;  /* 縦 */
  background: url("images/icon.png") no-repeat center/contain;
  position: absolute;
  left: 0;
  top: 20%;
  transform: translateY(-50%);
}



.photobox figure {
	width: 23%;
	max-width: 300px;
    aspect-ratio: 1 / .9; /*1 / 1　で 正方形を維持 */
    overflow: hidden;

}
.photobox figure img {
	 width: 100%;
     height: 100%;
     object-fit: cover;
	 border-radius: 47% 47% 45% 50% / 46% 50% 53% 49%  ;

	
}



/*----施設概要----*/

#gaiyo {
	background-color: #F7F5F0;
	
}
#gaiyo table {
	width: min(100%, 900px);
	margin-inline:auto;
	box-sizing: border-box;
	line-height: 1.3em;
	border-spacing: 5px;
	border-collapse: separate;
	margin-bottom:50px;

}

#gaiyo table th {
	white-space: nowrap;
	padding-right: 1em;
	color: #557D77;
	font-family: "Kosugi Maru", sans-serif;
	font-weight: bold;
	padding: 1em;
	background-color: #D6EBEB;
	border-radius: 5px;
	min-width: 7em;
}
#gaiyo table td {
	padding:1em;
	font-family: "Kosugi Maru", sans-serif;
	background-color:#Fff;
	border-radius: 5px;
	line-height: 1.5em;
	color: #666633;
}

.photobox {
	width: min(100% - 2em, 1000px);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;

	
}

/*-----法人のあゆみ-----*/
#history {
	margin-bottom: 100px;
	background-image:url(images/bg_hanal.png), url(images/bg_hanar.png);
	background-position: bottom left, bottom right;
	background-repeat: no-repeat, no-repeat;
}
#history .contents {
	background-color: rgba(255,255,255,0.8);
	width: min(100% - 2em, 900px);
}
#history table {
	width: min(100% - 2em, 900px);
	margin-inline:auto;
	box-sizing: border-box;
	line-height: 1.3em;
	}
#history table tr {
	border-bottom: #E0DFBE 2px solid;
}
#history table td {
	padding: 1em;
	 font-family: "M PLUS 1p", sans-serif;
	 color:#656356;
	 line-height: 1.3em;

}
#history table th {
	padding:1em;
	text-align: right;
	 font-family: "M PLUS 1p", sans-serif;
	 color: #A39D56;

}
	

@media screen and (max-width:1000px) {
	
#history {
	background-image: none, none;
}
	
#moku{
	margin-bottom: 50px;
	background-image: none, none;
		}

}

@media screen and (max-width:768px) {
	
	
#gaiyo table th, #gaiyo table td {
		border-radius:0;
	}
#history table th {
	text-align:left;
	padding-bottom: 0;
}
#history table td {
	padding-top: .5em;
}
.photobox figure {
	width:40%;
	max-width: 300px;
    aspect-ratio: 1 / .9; /*1 / 1　で 正方形を維持 */
    overflow: hidden;
	margin-bottom: 30px;

}


}
 @media screen and (max-width:480px) {
#moku .contents ul li {
  font-size: 1.1em;
  }
.photobox figure {
	width: 100%;
	max-width: 300px;
    aspect-ratio: 1 / .9; /*1 / 1　で 正方形を維持 */
    overflow: hidden;
	margin-bottom: 20px;

}

}






/*------------------------
　　　　園の生活
-------------------------*/

#daily {
	background-image: url(images/bg_daily.png), url(images/bg_top_w.png), url(images/bg_nami_bottom.png);
	background-size: auto, 100% auto, auto;
	background-position: center bottom 70px, top center, bottom center;
	background-repeat: no-repeat, repeat-x, repeat-x;
	padding-top: 50px;
	padding-bottom: 100px;
	background-color: #F9F8F4;
}
/*----デイリー----*/

#daily .contents {
		width: min(100% - 2em, 800px);
	margin-inline:auto;
	position: relative;
}


#daily table {
	width: 100%;
	box-sizing: border-box;
}

#daily table tr {
	border-bottom: dashed 2px #D0D1AB;
}

#daily table td {
	padding:1em;
	padding-right: 30%;
	font-family: "Kosugi Maru", sans-serif;
	line-height: 1.5em;
	color: #666633;
	
}
#daily table th {
	padding: 1em;
	color: #EC632F;
	font-family: "M PLUS 1p", sans-serif;
	font-weight: bold;
	font-size:1.5em;
	width: 4em;

}

.d_img01 {
	position: absolute;
	top: 5%;
	right: 5%;
    max-width: 200px;
	height: auto;
}

.d_img02 {
	position: absolute;
	top: 40%;
	right: 5%;
	max-width: 200px;
	height: auto;
}
	

.d_img03 {
	position: absolute;
	top: 70%;
	right: 5%;
	max-width: 200px;
	height: auto;
}



@media screen and (max-width:768px) {
#daily table th {
	padding: 1em;
	color: #EC632F;
	font-family: "M PLUS 1p", sans-serif;
	font-weight: bold;
	font-size:1.1em;

}
	
.d_img01 {
	position: absolute;
	top: 5%;
	right: 5%;
    max-width:20%;
	height: auto;
}

.d_img02 {
	position: absolute;
	top: 50%;
	right: 5%;
	max-width:20%;
	height: auto;
}
	

.d_img03 {
	position: absolute;
	top: 70%;
	right: 5%;
	max-width:20%;
	height: auto;
}

	

}
 @media screen and (max-width:480px) {
#daily table td {
	padding-right:.5em;
	}
	 
	 
.d_img01 {
	display: none;
}

.d_img02 {
	display: none;
}
	

.d_img03 {
	display: none;
}

	 

}

/*-------------------------
   　　こがねの春夏秋冬
  　　　 2026/06/19   追加
------------------------*/
#season {
	margin-bottom: 50px;
}
#season .box h3 {
	width: 100%;
	text-align: center;
}
	
.haru{
	background-color: #FDEBE8;
	}
.natu{
	background-color: #DFEFDC;
	}
.aki{
	background-color: #F8E8D6;
	}
.fuyu{
	background-color:#E1F2FB;
	}

#season .box {
	width:min(100% - 2em, 1400px);
	margin-inline: auto;
	box-sizing: border-box;
	margin-bottom: 2em;
	border-radius:20px;
	padding:1em;
	border-radius: 8px;
}
#season .box .txt_box{
	line-height: 1.5em;
	font-family: "Kosugi Maru", sans-serif;
	margin-bottom: 2em;
	color: #775F55;
	

}

#season .box .photo_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; 
  gap: 10px;
}


#season .box .photo_box figure {
  flex: 1 1 calc((100% - 30px) / 4); 
  max-width: calc((100% - 30px) / 4);
  aspect-ratio: 4 / 3;
  margin: 0;
  overflow: hidden;
  border-radius: 10px;
}

#season .box .photo_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


@media (max-width: 768px) {
  #season .box .photo_box figure {
    flex: 1 1 calc((100% - 10px) / 2);
    max-width: calc((100% - 10px) / 2);
  }
}


@media (max-width: 480px) {
  #season .box .photo_box figure {
    flex: 1 1 100%;
    max-width: 100%;
  }
}



/*------------------------
　　　年間行事
-------------------------*/

#year {
	margin-bottom: 3em;
}
#year .container {
	width: min(100% - 2em, 1400px);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch
}
.ybox {
	width: calc(100% / 4 - 10px);
	margin-bottom: 10px;
	background-color: #E6F7EF;
	box-sizing: border-box;
	padding: 0 1em 1em 1em;
	display: flex;
	flex-direction: column;
	justify-content: space-between; /* 上部と下部の要素を分ける */
	border-radius: 15px;
}
.y2 {
	background-color: #EEF2CC;
}
.y3 {
	background-color: #E9F1F5;
}

.y1 h3 {
	background-color: #D3F1E3;
	color: #6FBFAD;	/*border: dashed 2px #DB6A5E;
	border-top: none;*/
}
.y2 h3 {
	background-color: #DEE4A3;
	color: #6F9441;	/*border: dashed 2px #6F9441;
	border-top: none;*/
}
.y3 h3 {
	background-color: #CDE8F1;
	color: #3295A3;	/*border: dashed 2px #3295A3;
	border-top: none;*/
}



.ybox ul {
	width: 90%;
	margin-inline: auto;
	margin-bottom: 20px;
}
.ybox ul li {
	margin-bottom: 0.7em;
	font-family: "Kosugi Maru", sans-serif;
	color: #595342;
}
   

.ybox2 {
	width: min(100% - 10px);
	margin-inline: auto;
	background-color: #DCEDEF;
	box-sizing: border-box;
	padding: 1em;
	display: flex;
	flex-direction: column;
	justify-content: space-between; /* 上部と下部の要素を分ける */
}
.event {
	margin-bottom: 1em;
}
.event h3 {
	font-family: "RocknRoll One", sans-serif;
	font-size: 1.5em;
	font-weight: 900;
	text-align: center;
	padding: 10px;
	padding-bottom: 20px;
	width: 50%;
	margin: 0 auto 1em auto;
	border-radius: 0% 0% 50% 50% / 0% 0% 100% 100% ;
	
}
	
.yphoto {
	box-sizing: border-box;
	width: 100%;
	text-align: center;
}
.yphoto img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}
figure {
	margin: 0;
	padding: 0;
}
.yphoto figcaption {
	font-size: 0.9em;
	color: #663300;
	padding-top: .3em;
	color: #666633;
}

@media screen and (max-width: 768px) {
.ybox {
	width: calc(100% / 2 - 10px);
	margin-bottom: 10px;
}
}
@media screen and (max-width: 480px) {

.ybox {
	width: min(100% - 10px);
	margin-inline: auto;
	margin-bottom: 10px;
}


}


/*------------------------
　　　　園の特色
-------------------------*/

/*----特色----*/

#feature {
	padding-top: 50px;
	padding-bottom: 50px;
	background-image: url(images/bg_top_w.png), url(images/bg_nami_bottom.png);
	background-size: 100% auto, auto;
	background-repeat: no-repeat, repeat-x;
	background-position: top center, bottom, center;
	background-color: #F9F8F4;
	margin-bottom: 150px;
	}
#feature .contents {
	background-color: #fff;
	border-radius:20px;
	margin-bottom: 50px;
	
	}
#feature .contents h3 {
	width: 100%;
	padding: 1.5em 2em;
	padding-left: 4em;
	background-color: #D1EFEF;
	box-sizing: border-box;
	border-radius: 20px 20px 0 0;
	font-family: "Kosugi Maru", sans-serif;
	font-weight: bold;
	font-size: 1.2em;
	color: #066;
	position: relative;
	}
#feature .contents h3::before {
  content: "";
  width: 40px;   
  height: 43px; 
  background: url("images/icon2.png") no-repeat center/contain;
  position: absolute;
  left: 1em;
  top: 50%;
  transform: translateY(-50%);
}
#feature .contents .txt_box {
	width: min(100% - 2em);
	margin: 1em auto;
	margin-bottom: 2em;
}

#feature .contents .pdf{
	margin-bottom: 2em;
}

@media screen and (max-width:768px) {

}
 @media screen and (max-width:480px) {

}



/*------------------------
　　　　ブログ
-------------------------*/


#blog {
	background-image: url(images/bg_top_w.png), url(images/bg_nami_bottom.png);
	background-position: top center, bottom center;
	background-repeat: no-repeat, repeat-x;
	background-size: 100% auto, auto;
	background-color: #F5F8EB;
	padding-top: 50px;
	padding-bottom: 50px;
	margin-bottom: 50px;
}
#blog_main {
	width:min(100% - 2em, 1400px);
	margin-inline: auto; 
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 50px;
	
	}
#category {
	width: 25%;
}
#blog_honbun {
	width: 70%;
	box-sizing: border-box;
	
}
/*----カテゴリー----*/
#category h3 {
	text-align: center;
	margin-bottom: 2em;
	font-size: 1.2em;
}
#blog #category h3 {
	color: #0099CC;
}
.categrybox {
	padding:1em;
	background-color: #fff;
	border-radius: 20px;
}

#category ul {
	box-sizing: border-box;
	background-color:#fff ;
	border-radius: 20px;
	padding: 1em;

}
#category li {
	margin-bottom: 1em;
	border-bottom: 2px #CCCCCC dotted;
	font-size: .9em;
	line-height:1.3em;
	font-family: "Kosugi Maru", sans-serif;
	color: #666633;
}
#category li a {
	text-decoration: none;
	color: #669933;
}
#category li a:hover {
	color: #FF6633;
}
/*----ブログ記事----*/
.blogbox {
	background-color: #FFF;
	border-radius: 1em;
	margin-bottom: 2em;
	padding-bottom: 2em;
	background-image: url(images/bg_hana.png);
	background-position: top right;
	background-repeat: no-repeat;
}
.blogbox h3 {
	font-size: 1.2em;
	font-weight: bold;
	border-bottom: 2px dashed #B0E1D2;
	padding: 1em 1em 1em 2em;
	font-family: "Kosugi Maru", sans-serif;
	color: #009999;
	background-image: url(images/bg_blogh3.png);
	background-position: top left 10px;
	background-repeat: no-repeat;
	background-size: auto 100%;
}
.blog_date {
	text-align: right;
	font-size: 0.85em;
	padding: .5em;
}
#blog .blog_date {
	color: #066;
}


.blogbox img {
	width: 100%;
	max-width:500px;
	height: auto;
	margin: .5em auto .5em auto;
	display: block;
	border-radius: 1em;
	}

/*記事本文*/
.blog_txt {
	margin: 1em;
	line-height: 1.5em;
	color: #666633;
}
/*ブログ写真横3枚*/
.blog_photo {
	margin-top: 1em;
	margin-bottom: 1em;
}
/*PDF貼り付け*/
#blog .pdf {
	margin:1em auto;
	width:min(100% - 2em, 800px);
	margin-bottom:2em;
	
	
}
/*YOUTUBE*/
.movie {
	width: 96%;
	margin-right: auto;
	margin-left: auto;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
/*----ブログのページャー ----*/

.pager {
	margin-bottom: 150px;
}

.pager .pagination {
	text-align: center;
}
.pager .pagination li {
	display: inline;
	margin: 0 2px;
	padding: 0;
	display: inline-block;
	width: 50px;
	height: 50px;
	text-align: center;
	position: relative;
	border-radius: 10px;
	background-color: #DADE89;
}
.pager .pagination li a {
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: table;
	color: #fff;
	text-decoration: none;
}
.pager .pagination li a span {
	display: table-cell;
	vertical-align: middle;
}
.pager .pagination li a:hover, .pager .pagination li a.active {
	color: #000;
	border-radius: 10px;
	background-color: #EAEBC9;
}
 @media only screen and (max-width: 768px) {
.pager .pagination li {
	display: none;
}
.pager .pagination li.pre, .pager .pagination li.next {
	display: inline-block;
	width: 40%;
	height: 50px;
	text-align: center;
}
.pager .pagination li.pre a, .pager .pagination li.next a {
	width: 100%;
	text-align: center;
}
.pager .pagination li.pre span::after {
	content: "　前の記事へ";
}
.pager .pagination li.next span::before {
	content: "次の記事へ　";
}
}
/*----ページャーここまで------*/





/*----------------------タブレット以下での表示------------------------------------*/
.------sp_w767------------------------- {
}
@media screen and (max-width:767px) {
}
 @media screen and (max-width:768px) {
.------sp_w768------------------------- {
}




/*======================================
            sp-ブログ
======================================*/

#blog {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
}
#category {
	width:100%;
	margin-inlin: auto;
	box-sizing: border-box;
	margin-bottom: 2em;
}
#blog_honbun {
	width:100%;
	margin-inlin: auto;
	box-sizing: border-box;
}
}

/*=============================================
              情報開示
===============================================*/
#joho {
	background-image: url(images/bg_top_w.png), url(images/bg_hanaline.png);
	background-size: 100% auto, auto;
	background-position: top center, bottom 30px center;
	background-repeat: no-repeat, repeat-x;
	padding-top: 50px;
	padding-bottom:50px;
	background-color: #E0EFE8;
	margin-bottom:50px;
}


#kaiji .contents{
	width: min(100% - 2em, 600px);
	font-family: "Kosugi Maru", sans-serif;
	line-height:1.5em;
	color: #666633;
	margin-bottom: 150px;
	
	}
#kaiji .contents p {
	margin-bottom: 2em;
}

	
#kaiji a {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background-color: #F4724A;
	padding: 15px 20px;
	border-radius: 6px;
	transition: .3s;
	margin-top: 50px;
	text-decoration: none;
	text-align: center;
}
#kaiji a:hover {
	background-color: #66CCCC;
	}

#kujo {
	margin-bottom: 150px;
	background-image: url(images/bg_eda2l7.png), url(images/bg_eda2r.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top 30px left, top 30px right;
	}


.kujo_info{
	padding: 15px;
	border-radius: 20px;
	width: min(100% - 2em, 800px);
	margin-inline: auto;
	background-color:#F5F1E4;
	font-family: "Kosugi Maru", sans-serif;
	line-height: 1.5em;
	color: #666633;
	margin-bottom: 50px;
}
#kujo .contents {
	width: min(100% - 2em, 900px);
	margin-bottom: 50px;
	padding: 1em;
	background-color: #F3F3F1;
	border-radius: 10px;	
	
}

#kujo .contents h3 {
	border-bottom: 5px solid #C5E7DF;
	color: #339999;
	font-family: "Kosugi Maru", sans-serif;
	font-size: 1.2em;
	padding: .5em 1em;
	margin-bottom: 1em;
}

#kujo .txt_box {
	margin-bottom: 2em;
	line-height: 1.3em;
}

@media screen and (max-width:1200px) {
#kujo {
	background-image: none, none;
	}

}

@media screen and (max-width:768px) {
	
#kujo .contents {
	width: min(100% - 2em);
	margin-inline:auto;
	box-sizing: border-box;
	}
}
 @media screen and (max-width:480px) {
	 

}






/*==========================フォント===========================================*/

.m-plus-rounded-1c-regular {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.kiwi-maru-regular {
  font-family: "Kiwi Maru", serif;
  font-weight: 400;
  font-style: normal;
}

.yusei-magic-regular {
  font-family: "Yusei Magic", sans-serif;
  font-weight: 400;
  font-style: normal;
}


.yomogi-regular {
  font-family: "Yomogi", cursive;
  font-weight: 400;
  font-style: normal;
}


.stick-regular {
  font-family: "Stick", sans-serif;
  font-weight: 400;
  font-style: normal;
}


.mochiy-pop-one-regular {
  font-family: "Mochiy Pop One", sans-serif;
  font-weight: 400;
  font-style: normal;
}


.kosugi-maru-regular {
  font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
}


.rocknroll-one-regular {
  font-family: "RocknRoll One", sans-serif;
  font-weight: 400;
  font-style: normal;
}


.zen-maru-gothic-regular {
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
  font-style: normal;
}


.m-plus-1p-regular {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 400;
  font-style: normal;
}


/*=========================アニメーション===========================================*/

.fuwafuwa01 {
	animation: fuwafuwa01 2s infinite;
}
@keyframes fuwafuwa01 {
 0%, 100% {
 transform: translate(0, 0);
}
 50% {
 transform: translate(0, 15px);
}
}
.fuwafuwa02 {
	animation: fuwafuwa02 2s infinite;
}
@keyframes fuwafuwa02 {
 0%, 100% {
 transform: translate(0, 0);
}
 50% {
 transform: translate(0, -15px);
}
}
.fuwafuwa03 {
	animation: fuwafuwa03 3s infinite;
}
@keyframes fuwafuwa03 {
 0%, 100% {
 transform: translate(0, 0);
}
 50% {
 transform: translate(0, 20px);
}
}
.yurayura {
	transform-origin: center bottom;
	animation: yurayura 3s linear infinite;
}
 @keyframes yurayura {
 0%, 100% {
 transform: rotate(10deg);
}
 50% {
 transform: rotate(-10deg);
}
}
