/* ==========================================================================
   #トップページ
   ========================================================================== */
/* ## メインビジュアル (.p-mv-sub) */
.p-mv-sub {
  position: relative;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: calc(100vh - 140px);
  max-height: 1000px;
  padding: 0 30px 30px 30px;
}
.p-mv-sub__video-wrapper {
  position: absolute;
  top: -50px;
  right: 50px;
  bottom: 0;
  left: 50px;
  overflow: hidden;
  border-radius: 25px;
 
}
.p-mv-sub__video {
  width: 101%;
  height: 100%;
  object-fit: cover;
}
.p-mv-sub__content {
  position: absolute;
  top: 50%;
  left: 8%;
  transform: translateY(-50%);
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.p-mv-sub__en-catch {
  margin-bottom: 40px;
  font-family: 'Comic Sans MS', 'Chalkboard SE', 'Marker Felt', sans-serif;
  font-size: 5.2rem;
  line-height: 1.3;
  color: #2d2525;
  text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff, 1px 0 0 #fff, -1px 0 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff, 0 0 10px rgba(255, 255, 255, 0.8), 0 0 20px rgba(255, 255, 255, 0.6);
  transform: rotate(-5deg);
}
.p-mv-sub__jp-catch {
  display: inline-block;
  padding: 15px 30px;
  margin-bottom: 15px;
  font-size: 3.6rem;
  font-weight: 500;
  color: #ff6359;
  letter-spacing: 0.1rem;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 20px;
  text-shadow: none;
}
.p-mv-sub__name {
  display: inline-block;
  padding: 15px 30px;
  font-size: 4.2rem;
  font-weight: 500;
  color: #555;
  letter-spacing: 0.1rem;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 20px;
  text-shadow: none;
}
.p-mv-sub__name .char1 { color: #f19393; }
.p-mv-sub__name .char2 { color: #f9d64c; }
.p-mv-sub__name .char3 { color: #a4ca5c; }
.p-mv-sub__name .char4 { color: #82cccb; }
.p-mv-sub__name .char5 { color: #81a8d7; }
.p-mv-sub__name .char6 { color: #d095c8; }
.p-mv-sub__name .char7 { color: #f19393; }

/* ## 背景コンテナ */
.p-background-container {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.p-background-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../images/common/haikei.png');
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.6;
  z-index: 1;
  pointer-events: none;
}

/* ## 導入メッセージ (.p-top-message) */
.p-top-message {
  position: relative;
  z-index: 3;
  padding: 40px 20px;
}
.p-top-message__inner {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}
.p-top-message__title {
  font-size: 3.8rem;
  font-weight: 500;
  line-height: 2.2;
  letter-spacing: 0.5rem;
}
.p-top-message__title-text {
  padding-bottom: 5px;
  border-bottom: 5px dotted #f19393;
}

/* ## 園の特色（リード文） (.p-features) */
.p-features {
  padding: 0;
}
.p-features__inner {
  position: relative;
  z-index: 3;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
}
.p-features__lead {
  position: relative;
  z-index: 2;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2;
  text-align: center;
}

/* ## 特色アイテム (.c-feature-item) */
.c-feature-item {
  position: relative;
  padding: 30px 0;
}
.c-feature-item__inner {
  position: relative;
  z-index: 3;
  display: flex;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
  align-items: center;
  background-color: transparent;
}
.c-feature-item--reverse .c-feature-item__inner {
  flex-direction: row-reverse;
}
.c-feature-item__text-content {
  position: relative;
  z-index: 3;
  flex: 1 1 60%;
  padding: 50px;
  background-color: #fff;
  border-radius: 25px;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.08);
}
.c-feature-item__image-content {
  position: relative;
  z-index: 2;
  flex: 1 1 45%;
  border-radius: 0 15px 0 15px;
}
.c-feature-item__image-content img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 0 15px 0 15px;
}
.c-feature-item:not(.c-feature-item--reverse) .c-feature-item__image-content {
  margin-left: -40px;
}
.c-feature-item--reverse .c-feature-item__image-content {
  margin-right: -40px;
}
.c-feature-item--reverse .c-feature-item__image-content,
.c-feature-item--reverse .c-feature-item__image-content img {
  border-radius: 15px 0 15px 0;
}
.c-feature-item__title {
  margin-bottom: 20px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #df6767;;
}
.c-feature-item__text {
  margin-bottom: 30px;
  font-size: 1.6rem;
  line-height: 2;
}
.c-feature-item__button {
  display: inline-flex;
  gap: 15px;
  padding: 15px 30px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #333;
  background-color: #f9d64c;
  border-radius: 30px;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s, transform 0.3s;
}
.c-feature-item__button:hover {
  opacity: 0.8;
  transform: scale(1.03);
}
.c-feature-item__button::after {
  content: '›';
  font-size: 1.6rem;
  font-weight: bold;
}

/* ## 追加セクション (.p-addition-features) - ここから追加 */
.p-addition-features {
  position: relative;
  padding: 30px 0;
}
.p-addition-features__inner {
  position: relative;
  z-index: 3;
  display: flex;
  gap: 30px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 30px;
}
.p-addition-features .c-feature-item__text-content {
  flex: 1 1 auto; /* 横並びになるようにflexプロパティを調整 */
}
/* ここまで追加 */


/* ## アニメーション定義 */
@keyframes fluffy-background-float {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  25% { transform: translate(-48%, -53%) rotate(-0.5deg); }
  50% { transform: translate(-52%, -48%) rotate(0.5deg); }
  75% { transform: translate(-50%, -52%) rotate(0.2deg); }
  100% { transform: translate(-50%, -50%) rotate(0deg); }
}
@keyframes deco-float {
  0% { transform: translateY(0) translateX(0) rotate(0deg); }
  50% { transform: translateY(-15px) translateX(10px) rotate(5deg); }
  100% { transform: translateY(0) translateX(0) rotate(0deg); }
}

/* ## 背景の模様アイテム (.c-deco-item) */
.c-deco-item {
  position: absolute;
  z-index: -1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.8;
  animation: deco-float 8s ease-in-out infinite;
  pointer-events: none;
}
.c-deco-item--1 { width: 150px; height: 150px; top: 15%; left: 5%; background-image: url('../images/common/moyou_01.png'); animation-duration: 9s; }
.c-deco-item--2 { width: 180px; height: 180px; top: 25%; right: 5%; background-image: url('../images/common/moyou_04.png'); animation-duration: 12s; }
.c-deco-item--3 { width: 200px; height: 200px; top: 35%; right: 10%; background-image: url('../images/common/moyou_02.png'); animation-duration: 11s; }
.c-deco-item--4 { width: 120px; height: 120px; top: 45%; left: 40%; background-image: url('../images/common/moyou_05.png'); animation-duration: 8s; }
.c-deco-item--5 { width: 160px; height: 160px; top: 60%; left: 5%; background-image: url('../images/common/moyou_06.png'); animation-duration: 13s; }
.c-deco-item--6 { width: 100px; height: 100px; top: 75%; right: 10%; background-image: url('../images/common/moyou_08.png'); animation-duration: 7s; }
.c-deco-item--7 { width: 130px; height: 130px; top: 85%; left: 15%; background-image: url('../images/common/moyou_07.png'); animation-duration: 9s; }
.c-deco-item--8 { width: 90px; height: 90px; bottom: 5%; right: 15%; background-image: url('../images/common/moyou_03.png'); animation-duration: 6s; }
.c-deco-item--9 { width: 140px; height: 140px; bottom: 10%; left: 45%; background-image: url('../images/common/moyou_09.png'); animation-duration: 13s; }
.c-deco-item--10 { width: 170px; height: 170px; top: 50%; right: 35%; background-image: url('../images/common/moyou_10.png'); animation-duration: 10s; }

/* ==========================================================================
   #共通セクションコンポーネント (.c-top-section)
   ========================================================================== */
.c-top-section {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.c-top-section__inner {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
}
.c-top-section__header {
  position: relative;
  display: flex;
  margin-bottom: 40px;
  justify-content: center;
}
.c-top-section__title-wrapper {
  position: relative;
  text-align: center;
}
.c-top-section__title-wrapper::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 10%;
  z-index: -1;
  width: 220px;
  height: 110px;
  background-image: url('../images/common/titlebg.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: translate(-50%, -50%);
  animation: fluffy-background-float 18s ease-in-out infinite;
}
.c-top-section__en-title {
  display: block;
  margin-bottom: 5px;
  font-family: 'Caveat', cursive;
  font-weight: 600;
  color: #2d2525;
}
.c-top-section__jp-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #333;
  letter-spacing: 0.1em;
}
.c-top-section__archive-link {
  display: inline-flex;
  gap: 10px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #333;
  align-items: center;
}
.c-top-section__arrow-icon {
  position: relative;
  display: block;
  width: 32px;
  height: 32px;
  background-color: #f19393;
  border-radius: 50%;
}
.c-top-section__arrow-icon::after {
  content: '›';
  position: absolute;
  top: 40%;
  left: 50%;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  transform: translate(-50%, -50%);
}

/* ==========================================================================
   #セクションごとの個別スタイル
   ========================================================================== */
/* ## お知らせ */
.p-top-information {
  padding: 60px 0 0;
}
.p-top-information::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #fff;
  border-radius: 50% / 80px 80px 0 0;
}
.p-top-information::after {
  content: '';
  position: absolute;
  top: 40px;
  left: 0;
  z-index: -2; /* ::beforeより奥 */
  width: 100%;
  height: 100%;
  background-image: url('../images/common/haikei.png');
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.6;
  pointer-events: none;
}
.p-top-information .c-top-section__inner {
  padding: 20px 40px 0px;
}
.p-top-information .c-top-section__header {
  align-items: flex-end;
}
.p-top-information .c-top-section__title-wrapper::before {
  left: 10%;
}
.p-top-information .c-top-section__en-title {
  font-size: 4rem;
}
.p-top-information .c-top-section__archive-link {
  position: absolute;
  top: 110px;
  right: 0;
  bottom: 5px;
}

/* ## ブログ */
.p-top-blog {
  padding: 60px 0 0;
}
.p-top-blog::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  
}
.p-top-blog .c-top-section__inner {
  padding: 20px 40px;
}
.p-top-blog .c-top-section__header {
  align-items: flex-end; /* 【追加】お知らせと同様に下揃えに */
}
.p-top-blog .c-top-section__title-wrapper::before {
  left: 10%;
}
.p-top-blog .c-top-section__en-title {
  font-size: 3.6rem;
}
.p-top-blog .c-top-section__archive-link {
  /* margin-top: 15px; を削除 */
  position: absolute; /* 【追加】絶対配置でお知らせと揃える */
  top: 110px;
  right: 0;
  bottom: 5px;
}

/* ## Instagram */
.p-top-instagram {
  padding: 30px 0 80px;
}
.p-top-instagram::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #fff;
    border-radius: 50% / 0 0 80px 80px;
}
.p-top-instagram .c-top-section__inner {
  padding: 0 40px;
}
.p-top-instagram .c-top-section__body {
  margin-bottom: 40px;
}
.p-top-instagram .c-top-section__en-title {
  font-size: 3.6rem;
}
.p-top-instagram__footer {
  text-align: center;
}
.c-instagram-button {
  display: inline-flex;
  gap: 15px;
  padding: 15px 40px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  border-radius: 30px;
  background: linear-gradient(90deg, #f9a84a 0%, #f14b98 70%, #9056c7 100%);
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s;
}
.c-instagram-button::after {
  content: '›';
  font-size: 2rem;
  font-weight: bold;
}
/* ==========================================================================
   #投稿リスト & カード (お知らせ・ブログ共通)
   ========================================================================== */
.p-post-list {
  display: flex;
  justify-content: center;
  gap: 40px;
}
.p-post-list__item {
  width: calc(50% - 20px);
  max-width: 420px;
}
.c-post-card:hover .c-post-card__image img {
  transform: scale(1.05);
}
.c-post-card__image {
  margin-bottom: 25px;
  overflow: hidden;
  border-radius: 15px;
}
.c-post-card__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform 0.3s;
}
.c-post-card__body {
  text-align: center;
}
.c-post-card__date {
  position: relative;
  display: inline-block;
  margin-bottom: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.5rem;
  color: #555;
}
.c-post-card__date::after {
  content: '';
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 20px;
  height: 4px;
  background-color: #f19393;
  transform: translateX(-50%);
}
.c-post-card__title {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.8;
  color: #333;
}
.c-post-card__title span {
  display: inline-block;
  margin-bottom: 0.5em;
}

/* ==========================================================================
   #Slickカルーセル (お知らせ・ブログ共通)
   ========================================================================== */
.slick-slider {
  margin: 0 -15px;
}
.slick-slide {
  margin: 0 15px;
  padding-top: 40px;
}
.slick-list {
  padding-bottom: 50px !important;
}
.slick-arrow {
  position: absolute;
  top: 37%;
  z-index: 10;
  width: 40px;
  height: 40px;
  font-size: 0;
  background: transparent;
  border: none;
  transform: translateY(-50%);
  cursor: pointer;
}
.p-post-list .slick-arrow {
  width: 32px;
  height: 32px;
  background-color: #f19393;
  border-radius: 50%;
}
.slick-arrow::before {
  font-family: 'serif';
  font-size: 45px;
  color: #e15959;
  transition: opacity 0.3s;
}
/* 【PC用のスタイル】矢印アイコンの位置 */
.p-post-list .slick-arrow::before {
    position: absolute;
    /* ↓↓ PC表示で最適な値に調整してください ↓↓ */
    top: 19%;
    left: 35%;
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    line-height: 1;
}

/* ( ... slick-prev, slick-next のスタイル ... ) */


/* ==========================================================================
   #レスポンシブ設定 (共通)
   ========================================================================== */
@media screen and (max-width: 768px) {
  
  /* ( ... 他のレスポンシブスタイル ... ) */

  /* 【スマホ用のスタイル】矢印アイコンの位置を上書き */
  .p-post-list .slick-arrow::before {
    /* ↓↓ SP表示で最適な値に調整してください ↓↓ */
    top: 5%; /* 例: 少し上に調整 */
    left: 35%; /* 例: 少し左に調整 */
    font-size: 2.5rem; /* 例: 少し小さく調整 */
  }

  /* ( ... 他のレスポンシブスタイル ... ) */
}
.slick-arrow:hover::before {
  opacity: 0.7;
}
.slick-arrow.slick-disabled {
  opacity: 0;
  pointer-events: none;
  cursor: default;
}
.p-post-list .slick-prev {
  left: -50px;
}
.slick-prev::before {
  content: '‹';
}
.p-post-list .slick-next {
  right: -50px;
}
.slick-next::before {
  content: '›';
}
.slick-dots {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: inline-block;
  padding: 6px 15px;
  transform: translateX(-50%);
}
.slick-dots li {
  display: inline-block;
  margin: 0 5px;
}
.slick-dots li button {
  display: block;
  width: 10px;
  height: 10px;
  padding: 0;
  background-color: #aeaaaa;
  border: none;
  border-radius: 50%;
  text-indent: -9999px;
  transition: background-color 0.3s;
  cursor: pointer;
}
.slick-dots li.slick-active button {
  background-color: #f19393;
}

/* ==========================================================================
   #レスポンシブ設定 (共通)
   ========================================================================== */
@media screen and (max-width: 768px) {
  /* ## トップページ ## */
  .p-mv-sub { height: 60vh; }
  .p-mv-sub__video-wrapper { top: 15px; right: 15px; bottom: 15px; left: 15px; }
  .p-mv-sub__en-catch { margin-bottom: 15px; font-size: 2.8rem; }
  .p-mv-sub__jp-catch { padding: 8px 20px; font-size: 2.2rem; }
  .p-mv-sub__name { padding: 8px 20px; font-size: 2rem; }
  .p-top-message { padding: 40px 20px; }
  .p-top-message__title { font-size: 2.2rem; line-height: 1.8; }
  .p-features__lead { margin-bottom: 60px; font-size: 1.5rem; line-height: 1.8; text-align: left; }
  .p-features__lead br { display: none; }
  .c-feature-item { padding: 30px 0; }
  .c-feature-item__inner { flex-direction: column !important; padding: 0 20px; margin-bottom: 30px; }
  .c-feature-item:last-child .c-feature-item__inner { margin-bottom: 0; }
  .c-feature-item__text-content { width: 100%; margin-top: -50px; padding: 50px 25px 25px; flex-basis: auto; }
  .c-feature-item__image-content { width: 100%; margin: 0 !important; flex-basis: auto; }
  .c-feature-item__title { font-size: 2rem; margin-bottom: 15px; }
  .c-feature-item__text { font-size: 1.5rem; line-height: 1.8; margin-bottom: 25px; }
  .c-feature-item__text br { display: none; }
  .c-feature-item__button { width: 100%; padding: 12px; }
  .p-background-container { padding: 30px 0; overflow: visible; }
  .p-background-container::before { background-size: cover; }
  .c-deco-item { transform: scale(0.7); }
  
  /* ## 追加セクション (.p-addition-features) - ここから追加 */
  .p-addition-features {
    padding: 0;
  }
  .p-addition-features__inner {
    flex-direction: column;
    gap: 30px;
    padding: 0 20px;
  }
  .p-addition-features .c-feature-item__text-content {
    width: 100%;
    margin-top: 0;
    padding: 30px 25px;
  }
  /* ここまで追加 */
  
  /* ## お知らせ & ブログ 共通レスポンシブ設定 ## */
  .p-top-information .c-top-section__inner,
  .p-top-blog .c-top-section__inner {
    padding: 0 20px;
  }
  .p-top-information .c-top-section__header,
  .p-top-blog .c-top-section__header {
    flex-direction: column;
    gap: 25px;
        margin-bottom: 0px;
    align-items: center;
  }
  /* 【修正】ブログのボタンにも適用されるようにセレクタを共通化 */
  .p-top-information .c-top-section__archive-link,
  .p-top-blog .c-top-section__archive-link {
    position: static;
  }
  
  /* ## ブログ ## */
  .p-top-blog { padding: 30px 0; }
  
  /* ## Instagram ## */
  .p-top-instagram { padding: 30px 0 50px; }
  .p-top-instagram::before { border-radius: 0 0 50% / 40px; }
  .p-top-instagram .c-top-section__inner { padding: 0 20px; }
  .p-top-instagram .c-top-section__header { margin-bottom: 30px; }
  
  /* ## カルーセル ## */
  .p-top-information .p-post-list.slick-initialized,
  .p-top-blog .p-post-list.slick-initialized {
    display: block;
    gap: 0;
  }
  .p-top-information .p-post-list.slick-initialized .p-post-list__item,
  .p-top-blog .p-post-list.slick-initialized .p-post-list__item {
    width: 100%;
  }
  .p-top-information .slick-list,
  .p-top-blog .slick-list {
    padding-left: 15px;
    padding-right: 15px;
  }
  .slick-arrow { top: 38%; width: 30px; height: 30px; }
  .p-post-list .slick-arrow { width: 30px; height: 30px; }
  .p-post-list .slick-prev { left: 5px; }
  .p-post-list .slick-next { right: 5px; }
}

/* ==========================================================================
   #入園案内 (.p-admission) ※既存のスタイルがある場合は上書き・追記
   ========================================================================== */
.p-admission {
  position: relative;
  z-index: 1;
  padding: 80px 0;
  background-color: #fff;
}
.p-admission__inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
}
.p-admission__header {
  margin-bottom: 40px;
  text-align: center;
}
.p-admission__title-wrapper {
  position: relative;
  display: inline-block;
}
.p-admission__en-title {
  display: block;
  font-family: 'Caveat', cursive;
  font-size: 3.6rem;
  font-weight: 600;
  color: #2d2525;
}
.p-admission__jp-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #333;
  letter-spacing: 0.1em;
}

.p-admission-guides {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin-bottom: 60px;
}
.c-guide-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;
  max-width: 300px;
  padding: 20px;
  background-color: #fcf6d7;
  border-radius: 20px;
  transition: transform 0.3s;
}
.c-guide-card:hover {
  transform: translateY(-5px);
}
.c-guide-card__icon {
  margin-bottom: 15px;
}
.c-guide-card__icon img {
  width: 50px;
  height: auto;
}
.c-guide-card__title {
  font-size: 1.8rem;
  font-weight: bold;
  color: #333;
}

/* ▼▼▼ ここからが今回の主要な修正・追加箇所 ▼▼▼ */
.p-admission-content {
  display: flex;
  gap: 40px;
  align-items: stretch; /* 高さを揃える */
}
.p-admission-content__image-wrapper {
  flex: 1 1 34%; /* 幅の比率を調整 */
  min-width: 0;
}
.p-admission-content__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 15px;
}
.p-admission-content__text-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center; /* 上下中央揃え */
  align-items: center;    /* 左右中央揃え */
  flex: 1 1 33%; /* 幅の比率を調整 */
  padding: 40px 20px 10px;
  text-align: center;
  background-color: #fff;
  border-radius: 15px;
}
.p-admission-content__note {
  flex-grow: 1; /* テキストエリアを広げる */
  display: flex;
  align-items: center; /* テキストを垂直方向に中央揃え */
  margin-bottom: 25px;
  font-size: 1.5rem;
  line-height: 1.8;
  color: #333;
}
.p-admission-content__form-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 300px;
  padding: 15px 20px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  background-color: #f19393;
  border-radius: 30px;
  transition: opacity 0.3s;
}
.p-admission-content__form-link:hover {
  opacity: 0.8;
}
.p-admission-content__form-link::after {
  content: '›';
  margin-left: 10px;
}

/* ==========================================================================
   #レスポンシブ (入園案内)
   ========================================================================== */
@media screen and (max-width: 768px) {
  .p-admission {
    padding: 50px 0;
  }
  .p-admission__inner {
    padding: 0 20px;
  }
  .p-admission-guides {
    flex-direction: column;
    gap: 15px;
    margin-bottom: 40px;
  }
  .c-guide-card {
    flex-direction: row;
    justify-content: flex-start;
    gap: 20px;
    max-width: 100%;
    padding: 15px 20px;
  }
  .c-guide-card__icon {
    margin-bottom: 0;
  }

  /* ▼▼▼ スマホ用のレイアウト変更 ▼▼▼ */
  .p-admission-content {
    flex-direction: column;
    gap: 30px;
  }
  .p-admission-content__text-wrapper {
    padding: 30px 25px;
  }
}