@charset "utf-8";
/* CSS Document */

#pagetitle .pttl::before{
	content: "";
	display: block;
	width: 64px;
	height: 64px;
	position: absolute;
	background: url(../img/onpu.png) no-repeat left top;
	background-size: contain;
	left:1em;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
#pagetitle .pttl::after{
	content: "";
	display: block;
	width: 125px;
	height: 155px;
	position: absolute;
	background: url("../img/tori_pink.png") no-repeat left top;
	background-size: contain;
	right:0;
	top:0.3em;
}
#pagetitle.about .pttl::after{
	content: "";
	display: block;
	width: 106px;
	height: 155px;
	position: absolute;
	background: url(../img/kuma.png) no-repeat left top;
	background-size: contain;
	right:0;
	top:0.3em;
}
#pagetitle.features .pttl::after{
	content: "";
	display: block;
	width: 112px;
	height: 168px;
	position: absolute;
	background: url(../img/neko.png) no-repeat left top;
	background-size: contain;
	right:0.2em;
	top:0.3em;
}
#pagetitle.aday .pttl::after, #pagetitle.recruit .pttl::after{
	content: "";
	display: block;
	width: 97px;
	height: 86px;
	position: absolute;
	background: url(../img/tori.png) no-repeat left top;
	background-size: contain;
	right:0.3em;
	top:0.5em;
}
#pagetitle.surpport .pttl::after{
	content: "";
	display: block;
	width: 86px;
	height: 136px;
	position: absolute;
	background: url(../img/usagi.png) no-repeat left top;
	background-size: contain;
	right:0.6em;
	top:0.2em;
}
#pagetitle.guide .pttl::after{
	content: "";
	display: block;
	width:103px;
	height: 78px;
	position: absolute;
	background: url(../img/nezumi.png) no-repeat left top;
	background-size: contain;
	right:0.6em;
	top:0.6em;
}
#pagetitle.faq .pttl::after{
	content: "";
	display: block;
	width:93px;
	height: 150px;
	position: absolute;
	background: url(../img/kitune.png) no-repeat left top;
	background-size: contain;
	right:0.5em;
	top:0.5em;
}

#pagetitle{
	background: #FFFDDD;
	text-align: center;
    position: relative;
    overflow: hidden;
}
#pagetitle .inner{
	width:40%;
	padding:2.0em 0 2.5em;
	max-width: 520px;
	margin:0 auto;
	position: relative;
}
#pagetitle .pttl{
	font-size: 1.8em;
	color:#833000;
	letter-spacing: 0.1em;
	line-height: 1;
	padding-top:0.1em;
	font-weight: 700;
}
#pnav{
	background: url(../img/pnav_bg.png) repeat-x left top;
	background-size: auto 100%;
	padding:0.8em 0;
}
#pnav ul{
  display: -webkit-flex;
  display: flex;
	justify-content: center;
}
#pnav ul li{
	padding:0 1em;
}
#pnav ul li a{
	display: block;
	background: #fff;
	border-radius: 10em;
	text-align: center;
	color:#CE791A;
	padding:0.3em;
	font-size: 0.9em;
	font-weight: 500;
	width: 11em;
}
#pnav ul li a:hover{
	background: #CE791A;
	color:#fff;
}

.sec{
	padding:60px 0;
}
.ttl1{
	text-align: center;
	font-size: 1.4em;
	font-weight: 700;
	color:#483C34;
	padding-bottom:1.8em;
	letter-spacing: 0.1em;
}
.ttl1 span{
	font-family: "Zen Maru Gothic", sans-serif;
	color:#3C9861;
	font-size: 0.8em;
	display: inline-block;
	padding-bottom:0.3em;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.ttl1 span.subttl{
	font-family: "Zen Maru Gothic", sans-serif;
	color:#483C34;
	font-size: 0.8em;
	display: block;
	padding-bottom:0.3em;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.flex.reverse{
  flex-direction: row-reverse;
}
.fw700{
    font-weight: 700;
}
#flow .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#flow .flex dl{
	width: 31.5%;
	margin-bottom:1em;
	background: #FCE0DB;
	border-radius: 20px;
	border: solid 2px #FE7D6A;
	text-align: left;
	padding-bottom:2em;
}
#flow .flex dl.age35{
	background: #EFF4C5;
	border: solid 2px #BEC56E;
}
#flow .flex dl.age1go{
	background: #DBF2FC;
	border: solid 2px #7DA3F7;
}
#flow .flex dl dt{
	text-align: center;
	border-radius: 18px 18px 0 0;
	background: #FE7D6A;
	color:#fff;
	font-size: 1.3em;
	font-weight: 500;
	padding:0.4em;
	margin-bottom:1em;
}
#flow .flex dl.age35 dt{
	background: #A6B234;
}
#flow .flex dl.age1go dt{
	background: #7DA3F7;
}
#flow .flex dl dd{
	margin:0 2em 0.9em;
	margin-bottom:0.5em;
	 background-image : linear-gradient(to right, #FC7D6A 5px, transparent 5px);
 background-size: 10px 2px;
 background-position: left bottom;
 background-repeat: repeat-x; 
	padding-bottom:0.9em;
}
#flow .flex dl dd .flex{
	display: flex;
}
#flow .flex dl dd .flex div{
	width: 50%;
	text-align: center;
	color:#2557C6;
	font-weight: 500;
}

#flow .flex dl dd .ari{
	border-left: solid 2px #7DA3F7;
}
#flow .flex dl dd em{
	font-weight: 500;
	color:#2557C6;
}
#flow .flex dl dd .left{
	float: left;
	width: 50%;
}
#flow .flex dl dd .right{
	float: right;
	width: 50%;
	border-left: solid 2px #7DA3F7;
	padding-left: 1em;
}
#flow .flex dl dd .time{
	font-weight: 700;
	font-size: 1.2em;
	color:#FC7D6A;
}
#flow .flex dl.age35 dd{
	 background-image : linear-gradient(to right, #A6B234 5px, transparent 5px);
}
#flow .flex dl.age35 dd .time{
	color:#A6B234;
}
#flow .flex dl.age1go dd{
	 background-image : linear-gradient(to right, #7DA3F7 5px, transparent 5px);
}
#flow .flex dl.age1go dd .time{
	color:#7DA3F7;
}
#flow .flex dl dd p{
	font-weight: 500;
	color:#483C34;
}
#flow .flex dl dd .img{
	width: 50%;
	margin-left: auto;
	padding:0.4em 0;
}
.p-0{
    padding: 0!important;
}
#flow .flex dl.age3col{
	width: 25%;
	margin-bottom:1em;
	background: none;
	border: none;
	text-align: left;
	padding-bottom:2em;
}
#flow .flex dl.age3col:last-of-type{
    width: 20%;
    writing-mode: vertical-rl;
    margin: auto;
}
#flow .flex dl.age3col:nth-of-type(2){
    width: 75%;
    padding: 0 1em;
    background-image: repeating-linear-gradient(to bottom, #7DA3F7 0 5px, transparent 5px 10px);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 2px 100%;
    margin-bottom: 0;
}
#flow .flex .age35 dt, .age02 dt{
    line-height: 2.5;
}
#flow .flex .age1go dt span{
    font-size: 1.2rem;
}
#flow .flex dl.age3col dd, #flow .flex dl.age2col dd{
	margin:0;
	margin-bottom:0;
}
#flow .flex dl.age3col dd:last-of-type, #flow .flex dl.age2col dd:last-of-type{
    background-image: none;
}
#flow .flex dl.age2col{
	width: 75%;
	margin-bottom:0;
	background: none;
	border: none;
	text-align: left;
	padding-bottom:0;
}
#flow .flex dl.age2col:last-of-type{
    width: 25%;
    writing-mode: vertical-rl;
    margin: auto;
}
#flow .flex dl.age3col.braces{
    background-image: url("../img/aday/braces.png");
    background-position: left 10px center;
    background-repeat: no-repeat;
    background-size: 1rem 12rem;
}
#flow .flex dl.age2col.braces{
    background-image: url("../img/aday/braces.png");
    background-position: left 10px center;
    background-repeat: no-repeat;
    background-size: 1rem 7rem;
}
#flow .txt1{
	text-align: left;
	padding:0.5em 0 1.8em 1.5em;
}
#flow .txt1 h3{
	color:#3C9861;
	font-weight: 500;
	font-size: 1.2em;
	position: relative;
}
#flow .txt1 h3::before{
	content: "▶︎";
	color:#3C9861;
	position: absolute;
	left:-1.4em;
}
#flow .txt1 h4{
	font-weight: 400;
	font-size: 1.3em;
	padding:0.8em 0 0.3em;
}
#flow .txt1 h5{
	font-weight: 700;
}
#flow .txt1 ul{
	padding-bottom:0.5em;
}
#flow .wrap .btn{
	/*position: relative;*/
	z-index: 5;
	margin: 20px auto;
    width: 334px;
}
#flow .wrap .btn a{
	display: block;
	color:#DEA532;
	font-size: 1.3em;
	font-weight: 700;
	border:solid 2px #EFC36B;
	background: #fff;
	padding:0.6em 0.4em;
	text-align: center;
	margin:0 auto;
	border-radius: 10em;
}
#flow .wrap .btn a:hover{
	background: #EFC36B;
	color:#fff;
}


.txt1 ul li{
    margin-bottom: 0.5em;
}
span.ichigo{
	font-weight: 700;
	color:#7DA3F7;
}
span.nigo{
	font-weight: 700;
	color:#A6B234;
}
span.sango{
	font-weight: 700;
	color:#FC7D6A;
}
#event{

}
#event ol{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	padding-top:2em;
}
#event ol li{
	width: calc(100% / 6.6);
	background: #f0f7d8;
	border-radius: 20px;
	position: relative;
	min-height: 20em;
	margin-bottom:4em;
}
#event ol li .num{
	width: 4.5em;
	height: 4.5em;
	background: #FCC75C;
	border-radius: 10em;
	text-align: center;
	color:#483C34;
	font-size:0.85em;
	font-weight: 500;
	position: absolute;
	top:-2.25em;
	left:-0.1em;
	line-height: 4em;
}
#event ol li .num em{
	font-size: 2.3em;
	font-weight: 500;
}
#event ol li ul{
	padding:1.5em 0 1.5em 30%;
}
#event ol li ul li{
	width: 100%;
	text-align: left;
	border-radius: 0;
	background: none;
	font-weight: 500;
	color:#483C34;
	line-height: 1.4;
	margin:0 0 0.5em;
	min-height: auto;
}
#event ol li ul li::before{
	content: "●";
	font-size: 0.6em;
	color:#FC7D6A;
	position: absolute;
	left:-1.5em;
	top:0.4em;
}
#event ol li .pic{
	position: absolute;
	width: 100%;
	bottom:1em;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
}
#event .ftxt{
	background: url(../img/aday/tanjyoubi.png) no-repeat center center;
	background-size: contain;
	padding:2em 0;
	letter-spacing: 0.1em;
	font-weight: 500;
}
#event .ftxt span{
	font-weight: 500;
	letter-spacing: 0.1em;
}
#facility{
    background: #E1F4EC;
}
#facility h3, #policy h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0.5em 0 1.5em;
}
#facility p{
	text-align: center;
	padding-bottom:2em;
}
#facility .flex{
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
#facility .flex .pic{
	width: 50%;
	margin:-0.5em 3em 0 0;
}
#facility .flex .txt p{
    text-align: left;
    text-indent: -1em;
    padding-left: 1em;
    padding-bottom: 1em;
}
#facility .flex .txt p span{
    color: #dd960f;
    font-weight: 700;
    display: block;
}
#bus{
	background: #E1F4EC;
}
#bus .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
#bus .flex .pic{
	width: 47%;
}
#bus .flex .txt{
	width: 47%;
	text-align: left;
}
#bus .flex .txt h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
#bus .flex .txt p{
	padding-bottom:2em;
}
table{
	width: 85%;
	max-width: 1000px;
	margin:0 auto;
	border: solid 2px #E4E4E4;
}
table th{
	background: #F4F4F4;
	border: solid 2px #E4E4E4;
	font-weight: 500;
	padding:0.5em 0.8em;
	text-align: left;
	vertical-align: middle;
}
table td{
	background: #fff;
	border: solid 2px #E4E4E4;
	padding:0.8em 1.2em;
	text-align: left;
}
.alignC{text-align: center !important;}
#foods{
	background: #E1F4EC;
}
#foods .imgs{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	padding-bottom:1.5em;
}
#foods .imgs li{
	width: 23.7%;
}
#foods table{
	margin-bottom:2em;
}
#foods .box, #map .box{
	background: #FFFDE2;
	max-width: 1000px;
	margin:0 auto;
	padding:3em 3.7em;
	text-align: left;
}
#foods .box h3, #map .box h3{
	color:#DEA532;
	font-weight: 700;
	font-size: 1.4em;
	text-align: center;
	padding-bottom:1.5em;
}
#foods .box ul li, #map .box ul li{
	position: relative;
	margin-bottom:1em;
	padding-left: 1.6em;
}
#foods .box ul li::before, #map .box ul li::before{
	content: "●";
	color:#BE612B;
	position: absolute;
	left:0;
}

/*
    入園案内
            　*/
#process .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#process .flex dl{
	width: 31.5%;
	margin-bottom:1em;
	background: #FCE0DB;
	border-radius: 20px;
	border: solid 2px #FE7D6A;
	text-align: left;
	padding-bottom:2em;
}
#process .flex dl.age35{
	background: #EFF4C5;
	border: solid 2px #BEC56E;
}
#process .flex dl.age1go{
	background: #DBF2FC;
	border: solid 2px #7DA3F7;
}
#process .flex dl dt{
	text-align: center;
	border-radius: 18px 18px 0 0;
	background: #FE7D6A;
	color:#fff;
	font-size: 1.3em;
	font-weight: 500;
	padding:0.4em;
	margin-bottom:1em;
}
#process .flex dl.age35 dt{
	background: #A6B234;
}
#process .flex dl.age1go dt{
	background: #7DA3F7;
}
#process .flex dl dd{
	margin:0 2em 0.9em;
	margin-bottom:0.5em;
	 background-image : linear-gradient(to right, #FC7D6A 5px, transparent 5px);
 background-size: 10px 2px;
 background-position: left bottom;
 background-repeat: repeat-x; 
	padding-bottom:0.9em;
}
#process .flex dl dd .flex{
	display: flex;
}
#process .flex dl dd .flex div{
	width: 50%;
	text-align: center;
	color:#2557C6;
	font-weight: 500;
}

#process .flex dl dd .ari{
	border-left: solid 2px #7DA3F7;
}
#process .flex dl dd em{
	font-weight: 500;
	color:#2557C6;
}
#process .flex dl dd .left{
	float: left;
	width: 50%;
}
#process .flex dl dd .right{
	float: right;
	width: 50%;
	border-left: solid 2px #7DA3F7;
	padding-left: 1em;
}
#process .flex dl dd .time{
	font-weight: 700;
	font-size: 1.2em;
	color:#FC7D6A;
}
#process .flex dl.age35 dd{
	 background-image : linear-gradient(to right, #A6B234 5px, transparent 5px);
}
#process .flex dl.age35 dd .time{
	color:#A6B234;
}
#process .flex dl.age1go dd{
	 background-image : linear-gradient(to right, #7DA3F7 5px, transparent 5px);
}
#process .flex dl.age1go dd .time{
	color:#7DA3F7;
}
#process .flex dl dd p{
	font-weight: 500;
	color:#483C34;
}
#process .flex dl dd .img{
	width: 50%;
	margin-left: auto;
	padding:0.4em 0;
}
#preparation{
    background: #E1F4EC;
}
#preparation .txt1 table tr th:first-of-type{
    width: 30%;
}
#preparation .txt1 table tr .alignC {
    width: 15%;
}
.txt_indent3{
    text-indent: 3em;
}

#overtime{
    background: #E1F4EC;
}
#overtime .flex, #childcare .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
#overtime .flex .pic, #childcare .flex .pic{
	width: 47%;
}
#overtime .flex .txt, #childcare .flex .txt{
	width: 47%;
	text-align: left;
}
#overtime .flex .txt h3, #childcare .flex .txt h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
#overtime .flex .txt p, #childcare .flex .txt p{
	padding-bottom:2em;
    text-indent: -6.2em;
    padding-left: 6.2em;
}
#overtime .flex .txt p.overtime_normal{
    text-indent: -7.3em;
    padding-left: 7.3em;
}
#overtime .flex .txt ul li, #childcare .flex .txt ul li{
    text-indent: -1em;
    padding-left: 1em;
}
#costs .txt1 h2{
    padding-bottom: 0.4em;
}
#costs .txt1 p{
    text-align: left;
    display: inline-block;
    width: 85%;
    padding-bottom: 1.0em;
}
#costs .txt1 table{
    margin-bottom: 3.0em;
}
/*
　　アクセスページ
　　　　　　　　　　*/
#map .gmap {
    position: relative;
    width: 85%;
    /* アスペクト比16:9 (4:3にしたい場合は75%) */
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin: 0 auto 2em;
  }

#map .gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
#map .box ul li.footnote::before{
    content: "※";
    color: #000;
}
#map .txt{
    max-width: 880px;
    margin: auto auto 2em;
}
#map .txt h3{
    width: 345px;
    margin: 0 auto 1em;
}
#map .txt .adress{
    margin-bottom: 1.5em;
}
#map .txt .flex{
    display: flex;
    justify-content: center;
}
#map .txt .flex .tel{
    padding-right: 2em;
}
/*
　　よくある質問ページ
　　　　　　　　　　*/
.faq_box{
    width: 90%;
    margin: auto;
}
.faq_box li{
    margin-bottom: 2em;
}
.faq_box li p{
    text-align: left;
}
.faq_box li .q{
    font-weight: 700;
    font-size: 1.4em;
    border-bottom: dotted 4px #DEA532;
    margin-bottom: 0.5em;
    text-indent: -1.3em;
    padding-left: 1.3em;
    padding-bottom: 0.4em;
}
.faq_box li .a{
    padding-left: 2em;
}
div p a.pdf img{
    width: 2%;
}
/*
　　書類ダウンロード
　　　　　　　　　　*/
#application .txt1 p, #certificate .txt1 p{
    text-align: left;
    display: inline-block;
    width: 85%;
    padding-bottom: 1.0em;
}
#application .txt1 p.target, #certificate .txt1 p.target{
    font-weight: 700;
}
#application .txt1 table, #certificate .txt1 table{
    margin-bottom: 3.0em;
}
#application .txt1 table tr td, #certificate .txt1 table tr td{
    vertical-align: middle;
}
#application .txt1 ul, #certificate .txt1 ul{
    width: 85%;
    display: inline-block;
}
#application .txt1 ul li, #certificate .txt1 ul li {
    text-indent: -1em;
    padding-left: 1em;
    text-align: left;
}
/*
　　当園について
　　　　　　　　　　*/
#philosophy, #nintei{
    background: #E1F4EC;
}
#message .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
#message .flex .pic{
	width: 47%;
}
#message .flex .txt{
	width: 47%;
	text-align: left;
}
#message .flex .txt h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
#message .flex .txt p em{
	float: left;
	margin: 0 15px 15px 0;
	width: 30%;
}
#message .flex .txt p.message_left{
	text-align: right;
	margin: 15px 0 15px 0;
}
#philosophy h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0.5em 0 1.5em;
}
#nintei h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0.5em 0 1.5em;
}
#policy .pic_unei img,
#philosophy .pic_hoiku img,
#counseling img{
	width: 80%;
  	max-width: 820px;
 	margin: 1.5em auto 1.5em;
}

/*
　　園の特徴
　　　　　　　　　　*/
#music,#syokuiku{
    background: #E1F4EC;
}
#music .flex, #buddhism .flex, #chiiku .flex , #syokuiku .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
#music .flex .pic, #buddhism .flex .pic, #chiiku .flex .pic, #syokuiku .flex .pic{
	width: 47%;
}
#music .flex .txt, #buddhism .flex .txt, #chiiku .flex .txt, #syokuiku .flex .txt{
	width: 47%;
	text-align: left;
}
#music .flex .txt h3, #buddhism .flex .txt h3, #chiiku .flex .txt h3, #syokuiku .flex .txt h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
#music .flex .txt p, #buddhism .flex .txt p, #chiiku .flex .txt p, #syokuiku .flex .txt p{
	padding-bottom:2em;
}
#music .flex .txt ul li, #buddhism .flex .txt ul li, #chiiku .flex .txt ul li, #syokuiku .flex .txt ul li{
    text-indent: -1em;
    padding-left: 1em;
}
#music .flex .txt p em,#chiiku .flex .txt p em{
	float: right;
	margin: 0 0 0 10px;
	width: 45%;
}
#buddhism .flex .txt p em,#syokuiku .flex .txt p em{
	float: right;
	margin: 0 0 0 10px;
	width: 45%;
}
/*
　　子育て支援
　　　　　　　　　　*/
#counseling, #activity{
    background: #E1F4EC;
}
#open .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
#open .flex .pic{
	width: 47%;
}
#open .flex .txt{
	width: 47%;
	text-align: left;
}
#open h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
#open .flex ul:first-of-type{
    margin-bottom: 1em;
}
#open .flex ul.flex{
    justify-content: flex-start;
}
#open .flex ul.flex li{
    margin-right: 5em;
}
#open .flex .txt ul li{
    text-indent: -1em;
    padding-left: 1em;
}
#open .flex .txt ul.flex li{
    text-indent: 0;
    padding-left: 1em;
}
#activity ol{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	padding-top:5em;
}
#activity ol li{
	width: calc(100% / 5.3);
	background: #fff;
	border-radius: 20px;
	position: relative;
	min-height: 17em;
	margin-bottom:4em;
}
#activity ol li .program{
	width: 100%;
    height: 4.5em;
    background: #FCC75C;
    border-radius: 1.5em 1.5em 0 0;
    text-align: left;
    color: #483C34;
    font-size: 0.85em;
    font-weight: 700;
    position: absolute;
    top: -2.5em;
    line-height: 1.5em;
    padding: 0.8em 1em;
    display: flex;
    justify-content: center;
    align-items: center;
}
#activity ol li ul{
	padding: 2.5em 0 1.5em 10%;
}
#activity ol li ul li{
	width: 100%;
	text-align: left;
	border-radius: 0;
	background: none;
	font-weight: 500;
	color:#483C34;
	line-height: 1.4;
	margin:0 0 0.5em;
	min-height: auto;
}
#activity ol li ul li::before{
	content: "●";
	font-size: 0.6em;
	color:#FC7D6A;
	position: absolute;
	left:-1.5em;
	top:0.4em;
}
/*
　　採用情報
　　　　　　　　　　*/
#ideal, #contact, #interview{
    background: #E1F4EC;
}
#timeschedule .flex {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
}
#timeschedule .flex dl {
    width: 31.5%;
    margin-bottom: 1em;
    background: #FCE0DB;
    border-radius: 20px;
    border: solid 2px #FE7D6A;
    text-align: left;
    padding-top: 2em;
    padding-bottom: 2em;
}
#timeschedule .flex dl dd {
    margin: 0 2em 0.9em;
    margin-bottom: 0.5em;
    background-image: linear-gradient(to right, #FC7D6A 5px, transparent 5px);
    background-size: 10px 2px;
    background-position: left bottom;
    background-repeat: repeat-x;
    padding-bottom: 0.9em;
}
#timeschedule .flex dl dd .time {
    font-weight: 700;
    font-size: 1.2em;
    color: #FC7D6A;
}
#career .pic {
    width: 80%;
    max-width: 940px;
    margin: 0 auto 1.5em;
}
#recruit .flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 80%;
    margin: auto;
}
#recruit .flex .recruit_list{
    width: 48%;
}
#recruit .flex .recruit_list h3{
    font-size: 1.7em;
    font-weight: 700;
    color: #1E9A5D;
    padding: 0 0 0.5em;
    line-height: 1.5;
    letter-spacing: 0.1em;
}
#recruit .flex .recruit_frame{
    border: 1px solid #000;
    border-radius: 20px;
    padding: 1em 1.5em;
}
.recruit_frame p, .recruit_frame ul li{
    text-align: left;
    padding-left: 1em;
}
.recruit_frame p.fw700{
    padding-left: 0;
}
.recruit_frame ul li::before {
    content: "・";
}

#recruit .wrap .btn{
	position: relative;
	z-index: 5;
	margin-top: 20px;
}
#recruit .wrap .btn a{
	display: block;
	color:#DEA532;
	font-size: 1.3em;
	font-weight: 700;
	border:solid 2px #EFC36B;
	background: #fff;
	padding:0.6em;
	text-align: center;
	width: 334px;
	margin:0 auto;
	border-radius: 10em;
}
#recruit .wrap .btn a:hover{
	background: #EFC36B;
	color:#fff;
}


#ideal .box {
    background: #FFFDE2;
    max-width: 1000px;
    margin: 0 auto;
    padding: 2em 3.7em;
    text-align: left;
}
#ideal .box ul {
    display: flex;
    flex-wrap: wrap;
}
#ideal .box ul li {
    position: relative;
    margin-bottom: 1em;
    padding-left: 1.6em;
    width: 50%;
    font-size: 1.4em;
}
#ideal .box ul li::before {
    content: "●";
    color: #BE612B;
    position: absolute;
    left: 0;
}
#ideal .box ul li.jinzaiB {
    position: relative;
    margin: 10px auto;
    padding-left: 1.6em;
    width: 50%;
    font-size: 1.6em;
}

#ideal .box h3 {
    color: #DEA532;
    font-weight: 700;
    font-size: 1.7em;
    text-align: center;
	margin: 10px 0 30px 0;
}
#ideal .box h3.jinzai {
    color: #BE612B;
    font-weight: 600;
    font-size: 1.5em;
    text-align: center;
	margin: 10px 0 30px 0;
}
#interview .flex{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
}
#interview .flex .pic{
	width: 37%;
	margin-bottom: 40px;
}
#interview .flex .txt{
	width: 60%;
	text-align: left;
}
#interview h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 0.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
#interview .flex ul:first-of-type{
    margin-bottom: 0.7em;
}
#interview .flex ul.flex{
    justify-content: flex-start;
}
#interview .flex ul.flex li{
    margin-right: 5em;
}
#interview .flex .txt ul li{
    text-indent: -1em;
    padding-left: 1em;
	color: chocolate;
}
#interview .flex .txt ul.flex li{
    text-indent: 0;
    padding-left: 1em;
}
/*
　　お問い合わせ
　　　　　　　　　　*/
#contactform .formbox{
    width: 60%;
    margin: auto;
    text-align: left;
}

.smf-complete-content p {
    margin-bottom: 2em;
}
@media screen and (max-width: 1024px) {
#pagetitle{
	text-align: center;
}
#pagetitle .inner{
	width:90%;
	padding:2.5em 0 2.5em;
	max-width: 520px;
	margin:0 auto;
	position: relative;
}
#pagetitle .pttl::before{
	content: "";
	display: block;
	width: 3em;
	height: 3em;
	position: absolute;
	background: url(../img/onpu.png) no-repeat left top;
	background-size: contain;
    top: 2.5em;
}
#pagetitle .pttl::after{
	content: "";
	display: block;
	width: 5em;
	height: 7em;
	position: absolute;
	background: url("../img/tori_pink.png") no-repeat left top;
	background-size: contain;
	right:0;
	top:1.2em;
}
#pagetitle.about .pttl::after{
	content: "";
	display: block;
	width: 4em;
	height: 6em;
	position: absolute;
	background: url(../img/kuma.png) no-repeat left top;
	background-size: contain;
	right:0;
	top:0.7em;
}
#pagetitle.features .pttl::after{
	content: "";
	display: block;
	width: 4.8em;
	height: 7.6em;
	position: absolute;
	background: url(../img/neko.png) no-repeat left top;
	background-size: contain;
	right:0.2em;
	top:0.7em;
}
#pagetitle.aday .pttl::after, #pagetitle.recruit .pttl::after{
	content: "";
	display: block;
	width: 3.8em;
	height: 4em;
	position: absolute;
	background: url(../img/tori.png) no-repeat left top;
	background-size: contain;
	right:0.3em;
	top:1em;
}
#pagetitle.surpport .pttl::after{
	content: "";
	display: block;
	width: 4em;
	height: 5.5em;
	position: absolute;
	background: url(../img/usagi.png) no-repeat left top;
	background-size: contain;
	right:0.5em;
	top:0.6em;
}
#pagetitle.guide .pttl::after{
	content: "";
	display: block;
	width:4.5em;
	height: 4.5em;
	position: absolute;
	background: url(../img/nezumi.png) no-repeat left top;
	background-size: contain;
	right:0.6em;
	top:1em;
}
#pagetitle.faq .pttl::after{
	content: "";
	display: block;
	width:4em;
	height: 6em;
	position: absolute;
	background: url(../img/kitune.png) no-repeat left top;
	background-size: contain;
	right:0.3em;
	top:0.5em;
}
#pagetitle .pttl{
	font-size: 1.6em;
}
#pnav{
	background: url(../img/pnav_bg.png) repeat-x left top;
	background-size: auto 100%;
	padding:0.8em 5vw;
}
#pnav ul{
  display: -webkit-flex;
  display: flex;
	justify-content: flex-start;
	overflow-x: scroll;
}
#pnav ul li{
	padding:0 1em 0 0;
}


.sec{
	padding:10vw 0;
}
.ttl1{
	text-align: center;
	font-size: 1.5em;
	font-weight: 700;
}


#flow .flex dl{
	width: 100%;
	margin-bottom:2em;
	border-radius: 1em;
	text-align: left;
	padding-bottom:2.5em;
}

#flow .flex dl dt{
	text-align: center;
	border-radius: 0.6em 0.6em 0 0;
	font-size: 1.3em;
	font-weight: 500;
	padding:0.4em;
	margin-bottom:1em;
    height: auto;
}
#flow .flex dl dd{
	margin:0 2em 0.9em;
	margin-bottom:0.5em;
	 background-image : linear-gradient(to right, #FC7D6A 5px, transparent 5px);
 background-size: 10px 2px;
 background-position: left bottom;
 background-repeat: repeat-x; 
	padding-bottom:0.9em;
}

#flow .flex dl dd .img{
	width: 50%;
	margin-left: auto;
	padding:0.4em 0;
}

#flow .wrap .btn {
    width: 100%;
}
#event ol{
  display: -webkit-flex;
  display: flex;
 	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: space-between;
	padding-top:2em;
}
#event ol li{
    width: 48%;
    border-radius: 1em;
    position: relative;
    min-height: 21em;
    margin-bottom:4em;
}
#event .ftxt{
    background: url(../img/aday/tanjyoubi.png) no-repeat center center;
    background-size: auto 5.5em;
    padding:2em 0;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-top:-2em;
}

#facility h3{
	font-size: 1.5em;
	line-height: 1.5;
	font-weight: 700;
	padding:0.5em 0 1.5em;
}
#facility p{
    text-align: left;
}
#facility .flex{
    display: block;
}
#facility .flex .pic{
	width: 100%;
	margin: auto auto 1.5em;
}
#bus .flex .pic{
	width: 100%;
	padding-bottom:1.5em;
}
#bus .flex .txt{
	width: 100%;
	text-align: left;
}
#bus .flex .txt h3{
	font-size: 1.5em;
	font-weight: 700;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
}

table{
	width: 100%;
	max-width: 1000px;
	margin:0 auto;
	border: solid 1px #E4E4E4;
}
table th{
	border: solid 1px #E4E4E4;
	font-size: 1.2em;
	font-weight: 500;
	padding:1em 1em;
	text-align: left;
	vertical-align: middle;
}
table td{
	border: solid 1px #E4E4E4;
	padding:1.2em 1.5em;
	text-align: left;
}
#foods .imgs{
	padding-bottom:1.5em;
}
#foods .imgs li{
	width: 48%;
	margin-bottom:1em;
}
#foods .box, #map .box{
	padding:2em;
	text-align: left;
}
#foods .box h3, #map .box h3{
	color:#DEA532;
	font-weight: 700;
	font-size: 1.4em;
	text-align: center;
	padding-bottom:1.5em;
}
#foods .box ul li, #map .box ul li{
	position: relative;
	margin-bottom:1em;
	padding-left: 1.6em;
}
#foods .box ul li::before, #map .box ul li::before{
	content: "●";
	color:#BE612B;
	position: absolute;
	left:0;
}
#foods table th{
	display: block;
	width: 100%;
}
#foods table td{
	display: block;
	width: 100%;
}
#process .flex{
    display: block;
}
#process .flex dl{
    width: 100%;
}
#preparation .txt1 table tr th, #preparation .txt1 table tr td,
#costs .txt1 table tr th, #costs .txt1 table tr td{
    font-size: 0.8em;
}
span.ichigo, span.nigo, span.sango{
    font-size: 1.0em;
}
#preparation .txt1 table tr th:first-of-type {
    width: 33%;
}
#preparation .txt1 table tr .alignC {
    width: 20%;
}
.txt_indent3{
    text-indent: 0;
}
#overtime .flex, #childcare .flex{
  display: block;
}
#overtime .flex .pic, #childcare .flex .pic{
    width: 100%;
}
#overtime .flex .txt, #childcare .flex .txt{
    width: 100%;
}
#costs .txt1 p{
    width: 100%;
}
#map .gmap {
    padding-bottom: 75%;
  }
#map .txt .flex{
    display: block;
    }
#map .txt .flex .tel{
    padding-right: 0;
}
#map .box ul li.footnote::before{
    content: "※";
    color: #000;
}
.faq_box li .q{
    font-size: 1.0em;
}
.faq_box li .a{
    padding-left: 0;
}
div p a.pdf img{
    width: 5%;
}
#application .txt1 table tr th, #application .txt1 table tr td,
#certificate .txt1 table tr th, #certificate .txt1 table tr td{
    font-size: 0.8em;
}
#application .txt1 table tr td:last-of-type, #certificate .txt1 table tr td:last-of-type{
    padding: 0.1em;
}
#message .flex{
  display: block;
}
#message .flex .pic{
	width: 100%;
}
#message .flex .txt{
	width: 100%;
	text-align: left;
}
#message .flex .txt h3{
	text-align: center;
}
#policy p, #philosophy p{
    text-align: left;
}
#policy .pic_unei img,
#philosophy .pic_hoiku img,
#counseling img{
	width: 100%;
  	max-width: 820px;
 	margin: 1.5em auto 1.5em;
}
#about table th{
	display: block;
	width: 100%;
}
#about table td{
	display: block;
	width: 100%;
}
#music .flex, #buddhism .flex, #chiiku .flex, #syokuiku .flex{
  display: block;
}
#music .flex .pic, #buddhism .flex .pic, #chiiku .flex .pic, #syokuiku .flex .pic{
    width: 100%;
}
#music .flex .txt, #buddhism .flex .txt, #chiiku .flex .txt, #syokuiku .flex .txt{
    width: 100%;
}
#open .flex, #counseling .flex{
    display: block;
}
#open .flex .pic, #counseling .flex .pic{
    width: 100%;
}
#open .flex .txt, #counseling .flex .txt{
	width: 100%;
}
#family{
    background: #E1F4EC;
}
#family .wrap p{
	text-align: left;
}
#family table th{
	display: block;
	width: 100%;
}
#family table td{
	display: block;
	width: 100%;
}
#family .wrap .txt1 table tr th{
    font-size: 100%;
}
#activity p{
    text-align: left;
}
#activity ol{
  display: block;
}
#activity ol li{
	width: 100%;
}
#timeschedule .flex dl {
    width: 100%;
}
#career p {
    text-align: left;
}
#career .pic {
    width: 100%;
}
#recruit .flex{
    display: block;
}
#recruit .flex .recruit_list{
    width: 100%;
}
#recruit .flex .recruit_list:first-of-type{
    padding-bottom: 1.5em;
}
#recruit .flex .recruit_list ul{
    padding-left: 1em;
}
#recruit .flex .recruit_list ul li{
    text-indent: -1em;
    padding-left: 1em;
}
#ideal .box ul {
    display: block;
}
#ideal .box ul li{
    width: 100%;
}
#ideal .box {
    padding: 2.5em 2.0em;
}
#interview .flex{
    flex-wrap: wrap-reverse;
}
#interview .flex .pic, #interview .flex .txt{
	width: 100%;
	margin-bottom: 0px;
}
#interview h3 {
    font-size: 1.7em;
    padding: 0.5em 0 0.5em;
    line-height: 1.5;
    letter-spacing: 0;
}
#interview p.intersp {
	margin-bottom: 20px;
}
#music .flex .txt h3, #buddhism .flex .txt h3, #chiiku .flex .txt h3, #syokuiku .flex .txt h3{
	font-size: 1.7em;
	font-weight: 700;
	color:#1E9A5D;
	padding:0 0 1.5em;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-align: center;
}