@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200");
/* レイアウト */
@media screen and (max-width: 768px) {
  .page-visual {
    display: none;
  }
  .mainblock {
    padding-bottom: 2em;
  }
}
@media print, screen and (min-width: 769px) {
  .pagetitle img {
    margin: auto;
  }
}
/* カスタム投稿：共通デザイン */
@media print, screen and (min-width: 769px) {
  .mainblock,
.block-pagination {
    margin-inline: 19.3170731707%;
  }
}
.entry-name {
  font-size: clamp(18px, 1.3658536585vw, 28px);
  width: 100%;
  font-weight: normal;
}

h3.entry-name {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}

.entry-time {
  min-width: 5.6em;
}

.entry-header {
  margin-block: 2em;
}

.excerpt {
  margin-block: 2em;
}
.excerpt:last-child {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
.excerpt a {
  display: flex;
  flex-wrap: wrap;
  text-decoration: none;
  color: #212529;
}

@media print, screen and (min-width: 769px) {
  .entry-date {
    min-height: 300px;
  }
}
.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

@media print, screen and (min-width: 769px) {
  ul.page-numbers {
    margin-top: 5em;
  }
}
@media screen and (max-width: 768px) {
  ul.page-numbers {
    margin-block: 2.5em;
    justify-content: space-evenly;
    width: 90%;
  }
}
.page-numbers li {
  border-radius: 100%;
  background-color: rgba(198, 156, 109, 0.7);
}
.page-numbers li a,
.page-numbers li span {
  color: #fff;
  font-weight: 600;
}
.page-numbers li:has(> .current) {
  background-color: #c69c6d;
}

.single-pagination {
  font-weight: 500;
  color: #c69c6d;
  font-family: "Noto Sans JP", sans-serif;
}

/* アコーディオン部分 */
.ac-container {
  -webkit-margin-before: 16.7058823529%;
          margin-block-start: 16.7058823529%;
  margin-bottom: 10%;
  font-family: "M PLUS Rounded 1c", sans-serif;
  /*2階層目：設定*/
}
.ac-container.block-pagination li {
  padding: 0.5em;
}
@media print, screen and (min-width: 769px) {
  .ac-container {
    position: relative;
  }
  .ac-container::after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    top: 2.8em;
    background-image: repeating-linear-gradient(90deg, #ccc, #ccc 10px, transparent 10px, transparent 20px);
    background-position: left top;
    background-repeat: repeat-x;
    background-size: 100% 4px;
    z-index: 10;
  }
  .ac-container > .backnumber {
    position: relative;
    z-index: 20;
    display: block;
    cursor: pointer;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    aspect-ratio: 127/15;
    width: 39.7647058824%;
    margin: auto;
    background-image: repeating-linear-gradient(90deg, #ccc, #ccc 10px, transparent 10px, transparent 20px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 4px;
  }
}
.ac-container .year-archive {
  display: block;
  margin-top: 2em;
}
.ac-container .year-section {
  list-style: none;
  align-items: center;
}
.ac-container .year-section > label {
  position: relative;
}
.ac-container .year-section > label:before {
  position: absolute;
  content: "";
  display: block;
  height: 0.8em;
  width: 0.8em;
  background: #ccc;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
.ac-container input {
  display: none;
}
@media print, screen and (min-width: 769px) {
  .ac-container {
    /**1階層目：アコーディオン動き*/
  }
  .ac-container .ac-area {
    background: rgba(255, 255, 255, 0.5);
    margin-top: -1px;
    overflow: hidden;
    height: 0px;
    position: relative;
    z-index: 10;
    transition: height 0.3s ease-in-out, box-shadow 0.6s linear;
  }
  .ac-container input:checked ~ .ac-area {
    transition: height 0.5s ease-in-out, box-shadow 0.1s linear;
    height: 100%;
  }
}
@media screen and (max-width: 768px) {
  .ac-container > .backnumber {
    font-size: clamp(24px, 6.9333333333vw, 26px);
    display: block;
    width: 100%;
    background-color: #ccc;
    border: 1px solid #ccc;
    border-radius: 10px 10px 0 0;
    text-align: center;
    line-height: 2em;
    color: #fff;
  }
  .ac-container .year-archive {
    border: 1px solid #ccc;
    border-top: none;
    margin-top: 0;
    padding-top: 0.5em;
    font-size: clamp(24px, 6.9333333333vw, 26px);
  }
  .ac-container .year-section {
    line-height: 2em;
  }
}
.ac-container .year-section label {
  position: relative;
  z-index: 20;
  display: block;
  cursor: pointer;
  white-space: nowrap;
  -webkit-padding-start: 1.2em;
          padding-inline-start: 1.2em;
}
.ac-container .year-section .archive-list {
  padding: revert;
  flex-wrap: wrap;
}
.ac-container .year-section .archive-list {
  margin-top: -1px;
  overflow: hidden;
  height: 0px;
  position: relative;
  z-index: 10;
  transition: height 0.3s ease-in-out, box-shadow 0.6s linear;
}
.ac-container .year-section input:checked ~ .archive-list {
  transition: height 0.5s ease-in-out, box-shadow 0.1s linear;
  height: 100%;
}
.ac-container .year-section .archive-list li {
  margin: 0.5rem;
}
.ac-container .year-section .archive-list li a:before {
  content: "";
  display: inline-block;
  width: 0.3em;
  aspect-ratio: 1/1;
  background: #212529;
  border-radius: 100%;
}
@media print, screen and (min-width: 769px) {
  .ac-container .year-section .archive-list {
    font-size: clamp(16px, 1.0731707317vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .ac-container .year-section .archive-list {
    font-size: 0.9em;
  }
}

/* アルバム：album */
.page-album {
  @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap");
  font-family: "Noto Sans JP", sans-serif;
}
.page-album .entry-name {
  -webkit-padding-after: 0.5em;
          padding-block-end: 0.5em;
  -webkit-margin-after: 1.5em;
          margin-block-end: 1.5em;
  text-align: center;
  border-image-source: linear-gradient(0deg, #ed1c24 4px, rgba(0, 0, 0, 0) 0);
  border-image-slice: fill 0;
}
.page-album .entry-text p {
  margin-bottom: 0;
}
.page-album .card {
  background-color: #fffcdb;
  font-size: clamp(16px, 0.8780487805vw, 20px);
  font-family: "Noto Sans JP", sans-serif;
}
@media print, screen and (min-width: 769px) {
  .page-album .mainblock {
    margin-inline: 19.3170731707%;
  }
}
.page-album .entry-text {
  display: grid;
  gap: 1.5em;
  grid-template-columns: repeat(2, 1fr);
}
.page-album .card {
  padding-block: 8.3333333333%;
  padding-inline: 8.3333333333%;
}
.page-album .card img {
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page-album .entry-text {
    display: flex;
    flex-direction: column;
    gap: 1.5em 0;
  }
  .page-album .card {
    padding-block: 1.5em;
    padding-inline: 9.7222222222%;
    padding-block: 5.5555555556%;
  }
  .page-album .card img {
    margin: auto;
  }
}
.page-album .ac-container .year-section label:hover,
.page-album .ac-container .archive-list li a:hover {
  color: #ed1c24;
}
.page-album .ac-container .year-section > label:before {
  background: url(../images/post/album_mark_pc.png) center center no-repeat;
  background-size: contain;
}
@media print, screen and (min-width: 769px) {
  .page-album .ac-container::after {
    background-image: repeating-linear-gradient(90deg, #ed1c24, #ed1c24 10px, transparent 10px, transparent 20px);
  }
  .page-album .ac-container > .backnumber {
    background: url(../images/post/album_backnumber_pc.png) no-repeat center center;
    background-size: contain;
  }
}
@media screen and (max-width: 768px) {
  .page-album .ac-container > .backnumber {
    background-color: #ed1c24;
    border-color: #ed1c24;
  }
  .page-album .ac-container .year-archive {
    border-color: #ed1c24;
  }
}

/* 園だより：school_letter */
.page-school_letter {
  @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap");
  font-family: "Noto Sans JP", sans-serif;
}
.page-school_letter .entry-name {
  -webkit-padding-after: 0.5em;
          padding-block-end: 0.5em;
  -webkit-margin-after: 1.5em;
          margin-block-end: 1.5em;
  text-align: center;
  background-image: repeating-linear-gradient(90deg, #1b1464, #1b1464 10px, transparent 10px, transparent 20px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 4px;
}
.page-school_letter .sec-title {
  color: #fff;
  background: url(../images/post/school_letter_sectitle_bg.png);
  font-size: clamp(22px, 1.3658536585vw, 28px);
  padding: 0.5em;
}
.page-school_letter .sec-text {
  font-size: clamp(16px, 1.0731707317vw, 22px);
  background-color: #fff;
  padding: 1.5em 1.5em;
}
.page-school_letter .sec-text p {
  margin-block: 0.3em;
}
@media print, screen and (min-width: 769px) {
  .page-school_letter .mainblock {
    border-image-source: linear-gradient(#fffcdb, #fffcdb);
    border-image-slice: fill 0;
    border-image-width: 1;
    border-image-outset: 1em 5.756097561vw;
    border-image-repeat: stretch;
    -webkit-padding-after: 7.7333333333%;
            padding-block-end: 7.7333333333%;
    background-color: #fffcdb;
  }
  .page-school_letter .pagetitle {
    border-image-source: linear-gradient(#fff, #fff);
    border-image-slice: fill 0;
    border-image-width: 1;
    border-image-outset: 1em 100vw;
    border-image-repeat: stretch;
  }
  .page-school_letter .entry-name {
    margin-block: 2.5em 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .page-school_letter .sec:last-child {
    -webkit-margin-after: inherit;
            margin-block-end: inherit;
  }
  .page-school_letter .mainblock {
    border-image-source: linear-gradient(#fffcdb, #fffcdb);
    border-image-slice: fill 0;
    border-image-width: 1;
    border-image-outset: 1em 100vw;
    border-image-repeat: stretch;
  }
}
.page-school_letter .ac-container .year-section label:hover,
.page-school_letter .ac-container .archive-list li a:hover {
  color: #0071bc;
}
.page-school_letter .ac-container .year-section > label:before {
  background: url(../images/post/school_letter_mark_pc.png) center center no-repeat;
  background-size: contain;
}
@media print, screen and (min-width: 769px) {
  .page-school_letter .ac-container::after {
    background-image: repeating-linear-gradient(90deg, #1b1464, #1b1464 10px, transparent 10px, transparent 20px);
  }
  .page-school_letter .ac-container > .backnumber {
    background: url(../images/post/school_letter_backnumber_pc.png) no-repeat center center;
    background-size: contain;
  }
}
@media screen and (max-width: 768px) {
  .page-school_letter .ac-container > .backnumber {
    background-color: #1b1464;
    border-color: #1b1464;
  }
  .page-school_letter .ac-container .year-archive {
    border-color: #1b1464;
  }
}

/* お知らせ　news */
.page-news .cat {
  font-size: 0.8em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #ccc;
  padding-inline: 0.5em;
  margin-inline: 0.5em;
  border-radius: 8px;
  color: #fff;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.page-news .cat-album {
  background-color: #8cc63f;
}
.page-news .cat-news {
  background-color: #f7931e;
}
.page-news .cat-school_letter {
  background-color: #ff7bac;
}

/* 乳幼児ブログ　nursery */
body.post-type-archive-nursery > #layout-body .page-visual-nursery {
  grid-column: 1/3;
  grid-row: 1/2;
  position: relative;
  z-index: 10;
  margin: 0;
}
body.post-type-archive-nursery > #layout-body .pagetitle-left {
  display: none;
}
@media screen and (max-width: 768px) {
  body.post-type-archive-nursery > #layout-body .page-visual-nursery {
    aspect-ratio: 751/603;
    display: block;
  }
}