@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;700;900&display=swap");
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #0c0e0f;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #0c0e0f;
  font-style: italic;
  font-weight: 600;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

/* -----------------------------------------------------------------------------
共通
----------------------------------------------------------------------------- */
.zen-kaku-gothic-new-medium {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.zen-kaku-gothic-new-bold {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.zen-kaku-gothic-new-black {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 900;
  font-style: normal;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-feature-settings: "palt" 1, "kern" 1;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.78;
  color: #404040;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
@media screen and (min-width: 751px) {
  body {
    min-width: 1400px;
  }
}

a {
  color: #575757;
  text-decoration: none;
  cursor: pointer;
}
a.is-disabled {
  opacity: 0.3;
  pointer-events: none;
}

@media screen and (min-width: 751px) {
  .disp_sp,
  .disp-sp {
    display: none !important;
  }
}
@media screen and (max-width: 750px) {
  .disp_pc,
  .disp-pc {
    display: none !important;
  }
}
.sans {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.serif {
  font-family: "Adobe Caslon Pro", "Palt", "Yu Chiku 5 Kana", "yu-mincho-pr6", serif;
}

img {
  height: auto;
  width: 100%;
  max-width: 100%;
  vertical-align: bottom;
}

sup {
  font-size: 0.7em;
  vertical-align: super;
}

@media screen and (max-width: 750px) {
  html {
    font-size: 4.266vw;
  }
  body {
    font-size: 0.75rem;
  }
}
/* ************************************ スクロールトリガ
*/
.js-scrollanim {
  opacity: 0;
  transition-property: opacity;
  transition-duration: 0;
}

.js-scrollanim.js-scrollanim--fired {
  transition-delay: 0.3s;
  transition-duration: 1s;
  opacity: 1;
}

/* -----------------------------------------------------------------------------
ヘッダ
----------------------------------------------------------------------------- */
header {
  position: sticky;
  top: 0;
  z-index: 899;
}

.header__logo {
  position: absolute;
  width: 240px;
  top: 25px;
  left: 50px;
  z-index: 900;
}
@media screen and (min-width: 751px) {
  .header__logo {
    transition-property: top;
    transition-duration: 0.3s;
  }
}
@media screen and (max-width: 750px) {
  .header__logo {
    width: 32vw;
    top: 2.666vw;
    left: 34vw;
  }
}

@media screen and (min-width: 751px) {
  body.is-scrolled .header__logo {
    top: -100px;
  }
}

/* -----------------------------------------------------------------------------
ヘッダメニュー
----------------------------------------------------------------------------- */
.header__menu {
  position: absolute;
  top: 0;
  width: 100%;
}
.header__menu .header__menu__inner {
  background-color: #fff;
  border-radius: 0 0 50px 50px;
  padding: 30px 80px;
  position: absolute;
  top: 0;
  right: 50px;
  line-height: 1;
}
.header__menu .nav__items {
  display: flex;
  list-style-type: none;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
.header__menu .nav__item {
  font-weight: 700;
  padding-bottom: 0.4em;
  position: relative;
}
.header__menu .nav__item a {
  display: block;
}
.header__menu .nav__item a::after {
  content: "";
  height: 2px;
  width: 0;
  display: block;
  position: absolute;
  bottom: -0.3em;
  left: 0;
  background-color: #989898;
  transition-property: width;
  transition-duration: 0.3s;
}
.header__menu .nav__item a:hover::after {
  width: 100%;
}
.header__menu .nav__item.is-current a::after {
  width: 100%;
}
.header__menu .nav__item.nav__item__fun a::after {
  background-color: #e0605b;
}
.header__menu .nav__item.nav__item__lunch a::after {
  background-color: #df7539;
}
.header__menu .nav__item.nav__item__childcare a::after {
  background-color: #eebb31;
}
.header__menu .nav__item.nav__item__about a::after {
  background-color: #6eaa69;
}
.header__menu .nav__item.nav__item__guidance a::after {
  background-color: #39afa6;
}
.header__menu .nav__item.nav__item__blog a::after {
  background-color: #4996bb;
}

/* -----------------------------------------------------------------------------
サイドメニュー
----------------------------------------------------------------------------- */
.side__menu .side__menu__inner {
  position: fixed;
  right: 0;
  top: 190px;
  z-index: 898;
}
.side__menu .nav__items {
  list-style-type: none;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  row-gap: 30px;
}
.side__menu .nav__item a,
.side__menu .nav__item .nav__item__label {
  display: block;
}
.side__menu .nav__item a {
  padding: 20px 14px;
  background-color: #39afa6;
  border-radius: 10px 0 0 10px;
  transition-property: background-color, padding-right;
  transition-duration: 0.3s;
}
.side__menu .nav__item a:hover {
  background-color: #404040;
  padding-right: 34px;
}
.side__menu .nav__item a:hover .is-leave {
  opacity: 0;
}
.side__menu .nav__item a:hover .is-enter {
  opacity: 1;
}
.side__menu .nav__item .nav__item__label {
  position: relative;
}
.side__menu .nav__item .is-enter {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.side__menu .nav__item img {
  width: 22px;
}
.side__menu .nav__item__tour a {
  background-color: #eebb31;
}

/* -----------------------------------------------------------------------------
モバイルメニュー
----------------------------------------------------------------------------- */
.mobile__menu {
  position: fixed;
  left: 0;
  width: 100%;
  background-color: #ece7e6;
  height: calc(var(--vh) * 100);
  overflow-y: auto;
  top: -150%;
  transition-property: top;
  transition-duration: 0.3s;
  z-index: 900;
}
.mobile__menu .mobile__menu__inner {
  padding: 24vw 6vw 10vw 6vw;
}
.mobile__menu .nav__logo {
  position: absolute;
  width: 32vw;
  top: 2.666vw;
  left: 34vw;
}
.mobile__menu .nav__columns {
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
  background: url(../images/common/line_dotted_v.svg) center top repeat-y;
}
.mobile__menu .nav__column {
  flex-basis: calc((100% - 1rem) / 2);
}
.mobile__menu .nav__item dt {
  font-weight: 700;
  font-size: 0.875rem;
}
.mobile__menu .nav__item dd {
  font-size: 0.6rem;
  letter-spacing: 0;
  padding-left: 2rem;
  margin-top: 1rem;
}
.mobile__menu .nav__item dd ul {
  line-height: 1.3;
}
.mobile__menu .nav__item dd ul li + li {
  margin-top: 1rem;
}
.mobile__menu .nav__item + .nav__item {
  padding-top: 0.5rem;
  margin-top: 0.5rem;
}
.mobile__menu .nav__item .item__link {
  display: flex;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
}
.mobile__menu .nav__item .item__icon {
  flex-basis: 6vw;
}
.mobile__menu .nav__item.nav__item__yellow dd ul li::marker {
  color: #eebb31;
}
.mobile__menu .nav__item.nav__item__green dd ul li::marker {
  color: #6eaa69;
}
.mobile__menu .nav__item.nav__item__turquoise dd ul li::marker {
  color: #39afa6;
}
.mobile__menu .nav__item.nav__sns {
  display: flex;
  flex-direction: column;
  margin-top: 34vw;
  row-gap: 1.25rem;
}
.mobile__menu .nav__item.nav__sns .logo__instagram {
  width: 6.875rem;
}
.mobile__menu .nav__item.nav__sns .logo__youtube {
  width: 5.625rem;
}
.mobile__menu .nav__bottom {
  margin-top: 2rem;
}
.mobile__menu .menu__logo {
  width: 29vw;
  margin: auto;
}
.mobile__menu .menu__info {
  margin-top: 10vw;
}
.mobile__menu .menu__data {
  margin-top: 4vw;
}
.mobile__menu .menu__data .data__item {
  display: flex;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  line-height: 1.5;
}
.mobile__menu .menu__data .data__item .item__icon {
  flex-shrink: 0;
  flex-basis: 28px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .mobile__menu .menu__data .data__item .item__icon {
    flex-basis: 7vw;
  }
}
.mobile__menu .menu__data .data__item .item__icon.icon__marker img {
  width: 4.8vw;
}
.mobile__menu .menu__data .data__item .item__icon.icon__tel img {
  width: 5.9vw;
}
.mobile__menu .menu__data .data__item + .data__item {
  margin-top: 1rem;
}
.mobile__menu .menu__data .data__item .item__value {
  flex-grow: 1;
  font-size: 0.625rem;
}
.mobile__menu .menu__data .data__item .item__value small {
  font-size: 0.5rem;
}
.mobile__menu .menu__data .data__item .item__value strong {
  font-size: 0.9375rem;
}

/* -----------------------------------------------------------------------------
ハンバーガー
----------------------------------------------------------------------------- */
.hamburger {
  width: 4.5vw;
  height: 4.5vw;
  position: fixed;
  top: 5vw;
  right: 5vw;
  cursor: pointer;
  z-index: 901;
}

.hamburger__inner {
  position: relative;
  width: 100%;
  height: 100%;
}

.hamburger__line {
  font-size: 0;
  height: 0.5vw;
  width: 100%;
  background-color: #989898;
  position: absolute;
  right: 0;
  top: 50%;
  transition-property: transform, width, right, top, opacity;
  transition-duration: 0.3s;
}

.hamburger__line.hamburger__line--upper {
  display: block;
  transform: translateY(-1.6vw);
}

.hamburger__line.hamburger__line--lower {
  display: block;
  transform: translateY(1.6vw);
}

.header__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  background-color: rgba(150, 150, 150, 0.9);
  z-index: 899;
  pointer-events: none;
  opacity: 0;
  transition-property: opacity;
  transition-duration: 0.2s;
}

body.open-hamburger {
  overflow: hidden;
}

body.open-hamburger .hamburger__line.hamburger__line--upper {
  transform: rotate(45deg);
  right: 0;
  top: 50%;
}

body.open-hamburger .hamburger__line.hamburger__line--lower {
  transform: rotate(-45deg);
  right: 0;
  top: 50%;
}

body.open-hamburger .hamburger__line.hamburger__line--middle {
  opacity: 0;
}

body.open-hamburger .mobile__menu {
  top: 0;
}

body.open-hamburger .header__overlay {
  opacity: 1;
  pointer-events: auto;
}

/* -----------------------------------------------------------------------------
BODYの状態
----------------------------------------------------------------------------- */
/* -----------------------------------------------------------------------------
フッタ
----------------------------------------------------------------------------- */
footer {
  background: url(../images/common/footer_ghoast.svg) center bottom no-repeat #ece8e6;
  position: relative;
  max-width: 1920px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  footer {
    background-image: url(../images/common/sp_footer_ghoast.svg);
    background-size: contain;
  }
}
footer::before {
  content: "";
  display: block;
  height: 75px;
  width: 100%;
  position: absolute;
  top: -75px;
  left: 0;
  background: url(../images/common/footer_top.svg) center bottom no-repeat;
}
@media screen and (max-width: 750px) {
  footer::before {
    background-image: url(../images/common/sp_footer_top.svg);
    background-size: contain;
    height: 4.1vw;
    top: calc(-4.1vw + 1px);
  }
}

.footer__inner {
  max-width: 1160px;
  padding: 100px 20px 430px 20px;
  margin: auto;
  display: flex;
  -moz-column-gap: 100px;
       column-gap: 100px;
}
@media screen and (max-width: 750px) {
  .footer__inner {
    display: block;
    padding: 8vw 10vw 25vw 10vw;
  }
}

.footer__info {
  flex-basis: 300px;
  display: flex;
  flex-direction: column;
  row-gap: 2.25rem;
}
@media screen and (max-width: 750px) {
  .footer__info {
    width: 100%;
    row-gap: 6.4vw;
  }
}
.footer__info .footer__logo {
  width: 75%;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .footer__info .footer__logo {
    width: 60vw;
  }
}

.footer__nav {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-top: 90px;
}
@media screen and (max-width: 750px) {
  .footer__nav {
    padding-top: 0;
  }
}
.footer__nav .nav__columns {
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
}
@media screen and (max-width: 750px) {
  .footer__nav .nav__columns {
    display: none;
  }
}
.footer__nav .nav__column {
  flex-basis: calc((100% - 2.5rem) / 3);
}
.footer__nav .nav__item dt {
  font-weight: 700;
}
.footer__nav .nav__item dd {
  font-size: 0.875rem;
  padding-left: 2.5rem;
  margin-top: 1.5rem;
}
.footer__nav .nav__item dd ul {
  list-style-type: none;
  line-height: 1.3;
}
.footer__nav .nav__item dd ul li + li {
  margin-top: 1rem;
}
.footer__nav .nav__item + .nav__item {
  background: url(../images/common/footer_line.svg) left top repeat-x;
  padding-top: 1.5rem;
  margin-top: 1.5rem;
}
.footer__nav .nav__item .item__link {
  display: flex;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.footer__nav .nav__item .item__icon {
  flex-basis: 1.5rem;
}
.footer__nav .nav__sns {
  display: flex;
  flex-direction: column;
  row-gap: 1.25rem;
}
.footer__nav .nav__sns .logo__instagram {
  width: 6.875rem;
}
.footer__nav .nav__sns .logo__youtube {
  width: 5.625rem;
}
.footer__nav .nav__bottom {
  margin-top: 2rem;
}
.footer__nav .nav__bottom .banner_recruit {
  display: block;
  max-width: 763px;
}
@media screen and (max-width: 750px) {
  .footer__nav .nav__bottom {
    margin-top: 10vw;
  }
}

.footer__data .data__item {
  display: flex;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  line-height: 1.5;
}
.footer__data .data__item .item__icon {
  flex-shrink: 0;
  flex-basis: 28px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .footer__data .data__item .item__icon {
    flex-basis: 8vw;
  }
}
.footer__data .data__item .item__icon.icon__marker img {
  width: 23px;
}
@media screen and (max-width: 750px) {
  .footer__data .data__item .item__icon.icon__marker img {
    width: 6.133vw;
  }
}
.footer__data .data__item .item__icon.icon__tel img {
  width: 28px;
}
@media screen and (max-width: 750px) {
  .footer__data .data__item .item__icon.icon__tel img {
    width: 7.466vw;
  }
}
.footer__data .data__item + .data__item {
  margin-top: 1rem;
}
.footer__data .data__item .item__value {
  flex-grow: 1;
  font-size: 0.875rem;
}
.footer__data .data__item .item__value small {
  font-size: 0.625rem;
}
.footer__data .data__item .item__value strong {
  font-size: 1.25rem;
}
.footer__data .data__item .item__value > dl {
  font-size: 0.75rem;
  display: flex;
}
.footer__data .data__item .item__value > dl dt {
  white-space: nowrap;
  font-weight: 600;
}

.footer__picture {
  position: relative;
}
.footer__picture .picture__image {
  display: block;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .footer__picture .picture__image {
    border-radius: 2.26vw;
  }
}
.footer__picture .picture__attention {
  position: absolute;
  width: 100px;
  bottom: -20px;
  right: -20px;
}
@media screen and (max-width: 750px) {
  .footer__picture .picture__attention {
    width: 26.666vw;
    bottom: -2.666vw;
    right: -2.666vw;
  }
}

.footer__copyright {
  position: absolute;
  bottom: 40px;
  left: 5%;
  width: 90%;
  text-align: center;
  font-size: 0.875rem;
}
@media screen and (max-width: 750px) {
  .footer__copyright {
    bottom: 0.5rem;
    font-size: 0.5625rem;
    color: #fff;
  }
}

/* -----------------------------------------------------------------------------
共通
----------------------------------------------------------------------------- */
.threshold-top {
  position: absolute;
  width: 100%;
  height: 1px;
  top: 100px;
  z-index: 10;
  pointer-events: none;
}

ul,
ol {
  padding-left: 1em;
}

ul.kome li::marker {
  content: "※";
}

h2.section__title {
  font-size: 2.5rem;
}
@media screen and (max-width: 750px) {
  h2.section__title {
    font-size: 1.5625rem;
  }
}

.section__inner {
  position: relative;
  max-width: 1160px;
  padding: 0 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .section__inner {
    padding: 0 10%;
  }
}

.section__inner--wide {
  position: relative;
  max-width: 1400px;
  padding: 0 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .section__inner--wide {
    padding: 0 0;
  }
}
.section__inner--wide .section__head {
  max-width: 1160px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .section__inner--wide .section__head {
    padding: 0 10%;
  }
}

/* -----------------------------------------------------------------------------
ボタン
----------------------------------------------------------------------------- */
.button .button__inner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 180px;
  height: 60px;
  background-color: #eebb31;
  border-radius: 30px;
  font-size: 0.875rem;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .button .button__inner {
    width: 42.6vw;
    height: 10.6vw;
    font-size: 0.625rem;
  }
}
.button .button__inner > span {
  position: relative;
  display: inline-block;
  padding-right: 1.33em;
}
.button .button__inner > span::after {
  content: "";
  display: block;
  width: 9px;
  height: 15px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="14.828" viewBox="0 0 8.414 14.828" id="symbol"><path d="M154,36l6-6-6-6" transform="translate(-152.586 -22.586)" fill="none" stroke="rgb(64,64,64)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 0;
  top: calc(50% - 7px);
  transition-property: right;
  transition-duration: 0.5s;
}
.button .button__inner:hover {
  background-color: #404040;
  color: #fff;
}
.button .button__inner:hover > span::after {
  right: -0.3em;
  transition-duration: 0.2s;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="14.828" viewBox="0 0 8.414 14.828" id="symbol"><path d="M154,36l6-6-6-6" transform="translate(-152.586 -22.586)" fill="none" stroke="rgb(238,187,49)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>');
}
.button.is-white .button__inner {
  background-color: #fff;
}
.button.is-white .button__inner:hover {
  background-color: #404040;
}
.button.is-gray .button__inner {
  background-color: #404040;
  color: #fff;
}
.button.is-gray .button__inner span::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="14.828" viewBox="0 0 8.414 14.828" id="symbol"><path d="M154,36l6-6-6-6" transform="translate(-152.586 -22.586)" fill="none" stroke="rgb(238,187,49)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>');
}
.button.is-gray .button__inner:hover {
  background-color: #fff;
  color: #404040;
}
.button.is-gray .button__inner:hover span::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="14.828" viewBox="0 0 8.414 14.828" id="symbol"><path d="M154,36l6-6-6-6" transform="translate(-152.586 -22.586)" fill="none" stroke="rgb(64,64,64)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>');
}
.button.is-gray.is-hover-yellow .button__inner:hover {
  background-color: #eebb31;
  color: #fff;
}
.button.is-gray.is-hover-yellow .button__inner:hover span::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="14.828" viewBox="0 0 8.414 14.828" id="symbol"><path d="M154,36l6-6-6-6" transform="translate(-152.586 -22.586)" fill="none" stroke="rgb(255,255,255)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>');
}
.button.is-lightgray .button__inner {
  background-color: #707070;
  color: #fff;
}
.button.is-lightgray .button__inner > span::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="14.828" viewBox="0 0 8.414 14.828" id="symbol"><path d="M154,36l6-6-6-6" transform="translate(-152.586 -22.586)" fill="none" stroke="rgb(255,255,255)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>');
}
.button.is-lightgray .button__inner:hover {
  background-color: #707070;
}
.button.is-arrow-down .button__inner span::after {
  transition-property: top;
  transform: rotate(90deg);
}
.button.is-arrow-down .button__inner:hover > span::after {
  right: 0;
  top: calc(50% - 4px);
}

@media screen and (max-width: 750px) {
  .sign__scroll__parent {
    position: relative;
  }
  .sign__scroll__parent::after {
    content: "";
    display: block;
    width: 32vw;
    height: 24vw;
    background: url(../images/common/sign_scroll.svg) no-repeat;
    background-size: contain;
    position: absolute;
    left: calc(50% - 16vw);
    top: calc(50% - 12vw);
    z-index: 1;
    opacity: 1;
    transition-property: opacity;
    transition-duration: 0.3s;
  }
  .sign__scroll__parent.is-scrolled::after {
    opacity: 0;
    pointer-events: none;
  }
}

/* *****************************************************************************
********************************************************************************
トップページ
********************************************************************************
***************************************************************************** */
body.index .threshold-top {
  top: 10px;
}

/* -----------------------------------------------------------------------------
オープニング
----------------------------------------------------------------------------- */
.index__mainvisual.js-opening--init .mainvisual__object {
  transition-duration: 0s;
}
.index__mainvisual.js-opening--init .mainvisual__title {
  top: 269px;
  left: 703px;
}
.index__mainvisual.js-opening--init .mainvisual__intro {
  transition-duration: 0s;
  opacity: 0;
}
.index__mainvisual.js-opening--init .mainvisual__ghoast {
  opacity: 0;
}
.index__mainvisual.js-opening--init .mainvisual__picture--red {
  top: 563px;
  left: 576px;
}
.index__mainvisual.js-opening--init .mainvisual__picture--green {
  top: 536px;
  left: 1153px;
}
.index__mainvisual.js-opening--init .mainvisual__picture--orange {
  top: 801px;
  left: 1143px;
}
.index__mainvisual.js-opening--init .mainvisual__picture--blue {
  top: 823px;
  left: 644px;
}
.index__mainvisual.js-opening--init .mainvisual__ghoast--red {
  top: -854px;
  left: -797px;
}
.index__mainvisual.js-opening--init .mainvisual__ghoast--yellow {
  top: -994px;
  left: 649px;
}
.index__mainvisual.js-opening--init .mainvisual__ghoast--green {
  top: -770px;
  left: 1625px;
  z-index: 1;
}
.index__mainvisual.js-opening--init .mainvisual__ghoast--orange {
  top: 60px;
  left: 1450px;
}
.index__mainvisual.js-opening--init .mainvisual__ghoast--blue {
  top: 367px;
  left: -1330px;
}
.index__mainvisual.js-opening--fired .mainvisual__title {
  top: 309px;
  left: 703px;
}
.index__mainvisual.js-opening--fired .mainvisual__intro {
  opacity: 0;
}
.index__mainvisual.js-opening--fired .mainvisual__picture--red {
  top: 573px;
  left: 616px;
}
.index__mainvisual.js-opening--fired .mainvisual__picture--green {
  top: 556px;
  left: 1113px;
}
.index__mainvisual.js-opening--fired .mainvisual__picture--orange {
  top: 781px;
  left: 1103px;
}
.index__mainvisual.js-opening--fired .mainvisual__picture--blue {
  top: 803px;
  left: 684px;
}
.index__mainvisual.js-opening--fired .mainvisual__ghoast--red {
  top: -504px;
  left: -447px;
}
.index__mainvisual.js-opening--fired .mainvisual__ghoast--yellow {
  top: -744px;
  left: 649px;
}
.index__mainvisual.js-opening--fired .mainvisual__ghoast--green {
  top: -420px;
  left: 1275px;
  z-index: 1;
}
.index__mainvisual.js-opening--fired .mainvisual__ghoast--orange {
  top: -240px;
  left: 1100px;
}
.index__mainvisual.js-opening--fired .mainvisual__ghoast--blue {
  top: 67px;
  left: -980px;
}
body.is-visited .index__opening {
  pointer-events: none;
  visibility: hidden;
}

/* *****************************************************************************
********************************************************************************
トップページ
********************************************************************************
***************************************************************************** */
body.index .threshold-top {
  top: 10px;
}

/* -----------------------------------------------------------------------------
メインビジュアル
----------------------------------------------------------------------------- */
.mainvisual__picture--red {
  width: 164px;
}

.mainvisual__picture--green {
  width: 194px;
}

.mainvisual__picture--orange {
  width: 155px;
}

.mainvisual__picture--blue {
  width: 201px;
}

.mainvisual__ghoast--red {
  width: 1106px;
}

.mainvisual__ghoast--yellow {
  width: 959px;
}

.mainvisual__ghoast--green {
  width: 968px;
}

.mainvisual__ghoast--orange {
  width: 1556px;
}

.mainvisual__ghoast--blue {
  width: 1547px;
}

.index__mainvisual {
  width: 100%;
  height: 1100px;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 750px) {
  .index__mainvisual {
    height: 175vw;
    background: url(../images/index/op_background.webp) center top no-repeat;
    background-size: cover;
  }
}
.index__mainvisual .index__mainvisual__inner {
  width: 1920px;
  height: 1100px;
  position: absolute;
  top: 0;
  left: calc((100% - 1920px) / 2);
}
@media screen and (max-width: 750px) {
  .index__mainvisual .index__mainvisual__inner {
    width: 100%;
    height: 100%;
    position: relative;
    inset: 0;
  }
}
.index__mainvisual .mainvisual__object {
  position: absolute;
  transition-property: top, left;
  transition-duration: 1s;
  transition-delay: 0s;
  transition-timing-function: ease-in-out;
}
.index__mainvisual .mainvisual__ghoast {
  transition-property: opacity;
  transition-duration: 0.5s;
}
.index__mainvisual .mainvisual__title {
  top: 269px;
  left: 703px;
  width: 507px;
}
@media screen and (max-width: 750px) {
  .index__mainvisual .mainvisual__title {
    width: 58vw;
    top: 42vw;
    left: 21vw;
  }
}
.index__mainvisual .mainvisual__intro {
  position: absolute;
  text-align: center;
  width: 100%;
  top: 587px;
  transition-property: opacity;
  transition-delay: 0.3s;
  transition-duration: 0.8s;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .index__mainvisual .mainvisual__intro {
    top: 82vw;
    left: 5%;
    width: 90%;
    font-size: 0.6875rem;
  }
}
.index__mainvisual .mainvisual__intro > p + p {
  margin-top: 1em;
}
.index__mainvisual .mainvisual__attention {
  position: absolute;
  width: 206px;
  top: 630px;
  left: 830px;
}
.index__mainvisual .mainvisual__picture--red {
  top: 533px;
  left: 546px;
}
.index__mainvisual .mainvisual__picture--green {
  top: 506px;
  left: 1183px;
}
.index__mainvisual .mainvisual__picture--orange {
  top: 831px;
  left: 1203px;
}
.index__mainvisual .mainvisual__picture--blue {
  top: 853px;
  left: 584px;
}
.index__mainvisual .mainvisual__ghoast--red {
  top: -554px;
  left: -497px;
}
.index__mainvisual .mainvisual__ghoast--yellow {
  top: -794px;
  left: 649px;
}
.index__mainvisual .mainvisual__ghoast--green {
  top: -470px;
  left: 1325px;
  z-index: 1;
}
.index__mainvisual .mainvisual__ghoast--orange {
  top: -240px;
  left: 1150px;
}
.index__mainvisual .mainvisual__ghoast--blue {
  top: 67px;
  left: -1030px;
}

/* -----------------------------------------------------------------------------
イントロ
----------------------------------------------------------------------------- */
.index__intro {
  display: flex;
  justify-content: center;
  padding-top: 5px;
}

.intro__inner {
  width: 100%;
  height: 1800px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .intro__inner {
    height: 200vw;
  }
}

.intro___body {
  position: absolute;
  top: 659px;
  left: calc(50% - 319px);
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .intro___body {
    top: 80vw;
    width: 64vw;
    left: 18vw;
  }
}
.intro___body .intro___button {
  margin-top: 57px;
}
@media screen and (max-width: 750px) {
  .intro___body .intro___button {
    margin-top: 5.6vw;
  }
}

.intro___bg > div {
  position: absolute;
  z-index: -1;
}
@media screen and (min-width: 751px) {
  .intro___bg > div {
    transform: translateY(calc(200px * var(--scroll-ratio)));
  }
}
.intro___bg .intro___bg1 {
  top: 70px;
  left: calc(50% - 1090px);
  width: 1093px;
}
@media screen and (max-width: 750px) {
  .intro___bg .intro___bg1 {
    width: 57vw;
    top: 18vw;
    left: -17vw;
  }
}
.intro___bg .intro___bg2 {
  top: 344px;
  left: calc(50% + 81px);
  width: 1005px;
}
@media screen and (max-width: 750px) {
  .intro___bg .intro___bg2 {
    width: 57vw;
    top: 92vw;
    left: 50vw;
  }
}

.intro___pictures > div {
  position: absolute;
}
.intro___pictures .intro___picture--red {
  top: 40px;
  left: calc(50% - 300px);
  width: 532px;
}
@media screen and (max-width: 750px) {
  .intro___pictures .intro___picture--red {
    top: 27vw;
    left: -3vw;
    width: 43vw;
  }
}
.intro___pictures .intro___picture--orange {
  top: 265px;
  left: calc(50% + 262px);
  width: 481px;
}
@media screen and (max-width: 750px) {
  .intro___pictures .intro___picture--orange {
    top: 5vw;
    left: 24vw;
    width: 62vw;
  }
}
.intro___pictures .intro___picture--turquoise {
  top: 933px;
  left: calc(50% + 273px);
  width: 430px;
}
@media screen and (max-width: 750px) {
  .intro___pictures .intro___picture--turquoise {
    top: 139vw;
    left: 26vw;
    width: 44vw;
  }
}
.intro___pictures .intro___picture--blue {
  top: 1127px;
  left: calc(50% - 266px);
  width: 502px;
}
@media screen and (max-width: 750px) {
  .intro___pictures .intro___picture--blue {
    top: 106vw;
    left: 69vw;
    width: 37vw;
  }
}
.intro___pictures .intro___picture--green {
  top: 933px;
  left: calc(50% - 727px);
  width: 474px;
}
@media screen and (max-width: 750px) {
  .intro___pictures .intro___picture--green {
    top: 107vw;
    left: -8vw;
    width: 40vw;
  }
}
.intro___pictures .intro___picture--yellow {
  top: 365px;
  left: calc(50% - 729px);
  width: 500px;
}
@media screen and (max-width: 750px) {
  .intro___pictures .intro___picture--yellow {
    top: 35vw;
    left: 47vw;
    width: 56vw;
  }
}

/* -----------------------------------------------------------------------------
給食室より愛を込めて
----------------------------------------------------------------------------- */
.index__lunch {
  background: url(../images/index/lunch_bg.png) center top no-repeat;
  height: 735px;
  margin-top: -100px;
}
@media screen and (max-width: 750px) {
  .index__lunch {
    background-image: url(../images/index/sp_lunch_bg.png);
    background-size: cover;
    height: 144vw;
  }
}

.lunch__inner {
  position: relative;
  max-width: 1160px;
  margin: auto;
  display: flex;
  flex-direction: row-reverse;
  padding: 140px 20px 90px 20px;
}
@media screen and (max-width: 750px) {
  .lunch__inner {
    flex-direction: column;
    row-gap: 6vw;
    padding: 13vw 2.666vw 2.666vw;
  }
}

.lunch__title {
  width: 214px;
}
@media screen and (max-width: 750px) {
  .lunch__title {
    width: 65vw;
  }
}

.lunch__pictures {
  flex-basis: 64%;
  overflow: hidden;
  position: relative;
  padding-bottom: 30px;
}
.lunch__pictures .swiper-pagination {
  bottom: 0;
}
.lunch__pictures .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #806459;
}

.lunch__swiper {
  overflow: hidden;
  border-radius: 75px;
}
@media screen and (max-width: 750px) {
  .lunch__swiper {
    border-radius: 5vw;
  }
}
@media screen and (max-width: 750px) {
  .lunch__swiper .swiper-slide {
    aspect-ratio: 1.81;
  }
}
.lunch__swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.lunch__body {
  flex-basis: calc(36% - 80px);
  padding: 0 40px;
  padding-top: 55px;
  position: relative;
}
@media screen and (max-width: 1080px) {
  .lunch__body {
    padding: 0 8vw;
  }
}
.lunch__body .lunch__sentence {
  margin-top: 1.5rem;
}
@media screen and (max-width: 1080px) {
  .lunch__body .lunch__sentence {
    margin-top: 1rem;
  }
}
.lunch__body .button {
  margin-top: 2rem;
}
@media screen and (max-width: 1080px) {
  .lunch__body .button {
    text-align: center;
    margin-top: 1rem;
  }
}

@media screen and (max-width: 1080px) {
  .lunch__deco {
    display: none;
  }
}

.lunch__deco1 {
  position: absolute;
  top: 175px;
  right: calc(50% + 530px);
  width: 152px;
}

.lunch__deco2 {
  position: absolute;
  top: 470px;
  right: calc(50% + 15px);
  width: 225px;
  z-index: 1;
}

/* -----------------------------------------------------------------------------
てのひらを知る
----------------------------------------------------------------------------- */
.index__about {
  padding-top: 100px;
}

.about__inner {
  padding: 0 20px;
}
@media screen and (max-width: 750px) {
  .about__inner {
    padding: 0;
  }
}
.about__inner .about__head {
  width: 381px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .about__inner .about__head {
    width: 85vw;
  }
}
.about__inner .about__body {
  margin-top: 3rem;
}
@media screen and (max-width: 750px) {
  .about__inner .about__body {
    padding: 0 14vw;
  }
}

.about__items {
  display: flex;
  justify-content: space-between;
  max-width: 1160px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .about__items {
    flex-direction: column;
    row-gap: 8vw;
  }
}

.about__item {
  flex-basis: 31%;
  position: relative;
  container-type: inline-size;
  aspect-ratio: 1;
}
@media screen and (max-width: 750px) {
  .about__item {
    aspect-ratio: 1.08;
  }
}
.about__item .item__picture {
  width: 88%;
  aspect-ratio: 1.6;
  border-radius: 40px;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 750px) {
  .about__item .item__picture {
    aspect-ratio: 1.35;
  }
}
.about__item .item__picture > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-duration: 0.3s;
}
.about__item .item__body {
  margin-top: 19cqw;
  width: 91%;
  aspect-ratio: 1.269;
  border-radius: 40px;
  overflow: hidden;
  background-color: #e0605b;
  transition-property: width;
  transition-duration: 0.3s;
}
@media screen and (max-width: 750px) {
  .about__item .item__body {
    aspect-ratio: 1.314;
  }
}
.about__item .item__button {
  position: absolute;
  bottom: 0;
  left: -8.3cqw;
}
.about__item .item__subject {
  font-size: 7.2cqw;
  font-weight: 700;
  color: #fff;
  margin: 44cqw auto auto 11cqw;
}
@media screen and (max-width: 750px) {
  .about__item .item__subject {
    font-size: 0.9375rem;
    margin-top: 47cqw;
  }
}
.about__item .item__deco {
  position: absolute;
  bottom: -1cqw;
  right: 0;
}
.about__item.menu__life .item__deco {
  width: 33cqw;
}
.about__item.menu__about .item__body {
  background-color: #eebb31;
}
.about__item.menu__about .item__deco {
  width: 33cqw;
}
.about__item.menu__guide .item__body {
  background-color: #39afa6;
}
.about__item.menu__guide .item__deco {
  width: 26cqw;
}
@media screen and (min-width: 751px) {
  .about__item:has(.button__inner:hover) .item__picture > img {
    transform: scale(1.1);
  }
  .about__item:has(.button__inner:hover) .item__body {
    width: 97%;
  }
}

/* -----------------------------------------------------------------------------
ブログ
----------------------------------------------------------------------------- */
.index__blog {
  padding-top: 40px;
  margin-top: 80px;
}

.index__blog__inner {
  padding: 0 20px;
}
@media screen and (max-width: 750px) {
  .index__blog__inner {
    padding: 0;
  }
}
.index__blog__inner .index__blog__head {
  width: 395px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .index__blog__inner .index__blog__head {
    width: 85vw;
  }
}
.index__blog__inner .index__blog__body {
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  .index__blog__inner .index__blog__body {
    padding: 0 14vw;
  }
}

.index__blog__items {
  display: flex;
  max-width: 1160px;
  margin: auto;
  -moz-column-gap: 8%;
       column-gap: 8%;
  row-gap: 2em;
}
@media screen and (max-width: 750px) {
  .index__blog__items {
    flex-direction: column;
    row-gap: 8vw;
  }
}
.index__blog__items + .button {
  margin-top: 2.5rem;
  text-align: center;
}

.index__blog__item {
  flex-basis: 28%;
  position: relative;
  container-type: inline-size;
}
.index__blog__item.no-image .item__picture {
  border: solid 2px #f0f0f0;
}
.index__blog__item .item__picture {
  aspect-ratio: 1.333;
  border-radius: 20px;
  overflow: hidden;
}
.index__blog__item .item__picture > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-duration: 0.3s;
}
.index__blog__item .item__subject {
  font-size: 1.25rem;
  font-weight: 700;
  margin-top: 0.5rem;
  line-height: 1.4;
}
@media screen and (max-width: 750px) {
  .index__blog__item .item__subject {
    font-size: 1rem;
  }
}
.index__blog__item .item__meta {
  display: flex;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  line-height: 1;
  margin-top: 1rem;
}
@media screen and (max-width: 750px) {
  .index__blog__item .item__meta {
    font-size: 0.8125rem;
  }
}
.index__blog__item .item__meta > div + div {
  position: relative;
}
.index__blog__item .item__meta > div + div::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #404040;
  position: absolute;
  top: 0;
  left: -0.75rem;
}
@media screen and (min-width: 751px) {
  .index__blog__item:hover .item__picture > img {
    transform: scale(1.1);
  }
}

/* -----------------------------------------------------------------------------
ここがいい
----------------------------------------------------------------------------- */
.index__voice {
  padding-top: 75px;
  padding-bottom: 80px;
  margin-top: 215px;
}
@media screen and (max-width: 750px) {
  .index__voice {
    margin-top: 3rem;
    padding-top: 4vw;
    padding-bottom: 4vw;
  }
}

.voice__inner {
  background-color: #ece8e6;
  padding: 70px 20px 100px 20px;
  position: relative;
  max-width: 1880px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .voice__inner {
    padding: 3rem 0;
  }
}
.voice__inner::before {
  content: "";
  background: url(../images/index/voice_top.svg) center bottom no-repeat;
  width: 100%;
  height: 75px;
  position: absolute;
  top: -75px;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 750px) {
  .voice__inner::before {
    background-image: url(../images/index/sp_voice_top.svg);
    background-size: contain;
    height: 4.1vw;
    top: calc(-4.1vw + 1px);
  }
}
.voice__inner::after {
  content: "";
  background: url(../images/index/voice_bottom.svg) center bottom no-repeat;
  width: 100%;
  height: 80px;
  position: absolute;
  bottom: -78px;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 750px) {
  .voice__inner::after {
    background-image: url(../images/index/sp_voice_bottom.svg);
    background-size: contain;
    height: 4.1vw;
    bottom: calc(-4.1vw + 1px);
  }
}
.voice__inner .voice__head {
  width: 643px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .voice__inner .voice__head {
    width: 88vw;
  }
}
.voice__inner .voice__body {
  margin-top: 2rem;
}

.voice__items {
  display: flex;
  flex-wrap: wrap;
  max-width: 1060px;
  margin: auto;
  -moz-column-gap: 8%;
       column-gap: 8%;
  row-gap: 4.5em;
}

.voice__item {
  flex-basis: 28%;
  position: relative;
  container-type: inline-size;
}
@media screen and (max-width: 750px) {
  .voice__item {
    flex-basis: 100%;
  }
}
.voice__item .item__serif {
  position: relative;
}
@media screen and (max-width: 750px) {
  .voice__item .item__serif {
    width: 48vw;
    height: 48vw;
    left: -5.33vw;
  }
}
.voice__item .item__background {
  color: #fff;
  transition-property: color, transform, filter;
  transition-duration: 0.3s;
}
.voice__item .item__deco,
.voice__item .item__deco--invert {
  width: 45cqw;
  position: absolute;
  left: 50%;
  bottom: 52cqw;
  transform: translateX(-50%);
  transition-property: bottom, opacity;
  transition-duration: 0.3s;
}
@media screen and (max-width: 750px) {
  .voice__item .item__deco,
  .voice__item .item__deco--invert {
    width: 29vw;
    top: 50%;
  }
  .voice__item .item__deco img,
  .voice__item .item__deco--invert img {
    transform: translateY(-50%);
  }
}
.voice__item .item__deco--invert {
  transition-property: bottom, opacity;
  opacity: 0;
}
.voice__item .item__catch {
  position: absolute;
  top: 57cqw;
  left: 50%;
  transform: translateX(-50%);
  height: 20cqw;
  transition-property: color, top;
  transition-duration: 0.3s;
}
.voice__item .item__catch img {
  width: auto;
  max-width: initial;
  height: 100%;
}
@media screen and (max-width: 750px) {
  .voice__item .item__catch {
    top: 7vw;
    left: 45.33vw;
    transform: none;
    width: 56vw;
    height: 10.9vw;
  }
}
.voice__item .item__description {
  position: absolute;
  top: 56cqw;
  left: 0;
  opacity: 0;
  color: #fff;
  font-size: 5.333cqw;
  font-weight: 500;
  transition-property: opacity;
  transition-delay: 0;
  transition-duration: 0.3s;
}
@media screen and (max-width: 750px) {
  .voice__item .item__description {
    opacity: 1;
    top: 24vw;
    left: 45.33vw;
    width: 56vw;
    font-size: 0.75rem;
    color: #404040;
  }
}
@media screen and (min-width: 751px) and (min-width: 751px) {
  .voice__item:hover .item__background {
    color: #669b55;
    transform: scale(1.26);
    filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
  }
  .voice__item:hover .item__deco,
  .voice__item:hover .item__deco--invert {
    bottom: 77cqw;
  }
  .voice__item:hover .item__catch {
    top: 32cqw;
    filter: brightness(0) invert(1);
  }
  .voice__item:hover .item__description {
    opacity: 1;
    transition-delay: 0.3s;
  }
  .voice__item:hover:has(.item__deco--invert) .item__deco {
    opacity: 0;
  }
  .voice__item:hover:has(.item__deco--invert) .item__deco--invert {
    opacity: 1;
  }
}
.voice__item.voice__item2 .item__deco {
  width: 42cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item2 .item__deco {
    width: 29vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item2:hover .item__background {
    color: #eebb31;
  }
}
.voice__item.voice__item3 .item__deco {
  width: 22cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item3 .item__deco {
    width: 14.6vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item3:hover .item__background {
    color: #e0605b;
  }
}
.voice__item.voice__item4 .item__deco {
  width: 33cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item4 .item__deco {
    width: 22vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item4:hover .item__background {
    color: #39afa6;
  }
}
.voice__item.voice__item5 .item__deco {
  width: 32cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item5 .item__deco {
    width: 22vw;
  }
}
.voice__item.voice__item6 .item__deco {
  width: 57cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item6 .item__deco {
    width: 32vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item6:hover .item__background {
    color: #e0605b;
  }
}
.voice__item.voice__item7 .item__deco {
  width: 51cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item7 .item__deco {
    width: 30vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item7:hover .item__background {
    color: #4996bb;
  }
}
.voice__item.voice__item8 .item__deco {
  width: 38cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item8 .item__deco {
    width: 24vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item8:hover .item__background {
    color: #df7539;
  }
}
.voice__item.voice__item9 .item__deco {
  width: 40cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item9 .item__deco {
    width: 27vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item9:hover .item__background {
    color: #4996bb;
  }
}
.voice__item.voice__item10 .item__deco {
  width: 56cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item10 .item__deco {
    width: 32vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item10:hover .item__background {
    color: #e0605b;
  }
}
.voice__item.voice__item11 .item__deco {
  width: 46cqw;
}
@media screen and (max-width: 750px) {
  .voice__item.voice__item11 .item__deco {
    width: 26vw;
  }
}
@media screen and (min-width: 751px) {
  .voice__item.voice__item11:hover .item__background {
    color: #eebb31;
  }
}

/* -----------------------------------------------------------------------------
お気軽にご相談ください
----------------------------------------------------------------------------- */
.index__contact {
  padding: 80px 0 165px 0;
}
@media screen and (max-width: 750px) {
  .index__contact {
    padding: 3rem 0 0 0;
  }
}

.contact__inner {
  height: 600px;
  position: relative;
  padding: 75px;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .contact__inner {
    height: 90.66vw;
    padding: 8vw 0;
  }
}
.contact__inner .contact__ghoast {
  position: absolute;
  width: 2880px;
  top: 0;
  right: 100%;
  transition-property: right;
  transition-duration: 1s;
  transition-delay: 0s;
}
@media screen and (max-width: 750px) {
  .contact__inner .contact__ghoast {
    right: calc(50% - 750px);
    width: auto;
    height: 106.66vw;
  }
  .contact__inner .contact__ghoast img {
    max-width: initial;
    width: auto;
    height: 100%;
  }
}
.contact__inner.js-scrollanim {
  opacity: 1;
}
.contact__inner.js-scrollanim--fired .contact__ghoast {
  transition-duration: 0.3s;
  transition-delay: 0.3s;
  right: calc(50% - 750px);
}

.contact__circle {
  position: relative;
  width: 600px;
  height: calc(600px - 4rem);
  padding-top: 4rem;
  margin: auto;
  background-color: #fff;
  border-radius: 300px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .contact__circle {
    width: 89.33vw;
    height: 81.13vw;
    padding-top: 8.2vw;
    border-radius: 45vw;
  }
}
.contact__circle .contact__title {
  width: 266px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .contact__circle .contact__title {
    width: 56vw;
  }
}
.contact__circle .contact__lead {
  margin-top: 1rem;
  text-align: center;
}
.contact__circle .contact__deco {
  margin: 1.5rem auto 0 auto;
  width: 227px;
}
@media screen and (max-width: 750px) {
  .contact__circle .contact__deco {
    margin-top: 3vw;
    width: 22vw;
  }
}
.contact__circle .contact__tel {
  width: -moz-fit-content;
  width: fit-content;
  margin: 2rem auto 0 auto;
}
.contact__circle .contact__tel .tel__inner {
  display: flex;
  align-items: center;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
}
@media screen and (max-width: 750px) {
  .contact__circle .contact__tel {
    margin-top: 3vw;
  }
}
.contact__circle .contact__tel .tel__icon {
  width: 28px;
}
.contact__circle .contact__tel .tel__icon {
  width: 28px;
}
.contact__circle .contact__tel .tel__number {
  font-size: 2.25rem;
  font-weight: 600;
}
.contact__circle .button .button__inner {
  width: 58vw;
}
.contact__circle .button .tel__wrap {
  display: flex;
  -moz-column-gap: 2vw;
       column-gap: 2vw;
  align-items: center;
}
.contact__circle .button .tel__icon {
  width: 5.6vw;
}
.contact__circle .button .tel__body {
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.contact__circle .button .tel__label {
  font-size: 0.6125rem;
}
.contact__circle .button .tel__number {
  font-size: 1.125rem;
}

/* -----------------------------------------------------------------------------
アクセスマップ
----------------------------------------------------------------------------- */
.gmap__inner {
  width: 100%;
  max-width: 1920px;
  margin: auto;
  height: 420px;
}
@media screen and (max-width: 750px) {
  .gmap__inner {
    height: 80vw;
  }
}

/* *****************************************************************************
********************************************************************************
ここがおもしろ！
********************************************************************************
***************************************************************************** */
/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
.page__mainvisual {
  height: 600px;
  width: 100%;
  max-width: 1920px;
  margin: auto;
  position: relative;
}
@media screen and (max-width: 750px) {
  .page__mainvisual {
    height: 60vw;
  }
}
.page__mainvisual .page__title {
  position: absolute;
}
.page__mainvisual .page__mainvisual__inner {
  width: 100%;
  height: 100%;
}
.page__mainvisual .mainvisual__picture {
  width: 100%;
  height: 100%;
}
.page__mainvisual .mainvisual__picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

body.fun main {
  overflow: hidden;
}
body.fun .page__mainvisual .page__title {
  top: 320px;
  right: calc(50% + 88px);
  width: 475px;
}
@media screen and (max-width: 750px) {
  body.fun .page__mainvisual .page__title {
    top: 34vw;
    right: calc(50% + 4vw);
    width: 34vw;
  }
}

/* -----------------------------------------------------------------------------
体操 
----------------------------------------------------------------------------- */
.fun_gym {
  position: relative;
  margin-top: -75px;
  background: url(../images/fun/gym_bg.webp) center top no-repeat;
  height: 735px;
}
@media screen and (max-width: 750px) {
  .fun_gym {
    margin-top: -6.666vw;
    background-image: url(../images/fun/sp_gym_bg.webp);
    background-size: contain;
    height: 161vw;
  }
}

.gym__inner {
  max-width: 1160px;
  padding: 155px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .gym__inner {
    padding: 100vw 10% 0 10%;
  }
}

.gym__content {
  max-width: 400px;
  color: #fff;
  position: relative;
  z-index: 2;
}
.gym__content .gym__head {
  width: 252px;
}
@media screen and (max-width: 750px) {
  .gym__content .gym__head {
    width: 41vw;
  }
}
.gym__content .gym__body {
  margin-top: 1.7rem;
}
@media screen and (min-width: 751px) {
  .gym__content .gym__body {
    background-color: rgba(219, 94, 93, 0.75);
    outline: solid 5px rgba(219, 94, 93, 0.75);
  }
}
@media screen and (max-width: 750px) {
  .gym__content .gym__body {
    margin-top: 0.75rem;
  }
}

.gym__picture1 {
  width: 523px;
  position: absolute;
  top: 460px;
  right: calc(50% + 112px);
}
@media screen and (max-width: 750px) {
  .gym__picture1 {
    width: 96vw;
    top: 14vw;
    left: 8vw;
  }
}

.gym__picture2 {
  width: 700px;
  position: absolute;
  top: 154px;
  left: calc(50% - 50px);
}
@media screen and (max-width: 750px) {
  .gym__picture2 {
    display: none;
  }
}
.gym__picture2 > img {
  position: relative;
  z-index: 1;
}
.gym__picture2 .gym__deco {
  position: absolute;
  width: 300px;
  top: 165px;
  left: 55px;
  transition-property: top;
  transition-duration: 0.3s;
}
.gym__picture2 .gym__deco.js-scrollanim {
  opacity: 1;
}
.gym__picture2 .gym__deco.js-scrollanim--fired {
  top: -55px;
  left: 55px;
}
@media screen and (max-width: 750px) {
  .gym__picture2 .gym__deco {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
科学
----------------------------------------------------------------------------- */
.fun_science {
  position: relative;
  height: 1260px;
}
@media screen and (max-width: 750px) {
  .fun_science {
    height: 157vw;
  }
}

.science__inner {
  max-width: 1160px;
  padding: 340px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .science__inner {
    padding: 105vw 10% 0 10%;
  }
}

.science__content {
  margin-right: 45px;
  margin-left: auto;
  max-width: 400px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .science__content {
    margin-right: 0;
  }
}
.science__content .science__head {
  width: 264px;
}
@media screen and (max-width: 750px) {
  .science__content .science__head {
    width: 38vw;
  }
}
.science__content .science__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .science__content .science__body {
    margin-top: 0.75rem;
  }
}

.science__picture1 {
  width: 1156px;
  position: absolute;
  top: 237px;
  right: calc(50% - 94px);
}
@media screen and (max-width: 750px) {
  .science__picture1 {
    width: 100%;
    position: absolute;
    top: 2vw;
    left: 0;
  }
}
.science__picture1 > img {
  position: relative;
  z-index: 1;
}
.science__picture1 .science__deco {
  position: absolute;
  width: 200px;
  top: -70px;
  right: 85px;
  transition-property: top, right;
  transition-duration: 0.3s;
}
.science__picture1 .science__deco.js-scrollanim {
  opacity: 1;
}
.science__picture1 .science__deco.js-scrollanim--fired {
  top: -130px;
  right: 65px;
}
@media screen and (max-width: 750px) {
  .science__picture1 .science__deco {
    display: none;
  }
}

.science__picture2 {
  width: 278px;
  position: absolute;
  top: 15px;
  left: calc(50% + 422px);
}
@media screen and (max-width: 750px) {
  .science__picture2 {
    display: none;
  }
}

.science__picture3 {
  width: 553px;
  position: absolute;
  top: 650px;
  left: calc(50% + 135px);
}
@media screen and (max-width: 750px) {
  .science__picture3 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
水泳
----------------------------------------------------------------------------- */
.fun_swim {
  position: relative;
  background: url(../images/fun/swim_bg.webp) center top no-repeat;
  height: 735px;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .fun_swim {
    background-image: url(../images/fun/sp_swim_bg.webp);
    background-size: contain;
    height: 152vw;
  }
}

.swim__inner {
  max-width: 1160px;
  padding: 90px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .swim__inner {
    padding: 95vw 10% 0 10%;
  }
}

.swim__content {
  max-width: 400px;
  position: relative;
  z-index: 2;
  color: #fff;
}
@media screen and (min-width: 751px) {
  .swim__content {
    background-color: rgba(73, 150, 187, 0.75);
    outline: solid 5px rgba(73, 150, 187, 0.75);
  }
}
.swim__content .swim__head {
  width: 533px;
}
@media screen and (max-width: 750px) {
  .swim__content .swim__head {
    width: 47%;
  }
}
.swim__content .swim__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .swim__content .swim__body {
    margin-top: 0.75rem;
  }
}

.swim__picture1 {
  width: 700px;
  position: absolute;
  top: 145px;
  left: calc(50% - 57px);
}
@media screen and (max-width: 750px) {
  .swim__picture1 {
    width: 80vw;
    top: 14vw;
    left: 10%;
  }
}

.swim__picture2 {
  width: 525px;
  position: absolute;
  top: 460px;
  right: calc(50% + 111px);
}
@media screen and (max-width: 750px) {
  .swim__picture2 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
ダンス
----------------------------------------------------------------------------- */
.fun_dance {
  position: relative;
  background: url(../images/fun/dance_bg.webp) center top no-repeat;
  height: 970px;
  margin-top: -80px;
}
@media screen and (max-width: 750px) {
  .fun_dance {
    height: 140vw;
    margin-top: 0;
    background: none;
  }
}

.dance__inner {
  max-width: 1160px;
  padding: 370px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .dance__inner {
    padding: 84vw 10% 0 10%;
  }
}

.dance__content {
  max-width: 400px;
  position: relative;
  margin-right: 200px;
  margin-left: auto;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .dance__content {
    margin-right: auto;
  }
}
.dance__content .dance__head {
  width: 345px;
}
@media screen and (max-width: 750px) {
  .dance__content .dance__head {
    width: 51.2vw;
  }
}
.dance__content .dance__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .dance__content .dance__body {
    margin-top: 0.75rem;
  }
}

.dance__picture1 {
  width: 771px;
  position: absolute;
  top: 260px;
  right: calc(50% - 57px);
}
@media screen and (max-width: 750px) {
  .dance__picture1 {
    width: 82vw;
    top: 10vw;
    left: 8vw;
    right: auto;
  }
}
.dance__picture1 > img {
  position: relative;
  z-index: 1;
}
.dance__picture1 .dance__deco {
  position: absolute;
  width: 200px;
  right: 135px;
  top: 115px;
  transition-property: top, right;
  transition-duration: 0.3s;
}
.dance__picture1 .dance__deco.js-scrollanim {
  opacity: 1;
}
.dance__picture1 .dance__deco.js-scrollanim--fired {
  right: 85px;
  top: -25px;
}
@media screen and (max-width: 750px) {
  .dance__picture1 .dance__deco {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
よみかき
----------------------------------------------------------------------------- */
.fun_writing {
  position: relative;
  background: url(../images/fun/writing_bg.webp) center top no-repeat;
  height: 1290px;
  margin-top: -380px;
}
@media screen and (max-width: 750px) {
  .fun_writing {
    height: 149vw;
    margin-top: 0;
    background: none;
  }
}

.writing__inner {
  max-width: 1160px;
  padding: 460px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .writing__inner {
    padding: 94vw 10% 0 10%;
  }
}

.writing__content {
  max-width: 400px;
  position: relative;
  margin-left: 100px;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .writing__content {
    margin-left: auto;
  }
}
.writing__content .writing__head {
  width: 318px;
}
@media screen and (max-width: 750px) {
  .writing__content .writing__head {
    width: 45.8vw;
  }
}
.writing__content .writing__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .writing__content .writing__body {
    margin-top: 0.75rem;
  }
}

.writing__picture1 {
  width: 600px;
  position: absolute;
  top: 180px;
  left: calc(50% - 20px);
}
@media screen and (max-width: 750px) {
  .writing__picture1 {
    width: 92vw;
    top: 2vw;
    left: 4%;
    right: auto;
  }
}

.writing__picture2 {
  width: 488px;
  position: absolute;
  top: 780px;
  right: calc(50% + 190px);
}
@media screen and (max-width: 750px) {
  .writing__picture2 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
街へ出よう
----------------------------------------------------------------------------- */
.fun_experience {
  position: relative;
  background: url(../images/fun/experience_bg.webp) center top no-repeat;
  height: 735px;
  margin-top: -200px;
}
@media screen and (max-width: 750px) {
  .fun_experience {
    background-image: url(../images/fun/sp_experience_bg.webp);
    background-size: contain;
    height: 152vw;
    margin-top: 0;
  }
}

.experience__inner {
  max-width: 1160px;
  padding: 155px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .experience__inner {
    padding: 94vw 10% 0 10%;
  }
}

.experience__content {
  max-width: 400px;
  position: relative;
  z-index: 2;
  color: #fff;
}
.experience__content .experience__head {
  width: 252px;
}
@media screen and (max-width: 750px) {
  .experience__content .experience__head {
    width: 37vw;
  }
}
.experience__content .experience__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .experience__content .experience__body {
    margin-top: 0.75rem;
  }
}

.experience__picture1 {
  width: 720px;
  position: absolute;
  top: 124px;
  left: calc(50% - 70px);
}
@media screen and (max-width: 750px) {
  .experience__picture1 {
    width: 80vw;
    position: absolute;
    top: 14vw;
    left: 10vw;
  }
}

.experience__picture2 {
  width: 307px;
  position: absolute;
  top: 460px;
  right: calc(50% + 272px);
}
@media screen and (max-width: 750px) {
  .experience__picture2 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
ハロウィン
----------------------------------------------------------------------------- */
.fun_halloween {
  position: relative;
  background: url(../images/fun/halloween_bg.webp) center top no-repeat;
  height: 970px;
}
@media screen and (max-width: 750px) {
  .fun_halloween {
    background-image: none;
    height: 140vw;
  }
}

.halloween__inner {
  max-width: 1160px;
  padding: 520px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .halloween__inner {
    padding: 97vw 10% 0 10%;
  }
}

.halloween__content {
  max-width: 400px;
  position: relative;
  z-index: 2;
}
.halloween__content .halloween__head {
  width: 266px;
}
@media screen and (max-width: 750px) {
  .halloween__content .halloween__head {
    width: 38vw;
  }
}
.halloween__content .halloween__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .halloween__content .halloween__body {
    margin-top: 0.75rem;
  }
}

.halloween__picture1 {
  width: 1160px;
  position: absolute;
  top: 200px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 750px) {
  .halloween__picture1 {
    width: 89vw;
    top: 6vw;
    left: 4vw;
    transform: none;
  }
}
.halloween__picture1 > img {
  position: relative;
  z-index: 1;
}
.halloween__picture1 .halloween__deco {
  position: absolute;
  width: 319px;
  right: 100px;
  top: 255px;
  transition-property: top, right;
  transition-duration: 0.3s;
}
.halloween__picture1 .halloween__deco.js-scrollanim {
  opacity: 1;
}
.halloween__picture1 .halloween__deco.js-scrollanim--fired {
  right: 100px;
  top: 145px;
}
@media screen and (max-width: 750px) {
  .halloween__picture1 .halloween__deco {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
チャレンジ
----------------------------------------------------------------------------- */
.fun_challenge {
  position: relative;
  background: url(../images/fun/challenge_bg.webp) center top no-repeat;
  height: 735px;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .fun_challenge {
    background-image: url(../images/fun/sp_challenge_bg.webp);
    background-size: contain;
    height: 159.466vw;
  }
}

.challenge__inner {
  max-width: 1160px;
  padding: 155px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .challenge__inner {
    padding: 103vw 10% 0 10%;
  }
}

.challenge__content {
  max-width: 400px;
  margin-right: 0;
  margin-left: auto;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .challenge__content {
    margin-right: auto;
    margin-left: 0;
  }
}
.challenge__content .challenge__head {
  width: 422px;
}
@media screen and (max-width: 750px) {
  .challenge__content .challenge__head {
    width: 62vw;
  }
}
.challenge__content .challenge__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .challenge__content .challenge__body {
    margin-top: 0.75rem;
  }
}

.challenge__picture1 {
  width: 700px;
  position: absolute;
  top: 50px;
  right: calc(50% - 50px);
}
@media screen and (max-width: 750px) {
  .challenge__picture1 {
    width: 98vw;
    top: 10vw;
    right: 1vw;
  }
}

.challenge__picture2 {
  width: 571px;
  position: absolute;
  top: 430px;
  left: calc(50% + 105px);
}
@media screen and (max-width: 750px) {
  .challenge__picture2 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
稲作
----------------------------------------------------------------------------- */
.fun_planting {
  position: relative;
  background: url(../images/fun/planting_bg.webp) center top no-repeat;
  height: 1220px;
  margin-top: -370px;
}
@media screen and (max-width: 750px) {
  .fun_planting {
    background-image: none;
    margin-top: 0;
    height: 141vw;
  }
}

.planting__inner {
  max-width: 1160px;
  padding: 666px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .planting__inner {
    padding: 83vw 10% 0 10%;
  }
}

.planting__content {
  max-width: 400px;
  margin-left: calc(50% - 20px);
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .planting__content {
    margin-left: 0;
  }
}
.planting__content .planting__head {
  width: 272px;
}
@media screen and (max-width: 750px) {
  .planting__content .planting__head {
    width: 40vw;
  }
}
.planting__content .planting__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .planting__content .planting__body {
    margin-top: 0.75rem;
  }
}

.planting__picture1 {
  width: 740px;
  position: absolute;
  top: 520px;
  right: calc(50% + 50px);
}
@media screen and (max-width: 750px) {
  .planting__picture1 {
    width: 82vw;
    top: 10vw;
    right: 8vw;
  }
}

/* -----------------------------------------------------------------------------
遠足
----------------------------------------------------------------------------- */
.fun_usj {
  position: relative;
  background: url(../images/fun/usj_bg.webp) center top no-repeat;
  height: 1280px;
  margin-top: -180px;
}
@media screen and (max-width: 750px) {
  .fun_usj {
    background-image: none;
    margin-top: 0;
    height: 128vw;
  }
}

.usj__inner {
  max-width: 1160px;
  padding: 560px 20px 0 20px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .usj__inner {
    padding: 83vw 10% 0 10%;
  }
}

.usj__content {
  max-width: 400px;
  margin-left: calc(50% - 270px);
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .usj__content {
    margin-left: 0;
  }
}
.usj__content .usj__head {
  width: 246px;
}
@media screen and (max-width: 750px) {
  .usj__content .usj__head {
    width: 37vw;
  }
}
.usj__content .usj__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .usj__content .usj__body {
    margin-top: 0.75rem;
  }
}

.usj__picture1 {
  width: 640px;
  position: absolute;
  top: 220px;
  left: calc(50% - 30px);
}
@media screen and (max-width: 750px) {
  .usj__picture1 {
    width: 80vw;
    top: 0;
    left: 10vw;
  }
}

/* -----------------------------------------------------------------------------
お気軽にご相談ください
----------------------------------------------------------------------------- */
.fun__contact {
  margin-top: -230px;
  padding: 80px 0 165px 0;
}
@media screen and (max-width: 750px) {
  .fun__contact {
    margin-top: 0;
    padding: 3rem 0 0 0;
  }
}

/* -----------------------------------------------------------------------------
もっと
----------------------------------------------------------------------------- */
.fun__more__button {
  text-align: center;
  padding: 2rem;
}

@media screen and (max-width: 750px) {
  .fun__more {
    height: 75px;
    overflow: hidden;
    transition-property: height;
    transition-duration: 0.5s;
    position: relative;
  }
  .fun__more::before {
    content: "";
    width: 100%;
    height: 75px;
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
    z-index: 1;
  }
  .fun__more.is-open::before {
    height: 0;
  }
}
/* *****************************************************************************
********************************************************************************
給食室より愛を込めて
********************************************************************************
***************************************************************************** */
/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
.page__mainvisual {
  height: 600px;
  width: 100%;
  max-width: 1920px;
  margin: auto;
  position: relative;
}
@media screen and (max-width: 750px) {
  .page__mainvisual {
    height: 60vw;
  }
}
.page__mainvisual .page__title {
  position: absolute;
}
.page__mainvisual .page__mainvisual__inner {
  width: 100%;
  height: 100%;
}
.page__mainvisual .mainvisual__picture {
  width: 100%;
  height: 100%;
}
.page__mainvisual .mainvisual__picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.common__mainvisual::after {
  max-width: 1920px;
  width: 100%;
  height: 75px;
  content: "";
  display: block;
  background: url(../images/common/white_top.webp) center bottom no-repeat;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media screen and (max-width: 750px) {
  .common__mainvisual::after {
    background-image: url(../images/common/sp_white_top.webp);
    height: 8vw;
  }
}

body.lunch main {
  overflow: hidden;
}
body.lunch .page__mainvisual .page__title {
  top: 320px;
  right: calc(50% + 256px);
  width: 320px;
}
@media screen and (max-width: 750px) {
  body.lunch .page__mainvisual .page__title {
    top: 34vw;
    right: calc(50% + 13vw);
    width: 26vw;
  }
}

/* -----------------------------------------------------------------------------
給食室より愛を込めて
----------------------------------------------------------------------------- */
.lunch__kitchen {
  margin-top: 150px;
}
@media screen and (max-width: 750px) {
  .lunch__kitchen {
    margin-top: 8vw;
  }
}

.kitchen__inner {
  height: 800px;
}
@media screen and (max-width: 750px) {
  .kitchen__inner {
    display: flex;
    row-gap: 4vw;
    flex-direction: column-reverse;
    height: auto;
  }
}
.kitchen__inner .kitchen__content {
  max-width: 400px;
  position: relative;
  margin-right: auto;
}
.kitchen__inner .kitchen__content .kitchen__head {
  width: 453px;
}
@media screen and (max-width: 750px) {
  .kitchen__inner .kitchen__content .kitchen__head {
    width: 71vw;
  }
}
.kitchen__inner .kitchen__content .kitchen__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .kitchen__inner .kitchen__content .kitchen__body {
    margin-top: 0.75rem;
  }
}
.kitchen__inner .kitchen__picture1 {
  max-width: calc(58% + 380px);
  width: 1060px;
  height: 694px;
  position: absolute;
  top: 0;
  left: 42%;
}
.kitchen__inner .kitchen__picture1 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .kitchen__inner .kitchen__picture1 {
    max-width: 100%;
    height: auto;
    position: static;
  }
}
.kitchen__inner .kitchen__picture2 {
  width: 350px;
  position: absolute;
  top: 395px;
  right: calc(50% + 350px);
}
@media screen and (max-width: 750px) {
  .kitchen__inner .kitchen__picture2 {
    display: none;
  }
}
.kitchen__inner .kitchen__picture3 {
  width: 400px;
  position: absolute;
  top: 444px;
  right: calc(50% - 100px);
  box-shadow: 10px -10px 0 #6eaa69;
}
@media screen and (max-width: 750px) {
  .kitchen__inner .kitchen__picture3 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
世界のお料理
----------------------------------------------------------------------------- */
.lunch__section .section__upper {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 750px) {
  .lunch__section .section__upper {
    display: flex;
    row-gap: 4vw;
    flex-direction: column-reverse;
  }
}
.lunch__section .section__content {
  flex-basis: 34%;
}
.lunch__section .section__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .lunch__section .section__body {
    margin-top: 0.75rem;
  }
}
.lunch__section .section__picture {
  flex-basis: 60%;
}
.lunch__section .section__lower {
  width: 120%;
  margin-left: -10%;
  margin-top: 60px;
}
@media screen and (max-width: 750px) {
  .lunch__section .section__lower {
    display: none;
  }
}
.lunch__section .section__pictures {
  display: flex;
  justify-content: space-between;
}
.lunch__section .section__pictures > div {
  flex-basis: 22%;
}

.lunch__world {
  margin-top: 150px;
}
@media screen and (max-width: 750px) {
  .lunch__world {
    margin-top: 10.666vw;
  }
}

@media screen and (min-width: 751px) {
  .world__inner .section__upper {
    flex-direction: row-reverse;
  }
}
.world__inner .world__head {
  width: 236px;
}
@media screen and (max-width: 750px) {
  .world__inner .world__head {
    width: 38.6vw;
  }
}

/* -----------------------------------------------------------------------------
からだも食育クッキング
----------------------------------------------------------------------------- */
.lunch__education {
  margin-top: 150px;
  padding-top: 75px;
  background-color: #ece7e6;
  position: relative;
}
@media screen and (max-width: 750px) {
  .lunch__education {
    margin-top: 16vw;
    padding-top: 8vw;
  }
}
.lunch__education::before {
  content: "";
  display: block;
  position: absolute;
  top: -75px;
  left: 0;
  width: 100%;
  height: 75px;
  background: url(../images/common/gray_top.webp) center bottom no-repeat;
}
@media screen and (max-width: 750px) {
  .lunch__education::before {
    top: -8vw;
    background-image: url(../images/common/sp_gray_top.webp);
    height: calc(8vw + 1px);
    background-size: contain;
  }
}

.education__inner {
  height: 800px;
}
@media screen and (max-width: 750px) {
  .education__inner {
    display: flex;
    row-gap: 4vw;
    flex-direction: column-reverse;
    height: auto;
  }
}
.education__inner .education__content {
  max-width: 400px;
  margin-left: auto;
  margin-right: 0;
  position: relative;
}
@media screen and (max-width: 750px) {
  .education__inner .education__content {
    max-width: initial;
  }
}
.education__inner .education__content .education__head {
  width: 453px;
}
@media screen and (max-width: 750px) {
  .education__inner .education__content .education__head {
    width: 77vw;
  }
}
.education__inner .education__content .education__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .education__inner .education__content .education__body {
    margin-top: 0.75rem;
  }
}
.education__inner .education__picture1 {
  max-width: calc(58% + 380px);
  width: 1060px;
  height: 694px;
  position: absolute;
  top: 0;
  right: 42%;
}
.education__inner .education__picture1 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .education__inner .education__picture1 {
    max-width: 100%;
    height: auto;
    position: static;
  }
}
.education__inner .education__picture2 {
  width: 350px;
  position: absolute;
  top: 395px;
  left: calc(50% + 350px);
}
@media screen and (max-width: 750px) {
  .education__inner .education__picture2 {
    display: none;
  }
}
.education__inner .education__picture3 {
  width: 400px;
  position: absolute;
  top: 444px;
  left: calc(50% - 100px);
  box-shadow: -10px -10px 0 #6eaa69;
}
@media screen and (max-width: 750px) {
  .education__inner .education__picture3 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
クッキング体験
----------------------------------------------------------------------------- */
.lunch__cooking {
  padding-top: 200px;
  background-color: #ece7e6;
}
@media screen and (max-width: 750px) {
  .lunch__cooking {
    padding-top: 10.666vw;
  }
}

.cooking__inner .cooking__head {
  width: 269px;
}
@media screen and (max-width: 750px) {
  .cooking__inner .cooking__head {
    width: 44vw;
  }
}
.cooking__inner .cooking__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .cooking__inner .cooking__body {
    margin-top: 0.75rem;
  }
}

/* -----------------------------------------------------------------------------
お野菜栽培
----------------------------------------------------------------------------- */
.lunch__grow {
  padding-top: 200px;
  background-color: #ece7e6;
  position: relative;
}
@media screen and (max-width: 750px) {
  .lunch__grow {
    padding-top: 10.666vw;
    padding-bottom: 16vw;
  }
}

.grow__inner {
  height: 800px;
}
@media screen and (max-width: 750px) {
  .grow__inner {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 4vw;
    height: auto;
  }
}
.grow__inner .grow__content {
  max-width: 400px;
  position: relative;
}
.grow__inner .grow__content .grow__head {
  width: 196px;
}
@media screen and (max-width: 750px) {
  .grow__inner .grow__content .grow__head {
    width: 37vw;
  }
}
.grow__inner .grow__content .grow__body {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .grow__inner .grow__content .grow__body {
    margin-top: 0.75rem;
  }
}
.grow__inner .grow__picture1 {
  width: 580px;
  position: absolute;
  top: 140px;
  right: 0;
}
@media screen and (max-width: 750px) {
  .grow__inner .grow__picture1 {
    position: static;
    width: 100%;
  }
}
.grow__inner .grow__picture2 {
  width: 390px;
  position: absolute;
  top: 375px;
  right: calc(50% + 30px);
}
@media screen and (max-width: 750px) {
  .grow__inner .grow__picture2 {
    display: none;
  }
}
.grow__inner .grow__picture3 {
  width: 320px;
  position: absolute;
  top: 0;
  left: calc(50% + 380px);
}
@media screen and (max-width: 750px) {
  .grow__inner .grow__picture3 {
    display: none;
  }
}

/* -----------------------------------------------------------------------------
お気軽にご相談ください
----------------------------------------------------------------------------- */
.lunch__contact {
  position: relative;
  padding-top: 125px;
  padding-bottom: 165px;
}
@media screen and (max-width: 750px) {
  .lunch__contact {
    padding: 8vw 0 0 0;
  }
}
.lunch__contact::before {
  content: "";
  display: block;
  position: absolute;
  top: -75px;
  left: 0;
  width: 100%;
  height: 75px;
  background: url(../images/common/white_top.webp) center bottom no-repeat;
}
@media screen and (max-width: 750px) {
  .lunch__contact::before {
    background-image: url(../images/common/sp_white_top.webp);
    top: -8vw;
    height: 8vw;
  }
}

/* *****************************************************************************
********************************************************************************
保育園の生活
********************************************************************************
***************************************************************************** */
/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
body.childcare main {
  overflow: hidden;
}
body.childcare .page__mainvisual .page__title {
  top: 383px;
  right: calc(50% + 190px);
  width: 320px;
}
@media screen and (max-width: 750px) {
  body.childcare .page__mainvisual .page__title {
    top: 34vw;
    right: calc(50% + 9vw);
    width: 31vw;
  }
}

/* -----------------------------------------------------------------------------
一日の流れ
----------------------------------------------------------------------------- */
.childcare__routine {
  margin-top: 150px;
  padding-bottom: 150px;
}
@media screen and (max-width: 750px) {
  .childcare__routine {
    margin-top: 8vw;
    padding-bottom: 8vw;
  }
}

.routine__content {
  margin-top: 2.5rem;
}

.routine__inner .routine__head {
  width: 180px;
}
@media screen and (max-width: 750px) {
  .routine__inner .routine__head {
    width: 35vw;
  }
}
.routine__inner .routine__item {
  padding-bottom: 50px;
  position: relative;
}
.routine__inner .routine__item::before {
  content: "";
  display: block;
  width: 3px;
  height: calc(100% - 65px);
  position: absolute;
  top: 65px;
  left: 32px;
  background: url(../images/childcare/routine_line_red.svg) center top repeat-y;
}
@media screen and (max-width: 750px) {
  .routine__inner .routine__item::before {
    top: 13.333vw;
    left: 6.666vw;
    height: calc(100% - 13.333vw);
  }
}
.routine__inner .routine__item:last-child {
  padding-bottom: 0;
}
.routine__inner .routine__item.routine__0700::before, .routine__inner .routine__item.routine__1830::before {
  background-image: url(../images/childcare/routine_line_green.svg);
}
.routine__inner .item__head img {
  height: 65px;
  width: auto;
}
@media screen and (max-width: 750px) {
  .routine__inner .item__head img {
    height: 13.333vw;
  }
}
.routine__inner .item__explain {
  max-width: 400px;
}
.routine__inner .item__content {
  margin-left: 200px;
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
@media screen and (max-width: 750px) {
  .routine__inner .item__content {
    margin-left: 16vw;
    row-gap: 5.333vw;
  }
}
.routine__inner .item__content .content__pictures {
  display: flex;
  -moz-column-gap: 55px;
       column-gap: 55px;
}
.routine__inner .item__content .content__pictures > div {
  flex-basis: 300px;
}
@media screen and (max-width: 750px) {
  .routine__inner .item__content .content__pictures .content__picture2,
  .routine__inner .item__content .content__pictures .content__deco {
    display: none;
  }
}
.routine__inner .routine__0700 .content__pictures .content__deco {
  flex-basis: 238px;
}
.routine__inner .routine__1000 .content__pictures {
  justify-content: space-between;
  position: relative;
}
.routine__inner .routine__1000 .content__pictures .content__picture2 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 500px;
}
.routine__inner .routine__1000 .content__pictures .content__deco {
  position: absolute;
  right: 0;
  bottom: -96px;
  width: 188px;
}
.routine__inner .routine__1100 .content__pictures {
  -moz-column-gap: 165px;
       column-gap: 165px;
}
.routine__inner .routine__1230 .content__pictures {
  justify-content: space-between;
  position: relative;
}
.routine__inner .routine__1230 .content__pictures .content__picture2 {
  position: absolute;
  right: 0;
  top: 0;
  width: 500px;
}
.routine__inner .routine__1230 .content__pictures .content__deco {
  position: absolute;
  right: 130px;
  top: 260px;
  width: 200px;
}
.routine__inner .routine__1830 .content__pictures {
  justify-content: space-between;
  position: relative;
}
@media screen and (min-width: 751px) {
  .routine__inner .routine__1830 .content__pictures .content__picture1 {
    position: absolute;
    right: 0;
    top: -160px;
    width: 500px;
  }
}
.routine__inner .routine__1830 .content__pictures .content__deco {
  position: absolute;
  right: 430px;
  top: -250px;
  width: 150px;
}

/* -----------------------------------------------------------------------------
年間行事
----------------------------------------------------------------------------- */
.childcare__event {
  position: relative;
  margin-top: 150px;
  padding-top: 75px;
  padding-bottom: 150px;
  background-color: #ece7e6;
}
@media screen and (max-width: 750px) {
  .childcare__event {
    margin-top: 8vw;
    padding-bottom: 8vw;
  }
}
.childcare__event::before {
  content: "";
  display: block;
  position: absolute;
  top: -75px;
  left: 0;
  width: 100%;
  height: 75px;
  background: url(../images/common/gray_top.webp) center bottom no-repeat;
}
@media screen and (max-width: 750px) {
  .childcare__event::before {
    top: -8vw;
    background-image: url(../images/common/sp_gray_top.webp);
    height: calc(8vw + 1px);
    background-size: contain;
  }
}

.event__inner .event__head {
  width: 173px;
}
@media screen and (max-width: 750px) {
  .event__inner .event__head {
    width: 37vw;
  }
}
.event__inner .event__items__wrapper {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .event__inner .event__items__wrapper {
    margin-top: 8vw;
    overflow-x: scroll;
  }
}
.event__inner .event__items {
  background-color: #fff;
  border-radius: 20px;
  padding: 30px 35px;
  display: flex;
  width: calc(100% - 70px);
}
@media screen and (max-width: 750px) {
  .event__inner .event__items {
    padding: 5.6vw;
    width: calc(250% - 11.2vw);
    border-radius: 5vw;
  }
}
.event__inner .event__item {
  flex-basis: 25%;
  position: relative;
}
.event__inner .event__item dt {
  padding: 20px 20px 30px 20px;
  text-align: center;
  border-bottom: solid 3px #989898;
}
@media screen and (max-width: 750px) {
  .event__inner .event__item dt {
    padding: 5vw;
  }
}
.event__inner .event__item dt > img {
  height: 29px;
}
@media screen and (max-width: 750px) {
  .event__inner .event__item dt > img {
    height: 5.8vw;
  }
}
.event__inner .event__item dd {
  text-align: center;
  padding: 30px 1em;
  font-size: 1.375rem;
  line-height: 2.2;
}
@media screen and (max-width: 750px) {
  .event__inner .event__item dd {
    padding: 1em;
    font-size: 1rem;
  }
}
.event__inner .event__item + .event__item::before {
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url(../images/childcare/line_v_gray.svg) center top repeat-y;
}
.event__inner .event__note {
  text-align: right;
  font-size: 0.9375rem;
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  .event__inner .event__note {
    text-align: center;
  }
}
.event__inner .event__health {
  margin-top: 30px;
  background-color: #fff;
  border-radius: 15px;
  padding: 40px 1em;
}
.event__inner .event__health > dl {
  display: flex;
  justify-content: center;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
@media screen and (max-width: 750px) {
  .event__inner .event__health > dl {
    flex-direction: column;
    row-gap: 8vw;
  }
}
.event__inner .event__health > dl dt img {
  height: 34px;
}
@media screen and (max-width: 750px) {
  .event__inner .event__health > dl dt img {
    height: 9vw;
  }
}
.event__inner .event__health > dl dd {
  font-size: 1.375rem;
  display: flex;
}
@media screen and (min-width: 751px) {
  .event__inner .event__health > dl dd {
    -moz-column-gap: 1em;
         column-gap: 1em;
  }
}
@media screen and (max-width: 750px) {
  .event__inner .event__health > dl dd {
    flex-direction: column;
    align-items: center;
    row-gap: 0.25em;
  }
}

/* -----------------------------------------------------------------------------
  園内マップ
----------------------------------------------------------------------------- */
.childcare__floor {
  position: relative;
  padding-top: 75px;
  padding-bottom: 150px;
  background-color: #fff;
}
@media screen and (max-width: 750px) {
  .childcare__floor {
    margin-top: 0;
    padding-bottom: 8vw;
  }
}
.childcare__floor::before {
  content: "";
  display: block;
  position: absolute;
  top: -75px;
  left: 0;
  width: 100%;
  height: 75px;
  background: url(../images/common/white_top.webp) center bottom no-repeat;
}
@media screen and (max-width: 750px) {
  .childcare__floor::before {
    top: -8vw;
    background-image: url(../images/common/sp_white_top.webp);
    height: calc(8vw + 1px);
    background-size: contain;
  }
}

.floor__inner .floor__head {
  width: 197px;
}
@media screen and (max-width: 750px) {
  .floor__inner .floor__head {
    width: 33vw;
  }
}

.floor__map__wrapper {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .floor__map__wrapper {
    overflow-x: scroll;
    margin-top: 16vw;
  }
}

.floor__map {
  width: 1344px;
  margin-left: -75px;
}
@media screen and (max-width: 750px) {
  .floor__map {
    width: 237vw;
    margin-left: 0;
    padding: 0 6vw;
  }
}

.floor__age {
  margin-top: 45px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .floor__age {
    margin-top: 13vw;
  }
}

.floor__slide {
  margin-top: 80px;
}
@media screen and (max-width: 750px) {
  .floor__slide {
    margin-top: 13vw;
  }
}

.floor__slide__area {
  width: 100%;
  overflow-x: hidden;
}

.floor__slide__items {
  display: flex;
  -moz-column-gap: 50px;
       column-gap: 50px;
}
@media screen and (max-width: 750px) {
  .floor__slide__items {
    -moz-column-gap: 10vw;
         column-gap: 10vw;
  }
}
@media screen and (min-width: 751px) {
  .floor__slide__items {
    animation: 30s linear infinite sliderAnimation;
  }
}
@media screen and (max-width: 750px) {
  .floor__slide__items {
    animation: 30s linear infinite sliderAnimationSp;
  }
}

.floor__slide__item {
  flex-basis: 370px;
  flex-shrink: 0;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .floor__slide__item {
    flex-basis: 80vw;
  }
}
.floor__slide__item p {
  margin-top: 10px;
  font-size: 1.25rem;
}

@keyframes sliderAnimation {
  100% {
    transform: translateX(-2520px);
  }
}
@keyframes sliderAnimationSp {
  100% {
    transform: translateX(-540vw);
  }
}
/* -----------------------------------------------------------------------------
てのひら制服
----------------------------------------------------------------------------- */
.childcare__uniform {
  position: relative;
  margin-top: 150px;
  padding-top: 75px;
  padding-bottom: 150px;
  background-color: #ece7e6;
}
@media screen and (max-width: 750px) {
  .childcare__uniform {
    margin-top: 8vw;
    padding-bottom: 8vw;
  }
}
.childcare__uniform::before {
  content: "";
  display: block;
  position: absolute;
  top: -75px;
  left: 0;
  width: 100%;
  height: 75px;
  background: url(../images/common/gray_top.webp) center bottom no-repeat;
}
@media screen and (max-width: 750px) {
  .childcare__uniform::before {
    top: -8vw;
    background-image: url(../images/common/sp_gray_top.webp);
    height: calc(8vw + 1px);
    background-size: contain;
  }
}

.uniform__inner .uniform__head {
  width: 277px;
}
@media screen and (max-width: 750px) {
  .uniform__inner .uniform__head {
    display: none;
  }
}

.uniform__items {
  width: 1080px;
  display: flex;
  justify-content: space-between;
  margin: 60px auto;
}
@media screen and (max-width: 750px) {
  .uniform__items {
    flex-direction: column;
    row-gap: 8vw;
    width: 100%;
    margin: 16vw auto;
  }
}

.uniform__item {
  flex-basis: 460px;
}
@media screen and (max-width: 750px) {
  .uniform__item {
    display: flex;
    flex-direction: column-reverse;
    flex-basis: auto;
    row-gap: 3vw;
  }
}
.uniform__item .item__image {
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .uniform__item .item__image {
    border-radius: 5.333vw;
  }
}
.uniform__item .item__subject {
  margin-top: 24px;
}
@media screen and (max-width: 750px) {
  .uniform__item .item__subject {
    margin-top: 0;
  }
}
.uniform__item .item__subject img {
  height: 57px;
}
@media screen and (max-width: 750px) {
  .uniform__item .item__subject img {
    height: 15vw;
  }
}

/* *****************************************************************************
********************************************************************************
てのひらについて
********************************************************************************
***************************************************************************** */
/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
body.about main {
  overflow: hidden;
}
body.about .page__mainvisual .page__title {
  top: 383px;
  right: calc(50% + 75px);
  width: 488px;
}
@media screen and (max-width: 750px) {
  body.about .page__mainvisual .page__title {
    top: 34vw;
    right: 50%;
    width: 40vw;
  }
}

/* -----------------------------------------------------------------------------
てのひらの思い
----------------------------------------------------------------------------- */
.about__philosophy {
  margin-top: 150px;
  padding-bottom: 150px;
}
@media screen and (max-width: 750px) {
  .about__philosophy {
    margin-top: 8vw;
    padding-bottom: 16vw;
  }
}

.philosophy__inner .philosophy__head {
  width: 378px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__head {
    width: 66vw;
  }
}
.philosophy__inner .philosophy__content {
  margin-top: 100px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__content {
    flex-direction: column;
    row-gap: 13vw;
    margin-top: 10vw;
  }
}
.philosophy__inner .philosophy__content .philosophy__body {
  flex-basis: 500px;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__content .philosophy__body {
    flex-basis: auto;
  }
}
.philosophy__inner .philosophy__content .philosophy__body h3 {
  font-size: 2.5rem;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__content .philosophy__body h3 {
    font-size: 1.5625rem;
  }
}
.philosophy__inner .philosophy__content .philosophy__body h4 {
  font-size: 1.875rem;
  margin-top: 3rem;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__content .philosophy__body h4 {
    margin-top: 1.25rem;
    font-size: 1.375rem;
  }
}
.philosophy__inner .philosophy__content .philosophy__body .philosophy__sentence {
  margin-top: 1.875rem;
  line-height: 2.25;
  font-size: 1rem;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__content .philosophy__body .philosophy__sentence {
    margin-top: 1.25rem;
    font-size: 0.75rem;
  }
}
.philosophy__inner .philosophy__content .philosophy__body p + p {
  margin-top: 1em;
}
.philosophy__inner .philosophy__content .philosophy__figure {
  flex-basis: 610px;
}
@media screen and (max-width: 750px) {
  .philosophy__inner .philosophy__content .philosophy__figure {
    flex-basis: auto;
  }
}

/* -----------------------------------------------------------------------------
てのひらの思い 後半
----------------------------------------------------------------------------- */
.about__philosophy2 {
  padding: 100px 0;
  background-color: #f4f1f0;
}
@media screen and (max-width: 750px) {
  .about__philosophy2 {
    padding: 16vw 0;
  }
}

.philosophy2__inner .philosophy2__item {
  display: flex;
}
@media screen and (max-width: 750px) {
  .philosophy2__inner .philosophy2__item {
    flex-direction: column-reverse;
    row-gap: 4vw;
  }
}
.philosophy2__inner .philosophy2__item .item_body {
  flex-basis: 50%;
}
@media screen and (max-width: 750px) {
  .philosophy2__inner .philosophy2__item .item_body {
    flex-basis: auto;
  }
}
.philosophy2__inner .philosophy2__item .item_picture {
  flex-basis: 50%;
}
@media screen and (max-width: 750px) {
  .philosophy2__inner .philosophy2__item .item_picture {
    flex-basis: auto;
  }
}
.philosophy2__inner .philosophy2__item .item_subject img {
  height: 100px;
  width: auto;
}
@media screen and (max-width: 750px) {
  .philosophy2__inner .philosophy2__item .item_subject img {
    height: 13.8vw;
  }
}
.philosophy2__inner .philosophy2__item .item_sentence {
  font-size: 1rem;
  line-height: 2.25;
  margin-top: 30px;
}
@media screen and (max-width: 750px) {
  .philosophy2__inner .philosophy2__item .item_sentence {
    font-size: 0.75rem;
    margin-top: 1em;
  }
}
.philosophy2__inner .philosophy2__item + .philosophy2__item {
  margin-top: 150px;
}
@media screen and (max-width: 750px) {
  .philosophy2__inner .philosophy2__item + .philosophy2__item {
    margin-top: 16vw;
  }
}

/* -----------------------------------------------------------------------------
カリキュラム
----------------------------------------------------------------------------- */
.about__curriculum {
  padding: 100px 0;
}
@media screen and (max-width: 750px) {
  .about__curriculum {
    padding: 12vw 0;
  }
}

.curriculum__inner .curriculum__head {
  width: 538px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .curriculum__inner .curriculum__head {
    width: 60vw;
  }
}

.curriculum__content {
  margin-top: 100px;
}
@media screen and (max-width: 750px) {
  .curriculum__content {
    margin-top: 13vw;
  }
}
.curriculum__content > h3 {
  font-size: 2.5rem;
}
@media screen and (max-width: 750px) {
  .curriculum__content > h3 {
    font-size: 1.5625rem;
  }
}

.curriculum__item {
  display: flex;
  justify-content: space-between;
  background: url(../images/about/curriculum_line.svg) left bottom no-repeat;
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .curriculum__item {
    margin-top: 10vw;
    flex-direction: column-reverse;
    row-gap: 4vw;
    padding-bottom: 5vw;
  }
  .curriculum__item:last-child {
    background: none;
  }
}
.curriculum__item .item_body {
  flex-basis: 43%;
}
@media screen and (max-width: 750px) {
  .curriculum__item .item_body {
    flex-basis: auto;
  }
}
.curriculum__item .item_picture {
  flex-basis: 50%;
}
@media screen and (max-width: 750px) {
  .curriculum__item .item_picture {
    flex-basis: auto;
  }
}
.curriculum__item .item_subject img {
  height: 100px;
  width: auto;
}
@media screen and (max-width: 750px) {
  .curriculum__item .item_subject img {
    height: 13.8vw;
  }
  .curriculum__item .item_subject img.two_lines {
    height: 21.6vw;
  }
}
.curriculum__item .item_sentence {
  font-size: 1rem;
  line-height: 2.25;
  margin-top: 30px;
}
@media screen and (max-width: 750px) {
  .curriculum__item .item_sentence {
    font-size: 0.75rem;
  }
}
.curriculum__item + .curriculum__item {
  margin-top: 70px;
}
@media screen and (max-width: 750px) {
  .curriculum__item + .curriculum__item {
    margin-top: 10vw;
  }
}

/* -----------------------------------------------------------------------------
地域公益事業
----------------------------------------------------------------------------- */
.about__local {
  padding: 80px 0;
  background-color: #f4f1f0;
}
@media screen and (max-width: 750px) {
  .about__local {
    padding: 10vw 0 16vw 0;
  }
}

.local__inner .local__content {
  margin-top: 50px;
  font-size: 1.125rem;
  display: flex;
}
@media screen and (max-width: 750px) {
  .local__inner .local__content {
    margin-top: 5vw;
    flex-direction: column;
    font-size: 0.75rem;
  }
}
.local__inner .local__content > div {
  flex-basis: 50%;
}
@media screen and (max-width: 750px) {
  .local__inner .local__content > div {
    flex-basis: auto;
  }
}

/* -----------------------------------------------------------------------------
施設概要
----------------------------------------------------------------------------- */
.about__facility {
  padding: 80px 0;
}
@media screen and (max-width: 750px) {
  .about__facility {
    padding: 16vw 0;
  }
}

@media screen and (max-width: 750px) {
  .facility__inner {
    padding: 0;
  }
}
@media screen and (max-width: 750px) {
  .facility__inner .facility__head {
    padding: 0 10%;
  }
}
.facility__inner .facility__content {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(5, auto);
}
@media screen and (max-width: 750px) {
  .facility__inner .facility__content {
    padding: 0 2.666%;
    display: block;
  }
}
.facility__inner .facility__content dl {
  display: flex;
  padding: 30px 0;
  align-items: center;
  border-bottom: solid 1px #707070;
}
.facility__inner .facility__content dl dt {
  flex-basis: 180px;
  padding-left: 30px;
  font-size: 1.375rem;
  font-weight: bold;
}
@media screen and (max-width: 750px) {
  .facility__inner .facility__content dl dt {
    flex-basis: 30%;
    padding-left: 2em;
    font-size: 0.9375rem;
  }
}
.facility__inner .facility__content dl dd {
  font-size: 1.125rem;
}
@media screen and (max-width: 750px) {
  .facility__inner .facility__content dl dd {
    font-size: 0.75rem;
  }
}

/* -----------------------------------------------------------------------------
情報公開
----------------------------------------------------------------------------- */
.about__disclosure {
  padding: 80px 0 80px 0;
  background-color: #f4f1f0;
}
@media screen and (max-width: 750px) {
  .about__disclosure {
    padding: 10vw 0;
  }
}

.disclosure__content {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .disclosure__content {
    display: block;
    margin-top: 5vw;
    padding: 0 2.666%;
  }
}
.disclosure__content dl > a {
  display: flex;
  padding: 30px 0;
  align-items: center;
  background-color: #fff;
  -moz-column-gap: 50px;
       column-gap: 50px;
  padding-left: calc((100% - 1200px) / 2);
  padding-right: calc((100% - 1200px) / 2);
}
@media screen and (max-width: 750px) {
  .disclosure__content dl > a {
    flex-direction: column;
    row-gap: 5vw;
    padding: 7vw 7vw 21vw 7vw;
    position: relative;
    align-items: flex-start;
  }
}
.disclosure__content dl > a:hover {
  background-color: #eaeaea;
}
.disclosure__content dl dt {
  flex-basis: 300px;
  font-size: 1.375rem;
  flex-shrink: 0;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .disclosure__content dl dt {
    font-size: 0.9375rem;
    flex-basis: auto;
    text-align: left;
  }
}
@media screen and (max-width: 750px) {
  .disclosure__content dl dd {
    font-size: 0.75rem;
  }
}
.disclosure__content dl dd.icon {
  flex-basis: 60px;
  flex-shrink: 0;
}
@media screen and (max-width: 750px) {
  .disclosure__content dl dd.icon {
    flex-basis: auto;
    position: absolute;
    bottom: 7vw;
    left: 50%;
    transform: translateX(-50%);
    width: 16vw;
  }
}
.disclosure__content dl + dl {
  margin-top: 30px;
}

/* -----------------------------------------------------------------------------
お気軽にご相談ください
----------------------------------------------------------------------------- */
.about__contact {
  padding-top: 125px;
  padding-bottom: 165px;
}
@media screen and (max-width: 750px) {
  .about__contact {
    padding: 0;
  }
}

/* *****************************************************************************
********************************************************************************
入案案内
********************************************************************************
***************************************************************************** */
/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
body.guidance main {
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  body.guidance .page__mainvisual .mainvisual__picture img {
    -o-object-position: 80% center;
       object-position: 80% center;
  }
}
body.guidance .page__mainvisual .page__title {
  top: 383px;
  right: calc(50% + 310px);
  width: 246px;
}
@media screen and (max-width: 750px) {
  body.guidance .page__mainvisual .page__title {
    top: 34vw;
    right: calc(50% + 18vw);
    width: 20vw;
  }
}

/* -----------------------------------------------------------------------------
入園の流れ
----------------------------------------------------------------------------- */
.guidance__flow {
  margin-top: 30px;
  padding-top: 100px;
  padding-bottom: 60px;
}
@media screen and (max-width: 750px) {
  .guidance__flow {
    margin-top: 0;
    padding-top: 13vw;
    padding-bottom: 0;
  }
}

.flow__inner .flow__lead {
  margin-top: 50px;
  line-height: 2.25;
}
@media screen and (max-width: 750px) {
  .flow__inner .flow__lead {
    margin-top: 5vw;
  }
}
.flow__inner .flow__items {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 4%;
       column-gap: 4%;
}
@media screen and (max-width: 750px) {
  .flow__inner .flow__items {
    flex-direction: column;
    row-gap: 5vw;
  }
}
.flow__inner .flow__item {
  flex-basis: 48%;
  padding: 40px 30px;
  border: solid 2px #404040;
}
@media screen and (max-width: 750px) {
  .flow__inner .flow__item {
    flex-basis: auto;
    padding: 5vw;
  }
}
.flow__inner .flow__item dt {
  font-size: 1.875rem;
}
@media screen and (max-width: 750px) {
  .flow__inner .flow__item dt {
    font-size: 1.375rem;
  }
}
.flow__inner .flow__item dd {
  margin-top: 30px;
  line-height: 2.25;
}
@media screen and (max-width: 750px) {
  .flow__inner .flow__item dd {
    margin-top: 5vw;
    font-size: 0.75rem;
  }
}

/* -----------------------------------------------------------------------------
定員
----------------------------------------------------------------------------- */
.guidance__capacity {
  padding-top: 100px;
  padding-bottom: 60px;
}
@media screen and (max-width: 750px) {
  .guidance__capacity {
    margin-top: 0;
    padding-top: 13vw;
    padding-bottom: 0;
  }
}

.capacity__inner .capacity__catch {
  margin-top: 50px;
  font-size: 1.875rem;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__catch {
    margin-top: 5vw;
    font-size: 0.75rem;
  }
}
.capacity__inner .capacity__table__wrapper {
  margin-top: 30px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table__wrapper {
    margin-top: 5vw;
    width: 100%;
    overflow-y: hidden;
    overflow-x: scroll;
  }
}
.capacity__inner .capacity__table {
  width: 100%;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table {
    width: 144vw;
  }
}
.capacity__inner .capacity__table th,
.capacity__inner .capacity__table td {
  padding: 20px 0;
  text-align: center;
  border-right: dashed 2px #a0a1a1;
  border-bottom: solid 2px #a0a1a1;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table th,
  .capacity__inner .capacity__table td {
    padding: 3.2vw 0;
    width: 24vw;
  }
}
.capacity__inner .capacity__table th:last-child,
.capacity__inner .capacity__table td:last-child {
  border-right: none;
}
.capacity__inner .capacity__table tbody th {
  line-height: 1.5;
  vertical-align: middle;
}
.capacity__inner .capacity__table .capacity__age0 {
  width: 90px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity__age0 {
    width: 13vw;
  }
}
.capacity__inner .capacity__table .capacity__age1 {
  width: 59px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity__age1 {
    width: 8.5vw;
  }
}
.capacity__inner .capacity__table .capacity__age2 {
  width: 62px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity__age2 {
    width: 8.8vw;
  }
}
.capacity__inner .capacity__table .capacity__age3 {
  width: 62px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity__age3 {
    width: 8.8vw;
  }
}
.capacity__inner .capacity__table .capacity__age4 {
  width: 66px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity__age4 {
    width: 9.3vw;
  }
}
.capacity__inner .capacity__table .capacity__age5 {
  width: 67px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity__age5 {
    width: 9.8vw;
  }
}
.capacity__inner .capacity__table .capacity_num {
  width: 87px;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .capacity_num {
    width: 12.5vw;
  }
}
.capacity__inner .capacity__table .icon_circle,
.capacity__inner .capacity__table .icon_dash {
  font-size: 3rem;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .capacity__inner .capacity__table .icon_circle,
  .capacity__inner .capacity__table .icon_dash {
    font-size: 2rem;
  }
}
.capacity__inner .capacity__table .icon_circle::before {
  content: "〇";
}
.capacity__inner .capacity__table .icon_dash::before {
  content: "―";
}

/* -----------------------------------------------------------------------------
開所時間
----------------------------------------------------------------------------- */
.guidance__open {
  padding-top: 100px;
  padding-bottom: 0;
}
@media screen and (max-width: 750px) {
  .guidance__open {
    margin-top: 0;
    padding-top: 13vw;
    padding-bottom: 0;
  }
}

.open__inner .open__table__wrapper {
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 750px) {
  .open__inner .open__table__wrapper {
    margin-top: 5vw;
    width: 100%;
  }
}
.open__inner .open__table {
  font-size: 1.875rem;
  margin-left: 230px;
}
.open__inner .open__table th {
  text-align: left;
  width: 350px;
}
@media screen and (max-width: 750px) {
  .open__inner .open__table {
    margin-left: 0;
    font-size: 0.9375rem;
    display: block;
  }
  .open__inner .open__table tr,
  .open__inner .open__table td,
  .open__inner .open__table th {
    display: block;
  }
  .open__inner .open__table tr {
    margin-top: 4vw;
  }
  .open__inner .open__table td {
    padding-left: 4vw;
  }
}
.open__inner .open__note {
  text-align: right;
}
@media screen and (max-width: 750px) {
  .open__inner .open__note {
    margin-top: 5vw;
  }
}

/* -----------------------------------------------------------------------------
その他
----------------------------------------------------------------------------- */
.guidance__etc {
  margin-top: 60px;
  padding-bottom: 160px;
}
@media screen and (max-width: 750px) {
  .guidance__etc {
    margin-top: 4vw;
    padding-bottom: 24vw;
  }
}

.etc__inner .etc__box {
  border: solid 2px #404040;
  padding: 50px;
  font-size: 1.875rem;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 750px) {
  .etc__inner .etc__box {
    padding: 3.4vw;
    font-size: 0.75rem;
  }
}
.etc__inner .etc___button {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
}
@media screen and (max-width: 750px) {
  .etc__inner .etc___button {
    bottom: auto;
    top: calc(100% + 4vw);
    left: 0;
    transform: none;
    text-align: center;
    width: 100%;
  }
}
.etc__inner .etc___button .button__inner {
  width: 230px;
}
@media screen and (max-width: 750px) {
  .etc__inner .etc___button .button__inner {
    width: 33vw;
  }
}

/* -----------------------------------------------------------------------------
休日保育
----------------------------------------------------------------------------- */
.guidance__holidaycare {
  padding: 80px 0 120px 0;
  background-color: #f4f1f0;
}
@media screen and (max-width: 750px) {
  .guidance__holidaycare {
    padding: 10vw 0;
  }
}

.holidaycare__inner .holidaycare__catch {
  margin-top: 50px;
  font-size: 1.875rem;
}
@media screen and (max-width: 750px) {
  .holidaycare__inner .holidaycare__catch {
    margin-top: 5vw;
    font-size: 0.9375rem;
  }
}

.holidaycare__content {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .holidaycare__content {
    display: block;
    margin-top: 5vw;
    padding: 0 2.666%;
  }
}
.holidaycare__content .holidaycare__item {
  display: flex;
  padding: 30px 0;
  align-items: center;
  background-color: #fff;
  -moz-column-gap: 50px;
       column-gap: 50px;
  padding-left: calc((100% - 1200px) / 2);
  padding-right: calc((100% - 1200px) / 2);
}
@media screen and (max-width: 750px) {
  .holidaycare__content .holidaycare__item {
    flex-direction: column;
    row-gap: 5vw;
    padding: 5vw 7vw;
    position: relative;
    align-items: flex-start;
  }
}
.holidaycare__content .holidaycare__item > dt {
  flex-basis: 420px;
  font-size: 1.375rem;
  font-weight: bold;
  flex-shrink: 0;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .holidaycare__content .holidaycare__item > dt {
    font-size: 0.9375rem;
    flex-basis: auto;
    text-align: left;
  }
}
.holidaycare__content .holidaycare__item > dd dl {
  display: flex;
  -moz-column-gap: 1em;
       column-gap: 1em;
}
.holidaycare__content .holidaycare__item > dd dl > dt {
  width: 100px;
}
@media screen and (max-width: 750px) {
  .holidaycare__content .holidaycare__item > dd dl > dt {
    width: auto;
  }
}
.holidaycare__content .holidaycare__item + .holidaycare__item {
  margin-top: 30px;
}

.holidaycare__contact {
  padding: 20px 0;
  border-top: solid 2px #404040;
  border-bottom: solid 2px #404040;
  background-color: #fff;
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .holidaycare__contact {
    margin: 5vw 2.66% 0 2.66%;
  }
}
.holidaycare__contact .holidaycare__contact__inner {
  display: flex;
  align-items: center;
  -moz-column-gap: 50px;
       column-gap: 50px;
  padding-left: calc((100% - 1200px) / 2);
  padding-right: calc((100% - 1200px) / 2);
}
@media screen and (max-width: 750px) {
  .holidaycare__contact .holidaycare__contact__inner {
    flex-direction: column;
    row-gap: 5vw;
    padding: 0 5vw;
    position: relative;
  }
}
.holidaycare__contact .holidaycare__contact__inner > dt {
  flex-basis: 480px;
  font-size: 1.625rem;
  flex-shrink: 0;
  text-align: center;
  border-right: solid 2px #404040;
}
@media screen and (max-width: 750px) {
  .holidaycare__contact .holidaycare__contact__inner > dt {
    flex-basis: auto;
    font-size: 0.75rem;
    flex-basis: auto;
    border-right: none;
  }
}
.holidaycare__contact .holidaycare__contact__inner > dd dl {
  display: flex;
  -moz-column-gap: 1em;
       column-gap: 1em;
}
.holidaycare__contact .holidaycare__contact__inner > dd dl > dt {
  width: 100px;
}
.holidaycare__contact .holidaycare__contact__inner + .holidaycare__item {
  margin-top: 30px;
}
.holidaycare__contact .tel__wrap {
  display: flex;
  align-items: center;
  -moz-column-gap: 1em;
       column-gap: 1em;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .holidaycare__contact .tel__wrap {
    flex-direction: column;
    row-gap: 2vw;
  }
}

/* -----------------------------------------------------------------------------
FAQ
----------------------------------------------------------------------------- */
.guidance__faq {
  padding: 160px 0 120px 0;
}
@media screen and (max-width: 750px) {
  .guidance__faq {
    padding: 10vw 0;
  }
}

.faq__inner .faq__items {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__items {
    margin-top: 6vw;
  }
}
.faq__inner .faq__item {
  display: flex;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__item {
    flex-direction: column;
  }
}
.faq__inner .faq__item > dt,
.faq__inner .faq__item dd {
  flex-basis: 50%;
  padding-left: 50px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__item > dt,
  .faq__inner .faq__item dd {
    flex-basis: 100%;
    padding-left: 10vw;
  }
}
.faq__inner .faq__item > dt::before,
.faq__inner .faq__item dd::before {
  width: 37px;
  height: 43px;
  content: "";
  display: block;
  background: url(../images/guidance/faq_q.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0.25em;
  left: 0;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__item > dt::before,
  .faq__inner .faq__item dd::before {
    width: 5.3vw;
    height: 6.1vw;
  }
}
.faq__inner .faq__item dt {
  font-size: 1.875rem;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__item dt {
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__item dd {
    margin-top: 4vw;
  }
}
.faq__inner .faq__item dd::before {
  background-image: url(../images/guidance/faq_a.svg);
}
.faq__inner .faq__item + .faq__item {
  margin-top: 70px;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__item + .faq__item {
    margin-top: 6vw;
  }
}
.faq__inner .faq__note {
  margin-top: 50px;
  font-size: 1.625rem;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .faq__inner .faq__note {
    display: none;
  }
}

/* *****************************************************************************
********************************************************************************
採用情報
********************************************************************************
***************************************************************************** */
/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
body.recruit .page__mainvisual {
  height: 1000px;
}
@media screen and (max-width: 750px) {
  body.recruit .page__mainvisual {
    height: 65.333vw;
  }
}
body.recruit .common__mainvisual::after {
  display: none;
}
body.recruit .common__mainvisual .mainvisual__catch {
  width: 1160px;
  left: calc(50% - 580px);
  position: absolute;
  top: 795px;
}
@media screen and (max-width: 750px) {
  body.recruit .common__mainvisual .mainvisual__catch {
    left: 2.666vw;
    top: 61.3vw;
    width: 94.666vw;
  }
}
body.recruit .common__mainvisual .mainvisual__catch .catch__number {
  position: absolute;
  top: 38px;
  left: 590px;
  font-size: 2.5rem;
  letter-spacing: 0.08em;
  color: #404040;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  body.recruit .common__mainvisual .mainvisual__catch .catch__number {
    left: 31vw;
    top: 17vw;
    font-size: 1.4rem;
  }
}

/* -----------------------------------------------------------------------------
現在募集中の職種
----------------------------------------------------------------------------- */
.recruit__intro {
  padding-top: 110px;
}
@media screen and (max-width: 750px) {
  .recruit__intro {
    padding-top: 37vw;
  }
}

.recruit__intro__points {
  width: 1100px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .recruit__intro__points {
    width: 70vw;
  }
}

.recruit__intro__us {
  width: 1160px;
  margin: 100px auto 0 auto;
}
@media screen and (max-width: 750px) {
  .recruit__intro__us {
    width: 105%;
    margin: 10vw -2.5% 0 auto;
  }
}

.currently__hiring {
  margin-top: 80px;
}
.currently__hiring h3 {
  font-size: 2rem;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-thickness: 2px;
}
@media screen and (max-width: 750px) {
  .currently__hiring h3 {
    font-size: 1.5625rem;
  }
}
.currently__hiring .hiring__items {
  margin-top: 16px;
  list-style-type: none;
  background-color: #f0f0f0;
  padding: 10px 80px;
}
@media screen and (max-width: 750px) {
  .currently__hiring .hiring__items {
    margin-top: 5vw;
    width: 120%;
    margin-left: -10%;
    padding: 0;
    background-color: transparent;
    border-bottom: solid 1px #404040;
  }
}
.currently__hiring .hiring__items .hiring__item {
  display: none;
}
@media screen and (max-width: 750px) {
  .currently__hiring .hiring__items .hiring__item {
    border-top: solid 1px #404040;
  }
}
.currently__hiring .hiring__items .hiring__item a {
  display: block;
  padding: 20px;
  font-size: 2rem;
  position: relative;
}
@media screen and (max-width: 750px) {
  .currently__hiring .hiring__items .hiring__item a {
    padding: 6.4vw;
    font-size: 0.9375rem;
    padding: 20px;
  }
}
.currently__hiring .hiring__items .hiring__item a::after {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: url(../images/recruit/arrow.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: calc(50% - 20px);
  right: 20px;
}
@media screen and (max-width: 750px) {
  .currently__hiring .hiring__items .hiring__item a::after {
    width: 9vw;
    height: 9vw;
    top: calc(50% - 4.5vw);
    right: 5vw;
  }
}
.currently__hiring .hiring__items .hiring__item.is-currently {
  display: block;
}
.currently__hiring .hiring__items .hiring__item.is-currently ~ .is-currently {
  border-top: solid 1px #404040;
}

/* -----------------------------------------------------------------------------
ポイント
----------------------------------------------------------------------------- */
.recruit__points__inner {
  max-width: 1920px;
  margin: auto;
  overflow-x: hidden;
}

.recruit__point__items {
  width: 1160px;
  margin: 150px auto 0 auto;
}
@media screen and (max-width: 750px) {
  .recruit__point__items {
    margin: 18vw auto 0 auto;
    width: 90%;
  }
}
.recruit__point__items .recruit__point__item {
  width: 1600px;
}
@media screen and (max-width: 750px) {
  .recruit__point__items .recruit__point__item {
    width: 100%;
  }
}
@media screen and (min-width: 751px) {
  .recruit__point__items .recruit__point__item:nth-child(2n+1) {
    margin-right: -380px;
    margin-left: auto;
  }
  .recruit__point__items .recruit__point__item:nth-child(2n) {
    margin-left: -380px;
    margin-right: auto;
  }
}
.recruit__point__items .recruit__point__item + .recruit__point__item {
  margin-top: 150px;
}
@media screen and (max-width: 750px) {
  .recruit__point__items .recruit__point__item + .recruit__point__item {
    margin-top: 20vw;
  }
}

/* -----------------------------------------------------------------------------
メッセージ
----------------------------------------------------------------------------- */
.recruit__message {
  margin-top: 160px;
}
@media screen and (max-width: 750px) {
  .recruit__message {
    margin-top: 18vw;
  }
}

.recruit__message__inner {
  max-width: 1160px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .recruit__message__inner {
    max-width: 84%;
  }
}

/* -----------------------------------------------------------------------------
スライド
----------------------------------------------------------------------------- */
.recruit__slide {
  margin-top: 80px;
  margin-bottom: 80px;
}
@media screen and (max-width: 750px) {
  .recruit__slide {
    margin-top: 13vw;
    margin-bottom: 0;
  }
}

.recruit__slide__area {
  width: 100%;
  overflow-x: hidden;
}

.recruit__slide__items {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
@media screen and (max-width: 750px) {
  .recruit__slide__items {
    -moz-column-gap: 1.6vw;
         column-gap: 1.6vw;
  }
}
@media screen and (min-width: 751px) {
  .recruit__slide__items {
    animation: 30s linear infinite recruiteSliderAnimation;
  }
}
@media screen and (max-width: 750px) {
  .recruit__slide__items {
    animation: 30s linear infinite recruitSliderAnimationSp;
  }
}

.recruit__slide__item {
  flex-basis: 450px;
  flex-shrink: 0;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .recruit__slide__item {
    flex-basis: 40vw;
  }
}

@keyframes recruiteSliderAnimation {
  100% {
    transform: translateX(-2350px);
  }
}
@keyframes recruitSliderAnimationSp {
  100% {
    transform: translateX(-208vw);
  }
}
/* -----------------------------------------------------------------------------
てのひらってこんなところ！
----------------------------------------------------------------------------- */
.recruit__place {
  padding: 80px;
  background-color: #f0f0f0;
}
@media screen and (max-width: 750px) {
  .recruit__place {
    padding: 18vw 0 0 0;
    background-color: transparent;
  }
}

.recruit__place__header {
  width: 482px;
  margin: auto;
}
@media screen and (max-width: 750px) {
  .recruit__place__header {
    width: 79vw;
  }
}

.recruit__place__content {
  margin-top: 100px;
}
@media screen and (max-width: 750px) {
  .recruit__place__content {
    margin-top: 13vw;
  }
}

/* -----------------------------------------------------------------------------
募集要項
----------------------------------------------------------------------------- */
.recruit__jobs {
  padding-top: 80px;
  padding-bottom: 150px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs {
    padding: 13vw 0 18vw 0;
  }
  .recruit__jobs .section__inner {
    padding: 0 3%;
  }
}

.recruit__jobs__header {
  width: 334px;
  position: relative;
  padding-bottom: 20px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__header {
    width: 80vw;
    padding-bottom: 3vw;
    margin: auto;
  }
}
.recruit__jobs__header::after {
  content: "";
  width: 700px;
  height: 12px;
  display: block;
  background-color: #404040;
  position: absolute;
  bottom: 0;
  left: -60px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__header::after {
    width: 100%;
    height: 1.6vw;
    left: 0;
  }
}

.recruit__jobs__content {
  margin: 80px auto 0 auto;
  width: 1160px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__content {
    margin: 13vw auto 0 auto;
    width: 100%;
  }
}

.recruit__jobs__item {
  border: solid 6px #e0605b;
  padding: 70px 74px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item {
    border-width: 0.8vw;
    padding: 6vw;
  }
}
.recruit__jobs__item .item__content {
  width: 1020px;
  position: relative;
  left: -20px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item .item__content {
    width: 100%;
    left: auto;
  }
}
.recruit__jobs__item .item__table__wrapper {
  margin-top: 0;
  height: 0;
  transition-property: height, margin-top, padding-bottom;
  transition-duration: 0.3s;
  overflow: hidden;
}
.recruit__jobs__item .item__table {
  display: grid;
  grid-template-columns: 230px auto;
  border-radius: 20px;
  border: solid 3px #404040;
  overflow: hidden;
  font-size: 1.25rem;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item .item__table {
    grid-template-columns: 18vw auto;
    border-radius: 0;
    border: none;
    font-size: 0.75rem;
  }
}
.recruit__jobs__item .item__table__row {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
}
@media screen and (min-width: 751px) {
  .recruit__jobs__item .item__table__row:not(:last-child) {
    border-bottom: solid 1px #404040;
  }
}
@media screen and (min-width: 751px) {
  .recruit__jobs__item .item__table__row dt {
    background-color: #e99e9c;
    padding: 10px 30px;
  }
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item .item__table__row dt {
    background-color: none;
    padding: 0.2em 0;
    font-weight: bold;
  }
}
.recruit__jobs__item .item__table__row dd {
  padding: 10px 30px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item .item__table__row dd {
    padding: 0.2em 0;
  }
}
@media screen and (min-width: 751px) {
  .recruit__jobs__item .item__table__row:first-child dt,
  .recruit__jobs__item .item__table__row:first-child dd {
    padding-top: 20px;
  }
  .recruit__jobs__item .item__table__row:last-child dt,
  .recruit__jobs__item .item__table__row:last-child dd {
    padding-bottom: 20px;
  }
}
.recruit__jobs__item + .recruit__jobs__item {
  margin-top: 100px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item + .recruit__jobs__item {
    margin-top: 16vw;
  }
}
.recruit__jobs__item .recruit__more__button {
  position: absolute;
  bottom: -30px;
  left: calc(50% - 90px);
}
.recruit__jobs__item .recruit__more__button .button__inner {
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item .recruit__more__button {
    bottom: -5vw;
    left: calc(50% - 21.3vw);
  }
}
.recruit__jobs__item.is-support_staff {
  border-color: #df7539;
}
.recruit__jobs__item.is-cook {
  border-color: #eebb31;
}
@media screen and (min-width: 751px) {
  .recruit__jobs__item.is-cook .item__table__row dt {
    background-color: #f2d785;
  }
}
.recruit__jobs__item.is-nutritionist {
  border-color: #6eaa69;
}
@media screen and (min-width: 751px) {
  .recruit__jobs__item.is-nutritionist .item__table__row dt {
    background-color: #a7cca5;
  }
}
.recruit__jobs__item.is-nurse {
  border-color: #4996bb;
}
@media screen and (min-width: 751px) {
  .recruit__jobs__item.is-nurse .item__table__row dt {
    background-color: #9cc4d8;
  }
}
.recruit__jobs__item.is-open .item__table__wrapper {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .recruit__jobs__item.is-open .item__table__wrapper {
    margin-top: 6vw;
    padding-bottom: 6vw;
  }
}
.recruit__jobs__item.is-open .recruit__more__button .button__inner > span::after {
  transform: rotate(-90deg);
}

/* -----------------------------------------------------------------------------
お問い合わせ
----------------------------------------------------------------------------- */
.recruit__contact__inner {
  height: 420px;
  max-width: 1920px;
  margin: auto;
  position: relative;
}
@media screen and (max-width: 750px) {
  .recruit__contact__inner {
    height: auto;
  }
}
.recruit__contact__inner > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.recruit__contact__inner .recruit__place__text {
  position: absolute;
  width: 1160px;
  top: 160px;
  left: calc((100% - 1160px) / 2);
}

/* -----------------------------------------------------------------------------
画像
----------------------------------------------------------------------------- */
@media screen and (min-width: 751px) {
  .img__intro_us {
    aspect-ratio: 1.7;
  }
  .img__points1 {
    aspect-ratio: 2.29;
  }
  .img__points2 {
    aspect-ratio: 2.12;
  }
  .img__points3 {
    aspect-ratio: 2.1;
  }
  .img__points4 {
    aspect-ratio: 2.12;
  }
  .img__message {
    aspect-ratio: 0.845;
  }
  .img__place_title {
    aspect-ratio: 2.22;
  }
  .img__place {
    aspect-ratio: 0.449;
  }
  .img__jobs_title {
    aspect-ratio: 2.78;
  }
  .img__jobs_childcare_worker {
    aspect-ratio: 0.688;
  }
  .img__jobs_support_staff {
    aspect-ratio: 1.92;
  }
  .img__jobs_cook {
    aspect-ratio: 1.38;
  }
  .img__jobs_nutritionist {
    aspect-ratio: 1.23;
  }
  .img__jobs_nurse {
    aspect-ratio: 1.41;
  }
}
@media screen and (max-width: 750px) {
  .img__intro_us {
    aspect-ratio: 0.502;
  }
  .img__points1 {
    aspect-ratio: 0.453;
  }
  .img__points2 {
    aspect-ratio: 0.508;
  }
  .img__points3 {
    aspect-ratio: 0.468;
  }
  .img__points4 {
    aspect-ratio: 0.44;
  }
  .img__message {
    aspect-ratio: 0.511;
  }
  .img__place_title {
    aspect-ratio: 2.176;
  }
  .img__place {
    aspect-ratio: 0.0998;
  }
  .img__jobs_title {
    aspect-ratio: 3.846;
  }
  .img__jobs_childcare_worker {
    aspect-ratio: 0.173;
  }
  .img__jobs_support_staff {
    aspect-ratio: 0.511;
  }
  .img__jobs_cook {
    aspect-ratio: 0.334;
  }
  .img__jobs_nutritionist {
    aspect-ratio: 0.307;
  }
  .img__jobs_nurse {
    aspect-ratio: 0.365;
  }
}
/* *****************************************************************************
********************************************************************************
てのひらブログ
********************************************************************************
***************************************************************************** */
@media screen and (min-width: 751px) {
  body.blog {
    min-width: 1160px;
  }
}

/* -----------------------------------------------------------------------------
メインビジュアル 
----------------------------------------------------------------------------- */
/* -----------------------------------------------------------------------------
カテゴリ
----------------------------------------------------------------------------- */
.blog__categories {
  margin-top: 130px;
}
@media screen and (max-width: 750px) {
  .blog__categories {
    margin-top: 5vw;
  }
}
.blog__categories ul {
  display: flex;
  -moz-column-gap: 15px;
       column-gap: 15px;
  justify-content: center;
  list-style-type: none;
  padding-left: 0;
}
@media screen and (max-width: 750px) {
  .blog__categories ul {
    gap: 2vw;
    flex-wrap: wrap;
  }
}

.blog__category__item {
  display: block;
  font-size: 1.25rem;
  padding: 0.4em;
  background-color: #989898;
  border-radius: 999px;
  min-width: 8.25em;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .blog__category__item {
    font-size: 0.75rem;
    min-width: 21vw;
  }
}
.blog__category__item.blog__category--all:hover, .blog__category__item.blog__category--all.is-current {
  background-color: #e0605b;
}
.blog__category__item.blog__category--cook:hover, .blog__category__item.blog__category--cook.is-current {
  background-color: #df7539;
}
.blog__category__item.blog__category--childminder:hover, .blog__category__item.blog__category--childminder.is-current {
  background-color: #eebb31;
}
.blog__category__item.blog__category--challenge:hover, .blog__category__item.blog__category--challenge.is-current {
  background-color: #6eaa69;
}
.blog__category__item.blog__category--informations:hover, .blog__category__item.blog__category--informations.is-current {
  background-color: #4996bb;
}

/* -----------------------------------------------------------------------------
一覧
----------------------------------------------------------------------------- */
.blog__index .blog__content {
  margin-top: 90px;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__content {
    margin-top: 8vw;
  }
}
.blog__index .blog__entries {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 5%;
       column-gap: 5%;
  row-gap: 90px;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__entries {
    row-gap: 10vw;
  }
}
.blog__index .blog__entries .blog__entry {
  flex-basis: 30%;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__entries .blog__entry {
    flex-basis: 100%;
  }
}
.blog__index .blog__entries .blog__entry .entry__thumb {
  aspect-ratio: 1;
}
.blog__index .blog__entries .blog__entry .entry__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.blog__index .blog__entries .blog__entry .entry__cat {
  margin-top: 10px;
  display: flex;
  gap: 8px;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__entries .blog__entry .entry__cat {
    margin-top: 2.6vw;
  }
}
.blog__index .blog__entries .blog__entry .blog__category__item {
  font-size: 0.9375rem;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__entries .blog__entry .blog__category__item {
    font-size: 0.75rem;
  }
}
.blog__index .blog__entries .blog__entry .blog__category__item.blog__category--all {
  background-color: #e0605b;
}
.blog__index .blog__entries .blog__entry .blog__category__item.blog__category--cook {
  background-color: #df7539;
}
.blog__index .blog__entries .blog__entry .blog__category__item.blog__category--childminder {
  background-color: #eebb31;
}
.blog__index .blog__entries .blog__entry .blog__category__item.blog__category--challenge {
  background-color: #6eaa69;
}
.blog__index .blog__entries .blog__entry .blog__category__item.blog__category--informations {
  background-color: #4996bb;
}
.blog__index .blog__entries .blog__entry .entry__date {
  margin-top: 20px;
  color: #707070;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__entries .blog__entry .entry__date {
    margin-top: 1.3vw;
    font-size: 0.75rem;
  }
}
.blog__index .blog__entries .blog__entry .entry__subject {
  margin-top: 20px;
  color: #707070;
}
@media screen and (max-width: 750px) {
  .blog__index .blog__entries .blog__entry .entry__subject {
    margin-top: 1.3vw;
    font-size: 1.125rem;
  }
}

/* -----------------------------------------------------------------------------
詳細
----------------------------------------------------------------------------- */
.blog__detail .blog__content {
  max-width: 850px;
  margin: 90px auto;
}
.blog__detail .entry__data {
  display: flex;
  align-items: center;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
@media screen and (max-width: 750px) {
  .blog__detail .entry__data {
    display: block;
  }
}
.blog__detail .blog__category__item.blog__category--all {
  background-color: #e0605b;
}
.blog__detail .blog__category__item.blog__category--cook {
  background-color: #df7539;
}
.blog__detail .blog__category__item.blog__category--childminder {
  background-color: #eebb31;
}
.blog__detail .blog__category__item.blog__category--challenge {
  background-color: #6eaa69;
}
.blog__detail .blog__category__item.blog__category--informations {
  background-color: #4996bb;
}
.blog__detail .entry__date {
  font-size: 1.25rem;
}
@media screen and (max-width: 750px) {
  .blog__detail .entry__date {
    font-size: 0.75rem;
    margin-top: 1.33vw;
  }
}
.blog__detail .entry__subject {
  margin-top: 1em;
  font-size: 1.875rem;
  line-height: 1.33;
}
@media screen and (max-width: 750px) {
  .blog__detail .entry__subject {
    font-size: 1.125rem;
    margin-top: 1.33vw;
  }
}
.blog__detail .entry__eyecatch {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .blog__detail .entry__eyecatch {
    margin-top: 5vw;
  }
}
.blog__detail .entry__body {
  margin-top: 50px;
  font-size: 1.25rem;
}
@media screen and (max-width: 750px) {
  .blog__detail .entry__body {
    font-size: 0.75rem;
    margin-top: 5vw;
  }
}
.blog__detail .entry__pager {
  margin: 120px auto 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 750px) {
  .blog__detail .entry__pager {
    max-width: 60vw;
    margin-top: 10vw;
  }
}
.blog__detail .entry__pager > [rel=prev]:only-child {
  margin-left: auto;
}

/* -----------------------------------------------------------------------------
ページネーション
----------------------------------------------------------------------------- */
.pagenation {
  margin-top: 90px;
}
@media screen and (max-width: 750px) {
  .pagenation {
    margin-top: 8vw;
    padding-bottom: 8vw;
  }
}
.pagenation ul {
  list-style-type: none;
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
  justify-content: center;
  align-items: center;
}
.pagenation li.active {
  display: flex;
  width: 35px;
  height: 35px;
  border: solid 1px #707070;
  background-color: #707070;
  border-radius: 999px;
  align-items: center;
  justify-content: center;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .pagenation li.active {
    width: 9.333vw;
    height: 9.333vw;
  }
}
.pagenation li a {
  display: flex;
  width: 35px;
  height: 35px;
  border-radius: 999px;
  border: solid 1px #707070;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 750px) {
  .pagenation li a {
    width: 9.333vw;
    height: 9.333vw;
  }
}
.pagenation li.next a, .pagenation li.prev a {
  width: 20px;
  height: 20px;
  font-size: 0;
}
@media screen and (max-width: 750px) {
  .pagenation li.next a, .pagenation li.prev a {
    width: 5.333vw;
    height: 5.333vw;
  }
}
.pagenation li.next a::after, .pagenation li.prev a::after {
  content: "";
  display: block;
  background-color: #707070;
  width: 7px;
  height: 9px;
}
@media screen and (max-width: 750px) {
  .pagenation li.next a::after, .pagenation li.prev a::after {
    width: 1.866vw;
    height: 2.4vw;
  }
}
.pagenation li.next a::after {
  transform: translateX(1px);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.pagenation li.prev a::after {
  transform: translateX(-1px);
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}

/* *****************************************************************************
ブログ
***************************************************************************** */
.entry__body p {
  margin-bottom: 0.3em;
}

.entry__body h1 {
  font-size: 150%;
}

.entry__body h2 {
  font-size: 140%;
}

.entry__body h3 {
  font-size: 130%;
}

.entry__body h4 {
  font-size: 120%;
}

.entry__body h5 {
  font-size: 110%;
}

.entry__body h6 {
  font-size: 105%;
}

.entry__body ul {
  list-style-type: disc;
  padding-left: 2em;
  margin: 10px 0px;
}

.entry__body ol {
  list-style-type: decimal;
  padding-left: 2em;
  margin: 10px 0px;
}

.entry__body blockquote {
  background-color: #f8f8f8;
  padding: 1em 1em 1em 3em;
  position: relative;
  border-radius: 1em;
  margin: 0.5em 0px;
}

.entry__body blockquote:before {
  content: "“";
  font-size: 600%;
  line-height: 1em;
  color: #999;
  position: absolute;
  left: 0;
  top: 0;
}

.entry__body img.alignright,
.entry__body .wp-caption.alignright {
  float: right;
  margin: 0px 0px 20px 20px;
}

.entry__body img.alignleft,
.entry__body .wp-caption.alignleft {
  float: left;
  margin: 0px 20px 20px 0;
}

.entry__body img.alignright,
.entry__body .wp-caption.alignright img,
.entry__body img.alignleft,
.entry__body .wp-caption.alignleft img {
  width: 50%;
  height: auto;
}

.entry__body img.aligncenter,
.entry__body .wp-caption.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  width: 100%;
}

.entry__body .wp-caption img,
.entry__body img.aligncenter,
.entry__body img.alignnone {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}

.entry__body .wp-block-gallery {
  display: block;
  padding-left: 0;
}

.entry__body .wp-block-gallery .blocks-gallery-image,
.entry__body .wp-block-gallery .blocks-gallery-item {
  display: block;
  width: 100%;
}

.entry__body .wp-block-gallery .blocks-gallery-image figure,
.entry__body .wp-block-gallery .blocks-gallery-item figure {
  display: block;
  width: 100%;
}

.entry__body .wp-block-gallery.is-cropped .blocks-gallery-image a,
.entry__body .wp-block-gallery.is-cropped .blocks-gallery-image img,
.entry__body .wp-block-gallery.is-cropped .blocks-gallery-item a,
.entry__body .wp-block-gallery.is-cropped .blocks-gallery-item img {
  width: 100%;
  height: auto;
}

.entry__body .wp-block-embed-youtube iframe {
  max-width: 100%;
  aspect-ratio: 1.77;
  width: 100%;
  height: auto;
}/*# sourceMappingURL=style.css.map */