/* CSS Document */
/********************************************************/
/******** 共通（body,inner,pタグ,imgタグの基本設定） ********/
/*******************************************************/
body p { word-break:break-all;}
/*.inner { width:95%; max-width:1000px; margin:0 auto;}*/
.spOnly { display: none;}
.pcOnly { }
.googleMap iframe { max-width: 100%; }
#page-top { width: 60px; height: 60px; position: fixed; right: 0; bottom: 0; z-index: 3;}
img[src$=".svg"] { width: 100%; height: 100%; object-fit: contain;}
a { text-decoration: none;}
a:hover { opacity: 0.5;}
@media only screen and (max-width:820px){
  body { font-size: 1.4rem;}
  
  .inner { max-width: 90%;}
  .spOnly { display: inline-block;}
  .pcOnly { display: none;}

  .googleMap iframe { max-height: 500px ;}
  img { width: 100%; height: auto;}
  img[src$=".svg"] { width: 100%; height: auto;}
  .column2 { width: 100%; margin: 0 auto;}
  .column3 { width: 100%; margin: 0 auto;}
  .column3 + .column3 { margin-top: 30px;}

}
@media only screen and (max-width:820px){

}

/*inview*/
.fadeIn { opacity: 0; transition: 1s; transform: translate(0, 10%);}
.fadeIn.is-show { opacity: 1; transform: translate(0, 0);}

.arrow img[src$=".svg"] { width: auto; height: auto;}

.wp-block-separator { border-color: #ccc!important;}

/**********************/
/****** ヘッダー ******/
/**********************/
.headerArea { position: absolute; width: 100%; z-index: 5; background: #FFFAC9;}
.headerArea::after { content: ""; display: block; width: 100%; height: 50px; position: absolute;left: 0; bottom: -48px; background: url(images/header-wave.png) no-repeat; background-size: 1920px; background-position: top center;}
.headerLogoArea { text-align: center;}
.headerLogo { display: block; width: 100px;}
.siteName { display: block; font-size: 3.2rem; font-family: "Kiwi Maru", serif; font-weight: 700; line-height: 1.2; position: absolute; top: 17px; left: 105px; color: #58C2D1;}
.siteName span { /*display: block; width: 120px; padding: 5px 10px; background: #58C2D1; color: #fff; font-size: 1.4rem; font-weight: 500; text-align: center; border-radius: 35px;*/ display: inline-block; margin-right: 0.5em;}
.headerNavArea { position: relative; max-width: 1100px; margin: 10px auto;}
.headerNav { justify-content: center; width: calc(100% - 100px);}
.headerNav li { padding: 0 1em;}
.headerNav li a { font-size: 1.9rem; font-weight: 700;}
.headerNav li + li { border-left: solid 1px #FFB400;}
.headerTell { position: absolute; top: 15px; right: 20px; background: #FFEB00; font-size: 1.8rem; padding: 0 10px;}
.headerTell span { font-size: 2.7rem;}
.topMenu { position: absolute;}
.topMenu a { font-size: 1.4rem;}
/*スクロールで小さくする*/
.headerArea.small { position: fixed; top: 0; transition: 0.5s; box-shadow: 0 0 7px #999; }
.small .headerNavArea { align-items: center;}
.small .headerNav { width: calc(100% - 200px);}
.small .headerNav li a { font-size: 1.8rem;}
.small .headerLogoArea { display: flex; align-items: center; gap: 5px;}
.small .headerLogo { width: 45px; right: 15px;}
.small .siteName { position: static; font-size: 1.6rem;/* line-height: 1.5;*/}
.small .siteName span { /*font-size: 1.2rem; padding: 2px;*/ display: block;}
.small .headerTell { display: none; top: 50px; z-index: 1;}
.small .headerTell span { font-size: 2.4rem;}
@media only screen and (max-width:820px){
  .headerArea { top: 0;}
  .headerNavArea { padding: 10px 80px 10px 20px; margin: 0;}
  img[src$=".svg"].headerLogo { width: 50%;}
  .headerNav { display: none;}
  .topMenu { display: none;}
  .headerLogoArea { width: 100%; display: flex; align-items: center; gap: 5px;}
  .headerLogo { width: 45px;}
  .siteName { position: static; font-size: 2.0rem; /*line-height: 1.5;*/}
  .siteName span { /*width: 100px; font-size: 1.2rem; padding: 2px 10px;*/display: block; text-align: left;}
  .headerArea::after { background-size: contain;}
  .headerTell { display: none; font-size: 1.6rem; top: 100px;}
  .headerTell span { font-size: 2.2rem;}
  .small .headerNavArea { padding: 10px 80px 10px 20px;}
  /*.small .headerLogoArea { width: 80%;}*/
  /*.small .siteName span { font-size: 1.0rem; width: 90px;}*/
}

/**********************/
/****** フッター ******/
/**********************/
.footerArea { padding: 80px 80px 20px 80px; background: #58C2D1; margin-top: 100px;}
.topContent + .footerArea { margin-top: 0;}
.footerInner { max-width: 1300px; margin: 0 auto;}
.footerLeftArea { width: 55%;}
.dataArea { margin-bottom: 30px; margin-left: 20px;}
.nameText { color: #fff; font-family: "Kiwi Maru", serif; font-size: 3.9rem; font-weight: 500; line-height: 1.2; padding: 10px 0;}
.dataText { color: #fff; font-family: "Zen Maru Gothic", sans-serif; font-size: 2.0rem; font-weight: 500;}
.dataText a { color: #fff; text-decoration: underline;}
.footerNavArea { display: flex; gap: 20px 40px; width: 45%; margin: 0 auto;}
.footerNavLeft { width: 35%;}
.footerNavRight { width: 40%; margin-top: 46px;}
.footerNav { min-width: 20%;}
.footerNavOne { margin-bottom: 20px;}
.footerNav li { padding-bottom: 15px;}
.footerNav li a { font-family: "Zen Maru Gothic", sans-serif; color: #fff; font-size: 1.8rem;}
.footerNav li ul { padding-left: 5px; margin: 5px 0 10px;}
.footerNav li a.footerNavParent { display: inline-block; width: 100%; font-size: 2.0rem; font-weight: 700; padding: 0 5px; border-bottom: solid 1px #fff;}
.footerList { max-width: 1300px; display: flex; justify-content: space-between; align-items: center; margin: 0px auto 20px;}
.nursery { width: 23%; border-radius: 5px;}
.teine { background: #58C2D1; border: solid 1px #fff;}
.sakaemachi { background: #F88EA4;}
.nopporo { background: #FF8D6D;}
.sinhassamu { background: #96C749;}
.nursery a { display: flex; justify-content: center; align-items: center; gap: 1em; font-size: 1.8rem; color: #fff; padding: 5px 0;}
.nursery img { width: 40px;}
.company { width: 15%; margin: 0 auto;}
.company a { display: block; width: 100%; background: #fff; text-align: center; padding: 2px 0; font-size: 1.4rem; margin-top: 30px;}
.copyRight { font-size: 1.4rem; text-align: center; color: #fff; margin: 30px 0 10px;}
@media only screen and (max-width:820px){
  .footerArea { padding: 40px 5% 20px; margin-top: 50px;}
  .footerLeft { width: 100%;}
  .footerRight { display: none;}
  .footerNavArea { width: 90%; display: none;}
  .footerLeftArea { width: 100%;}
  .footerLogo { width: 15%;}
  .dataArea { width: 75%;}
  .nameText { font-size: 2.0rem;}
  .dataText { font-size: 1.4rem;}
  .footerImg { width: 70%; margin: 0 auto;}
  .footerMap { width: 100%; margin-top: 10px;}
  .footerMap iframe { width: 100%;}
  .footerList { flex-wrap: wrap; gap: 10px; margin-top: 20px;}
  .nursery { width: 47%;}
  .nursery img { width: 30px;}
  .nursery a { gap: 0.5em; font-size: 1.6rem;}
  .company { width: 47%;}
  .copyRight { font-size: 1.2rem;}
}

/**********************/
/****** TOPページ *****/
/**********************/

.topContent { padding-top: 100px;}
@media only screen and (max-width:820px){
  .topContent { padding-top: 65px;}
}

.topRead { position: absolute; top: 4%; left: 17%; width: 30%; animation: read 1s 0.5s ease 1 normal; animation-fill-mode: both; opacity: 0;}
.topImgHachi { position: absolute; top: 7%; right: 29%; width: 9%; animation: hachi 1s ease-in-out infinite alternate;}
@media only screen and (max-width:820px){
  .topRead { top: 6%; left: 3%; width: 75%;}
  .topImgHachi { top: 14%; right: 10%; width: 16%;}
}
@keyframes read {
  0% { opacity: 0; transform: translateY(20px);}
  100% { opacity: 1; transform: translateY(0px);}
}
@keyframes hachi {
  0% { transform: translateY(20px);}
  5% { transform: translateY(20px);}
  95% { transform: translateY(-20px);}
  100% { transform: translateY(-20px);}
}

.topHexagonArea { position: relative; padding: 25% 0 20%;}
.hexagonBox { background: #58C2D1; aspect-ratio: 622 / 539; max-width: 623px; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); text-align: center; color: #fff; font-family: "Zen Maru Gothic", sans-serif; display: flex; justify-content: center; align-items: center; flex-wrap: wrap;}
.hexagonBox h2 { font-size: 3.3rem; font-weight: 700; width: 100%; margin: 10% 10% 0;}
.hexagonBox h2 span { font-size: 5.5rem;}
.hexagonBox .hexagonBtnYellow { margin: 5% auto; width: 50%; clip-path: none;position: relative;}
.hexagonBox .hexagonBtnYellow a { display: block; clip-path: polygon(20px 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 20px 100%, 0% 50%);}
.hexagonBox .hexagonBtnYellow::before { content: ""; display: block; width: 100%; height: 47px; clip-path: polygon(20px 0%, calc(100% - 20px) 0%, 100% 40%,100% 52%, calc(100% - 20px) 100%, 20px 100%, 0% 53%,0% 34%); background: rgba(255, 255, 255, 0.5); position: absolute; bottom: -7px; left: 50%; transform: translateX(-50%); z-index: -1;}
.hexagonBox .hexagonBtnYellow a:hover { transform: translate(0, 7px);}
.hexagonBox .hexagonBtnYellow:hover::before { clip-path: polygon(20px 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 20px 100%, 0% 50%);}
.topHexagonItem { position: absolute; width: 33%; max-width: 623px;}
.topHexagonItem01 { top: -32vh; right: 46%;}
.topHexagonItem02 { top: calc((33vw * 0.867) / 2); right: 46%;}
.topHexagonItem03 { top: -4vh; left: 48%;}
.topHexagonItem04 { top: -4vh; left: -6%;}
.topHexagonItem05 { top: -40vh; right: -8%;}
/*.topHexagonItem06 { top: calc((33vw * 0.867) - 7%); left: 57%; z-index: -1;}*/
.topHexagonItem06 { top: calc((33vw * 0.867) - 11%); left: 63%; transform: translateX(-50%); transform-origin: 50% 0%; /*width: 144px; height: 232px;*/width: 11%; z-index: -1; transition: transform 0.8s ease-in-out;}
.topHexagonItem06.swing-right { transform: translateX(-50%) rotate(25deg);}
.topHexagonItem06.swing-left { transform: translateX(-50%) rotate(-25deg);}
.topHexagonItem06.swing-center { transform: translateX(-50%) rotate(0deg);}
.topHexagonItem06 img { width: 100%; height: 100%; object-fit: contain; object-position: top center; display: block;}
@media only screen and (max-width:1080px){
  .hexagonBox h2 { font-size: 2.2rem;}
  .hexagonBox h2 span { font-size: 2.8rem;}
}
@media only screen and (max-width:820px){
  .topImg { width: 100%; height: auto;}
  .topImg img { width: 100%; height: 100%; object-fit: cover;}
  .topHexagonArea { padding: 20px 0 5%; display: flex; flex-wrap: wrap; justify-content: center; gap: 0 2%;}
  .hexagonBox .hexagonBtnYellow { width: 90%; margin-bottom: 0;}
  .topHexagonItem { position: static; width: 44%; clip-path: none; aspect-ratio: auto; border-radius: 10px; overflow: hidden;}
  .hexagonBox h2 { font-size: 2.2rem; margin: 5% 5% 0;}
  .topHexagonItem01 { width: 90%; margin: 0 auto; padding: 10px 0 15px; margin-bottom: 20px;}
  .hexagonBox h2 span { font-size: 2.8rem;}
  .topHexagonItem04 { display: none;}
  .topHexagonItem05 { display: none;}
  .topHexagonItem06 { width: 25%; height: auto; position: relative; left: 7%; margin-top: -4%;}
}


/*news*/
.topNewsArea { padding: 50px 0;}
.topNewsTitleArea { width: 180px; margin-right: 100px;}
.topNewsList li { border-bottom: dashed 2px #58C2D1; padding: 5px 0; margin-bottom: 20px;}
.topNewsList a { display: flex; justify-content: space-between; align-items: center; }
.topNewsListData { width: 7rem; text-align: center;}
.topNewsListCat { width: 11rem; background: #58c2d1; text-align: center; padding: 2px 0 3px; border-radius: 5px; font-size: 1.4rem; color: #fff; font-weight: 700;}
.topNewsListCat.kurashi { background-color: #F88EA4;}
.topNewsListCat.event { background-color: #96C749;}
.topNewsListCat.food { background-color: #FF8D6D;}
.topNewsListTitle { width: calc(100% - 23rem); font-size: 1.8rem;}
@media only screen and (max-width:820px){
  .topNewsArea {padding: 30px 0;}
  .topNewsTitleArea { margin-bottom: 10px;}
  .topNewsList a { flex-wrap: wrap; justify-content: flex-start; gap: 5px 0;}
  .topNewsListData { font-size: 1.2rem; text-align: left;}
  .topNewsListCat { font-size: 1.2rem; width: 9rem;}
  .topNewsListTitle { width: 100%; font-size: 1.6rem;}
}

/*top 園について*/
.topAboutArea { padding: 50px 0;}
.topAboutInner { max-width: 1000px;}
.topAboutReadBox { padding: 100px 0 60px; position: relative;}
.topAboutRead { text-align: center; font-size: 3.7rem; font-family: "Kiwi Maru", serif; color: #FFB400; margin-bottom: 20px;}
.topAboutText { font-size: 1.8rem; line-height: 2; margin: 40px auto 60px;}
.topAboutFlex { display: flex; position: relative;}
.leftImgBox { width: calc((100% - 550px) / 2); margin-top: -20px; position: relative; padding-right: 1vw;}
.illust02 { position: absolute; /*top: 0; left: calc(((99vw - 550px) / 2) - 5.5vw);*/ top: 7%; left: calc(((89vw - 550px) / 2) - 5.5vw); z-index: -1; width: 7vw; height: 14vh;}
.illust02.start { animation: hyokottoPC 0.5s ease-out 1 normal; animation-fill-mode: both;}
.illust02 img { width: 100%; height: 100%; object-fit: contain;}
.centerTextBox { width: 550px; margin-top: 50px; font-family: "Kiwi Maru", serif; margin-bottom: 50px;}
.centerTextBox p { line-height: 2;}
.rightImgBox { width: calc((100% - 550px) / 2); align-self: end; position: relative;}
.illust03 { width: 209px; height: 186px; position: absolute; top: -186px; /*left: 50%; transform: translateX(-50%);*/ left: calc(100% + 209px);}
.illust03.start { animation: voomPC 1s ease-out 1 normal; animation-fill-mode: both;}
.topHachi { width: 140px; position: absolute; top: 20%; left: calc(50% + 300px);}
@media only screen and (max-width:820px){
  .topAboutArea { padding: 0;}
  .topAboutReadBox { padding: 50px 0 10px;}
  .topAboutRead { font-size: 2.0rem;}
  .topAboutText { text-align: left; font-size: 1.6rem; margin-top: 20px;}
  .topAboutFlex { display: block;}
  .leftImgBox { width: 70%;}
  .illust02 { width: 28%; height: auto; left: auto; right: 13%;}
  .illust02.start { animation: hyokottoSP 0.5s ease-out 1 normal; animation-fill-mode: both;}
  .rightImgBox { width: 70%; margin-left: auto;}
  .illust03 { width: 50%; top: 0; left: 100%; z-index: -1;}
  .illust03.start { animation: voomSP 1s ease-out 1 normal; animation-fill-mode: both;}
  .centerTextBox { margin-top: 20px;}
  .centerTextBox .textC { text-align: left;}
  .topHachi { width: 100px; top: 1%; left: calc(100% - 100px);}
}
@keyframes hyokottoPC {
  0% { top: 7%; left: calc(((89vw - 550px) / 2) - 5.5vw); z-index: -1;}
  100% { top: 0; left: calc(((99vw - 550px) / 2) - 5.5vw); z-index: 0;}
}
@keyframes hyokottoSP {
  0% { right: 13%; z-index: -1;}
  100% { right: -18%; z-index: 0;}
}
@keyframes voomPC {
  0% { left: calc(100% + 209px);}
  100% { left: 30%;}
}
@keyframes voomSP {
  0% { left: 100%;}
  100% { left: -40%;}
}


/*過ごし方*/
.topSchedule { padding: 50px 0 80px; margin-top: 100px; background: #ABE0E8; position: relative;}
.topSchedule::before { content: ""; display: block; width: 100%; height: 50px; position: absolute; top: -50px; left: 0; background: url(images/footer-wave.png) no-repeat; background-size: 1920px; background-position: bottom center; }
.illust04 { position: absolute; width: 150px; top: -135px; left: 50%; transform: translateX(-50%); /*animation: yurayura 5s linear infinite normal;*/ animation: fuwafuwa 2s ease-in-out infinite alternate; transform-origin: bottom center;}
.topSchedule .hexagonBtn { max-width: 200px; margin: 20px auto;}
.topScheduleItemHexagon { width: 315px; height: 273px; clip-path: polygon(75px 0%, calc(100% - 75px) 0%, 100% 50%, calc(100% - 75px) 100%, 75px 100%, 0% 50%);}
@media only screen and (max-width:820px){
  .topSchedule { margin-top: 150px; padding-bottom: 20px;}
  .illust04 { width: 30%; top: -95px;}
  .topScheduleItem { display: flex; flex-wrap: wrap; justify-content: center; width: 45%; margin: 0 1%;}
  .topScheduleItem .hexagonBtn { order: 2;}
  .topScheduleItem .topScheduleItemHexagon { order: 1; width: 100%; height: auto; clip-path: none;}
}
/*@keyframes yurayura {
  0% { transform: translateX(-50%) rotate(0);}
  25% { transform: translateX(-50%) rotate(10deg);}
  35% { transform: translateX(-50%) rotate(10deg);}
  50% { transform: translateX(-50%) rotate(0);}
  65% { transform: translateX(-50%) rotate(-10deg);}
  75% { transform: translateX(-50%) rotate(-10deg);}
  100% { transform: translateX(-50%) rotate(0);}
}*/
@keyframes fuwafuwa {
  0% { transform: translateX(-50%) translateY(-10px);}
  100% { transform: translateX(-50%) translateY(10px);}
}

/**********************/
/****** 中ページ *****/
/**********************/
/*共有パーツ*/
.breadcrumbs { width: 1100px; max-width: 100%; margin: -50px auto 50px; position: relative; z-index: 3;}
.breadcrumbs span { font-size: 1.4rem;}
.breadcrumbs a { font-size: 1.4rem; text-decoration: underline;}
.breadcrumbs a:hover { text-decoration: none;}
@media only screen and (max-width:820px){
  .breadcrumbs { display: none;}
}

/*ページタイトル*/
.pageHeader { position: relative;}
.pageTopCenterNoImg { padding: 200px;}
.pageTopCenterImg { width: 1100px; max-width: 100%; padding-right: 200px; margin: 120px auto; position: relative; animation: feed 0.8s ease-in;}
.pageTopCenterImg::before { content: ""; display: block; width: calc(100% - 200px); height: 100%; background: linear-gradient(90deg,rgba(255, 255, 255, 1) 2%, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 1) 98%); position: absolute; left: 0; top: 0;}
.pageTopCenterImg::after { content: ""; width: 100%; height: 125px; background: url(images/img-wave.svg); background-size: contain; background-position: left bottom; position: absolute; left: 0; bottom: -1px; background-repeat: no-repeat;}
.pageTopCenterImg img { aspect-ratio: 906 / 566; width: 100%; height: 100%; object-fit: cover;}
.pageTitle { font-size: 5.0rem; text-align: center; position: absolute; top: 175px; left: 50%; transform: translateX(-50%); text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #FFF;}
.pageTitle .en { display: flex; font-size: 2.8rem; color: #EB6100; gap: 0.5em; align-items: center; justify-content: center;}
.pageTitle .en::before { content: ""; display: block; width: 55px; height: 2px; background: #EB6100; border-radius: 2px; box-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #FFF;}
.pageTitle .en::after { content: ""; display: block; width: 55px; height: 2px; background: #EB6100; border-radius: 2px; box-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #FFF;}
.pageTopCenterNoImg + .pageTitle { top: 200px;}
.recruitmentTopImg { margin: 120px 0 130px;}

.pageTopLeftImg { width: 352px; aspect-ratio: 352 / 305; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); position: absolute; top: 38%; right: calc(50% + 420px); animation: feed-in 0.8s ease-in 0.5s; animation-fill-mode: both; opacity: 0;}
.pageTopLeftImg img { width: 100%; height: 100%; object-fit: cover;}
.pageTopRightImg { width: 505px; aspect-ratio: 505 / 437; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); position: absolute; top: 43%; left: calc(50% + 250px); animation: feed-in 0.8s ease-in 0.9s; animation-fill-mode: both; opacity: 0;}
.pageTopRightKazari { position: absolute; top: 27%; left: calc(50% + 390px);}
.pageTopRightImg img { width: 100%; height: 100%; object-fit: cover;}

.boxBorder { background: #fff; padding: 15px;}
.boxBorderText { border: dashed 2px #58C2D1; padding: 15px; font-size: 2.0rem; font-weight: 700;}
.boxBorder.bgColor { border: solid 3px #58c2d1;}
.boxBorder.bgColor .boxBorderText { padding: 30px;}
@media only screen and (max-width:820px){
  .pageTopCenterImg { margin: 190px auto 170px; padding-right: 0;}
  .pageTopCenterImg::before { width: 100%;}
  .pageTitle { font-size: 3.0rem; top: 90px; z-index: 4;}
  .pageTitle .en { font-size: 2.5rem;}
  .pageTopLeftImg { width: 150px; top: auto; bottom: 75px; left: 0;}
  .pageTopRightImg { width: 120px; left: auto; right: 0; top: auto; bottom: 126px;}

  .pageTopCenterNoImg {padding: 0;}
  .pageTopCenterNoImg + .pageTitle { position: static; transform: none; margin-top: 100px; margin-bottom: 25px;}
}
@keyframes feed {
  0% { opacity: 0;}
  100% { opacity: 1;}
}
@keyframes feed-in {
  0% { opacity: 0; transform: translateY(20px);}
  100% { opacity: 1; transform: translateY(0px);}
}

/*ページ内リンクナビ*/
.pageLink { display: flex; justify-content: center; gap: 2em; margin: 50px 0 100px;}
.pageLinkItem { width: 180px; aspect-ratio: 223 / 195; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); border-radius: 5px; flex-grow: 0!important;}
.pageLinkItem p { width: 100%; height: 100%;}
.pageLinkItem a { display: block; width: 100%; height: 100%; text-align: center; color: #fff; font-size: 3.0rem; font-family: "Kiwi Maru", serif; line-height: 1.1; padding-top: 30px; position: relative;}
.pageLinkItem a::after { content: ""; width: 30px; height: 19px; background: url(images/arrow-w.svg); background-size: contain; background-repeat: no-repeat; position: absolute; bottom: 25px; left: 50%; transform: translateX(-50%);}
.pageLinkItem a span { display: block; font-size: 4.0rem;}
.pageLinkItem.orange { background: #FFB400;}
.pageLinkItem.pink { background: #F88EA4;}
.pageLinkItem.blue { background: #58C2D1;}
@media only screen and (max-width:820px){
  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.pageLinkItem { flex-basis: auto!important; width: 100px;}
  .pageLink { margin: 0 auto 100px;}
  .pageLinkItem a { font-size: 2.0rem; padding-top: 15px; line-height: 1.0;}
  .pageLinkItem a span { font-size: 2.5rem;}
  .pageLinkItem a::after { bottom: 0; width: 15px;}
}

/*レイアウト関係*/
.pageContainer { padding: 130px 0 50px;}
.pageContainer + .pageContainer { margin-top: 200px;}
.bgOrange { background: #FFF0CC;}
.bgPink { background: #FDDFE5;}
.bgBlue { background: #DEF3F6;}
.pageContAreaWhite { padding: 70px 0; width: 1100px; max-width: 100%; margin: 0 auto; background: #fff;}
.pageContArea { width: 1100px; max-width: 100%; margin: 0 auto;}
.item + .item { margin-top: 50px;}
@media only screen and (max-width:820px){
  .pageContainer + .pageContainer { margin-top: 150px;}
  .pageContAreaWhite { padding: 30px 0;}
}

/*パーツ*/
.hexagonImg { width: 350px; height: 300px; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);}
.hexagonImg img { width: 100%; height: 100%!important; object-fit: cover;}
.hexagonImgSmall { width: 300px; height: 250px; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);}
.hexagonImgSmall img { width: 100%; height: 100%!important; object-fit: cover;}


/*園について*/
.aboutCatch { font-size: 4.0rem; text-align: center; line-height: 2;}
.featuresCatch { font-size: 2.0rem; line-height: 2; display: flex; align-items: center; height: 100%;}
.policyArea { position: relative;}
.policyBox.wp-block-columns { display: flex; justify-content: space-around; gap: 20px; flex-wrap: wrap!important;}
.policyItem.wp-block-column { width: 45%; flex-grow: 0!important;}
.policyItem p { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; min-height: 235px; background: #F88EA4;  /*clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);*/ color: #fff; font-size: 2.6rem; font-weight: 700; text-align: center; padding: 20px 0;}
/*.policyItem + .policyItem { margin-top: 45px;}
.policyItem:nth-child(2n + 1) { position: absolute; right: 0;}
.policyItem:nth-child(3) { top: 295px;}
.policyItem:nth-child(4) { margin-bottom: 400px;}
.policyItem:nth-child(5) { top: 780px;}*/

.aimCatch { font-size: 3.5rem; line-height: 1.8; text-align: center; margin-bottom: 30px;}
.aimList { width: 50%; margin: 30px auto 60px; padding-left: 1em;}
.aimList li { font-size: 3.0rem;}
.aimList li::before { content: "●"; display: inline; color: #F88EA4;}

.facility.pageContArea { padding: 100px 0 0;}
/*施設図の画像ポップアップ*/
.facility img { cursor: pointer; transition: transform 0.3s ease, box-shadow 0.3s ease; border: 3px solid transparent;}
.facility img:hover { transform: scale(1.05);}
/* 施設図のモーダルオーバーレイ */
.about .popup-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.9); z-index: 1000; cursor: pointer;}
/* 施設図のモーダルコンテンツ */
.about .popup-content { width: 65vw; height: 65vh; background: #ebebeb;}

@media only screen and (max-width:820px){
  .featuresCatch { font-size: 1.6rem;}
  .aboutCatch { font-size: 2.4rem;}
  .policyBox.wp-block-columns { gap: 10px 2%;}
  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.policyItem { flex-basis: 48%!important;}
  .policyItem p { font-size: 1.8rem; min-height: 170px;}
  .aimCatch { font-size: 2.2rem;}
  .aimList { width: 90%;}
  .aimList li { font-size: 2.2rem;}
  .facility img { cursor: default;}
  .facility img:hover { transform: none;}
}

/*過ごし方*/
.schedule.pageContainer { padding: 10px 0 100px; margin: 0;}
.scheduleSubTitle { font-size: 2.8rem; text-align: center; color: #F88EA4; font-weight: 700;}
.scheduleSubTitle.blue { color: #58C2D1;}
.scheduleArea { margin-top: 20px;}
.scheduleArea dl { display: flex; gap: 1em;}
.scheduleArea dl dt { display: flex; justify-content: center; align-items: center; width: 15%; font-size: 2.0rem; background: #fff; text-align: center; padding: 25px 0; position: relative;}
.scheduleArea dl dd { width: 83%; font-size: 2.5rem; background: #fff; padding: 20px 40px;}
.scheduleArea dl + dl dt::after { content: ""; width: 100%; height: 15px; clip-path: polygon(0 0, 100% 0, 50% 100%); background: #fff; position: absolute; top: -1px; left: 0; z-index: 1;}
.schedule01 dl:nth-child(2n - 1) dt { background: #FCC9D3;}
.schedule01 dl:nth-child(2n - 1) dd { background: #FCC9D3;}
.schedule02 dl:nth-child(2n - 1) dt { background: #ABE0E8;}
.schedule02 dl:nth-child(2n - 1) dd { background: #ABE0E8;}
.schedule01 dl:nth-child(2n) dt::after { background: #FCC9D3;}
.schedule02 dl:nth-child(2n) dt::after { background: #ABE0E8;}
/*時計*/
.scheduleArea dt::before { content: ""; display: block; width: 46px; height: 46px; background-size: contain; background-repeat: no-repeat; position: absolute; top: 15px; left: -23px; z-index: 1;}
.schedule01 .t7 dt::before { background-image: url(images/t7-p.png);}
.schedule01 .t8 dt::before { background-image: url(images/t8-p.png);}
.schedule01 .t9 dt::before { background-image: url(images/t9-p.png); top: 35px;}
.schedule01 .t10 dt::before { background-image: url(images/t10-p.png); top: 35px;}
.schedule01 .t11 dt::before { background-image: url(images/t11-p.png); top: 35px;}
.schedule01 .t14 dt::before { background-image: url(images/t14-p.png);}
.schedule01 .t15 dt::before { background-image: url(images/t15-p.png); top: 35px;}
.schedule01 .t16 dt::before { background-image: url(images/t16-p.png);}
.schedule01 .t18 dt::before { background-image: url(images/t18-p.png);}
.schedule01 .t19 dt::before { background-image: url(images/t19-p.png);}
.schedule02 .t7 dt::before { background-image: url(images/t7-b.png);}
.schedule02 .t8 dt::before { background-image: url(images/t8-b.png);}
.schedule02 .t9 dt::before { background-image: url(images/t9-b.png); top: 35px;}
.schedule02 .t10 dt::before { background-image: url(images/t10-b.png); top: 35px;}
.schedule02 .t11 dt::before { background-image: url(images/t11-b.png); top: 35px;}
.schedule02 .t14 dt::before { background-image: url(images/t14-b.png);}
.schedule02 .t15 dt::before { background-image: url(images/t15-b.png);}
.schedule02 .t16 dt::before { background-image: url(images/t16-b.png);}
.schedule02 .t18 dt::before { background-image: url(images/t18-b.png);}
.schedule02 .t19 dt::before { background-image: url(images/t19-b.png);}

.scheduleBox { position: relative;}
.scheduleImgArea figure { position: absolute; /*border-radius: 200px;*/ overflow: hidden; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%)}
.scheduleImgArea figure img { width: 100%; height: 100%; object-fit: cover;}
.scheduleImg01 { top: 260px; right: -100px; width: 250px; height: 220px;}
.scheduleImg02 { top: 430px; right: 80px; width: 300px; height: 270px;}
.scheduleImg03 { top: 655px; right: -100px; width: 250px; height: 220px;}

.wp-block-columns.eventArea { flex-wrap: wrap!important; justify-content: space-between;}
.eventItem { width: 30%;}
.eventTitle { text-align: center; font-size: 4.0rem; position: relative; padding: 0 0 10px;}
.eventTitle::before { content: ""; display: block; width: 100%; height: 35px; background: #B5DA21; border-radius: 5px; position: absolute; bottom: 0; left: 0; z-index: -2;}
.eventTitle::after { content: ""; display: block; width: 90px; height: 90px; background: #fff; border-radius: 50px; position: absolute; bottom: 5px; left: 50%; transform: translateX(-50%); z-index: -1;}
.eventTitle.summer::before { background-color: #F9A0B2;}
.eventTitle.autumn::before { background-color: #F1BC56;}
.eventTitle.winter::before { background-color: #88CDEC;}
.eventText { font-size: 2.0rem; padding: 10px 10px 0 30px; text-indent: -1em; line-height: 1.2;}
@media only screen and (max-width:820px){
  .schedule.pageContainer { padding-bottom: 50px;}
  .scheduleSubTitle { font-size: 2.4rem;}
  .scheduleImgArea { margin-top: 20px;}
  .scheduleImgArea div { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 5%;}
  .scheduleImgArea figure { position: static;  width: 47%; height: 180px; border-radius: 10px; clip-path: none;}

  .scheduleArea dl { width: 85%; margin-left: auto;}
  .scheduleArea dt::before { left: -50px; top: 15px!important;}
  .scheduleArea dl dt { display: flex; justify-content: center; align-items: center; width: 25%; font-size: 1.6rem;}
  .scheduleArea dl dd { display: flex; align-items: center; width: 70%; font-size: 1.4rem; padding: 20px 20px 15px;}
  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.eventItem { flex-basis: 40%!important;}
  .eventTitle { font-size: 2.5rem;}
  .eventText { font-size: 1.4rem; display: block;}
  .eventTextUnder { font-size: 1.2rem;}
  .eventTitle::before { height: 25px;}
  .eventTitle::after { width: 70px; height: 70px;}
}

/*見学・入園案内*/
.guideText { font-size: 2.0rem; line-height: 1.7; margin: 30px 0;}
.nagareBox { margin-bottom: 30px;}
.nagareBox .flex { width: 100%; background: #ABE0E8;}
.nagareBox .iconBox { padding: 20px 0;}
.nagareBox .iconBox01 { width: 260px;}
.nagareBox .iconBox02 { width: calc(100% - 520px); clip-path: polygon(calc(100% - 50px) 0%, 100% 50%, calc(100% - 50px) 100%, 0% 100%, 50px 50%, 0% 0%); background: #fff;}
.nagareBox .iconBox03 { width: 260px;}
.nagareBox figure { width: 100px; height: 90px; margin: 0 auto;}
.nagareBox figure img { object-fit: contain;}
.nagareBox p { text-align: center; font-size: 2.2rem; font-weight: 700;}
.nagareTime { text-align: center; width: calc(100% - 260px); margin-left: auto; padding: 20px 0 10px; position: relative;}
.nagareTime::before { content: ""; display: block; width: 165px; height: 32px; border-bottom: solid 2px #58C2D1; border-right: solid 2px #58C2D1; position: absolute; right: 0; top: 5px;}
.nagareTime::after { content: ""; display: block; width: 165px; height: 32px; border-bottom: solid 2px #58C2D1; border-left: solid 2px #58C2D1; position: absolute; left: 0; top: 5px;}
.kengakuImg { width: 70%; margin: 0 auto!important;}
.nyuuenTitle { font-size: 2.4rem; font-weight: 700; margin: 40px 0 10px;}
/*よくある質問*/
.qaSubTitle { font-size: 2.8rem; font-weight: 700; text-align: center;}
.qaCatchText { font-size: 2.0rem; line-height: 1.7; margin-top: 30px;}
.qaArea { margin: 30px 0 80px;}
.qaBox + .qaBox { margin-top: 30px;}
.itemQ { display: flex; gap: 1em; align-items: center; font-size: 2.0rem; font-weight: 700; position: relative;}
.itemQTitle { width: 93px; height: 81px; clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); background: #58C2D1; color: #fff; font-size: 3.2rem; text-align: center; padding: 15px 0;}
.itemA { display: none;}
.itemA .itemAFlex{ display: flex; align-items: flex-start; gap: 1em; font-size: 2.2rem; margin-left: 80px; padding-top: 15px;}
.itemA .itemATitle { font-size: 3.5rem; color: #58C2D1; font-weight: 700; line-height: 1; margin-top: -5px;}
.itemA .itemAText { font-size: 2.0rem;}
.itemA .itemAText a { font-size: 2.0rem; text-decoration: underline;}
.itemQ::after { content: "+"; display: block; width: 25px; text-align: center; font-size: 2.5rem; font-weight: 700; position: absolute; right: 0;}
.itemQ.active::after { content: "-"; font-size: 3.5rem;}

.arrowBox { background: #FFEEC4; padding: 10px 0; font-size: 3.0rem; text-align: center; position: relative;}
.arrowBox span { font-size: 2.0rem;}
.arrowBox + .arrowBox { margin-top: 50px;}
.arrowBox + .arrowBox::before { content: "▼"; color: #FFB400; position: absolute; top: -47px; left: 50%; transform: translateX(-50%);}

/*見学・入園案内の画像*/
.guideImg01 { position: absolute; bottom: -4%; left: -300px; width: 300px; height: 230px;}
.guideImg02 { position: absolute; top: -5%; right: -278px;}
.guideImg03 { position: absolute; top: 14%; right: -200px;}
.guideImg04 { position: absolute; top: calc(14% + 320px); right: -120px;}
.guideImg05 { position: absolute; top: 33%; left: -250px; width: 250px; height: 200px;}
.guideImg06 { position: absolute; top: calc(30% + 320px); left: -180px; width: 180px; height: 150px;}
.guideImg07 { position: absolute; top: 30%; left: -200px;}
.guideImg08 { position: absolute; top: calc(30% + 320px); left: -120px;}
@media only screen and (max-width:820px){
  .guideText { font-size: 1.6rem; text-align: left;}
  .boxBorderText { font-size: 1.8rem;}
  .nagareBox .iconBox01 { width: 30%;}
  .nagareBox .iconBox02 { width: 40%; clip-path: polygon(calc(100% - 10%) 0%, 100% 50%, calc(100% - 10%) 100%, 0% 100%, 15% 50%, 0% 0%);}
  .nagareBox .iconBox03 { width: 30%;}
  .nagareBox figure { width: auto; height: 50px; margin: 0 auto;}
  .nagareBox figure img[src$=".svg"] { height: 100%;}
  .nagareBox p { font-size: 1.2rem;}
  .nagareTime { width: 70%;}
  .nagareTime::before { width: calc((100% - 140px) / 2); height: 27px;}
  .nagareTime::after { width: calc((100% - 140px) / 2); height: 27px;}
  .kengakuImg { width: 100%;}
  .nyuuenTitle { font-size: 1.8rem;}

  .qaArea { margin: 30px 0;}
  .qaSubTitle { font-size: 2.2rem;}
  .qaCatchText { font-size: 1.6rem;}
  .itemQ { padding-right: 30px; font-size: 1.8rem; flex-wrap: wrap; gap: 5px;}
  .itemQTitle { font-size: 2.2rem; padding: 10px 0; width: 60px; height: 53px;}
  .itemQText { font-size: 1.8rem; width: calc(100% - 80px);}
  .itemA .itemAFlex { margin: 0; font-size: 1.6rem; gap: 0;}
  .itemA .itemAText { font-size: 1.6rem; margin-right: 0.5em; margin-left: 0.5em;}
  .itemA .itemAText a { font-size: 1.6rem;}

  .arrowBox { font-size: 2.0rem;}
  .arrowBox span { font-size: 1.6rem;}
  .arrowBox + .arrowBox { margin-top: 35px;}
  .arrowBox + .arrowBox::before { top: -33px;}

  /*見学・入園案内の画像*/
  .guideImg01 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg02 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg03 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg04 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg05 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg06 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg07 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
  .guideImg08 { position: static; width: 45%; max-width: 150px; height: 150px; clip-path: none; border-radius: 10px; overflow: hidden; display: inline-block; margin: 20px 2%!important;}
}

/*各種資料*/
.document .pageContainer { padding: 80px 0;}

/*採用情報*/
.recruitAboutArea { padding: 50px 0; background: url(images/bg-border.jpg); border-radius: 40px; margin-bottom: 50px;}
.recruitSubTitle { font-size: 3.0rem; font-weight: 700; color: #58C2D1; margin-bottom: 20px;}
.recruitAboutCatch { font-size: 2.2rem; line-height: 2; margin-bottom: 50px; padding: 0 20px;}
.recruitAboutItem {}
.recruitAboutItem img { width: 100%; height: 100%; object-fit: contain;}
.recruitAboutItem p { padding: 10px 20px;}
.recruitAboutItem .catch { background: #58C2D1; text-align: center; color: #fff; padding: 5px 0px;}

.wp-block-columns.tabListArea { gap: 0 5px; justify-content: flex-start; align-items: flex-end!important;}
.wp-block-column.tabList { width: 210px; padding: 10px 0; text-align: center; cursor: pointer; flex-basis: auto!important; flex-grow: 0!important}
.tabList.active { padding: 15px 0;}
.tabList p { color: #fff; font-size: 2.0rem;}
.tabFulltime { background: #EDB5AB;}
.tabRinji { background: #FFBE7D;}
.tabPart { background: #92D3D9;}
.tabNutritionist { background: #d96b6b;}
.tabStaff { background: #86C03F;}
.recruitTableArea { padding: 15px 10px; display: none;}
.recruitTableArea.active { display: block; margin-bottom: 50px;}
.recruit-fulltime { background: #EDB5AB;}
.recruit-rinji { background: #FFBE7D;}
.recruit-part { background: #92D3D9;}
.recruit-nutritionist { background: #d96b6b;}
.recruit-staff { background: #86C03F;}
.recruitTable { border-collapse: collapse;}
.wp-block-table.recruitTable th { width: 200px; font-size: 1.6rem; border: solid 1px #fff; border-left: none; border-right: none; background: #EDB5AB; padding: 5px 30px; color: #fff;}
.wp-block-table.recruitTable td { width: calc(100% - 200px); font-size: 1.6rem; border: solid 1px #EDB5AB; border-left: none; border-right: none; background: #fff; padding: 5px 30px;}
.wp-block-table.recruitTableOrange th { background: #FFBE7D; }
.wp-block-table.recruitTableOrange td { border-color: #FFBE7D; }
.wp-block-table.recruitTableBlue th { background: #92D3D9; }
.wp-block-table.recruitTableBlue td { border-color: #92D3D9; }
.wp-block-table.recruitTableGreen th { background: #86C03F; }
.wp-block-table.recruitTableGreen td { border-color: #86C03F; }
.wp-block-table.recruitTableRed th { background: #d96b6b; }
.wp-block-table.recruitTableRed td { border-color: #d96b6b; }
@media only screen and (max-width:820px){
  .recruitmentTopImg { margin: 65px 0 20px; width: 100%; height: 250px;}
  .recruitmentTopImg + .pageTitle { top: 230px;}
  .recruitmentTopImg img { width: 100%; height: 100%; object-fit: cover; object-position: top left;}
  .recruitAboutArea { width: 90%; padding: 20px 0; border-radius: 0;}
  /*.recruitAboutArea .inner { width: 80%;}*/
  .recruitSubTitle { font-size: 2.2rem; text-align: center;}
  .recruitAboutCatch { font-size: 1.6rem; padding: 0;}
  .recruitAboutItem p { padding: 10px 0;}
  .boxBorder.bgColor .boxBorderText { padding: 20px;}
  .wp-block-table.recruitTable th { width: 100%;}
  .wp-block-table.recruitTable td { width: 100%;}

  .tabList { order: 0;}
  .tabList.active { order: 1;}
}

/*お知らせ*/
.newsTabArea { display: flex; justify-content: center; gap: 7em; margin-bottom: 50px;}
.newsTabArea li { max-width: 18%; cursor: pointer; font-size: 2.0rem;}
.newsTabArea li.active { text-decoration: underline; text-decoration-color: #FFEB00; text-decoration-thickness: 5px;}
.newsTabArea li.active.oshirase { text-decoration-color: #58c2d1;}
.newsTabArea li.active.kurashi { text-decoration-color: #F88EA4;}
.newsTabArea li.active.event { text-decoration-color: #96C749;}
.newsTabArea li.active.food { text-decoration-color: #FF8D6D;}
.newsContentsArea { display: none; margin-bottom: 50px;}
.newsContentsArea.active { display: block;}
.newsList li { margin-bottom: 20px; padding: 5px 0; border-bottom: dashed 2px #58C2D1;}
.newsListData { width: 7rem; text-align: center;}
.newsListCat {width: 11rem; background: #58c2d1; text-align: center; padding: 2px 0 3px; border-radius: 5px; font-size: 1.4rem; color: #fff; font-weight: 700;}
.newsListCat.kurashi { background-color: #F88EA4;}
.newsListCat.event { background-color: #96C749;}
.newsListCat.food { background-color: #FF8D6D;}
.newsListTitle { width: calc(100% - 23rem); font-size: 1.8rem;}
.Illustration05 { position: absolute; bottom: -110px; left: 70%; width: 120px;}
@media only screen and (max-width:820px){
  .newsTabArea {display: none;}
  .newsList a div { flex-wrap: wrap; justify-content: flex-start; gap: 5px 0; align-items: center;}
  .newsListData { font-size: 1.2rem; text-align: left;}
  .newsListCat { font-size: 1.2rem; width: 9rem;}
  .newsListTitle { width: 100%; font-size: 1.6rem;}
  .Illustration05 { width: 80px; bottom: -70px;}
}

/*お知らせ詳細*/
.newsText .wp-element-caption { font-size: 1.4rem;}
.Illustration06 { position: absolute; bottom: -106px; left: calc(((100% - 900px) / 2) - 130px); width: 120px;}
.newsData { font-size: 1.8rem;}
.newsText p{ font-size: 1.8rem;}
.newsText a { font-size: 1.8rem; color: #0067e7; text-decoration: underline;}
.newsText a.wp-block-file__button { color: #fff;}
.newsText a:hover { text-decoration: none;}
/*写真の大きさ固定*/
.newsText .wp-block-columns { gap: 2%;}
.newsText .wp-block-columns .wp-block-column { width: 32%; flex-grow: 0 !important;}
/*画像ポップアップ*/
.newsText img { cursor: pointer; transition: transform 0.3s ease, box-shadow 0.3s ease; border: 3px solid transparent;}
.newsText img:hover { transform: scale(1.05); box-shadow: 0 8px 25px rgba(0,0,0,0.2); border-color: #007bff;}
/* モーダルオーバーレイ */
.popup-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.9); z-index: 1000; cursor: pointer;}
/* モーダルコンテンツ */
.popup-content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 90%; max-height: 90%; cursor: default;}
/* 拡大画像 */
.popup-image { width: 100%; height: 100%; object-fit: contain; border-radius: 8px; box-shadow: 0 10px 30px rgba(0,0,0,0.5);}
/* 閉じるボタン */
.close-btn { position: absolute; top: -40px; right: 0; background: none; border: none; color: white; font-size: 30px; cursor: pointer; width: 40px; height: 40px; border-radius: 50%; background-color: rgba(0,0,0,0.5); transition: background-color 0.3s ease;}
.close-btn:hover { background-color: rgba(0,0,0,0.8);}
/* フェードインアニメーション */
.popup-overlay.show { display: block; animation: fadeIn 0.3s ease;}
.popup-content.show { animation: zoomIn 0.3s ease;}
/*前へ次へ*/
.postLinkNav { display: flex; justify-content: space-between; align-items: center; margin: 40px 0;}
.postLinkPrevious { width: 150px;}
.postLinkPrevious a { display: block; width: 100%; font-size: 1.4rem; color: #fff; background: #58C2D1; clip-path: polygon(20px 0%, 100% 0%, 100% 50%, 100% 100%, 20px 100%, 0% 50%); text-align: center; padding: 5px 0; font-weight: 700;}
.postLinkNext { width: 150px;}
.postLinkNext a { display: block; width: 100%; font-size: 1.4rem; color: #fff; background: #58C2D1; clip-path: polygon( 0 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%,  0 100%, 0% 50%); text-align: center; padding: 5px 0; font-weight: 700;}
@media only screen and (max-width:820px){
  .Illustration06 { left: 0; width: 100px; bottom: -77px;}
  .newsText .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column { flex-basis: auto!important;}
  .newsText .wp-block-columns + .wp-block-columns { margin-top: 10px;}
  .popup-content { width: 90vw; max-width: 95%; height: 90vh; max-height: 85dvh;}
  .close-btn { top: -35px; font-size: 25px; width: 35px; height: 35px;}
  /*.newsText img { cursor: default;}
  .newsText img:hover { transform: none; box-shadow: none; border: none;}
  .postLinkPrevious { width: 70px;}
  .postLinkPrevious a { clip-path: polygon(10px 0%, 100% 0%, 100% 50%, 100% 100%, 10px 100%, 0% 50%); padding-left: 10px;}
  .postLinkNext { width: 70px;}
  .postLinkNext a { clip-path: polygon( 0 0%, calc(100% - 10px) 0%, 100% 50%, calc(100% - 10px) 100%,  0 100%, 0% 50%); padding-right: 10px;}*/
}
@keyframes zoomIn {
  from {
      opacity: 0;
      transform: translate(-50%, -50%) scale(0.7);
  }
  to {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1);
  }
}

/*お知らせの写真保護*/
img {
  /* 選択を無効化 */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* ドラッグを無効化 */
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  /* iOS長押しメニューを無効化 */
  -webkit-touch-callout: none!important;
  -webkit-user-callout: none!important;
  /* iOS画像保存を無効化 */
  -webkit-user-modify: read-only!important;
  /* タッチ時のハイライトを無効化 */
  -webkit-tap-highlight-color: transparent;
}

/*pageNav*/
.pagenation { margin-top: 40px;}
.wp-pagenavi { display: flex; justify-content: center; align-items: center; gap: 1em;}
.pagenation .page { font-family: "Kiwi Maru", serif; font-size: 2.0rem; padding: 5px 20px; line-height: 1.2; background: #FFEB00; clip-path: polygon(10px 0%, calc(100% - 10px) 0%, 100% 50%, calc(100% - 10px) 100%, 10px 100%, 0% 50%);}
.pagenation .current { font-family: "Kiwi Maru", serif; font-size: 2.0rem; padding: 5px 20px; line-height: 1.2; background: #FFB400; clip-path: polygon(10px 0%, calc(100% - 10px) 0%, 100% 50%, calc(100% - 10px) 100%, 10px 100%, 0% 50%);}
.pagenation .nextpostslink ,
.pagenation .previouspostslink { font-family: "Kiwi Maru", serif; font-size: 1.6rem; padding: 7px 20px; line-height: 1.2; background: #FFEB00; clip-path: polygon(10px 0%, calc(100% - 10px) 0%, 100% 50%, calc(100% - 10px) 100%, 10px 100%, 0% 50%);}
@media only screen and (max-width:820px){
  .wp-pagenavi { flex-wrap: wrap; gap: 0.5em;}
  .pagenation .page { font-size: 1.6rem;}
  .pagenation .current { font-size: 1.6rem;}
  .pagenation .nextpostslink ,
  .pagenation .previouspostslink { font-size: 1.4rem;}
}

/*お問い合せ*/
/* 最初は全ての条件分岐フィールドを非表示 */
.conditional-field { display: none; }
/* 表示状態のクラス */
.conditional-field.show { display: block; animation: fadeIn 0.3s ease-in;}
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
/* ラジオボタンのスタイル調整 */
.wpcf7-radio { margin: 10px 0;}
.wpcf7-list-item { margin: 8px 15px 8px 0;}

.form { width: 900px; margin: 50px auto;}
.form dl { display: flex; border: solid 1px #999;}
.conditional-field dl { border-top: none;}
.form dt { width: 375px; background: url(images/bg-border.jpg); padding: 15px 30px;}
.form dt p { display: flex; align-items: center; justify-content: space-between;}
.form dt p span { background: #BB272D; padding: 5px 10px; color: #fff;}
.form dd { width: calc(100% - 375px); padding: 15px;}
.formData { margin-right: 20px;}
.formMessage { margin: 20px 0;}
.inquiryBox { width: 70%; margin: 0 auto; display: flex;}
.inquiryBoxLeft { width: 30%; background: #58C2D1; padding: 20px; color: #fff; display: flex; justify-content: center; align-items: center;}
.inquiryBoxLeft p { font-weight: 700;}
.inquiryBoxRight { width: 70%; border: solid 1px #58C2D1; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; padding: 10px 20px; background: #fff;}
.inquiryBoxRight p { font-size: 2.0rem; font-weight: 700; width: 100%;}
.inquiryBoxRight p .fcBlue { color: #58C2D1;}
.inquiryBoxRight p .small { font-size: 1.4rem;}
.inquiryBoxRight p .icon { display: inline-block; width: 28px; height: 33px; vertical-align: middle; margin-right: 10px;}
.inquiryBoxRight p a { padding: 3px 15px; display: inline-block; margin-left: 10px; color: #fff; background: #58C2D1;}
.acceptanceBox { text-align: left; margin: 20px auto;}
.acceptanceBox a { color: #58C2D1; text-decoration: underline;}
.acceptanceBox a:hover { text-decoration: none;}
.submitBox { width: 300px; margin: 50px auto;}
.form input[type="submit"] { width: 100%; clip-path: polygon(20px 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 20px 100%, 0% 50%); text-align: center; font-size: 1.6rem; color: #fff; padding: 20px 0; background: #58C2D1; font-size: 1.8rem; font-weight: 700; margin: 0;}
.form input[type="submit"]:hover { opacity: 0.5;}
.form .wpcf7-spinner { display: block; margin: 10px auto 0;}
.form .wpcf7-response-output { font-size: 1.4rem; padding: 10px; text-align: center;}
.form input[type="date"] { display: block; background: #fff; border: solid 1px #999;}
.form .wpcf7-select { background: #fff!important; border: solid 1px #999!important;}
@media only screen and (max-width:820px){
  .form { width: 90%;}
  .form dl { flex-wrap: wrap;}
  .form dt { width: 100%;}
  .form dd { width: 100%;}
  .form dd select { width: 100%; border-radius: 5px; background: #fff; padding: 10px; border: solid 1px #999;}
  .formData { width: 100%;}
  .formData input[type="date"] { display: block; width: 70%; height: auto; background: #fff;}
  .inquiryBox { width: 90%; flex-wrap: wrap;}
  .inquiryBoxLeft { width: 100%;}
  .inquiryBoxRight { width: 100%;}
  .inquiryBoxRight p { margin: 5px 0;}
  .inquiryBoxRight p .small { display: block;}
  .inquiryBoxRight p > a { display: block; width: 100%; text-align: center; margin-left: 0; margin-top: 5px;}
  .acceptanceBox p {text-align: left;}
  .formMessage p {text-align: left;}
  .form .wpcf7 input[type="url"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"] { width: 100%;}
  .formData span { display: block; /*width: 70%;*/}
  .formData .wpcf7-validates-as-date { display: block!important; width: 100%!important; height: auto!important; background: #fff!important; border: solid 1px #999!important; padding: 20px!important; text-align: left!important;}
  .form .wpcf7-select { display: block!important; width: 100%!important;}
}

/*パスワード保護*/
.passwordForm { max-width: 500px; margin: 0 auto; padding: 200px 2em 0;}
.passwordForm h2 { font-size: 2.0rem;}
.passwordForm p { margin: 10px 0;}
.passwordForm input[type="submit"] { width: 100%; clip-path: polygon(20px 0%, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 20px 100%, 0% 50%); text-align: center; font-size: 1.6rem; color: #fff; padding: 20px 0; background: #58C2D1; font-size: 1.8rem; font-weight: 700; margin: 10px auto;}
.passwordForm input[type="submit"]:hover { opacity: 0.5;}
@media only screen and (max-width:820px){
  .passwordForm { padding: 130px 5% 0;}
  .passwordForm h2 { font-size: 1.8rem;}
}

/*TOPポップアップ表示*/
.home.overlay { overflow: hidden;}
.modalOverlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); display: none; justify-content: center; align-items: center; z-index: 1000;}
.closeBtn { position: absolute; top: 25px; right: 25px; background: none; border: none; font-size: 35px; font-weight: 700; color: #58C2D1; cursor: pointer; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: all 0.3s ease; padding-bottom: 5px; padding-left: 2px;}
.closeBtn:hover { background: #58C2D1; color: #fff;}
.modalContent { background: white; border-radius: 30px; padding: 10px; max-width: 600px; width: 90%; position: relative; box-shadow: 0 20px 60px rgba(0,0,0,0.3); transform: scale(0.7); opacity: 0; border: solid 10px #58C2D1;}
.modalMessage { border: dashed 2px #58C2D1; border-radius: 10px; padding: 30px;}
.modalMessage h2 { font-size: 3.3rem; font-weight: 700; width: 100%; text-align: center; margin-bottom: 30px; color: #58C2D1;}
.modalMessage h2 span { font-size: 5.5rem;}
.modalMessage p { text-align: center;}
.modalHana { position: absolute; top: -42px; left: -40px;}
.modalHachi { position: absolute; bottom: -25px; right: -50px;}
@media only screen and (max-width:820px){
  .modalContent { max-width: none; width: 80%;}
  .modalMessage { padding: 35px 15px;}
  .modalMessage h2 { font-size: 2.2rem;}
  .modalMessage h2 span { font-size: 3.0rem;}
  .modalMessage p { text-align: left;}
  .modalHana { width: 150px;}
}

/*アニメーション*/
.buruburu {
    animation:buruburu 0.1s infinite linear alternate;
}
@keyframes buruburu {
    0% {transform:translate(0, 0) rotate(-5deg);}
    50% {transform:translate(0, -5px) rotate(0deg);}
    100% {transform:translate(0, 0)rotate(5deg);}
}

/*アニメーション*/
/*scroll_up ｜下から上へ出現*/
.scroll_up { transition: 0.8s ease-in-out; transform: translateY(30px); opacity: 0; }
.scroll_up.on { transform: translateY(0); opacity: 1.0; }

/*scroll_down ｜上から下へ出現*/
.scroll_down { transition: 0.8s ease-in-out; transform: translateY(-30px); opacity: 0; }
.scroll_down.on { transform: translateY(0); opacity: 1.0; }

/*scroll_left ｜左から出現*/
.scroll_left { -webkit-transition: 0.8s ease-in-out; -moz-transition: 0.8s ease-in-out; -o-transition: 0.8s ease-in-out; transition: 0.8s ease-in-out; transform: translateX(-30px); opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; }
.scroll_left.on { opacity: 1.0; filter: alpha(opacity=100); -moz-opacity: 1.0; transform: translateX(0); }

/*scroll_right ｜右から出現*/
.scroll_right { -webkit-transition: 0.8s ease-in-out; -moz-transition: 0.8s ease-in-out; -o-transition: 0.8s ease-in-out; transition: 0.8s ease-in-out; transform: translateX(30px); opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; }
.scroll_right.on { opacity: 1.0; filter: alpha(opacity=100); -moz-opacity: 1.0; transform: translateX(0); }

/*パララックス設定*/

.layerFarthest { position: relative; top: 0; /*animation: parallax-farthest01-anim linear; animation-timeline: scroll(); */z-index: -3;}
.layerBack { position: relative; top: 0; /*animation: parallax-back01-anim linear; animation-timeline: scroll(); */z-index: -1;}
.layerMiddle { position: relative; overflow: hidden;}
.layerFront { position: relative; top: -500px; /*animation: parallax-front01-anim linear; animation-timeline: scroll();*/ z-index: 1;}

.kazari05 { position: absolute; right: 0px; top: 220px; width: 320px; height: 444px;}
.kazari06 { position: absolute; top: 550px; left: 4%;}
.kazari07 { position: absolute; top: 1750px; left: 10%;}
.kazari08 { position: absolute; top: 1450px; right: 0;}

@media only screen and (max-width:820px){
  .parallax-element { opacity: 0.3;}
}