
/* ------------------------------　　
custom.css（codex生成）をベースにここで整える。
------------------------------ */

.acms-admin-form-width-medium, .acms-admin-form-edit input.acms-admin-form-width-medium,input#entry-file-name{
  min-width: 300px;
}
#entry-file-name-display input{
  min-width: 300px;
}
tr#entry-file-name-display{
  display: table-row !important;
}

/* ------------------------------　　
  共通
------------------------------ */
body.TopPage{
  background: url("/themes/momoyama@nangoku_u@utsuwaMin/images/background.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-attachment: fixed;
}
@media (max-width: 599px){
  body.TopPage{
    background:none;
  }
  body.TopPage::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
  
    background-image: url("/themes/momoyama@nangoku_u@utsuwaMin/images/background.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
}
.header{
  background:
  linear-gradient(
    rgba(64, 163, 72, 0.17),
    rgba(64, 163, 72, 0.17)
  ),
  #fff;
}
.header-title{
  margin-left: 20px;
}
.header-wrap {
  background: #fff;
  margin-bottom: -4.5rem;
}
.TopEntry__outWrap{
  padding-top: 0px;
}

/* ------------------------------　　
  TOP
------------------------------ */

@media (min-width: 600px){

.mosaic__content .entry-text-unit p{
  background: #fff;
  width: 520px;
  height: 520px;
  margin: 0 auto;
  padding: 100px;
  border-radius: 999px;
  line-height: 2;
  text-align: center;
  box-sizing: border-box;
}

}
.custom_bgColor h2.bgNone{
  /* 白フチ */
  -webkit-text-stroke: 10px #fff;
  
  /* フチを背面、文字色を前面に描く */
  paint-order: stroke fill;
}
.custom_bgColor.mosaic__content .linkBtnWrap{
  margin-top: -150px;
}

.Top01__OutWrap .AccentOutWrap{

}

.Top01__OutWrap .AccentOutWrap .AccentText{
  font-size: 16px;
}

@media (max-width: 599px){
  .TopPage .bubble .b01,.TopPage .bubble .b02,.TopPage .bubble .b04 {
    display: none;
  }
  .mosaic{
    background: #fff;
  }
}

/*  こだわり
------------------------------ */
@media (min-width: 600px){

 .TopPage .Top01__OutWrap .column-media-auto:nth-of-type(2) {
    width: clamp(340px, 40vw, 520px);
    margin: 0;
    float: left;
    /* margin-left: calc(50% - 50vw); */
    margin-left: -10vw;
    margin-right: -10vw;
    position: relative;
    z-index: 2;
}
  .TopPage .Top01__OutWrap .AccentOutWrap{
    background: #fff;
    width: 480px;
    height: 480px;
    margin: 0 auto;
    padding: 90px;
    border-radius: 999px;
    line-height: 2;
    text-align: center;
    box-sizing: border-box;
    margin-top: 0px;
    margin-left: 30vw;
    margin-top: -180px;
    }
  .TopPage .Top01__OutWrap .AccentOutWrap.custom {
    margin-top: -400px;
    margin-left: 25vw;
    z-index: 999;
  }
  .TopPage .Top01__OutWrap .column-media-auto:nth-of-type(4) {
      width: clamp(340px, 40vw, 520px);
      margin: 0;
      margin-top: -25vw;
      float: right;
      margin-right: -10vw;
      margin-left: -10vw;
      position: relative;
      z-index: 2;
  }
}

@media (max-width: 599px){
  .TopPage .Top01__OutWrap,.TopPage .Top02__OutWrap{
    background: none;
  }
}

/*  施設紹介と1日
------------------------------ */
@media (min-width: 600px){
  .TopPage .TopShisetsu1day .GroupLink__list:nth-of-type(1) {
    justify-content: flex-start; 
  }
  .TopPage .TopShisetsu1day .GroupLink__list:nth-of-type(2) {
    justify-content: flex-end;    
    margin-top: -400px;
    }
  
  .TopPage .TopShisetsu1day .GroupLink__linkOut{
    background: none;
    max-width: 450px;
  }
}

/* ------------------------------　　
  入園をお考えの方へ
------------------------------ */

.TopNyuen__outWrap{
  background-size: cover;
  background-position: center;
  padding: 80px 20px;
}

.TopNyuen__innerWrap{
  width: min(600px, 80vw);
  aspect-ratio: 1 / 1; /* 幅と高さを同じにする */
  margin: 0 auto;
  border-radius: 50%;
  background: #edf8ee;
  
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  
  text-align: center;
}
.TopPage .TopNyuen__innerWrap h2.bgNone{
  margin: 0 0 20px;
  font-size: 36px;
  color: #3b271c;
  -webkit-text-stroke: 0px;
  paint-order: stroke fill;
} 

@media (max-width: 599px){
  .TopNyuen__innerWrap{
    border-radius: 0;
    width: 100%;
  }
  .TopNyuen__outWrap{
   padding: 0; 
  }
  
}

/* ------------------------------　　
  入園をお考えの方へ
------------------------------ */

.TopShokuin_outWrap{
  background-size: cover;
  background-position: center;
  padding: 80px 20px;
}

.TopShokuin_outWrap .AccentOutWrap{
  width: min(450px, 80vw);
  aspect-ratio: 1 / 1; /* 幅と高さを同じにする */
  margin: 0 auto;
  border-radius: 50%;
  background: #fff;
  
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-left: 12vw;
  position: relative;
  z-index: 55555;

}
.TopPage .TopShokuin_outWrap .AccentOutWrap h2.AccentTitle__text{
  margin: 0 0 20px;
  font-size: 36px;
  color: #3b271c;
  -webkit-text-stroke: 0px;
  paint-order: stroke fill;
} 
.TopPage .TopShokuin_outWrap .AccentOutWrap .AccentText{
  font-size: 16px;
  
}

@media (min-width: 600px){
  .TopShokuin_img{
    position: relative;
    max-width: min(60vw, 800px);
    float: right;
   margin-right: -15vw;
   margin-top: -42vw;
  }
}


.FooterBefore__img{
 margin-bottom: -220px; 
}
/* ------------------------------　　
  一覧　▼▼▼
------------------------------ */
.page-title-filter{
  background: none;
}
.page-title-en{
  display: none;
}
.page-title{
  font-size: 64px;
  color: #40A348;
}
@media (max-width: 599px){
  .page-title{
  font-size: 10vw;
  letter-spacing: -0.08em;
}
}
/* 園児の生活カテゴリーだけに適用 */
.Category__environment .page-title-wrapper {
  position: relative;
  height: clamp(260px, 18.4vw, 375px);
  overflow: hidden;

  background-position: center;
  background-size: cover;
}

/* 白い半円 */
.Category__environment .page-title-wrapper::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: -75px;
  width: min(700px, calc(100% - 32px));
  height: clamp(105px, 15vw, 285px);

  background: #fff;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  transform: translateX(-50%);
}
@media (max-width: 599px){
  .Category__environment .page-title-wrapper::after {

  bottom: 0px;
  height: clamp(105px, 12vw, 185px);

  }
}
/* 見出しを半円より手前に置く */
.Category__environment .page-title-inner {
  position: absolute;
  z-index: 2;
  inset: 0;

  display: flex;
  align-items: flex-end;
  justify-content: center;
}

/* 見出しの位置 */
.Category__environment .page-title-inner .acms-container {
  width: 100%;
  padding-bottom: 12px;
  text-align: center;
}

.Category__environment .page-title {
  position: relative;
  margin: 0;
  line-height: 1.2;
}

/*  一覧ナビ
------------------------------ */
.guideTextFirstEntry{
 background: none; 
}
.IndexPageNavi__ul{
  display: flex;
  gap: 15px;
  justify-content: center;
}
.IndexPageNavi__ul a,.IndexPageNavi__ul a:link,.IndexPageNavi__ul a:visited{
  color: #3B281A;
  background: #E8F4E9;
  border: 1px solid #E8F4E9;

  border-radius: 16px;  
  padding: 1em 2em;
  min-width: 160px;
  box-sizing: border-box;
  transition: all 400ms 0s ease;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
}
.IndexPageNavi__ul a:hover{
  border: 1px solid #40A348;
}
.IndexPageNavi__ul li{
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  line-height: 1.3;
  align-self: center;
}
@media (max-width: 599px){
  .IndexPageNavi__ul {
    margin: 0 -15px;
  flex-wrap: wrap;
  flex-basis: 50%;
}
  .IndexPageNavi__ul a,.IndexPageNavi__ul a:link,.IndexPageNavi__ul a:visited{
  flex-basis: 45%;
  padding: 1em 0.5em;
}
.IndexPageNavi__ul li{
font-size: 16px;}
  .IndexPageNavi__ul li small{
    font-size: 12px;
  } 
}

/* ------------------------------　　
  一覧　▲▲▲
------------------------------ */




/* ------------------------------　　
  詳細　エントリー ▼▼▼
------------------------------ */

/*  見出しフォント
------------------------------ */
.acms-page-header .entry-title,.entry-style h2,.entry-style h3,.entry-style h2 span.bold,.entry-style h3 span.bold,.summaryEntryTitle,.page-title-wrapper .page-title,h2.categoryTitle,.telBtn,.main-slider-main-copy,.main-slider-side-copy,span.maxbig span.bold,span.bold span.maxbig,.page-description,.AccentTextHeader,.entry-style .AccentTitle__wrap .AccentTitle__text,.AccentTitle__deco,.entry-header-title,.media-title,.entry-style .entry-text-unit h4,.entry-style .GroupLink__title,.global-nav-item,.cta-round-title,.section-vertical-text,.card-title,.card-bordered-title,.section-horizontal-heading-side,.headline-text,.section-vertical-heading,.section-horizontal-heading,.section-horizontal-lead{
font-family: "Zen Maru Gothic", sans-serif;
font-weight: 700;
}


h1.entryTitle{
  font-size: 56px;
  text-align: center;
}
@media (max-width: 599px){
  h1.entryTitle{
  font-size: 9.5vw;
  line-height: 1.2;
  letter-spacing: -0.08em;
}
}
.entry-header-title::before{
  background: none;
}

.entry-style h2 {
  color: #40A348;
    border-bottom: none;
    text-align: center;

}
@media (min-width: 600px){
  .entry-style .entry-text-unit h2 {
    font-size: 48px;
  }
}
.entry-style .entry-text-unit h3{
  border-bottom : none;
  text-align: center;
}
@media (min-width: 600px){
  .entry-style .entry-text-unit h3{
    font-size: 24px;
  }
}
.entry-style .entry-text-unit h4{
  border-bottom: none;
}
@media (min-width: 600px){
  .entry-style .entry-text-unit h4{
    font-size: 20px;
    
  }
  
}


/* ------------------------------　　
  詳細　エントリー ▼▼▼
------------------------------ */




/* ------------------------------　　
  footer
------------------------------ */
.footer{
 background: #E8F4E9; 
 position: relative;
 z-index: 555;
}

@media (max-width: 599px){
  .FooterBefore__img {
      margin-bottom: -140px;
  }
}