@charset "shift_jis";
/* CSS Document */
html {
	overflow-y: scroll;
}

*, *:before, *:after {
	padding: 0px;
	margin: 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

img {
	vertical-align: bottom;
	border: 0px;
}

a{
	transition: 0.5s;
}

a:hover{
	opacity: 1;
}

a img {
	border: none;
	outline: none;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

ul{
    list-style: inside disc;
	text-indent: -1.5em;
	padding-left: 1.5em;
}
ol{
    list-style: inside decimal;
    text-indent: -1.5em;
	padding-left: 1.5em;
}
ul li{
	margin: 5px auto;
}
ol li{
	margin: 5px auto;
}

table{
    border-collapse: collapse; 
    border-spacing:0;
}

th, td{
	text-align: center;
	padding: 5px;
	border: 1px solid;
}

caption{
    text-align: left;
}

.clearfix:after {
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*?*//*/
	height: auto;
	overflow: hidden;
	/**/
}

.both{
	clear:both;
}

.indent{
	padding-left:1.2em;
	text-indent:-1.2em;
}

.object-fit-img {
	object-fit: cover;
	font-family: 'object-fit: cover;'
}

html,body {
	height: 100%;
	width: 100%;
	text-align: center;
	color: #7a6a56;	
	font-family: "Kosugi Maru", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 15px;
	line-height: 150%;
	letter-spacing: 0.08em;
	font-weight: 400;
	background-color: #fff8ee;
	scroll-behavior: smooth;
}

/*-----------------------------------------システムメイン*/

#system_main {
	width: 100%;	
	text-align: center;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	position: relative;
	height: auto !important; /*IE6対策*/
	height: 100%; /*IE6対策*/
	min-height: 100%;
	background-image: url(images/header.png);
	background-position: center top 20px;
	background-repeat: no-repeat;
	background-color: #ebfbff;
}

/*-----------------------------------------トップフォト*/

#top_photo{
	width: 70%;
	height: auto;
	position: relative;
	margin: auto;
}
#top_photo p img{
	width: 100%;
}
.topImg{
	width: 70%;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
	border-bottom: 2px dashed #BFE476;
	background-image: url(images/bg_topImg_l.png), url(images/bg_topImg_r.png);
	background-position: left bottom, right bottom;
	background-repeat: no-repeat, no-repeat;
}

/*-----------------------------------------コンテナ―*/

#main_container{
	width: 100%;
	height: auto;
	position: relative;
	background-color: #fff8ee;
}

/*-----------------------------------------メイン*/

#wrapper_top{
	background-color: #fffdf5;
	padding: 30px 0 50px 0;
	margin: auto;
}

#wrapper1 {
	width:100%;
	text-align: center;
	margin: auto;
	padding: 50px 0 10px 0;
	background-color: #f0f4dc;
	background-image: url(images/bg_wrapper1.png);
	background-position: left top;
	background-repeat: repeat-x;
}

#wrapper2 {
	width:100%;
	text-align: center;
	margin: auto;
	padding: 50px 0;
	background-image: url(images/bg_wrapper2_t.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100%;
	background-color: #fff8ee;
}

#wrapper3 {
	width:100%;
	text-align: center;
	margin: auto;
	padding: 30px 0 60px 0;
	background-color: #f0f4dc;
	background-image: url(images/bg_wrapper3.png);
}

#wrapper4 {
	width:100%;
	text-align: center;
	margin: auto;
	padding: 0 0 30px 0;
	background-image: url(images/bg_wrapper4.png);
	background-position: left top;
	background-repeat: repeat-x;
}

article{
	width:70%;
	margin: auto;
	padding: 50px 0;
}

h2 {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
}

/*-----------------------------------------ページトップへ*/

#PageTopBtn {
    position: fixed;
    bottom: 0px;
    right: 10px;
	z-index: 9999;
}
#PageTopbtn a{
	display: block;
}

#PageTopBtn a:hover{
	opacity: 1.0;
}
  
#pagetop{
	display: none;
}

/*-----------------------------------------フッター*/

#footer{
	width: 100%;
	position: relative;
	background-color: #91bf91;	
}
#footer table{
	margin: auto;
}
#footer th{
	border: none;
	padding-top: 20px;
}
#footer td{
	border: none;
}

#footer p{
	padding-top: 50px;
	font-size: 14px;
	background-image: url(images/bg_footer.png);
	background-position: left bottom;
	background-repeat: repeat-x;
}

.heartbeat:hover {
	-webkit-animation: heartbeat 1.5s ease-in-out infinite both;
	        animation: heartbeat 1.5s ease-in-out infinite both;
}

/* ----------------------------------------------
 * Generated by Animista on 2025-3-31 11:6:12
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation heartbeat
 * ----------------------------------------
 */
@-webkit-keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  10% {
    -webkit-transform: scale(0.91);
            transform: scale(0.91);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  17% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  33% {
    -webkit-transform: scale(0.87);
            transform: scale(0.87);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  45% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
}
@keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  10% {
    -webkit-transform: scale(0.91);
            transform: scale(0.91);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  17% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  33% {
    -webkit-transform: scale(0.87);
            transform: scale(0.87);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  45% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
}

/*------------------------------------------トップページ*/

#objective p{
	margin-bottom: 20px;
}
#objective ul{
	list-style: none;
	text-indent: 0;
	padding-left: 0;
}
#objective ul li{
	padding: 20px;
	font-size: 20px;
	background-image: url(images/bg_objective.png);
	background-position: left bottom;
	background-repeat: repeat-x;
}

#overview table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 4px;
	margin-bottom: 30px;
}
#overview th{
	background-color: #c0e879;
	padding: 15px;
	text-align: center;
	border-radius: 8px;
	white-space: nowrap;
	border: none;
}
#overview td{
	text-align: left;
	background-color: #fff;
	padding: 15px;
	border-radius: 8px;
	border: none;
}

#map #googlemap {
	width: 100%;
	height: 380px;
	border: 4px solid #c0e879;
	border-radius: 10px;
	margin-left: auto;
	margin-right: auto;
}
#map #googlemap iframe{
	border-radius: 10px;
	margin-left: auto;
	margin-right: auto;
}

/*-----------------------------------------園について*/

.policy_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.policy_box p{
	width: 100%;
	text-align: left;
	font-family: "Zen Maru Gothic", serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 150%;
}
.policy_box figure{
	width: 23%;
}
.policy_box figure img{
	width: 90%;
}
.outline_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#outline table{
	width: 65%;
}
#outline th{
	padding: 10px;
	border: 3px solid #fff;
	background-color: #ffec8f;
	white-space: nowrap;
}
#outline td{
	padding: 10px;
	text-align: left;
	border: 3px solid #fff;
	background-color: #fff7d7;
}
#outline figure{
	width: 35%;
}
#outline figure img{
	width: 90%;
}
#extra_care dl{
	text-align: left;
}
#extra_care dt{
	font-size: 20px;
	font-weight: 500;
	color: #74af17;
	margin-bottom: 10px;
}
#extra_care dd{
	margin-bottom: 30px;
}
#extra_care p{
	margin-bottom: 15px;
}
#extra_care a{
	text-decoration: underline;
	color: #00F;
}
#extra_care th{
	padding: 10px;
	border: 3px solid #fff;
	background-color: #d5ed98;
	font-weight: 500;
	white-space: nowrap;
}
#extra_care td{
	padding: 10px;
	border: 3px solid #fff;
	background-color: #ffe8d7;
	text-align: left;
}
#extra_care ul{
	list-style: none;
	text-indent: 0;
	padding-left: 0;
	margin-top: 15px;
}
#extra_care ul li{
	margin: auto;
}

#history table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 2px;
}
#history th{
	text-align: left;
	font-weight: normal;
	padding: 10px;
	border: none;
	border-bottom: 4px dashed #fff;
	vertical-align: top;
	white-space: nowrap;
}
#history td{
	text-align: left;
	font-weight: normal;
	padding: 10px;
	border: none;
	border-bottom: 4px dashed #fff;
	width: 85%;
}

/*-----------------------------------------園の生活*/

.program{
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}
.daily_box{
	width: 48%;
	position: relative;	
}
.daily_box p{
	width: 50%;
	margin: auto;
	text-align: center;
	font-family: "M PLUS Rounded 1c", serif;
	font-size: 22px;
	font-weight: 500;
	background-color: #5bc465;
	margin-bottom: 10px;
	padding: 10px;
	border-radius: 20px;
	color: #fff;
	
}
	
.daily_box table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 6px;
}
.daily_box th{
	width: 20%;
	background-image: url(images/bg_daily_th.png), url(images/bg_daily_th2.png);
	background-position: center center, center center;
	background-repeat: no-repeat, no-repeat;
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 500;
	font-size: 20px;
	padding: 24px;
	border: none;
	color: #fff;
}
.daily_box td{
	text-align: left;
	font-family: "Yomogi", serif;
	font-size: 18px;
	font-weight: 600;
	line-height: 140%;
	border: none;
	background-color: #fff0cc;
	border-radius: 20px;
	text-align: left;
	padding: 10px 20px;
}
.daily01{
	position: absolute;
	right: 10%;
	top: 20%;
}
.daily02{
	position: absolute;
	right: 0;
	top: 49%;
}
.daily03{
	position: absolute;
	right: 10%;
	bottom: 12%;
}
.daily04{
	position: absolute;
	right: 0;
	top: 13%;
}
.daily05{
	position: absolute;
	right: 5%;
	top: 29%;
}
.daily06{
	position: absolute;
	right: 10%;
	bottom: 32%;
}
.daily_note{
	margin-bottom: 50px;
	text-align: left;
	margin-left: 30px;
}

.feature{
	text-align: left;
	border: 1px dashed #F90;
	padding: 20px;
	border-radius: 20px;
	background-color: #fff;
}
	
#daily h3{
	margin-bottom: 20px;
}
.feature dt{
	font-size: 20px;
	color: #7eb723;
	margin-bottom: 5px;
	background-image: url(images/list_feature.png);
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 30px;
	padding-top: 10px;
}
.feature dd{
	margin-bottom: 20px;
}
.event_box{
	display: flex;
	justify-content: space-between;
}
.event_box p img{
	width: 100%;
}
.event_box section{
	width: 31%;
}
.event_items{
	background-color: #fff;
	border-radius: 0 0 10px 10px;
	padding: 0px 15px 15px 15px;
}
.event_box table{
	width: 100%;
	margin: auto;
	border-collapse: separate;
	border-spacing: 2px;
}
.event_box th{
	width: 35%;
	border: none;
	border-bottom: 1px dashed;
	padding: 10px;
}
.event_box th img{
	width: 100%;
}
.event_box td{

	border: none;
	text-align: left;
	border-bottom: 1px dashed;
	padding: 10px;
}

/*-----------------------------------------お知らせ*/

#blogbox{
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	overflow: hidden;
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
#blogside{
	width: 24%;
	margin-bottom: 15px;
	padding: 15px;
	background-color: #bfe476;
	border-radius: 10px;
	background-image: url(images/bg_blogside.png);
}
#blogside ul{
	list-style: none;
	text-indent: 0;
	padding-left: 0;
	width: 100%;
	text-align: left;
	border-radius: 10px;
}
#blogside li{
	padding: 5px 10px;
	margin:10px;
	background-color: #fff;
	border-radius: 8px;
}
#blogside li a{
	text-decoration: none;
	color: #7a6a56;
	display: block;
}
#blogside li a:hover{
	color: #F90;
}
#blogmain {
	width: 75%;
	padding-bottom: 20px;
	padding-top: 0px;
	margin-bottom: 0px;
	margin: 0px;
}
#blogtitle{
	font-size: 20px;
	padding: 10px 20px;
	margin: 10px;
	position: relative;
	text-align: left;
	background-color: #ffe783;
	border-radius: 10px;
}
.blogkiji .blogdate {
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 500;
	text-align: right;
	padding-right: 10px;
	padding-top:10px;
	font-size: 15px;
}
#blog .blogkiji {
	width: 98%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 30px;
	padding: 10px;
	background:#fff;
	border: 4px solid #f0e8cd;
	border-radius: 10px;
}
#blog .blogkiji .bloghonbun {
	text-align: left;
	margin-bottom: 10px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
}
#blog .blogkiji .blog_photo {
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
	text-align: center;
}
#blog .blogkiji .blog_photo dl {
	width: 32%;
	display: inline-block;
	list-style-type: none;
	margin-bottom: 10px;
	text-align: center;
	vertical-align: top;
	line-height: 120%;
	font-size: 15px;
}
#blog .blogkiji dt img {
	width: 98%;
	border-radius: 10px;
	padding-bottom: 5px;
}
#blog .blog_pdf ul{
	list-style: none;
	text-indent: 0;
	padding-left: 0;
}
#blog .blog_pdf ul li{
	text-align: left;
	margin-left: 5px;
	margin-right: 20px;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 25px;
	font-size: 15px;
	background-image: url(images/list_blogpdf.png);
	background-position: left top 8px;
	background-repeat: no-repeat;
}
#blog .blog_pdf a{
	text-decoration: underline;
	color: #736357;
}
#blog .blog_pdf a:hover{
	opacity: 0.7;
}
#blog .youtube{
	margin-top: 30px;
	margin-bottom: 30px;
	margin-left: auto;
	margin-right: auto;
  position: relative;
  width: 95%;
  padding-top: 56.25%;
}
#blog .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
#blog .blogPage{
	margin-top: 30px;
	margin-right: 20px;
	text-align: right;
}
#blog .blogPage ul{
	list-style: none;
	text-indent: 0;
	padding-left: 0;
}
#blog .blogPage ul li{
	display: inline-block;
	font-size: 16px;
	vertical-align: top;
}
#blog .blogPage ul li a{
	font-family: "M PLUS Rounded 1c", serif;
	font-weight: 600;
	background-color: #fff;
	padding: 0px 6px;
	text-decoration: none;
	border: 2px solid #c0ba99;
	color: #c0ba99;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	transition: all 300ms linear;
}
#blog .blogPage ul li a:hover{
	background-color: #c0ba99;
	color: #fff;
	opacity: 1;
}
#blog .blogPage ul li .active{
	background-color: #c0ba99;
	color: #fff;
}

@media screen and (max-width:1300px){
	
/*-----------------------------------------システムメイン*/	

#system_main{
	background-size: 100%;
}
	
/*-----------------------------------------トップフォト*/

#top_photo{
	width: 80%;
}

.topImg{
	width: 80%;
}
	
/*-----------------------------------------メイン*/

article{
	width: 80%;
}

/*-----------------------------------------園について*/

.outline_box{
	flex-wrap: wrap;
}
#outline table{
	width: 100%;
	margin-bottom: 30px;
}
#outline figure{
	width: 45%;
	margin: auto;
}


/*-----------------------------------------園の生活*/

.time{
	background-size: 70%;
}
.l:after{
	content: "";
	background: url(images/ya.png);
	background-repeat: no-repeat;
	width: 7.5%;
	height: 8px;
	right: -7.5%;
}
.r:before{
	content: "";
	background: url(images/ya.png);
	background-repeat: no-repeat;
	width: 7.5%;
	height: 8px;
	left: -7.5%;
}
	
.daily01 img, .daily02 img, .daily03 img, .daily04 img, .daily05 img, .daily06 img{
	width: 80%;
}

}

@media screen and (max-width:768px){
	
/*-----------------------------------------トップフォト*/

#top_photo{
	width: 90%;
}
.topImg{
	width: 95%;
	background-size: 10%, 10%;
}
.topImg img{
	width: 50%;
}

	
/*-----------------------------------------コンテナ―*/

#container{
	padding-bottom: 50px;
}


/*-----------------------------------------メイン*/	

#wrapper_top{
	padding: 30px 0;
}
#wrapper1{
	padding: 50px 0 30px 0;
}
#wrapper2{
	padding: 50px 0 0 0;
}
#wrapper3{
	padding: 30px 0 0 0;
}

article{
	width: 90%;
	padding: 30px 0;
}

/*-----------------------------------------ページトップへ*/

#ptb_slide{
	display: none;
}

#pt_resp #pagetop{
	position: static;
	bottom: 0px;
	right: 5px;
}

#pagetop{
	display: block;
	text-align: right;
}
#pagetop a:hover{
	opacity: 1;
}

/*-----------------------------------------園について*/

#outline a{
	text-decoration: underline;
	color: #00F;
}
#outline figure{
	width: 60%;
}

.policy_box{
	flex-wrap: wrap;
}
.policy_box p{
	width: 100%;
}
.policy_box figure{
	width: 100%;
}
.policy_box figure img{
	width: auto;
}
#extra_care a{
	text-decoration: underline;
	color: #00F;
}
#extra_care th{
	display: block;
}
#extra_care td{
	display: block;
	margin-bottom: 5px;
	border-top: none;
}

/*-----------------------------------------園の生活*/

.program{
	flex-wrap: wrap;
}
.daily_box{
	width: 100%;
}
.daily_box:first-child{
	margin-bottom: 40px;
}

.daily01 img, .daily02 img, .daily03 img, .daily04 img, .daily05 img, .daily06 img{
	width: auto;
}

.event_box{
	flex-wrap: wrap;
}
.event_box section{
	width: 70%;
	margin: 20px auto;
}

/*-----------------------------------------お知らせ*/

#blog{
	padding-top: 10px;
}
#blogbox{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	flex-wrap: wrap;
}
#blogside{
	width: 98%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 25px;
	margin-top: 0px;
}
#blogmain{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	padding: 0px;
}
#blog .blogkiji .blog_photo dl{
	width: 48%;
}
#blog .blogkiji dt img {
	width: 95%;
}

}



@media screen and (max-width:480px){
	

/*-----------------------------------------トップフォト*/

#top_photo{
	width: 98%;
}
#top_photo p img{
	width: 100%;
	height: 58vw;
}
.topImg{
	width: 95%;
	background-size: 10%, 10%;
}
.topImg img{
	width: 70%;
}

/*-----------------------------------------メイン*/

article{
	padding: 30px 0px;
}

h2 img{
	width: 80%;
}

/*-----------------------------------------フッター*/

#footer p{
	font-size: 12px;
}

/*-----------------------------------------トップページ*/

#objective p img{
	width: 98%;
}
#objective ul li{
	font-size: 18px;
}

#overview th{
	display: block;
}
#overview td{
	display: block;
	margin-bottom: 5px;
}

/*-----------------------------------------園について*/

.policy_box p{
	font-size: 17px;
}
#outline th{
	display: block;
}
#outline td{
	display: block;
	margin-bottom: 3px;
	border-top: none;
}
#outline figure{
	width: 90%;
}

#history th{
	display: block;
	border-bottom: none;
	padding-bottom: 0;
}
#history th:before{
	content: "● ";
	font-size: 10px;
}
#history td{
	width: 100%;
	display: block;
}

/*-----------------------------------------園の生活*/

.daily_box th{
	display: block;
	width: 100%;
}
.daily_box td{
	display: block;
	padding: 25px;
}
.daily01{
	position: absolute;
	right: 10%;
	top: 23%;
}
.daily02{
	position: absolute;
	right: 0;
	top: 55%;
}
.daily03{
	position: absolute;
	right: 10%;
	bottom: 12%;
}
.daily04{
	position: absolute;
	right: 0;
	top: 13%;
}
.daily05{
	position: absolute;
	right: 5%;
	top: 32.5%;
}
.daily06{
	position: absolute;
	right: 10%;
	bottom: 33%;
}

.feature h3{
	text-align: center;
}
.event_box section{
	width: 100%;
}

/*-----------------------------------------お知らせ*/

#blog #blogtitle{
	font-size: 17px;
	padding-bottom: 5px;
}
#blog .blogkiji .blog_photo dl {
	display: inline-block;
	width: 100%;
	margin-right: 0px;
	margin-left: 0px;
}
#blog .blogkiji dt img {
	width: 90%;
}

}
	