/* 初期設定--------------------------------------------------------------------------------------------------------------------------------------------- */

@font-face {
    font-family: 'noto100';
    src:url("../font/noto_sans/NotoSansJP-Thin.woff") format('woff');
}


@font-face {
    font-family: 'noto300';
    src:url("../font/noto_sans/NotoSansJP-Light.woff") format('woff');
}

@font-face {
    font-family: 'noto400';
    src:url("../font/noto_sans/NotoSansJP-Regular.woff") format('woff');
}

@font-face {
    font-family: 'noto500';
    src:url("../font/noto_sans/NotoSansJP-Medium.woff") format('woff');
}

@font-face {
    font-family: 'noto700';
    src:url("../font/noto_sans/NotoSansJP-Bold.woff") format('woff');
}

@font-face {
    font-family: 'noto900';
    src:url("../font/noto_sans/NotoSansJP-Black.woff") format('woff');
}





html {

    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 400;
    font-style: normal;

    font-size: 62.5%;/* ベースのフォントサイズを10pxに設定 */

    box-sizing: border-box;
    
  font-feature-settings: "palt";
}

html { scroll-behavior: smooth;}

*:first-child + html body {

    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 400;
    font-style: normal;

}

body{
    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 400;
    font-style: normal;

	
	padding:0;
	margin:0;
	font-size: 1.6rem;

	line-height:140%;
	text-align:left;

    box-sizing: border-box;
}


body a:focus{
	outline:none;
}






/* clear ---------------------------------------------- */


.clearfix:after {
height: 0;
 visibility: hidden;
 content: ".";
 display: block;
 clear: both;
 overflow:hidden;
}
.clearfix {
 display:inline-block;
overflow:hidden;
}

/* exlude MacIE5 \*/
* html .clearfix {
 height:1%;
}
.clearfix {
 display:block;
}


@media screen and (min-width: 1061px) {
/* PC用のスタイル記述 */
.pc {
	display: block;
}
.phone {
	display: none;
}

.slicknav_menu {
	display:none;
}

img, object, embed {
	max-width: 100%;
	height: auto;
}

img {
	-ms-interpolation-mode: bicubic;
}

}

@media screen and (max-width: 1060px) {
/* タブレット用のスタイル記述 */

.pc {
	display: none !important;
}
.phone{
	display: block !important;
}	


img, object, embed {
	max-width: 100%;
	height: auto;
}

img, object, embed {
	max-width: 100%;
	height: auto;
}

img {
	-ms-interpolation-mode: bicubic;
}

body {
  -webkit-text-size-adjust: 100%; /* iPhone 横向きで文字を拡大しない */
}




}

@media screen and (max-width: 720px) {
/* スマートフォン用のスタイル記述 */
.pc {
	display: none !important;
}
.phone{
	display: block !important;
}	

img, object, embed {
	max-width: 100%;
	height: auto;
}

img {
	-ms-interpolation-mode: bicubic;
}


body {
  -webkit-text-size-adjust: 100%; /* iPhone 横向きで文字を拡大しない */
}	

	/* #menu is the original menu */
	.js #menu {
		display:none;
	}
	
	.js .slicknav_menu {
		display:block;
	}
	
}



/* PCベース設定--------------------------------------------------------------------------------------------------------------------------------------------- */

@media screen and (min-width: 1061px) {
	


  
.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999999;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: fadeOut 1.5s 2.5s forwards;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    visibility: hidden;
  }
}

.loading__logo {
  opacity: 0;
  animation: logo_fade 2s 0.5s forwards;
  width: 288px;
}

@keyframes logo_fade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  60% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
  }
}
    
    


body{
	padding:0;
	margin:0;
	font-size: 1.7rem;

	line-height:160%;
	text-align:left;

 
}	 

/* container ---------------------------------------------- */






.container01_bg{
	width:100%;
	height:auto;
	padding:0 30px;
	box-sizing:border-box;
}

.container02_bg{
	width:100%;
	height:auto;
	padding:0 0px;
	box-sizing:border-box;
}

.container01{
	max-width:1200px;
	width:100%;
	height:auto;
	margin:0 auto;
	padding:60px 0;

}


.container02{
	width:100%;
	height:auto;
	margin:0 auto;
	padding:60px 0;

}

.container03{
	max-width:1800px;
	width:100%;
	height:auto;
	margin:0 auto;
	padding:60px 0;

}







/* header ---------------------------------------------- */






#header {

  position: fixed;
  top: 0;
  transition: .3s cubic-bezier(.4, 0, .2, 1);
  width: 100%;
  z-index: 550;
  padding: 25px 25px 0px;

 box-sizing: border-box;
}

.head-animation {
  transform: translateY(-100%);
}


.header_bg{

	width:100%;
    max-width: 1600px;
	height:80px;
	margin:0px auto;
    box-sizing: border-box;
	position:relative;
    background: rgba(255,255,255,0.9);

    border-radius: 40px;
}

header{
	width:100%;
	height:80px;
	margin:0 auto;

	box-sizing:border-box;
}





button,
input {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}



.searchForm_bg{
  position: absolute;
  top: 15px;
  right: 50px;
}

.searchForm_bg01{
display: none;
}

.searchForm {
  width: 210px;
  height: 30px;  

  position: relative;
  display: flex;
  justify-content: center;
}

  .searchForm {
    height: 30px;
  }

.searchForm input[type=search] {
  height: 30px;  
  width: 95%;
  padding: 0 10px;
  border: 1px solid #666666;  
  box-sizing: border-box;
  border-right: none;


  font-size: 1.6rem;
  line-height: 100%;

  color:#5C5C5C; /* セレクトボックスの文字色 */



}



.searchForm button[type=submit] {

  border-left: none;
  padding: 0;
  width: 45px;
  height: 30px;
  text-align: center;
  
  background: #666666;
  
 
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: center; 
   align-items: center; 
   -webkit-justify-content: center; 
   justify-content: center;   
}




  .searchForm button[type=submit] img {
    width: 20px;
  }

  .searchForm input::-webkit-input-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */

}
  .searchForm input:-moz-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */
}
  .searchForm input::-moz-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */
}
  .searchForm input:-ms-input-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */

}







.header-serch {
  color: #fff;
  opacity: 0.9;
  background-color: #FE7F2D;
  width: 55px;
  height: 60px;
  font-size: 1.2rem;
  font-family: 'Lobster', sans-serif;
  text-align: center;
}
.header-serch i {
  display: block;
  font-size: 2.4rem;
}
.serch-wrapper {
  display: none;
  position: relative;
  z-index: 2;
}
.serch-bg {
  background-color: rgba(43, 46, 56, 0.9);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2;
}
.header-serch-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 700px;
  width: calc(650 / 768 * 100%);
  height: 200px;
  z-index: 3;
  color: #fff;
  font-size: 1.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.header-serch-content form {
  width: 100%;
}
.header-serch-input {
  background-color: #fff;
  width: 100%;
  height: 65px;
  margin: 0 auto;
  border: 3px solid #cacaca;
  padding: 10px;
  font-size: 1.8rem;
  color: #333;
}
.header-serch-btn {
  position: absolute;
  top: 63px;
  right: 15px;
  color: #333;
  font-size: 2.2rem;
}
.close-btn {
  font-size: 2.2rem;
  font-family: 'Lobster', sans-serif;
  text-transform: uppercase;
  display: block;
  width: fit-content;
  margin: 35px auto 0;
  cursor: pointer;
}
.close-btn i {
  font-size: 3rem;
  margin-right: 10px;
  vertical-align: bottom;
}


/*nav{
	width:510px;
	position:absolute;
	top:55px;
	right:0;
}

nav ul{
	margin:0;
	padding:0;

}

nav ul li{
	float:left;
	color:#000;
	font-size: 1.6rem;

	font-weight:bold;
	margin-right:20px;
	line-height:120%;
}

nav ul li:last-child{
	margin-right:0;
}

nav ul li a{
	color:#FFF !important;
	text-decoration:none;

}

nav ul li a:hover{
	color:#FFF !important;
	text-decoration:underline;
}

.nav_h{
	color:#FFF !important;
	text-decoration:underline !important;
}*/


#section1,
#section2,
#section3,
#section4,
#section5,
#section6,
#section7,
#section8,
#section9,
#section10,
#section11,
#section12,
#section13,
#section14
{
    margin-top:-160px;
    padding-top:160px;
}


#kyoten{
    margin-top:-40px;
    padding-top:40px;
}


/* footer ---------------------------------------------- */


footer{

	padding:27px 30px;
	box-sizing:border-box;

}

.footer_in{

	width:100%;
	height:auto;
	margin:0 auto;
	
	padding:0px 0 0px 0;
	box-sizing:border-box;
}


address{
	font-size: 13px;
	line-height:160%;
	color:#000;
    text-align: center;



    margin-bottom: 7px;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}

.ad_ttl{
	font-size: 20px;
	line-height:120%;
	margin-bottom:12px;	
    text-align: center;


}

footer a{
	color:#000000;
	text-decoration:none;
}

footer a:hover{
	color:#000000;
	text-decoration:none;
}


.f_cpy{
	font-size: 13px;
	box-sizing:border-box;
	line-height:120%;
    text-align: center;
    color: #999999;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.link_a{
    padding-top: 130px;
    margin-top:-130px;
}



}



/* タブレットベース設定--------------------------------------------------------------------------------------------------------------------------------------------- */


@media screen and (max-width: 1060px) {


.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999999;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: fadeOut 1.5s 2.5s forwards;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    visibility: hidden;
  }
}

.loading__logo {
  opacity: 0;
  animation: logo_fade 2s 0.5s forwards;
  width: 220px;
}

@keyframes logo_fade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  60% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
  }
}


body{
	padding:0;
	margin:0;
	font-size: 1.6rem;

	line-height:160%;
	text-align:left;

}	

/* container ---------------------------------------------- */



.container01_bg_top{
    margin-top: 130px;
}




.container01_bg_top01{
    margin-top: 150px;
}



.tp_src_bg{
	width: 100%;
	background-color: #fcf2f3;
	 margin:0px auto 0px auto;

     padding:0 30px;
     box-sizing:border-box;
}


.tp_event_bg{
	background-color: #f9f6ec;
	 margin:0px auto 0px auto;

     padding:0 30px;
     box-sizing:border-box;
}





.container01_bg{
	width:100%;
	height:auto;
	padding:0 30px;
	box-sizing:border-box;
}

.container02_bg{
	width:100%;
	height:auto;
	padding:0 0px;
	box-sizing:border-box;
}

.container01{
	max-width:1200px;
	width:100%;
	height:auto;
	margin:0 auto;
	padding:50px 0;

}


.container02{
	width:100%;
	height:auto;
	margin:0 auto;
	padding:50px 0;

}

.container03{
	max-width:1800px;
	width:100%;
	height:auto;
	margin:0 auto;
	padding:50px 0;

}



/* header ---------------------------------------------- */




#header {

  position: fixed;
  top: 0;
  transition: .3s cubic-bezier(.4, 0, .2, 1);
  width: 100%;
  z-index: 550;
  padding: 20px 20px 0px;

 box-sizing: border-box;
}

.head-animation {
  transform: translateY(-100%);
}


.header_bg{

	width:100%;
    max-width: 1600px;
	height:70px;
	margin:0px auto;
    box-sizing: border-box;
	position:relative;
    background: rgba(255,255,255,0.9);

    border-radius: 35px;
}

header{
	width:100%;
	height:70px;
	margin:0 auto;

	box-sizing:border-box;
}





.header_contact{
    display: none;
}



.header_tel{
    display: none;
}




/* 選択したボタンのスタイル */
.bl_sizeBtn.is_active {
    border: 1px solid  #3E3E3E;
    background:#FFFFFF;
    color:#3E3E3E;   
}

.h_txt{
    
    font-size:1.5rem;
    line-height: 100%;

    position: absolute;
    top: 10px;
    right: 380px;
}



button,
input {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

.searchForm_bg{
display: none;
  position: absolute;
  top: 15px;
  right: 370px;
}


.searchForm_bg01{
  width: 280px;
  margin: 15px auto 0 auto;
  display: block;
  
  clear: both;


animation-name:gnaviAnime;
animation-duration:1s;
animation-delay:.2s;/*0.2 秒遅らせて出現*/
animation-fill-mode:forwards;
opacity:0;  
}

.searchForm {
  width: 280px;
  height: 30px;  




  position: relative;
  display: flex;
  justify-content: center;
}

  .searchForm {
    height: 30px;
  }

.searchForm input[type=search] {
  height: 30px;  
  width: 95%;
  padding: 0 10px;
  border: 1px solid #666666;  
  box-sizing: border-box;
  border-right: none;


  font-size: 1.6rem;
  line-height: 100%;

  color:#5C5C5C; /* セレクトボックスの文字色 */
    


}



.searchForm button[type=submit] {

  border-left: none;
  padding: 0;
  width: 45px;
  height: 30px;
  text-align: center;
  
  background: #666666;
  
 
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: center; 
   align-items: center; 
   -webkit-justify-content: center; 
   justify-content: center;   
}




  .searchForm button[type=submit] img {
    width: 20px;
  }

  .searchForm input::-webkit-input-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */

}
  .searchForm input:-moz-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */
}
  .searchForm input::-moz-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */
}
  .searchForm input:-ms-input-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */

}







.header-serch {
display: none;
visibility: hidden;

  color: #fff;
  opacity: 0.9;
  background-color: #FE7F2D;
  width: 55px;
  height: 60px;
  font-size: 1.2rem;
  font-family: 'Lobster', sans-serif;
  text-align: center;
}
.header-serch i {
  display: block;
  font-size: 2.4rem;
}
.serch-wrapper {
  display: none;
  position: relative;
  z-index: 2;
}
.serch-bg {
  background-color: rgba(43, 46, 56, 0.9);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2;
}
.header-serch-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 700px;
  width: calc(650 / 768 * 100%);
  height: 200px;
  z-index: 3;
  color: #fff;
  font-size: 1.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.header-serch-content form {
  width: 100%;
}
.header-serch-input {
  background-color: #fff;
  width: 100%;
  height: 65px;
  margin: 0 auto;
  border: 3px solid #cacaca;
  padding: 10px;
  font-size: 1.8rem;
  color: #333;
}
.header-serch-btn {
  position: absolute;
  top: 63px;
  right: 15px;
  color: #333;
  font-size: 2.2rem;
}
.close-btn {
  font-size: 2.2rem;
  font-family: 'Lobster', sans-serif;
  text-transform: uppercase;
  display: block;
  width: fit-content;
  margin: 35px auto 0;
  cursor: pointer;
}
.close-btn i {
  font-size: 3rem;
  margin-right: 10px;
  vertical-align: bottom;
}



#section1,
#section2,
#section3,
#section4,
#section5,
#section6,
#section7,
#section8,
#section9,
#section10,
#section11,
#section12,
#section13,
#section14
{
    margin-top:-80px;
    padding-top:80px;
}


#kyoten{
    margin-top:-40px;
    padding-top:40px;
}



/* footer ---------------------------------------------- */

footer{
	padding:20px 30px;
	box-sizing:border-box;

}

.footer_in{

	width:100%;
	height:auto;
	margin:0 auto;
	
	padding:0px 0 0px 0;
	box-sizing:border-box;
}


address{
	font-size: 13px;
	line-height:160%;
	color:#000;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;


    margin-bottom: 7px;


}

.ad_ttl{
	font-size: 18px;
	line-height:120%;
	margin-bottom:12px;	
    text-align: center;

}

footer a{
	color:#000000;
	text-decoration:none;
}

footer a:hover{
	color:#000000;
	text-decoration:none;
}


.f_cpy{
	font-size: 13px;
	box-sizing:border-box;
	line-height:120%;
    text-align: center;
    color: #999999;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.link_a{
    padding-top: 100px;
    margin-top:-100px;
}



}



/* スマホベース設定--------------------------------------------------------------------------------------------------------------------------------------------- */


@media screen and (max-width: 720px) {



   
.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999999;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: fadeOut 1.5s 2.5s forwards;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    visibility: hidden;
  }
}

.loading__logo {
  opacity: 0;
  animation: logo_fade 2s 0.5s forwards;
  width: 180px;
}

@keyframes logo_fade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  60% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
  }
}



body{
	padding:0;
	margin:0;
	font-size: 1.4rem;

	line-height:140%;
	text-align:left;

}	



/* container ---------------------------------------------- */


.container01_bg_top{
    margin-top: 75px;
}


.container01_bg_top01{
    margin-top: 80px;
}



.tp_src_bg{
	width: 100%;
	background-color: #fcf2f3;
	 margin:0px auto 0px auto;

     padding:0 20px;
     box-sizing:border-box;
}


.tp_event_bg{
	background-color: #f9f6ec;
	 margin:0px auto 0px auto;

     padding:0 20px;
     box-sizing:border-box;
}





.container01_bg{
	width:100%;
	height:auto;
	padding:0 20px;
	box-sizing:border-box;
}

.container02_bg{
	width:100%;
	height:auto;
	padding:0 0px;
	box-sizing:border-box;
}

.container01{
	max-width:1200px;
	width:100%;
	height:auto;
	margin:0 auto;
	padding:40px 0;

}


.container02{
	width:100%;
	height:auto;
	margin:0 auto;
	padding:40px 0;

}


.container03{
	max-width:1800px;
	width:100%;
	height:auto;
	margin:0 auto;
	padding:40px 0;

}




/* header ---------------------------------------------- */


#header {

  position: fixed;
  top: 0;
  transition: .3s cubic-bezier(.4, 0, .2, 1);
  width: 100%;
  z-index: 550;
  padding: 15px 15px 0px;

 box-sizing: border-box;
}

.head-animation {
  transform: translateY(-100%);
}


.header_bg{

	width:100%;
    max-width: 1600px;
	height:60px;
	margin:0px auto;
    box-sizing: border-box;
	position:relative;
    background: rgba(255,255,255,0.9);

    border-radius: 30px;
}

header{
	width:100%;
	height:60px;
	margin:0 auto;

	box-sizing:border-box;
}






.header_contact{
    display: none;
}



.header_tel{
    display: none;
}





button,
input {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

.searchForm_bg{
display: none;
  position: absolute;
  top: 15px;
  right: 370px;
}

.searchForm_bg01{
  width: 220px;
  margin: 165px auto 0 auto !important;
  display: block;
  
  clear: both;


animation-name:gnaviAnime;
animation-duration:1s;
animation-delay:.2s;/*0.2 秒遅らせて出現*/
animation-fill-mode:forwards;
opacity:0;
}

.searchForm {
  width: 220px;
  height: 30px;  

  position: relative;
  display: flex;
  justify-content: center;
}

  .searchForm {
    height: 30px;
  }

.searchForm input[type=search] {
  height: 30px;  
  width: 95%;
  padding: 0 10px;
  border: 1px solid #666666;  
  box-sizing: border-box;
  border-right: none;


  font-size: 1.6rem;
  line-height: 100%;

  color:#5C5C5C; /* セレクトボックスの文字色 */


}



.searchForm button[type=submit] {

  border-left: none;
  padding: 0;
  width: 45px;
  height: 30px;
  text-align: center;
  
  background: #666666;
  
 
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: center; 
   align-items: center; 
   -webkit-justify-content: center; 
   justify-content: center;   
}




  .searchForm button[type=submit] img {
    width: 20px;
  }

  .searchForm input::-webkit-input-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */

}
  .searchForm input:-moz-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */
}
  .searchForm input::-moz-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */
}
  .searchForm input:-ms-input-placeholder {
  font-size: 1.4rem;
  line-height: 100%;

  color: #666666;  /* セレクトボックスの文字色 */

}








#section1,
#section2,
#section3,
#section4,
#section5,
#section6,
#section7,
#section8,
#section9,
#section10,
#section11,
#section12,
#section13,
#section14
{
    margin-top:-90px;
    padding-top:90px;
}



#kyoten{
    margin-top:-40px;
    padding-top:40px;
}





/* footer ---------------------------------------------- */


footer{
	padding:20px;
	box-sizing:border-box;

}

.footer_in{

	width:100%;
	height:auto;
	margin:0 auto;
	
	padding:0px 0 0px 0;
	box-sizing:border-box;
}


address{
	font-size: 12px;
	line-height:160%;
	color:#000;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;


    margin-bottom: 7px;


}

.ad_ttl{
	font-size: 16px;
	line-height:120%;
	margin-bottom:12px;	
    text-align: center;

}

footer a{
	color:#000000;
	text-decoration:none;
}

footer a:hover{
	color:#000000;
	text-decoration:none;
}


.f_cpy{
	font-size: 12px;
	box-sizing:border-box;
	line-height:120%;
    text-align: center;
    color: #999999;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.link_a{
    padding-top: 70px;
    margin-top:-70px;
}


}




/* PC用スタイルスタイル--------------------------------------------------------------------------------------------------------------------------------------------- */


@media screen and (min-width: 1061px) {

/* h1 h2 h3 h4 h5 ---------------------------------------------- */


h1.h1_01{
    width: 320px;
    position: absolute;
    top: 20px;
    left:40px;

}


h2.h2_01{
    position: relative;
    text-align: center;
    margin: 0px auto 60px;
}

h2.h2_01.btmh{
    margin: 0px auto 30px;
}


h2.h2_01 p:first-child{
    font-size: 40px;
    line-height: 140%;
    color: #6f5d27;
    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.h2_01 p:last-child{
    font-size: 20px;
    line-height: 140%;
    color: #e4a52b;
    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.h2_01 p:last-child span.red{
    color: #ea5d67;
}

h2.h2_01 p:last-child span.green{
    color: #4b9a4d;
}

h2.h2_01 p:last-child span.blue{
    color: #3cb8bd;
}




h3.h3_01{
    position: relative;
    color: #6f5d27;
    font-size: 30px;
    line-height: 160%;

    text-align: center;
    margin: 0px auto 60px;

    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}



h3.h3_01::after {
    content: "";
    position: absolute;
    bottom: -9px;
    left: 50%;
    width: 9px;
    height: 9px;
    border-radius: 50%;

    background-color: #f2759e;

    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

h3.h3_01::before {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 50%;
    width: 9px;
    height: 9px;
    border-radius: 50%;

    background-color: #e09d34;

    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}




h4.h4_01{
    padding:5px 10px 7px;
    border-left: 16px solid #2c4cb2;

    margin-bottom: 20px;
}

h4.h4_01 p:first-child{
    font-size: 25px;
    font-weight: 500;
    line-height: 160%;
    color: #2c4cb2;
}

h4.h4_01 p:last-child{
    font-size: 20px;
    font-weight: 500;
    line-height: 180%;

}



/* スライド ---------------------------------------------- */







/*=============
slick
=============*/

.full{

	width:100%;
	height: calc(100dvh - 120px);
    


    

}

     
.full .slide {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;

  height: calc(100dvh - 120px);
  margin: 0;
  text-decoration: none;
}


.full .slick-dots {
	bottom: 4%;
	z-index: +1;
}



.top_slide{
    position: relative;
	width:100%;
	height: 100dvh;

    background:url("../img/top/slide.jpg") center  no-repeat ; 
    -moz-background-size: cover;
   -o-background-size: cover;
    background-size: cover;

}


.slide_txt_out{

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center; 

    width: 100%;
    height: 100%;
    box-sizing: border-box;

    font-size: 55px;
    line-height: 60px;
    color: #fff;
    font-family: "wanpaku-rera", sans-serif;
    font-weight: 600;
    font-style: normal;

    text-shadow:2px 2px 0 #86684f, -2px -2px 0 #86684f,
    -2px 2px 0 #86684f, 2px -2px 0 #86684f,
    0px 2px 0 #86684f,  0 -2px 0 #86684f,
    -2px 0 0 #86684f, 2px 0 0 #86684f;
    
    z-index: 10;
}



/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:0px;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:0px;
	bottom:50px;
    /*テキストの形状*/
	color: #6c5050;
	font-size: 18px;
	letter-spacing: 0.08em;

    transform: translateX(-50%);

    font-family: "fot-rodin-pron", sans-serif;
    font-weight: 100;
    font-style: normal;

}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#6c5050;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:5px;
	left:0;
    /*線の形状*/
	width:2px;
	height: 45px;
	background:#6c5050;
}




/* 各ページイメージ ---------------------------------------------- */


.about_top_img{
	width: 100%;
	height:450px !important;
	background:url("../img/about/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}


.philosophy_top_img{
	width: 100%;
	height:450px !important;
	background:url("../img/philosophy/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.trial_top_img{
	width: 100%;
	height:450px !important;
	background:url("../img/trial/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}


.event_top_img{
	width: 100%;
	height:450px !important;
	background:url("../img/event/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.scenery_top_img{
	width: 100%;
	height:450px !important;
	background:url("../img/scenery/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.contact_top_img{
	width: 100%;
	height:450px !important;
	background:url("../img/contact/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}








/* ページ共通背景 ---------------------------------------------- */




.cmn_button{
    position: relative;
	width:250px;
	height:auto;
	text-align: center;
	text-decoration: none;
    margin: 0 auto;
}

.cmn_button a{
    display: block;
	width:250px;
    height: 60px;
    font-size: 18px;
    line-height: 100%;
    color:#FFFFFF;

	border: 2px solid #e09d34;
    background: #e09d34;
    border-radius: 30px;
    padding-bottom: 3px;

    box-sizing: border-box;

   -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: center; 
   align-items: center; 
   -webkit-justify-content: center; 
   justify-content: center;

   font-family: "a-otf-jun-pro", sans-serif;
   font-weight: 300;
   font-style: normal;
}


.cmn_button a:hover {
    background:#FFFFFF;

	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button a::after{
    position: absolute;

    top: 50%;
    right: 20px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 13px;
    height: 15px;
  
    background-color: #fff;

    clip-path: polygon(0 0, 100% 50%, 0 100%)
}

.cmn_button a:hover::after{
    background-color: #e09d34;
}



.cmn_button.button01 a{
	border: 2px solid #e09d34;
    background: #e09d34;
}

.cmn_button.button01 a:hover {
    background:#FFFFFF;
	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button.button01 a:hover::after{
    background-color: #e09d34;
}


.cmn_button.button02 a{
	border: 2px solid #da9695;
    background: #da9695;
}

.cmn_button.button02 a:hover {
    background:#FFFFFF;
	border: 2px solid #da9695;
    color:#da9695;
}

.cmn_button.button02 a:hover::after{
    background-color: #da9695;
}


.cmn_button.button03 a{
	border: 2px solid #8bbc5b;
    background: #8bbc5b;
}

.cmn_button.button03 a:hover {
    background:#FFFFFF;
	border: 2px solid #8bbc5b;
    color:#8bbc5b;
}

.cmn_button.button03 a:hover::after{
    background-color: #8bbc5b;
}


.cmn_button.button04 a{
	border: 2px solid #3cb8bd;
    background: #3cb8bd;
}

.cmn_button.button04 a:hover {
    background:#FFFFFF;
	border: 2px solid #3cb8bd;
    color:#3cb8bd;
}

.cmn_button.button04 a:hover::after{
    background-color: #3cb8bd;
}

.cmn_button.button05 a{
	border: 2px solid #e09d34;
    background: #e09d34;
}

.cmn_button.button05 a:hover {
    background:#FFFFFF;
	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button.button05 a:hover::after{
    background-color: #e09d34;
}














/* サブページ背景---------------------------------------------- */

.sub_page_bg{
	width: 100%;
	background:url("../img/common/sub_bg.jpg") top  no-repeat ; 
	 -moz-background-size: contain;
	-o-background-size: contain;
	 background-size: contain;
	 margin:0px auto 0px auto;
}







/* トップ背景---------------------------------------------- */
.tp_msg_bg{
	width: 100%;
	background:url("../img/top/top_msg_bg.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:0 40px;
     box-sizing:border-box;
}


.top_cont1{
	width: 100%;
	background:url("../img/top/bg01.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:50px 0px;
     box-sizing:border-box;
}

.top_cont2{
	width: 100%;
	background:url("../img/top/bg02.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:50px 0px;
     box-sizing:border-box;
}

.top_cont3{
	width: 100%;
	background:url("../img/top/bg03.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:50px 0px;
     box-sizing:border-box;
}

.top_cont4{
	width: 100%;
	background:url("../img/top/bg04.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:50px 0px;
     box-sizing:border-box;
}




.top_cont1_inner,
.top_cont2_inner,
.top_cont3_inner,
.top_cont4_inner{
    width: 100%;
    height: auto;
    overflow: auto;
}


.top_cont1_img{
    float: right;
    width: 50%;
}


.top_cont1_img img{
    width: 100%;
    height: 500px;

    object-fit: cover;
    object-position: left;/* 100% 100%と同じ */
}

.top_cont1_txt{
    float: right;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}




.top_cont2_img{
    float: left;
    width: 50%;
}


.top_cont2_img img{
    width: 100%;
    height: 500px;

    object-fit: cover;
    object-position: right;/* 100% 100%と同じ */
}

.top_cont2_txt{
    float: left;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}




.top_cont3_img{
    float: right;
    width: 50%;
}


.top_cont3_img img{
    width: 100%;
    height: 500px;

    object-fit: cover;
    object-position: left;/* 100% 100%と同じ */
}

.top_cont3_txt{
    float: right;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}




.top_cont4_img{
    float: left;
    width: 50%;
}


.top_cont4_img img{
    width: 100%;
    height: 500px;

    object-fit: cover;
    object-position: right;/* 100% 100%と同じ */
}

.top_cont4_txt{
    float: left;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}










.top_cont_dl{
    width: 100%;
}

.top_cont_dl dt{
    text-align: center;
    font-size: 25px;
    line-height: 160%;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    margin-bottom: 30px;
}

.top_cont_dl dd{
    font-size: 18px;
    line-height: 160%;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 40px;
}



/* トップメッセージ---------------------------------------------- */


.tp_msg_01 {
    width: 100%;
}

.tp_msg_01 dl{
    margin-bottom: 40px;
}

.tp_msg_01 dt{
    position: relative;
    text-align: center;

    color: #6f5d27;
    font-size: 30px;
    line-height: 126%;
    padding-bottom: 30px;
    margin-bottom: 30px;

    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;

    box-sizing: border-box;
}


.tp_msg_01 dt::after {
    content: "";
    position: absolute;
    content: '';
    bottom: 0;
    left: 50%;
    width: 278px;
    height: 9px;
    box-sizing: border-box;
	background:url("../img/top/top_msg.png") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;

     transform: translateX(-50%);
}

.tp_msg_01 dd{
    text-align: center;

    font-size: 18px;
    line-height: 180%;
    margin-bottom: 10px;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;


}







/* TOP コンテンツリスト---------------------------------------------- */

.tp_flow{
    width: 100%;
}

.tp_flow ul{
    overflow: auto;
    clear: both;
}

.tp_flow ul li{
    float: left;
    width: 49%;

    margin-right: 2%;
    margin-bottom: 30px;
    box-sizing: border-box;
    border: 2px solid #415cb2;
    padding: 30px;
    border-radius: 30px;

}

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

.tp_flow ul li:nth-child(odd){
    margin-right: 0%;
}



.tp_flow_img{
    width: 100%;
    margin-bottom: 20px;

    border-radius: 30px;

}

.tp_flow_img img{
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: 20% 0%;

    border-radius: 30px;
}

.tp_flow_btn{
    width: 100%;
    max-width: 290px;
    margin: 0px auto;

}

.tp_flow_btn a{
    position: relative;
    height: 70px;

    box-sizing: border-box;

    font-size: 20px;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
        
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center;    
    color: #fff;

    border-radius: 35px;

    background: linear-gradient(to right,#015eea, #00c0fa);
}

.tp_flow_btn a:hover{
    opacity: 0.8;
}


/* 共通お問い合わせ---------------------------------------------- */

.cmm_ctt_bg {
    width: 100%;
    height: 350px !important;
    background: url("../img/common/contact_bg.jpg") center no-repeat;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    margin: 0px auto 0px auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.cmm_ctt dt h2.h2_01{
    margin-bottom: 20px;
}

.cmm_ctt dd{
    text-align: center;

    font-size: 40px;
    font-weight: 700;
    line-height: 140%;
    color: #6f5d27;
    margin: 0px auto 20px;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.cmm_ctt dd p{
    font-size: 18px;
    font-weight: 400;
    color: #000;
    line-height: 120%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 10px;
}

.cmm_ctt_btn{
    width: 350px;
    margin: 0px auto;

}

.cmm_ctt_btn a{
    position: relative;
    height: 50px;

    width: 350px;

    box-sizing: border-box;

    font-size: 15px;
    padding-left: 40px;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
        
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center;    
    color: #fff;

    border-radius: 25px;

    background: #e09d34;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.cmm_ctt_btn a:hover{
    opacity: 0.8;
}

.cmm_ctt_btn a::before{
    position: absolute;

    top: 50%;
    left: 40px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 32px;
    height: 22px;
  
	background:url("../img/common/mail_icon.png") center  no-repeat ; 

}




/* 新着情報---------------------------------------------- */


.tp_news{

}

.tp_news dl{
margin-bottom: 30px;
}

.tp_news dl dt{
font-size: 18px;
line-height: 160%;

float: left;
clear: both;

font-family: "a-otf-jun-pro", sans-serif;
font-weight: 300;
font-style: normal;

letter-spacing: 0.03em;

}





.tp_news dl dd{
font-size: 18px;
line-height: 160%;
margin: 0 0 15px 0;
padding-left: 180px;
padding-bottom: 15px;


border-bottom: 1px dotted #999999;

font-family: "ryo-gothic-plusn", sans-serif;
font-weight: 400;
font-style: normal;

}


.tp_news dl dd a{
    color: #000000;
    text-decoration: none;
}


.tp_news dl dd a:hover{
    color: #000000;
    text-decoration:underline;
}


.news_ttl{
font-size: 2rem;
line-height: 140%;
border-bottom: 2px solid #333333;
padding-bottom: 7px;
margin-bottom: 15px;
}

.news_day{
font-size: 1.4rem;
line-height: 120%;
margin-bottom: 15px;
text-align: right;

}


.news_post{
font-size: 1.7rem;
line-height: 160%;
margin-bottom: 70px;

}

.news_post h1{
    line-height: 200%;
}

.news_post h2{
    line-height: 190%;
}

.news_post h3{
    line-height: 180%;
}

.news_post h4{
    line-height: 170%;
}


.news_post_in{
}


.news_post_in_l{
    width: 76%;
    height: auto;
    float: left;

}


.news_post_in_l a{
    color: #004486;
    text-decoration: underline;
}


.news_post_in_l a:hover{
    color: #004486;
    text-decoration:none;
}

.news_post_in_l p::after{
    content: "";
    clear: both;
    display: block;
}



.news_post_in_l ul li{
	list-style-type: disc;
	margin-left: 20px;
	text-align: left;
}

.news_post_in_l ol li{
	margin-left: 20px;
	text-align: left;
}




.news_post_in_r{
    width: 20%;
    height: auto;
    float: right;
    

}


.news_post_in_r dl dt{
    background: #DA8E99;
    padding: 10px 15px;
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 120%;
    margin-bottom: 15px;
}


.news_post_in_r dl dd{
    margin-bottom: 35px;
}


.news_post_in_r dl dd:last-child{
    margin-bottom: 0px;
}



.news_post_in_r dl dd ul li{
    background:url("../img/common/list001.png") left 9px no-repeat;
    font-size: 1.6rem;
    line-height: 120%;
    margin-bottom: 14px;
    padding-left: 8px;
}


.news_post_in_r dl dd ul li a{
    color: #000000;
    text-decoration: none;
}

.news_post_in_r dl dd ul li a:hover{
    color: #000000;
    text-decoration:underline;
}

.news_post_in_r dl dd ul li:last-child{
    margin-bottom: 0px;
}


/* 保育園の紹介---------------------------------------------- */

.about_cont01{
    width: 100%;
    margin:0px auto 90px;
}

.about_cont01 ul{
    width: 100%;
    overflow: auto;
}

.about_cont01 ul li{
    float: left;
    width: 32.5%;

    margin-right: 1.25%;
    margin-bottom: 1.25%;
}

.about_cont01 ul li:nth-child(3n){
    margin-right: 0%;
}



.about_cont02{
    width: 100%;
}

.about_cont02 table{
    width: 100%;
}

.about_cont02 th{

    font-size: 18px;
    color: #f3637e;
    background-color: #fff5f7;

    text-align: center;
    vertical-align: top;

    border-top: dotted 1px #ccc;

    padding: 20px 40px;
    box-sizing: border-box;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}

.about_cont02 td{

    font-size: 18px;

    border-top: dotted 1px #ccc;

    padding: 20px 40px;
    box-sizing: border-box;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}


.about_cont02 tr:last-child th,
.about_cont02 tr:last-child td{
    border-bottom: dotted 1px #ccc;
}



/* 保育理念・保育方針---------------------------------------------- */

.philosophy_cont01{
    width: 100%;


    padding:30px 30px 40px;    
    box-sizing: border-box;

    border: 8px solid #dfc157;
    background-color: #fff;
    border-radius: 30px;
    
    margin: 0px auto 90px;
}

.philosophy_cont01 h3.h3_01{
    margin-bottom: 40px;

}

.philosophy_cont01_txt{
 
    font-size: 25px;
    line-height: 180%;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;
}


.philosophy_cont02{
    width: 100%;
}


.philosophy_cont02 dt{
    width: 100%;

    font-size: 20px;
    color: #ffffff;
    text-align: center;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding: 20px;
    box-sizing: border-box;

    border-radius: 500px;

    background-color: #ef7f92;
    margin-bottom: 20px;
}

.philosophy_cont02 dd{
    width: 100%;

    font-size: 18px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;



    margin-bottom: 60px;
}


/* 体験教室---------------------------------------------- */

.trial_cont01{
    font-size: 18px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
    
    margin-bottom: 90px;
}

.trial_cont01 span.highlighter{
    padding: 0px 5px;
    background: linear-gradient(transparent 70%, #fad8de 70%);
}

.trial_cont01 span.strong{
    color: #ef7f92;
    font-weight: 600;
}


.trial_cont02{
    width: 100%;
    margin-bottom: 90px;
}


.trial_cont02 dt{
    width: 100%;

    font-size: 20px;
    color: #ffffff;
    text-align: center;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding: 20px;
    box-sizing: border-box;

    border-radius: 500px;

    background-color: #ef7f92;
    margin-bottom: 20px;
}

.trial_cont02 dd{
    width: 100%;

    font-size: 18px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 60px;
}


.trial_cont02_title{
    margin-bottom: 20px;

}


.trial_cont02_title span{
    position: relative;
    color: #ef7f92;

    font-size: 20px;
    line-height: 140%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding-left: 50px;
    box-sizing: border-box;
}

.trial_cont02_title span::before{
    position: absolute;

    top: 50%;
    left: 0px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 40px;
    height: 3px;
  
    background-color: #ef7f92;
}



.trial_cont02_txt{
    font-size: 18px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


.trial_cont03{
    width: 100%;
    margin-bottom: 20px;
}


.trial_cont03 li{
    float: left;
    width: 48.5%;

    margin-right: 3%;
    margin-bottom: 3%;
    
}

.trial_cont03 li:nth-child(2n){

    margin-right: 0%;
}

.trial_cont03 img{
    width: 100%;
}

/* 年間行事---------------------------------------------- */


.event_cont01{
    width: 100%;
    margin-bottom: 90px;
}

.event_cont01 table{
    width: 100%;
}


.event_cont01 tr:nth-child(2n + 1){
    background-color: #fff5f7;
}

.event_cont01 th{
    width: 100px;
    padding: 10px 20px;


    font-size: 18px;
    line-height: 180%;
    text-align: right;
    color: #f3637e;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    box-sizing: border-box;
}

.event_cont01 td{
    padding: 10px 20px;

    font-size: 18px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    box-sizing: border-box;
}


.swiper-container {
    position: relative;
    overflow: hidden;
    width: 100%;

    margin-bottom: 60px;

  }
  .swiper-container.visible {
    overflow: visible;
  }

  .swiper-slide div{
    text-align: center;
  }

  .swiper-slide div img{
    margin: 0px auto;
    width: 500px;
    height: 500px;
    object-fit: cover; /* この一行を追加するだけ！ */
  }



/* 保育園での風景---------------------------------------------- */

.scenery_cont01{
    width: 100%;
}


.scenery_cont01 li{
    position: relative;

    box-sizing: border-box;
    padding-bottom: 80px;
    margin-bottom: 90px;
}

.scenery_cont01 li::after{
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 100%;
    height:24px;
    box-sizing: border-box;
	background:url("../img/scenery/kugiri.png") center  no-repeat ; 
	 -moz-background-size: contain;
	-o-background-size: contain;
	 background-size: contain;

}

.scenery_cont01_img{
    max-width: 800px;
    width: 100%;

    margin: 0px auto 40px;
}

.scenery_cont01_img img{
    width: 100%;
}

.scenery_cont01_txt{
    font-size: 18px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


/* お問い合わせ---------------------------------------------- */

.contact_cont01{
    width: 100%;


    padding:30px 30px 40px;    
    box-sizing: border-box;

    border: 8px solid #dfc157;
    background-color: #fff;
    border-radius: 30px;
    
    margin: 0px auto 90px;
}

.contact_cont01 h3.h3_01{
    margin-bottom: 40px;

}

.contact_cont01_txt{
 
    font-size: 18px;
    line-height: 180%;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


.contact_cont01_txt p{
 
    font-size: 30px;
    color: #ef7f92;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;
}


#contact-f{
	width:100%;
	height:auto;
	margin-bottom:60px;

}

#contact-f table{
	width:100%;
	height:auto;
	border-top:1px solid #cccccc;
}

#contact-f th,td{
	padding:15px;
}

#contact-f th{
	font-size:16px;
	border-collapse:collapse;

	border-bottom:1px solid #cccccc;
	text-align:left;
	font-weight:bold;
	color:#333;
	width:28%;	

	background:url(../img/contact/bg.png) repeat;
}

#contact-f td{
	font-size:16px;
	border-collapse:collapse;
	text-align:left;
	border-bottom:1px solid #cccccc;


	background:url(../img/contact/bg.png) repeat;
}


#contact-f span{
	color:#F00;
	font-size:12px;

}

.with-form1{
	width:90%;
	margin-right:5px;
	padding:5px;
	border:1px solid #CCC;

	filter:alpha(opacity=70); /* IE*/
	-moz-opacity: 0.7; /* Firefox*/
	opacity: 0.7; /* SafariやOpera*/
}

.with-form3{
	width:300px;
    height: 35px !important;

	padding:5px;
	border:1px solid #CCC;
	padding:5px;
}



.margin-r1{
	margin-right:5px;
}

.margin-r2{
	margin-right:15px;
}


.f_txt01{
    text-align: center;
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 120%;
}

.f_txt01 a{
    color: #000000;
    text-decoration: none;
}

.f_txt01 a:hover{
    color: #000000;
    text-decoration:underline;
}


#form-center{
	margin-left:0 !important;
	margin-top:20px;
	text-align:center;
}

input:focus {
    border:solid 1px #EEA34A;
}

textarea:focus {
    border:solid 1px #EEA34A;
}




input.submit_button {
	width:150px;
	height:auto;
	padding:15px 0;
    font-size: 1.2em;
    background-color:#697489;
    color:#FFF;
	font-weight:bold;
    border-style: none;
	text-align:center;
	font-size:16px;

    /*角丸*/
	-webkit-border-radius: 3px;     /* for Safari and Chrome */
	moz-border-radius: 3px;    /* for Firefox */
	-o-border-radius: 3px;  /* when Opera Presto 2.3 or later is released */
	-khtml-border-radius:3px;   /* Linux browsers */
	border-radius: 3px;     /* CSS3 */
     behavior: url(css/border-radius.htc); /* IE用 */
    /*角丸*/
	
}

input.submit_button:hover {
	opacity: 0.7;
	filter: Alpha(opacity=70); 
}






#contact-f select {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    text-indent: 0.5em;
    background:#FAFAFA;
    height: 20px;

    font-size: 13px;
    vertical-align: middle;
    border:1px solid #CCC;
}




#contact-f input[type=radio],
#contact-f input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}
#contact-f input[type=radio] + label,
#contact-f input[type=checkbox] + label {
    position: relative;
     
    display: inline-block;
    margin-right: 5px;
     
    font-size: 14px;
    line-height: 30px;
     
    cursor: pointer;
}
 
@media (min-width: 1px) {
#contact-f input[type=radio],
#contact-f input[type=checkbox] {
        display: none;
        margin: 0;
    }
#contact-f input[type=radio] + label,
#contact-f input[type=checkbox] + label {
        padding: 0 0 0 24px;
    }
#contact-f input[type=radio] + label::before,
#contact-f input[type=checkbox] + label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
         
        background: #FFF;
    }
#contact-f input[type=radio] + label::before {
        border: 2px solid #ccc;
        border-radius: 30px;
    }
#contact-f input[type=checkbox] + label::before {
        border: 2px solid #ccc;
    }
#contact-f input[type=radio]:checked + label::after,
#contact-f input[type=checkbox]:checked + label::after {
        content: "";
        position: absolute;
        top: 50%;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
#contact-f input[type=radio]:checked + label::after {
        left: 5px;
         
        width: 8px;
        height: 8px;
        margin-top: -4px;
         
        background:#06C;
        border-radius: 8px;
    }
#contact-f input[type=checkbox]:checked + label::after {
        left: 3px;
         
        width: 16px;
        height: 8px;
        margin-top: -8px;
         
        border-left: 3px solid #E71063;
        border-bottom: 3px solid #E71063;
         
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}


/* 個人情報保護方針---------------------------------------------- */


.privacy{
}


.privacy dt {
    font-size:20px;
    line-height: 160%;

    margin-bottom: 8px;

    font-family: noto-sans,sans-serif;
    font-weight: 700;
    font-style: normal;
}


.privacy dd {
    font-size:15px;
    line-height: 150%;
    margin-bottom: 25px;

    font-family: noto-sans,sans-serif;
    font-weight: 500;
    font-style: normal;
}

/* よくある質問---------------------------------------------- */

.faq_cont{
    width: 100%;
    max-width: 1100px;

    margin: 0px auto;


}

.faq_cont dt{
    position: relative;
    width: 100%;

    padding: 25px 10px 20px 70px;
    box-sizing: border-box;

    font-size: 20px;
    line-height: 100%;
    border-bottom: 1px solid #d7d6d6;

    margin-bottom: 15px;
    
}

.faq_cont dt::before{
    position: absolute;
    top: 0px;
    left: 0px;

    text-align: center;
    padding-top: 12px;
    box-sizing: border-box;

    width: 55px;
    height: 55px;

    content: 'Q';

    font-size: 35px;
    color: #fff;

    background-color: #2c4cb2;
    border-radius: 50%;
}



.faq_cont dd{

    background-color: #ebf0f4;

    font-size: 20px;
    padding: 20px 30px;
    box-sizing: border-box;
    margin-bottom: 40px;

    border-radius: 5px;
    
}


}


/* タブレット用スタイル--------------------------------------------------------------------------------------------------------------------------------------------- */



@media screen and (max-width: 1060px) {


/* h1 h2 h3 h4 h5 ---------------------------------------------- */


h1.h1_01{
    width: 300px;
    position: absolute;
    top: 18px;
    left:30px;
}





h2.h2_01{
    position: relative;
    text-align: center;
    margin: 0px auto 50px;
}

h2.h2_01.btmh{
    margin: 0px auto 25px;
}


h2.h2_01 p:first-child{
    font-size: 32px;
    line-height: 140%;
    color: #6f5d27;
    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.h2_01 p:last-child{
    font-size: 18px;
    line-height: 140%;
    color: #e4a52b;
    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.h2_01 p:last-child span.red{
    color: #ea5d67;
}

h2.h2_01 p:last-child span.green{
    color: #4b9a4d;
}

h2.h2_01 p:last-child span.blue{
    color: #3cb8bd;
}



h3.h3_01{
    position: relative;
    color: #6f5d27;
    font-size: 24px;
    line-height: 160%;

    text-align: center;
    margin: 0px auto 50px;

    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}



h3.h3_01::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;

    background-color: #f2759e;

    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

h3.h3_01::before {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;

    background-color: #e09d34;

    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}




h4.h4_01{
    padding:4px 8px 6px;
    border-left: 14px solid #2c4cb2;

    margin-bottom: 20px;
}

h4.h4_01 p:first-child{
    font-size: 22px;
    font-weight: 500;
    line-height: 160%;
    color: #2c4cb2;
}

h4.h4_01 p:last-child{
    font-size: 18px;
    font-weight: 500;
    line-height: 180%;

}


/* スライド ---------------------------------------------- */



/*=============
slick
=============*/

.full{

	width:100%;
	height: calc(100dvh - 90px);
    


    

}

     
.full .slide {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;

  height: calc(100dvh - 90px);
  margin: 0;
  text-decoration: none;
}
.full .img01 {
  background-image:url("../img/top/slide01_t.jpg");
}
.full .img02 {
  background-image:url("../img/top/slide02_t.jpg");
}
.full .img03 {
  background-image:url("../img/top/slide03_t.jpg");
}


.full .slick-dots {
	bottom: 4%;
	z-index: +1;
}



.top_slide{
    position: relative;
	width:100%;

    max-height: 600px;
	height: 100dvh;

    background:url("../img/top/slide.jpg") center  no-repeat ; 
    -moz-background-size: cover;
   -o-background-size: cover;
    background-size: cover;

}


.slide_txt_out{

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center; 

    width: 100%;
    height: 100%;
    box-sizing: border-box;

    font-size: 48px;
    line-height: 55px;
    color: #fff;
    font-family: "wanpaku-rera", sans-serif;
    font-weight: 600;
    font-style: normal;

    text-shadow:2px 2px 0 #86684f, -2px -2px 0 #86684f,
    -2px 2px 0 #86684f, 2px -2px 0 #86684f,
    0px 2px 0 #86684f,  0 -2px 0 #86684f,
    -2px 0 0 #86684f, 2px 0 0 #86684f;
    
    z-index: 10;
}




/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:0px;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:0px;
	bottom:50px;
    /*テキストの形状*/
	color: #6c5050;
	font-size: 16px;
	letter-spacing: 0.08em;

    transform: translateX(-50%);

    font-family: "fot-rodin-pron", sans-serif;
    font-weight: 100;
    font-style: normal;

}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#6c5050;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
    /*線の形状*/
	width:2px;
	height: 50px;
	background:#6c5050;
}






/* 各ページイメージ ---------------------------------------------- */


.about_top_img{
	width: 100%;
	height:300px !important;
	background:url("../img/about/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}


.philosophy_top_img{
	width: 100%;
	height:300px !important;
	background:url("../img/philosophy/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.trial_top_img{
	width: 100%;
	height:300px !important;
	background:url("../img/trial/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.event_top_img{
	width: 100%;
	height:300px !important;
	background:url("../img/event/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.scenery_top_img{
	width: 100%;
	height:300px !important;
	background:url("../img/scenery/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.contact_top_img{
	width: 100%;
	height:300px !important;
	background:url("../img/contact/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}






/* ページ共通背景 ---------------------------------------------- */



.cmn_button{
    position: relative;
	width:220px;
	height:auto;
	text-align: center;
	text-decoration: none;
    margin: 0 auto;
}

.cmn_button a{
    display: block;
	width:220px;
    height: 50px;
    font-size: 16px;
    line-height: 100%;
    color:#FFFFFF;

	border: 2px solid #e09d34;
    background: #e09d34;
    border-radius: 25px;
    padding-bottom: 3px;

    box-sizing: border-box;

   -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: center; 
   align-items: center; 
   -webkit-justify-content: center; 
   justify-content: center;

   font-family: "a-otf-jun-pro", sans-serif;
   font-weight: 300;
   font-style: normal;
}


.cmn_button a:hover {
    background:#FFFFFF;

	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button a::after{
    position: absolute;

    top: 50%;
    right: 15px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 9px;
    height: 12px;
  
    background-color: #fff;

    clip-path: polygon(0 0, 100% 50%, 0 100%)
}

.cmn_button a:hover::after{
    background-color: #e09d34;
}



.cmn_button.button01 a{
	border: 2px solid #e09d34;
    background: #e09d34;
}

.cmn_button.button01 a:hover {
    background:#FFFFFF;
	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button.button01 a:hover::after{
    background-color: #e09d34;
}


.cmn_button.button02 a{
	border: 2px solid #da9695;
    background: #da9695;
}

.cmn_button.button02 a:hover {
    background:#FFFFFF;
	border: 2px solid #da9695;
    color:#da9695;
}

.cmn_button.button02 a:hover::after{
    background-color: #da9695;
}


.cmn_button.button03 a{
	border: 2px solid #8bbc5b;
    background: #8bbc5b;
}

.cmn_button.button03 a:hover {
    background:#FFFFFF;
	border: 2px solid #8bbc5b;
    color:#8bbc5b;
}

.cmn_button.button03 a:hover::after{
    background-color: #8bbc5b;
}


.cmn_button.button04 a{
	border: 2px solid #3cb8bd;
    background: #3cb8bd;
}

.cmn_button.button04 a:hover {
    background:#FFFFFF;
	border: 2px solid #3cb8bd;
    color:#3cb8bd;
}

.cmn_button.button04 a:hover::after{
    background-color: #3cb8bd;
}

.cmn_button.button05 a{
	border: 2px solid #e09d34;
    background: #e09d34;
}

.cmn_button.button05 a:hover {
    background:#FFFFFF;
	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button.button05 a:hover::after{
    background-color: #e09d34;
}




/* サブページ背景---------------------------------------------- */

.sub_page_bg{
	width: 100%;
	background:url("../img/common/sub_bg.jpg") top  no-repeat ; 
	 -moz-background-size: contain;
	-o-background-size: contain;
	 background-size: contain;
	 margin:0px auto 0px auto;
}


/* トップ背景---------------------------------------------- */
.tp_msg_bg{
	width: 100%;
	background:url("../img/top/top_msg_bg.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:0 30px;
     box-sizing:border-box;
}


.top_cont1{
	width: 100%;
	background:url("../img/top/bg01.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:40px 0px;
     box-sizing:border-box;
}

.top_cont2{
	width: 100%;
	background:url("../img/top/bg02.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:40px 0px;
     box-sizing:border-box;
}

.top_cont3{
	width: 100%;
	background:url("../img/top/bg03.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:40px 0px;
     box-sizing:border-box;
}

.top_cont4{
	width: 100%;
	background:url("../img/top/bg04.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:40px 0px;
     box-sizing:border-box;
}




.top_cont1_inner,
.top_cont2_inner,
.top_cont3_inner,
.top_cont4_inner{
    width: 100%;
    height: auto;
    overflow: auto;
}


.top_cont1_img{
    float: right;
    width: 50%;
}


.top_cont1_img img{
    width: 100%;
    height: 380px;

    object-fit: cover;
    object-position: left;/* 100% 100%と同じ */
}

.top_cont1_txt{
    float: right;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 40px;
}




.top_cont2_img{
    float: left;
    width: 50%;
}


.top_cont2_img img{
    width: 100%;
    height: 380px;

    object-fit: cover;
    object-position: right;/* 100% 100%と同じ */
}

.top_cont2_txt{
    float: left;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}




.top_cont3_img{
    float: right;
    width: 50%;
}


.top_cont3_img img{
    width: 100%;
    height: 380px;

    object-fit: cover;
    object-position: left;/* 100% 100%と同じ */
}

.top_cont3_txt{
    float: right;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}




.top_cont4_img{
    float: left;
    width: 50%;
}


.top_cont4_img img{
    width: 100%;
    height: 380px;

    object-fit: cover;
    object-position: right;/* 100% 100%と同じ */
}

.top_cont4_txt{
    float: left;
    width: calc(50% - 100px);
    max-width: 500px;
    margin: 0px 50px;
}










.top_cont_dl{
    width: 100%;
}

.top_cont_dl dt{
    text-align: center;
    font-size: 20px;
    line-height: 160%;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    margin-bottom: 20px;

    word-break: auto-phrase;
}

.top_cont_dl dd{
    font-size: 16px;
    line-height: 160%;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 30px;
}



/* トップメッセージ---------------------------------------------- */


.tp_msg_01 {
    width: 100%;
}

.tp_msg_01 dl{
    margin-bottom: 30px;
}

.tp_msg_01 dt{
    position: relative;
    text-align: center;

    color: #6f5d27;
    font-size: 24px;
    line-height: 120%;
    padding-bottom: 25px;
    margin-bottom: 25px;

    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;

    box-sizing: border-box;
}


.tp_msg_01 dt::after {
    content: "";
    position: absolute;
    content: '';
    bottom: 0;
    left: 50%;
    width: 211px;
    height: 7px;
    box-sizing: border-box;
	background:url("../img/top/top_msg.png") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;

     transform: translateX(-50%);
}

.tp_msg_01 dd{
    width: 100%;
    max-width: 600px;

    margin: 0px auto 10px;

    text-align: left;

    font-size: 16px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;


}


/* TOP コンテンツリスト---------------------------------------------- */

.tp_flow{
    width: 100%;
}

.tp_flow ul{
    overflow: auto;
    clear: both;
}

.tp_flow ul li{
    float: left;
    width: 49%;

    margin-right: 2%;
    margin-bottom: 20px;
    box-sizing: border-box;
    border: 2px solid #415cb2;
    padding: 20px;
    border-radius: 30px;

}


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

.tp_flow ul li:nth-child(odd){
    margin-right: 0%;
}

.tp_flow ul li:nth-child(3),
.tp_flow ul li:nth-child(2){
    margin-bottom: 0px;
}


.tp_flow ul li h2.h2_01{
    margin-bottom: 20px;
}

.tp_flow_img{
    width: 100%;
    margin-bottom: 20px;

    border-radius: 20px;

}

.tp_flow_img img{
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: 20% 0%;

    border-radius: 20px;
}

.tp_flow_btn{
    width: 100%;
    max-width: 240px;
    margin: 0px auto;

}

.tp_flow_btn a{
    position: relative;
    height: 60px;

    box-sizing: border-box;

    font-size: 18px;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
        
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center;    
    color: #fff;

    border-radius: 30px;

    background: linear-gradient(to right,#015eea, #00c0fa);
}

.tp_flow_btn a:hover{
    opacity: 0.8;
}


/* 共通お問い合わせ---------------------------------------------- */

.cmm_ctt_bg {
    width: 100%;
    height: 320px !important;
    background: url("../img/common/contact_bg.jpg") center no-repeat;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    margin: 0px auto 0px auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.cmm_ctt dt h2.h2_01{
    margin-bottom: 20px;
}

.cmm_ctt dd{
    text-align: center;

    font-size: 32px;
    font-weight: 700;
    line-height: 140%;
    color: #6f5d27;
    margin: 0px auto 20px;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.cmm_ctt dd p{
    font-size: 16px;
    font-weight: 400;
    color: #000;
    line-height: 120%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 10px;
}

.cmm_ctt_btn{
    width: 320px;
    margin: 0px auto;

}

.cmm_ctt_btn a{
    position: relative;
    height: 50px;

    width: 320px;

    box-sizing: border-box;

    font-size: 15px;
    padding-left: 35px;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
        
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center;    
    color: #fff;

    border-radius: 25px;

    background: #e09d34;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.cmm_ctt_btn a:hover{
    opacity: 0.8;
}

.cmm_ctt_btn a::before{
    position: absolute;

    top: 50%;
    left: 34px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 26px;
    height: 18px;
  
	background:url("../img/common/mail_icon.png") center  no-repeat ; 

}




/* 新着情報---------------------------------------------- */


.tp_news{

}

.tp_news dl{
margin-bottom: 30px;
}

.tp_news dl dt{
font-size: 16px;
line-height: 160%;

float: left;
clear: both;

font-family: "a-otf-jun-pro", sans-serif;
font-weight: 300;
font-style: normal;
letter-spacing: 0.03em;

}



.tp_news dl dd{
font-size: 16px;
line-height: 160%;
margin: 0 0 15px 0;
padding-left: 170px;
padding-bottom: 15px;


border-bottom: 1px dotted #999999;

font-family: "a-otf-jun-pro", sans-serif;
font-weight: 300;
font-style: normal;

}


.tp_news dl dd a{
    color: #000000;
    text-decoration: none;
}


.tp_news dl dd a:hover{
    color: #000000;
    text-decoration:underline;
}


.news_ttl{
font-size: 2rem;
line-height: 140%;
border-bottom: 2px solid #333333;
padding-bottom: 7px;
margin-bottom: 15px;
}

.news_day{
font-size: 1.4rem;
line-height: 120%;
margin-bottom: 15px;
text-align: right;

}


.news_post{
font-size: 1.7rem;
line-height: 160%;
margin-bottom: 70px;

}

.news_post h1{
    line-height: 200%;
}

.news_post h2{
    line-height: 190%;
}

.news_post h3{
    line-height: 180%;
}

.news_post h4{
    line-height: 170%;
}


.news_post_in{
}


.news_post_in_l{
    width: 76%;
    height: auto;
    float: left;

}


.news_post_in_l a{
    color: #004486;
    text-decoration: underline;
}


.news_post_in_l a:hover{
    color: #004486;
    text-decoration:none;
}

.news_post_in_l p::after{
    content: "";
    clear: both;
    display: block;
}



.news_post_in_l ul li{
	list-style-type: disc;
	margin-left: 20px;
	text-align: left;
}

.news_post_in_l ol li{
	margin-left: 20px;
	text-align: left;
}




.news_post_in_r{
    width: 20%;
    height: auto;
    float: right;
    

}


.news_post_in_r dl dt{
    background: #DA8E99;
    padding: 10px 15px;
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 120%;
    margin-bottom: 15px;
}


.news_post_in_r dl dd{
    margin-bottom: 35px;
}


.news_post_in_r dl dd:last-child{
    margin-bottom: 0px;
}



.news_post_in_r dl dd ul li{
    background:url("../img/common/list001.png") left 9px no-repeat;
    font-size: 1.6rem;
    line-height: 120%;
    margin-bottom: 14px;
    padding-left: 8px;
}


.news_post_in_r dl dd ul li a{
    color: #000000;
    text-decoration: none;
}

.news_post_in_r dl dd ul li a:hover{
    color: #000000;
    text-decoration:underline;
}

.news_post_in_r dl dd ul li:last-child{
    margin-bottom: 0px;
}



/* 保育園の紹介---------------------------------------------- */

.about_cont01{
    width: 100%;
    margin:0px auto 80px;
}

.about_cont01 ul{
    width: 100%;
    overflow: auto;
}

.about_cont01 ul li{
    float: left;
    width: 32.5%;

    margin-right: 1.25%;
    margin-bottom: 1.25%;
}

.about_cont01 ul li:nth-child(3n){
    margin-right: 0%;
}


.about_cont02{
    width: 100%;
}

.about_cont02 table{
    width: 100%;
}

.about_cont02 th{

    font-size: 16px;
    color: #f3637e;
    background-color: #fff5f7;

    text-align: center;
    vertical-align: top;

    border-top: dotted 1px #ccc;

    padding: 15px 35px;
    box-sizing: border-box;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}

.about_cont02 td{

    font-size: 16px;

    border-top: dotted 1px #ccc;

    padding: 15px 35px;
    box-sizing: border-box;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}


.about_cont02 tr:last-child th,
.about_cont02 tr:last-child td{
    border-bottom: dotted 1px #ccc;
}

/* 保育理念・保育方針---------------------------------------------- */

.philosophy_cont01{
    width: 100%;


    padding:25px 25px 35px;    
    box-sizing: border-box;

    border: 7px solid #dfc157;
    background-color: #fff;
    border-radius: 25px;
    
    margin: 0px auto 80px;
}

.philosophy_cont01 h3.h3_01{
    margin-bottom: 30px;

}

.philosophy_cont01_txt{
 
    font-size: 20px;
    line-height: 180%;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;
}


.philosophy_cont02{
    width: 100%;
}


.philosophy_cont02 dt{
    width: 100%;

    font-size: 18px;
    color: #ffffff;
    text-align: center;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding: 20px;
    box-sizing: border-box;

    border-radius: 500px;

    background-color: #ef7f92;
    margin-bottom: 20px;
}

.philosophy_cont02 dd{
    width: 100%;

    font-size: 16px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;



    margin-bottom: 50px;
}


/* 体験教室---------------------------------------------- */

.trial_cont01{
    font-size: 16px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
    
    margin-bottom: 80px;
}

.trial_cont01 span.highlighter{
    padding: 0px 5px;
    background: linear-gradient(transparent 70%, #fad8de 70%);
}

.trial_cont01 span.strong{
    color: #ef7f92;
    font-weight: 600;
}


.trial_cont02{
    width: 100%;
    margin-bottom: 80px;
}


.trial_cont02 dt{
    width: 100%;

    font-size: 18px;
    color: #ffffff;
    text-align: center;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding: 20px;
    box-sizing: border-box;

    border-radius: 500px;

    background-color: #ef7f92;
    margin-bottom: 20px;
}

.trial_cont02 dd{
    width: 100%;

    font-size: 16px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 50px;
}


.trial_cont02_title{
    margin-bottom: 15px;

}


.trial_cont02_title span{
    position: relative;
    color: #ef7f92;

    font-size: 18px;
    line-height: 140%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding-left: 45px;
    box-sizing: border-box;
}

.trial_cont02_title span::before{
    position: absolute;

    top: 50%;
    left: 0px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 35px;
    height: 3px;
  
    background-color: #ef7f92;
}



.trial_cont02_txt{
    font-size: 16px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


.trial_cont03{
    width: 100%;
    margin-bottom: 20px;
}


.trial_cont03 li{
    float: left;
    width: 48.5%;

    margin-right: 3%;
    margin-bottom: 3%;
    
}

.trial_cont03 li:nth-child(2n){

    margin-right: 0%;
}

.trial_cont03 img{
    width: 100%;
}



/* 年間行事---------------------------------------------- */


.event_cont01{
    width: 100%;
    margin-bottom: 80px;
}

.event_cont01 table{
    width: 100%;
}


.event_cont01 tr:nth-child(2n + 1){
    background-color: #fff5f7;
}

.event_cont01 th{
    width: 80px;
    padding: 10px 20px;


    font-size: 16px;
    line-height: 180%;
    text-align: right;
    color: #f3637e;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    box-sizing: border-box;
}

.event_cont01 td{
    padding: 10px 20px;

    font-size: 16px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    box-sizing: border-box;
}



.swiper-container {
    position: relative;
    overflow: hidden;
    width: 100%;

    
    margin-bottom: 50px;
  }
  .swiper-container.visible {
    overflow: visible;
  }

  .swiper-slide div{
    text-align: center;
  }

  .swiper-slide div img{
    margin: 0px auto;
    width: 400px;
    height: 400px;
    object-fit: cover; /* この一行を追加するだけ！ */
  }


/* 保育園での風景---------------------------------------------- */

.scenery_cont01{
    width: 100%;
}


.scenery_cont01 li{
    position: relative;

    box-sizing: border-box;
    padding-bottom: 70px;
    margin-bottom: 80px;
}

.scenery_cont01 li::after{
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 100%;
    height:24px;
    box-sizing: border-box;
	background:url("../img/scenery/kugiri.png") center  no-repeat ; 
	 -moz-background-size: contain;
	-o-background-size: contain;
	 background-size: contain;

}

.scenery_cont01_img{
    max-width: 800px;
    width: 100%;

    margin: 0px auto 30px;
}

.scenery_cont01_img img{
    width: 100%;
}

.scenery_cont01_txt{
    font-size: 16px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


/* お問い合わせ---------------------------------------------- */


.contact_cont01{
    width: 100%;


    padding:25px 25px 35px;    
    box-sizing: border-box;

    border: 7px solid #dfc157;
    background-color: #fff;
    border-radius: 25px;
    
    margin: 0px auto 80px;
}


.contact_cont01 h3.h3_01{
    margin-bottom: 30px;

}

.contact_cont01_txt{
 
    font-size: 16px;
    line-height: 180%;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


.contact_cont01_txt p{
 
    font-size: 24px;
    color: #ef7f92;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;
}

#contact-f{
	width:100%;
	height:auto;
	margin-bottom:60px;
}

#contact-f table{
	width:100%;
	height:auto;
	border-top:1px solid #cccccc;
}

#contact-f th,td{
	padding:15px;
}

#contact-f th{
	font-size:16px;
	border-collapse:collapse;

	border-bottom:1px solid #cccccc;
	text-align:left;
	font-weight:bold;
	color:#333;
	width:28%;

	background:url(../img/contact/bg.png) repeat;
}

#contact-f td{
	font-size:16px;
	border-collapse:collapse;
	text-align:left;
	border-bottom:1px solid #cccccc;

	background:url(../img/contact/bg.png) repeat;
}


#contact-f span{
	color:#F00;
	font-size:12px;

}

.with-form1{
	width:90%;
	margin-right:5px;
	padding:5px;
	border:1px solid #CCC;

	filter:alpha(opacity=70); /* IE*/
	-moz-opacity: 0.7; /* Firefox*/
	opacity: 0.7; /* SafariやOpera*/
}

.with-form3{
	width:300px;
    height: 35px !important;

	padding:5px;
	border:1px solid #CCC;
	padding:5px;
}


.margin-r1{
	margin-right:5px;
}

.margin-r2{
	margin-right:15px;
}

.f_txt01{
    text-align: center;
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 120%;
}

.f_txt01 a{
    color: #000000;
    text-decoration: none;
}

.f_txt01 a:hover{
    color: #000000;
    text-decoration:underline;
}


#form-center{
	margin-left:0 !important;
	margin-top:20px;
	text-align:center;
}


input:focus {
    border:solid 1px #EEA34A;
}

textarea:focus {
    border:solid 1px #EEA34A;
}




input.submit_button {
	width:150px;
	height:auto;
	padding:15px 0;
    font-size: 1.2em;
    background-color:#697489;
    color:#FFF;
	font-weight:bold;
    border-style: none;
	text-align:center;
	font-size:16px;

    /*角丸*/
	-webkit-border-radius: 3px;     /* for Safari and Chrome */
	moz-border-radius: 3px;    /* for Firefox */
	-o-border-radius: 3px;  /* when Opera Presto 2.3 or later is released */
	-khtml-border-radius:3px;   /* Linux browsers */
	border-radius: 3px;     /* CSS3 */
     behavior: url(css/border-radius.htc); /* IE用 */
    /*角丸*/
	
}

input.submit_button:hover {
	opacity: 0.7;
	filter: Alpha(opacity=70); 
}






#contact-f select {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    text-indent: 0.5em;
    background:#FAFAFA;
    height: 20px;

    font-size: 13px;
    vertical-align: middle;
    border:1px solid #CCC;
}




#contact-f input[type=radio],
#contact-f input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}
#contact-f input[type=radio] + label,
#contact-f input[type=checkbox] + label {
    position: relative;
     
    display: inline-block;
    margin-right: 5px;
     
    font-size: 14px;
    line-height: 30px;
     
    cursor: pointer;
}
 
@media (min-width: 1px) {
#contact-f input[type=radio],
#contact-f input[type=checkbox] {
        display: none;
        margin: 0;
    }
#contact-f input[type=radio] + label,
#contact-f input[type=checkbox] + label {
        padding: 0 0 0 24px;
    }
#contact-f input[type=radio] + label::before,
#contact-f input[type=checkbox] + label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
         
        background: #FFF;
    }
#contact-f input[type=radio] + label::before {
        border: 2px solid #ccc;
        border-radius: 30px;
    }
#contact-f input[type=checkbox] + label::before {
        border: 2px solid #ccc;
    }
#contact-f input[type=radio]:checked + label::after,
#contact-f input[type=checkbox]:checked + label::after {
        content: "";
        position: absolute;
        top: 50%;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
#contact-f input[type=radio]:checked + label::after {
        left: 5px;
         
        width: 8px;
        height: 8px;
        margin-top: -4px;
         
        background:#06C;
        border-radius: 8px;
    }
#contact-f input[type=checkbox]:checked + label::after {
        left: 3px;
         
        width: 16px;
        height: 8px;
        margin-top: -8px;
         
        border-left: 3px solid #E71063;
        border-bottom: 3px solid #E71063;
         
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

/* 個人情報保護方針---------------------------------------------- */



.privacy{
}


.privacy dt {
    font-size:18px;
    line-height: 160%;

    margin-bottom: 8px;

    font-family: noto-sans,sans-serif;
    font-weight: 700;
    font-style: normal;
}


.privacy dd {
    font-size:15px;
    line-height: 150%;
    margin-bottom: 25px;

    font-family: noto-sans,sans-serif;
    font-weight: 500;
    font-style: normal;
}

/* よくある質問---------------------------------------------- */

.faq_cont{
    width: 100%;
    max-width: 1100px;

    margin: 0px auto;


}

.faq_cont dt{
    position: relative;
    width: 100%;

    padding: 20px 10px 20px 65px;
    box-sizing: border-box;

    font-size: 18px;
    line-height: 100%;
    border-bottom: 1px solid #d7d6d6;

    margin-bottom: 15px;
    
}

.faq_cont dt::before{
    position: absolute;
    top: 0px;
    left: 0px;

    text-align: center;
    padding-top: 12px;
    box-sizing: border-box;

    width: 50px;
    height: 50px;

    content: 'Q';

    font-size: 30px;
    color: #fff;

    background-color: #2c4cb2;
    border-radius: 50%;
}



.faq_cont dd{

    background-color: #ebf0f4;

    font-size: 18px;
    padding: 20px 25px;
    box-sizing: border-box;
    margin-bottom: 35px;

    border-radius: 5px;
    
}

}



/* スマホ用スタイル--------------------------------------------------------------------------------------------------------------------------------------------- */

@media screen and (max-width: 720px) {	
	
/* h1 h2 h3 h4 h5 ---------------------------------------------- */




h1.h1_01{
    width: 250px;
    position: absolute;
    top: 15px;
    left:25px;
}


h2.h2_01{
    position: relative;
    text-align: center;
    margin: 0px auto 50px;
}

h2.h2_01.btmh{
    margin: 0px auto 25px;
}


h2.h2_01 p:first-child{
    font-size: 24px;
    line-height: 140%;
    color: #6f5d27;
    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.h2_01 p:last-child{
    font-size: 16px;
    line-height: 140%;
    color: #e4a52b;
    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h2.h2_01 p:last-child span.red{
    color: #ea5d67;
}

h2.h2_01 p:last-child span.green{
    color: #4b9a4d;
}

h2.h2_01 p:last-child span.blue{
    color: #3cb8bd;
}





h3.h3_01{
    position: relative;
    color: #6f5d27;
    font-size: 20px;
    line-height: 160%;

    text-align: center;
    margin: 0px auto 40px;

    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}



h3.h3_01::after {
    content: "";
    position: absolute;
    bottom: -7px;
    left: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;

    background-color: #f2759e;

    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

h3.h3_01::before {
    content: "";
    position: absolute;
    bottom: -16px;
    left: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;

    background-color: #e09d34;

    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}


h4.h4_01{
    padding:3px 6px;
    border-left: 10px solid #2c4cb2;

    margin-bottom: 20px;
}

h4.h4_01 p:first-child{
    font-size: 18px;
    font-weight: 500;
    line-height: 160%;
    color: #2c4cb2;
}

h4.h4_01 p:last-child{
    font-size: 16px;
    font-weight: 500;
    line-height: 180%;

}


/* スライド ---------------------------------------------- */




/*=============
slick
=============*/

.full{

	width:100%;
	height: calc(100dvh - 90px);
    


    

}

     
.full .slide {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;

  height: calc(100dvh - 90px);
  margin: 0;
  text-decoration: none;
}
.full .img01 {
  background-image:url("../img/top/slide01_s.jpg");
}
.full .img02 {
  background-image:url("../img/top/slide02_s.jpg");
}
.full .img03 {
  background-image:url("../img/top/slide03_s.jpg");
}


.full .slick-dots {
	bottom: 4%;
	z-index: +1;
}



.top_slide{
    position: relative;
	width:100%;

    max-height: 400px;
	height: 100dvh;

    background:url("../img/top/slide.jpg") center  no-repeat ; 
    -moz-background-size: cover;
   -o-background-size: cover;
    background-size: cover;

}


.slide_txt_out{

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center; 

    width: 100%;
    height: 100%;
    box-sizing: border-box;

    font-size: 30px;
    line-height: 34px;
    color: #fff;
    font-family: "wanpaku-rera", sans-serif;
    font-weight: 600;
    font-style: normal;

    text-shadow:2px 2px 0 #86684f, -2px -2px 0 #86684f,
    -2px 2px 0 #86684f, 2px -2px 0 #86684f,
    0px 2px 0 #86684f,  0 -2px 0 #86684f,
    -2px 0 0 #86684f, 2px 0 0 #86684f;
    
    z-index: 10;
}




/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:0px;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:0px;
	bottom:50px;
    /*テキストの形状*/
	color: #6c5050;
	font-size: 15px;
	letter-spacing: 0.08em;

    transform: translateX(-50%);

}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	color: #6c5050;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
    /*線の形状*/
	width:2px;
	height: 50px;
	background:#6c5050;
}






/* 各ページイメージ ---------------------------------------------- */

.about_top_img{
	width: 100%;
	height:200px !important;
	background:url("../img/about/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}


.philosophy_top_img{
	width: 100%;
	height:200px !important;
	background:url("../img/philosophy/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.trial_top_img{
	width: 100%;
	height:200px !important;
	background:url("../img/trial/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.event_top_img{
	width: 100%;
	height:200px !important;
	background:url("../img/event/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.scenery_top_img{
	width: 100%;
	height:200px !important;
	background:url("../img/scenery/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}

.contact_top_img{
	width: 100%;
	height:200px !important;
	background:url("../img/contact/main.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;
}






/* 共通バナー ---------------------------------------------- */

.contact_banner{
	margin-top:60px;	
}

.contact_banner img {
	width:100%;
	height:auto;
	
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
	
.contact_banner:hover img {
	opacity: .6;
}





/* ページ共通背景 ---------------------------------------------- */



.cmn_button{
    position: relative;
	width:200px;
	height:auto;
	text-align: center;
	text-decoration: none;
    margin: 0 auto;
}

.cmn_button a{
    display: block;
	width:200px;
    height: 50px;
    font-size: 15px;
    line-height: 100%;
    color:#FFFFFF;

	border: 2px solid #e09d34;
    background: #e09d34;
    border-radius: 25px;
    padding-bottom: 3px;

    box-sizing: border-box;

   -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: center; 
   align-items: center; 
   -webkit-justify-content: center; 
   justify-content: center;

   font-family: "a-otf-jun-pro", sans-serif;
   font-weight: 300;
   font-style: normal;
}


.cmn_button a:hover {
    background:#FFFFFF;

	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button a::after{
    position: absolute;

    top: 50%;
    right: 15px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 9px;
    height: 12px;
  
    background-color: #fff;

    clip-path: polygon(0 0, 100% 50%, 0 100%)
}

.cmn_button a:hover::after{
    background-color: #e09d34;
}



.cmn_button.button01 a{
	border: 2px solid #e09d34;
    background: #e09d34;
}

.cmn_button.button01 a:hover {
    background:#FFFFFF;
	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button.button01 a:hover::after{
    background-color: #e09d34;
}


.cmn_button.button02 a{
	border: 2px solid #da9695;
    background: #da9695;
}

.cmn_button.button02 a:hover {
    background:#FFFFFF;
	border: 2px solid #da9695;
    color:#da9695;
}

.cmn_button.button02 a:hover::after{
    background-color: #da9695;
}


.cmn_button.button03 a{
	border: 2px solid #8bbc5b;
    background: #8bbc5b;
}

.cmn_button.button03 a:hover {
    background:#FFFFFF;
	border: 2px solid #8bbc5b;
    color:#8bbc5b;
}

.cmn_button.button03 a:hover::after{
    background-color: #8bbc5b;
}


.cmn_button.button04 a{
	border: 2px solid #3cb8bd;
    background: #3cb8bd;
}

.cmn_button.button04 a:hover {
    background:#FFFFFF;
	border: 2px solid #3cb8bd;
    color:#3cb8bd;
}

.cmn_button.button04 a:hover::after{
    background-color: #3cb8bd;
}

.cmn_button.button05 a{
	border: 2px solid #e09d34;
    background: #e09d34;
}

.cmn_button.button05 a:hover {
    background:#FFFFFF;
	border: 2px solid #e09d34;
    color:#e09d34;
}

.cmn_button.button05 a:hover::after{
    background-color: #e09d34;
}




/* サブページ背景---------------------------------------------- */

.sub_page_bg{
	width: 100%;
	background:url("../img/common/sub_bg.jpg") top  no-repeat ; 
	 -moz-background-size: contain;
	-o-background-size: contain;
	 background-size: contain;
	 margin:0px auto 0px auto;
}


/* トップ背景---------------------------------------------- */
.tp_msg_bg{
	width: 100%;
	background:url("../img/top/top_msg_bg.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:0 20px;
     box-sizing:border-box;
}


.top_cont1{
	width: 100%;
	background:url("../img/top/bg01.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:30px 0px;
     box-sizing:border-box;
}

.top_cont2{
	width: 100%;
	background:url("../img/top/bg02.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:30px 0px;
     box-sizing:border-box;
}

.top_cont3{
	width: 100%;
	background:url("../img/top/bg03.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:30px 0px;
     box-sizing:border-box;
}

.top_cont4{
	width: 100%;
	background:url("../img/top/bg04.jpg") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;
	 margin:0px auto 0px auto;

     padding:30px 0px;
     box-sizing:border-box;
}




.top_cont1_inner,
.top_cont2_inner,
.top_cont3_inner,
.top_cont4_inner{
    width: 100%;
    height: auto;
    overflow: auto;
}


.top_cont1_img{
    float: none;
    width: 90%;
    margin-left: 10%;
    margin-bottom: 20px;
}


.top_cont1_img img{
    width: 100%;
    height: 300px;

    object-fit: cover;
    object-position: center;/* 100% 100%と同じ */
    border-radius: 150px 0 0 150px;
}

.top_cont1_txt{
    float: none;
    width: 100%;
    max-width: 1000px;
    margin: 0px auto;
    padding: 0px 30px;
    box-sizing: border-box;
}




.top_cont2_img{
    float: none;
    width: 90%;
    margin-right: 10%;
    margin-bottom: 20px;
}


.top_cont2_img img{
    width: 100%;
    height: 300px;

    object-fit: cover;
    object-position: center;/* 100% 100%と同じ */
    border-radius: 0 150px 150px 0;
}

.top_cont2_txt{
    float: none;
    width: 100%;
    max-width: 1000px;
    margin: 0px auto;
    padding: 0px 30px;
    box-sizing: border-box;
}




.top_cont3_img{
    float: none;
    width: 90%;
    margin-left: 10%;
    margin-bottom: 20px;
}


.top_cont3_img img{
    width: 100%;
    height: 300px;

    object-fit: cover;
    object-position: center;/* 100% 100%と同じ */
    border-radius: 150px 0 0 150px;
}

.top_cont3_txt{
    float: none;
    width: 100%;
    max-width: 1000px;
    margin: 0px auto;
    padding: 0px 30px;
    box-sizing: border-box;
}




.top_cont4_img{
    float: none;
    width: 90%;
    margin-right: 10%;
    margin-bottom: 20px;
}


.top_cont4_img img{
    width: 100%;
    height: 300px;

    object-fit: cover;
    object-position: center;/* 100% 100%と同じ */
    border-radius: 0 150px 150px 0;
}

.top_cont4_txt{
    float: none;
    width: 100%;
    max-width: 1000px;
    margin: 0px auto;
    padding: 0px 30px;
    box-sizing: border-box;
}










.top_cont_dl{
    width: 100%;
}

.top_cont_dl dt{
    text-align: center;
    font-size: 18px;
    line-height: 160%;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    margin-bottom: 10px;
}

.top_cont_dl dd{
    font-size: 15px;
    line-height: 160%;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 20px;
}



/* トップメッセージ---------------------------------------------- */


.tp_msg_01 {
    width: 100%;
}

.tp_msg_01 dl{
    margin-bottom: 20px;
}

.tp_msg_01 dt{
    position: relative;
    text-align: center;

    color: #6f5d27;
    font-size: 20px;
    line-height: 126%;
    padding-bottom: 20px;
    margin-bottom: 20px;

    font-family: "kiwi-maru", sans-serif;
    font-weight: 400;
    font-style: normal;

    box-sizing: border-box;
}


.tp_msg_01 dt::after {
    content: "";
    position: absolute;
    content: '';
    bottom: 0;
    left: 50%;
    width: 195px;
    height: 7px;
    box-sizing: border-box;
	background:url("../img/top/top_msg.png") center  no-repeat ; 
	 -moz-background-size: cover;
	-o-background-size: cover;
	 background-size: cover;

     transform: translateX(-50%);
}

.tp_msg_01 dd{
    width: 100%;
    max-width: 600px;

    margin: 0px auto 10px;

    text-align: left;

    font-size: 15px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}


/* TOP コンテンツリスト---------------------------------------------- */

.tp_flow{
    width: 100%;
    max-width: 640px;
    margin: 0px auto;
}

.tp_flow ul{
    overflow: auto;
    clear: both;
}

.tp_flow ul li{
    float: none;
    width: 100%;

    margin-right: 0%;
    margin-bottom: 20px;
    box-sizing: border-box;
    border: 2px solid #415cb2;
    padding: 20px;
    border-radius: 30px;

}

.tp_flow ul li:nth-child(3),
.tp_flow ul li:nth-child(2){
    margin-bottom: 20px;
}

.tp_flow ul li:last-child{
    margin-bottom: 0px;
}

.tp_flow ul li h2.h2_01{
    margin-bottom: 20px;
}

.tp_flow_img{
    width: 100%;
    margin-bottom: 20px;

    border-radius: 20px;

}

.tp_flow_img img{
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: 20% 0%;

    border-radius: 20px;
}

.tp_flow_btn{
    width: 100%;
    max-width: 200px;
    margin: 0px auto;

}

.tp_flow_btn a{
    position: relative;
    height: 40px;

    box-sizing: border-box;

    font-size: 16px;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
        
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center;    
    color: #fff;

    border-radius: 20px;

    background: linear-gradient(to right,#015eea, #00c0fa);
}

.tp_flow_btn a:hover{
    opacity: 0.8;
}


/* 共通お問い合わせ---------------------------------------------- */
.cmm_ctt_bg {
    width: 100%;
    height: 300px !important;
    background: url("../img/common/contact_bg.jpg") center no-repeat;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    margin: 0px auto 0px auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.cmm_ctt dt h2.h2_01{
    margin-bottom: 20px;
}

.cmm_ctt dd{
    text-align: center;

    font-size: 28px;
    font-weight: 700;
    line-height: 140%;
    color: #6f5d27;
    margin: 0px auto 20px;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.cmm_ctt dd p{
    font-size: 15px;
    font-weight: 400;
    color: #000;
    line-height: 120%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 10px;
}

.cmm_ctt_btn{
    width: 300px;
    margin: 0px auto;

}

.cmm_ctt_btn a{
    position: relative;
    height: 50px;

    width: 300px;

    box-sizing: border-box;

    font-size: 15px;
    padding-left: 35px;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
        
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; 
    align-items: center; 
    -webkit-justify-content: center; 
    justify-content: center;    
    color: #fff;

    border-radius: 25px;

    background: #e09d34;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.cmm_ctt_btn a:hover{
    opacity: 0.8;
}

.cmm_ctt_btn a::before{
    position: absolute;

    top: 50%;
    left: 30px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 22px;
    height: 15px;
  
	background:url("../img/common/mail_icon.png") center  no-repeat ; 

}


/* 新着情報---------------------------------------------- */


.tp_news{

}

.tp_news dl{
margin-bottom: 30px;
}

.tp_news dl dt{
font-size: 15px;
line-height: 160%;

float: none;
width: 100%;
clear: both;

font-family: "a-otf-jun-pro", sans-serif;
font-weight: 300;
font-style: normal;

letter-spacing: 0.03em;
margin-bottom: 10px;

}


.tp_news dl dd{
font-size: 15px;
line-height: 160%;
margin: 0 0 15px 0;
padding-left: 0px;
padding-bottom: 15px;


border-bottom: 1px dotted #999999;

font-family: "a-otf-jun-pro", sans-serif;
font-weight: 300;
font-style: normal;

}


.tp_news dl dd a{
    color: #000000;
    text-decoration: none;
}


.tp_news dl dd a:hover{
    color: #000000;
    text-decoration:underline;
}


.news_ttl{
    font-size: 2rem;
    line-height: 140%;
    border-bottom: 2px solid #333333;
    padding-bottom: 7px;
    margin-bottom: 15px;
}

.news_day{
    font-size: 1.4rem;
    line-height: 120%;
    margin-bottom: 15px;
    text-align: right;

}


.news_post{
    font-size: 1.7rem;
    line-height: 160%;
    margin-bottom: 70px;

}

.news_post h1{
    line-height: 200%;
}

.news_post h2{
    line-height: 190%;
}

.news_post h3{
    line-height: 180%;
}

.news_post h4{
    line-height: 170%;
}


.news_post_in{
}


.news_post_in_l{
    width: 76%;
    height: auto;
    float: left;

}


.news_post_in_l a{
    color: #004486;
    text-decoration: underline;
}


.news_post_in_l a:hover{
    color: #004486;
    text-decoration:none;
}

.news_post_in_l p::after{
    content: "";
    clear: both;
    display: block;
}



.news_post_in_l ul li{
	list-style-type: disc;
	margin-left: 20px;
	text-align: left;
}

.news_post_in_l ol li{
	margin-left: 20px;
	text-align: left;
}




.news_post_in_r{
    width: 20%;
    height: auto;
    float: right;

}


.news_post_in_r dl dt{
    background: #DA8E99;
    padding: 10px 15px;
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 120%;
    margin-bottom: 15px;
}


.news_post_in_r dl dd{
    margin-bottom: 35px;
}


.news_post_in_r dl dd:last-child{
    margin-bottom: 0px;
}



.news_post_in_r dl dd ul li{
    background:url("../img/common/list001.png") left 9px no-repeat;
    font-size: 1.6rem;
    line-height: 120%;
    margin-bottom: 14px;
    padding-left: 8px;
}


.news_post_in_r dl dd ul li a{
    color: #000000;
    text-decoration: none;
}

.news_post_in_r dl dd ul li a:hover{
    color: #000000;
    text-decoration:underline;
}

.news_post_in_r dl dd ul li:last-child{
    margin-bottom: 0px;
}


/* 保育園の紹介---------------------------------------------- */

.about_cont01{
    width: 100%;
    margin:0px auto 70px;
}

.about_cont01 ul{
    width: 100%;
    overflow: auto;
}

.about_cont01 ul li{
    float: left;
    width: 48.5%;

    margin-bottom: 3%;

    margin-right: 3%;
}


.about_cont01 ul li:nth-child(3n){
    margin-right: 3%;
}

.about_cont01 ul li:nth-child(2n){
    margin-right: 0%;
}

.about_cont01 ul li:last-child{
    margin-right: 0%;
    margin-bottom: 0px;
}





.about_cont02{
    width: 100%;
}

.about_cont02 table{
    width: 100%;
}

.about_cont02 th{
    width: 100px;


    font-size: 15px;
    color: #f3637e;
    background-color: #fff5f7;

    text-align: center;
    vertical-align: top;

    border-top: dotted 1px #ccc;

    padding: 10px 20px;
    box-sizing: border-box;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}

.about_cont02 td{

    
    font-size: 15px;

    border-top: none;

    padding: 10px 20px;
    box-sizing: border-box;

    border-top: dotted 1px #ccc;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

}


.about_cont02 tr:last-child th,
.about_cont02 tr:last-child td{
    border-bottom: dotted 1px #ccc;
}
/* 保育理念・保育方針---------------------------------------------- */

.philosophy_cont01{
    width: 100%;


    padding:20px 20px 30px;    
    box-sizing: border-box;

    border: 6px solid #dfc157;
    background-color: #fff;
    border-radius: 20px;
    
    margin: 0px auto 70px;
}

.philosophy_cont01 h3.h3_01{
    margin-bottom: 20px;

}

.philosophy_cont01_txt{
 
    font-size: 18px;
    line-height: 180%;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;
}


.philosophy_cont02{
    width: 100%;
}


.philosophy_cont02 dt{
    width: 100%;

    font-size: 16px;
    color: #ffffff;
    text-align: center;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding: 15px;
    box-sizing: border-box;

    border-radius: 500px;

    background-color: #ef7f92;
    margin-bottom: 20px;
}

.philosophy_cont02 dd{
    width: 100%;

    font-size: 15px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;



    margin-bottom: 40px;
}





/* 体験教室---------------------------------------------- */

.trial_cont01{
    font-size: 15px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
    
    margin-bottom: 70px;
}

.trial_cont01 span.highlighter{
    padding: 0px 5px;
    background: linear-gradient(transparent 70%, #fad8de 70%);
}

.trial_cont01 span.strong{
    color: #ef7f92;
    font-weight: 600;
}


.trial_cont02{
    width: 100%;
    margin-bottom: 70px;
}


.trial_cont02 dt{
    width: 100%;

    font-size: 16px;
    color: #ffffff;
    text-align: center;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding: 15px;
    box-sizing: border-box;

    border-radius: 500px;

    background-color: #ef7f92;
    margin-bottom: 20px;
}

.trial_cont02 dd{
    width: 100%;

    font-size: 15px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    margin-bottom: 40px;
}


.trial_cont02_title{
    margin-bottom: 10px;

}


.trial_cont02_title span{
    position: relative;
    color: #ef7f92;

    font-size: 16px;
    line-height: 140%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;

    padding-left: 40px;
    box-sizing: border-box;
}

.trial_cont02_title span::before{
    position: absolute;

    top: 50%;
    left: 0px;
  
    transform: translateY(-50%);
  
    content: '';
  
    width: 30px;
    height: 3px;
  
    background-color: #ef7f92;
}



.trial_cont02_txt{
    font-size: 15px;
    line-height: 180%;
    
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


.trial_cont03{
    width: 100%;
    margin-bottom: 20px;
}


.trial_cont03 li{
    float: left;
    width: 49%;

    margin-right: 2%;
    margin-bottom: 2%;
    
}

.trial_cont03 li:nth-child(2n){

    margin-right: 0%;
}

.trial_cont03 img{
    width: 100%;
}




/* 年間行事---------------------------------------------- */

.event_cont01{
    width: 100%;
    margin-bottom: 70px;
}

.event_cont01 table{
    width: 100%;
}


.event_cont01 tr:nth-child(2n + 1){
    background-color: #fff5f7;
}

.event_cont01 th{
    width: 70px;
    padding: 10px 15px;


    font-size: 15px;
    line-height: 180%;
    text-align: right;
    color: #f3637e;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    box-sizing: border-box;
}

.event_cont01 td{
    padding: 10px 15px;

    font-size: 15px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;

    box-sizing: border-box;
}




.swiper-container {
    position: relative;
    overflow: hidden;
    width: 100%;

    margin-bottom: 40px;
  }
  .swiper-container.visible {
    overflow: visible;
  }

  .swiper-slide div{
    text-align: center;
  }

  .swiper-slide div img{
    margin: 0px auto;
    width: 250px;
    height: 250px;
    object-fit: cover; /* この一行を追加するだけ！ */
  }


/* 保育園での風景---------------------------------------------- */

.scenery_cont01{
    width: 100%;
}


.scenery_cont01 li{
    position: relative;

    box-sizing: border-box;
    padding-bottom: 60px;
    margin-bottom: 70px;
}

.scenery_cont01 li::after{
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 100%;
    height:20px;
    box-sizing: border-box;
	background:url("../img/scenery/kugiri.png") center  no-repeat ; 
	 -moz-background-size: contain;
	-o-background-size: contain;
	 background-size: contain;

}

.scenery_cont01_img{
    max-width: 800px;
    width: 100%;

    margin: 0px auto 20px;
}

.scenery_cont01_img img{
    width: 100%;
}

.scenery_cont01_txt{
    font-size: 15px;
    line-height: 180%;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}



/* お問い合わせ---------------------------------------------- */


.contact_cont01{
    width: 100%;


    padding:20px 20px 30px;    
    box-sizing: border-box;

    border: 6px solid #dfc157;
    background-color: #fff;
    border-radius: 20px;
    
    margin: 0px auto 70px;
}

.contact_cont01 h3.h3_01{
    margin-bottom: 20px;

}

.contact_cont01_txt{
 
    font-size: 15px;
    line-height: 180%;
    text-align: center;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}


.contact_cont01_txt p{
 
    font-size: 20px;
    color: #ef7f92;

    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 600;
    font-style: normal;
}



#contact-f{
	width:100%;
	height:auto;
	margin-bottom:40px;
}

#contact-f table{
	width:100%;
	height:auto;
	border-top:1px solid #cccccc;
}


#contact-f th{
	font-size:14px;
	border-collapse:collapse;

	border-bottom:none;
	text-align:left;
	font-weight:bold;
	color:#333;
	
	width:100%;
	display:block;
	padding:15px 10px 15px 10px;	
	box-sizing:border-box;


}

#contact-f td{
	font-size:14px;
	border-collapse:collapse;
	text-align:left;
	border-bottom:1px solid #cccccc;

	width:100%;
	display:block;
	padding:0px 10px 10px 10px;
	box-sizing:border-box;
	background:url(../img/contact/bg.png) repeat;
}


#contact-f span{
	color:#F00;
	font-size:12px;

}

.with-form1{
	width:100%;
	margin-right:5px;
	padding:5px;
	border:1px solid #CCC;
	box-sizing:border-box;

	filter:alpha(opacity=70); /* IE*/
	-moz-opacity: 0.7; /* Firefox*/
	opacity: 0.7; /* SafariやOpera*/
}

.with-form3{
	width:280px;
    height: 35px !important;

	padding:5px;
	border:1px solid #CCC;
	padding:5px;
}




.margin-r1{
	margin-right:5px;
}

.margin-r2{
	margin-right:15px;
}


.f_txt01{
    text-align: center;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 120%;
}

.f_txt01 a{
    color: #000000;
    text-decoration: none;
}

.f_txt01 a:hover{
    color: #000000;
    text-decoration:underline;
}


#form-center{
	margin-left:0 !important;
	margin-top:20px;
	text-align:center;
}

input:focus {
    border:solid 1px #EEA34A;
}

textarea:focus {
    border:solid 1px #EEA34A;
}




input.submit_button {
	width:120px;
	height:auto;
	padding:10px 0;
    font-size: 1.2em;
    background-color:#697489;
    color:#FFF;
	font-weight:bold;
    border-style: none;
	text-align:center;
	font-size:15px;

    /*角丸*/
	-webkit-border-radius: 3px;     /* for Safari and Chrome */
	moz-border-radius: 3px;    /* for Firefox */
	-o-border-radius: 3px;  /* when Opera Presto 2.3 or later is released */
	-khtml-border-radius:3px;   /* Linux browsers */
	border-radius: 3px;     /* CSS3 */
     behavior: url(css/border-radius.htc); /* IE用 */
    /*角丸*/

}

input.submit_button:hover {
	opacity: 0.7;
	filter: Alpha(opacity=70); 
}







#contact-f select {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    text-indent: 0.5em;
    background:#FAFAFA;
    height: 20px;

    font-size: 13px;
    vertical-align: middle;
    border:1px solid #CCC;
}




#contact-f input[type=radio],
#contact-f input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}
#contact-f input[type=radio] + label,
#contact-f input[type=checkbox] + label {
    position: relative;
     
    display: inline-block;
    margin-right: 5px;
     
    font-size: 14px;
    line-height: 30px;
     
    cursor: pointer;
}
 
@media (min-width: 1px) {
#contact-f input[type=radio],
#contact-f input[type=checkbox] {
        display: none;
        margin: 0;
    }
#contact-f input[type=radio] + label,
#contact-f input[type=checkbox] + label {
        padding: 0 0 0 24px;
    }
#contact-f input[type=radio] + label::before,
#contact-f input[type=checkbox] + label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
         
        background: #FFF;
    }
#contact-f input[type=radio] + label::before {
        border: 2px solid #ccc;
        border-radius: 30px;
    }
#contact-f input[type=checkbox] + label::before {
        border: 2px solid #ccc;
    }
#contact-f input[type=radio]:checked + label::after,
#contact-f input[type=checkbox]:checked + label::after {
        content: "";
        position: absolute;
        top: 50%;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
#contact-f input[type=radio]:checked + label::after {
        left: 5px;
         
        width: 8px;
        height: 8px;
        margin-top: -4px;
         
        background:#06C;
        border-radius: 8px;
    }
#contact-f input[type=checkbox]:checked + label::after {
        left: 3px;
         
        width: 16px;
        height: 8px;
        margin-top: -8px;
         
        border-left: 3px solid #E71063;
        border-bottom: 3px solid #E71063;
         
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

/* 個人情報保護方針---------------------------------------------- */


.privacy{
}


.privacy dt {
    font-size:16px;
    line-height: 160%;

    margin-bottom: 5px;

    font-family: noto-sans,sans-serif;
    font-weight: 700;
    font-style: normal;
}


.privacy dd {
    font-size:14px;
    line-height: 150%;
    margin-bottom: 25px;

    font-family: noto-sans,sans-serif;
    font-weight: 500;
    font-style: normal;
}


/* よくある質問---------------------------------------------- */

.faq_cont{
    width: 100%;
    max-width: 1100px;

    margin: 0px auto;


}

.faq_cont dt{
    position: relative;
    width: 100%;

    padding: 10px 10px 20px 60px;
    box-sizing: border-box;

    font-size: 16px;
    line-height: 100%;
    border-bottom: 1px solid #d7d6d6;

    margin-bottom: 15px;
    
}

.faq_cont dt::before{
    position: absolute;
    top: 0px;
    left: 0px;

    text-align: center;
    padding-top: 10px;
    box-sizing: border-box;

    width: 45px;
    height: 45px;

    content: 'Q';

    font-size: 24px;
    color: #fff;

    background-color: #2c4cb2;
    border-radius: 50%;
}



.faq_cont dd{

    background-color: #ebf0f4;

    font-size: 16px;
    padding: 20px 20px;
    box-sizing: border-box;
    margin-bottom: 30px;

    border-radius: 5px;
    
}



}
