@charset "UTF-8";
/* 共通 */
html {
  font-size: 100%;
}
body {
  position: relative;
  color: #3b3c42;
  font-size: 16px;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0.02em;
  line-height: 2.1;
  overflow: auto;
  font-family: 'GenJyuuGothic', sans-serif;
  font-weight: 500;
}
/* ----------------------------------------------------------------
/* 源柔ゴシック：https://github.com/shogo82148/genjyuugothic-subsets
/* ---------------------------------------------------------------- */
.hamopen {
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}
a {
  text-decoration: none;
  transition: .4s;
}
/*=====ウェブアクセシビリティ=====*/
a:focus-visible {
  outline: 4px solid blue !important;
  outline-offset: -1px;
  box-shadow: 0 0 0 4px white;
}
button:focus-visible {
  outline: 4px solid blue !important;
  outline-offset: -1px;
  box-shadow: 0 0 0 4px white;
}
ul, ol {
  list-style: none;
  padding: 0;
}
main {
  display: block;
  position: relative;
  overflow: hidden;
}
main section {
  padding: 130px 0;
  position: relative;
}
@media (max-width: 550px) {
  main section {
    padding: 70px 0 80px;
  }
}
/* 画像 */
img {
  line-height: 1;
  vertical-align: top;
  max-width: 100%;
  transition: .4s;
}
/* テキスト */
p {
  margin-bottom: 10px;
}
/*見出し01 円*/
.entitle {
  width: 80%;
  max-width: 160px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #3b3c42;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1.75;
  margin: auto;
  margin-bottom: 115px;
  font-weight: 700;
  background: #fff;
}
@media (max-width: 950px) {
  .entitle {
    max-width: 120px;
    font-size: 0.9rem;
    margin-bottom: 70px;
  }
}
/*見出し02*/
.maintitle {
  line-height: 1.5;
  font-size: clamp(1.5rem, 1rem + 1.6vw, 1.9rem);
  font-weight: 700;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 80px;
  color: #727171;
}
.maintitle.mtleft {
  margin-left: 0;
}
@media (max-width: 750px) {
  .maintitle {
    margin-bottom: 45px;
  }
}
/* 文字色 */
.blue {
  color: #0069aa;
}
.yellow {
  color: #ffd02b;
}
/*ボタン*/
.mainbtn {
  width: fit-content !important;
}
.mainbtn a {
  position: relative;
  vertical-align: middle;
  margin: 0 auto;
  padding: 7px 25px;
  transition: .4s;
  z-index: 1;
  overflow: hidden;
  line-height: 1.6;
  text-align: center;
  border: 2px solid #3b3c42;
  color: #3b3c42;
  background: #fff;
  border-radius: 50px;
}
.mainbtn a:hover {
  color: #fff;
  background: #3b3c42;
  transition: .4s;
}
/*flex要素*/
.flexbox {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 750px) {
  .flexbox {
    display: block;
  }
  .flexbox img {
    width: 100%;
  }
  .flexbox div {
    width: 100%;
  }
}
.reverse {
  flex-direction: row-reverse;
}
/*幅*/
.inner {
  width: 89%;
  max-width: 1200px;
  margin: 0 auto;
}
.w55 {
  width: 55%;
}
.w52 {
  width: 50%;
}
.w49 {
  width: 48.5%;
}
.w48 {
  width: 47.4%;
}
.w45 {
  width: 44.5%;
}
.w41 {
  width: 41%;
}
/*background*/
.bg_cream::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff9e6;
  z-index: -100;
}
.bg_yellow::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ffd02b;
  z-index: -100;
}
.bg_blue::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #0069aa;
  z-index: -100;
}
/*=== 共通部分ここまで ===*/
/* header ================================*/
.header_sticky {
  transition: .5s;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: #ffd02b;
  box-shadow: none;
}
.header {
  padding: 15px 5px;
  transition: all .5s;
  width: 100%;
  z-index: 100;
  position: relative;
}
.header_inner {
  width: 97%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1550px;
}
/* logo */
.header h1 {
  line-height: 1;
}
.header_title h1 a:hover {
  opacity: 0.6;
}
.header_title {
  width: 220px;
}
/* menu */
.header ul {
  display: flex;
  text-align: center;
}
.header ul li {
  margin-right: 30px;
  position: relative;
  line-height: 1.6;
}
.header ul li:last-child {
  margin-right: 0;
}
.header ul li a {
  display: block;
  width: 100%;
  transition: all .3s;
  position: relative;
  top: 0;
  line-height: 1.6;
  font-size: 1rem;
  color: #0069aa;
  font-weight: 500;
}
.header ul li a:hover {
  opacity: 0.6;
}
.header_nav {
  display: flex;
}
.hnav {
  margin-left: auto;
  width: fit-content;
}
.header_item {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.header_item > div {
  margin: 0 3px;
}
.header_item .mainbtn a {
  width: 190px;
  line-height: 1;
  padding: 13px;
  font-size: 0.9rem;
}
.whitebtn a {
  border: 1px solid #0069aa;
  color: #0069aa;
  background: #fff;
}
.whitebtn a:hover {
  color: #fff;
  background: #0069aa;
}
.whitebtn.fax a {
  background: #f7f7f7;
}
/*tel*/
.tel {
  font-size: 1.5rem;
  transition: .3s;
  position: relative;
  top: -2px;
  margin-right: 11px !important;
}
.tel a {
  color: #3b3c42;
}
.tel a:hover {
  opacity: 0.6;
  transition: .3s;
}
.tel i {
  font-size: 85%;
  color: #0069aa;
}
.header_item .sp_icon {
  margin: 0 !important;
}
.header_item .sp_icon div {
  margin: 0 5px;
}
.header_item .sp_icon a {
  font-size: 1.5rem;
}
.header_item .sp_icon a .fa-line {
  font-size: 90%;
}
/*======= 公式SNSリンク =======*/
.snslinks {
  position: fixed;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 79;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  white-space: nowrap;
}
.snslinks div {
  display: inline-block;
  margin: 10px 0;
}
.snslinks div a {
  font-weight: 700;
  letter-spacing: 0.17em;
  color: #0069aa;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
  display: flex;
  align-items: center;
}
.snslinks div a:hover {
  opacity: 0.6;
}
.snslinks div a i {
  font-size: 145%;
  margin-bottom: 5px;
}
.snslinks div a .fa-instagram {
  font-size: 150%;
  margin-bottom: 3px;
}
.upright {
  text-orientation: upright;
}
/*Safari*/ ::-webkit-full-page-media, :future, :root .upright {
  text-orientation: sideways;
}
@media (max-height: 930px) {
  .snslinks {
    top: 58%;
  }
}
@media (max-height: 830px) {
  .snslinks {
    font-size: 80%;
  }
}
@media (max-width: 550px) {
  .snslinks {
    font-size: 80%;
    right: 0;
  }
}
/* hamburger ================================= */
.header__inner {
  display: none;
}
.hamburger {
  position: fixed;
  display: block;
  height: 33px;
  top: 30.5px;
  right: 12px;
  z-index: 9999;
  width: 60px;
  border: none;
  background-color: transparent;
}
.hamburger.-active .hamburger__line {
  background-color: transparent;
}
.hamburger.-active .hamburger__line::before {
  top: 0;
  transform: rotate(45deg);
  background-color: #0069aa !important;
}
.hamburger.-active .hamburger__line::after {
  top: 0;
  transform: rotate(-45deg);
  background-color: #0069aa !important;
}
.hamburger__line {
  display: block;
  height: 2px;
  position: absolute;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  transition: 0.4s;
}
.hamburger__line:before, .hamburger__line:after {
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  transition: inherit;
}
.hamburger__line, .hamburger__line:before, .hamburger__line:after {
  background-color: #0069aa;
}
.hamburger__line:before {
  top: -9.5px;
}
.hamburger__line:after {
  top: 9.5px;
}
/* logo */
.ham_logo {
  width: 80%;
  max-width: 230px;
  margin: auto;
  margin-bottom: 20px;
}
.ham_logo img {
  width: 100%;
}
.header__nav-area {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  height: 100vh; /* fallback */
  height: calc(var(--vh, 1vh) * 100);
  width: 100%;
  visibility: hidden;
  opacity: 0;
  transition: 0.4s;
  overflow-y: scroll;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffd02b;
}
.header__nav-area.-active {
  opacity: 1;
  visibility: visible;
}
.global-navigation {
  margin: auto;
  height: fit-content;
  width: 85%;
}
.global-navigation__list > li {
  margin: 3px 0;
  font-size: 1.07rem;
  transition: .35s;
  line-height: 1.75;
  display: block;
  padding: 12px 0;
}
.global-navigation__list a {
  color: #0069aa;
}
.global-navigation__list a:hover {
  opacity: 0.6;
}
.global-navigation__list > li a {
  display: inline-block;
  width: 100%;
  text-align: center;
}
/* animation */
.header__nav-area {
  overflow-x: hidden;
}
.header__nav-area ul li {
  transform: translateX(20px);
  opacity: 0;
}
.header__nav-area .ham_logo {
  transform: translateX(20px);
  opacity: 0;
}
.header__nav-area.-active ul li {
  transform: translateX(0);
  transition: 1.6s ease, opacity 2.6s ease;
  opacity: 1;
}
.header__nav-area.-active .ham_logo {
  transform: translateX(0);
  transition: 1.6s ease, opacity 2.6s ease;
  opacity: 1;
}
.header__nav-area.-active ul li:nth-child(2) {
  transition-delay: 0.15s;
}
.header__nav-area.-active ul li:nth-child(3) {
  transition-delay: 0.3s;
}
.header__nav-area.-active ul li:nth-child(4) {
  transition-delay: 0.45s;
}
.header__nav-area.-active ul li:nth-child(5) {
  transition-delay: 0.6s;
}
.header__nav-area.-active ul li:nth-child(6) {
  transition-delay: 0.75s;
}
.header__nav-area.-active ul li:nth-child(7) {
  transition-delay: 0.8s;
}
@media (max-width: 1180px) {
  .header_nav {
    display: none;
  }
  .header__inner {
    display: block;
  }
  .header {
    padding: 13px 17px;
  }
  .header_inner {
    width: 100%;
  }
}
@media (max-width: 550px) {
  .ham_logo {
    max-width: 165px;
    margin-bottom: 13px;
  }
  .hamburger {
    top: 20px;
    right: 4.5px;
  }
  .hamburger__line {
    width: 38px;
  }
  .hamburger__line:before {
    top: -8px;
  }
  .hamburger__line:after {
    top: 8px;
  }
  .header_title {
    width: 170px;
  }
  .header {
    padding: 9px 10px;
  }
  .global-navigation__list > li {
    font-size: 0.9rem;
    padding: 9px 0;
  }
}
/* footer =======================================*/
.footer {
  line-height: 1.9;
  background: #fff9e6;
}
/* slider ========== */
.footer_top {
  padding-top: 180px;
}
.p_slider {
  margin-bottom: 150px;
}
.p_slider ul .slick-slide {
  margin-left: 1% !important;
  transition: .3s ease;
}
.p_slider ul li {
  position: relative;
  overflow: hidden;
}
.p_slider ul li::before {
  content: '';
  display: block;
  padding-top: 70%; /*高さの比率*/
}
.p_slider ul li img {
  display: block;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.9s ease;
}
/* 写真
.fimgs {
	display: flex;
	justify-content: space-between;
	margin-bottom: 190px;
}
.fimgs div {
	width: 29.2%;
}
 */
/* ロゴ・リンク ========== */
.footer_bottom .inner {
  width: 93%;
  max-width: 1263px;
}
/* logo */
.flogo {
  display: block;
  width: 100%;
  max-width: 110px;
  margin: auto;
  margin-bottom: 100px;
}
.flogo:hover {
  opacity: 0.6;
}
/*discovery*/
.discovery .flogo {
  max-width: 740px;
  margin-bottom: 50px;
}
/* address */
.fadd {
  width: 25%;
}
.fadd h4 {
  font-size: 1.75rem;
  white-space: nowrap;
}
/*logo_yellow*/
.fadd img {
  display: block;
  width: 100%;
  max-width: 250px;
  margin-bottom: 10px;
}
/* links */
.flinkswrap {
  width: 72%;
}
.flinks {
  display: flex;
  justify-content: space-between;
}
.flinks h4 {
  font-weight: 500;
}
.flinks a::before {
  content: "-";
  margin-right: 3px;
}
.rb a::before, .flinks h4::before {
  content: "▶";
  color: #0069aa;
  position: relative;
  font-size: 55%;
  top: -0.2em;
  left: -3px;
  margin-right: 0;
}
.flinks div {
  margin: 0 2% 0;
}
.flinks a {
  white-space: nowrap;
  color: #3b3c42;
}
.flinks a:hover {
  opacity: 0.6;
}
/* コピーライト */
.copyright {
  text-align: center;
  /*margin-top: 110px;*/
  margin-top: 60px;
  padding-bottom: 70px;
  color: #0069aa;
  text-transform: capitalize;
}
@media (max-width: 1175px) {
  .discovery .flogo {
    max-width: 500px;
  }
  .footer_bottom {
    font-size: 90%;
  }
  .fadd img {
    max-width: 225px;
    margin-bottom: 10px;
  }
}
@media (max-width: 1475px) {
  .footer_top {
    padding-top: 12vw;
  }
  .p_slider {
    margin-bottom: 10vw;
  }
  .flogo {
    max-width: 9vw;
  }
  .fadd h4 {
    font-size: 2.15vw;
  }
}
@media (max-width: 1055px) {
  .footer_bottom {
    font-size: 100%;
  }
  .footer_bottom .inner {
    width: 89%;
  }
  .flogo {
    max-width: 100px;
    margin-bottom: 45px;
  }
  .fadd h4 {
    font-size: 1.5rem;
  }
  .footer {
    font-size: 100%;
  }
  .footer_bottom .flexbox {
    display: block;
  }
  .fadd {
    width: fit-content !important;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 60px;
  }
  .flinkswrap {
    width: 100%;
    max-width: 400px;
    margin: auto;
  }
  .flinks {
    flex-wrap: wrap;
  }
  .flinks div {
    width: 47%;
    margin: 0 1% 40px;
  }
  .copyright {
    padding-bottom: 60px;
  }
}
@media (max-width: 550px) {
  .footer_top {
    padding-top: 70px;
  }
  .p_slider {
    margin-bottom: 55px;
  }
  .footer_top .inner {
    width: 94%;
  }
  .flogo {
    max-width: 70px;
    margin-bottom: 35px;
  }
  .fadd {
    margin-bottom: 45px;
  }
  .copyright {
    font-size: 0.9rem;
    padding-bottom: 40px;
  }
  .flinks {
    display: block;
    width: fit-content !important;
    margin-left: auto;
    margin-right: auto;
  }
  .flinks div {
    width: 100%;
    margin: 0 0 40px;
  }
}
/* ヘッダー・フッター表示設定 ================================= */
/* ヘッダー ページごとに異なる部分を非表示 */
.hnav, .global-navigation__list {
  display: none;
}
/* フッター ページごとに異なる部分を非表示*/
.mainlogo, .discovery, .fadd, .flinkswrap {
  display: none;
}
/*トップページで表示*/
.TopPage .TopDB {
  display: block;
}
/*入園のご案内ページで表示*/
.GuidePage .GuideDB {
  display: block;
}
/*九州音楽幼稚園 入園のご案内ページ*/
.guide_kyuon .guide_kyuon_DB, .guide_kyuon footer .KyuonDB {
  display: block;
}
/*九州音楽京塚幼稚園 入園のご案内ページ*/
.guide_kyuonkyo .guide_kyuonkyo_DB, .guide_kyuonkyo footer .KyuonkyoDB {
  display: block;
}
/*九州音楽幼稚園とその関連ページで表示*/
.KyuonPage .KyuonDB {
  display: block;
}
/*九州音楽京塚幼稚園とその関連ページで表示*/
.KyuonkyoPage .KyuonkyoDB {
  display: block;
}
/*諸届用紙ダウンロードページで表示*/
.DownloadPage .DownloadDB {
  display: block;
}
/* 諸届用紙DL ドロップダウンメニュー */
.menu-item-has-children {
  position: relative;
}
.menu-item-has-children a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  padding-bottom: 50px;
}
.sub-menu a::before {
  content: none;
}
.sub-menu {
  position: absolute;
  top: 37px;
  left: 50%;
  transform: translateX(-50%);
  width: 175px;
  opacity: 0;
  visibility: hidden;
  transition: .1s;
  z-index: 4;
  flex-direction: column;
  border: 2px solid rgba(0, 0, 0, 0.07);
}
.sub-menu li {
  margin: 0 !important;
  margin-bottom: 0 !important;
  width: 100% !important;
  background: #fff9e6;
  border: none !important;
  border-bottom: 2px dotted rgba(0, 0, 0, 0.1) !important;
  padding: 9px 3px 13px !important;
}
.sub-menu li:last-child {
  border-bottom: none !important;
}
.sub-menu a {
  color: #0069aa !important;
  font-size: 0.93rem !important;
  padding: 0 !important;
}
.pen {
  pointer-events: none;
}
.menu-item-has-children:hover ul, .menu-item-has-children ul.focused {
  opacity: 1;
  visibility: visible;
}
/* 諸届用紙DL ハンバーガーメニュー */
.wide_sub_menu {
  width: fit-content;
  margin-top: 6px;
  display: flex;
  font-size: 88% !important;
}
.widemenu .pen {
  text-align: left;
}
.header__inner .DownloadDB {
  max-width: 295px;
  margin: auto;
}
.wide_sub_menu li {
  margin-right: 15px;
}
.wide_sub_menu li:last-child {
  margin-right: 0;
}
.wide_sub_menu li a {
  padding-left: 15px;
  color: #3b3c42;
}
.wide_sub_menu li a::before {
  content: "▶";
  font-size: 75%;
  position: absolute;
  top: 0.3em;
  left: 0;
  color: #0069aa;
}
@media (max-width: 550px) {
  .header__inner .DownloadDB {
    max-width: 255px;
  }
}
/* バナーの掲載 ================================= */
.footer_banner {
  width: 85%;
  display: block;
  max-width: 320px;
  margin-left: auto;
  margin-top: -15px;
}
.footer_banner a:hover {
  opacity: 0.6;
}
@media (max-width: 1055px) {
  .footer_banner {
    margin: auto;
  }
}
/* スライド ================================= */
.topslide {
  overflow: hidden;
  position: relative;
  margin-top: 65px;
}
/**/
.slide_items {
  position: relative;
  width: 100%;
}
.slide_items img {
  width: 100%;
  height: 35vw;
  object-fit: cover;
}
/*スライドアニメーション*/
@keyframes fadezoom {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.slick-animation {
  animation: fadezoom 7s cubic-bezier(0.2, 0, 0.07, 1) 0s normal both;
}
/* text */
.slide_text {
  position: absolute;
  top: 56%;
  left: 6%;
  transform: translateY(-50%);
  z-index: 2;
  font-size: 1.45rem;
  white-space: nowrap;
}
.slide_text p {
  color: #fff;
  margin-bottom: 0;
  animation: fadeIn 2s ease 0.35s 1 normal backwards;
}
.sright {
  text-align: right;
  font-size: 90% !important;
}
.slide_text p span {
  display: block;
  position: relative;
  font-size: 65%;
}
@media (max-width: 1600px) {
  .topslide {
    margin-top: 4vw;
  }
  .slide_items img {
    height: 40vw;
  }
  .slide_text {
    left: 5vw;
    font-size: 1.5vw;
  }
}
@media (max-width: 975px) {
  .slide_items img {
    height: 65vw;
  }
  .slide_text {
    top: auto;
    bottom: 5%;
    left: 2%;
    transform: translateY(0);
    font-size: 2.5vw;
    /*
		text-shadow: rgb(255, 255, 255) 0px 0px 1px, rgb(255, 255, 255) 0px 0px 2px, rgb(255, 255, 255) 0px 0px 3px, rgb(255, 255, 255) 0px 0px 4px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 6px;
		*/
  }
}
@media (max-width: 600px) {
  .topslide {
    margin-top: 25px;
  }
  .slide_text {
    left: 50%;
    transform: translateX(-50%);
    font-size: 3.0vw;
  }
}
/*============*/
.pdb {
  padding-bottom: 55px !important;
}
.pdb0 {
  padding-bottom: 1px !important;
}
@media (max-width: 550px) {
  .pdb {
    padding-bottom: 20px !important;
  }
}
.center {
  text-align: center;
}
@media (max-width:750px) {
  .spcenter {
    text-align: center !important;
  }
  .mainbtn.spcenter {
    margin-left: auto;
    margin-right: auto;
  }
}
.fitc {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.tbtn {
  margin-top: 25px;
}
@media (max-width:550px) {
  .tbtn {
    margin-top: 20px;
  }
}
.aic {
  align-items: center;
}
/*アニメーション*/
/**/
.flowup {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s, transform 1.1s;
}
.flowup.inview {
  opacity: 1;
  transform: translateY(0);
}
/**/
.popup {
  opacity: 0;
}
.popup.inview {
  opacity: 1;
  animation: popupAnim 1.1s cubic-bezier(0.35, 0, 0.07, 1) 0.35s 1 normal backwards;
}
@keyframes popupAnim {
  0% {
    transform: scale(0.8);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  60% {
    transform: scale(1.0);
  }
  100% {
    top: 0;
    opacity: 1;
  }
}
/*delay*/
.delay01 {
  transition-delay: 0.35s !important;
}
.delay02 {
  transition-delay: 0.65s !important;
}
.delay03 {
  transition-delay: 0.9s !important;
}
@media (max-width: 750px) {
  .delay01, .delay02, .delay03 {
    transition-delay: 0.3s !important;
  }
}
/**/
@media (max-width:750px) {
  .spmgb {
    margin-bottom: 35px;
  }
}
/*img*/
.round {
  position: relative;
}
.round img {
  border-radius: 10px;
}
/* 法人基本理念 ==================================*/
.philosophy .inner {
  max-width: 859px;
}
.philosophy .entitle {
  margin-bottom: 60px;
}
@media (max-width:750px) {
  .philosophy .entitle {
    margin-bottom: 40px;
  }
}
/* 保育・教育方針 ==================================*/
.education {
  padding-top: 37px;
  counter-reset: edu-number 0;
}
.education .inner {
  max-width: 1590px;
  width: 97%;
}
.education img {
  width: 100%;
}
.education .flexbox {
  flex-wrap: nowrap;
  width: 90%;
  margin-bottom: 270px;
  margin-left: auto;
}
.education .flexbox:last-child {
  margin-bottom: 60px;
}
.education .flexbox:nth-of-type(2) {
  margin-left: 0;
  margin-right: auto;
}
/*title*/
.mtitle {
  font-size: 1.5rem;
  line-height: 1.5;
  margin-bottom: 30px;
  font-weight: 700;
}
.education .flexbox:nth-of-type(4) .mtitle {
  white-space: nowrap;
}
.education .mtitle::before {
  counter-increment: edu-number 1;
  content: "0"counter(edu-number);
  display: block;
  font-size: 140%;
  opacity: 0.6;
}
.edu {
  max-width: 626px;
}
.education .flexbox:nth-of-type(2) .edu {
  max-width: 600px;
  position: relative;
  left: -7%;
}
@media (min-width:1980px) {
  .education .inner {
    max-width: 1550px;
  }
  .education .flexbox {
    width: 100%;
  }
}
@media (max-width:1125px) {
  .education .flexbox {
    margin-bottom: 18vw;
  }
}
@media (max-width:1675px) {
  .education .flexbox:nth-of-type(2) .edu {
    left: 0;
  }
}
@media (max-width:1475px) {
  .education .flexbox:nth-of-type(2) .edu .ib {
    display: inline;
  }
}
@media (max-width: 975px) {
  .education .flexbox {
    width: 93%;
  }
  .education .mtitle {
    font-size: 2.4vw;
  }
  .education .flexbox:nth-of-type(4) .mtitle {
    font-size: 2.25vw;
  }
}
@media (max-width: 750px) {
  .education .inner {
    width: 89%;
  }
  .education .flexbox {
    margin-bottom: 90px;
    width: 100%;
  }
  .education .flexbox:last-child {
    margin-bottom: 0 !important;
  }
  .education .mtitle {
    margin-top: 27px;
    font-size: 1.25rem !important;
    margin-bottom: 33px;
  }
  .education .flexbox:nth-of-type(4) .mtitle {
    white-space: normal;
  }
  .education .mtitle::before {
    font-size: 170%;
  }
  .education .mtitle br {
    display: none;
  }
  .education .flexbox:nth-of-type(2) p {
    margin-top: 15px;
  }
}
@media (max-width: 550px) {
  .education {
    padding-top: 0;
  }
}
/* 法人概要 ==================================*/
.overview .inner {
  max-width: 650px;
}
.overview .maintitle {
  margin-bottom: 50px;
}
@media (max-width: 550px) {
  .overview .maintitle {
    margin-bottom: 30px;
  }
}
/*table*/
.a_table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-weight: normal;
}
.a_table tr {
  border-bottom: 2px solid #ddd;
}
.a_table th {
  background: transparent;
  width: 35%;
  font-weight: 700;
}
.a_table th, .a_table td {
  padding: 20px 0;
}
.a_table td {
  padding-left: 10px;
  padding-right: 10px;
  width: 65%;
  background: transparent;
}
.a_table .acheck li {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.a_table .nado {
  text-align: left;
}
.ib {
  display: inline-block;
}
/* お問い合わせ ==================================*/
.top_contact {
  overflow: hidden;
  line-height: 1.6;
}
/*illust*/
.tcillust {
  position: absolute;
  bottom: -0.5px;
  right: 1%;
  width: 30%;
  z-index: -1;
}
.tcillust img {
  width: 100%;
}
/*
.top_contact::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: url(../img/top_contact.png);
	background-repeat: no-repeat;
	background-position: bottom right 1%;
	background-size: 30%;
	z-index: -1;
}
*/
/**/
.tpbox {
  width: 30%;
  margin-bottom: 70px;
}
.tpbox:last-child {
  margin: auto;
}
.tpbox p {
  white-space: nowrap;
}
.tpbox p, .tpbox a {
  text-align: center;
  line-height: 1.3;
}
.tpbox p {
  margin-bottom: 15px;
}
/*title*/
.tpbox h3 {
  white-space: nowrap;
  font-size: 1.6rem;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}
.tpbox:nth-of-type(3) h3, .tpbox:nth-of-type(4) h3 {
  margin-bottom: 17px;
}
.tpbox h3 span {
  font-size: 70%;
  display: block;
}
/*tel*/
.tpbox a {
  display: block;
  font-size: 1.8rem;
  color: #3b3c42;
  white-space: nowrap;
}
.tpbox a:hover {
  opacity: 0.6;
}
.tpbox a span {
  font-size: 70%;
  display: block;
}
@media (max-width:1165px) {
  .tpbox h3 {
    font-size: 2.2vw;
  }
  .tpbox a {
    font-size: 2.5vw;
  }
}
@media (max-width:805px) {
  .tpbox p {
    font-size: 1.8vw;
  }
}
@media (max-width:750px) {
  .top_contact {
    padding-bottom: 0 !important;
  }
  .tcillust {
    position: relative;
    margin-left: auto;
    width: 200px;
    margin-top: 30px;
  }
  .tpbox {
    margin-bottom: 65px;
  }
  .tpbox h3 {
    font-size: 1.5rem;
  }
  .tpbox a {
    font-size: 1.6rem;
  }
  .tpbox p {
    font-size: 100%;
  }
}
/* ごあいさつ ==================================*/
.welcome .inner {
  max-width: 1133px; /*max-width: 1255px;*/
}
.welcome p {
  margin-bottom: 0;
}
/*
.welcome p:nth-of-type(2) {
	max-width: 1214px;
}
*/
/*img*/
.welimg {
  margin: auto;
  margin-top: 90px;
  width: 100%;
  max-width: 380px;
}
.welimg img {
  width: 100%;
  margin-bottom: 30px;
}
.welimg .center {
  line-height: 1.65;
}
@media (max-width: 1475px) {
  .welimg {
    max-width: 28vw;
  }
}
@media (max-width: 750px) {
  .welimg {
    margin-top: 60px;
    max-width: 250px;
  }
  .welimg img {
    margin-bottom: 25px;
  }
}
/* 九州音楽学園のあゆみ ==================================*/
.history {
  line-height: 1.9;
}
.history .inner {
  max-width: 866px;
}
.his p {
  display: flex;
  margin-bottom: 20px;
}
.his .year {
  width: 196px;
  display: flex;
  justify-content: space-between;
  margin-right: 40px;
}
/*img*/
.himgs {
  max-width: 1000px;
  margin: auto;
  margin-top: 115px;
}
.himgs div {
  width: 43.5%;
}
.himgs p {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-top: 13px;
}
@media (max-width: 950px) {
  .his .year {
    width: 100%;
    margin-right: 0;
    font-weight: 700;
    font-size: 107%;
  }
  .year span:last-child {
    margin-left: 10px !important;
    margin-right: auto;
  }
  .year span:first-child {
    margin-left: 0 !important;
  }
  .his p {
    flex-wrap: wrap;
    margin-bottom: 35px;
  }
}
@media (max-width: 750px) {
  .himgs {
    margin-top: 60px;
  }
  .himgs div {
    width: 100%;
    margin-bottom: 55px;
  }
  .himgs div:last-child {
    margin-bottom: 0 !important;
  }
  .himgs p {
    margin-top: 5px;
  }
}
/* 園について ==================================*/
.introduction div {
  width: 38%;
}
.introduction .mainbtn {
  margin-top: 30px;
  white-space: nowrap;
}
@media (max-width:890px) {
  .introduction div {
    width: 45%;
  }
}
@media (max-width:750px) {
  .introduction div {
    width: 100%;
    margin-bottom: 80px;
  }
  .introduction div:last-child {
    margin-bottom: 0 !important;
  }
}
/* KYUON キッズカレッジ ==================================*/
.kidscollege {
  padding: 120px 0;
}
.kidscollege .inner {
  max-width: 1160px;
}
.kidscollege .maintitle {
  margin-bottom: 15px;
  white-space: nowrap;
}
.kidscollege p {
  font-weight: 700;
}
.kidscollege .mainbtn {
  margin-top: 27px;
}
/*ピアノ グローバルEnglish そろばん*/
.kc_con {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
  max-width: 545px;
}
.kc_con p {
  text-align: center;
  width: 31.7%;
  padding: 10px 0;
  background: #ffd02b;
  color: #0069aa;
  border-radius: 10px;
  margin-bottom: 13px;
  white-space: nowrap;
}
.kc_con p:nth-of-type(1), .kc_con p:nth-of-type(3) {
  width: 26%;
}
.kc_con p:nth-of-type(2) {
  width: 41%;
}
.kc_con p:nth-of-type(4) {
  width: 100%;
  /*max-width: 384px;*/
  margin-bottom: 0;
}
.kc_con p br.kc_con_spbr {
  display: none;
}
/*慣れ親しんだ学び舎で*/
.str {
  font-size: 140%;
  color: #fff;
  margin-bottom: 15px;
}
@media (max-width:850px) {
  .kc_con p {
    font-size: 87%;
  }
}
@media (max-width:750px) {
  .kc_con {
    margin-left: auto;
    margin-right: auto;
  }
  .kidscollege {
    padding: 70px 0;
  }
  .kidscollege .maintitle {
    margin-top: 40px;
  }
  .str {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
  .kidscollege .yellow {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width:550px) {
  .kidscollege .maintitle {
    margin-bottom: 37px;
  }
  .kidscollege {
    padding: 85px 0;
  }
  .kc_con {
    margin-bottom: 33px;
  }
  .str {
    font-size: 120%;
    margin-bottom: 25px;
  }
  .kc_con p {
    border-radius: 7px;
    font-size: 100%;
    width: 100% !important;
    margin-bottom: 13px;
  }
  .kc_con p:nth-of-type(4) {
    max-width: 100%;
    line-height: 1.8;
  }
  .kc_con p br.kc_con_spbr {
    display: block;
  }
  .kc_con p:last-child {
    margin: auto;
  }
  .kidscollege .mainbtn {
    margin-top: 30px;
  }
}
/* 下層ページ ====================================================================*/
/* 九州音楽幼稚園ページ・九州音楽京塚幼稚園ページ ===============*/
/* ページトップ ========*/
.sub_pagetop {
  margin-top: 60px;
  border-radius: 0 130px 0 0;
}
/*logo*/
.logo_subtop {
  width: 60%;
  max-width: 280px;
  margin: -3% auto 0;
  position: relative;
  z-index: 1;
}
.kyuonkyo {
  width: 73%;
  max-width: 340px;
}
@media (max-width:1150px) {
  .logo_subtop {
    max-width: 250px;
  }
  .kyuonkyo {
    max-width: 310px;
  }
}
@media (max-width:950px) {
  .sub_pagetop .slide_items img {
    height: 47vw;
  }
}
@media (max-width:550px) {
  .logo_subtop {
    max-width: 145px;
    margin-bottom: 50px;
  }
  .kyuonkyo {
    max-width: 175px;
  }
  .sub_pagetop .slide_items img {
    height: 200px;
  }
  .sub_pagetop {
    margin-top: 30px;
    border-radius: 0 80px 0 0;
  }
}
/* あいさつ ============*/
.greeting .inner {
  max-width: 971px;
}
/**/
.gimg {
  width: 29%;
}
.gimg h2 {
  font-weight: 700;
  line-height: 1.3;
  white-space: nowrap;
  font-size: 1.65rem;
  margin-top: 15px;
}
/**/
.gtext {
  width: 60%;
}
.glast {
  margin-top: 23px;
  text-align: right;
}
@media (max-width:1040px) {
  .gimg h2 {
    font-size: 2.5vw;
  }
}
@media (max-width:750px) {
  .gimg h2 {
    margin: 30px 0;
    font-size: 1.45rem;
    text-align: center;
  }
  .greeting {
    padding-top: 60px;
  }
}
@media (max-width:550px) {
  .greeting {
    padding-bottom: 55px;
  }
}
/*=== section padding ==========*/
.subPage_padding section {
  padding: 100px 0;
}
@media (max-width:550px) {
  .subPage_padding section {
    padding: 60px 0;
  }
}
/* 園の特色 =============*/
.features .inner {
  max-width: 1386px;
}
.features .flexbox {
  justify-content: center;
}
.features .flexbox div {
  width: 30.7%;
  margin: 0 1.3% 50px;
}
.features .flexbox div img {
  margin-bottom: 10px;
}
.features .flexbox div h2 {
  font-weight: 700;
  line-height: 1.3;
  white-space: nowrap;
  font-size: clamp(1.5rem, 1.375rem + 0.4vw, 1.6rem);
  margin: 13px 0 18px;
  text-align: center;
  color: #0069aa;
}
@media (max-width:1070px) {
  .features .flexbox div {
    width: 46.5%;
    margin: 0 1.7% 50px;
  }
}
@media (max-width:750px) {
  .features .flexbox div {
    width: 100%;
    margin: 0 0 50px;
  }
  .features .flexbox div:last-child {
    margin-bottom: 0 !important;
  }
}
/* 大切にしていること ========*/
.importance {
  counter-reset: im-number 0;
}
.importance .inner {
  max-width: 1100px;
}
.importance .maintitle {
  margin-bottom: 110px;
}
/*title*/
.imbox {
  display: flex;
  margin-bottom: 140px;
}
.imbox:last-child {
  margin-bottom: 0;
}
.imbox h3 {
  position: relative;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-weight: 700;
  margin-right: 40px;
  padding-top: 75px;
  font-size: 1.5rem;
}
.imbox h3::before {
  counter-increment: im-number 1;
  content: "0"counter(im-number);
  display: block;
  font-size: 200%;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) rotate(-90deg);
}
/*Safari*/ ::-webkit-full-page-media, :future, :root .imbox h3::before {
  left: -0.3em;
  transform: rotate(-90deg);
}
.imbox img {
  width: 100%;
  margin-bottom: 20px;
}
@media (max-width:600px) {
  .imbox {
    margin-bottom: 50px;
  }
  .importance .maintitle {
    margin-bottom: 60px;
  }
  .importance .inner {
    width: 92%;
  }
  .imbox h3 {
    font-size: 1.1rem;
    padding-top: 45px;
    margin-right: 22px;
  }
  .imbox h3::before {
    font-size: 170%;
  }
  /*Safari*/ ::-webkit-full-page-media, :future, :root .imbox h3::before {
    left: -0.1em;
  }
  .imbox img {
    margin-bottom: 12px;
  }
}
/* 幼稚園での一日の過ごし方 ========*/
.family .inner {
  max-width: 1110px;
}
.family .maintitle {
  margin-bottom: 45px;
}
/**/
.family .flexbox {
  margin-bottom: 65px;
}
.family .flexbox:last-child {
  margin-bottom: 0 !important;
}
/*img*/
.flimg {
  width: 31%;
  clip-path: circle(50% at 50% 50%);
}
/*title*/
.fltext h3 {
  border: 2px solid #3b3c42;
  color: #3b3c42;
  background: #fff;
  border-radius: 50px;
  padding: 5px 15px;
  width: fit-content;
  margin-bottom: 23px;
  font-size: clamp(1rem, 0.875rem + 0.4vw, 1.1rem);
  line-height: 1.5;
  font-weight: 700;
}
/*text*/
.fltext {
  width: 65%;
}
@media (max-width:750px) {
  .family .flexbox {
    margin-bottom: 45px;
  }
  .family .maintitle {
    margin-bottom: 35px;
  }
  .flimg {
    width: 80% !important;
    margin: 0 auto 23px;
  }
  .fltext h3 {
    margin-bottom: 17px;
  }
}
/*一日の過ごし方の例*/
.example .inner {
  max-width: 1110px;
}
.extitle {
  font-size: clamp(1.1rem, 0.7875rem + 1vw, 1.35rem);
  border-bottom: 4px solid #ffd02b;
  width: fit-content;
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 30px;
}
/* 0・1 歳児 ================*/
.babies .maintitle {
  margin-bottom: 47px;
}
.babies .inner {
  max-width: 983px;
}
/*illust*/
.mt_illust {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.mt_illust span {
  display: inline-block;
  width: 100%;
  max-width: 130px;
  margin-right: 35px;
}
@media (max-width:750px) {
  .mt_illust span {
    width: 30%;
    margin-right: 7%;
  }
}
/*img*/
.bimg {
  width: 30%;
}
.bimg p {
  margin-top: 10px;
  line-height: 1.8;
}
/*text*/
.btext {
  margin-top: 20px;
  width: 60%;
}
@media (max-width:750px) {
  .btext {
    margin-top: 0;
    margin-bottom: 40px;
  }
}
@media (max-width:550px) {
  .babies .maintitle {
    margin-bottom: 40px;
  }
}
/* 年間行事 ================*/
.events .inner {
  max-width: 1028px;
}
.events .maintitle {
  margin-bottom: 35px;
}
/*illust*/
.events {
  padding-bottom: 0 !important;
}
.events .tcillust {
  position: relative;
  margin-left: auto;
  width: 25%;
  margin-top: -30px;
}
/**/
.events .flexbox {
  position: relative;
  margin-top: 110px;
  padding-bottom: 55px;
}
.events .flexbox::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../img/events_schedule.png);
  background-position: left 5% top;
  z-index: -1;
  background-repeat: no-repeat;
  background-size: 60%;
  opacity: 0.7;
}
/*年間スケジュール*/
.schedule {
  width: fit-content !important;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
/**/
.schedule p {
  position: relative;
  padding-left: 73px;
  margin-bottom: 0;
  width: fit-content;
}
p.mgb {
  margin-bottom: 20px;
}
.schedule p span {
  position: absolute;
  top: 0;
  left: 0;
  color: #0069aa;
  width: 60px;
  text-align: right;
}
/*コンサート*/
.schedule p span.concert {
  display: block;
  width: fit-content;
  position: initial;
  color: #3b3c42;
  white-space: nowrap;
  margin-left: auto;
  margin-right: 22px;
}
/*img*/
.evimg {
  width: 40%;
}
.evimg img {
  margin-bottom: 20px;
}
.evimg img:last-child {
  margin-bottom: 0 !important;
}
@media (max-width:1020px) {
  .events .flexbox {
    margin-top: 80px;
    align-items: center;
    padding-bottom: 35px;
  }
  .events .flexbox::before {
    background-size: contain;
  }
  .events .tcillust {
    margin-top: 0;
  }
}
@media (max-width:750px) {
  .events .tcillust {
    margin-top: 20px;
    width: 220px;
  }
  .schedule {
    margin-bottom: 40px;
  }
  .events .flexbox {
    margin-top: 40px;
    padding-bottom: 0;
  }
  .events .flexbox::before {
    background-position: top center;
    background-repeat: repeat-y;
  }
  .evimg {
    background: #fff;
  }
}
/* 入園のご案内ページ ==============================================*/
/* 入園手続きの流れ */
.flow .inner {
  max-width: 1031px;
}
.prmgb p {
  margin-bottom: 0;
  text-align: center;
  background: #f6f4f2;
  border-radius: 25px;
  border: 2px solid #3f3a39;
  padding: 40px 0;
}
.prmgb, .ichini, .yokuw, .nisan, .gans {
  background: #f6f4f2;
  border-radius: 25px;
  border: 2px solid #3f3a39;
  padding: 40px 0;
}
.prmgb, .flowflex.prmgb, .ichini p, .yokuw p, .nisan p, .gans p {
  background: transparent;
  border: none;
  padding: 0 !important;
}
.marker {
  background: #ffd02b;
  padding: 0 3px;
}
/*全体の線*/
.prmgb {
  font-size: 120%;
  position: relative;
  z-index: -1;
}
.prmgb::before, .prmgb::after {
  content: "";
  width: 10px;
  height: 85%;
  background: #9fa0a0;
  display: block;
  position: absolute;
  bottom: -65%;
  z-index: -1;
}
.prmgb::before {
  left: 24%;
}
.prmgb::after {
  right: 24%;
  height: 153% !important;
}
.prmgb:last-child::after, .prmgb:last-child::before {
  content: none;
}
/*矢印*/
.chevron_down::before, .chevron_down::after {
  font-family: "Font Awesome 6 Free";
  content: "\f078";
  font-weight: bold;
  position: absolute;
  top: -66%;
  color: #9fa0a0;
  font-size: 4rem;
  z-index: 1;
}
.chevron_down::before {
  left: 21.3%;
}
.chevron_down::after {
  right: 21.3%;
}
@media (max-width:1160px) {
  .prmgb::before {
    left: 21vw;
  }
  .prmgb::after {
    right: 21vw;
  }
  .chevron_down::before, .chevron_down::after {
    top: -7.9vw;
    font-size: 6.2vw;
  }
  .chevron_down::before {
    left: 18.3vw;
  }
  .chevron_down::after {
    right: 18.3vw;
  }
}
/**/
.flowflex {
  display: flex;
  justify-content: space-between;
}
/*教育保育 給付認定1号・2歳児私的契約児*/
.ichini {
  padding: 0 !important;
}
.ichini p {
  width: 90%;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 0 !important;
  border-radius: 0 !important;
}
.ichini p:first-child {
  border-bottom: 2px dashed #3f3a39;
}
.bi {
  width: fit-content !important;
  font-size: 190%;
  margin: 0 10px;
}
.bi span {
  width: fit-content !important;
  font-size: 120%;
}
.ichini p span {
  line-height: 1.6;
  display: inline-block;
  width: 86px;
}
.shiteki {
  width: 69px !important;
}
/*“よくわからない”方*/
.yokuw {
  margin-top: 20px;
}
.yokuw p {
  font-size: 110%;
  text-align: left;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
}
/*教育保育 給付認定 2・3号*/
.nisan {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.nisan p:first-child {
  line-height: 1.6;
}
/*予約ボタン*/
.prmgb a.bmbtn {
  font-size: 90%;
  padding: 3px 15px !important;
}
/*願書*/
.gsborder::before {
  /*content: '';*/
  width: 41%;
  height: 78%;
  position: absolute;
  bottom: -54%;
  left: 50%;
  transform: translateX(-50%);
  background: #9fa0a0;
  z-index: -1;
  clip-path: polygon(0 0, 3% 0, 3% 54%, 100% 54%, 100% 100%, 97% 100%, 97% 64%, 0 64%);
  content: none;
}
/**/
.mbi {
  font-size: 107% !important;
}
.mi {
  font-size: 80%;
  line-height: 1.6;
}
.gans .mi {
  display: block;
}
.mbibr {
  display: none;
}
/*4月 入園*/
.april span {
  margin-left: 40px;
  letter-spacing: 2em;
}
/**/
.prmgb {
  font-weight: 700;
  margin-bottom: 50px;
}
.prmgb:last-child {
  margin-bottom: 0 !important;
}
/*2024年12月下旬～2025年1月にかけて熊本市から結果通知*/
.longlongtext div:first-child {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
}
.longtxt {
  line-height: 1.6;
  margin-bottom: 5px !important;
}
.longlongtext div .mi {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width:600px) {
  .longlongtext div .mi {
    text-align: left !important;
  }
  .longtxt {
    text-align: left !important;
  }
  .longtxt br {
    display: none;
  }
}
/*illust*/
.flow .tcillust {
  z-index: 1;
  max-width: 387px;
}
@media (max-width:885px) {
  .prmgb {
    font-size: 100%;
  }
}
@media (max-width:750px) {
  .flow {
    padding-bottom: 0;
  }
  .flow .tcillust {
    max-width: 150px;
    margin-top: -15px;
  }
  .prmgb {
    margin-bottom: 30px;
    font-size: 100%;
  }
  .prmgb p {
    border-radius: 15px;
  }
  .prmgb, .ichini, .yokuw, .nisan, .gans {
    border-radius: 12px !important;
  }
  .prmgb p, .prmgb, .ichini, .yokuw, .nisan, .gans {
    padding: 13px 5px;
  }
  .ichini p {
    font-size: 85%;
  }
  .ichini p span {
    width: 68px;
  }
  .shiteki {
    width: 51px !important;
  }
  .bi {
    font-size: 140%;
    white-space: nowrap;
  }
  .yokuw {
    margin-top: 10px;
  }
  .yokuw p {
    font-size: 90%;
  }
  .yokuw p br {
    display: none;
  }
  .mbi {
    font-size: 107% !important;
    line-height: 1.6;
  }
  .prmgb::before, .prmgb::after {
    width: 5px;
    height: 85%;
    bottom: -65%;
  }
  .gsborder span, .gans .marker {
    display: block;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5px;
  }
  .gans {
    font-size: 80%;
  }
  .mbibr {
    display: block;
  }
  .gsborder::before {
    width: 50%;
    height: 50%;
    bottom: -35%;
  }
  .prmgb::before {
    left: 45px;
  }
  .prmgb::after {
    right: 45px;
  }
  .chevron_down::before, .chevron_down::after {
    top: -29px;
    font-size: 1.45rem;
  }
  .chevron_down::before {
    left: 36px;
  }
  .chevron_down::after {
    right: 36px;
  }
  .april span {
    margin-left: 25px;
    letter-spacing: 1.1em;
  }
}
/* 入園対象 */
.guide .inner {
  max-width: 1031px;
}
/*link*/
#link {
  position: relative;
  top: -160px;
}
/*box*/
.gbox {
  position: relative;
  background: #fff;
  border-radius: 30px;
  padding: 20px 40px;
  padding-left: 120px;
  margin-bottom: 40px;
}
.gbox:last-child {
  margin-bottom: 0 !important;
}
/*title*/
.gbox .entitle {
  font-size: 1.2rem;
  position: absolute;
  top: 15%;
  left: -5%;
  border: none;
  background: #6b5e56;
  color: #ffd02b;
  max-width: 143px;
  flex-direction: column;
}
.gbox .entitle span {
  color: #fff;
}
/*text*/
.gflex {
  display: flex;
}
.gflex .bold {
  width: 148px;
}
.mgb0 {
  margin-bottom: 0 !important;
}
/*太字*/
.bold {
  font-weight: 700;
  font-size: 107%;
}
/*青い矢印*/
.arr::before {
  content: "▶";
  color: #0069aa;
  font-size: 70%;
  position: relative;
  top: -0.2em;
  margin-right: 2px;
}
/*ボタン*/
.gbox a {
  padding: 0 10px 0;
  margin-left: 7px;
  color: #3b3c42;
  background: #fff;
  border: 2px solid #3b3c42;
  display: inline-block;
  border-radius: 40px;
}
.gbox a:hover {
  color: #fff;
  background: #3b3c42;
}
/*ボタン青*/
a.bmbtn {
  border-radius: 40px;
  padding: 0 30px 0;
  color: #fff;
  background: #0069aa;
  border: 2px solid #0069aa;
  line-height: 1.8;
}
a.bmbtn:hover {
  color: #0069aa;
  background: #fff;
}
/*灰色背景*/
.graybox {
  padding: 10px 30px;
  background: #eeefef;
  margin-bottom: 15px;
}
/*以下の方々は見学は不要です*/
.arr_o {
  margin-bottom: 5px;
  line-height: 1.6;
}
.arr_o::before {
  content: "▼";
  color: #f39800;
}
.hlist li {
  line-height: 1.8;
  padding-left: 10px;
  position: relative;
}
.hlist li::before {
  content: "-";
  position: absolute;
  top: 0;
  left: 0;
}
/*ご注意*/
.minif {
  font-size: 96%;
}
.care {
  font-size: 102%;
  font-weight: 500;
}
.mlist li {
  line-height: 1.8;
  padding-left: 15px;
  position: relative;
}
.mlist li::before {
  content: "●";
  font-size: 80%;
  position: absolute;
  top: 0.25em;
  left: 0;
  color: #0069aa;
}
/*教育・保育給付認定について*/
.guide_nin .inner {
  max-width: 1067px;
}
.nin {
  width: 32%;
  text-align: center;
}
.guide_nin .gbox .graybox {
  padding: 20px 20px 7px;
}
.nin h3 {
  text-align: center;
  font-weight: 700;
  font-size: 130%;
  color: #fff;
  border-radius: 10px;
  padding: 5px 0 7px;
  margin-bottom: 5px;
}
.nin:nth-of-type(1) h3 {
  background: #0070b2;
}
.nin:nth-of-type(2) h3 {
  background: #009fd8;
}
.nin:nth-of-type(3) h3 {
  background: #f19dae;
}
@media (max-width: 1190px) {
  .nin p {
    text-align: left;
  }
  .nin p br {
    display: none;
  }
}
@media (max-width: 880px) {
  .guide_nin .gbox .graybox.flexbox {
    display: block;
  }
  .nin {
    width: 100%;
    margin-bottom: 15px;
  }
  .nin h3 {
    font-size: 110%;
  }
}
@media (max-width: 750px) {
  #link {
    top: -160px;
  }
  .gbox .entitle {
    max-width: 115px;
    font-size: 1rem;
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
  }
  .gbox {
    padding: 20px;
    padding-top: 80px;
    margin-bottom: 80px;
  }
  .gflex, .arr {
    display: block;
  }
  .graybox {
    padding: 10px 10px 15px;
    margin: 15px 0 10px;
  }
  .guide_nin .gbox .center {
    text-align: left;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width:550px) {
  #link {
    top: -225px;
  }
}
/* よくあるご質問 */
.faq .inner {
  max-width: 1091px;
}
.faqbox {
  margin-bottom: 20px;
}
.faqbox:last-child {
  margin-bottom: 0 !important;
}
/*アコーディオン全体*/
.accordion-area {
  list-style: none;
  width: 96%;
  max-width: 900px;
  margin: 0 auto;
}
/*アコーディオンタイトル*/
.accordion-title {
  font-variant: 700;
  position: relative;
  cursor: pointer;
  font-size: clamp(1rem, 0.625rem + 1.2vw, 1.3rem);
  padding: 15px 50px;
  transition: all .5s ease;
  background: #ffd02b;
  line-height: 1.5;
  border-radius: 25px;
}
.faq .accordion-title span {
  position: relative;
  padding-left: 35px;
  display: inline-block;
}
/*下矢印*/
.faq .accordion-title::after {
  content: '▼';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2.5%;
  color: #0069aa;
  font-size: 50%;
  transition: .3s;
}
/*　closeというクラスがついたら回転　*/
.faq .accordion-title.close::after {
  transform: translateY(-50%) rotate(-180deg);
}
/*Q*/
.faq .accordion-title span::before {
  content: "Q.";
  position: absolute;
  top: -0.05em;
  left: 0;
}
/*アコーディオンで現れるエリア*/
/*A*/
.faq .accordion-text::before {
  content: "A.";
  font-size: clamp(1.1rem, 0.475rem + 2vw, 1.6rem);
  color: #0069aa;
  position: absolute;
  top: -10px;
  left: 50px;
}
.accordion-text {
  display: none; /*はじめは非表示*/
  background: transparent;
  padding: 0 75px 13px;
  margin-top: 13px;
  font-size: 95%;
}
.faq .accordion-text {
  font-size: 100%;
  position: relative;
}
.faq .accordion-text p {
  padding-left: 15px;
}
@media (max-width: 750px) {
  .spnone {
    display: none;
  }
  .faqbox {
    margin-bottom: 15px;
  }
  .faq .accordion-title span {
    padding-left: 25px;
  }
  .faq .accordion-text p {
    padding-left: 4vw;
  }
  .faq .accordion-text::before {
    top: -2px;
  }
  .accordion-title {
    padding: 15px 28px 15px 15px;
  }
  .accordion-text {
    padding: 0 25px 13px;
    margin-top: 13px;
  }
  .faq .accordion-text::before {
    left: 17px;
  }
  .faq .accordion-title::after {
    right: 11px;
  }
}
/* KYUONキッズカレッジページ ==============================================*/
/* 育むのは〝生きる力〟 */
.k_top {
  flex-wrap: nowrap;
}
/*title*/
.k_top h2 {
  font-size: 2.05rem;
  writing-mode: vertical-rl;
  line-height: 1.6;
  margin-right: 40px;
}
.k_top h2 span {
  display: block;
  margin-top: -30px;
}
/*img*/
.ktflex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
.ktflex div:nth-of-type(1) {
  width: 41%;
}
.ktflex div:nth-of-type(2) {
  width: 25%;
}
.ktflex div:nth-of-type(3) {
  width: 32%;
}
.ktflex div img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 750px) {
  .top_kidscollege .inner {
    width: 100%;
  }
  .kttext {
    width: 89% !important;
    margin: auto;
  }
  .logo_kidscollege {
    margin-bottom: 0 !important;
  }
  .k_top {
    position: relative;
    padding-top: 200px;
  }
  .k_top h2 {
    margin-right: 0;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: fit-content;
  }
  /*Safari*/ ::-webkit-full-page-media, :future, :root .k_top h2 {
    left: 48%;
  }
}
@media (max-width: 550px) {
  .top_kidscollege {
    padding-bottom: 60px;
  }
  .k_top {
    padding-top: 145px;
  }
  .k_top h2 {
    font-size: 1.45rem;
  }
  .k_top h2 span {
    margin-top: -23px;
  }
  .ktflex div:nth-of-type(1) {
    width: 39%;
  }
}
/*プログラム一覧*/
.menus .inner {
  max-width: 1350px;
}
.menu {
  color: #fff;
  width: 22.7%;
}
.menu img {
  margin-bottom: 17px;
}
.menu h2 {
  color: #f39800;
  text-align: center;
  line-height: 1.6;
  margin-bottom: 20px;
  font-size: clamp(1.4rem, 1.275rem + 0.4vw, 1.5rem);
  font-weight: 700;
}
.menu h2 span:not(.ib) {
  display: block;
  font-size: 80%;
  color: #fff;
}
.kidscollege_menus .menu {
  width: 30%;
}
.kidscollege_menus .menu h2 {
  font-size: clamp(1.3rem, 1.18rem + 0.4267vw, 1.5rem);
}
@media (max-width: 1230px) {
  .menus {
    padding: 120px 0 60px;
  }
  .menu {
    width: 48%;
    margin-bottom: 60px;
  }
}
@media (max-width: 1180px) {
  .kidscollege_menus .menu {
    width: 47%;
  }
  .kidscollege_menus .menu:not(:last-of-type) {
    margin-bottom: 60px;
  }
  .kidscollege_menus .menu:last-of-type {
    margin: auto;
  }
}
@media (max-width: 750px) {
  .menus {
    padding: 75px 0 60px;
  }
  .kidscollege_menus .menu {
    width: 100%;
  }
  .menu:last-child {
    margin-bottom: 0 !important;
  }
}
/* プログラム詳細 */
.programs .inner {
  max-width: 1260px;
}
.programs .flexbox {
  margin-top: -3%;
  margin-left: -3%;
}
/*img*/
.progimg {
  width: 51%;
  position: relative;
  padding-left: 5%;
  padding-top: 5%;
}
.progimg img {
  border-radius: 25px;
}
/*title*/
.progimg .entitle {
  width: 32%;
  max-width: 145px;
  border: none;
  background: #f6ad3a;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
}
/*text*/
.progtext {
  padding-top: 5%;
  width: 45%;
}
/*table*/
.on_table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-weight: normal;
  margin-top: 25px;
}
.on_table tr {
  border-bottom: 1px dashed #515259;
}
.on_table tr:first-child {
  border-top: 1px dashed #515259;
}
.on_table th, .on_table td {
  padding: 15px 0;
}
.on_table th {
  font-weight: 700;
  width: 19%;
  text-align: left;
  padding-left: 15px;
  background: #f6f4f2;
  vertical-align: top; /*上揃え*/
}
.on_table td {
  font-weight: 500;
  padding-left: 15px;
  padding-right: 10px;
  width: 81%;
  background: transparent;
}
@media (max-width: 1340px) {
  .on_table th {
    width: 30%;
  }
  .on_table td {
    width: 70%;
  }
}
@media (max-width: 130px) {
  .progimg .entitle {
    max-width: 125px;
  }
}
@media (max-width: 750px) {
  .programs .flexbox {
    margin-top: 0;
    margin-left: 0;
  }
  .progimg {
    padding-left: 8%;
    padding-top: 8%;
    margin-bottom: 25px;
  }
  .progtext {
    padding-top: 0;
  }
}
@media (max-width: 550px) {
  .programs {
    padding-top: 60px;
  }
  .progimg .entitle {
    width: 100px;
  }
  .entitle.advtitle {
    font-size: 0.8rem;
  }
  .progimg {
    margin-bottom: 35px;
  }
  .on_table {
    margin-top: 35px;
  }
}
/*=== 表関係 ===*/
/*グローバルEnglish 時間*/
.eng li {
  padding-left: 130px;
  position: relative;
}
.eng li span {
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 1135px) {
  .eng li {
    padding-left: 0;
    margin-bottom: 10px;
  }
  .eng li:last-child {
    margin-bottom: 0;
  }
  .eng li span {
    font-weight: 700;
    position: initial;
    display: block;
  }
}
/*そろばん 表*/
.ct_wrap .on_table th {
  width: 35%;
}
.ct_wrap .on_table td:nth-of-type(2) {
  border-left: 1px solid #adadad;
}
/*sp*/
.spsctext {
  display: none;
  font-size: 80%;
}
@media (max-width: 1135px) {
  .spsctext {
    display: block;
    margin-top: 20px;
  }
  .ct_wrap .on_table {
    width: 570px;
    margin-top: 0 !important;
  }
  .ct_wrap {
    padding-bottom: 5px;
    overflow-x: scroll;
  }
}
@media (max-width: 750px) {
  .ct_wrap .on_table {
    width: 100%;
    margin-top: 25px !important;
  }
  .spsctext {
    display: none;
  }
}
@media (max-width: 550px) {
  .spsctext {
    display: block;
    margin-top: 25px;
  }
  .ct_wrap .on_table {
    width: 510px;
    margin-top: 0 !important;
  }
}
/*アドベンチャーランド*/
.adventure {
  padding-bottom: 0;
}
/**/
.adv li {
  display: flex;
  justify-content: space-between;
  max-width: 253px;
}
.adv li span:first-child::after {
  content: "：";
}
@media (max-width: 1035px) {
  .adv li {
    display: block;
    max-width: 100%;
    margin-bottom: 10px;
  }
  .adv li:last-child {
    margin-bottom: 0;
  }
  .adv li span:first-child::after {
    content: none;
  }
  .adv li span:first-child {
    font-weight: 700;
    position: initial;
    display: block;
  }
}
.combi, .combination .flexbox {
  margin: auto !important;
}
/* ３コースとの組み合わせでより充実した時間に。 */
/*img*/
.combi {
  display: flex;
  justify-content: space-between;
  width: 97%;
  max-width: 1205px;
  margin-top: 80px !important;
}
.combi div {
  width: 31%;
}
/*text*/
.combination.inner {
  max-width: 1204px;
}
.combination .flexbox {
  flex-wrap: nowrap;
  margin-top: 40px !important;
}
/*title*/
.combination h2 {
  line-height: 1.5;
  font-size: clamp(1.2rem, 0.6375rem + 1.8vw, 1.65rem);
  font-weight: 700;
  color: #f39800;
  margin-right: 60px;
  white-space: nowrap;
}
@media (max-width: 1080px) {
  .combination h2 {
    margin-right: 35px;
  }
}
@media (max-width: 950px) {
  .combination .flexbox {
    display: block;
  }
  .combination h2 {
    margin-right: 0;
    margin-bottom: 33px;
    text-align: center;
  }
}
/* Activities */
.activities {
  padding-bottom: 60px;
}
.activities .inner {
  max-width: 1400px;
}
.activities .maintitle {
  text-transform: capitalize;
  letter-spacing: 0.14em;
}
.activities .flexbox {
  justify-content: center;
}
.activities .menu {
  width: 30.3%;
  margin: 0 1.5% 55px;
}
.activities .menu img {
  width: 100%;
}
.activities .menu h2 {
  color: #0069aa;
}
.activities .menu p {
  color: #3b3c42;
}
@media (max-width: 1050px) {
  .activities .menu {
    width: 46%;
    margin: 0 2% 55px;
  }
}
@media (max-width: 750px) {
  .activities .menu {
    width: 100%;
    margin: 0 0 55px;
  }
  .activities .menu:last-child {
    margin-bottom: 0 !important;
  }
}
@media (max-width: 550px) {
  .activities {
    padding-top: 40px;
  }
}
/* 諸届用紙ダウンロードページ ==============================================*/
.downloads {
  max-width: 800px;
  margin: auto;
  margin-bottom: 80px;
}
.downloads:last-child {
  margin-bottom: 0 !important;
}
.downloads h3 {
  margin-bottom: 7px;
  padding-left: 12px;
  font-weight: 500;
  font-size: 1.2rem;
}
.downloads ul li {
  border-bottom: 1px dashed #333;
  padding: 10px 12px;
  font-size: 107%;
}
.downloads ul li:first-child {
  border-top: 1px dashed #333;
}
.downloads ul li a {
  padding-left: 18px;
  position: relative;
  color: #3b3c42;
  display: inline-block;
}
.downloads ul li a::before {
  content: "▶";
  position: absolute;
  font-size: 70%;
  top: 0.4em;
  left: 0;
}
.downloads ul li a:hover {
  opacity: 0.6;
}
.pink_arrow li a::before {
  color: #f19dae;
}
.blue_arrow li a::before {
  color: #0069aa;
}
@media (max-width: 550px) {
  .downloads h3 {
    font-size: 1.1rem;
  }
  .downloads {
    margin-bottom: 55px;
  }
  .downloads ul li {
    font-size: 100%;
  }
}