@charset "UTF-8";
/*
Template: arkhe
Theme Name: Arkhe Child
Theme URI: https://arkhe-theme.com/ja/
Description: Arkhe用子テーマ
Version: 1.0.0
Text Domain: arkhe
License: GNU General Public License
License URI: http://www.gnu.org/licenses/gpl.html
*/
/* ==========================================================================
Foundation
========================================================================== */
a {
  color: unset;
  text-decoration: none;
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

address {
  font-style: unset;
}

html {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 14px;
  }
}

body {
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  background-color: #E5F8E7;
}

.home .l-container:not(.l-header__body) {
  max-width: calc(1240px + var(--ark-padding--container) * 2);
}

.top #content {
  padding-top: 0;
}

.home .l-content {
  margin-bottom: 0;
  overflow-x: hidden;
}

.l-article {
  max-width: 1120px;
}

.c-gnav > .menu-item > a .ttl {
  font-size: 16px;
}

.p-postList.-type-simple .p-postList__link:hover {
  background-color: inherit;
  opacity: 0.8;
}

.p-entry__foot .c-postTerms__link {
  background: #FFFFFF;
}

/* ==========================================================================
Layout
========================================================================== */
.l-wide_block {
  position: relative;
  left: calc(50% - 50vw);
  width: 100vw;
  max-width: 100vw;
}

.l-bg {
  background-color: #3FAF4F;
  z-index: 0;
}

/* ==========================================================================
Object
========================================================================== */
/* Component
----------------------------------------------------------------- */
.c-button {
  position: relative;
  display: inline-block;
  color: #FFFFFF;
  text-align: center;
  font-size: 1.125rem;
  font-weight: bold;
  font-family: "M PLUS Rounded 1c", sans-serif;
  border: 2px solid #F0705F;
  border-radius: 9999px;
  background-color: #F0705F;
  padding: 0.5em 1em;
  transition: 0.2s;
}
@media screen and (max-width: 768px) {
  .c-button {
    font-size: 1.25rem;
  }
}
.c-button:hover {
  color: #F0705F;
  background-color: #FFFFFF;
}
.c-button.--main {
  --icon-w: 1.2em;
  font-size: 1.25rem;
  color: #333333;
  border-color: #FFFFFF;
  border-width: 3px;
  background-color: #F5DA42;
  padding: 1em calc(1.7em + var(--icon-w)) 1em 1.5em;
}
.c-button.--main::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  width: var(--icon-w);
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #FFFFFF;
  transition: 0.2s;
}
.c-button.--main::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(1em + var(--icon-w) / 2);
  transform: translate(65%, -50%);
  width: calc(var(--icon-w) / 4);
  aspect-ratio: 2/3;
  background-image: url(img/icon_arrow_green.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: 0.2s;
}
.c-button.--main:hover {
  background-color: #F5DA42;
  color: #333333;
}
.c-button.--main:hover::before {
  background-color: #3FAF4F;
}
.c-button.--main:hover::after {
  background-image: url(img/icon_arrow_white.svg);
}
.c-button.--sub {
  font-size: 1rem;
  border-color: #FFFFFF;
  background-color: #FFFFFF;
  color: #9D6C49;
}
.c-button.--sub:hover {
  color: #FFFFFF;
  background-color: #9D6C49;
}

.c-category__wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (max-width: 999px) {
  .c-category__wrapper {
    gap: 5px;
  }
}

.c-category {
  display: inline-block;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: bold;
  padding: 0.35em 0.7em;
  background-color: #3FAF4F;
  border-radius: 5px;
}

.c-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .c-title {
    font-size: 1.7rem;
  }
}
.c-title .c-title__text {
  font-weight: bold;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
.c-title .c-title__text.--white {
  color: #FFFFFF;
}
.c-title .c-title__deco {
  height: 1rem;
}

.c-date {
  color: #676767;
  font-size: 14px;
}

.c-news_card__wrapper {
  display: flex;
  flex-direction: column;
  gap: 25px;
  padding: 0;
  list-style: none;
}
@media screen and (max-width: 999px) {
  .c-news_card__wrapper {
    gap: 16px;
  }
}

.c-news_card {
  position: relative;
  color: #333333;
  transition: 0.2s;
}
.c-news_card.--new::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-25%);
  width: 2.5rem;
  aspect-ratio: 1/1;
  background-image: url(img/icon_new.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: 1;
}
.c-news_card .c-news_card__link {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  background-color: #FFFFFF;
  border-radius: 9999px;
  padding: 2rem 3.5rem;
}
@media screen and (max-width: 999px) {
  .c-news_card .c-news_card__link {
    flex-direction: column;
    gap: 10px;
    padding: 1.5rem 3rem;
  }
}
.c-news_card .c-news_card__link:hover {
  opacity: 0.8;
}
.c-news_card .c-news_card__info {
  display: flex;
  align-items: center;
  gap: 14px;
}
@media screen and (max-width: 999px) {
  .c-news_card .c-news_card__info {
    gap: 10px;
  }
}
.c-news_card .c-news_card__title {
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 999px) {
  .c-news_card .c-news_card__title {
    font-size: 16px;
  }
}

.c-detail_card {
  display: grid;
  background-color: #FFFFFF;
  border-radius: 40px;
  overflow: hidden;
}
.c-detail_card:hover .c-detail_card__img img {
  scale: 1.1;
}
.c-detail_card:hover .c-button {
  color: #F0705F;
  background-color: #FFFFFF;
}
.c-detail_card .c-detail_card__img {
  position: relative;
  display: flex;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.c-detail_card .c-detail_card__img::before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 50%;
  transform: translateX(-50%);
  width: 101%;
  aspect-ratio: 6.5/1;
  background-image: url(img/frame_white.png);
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: cover;
  z-index: 1;
}
.c-detail_card .c-detail_card__img img {
  width: 100%;
  height: 100%;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  object-fit: cover;
  transition: 0.2s;
}
.c-detail_card .c-detail_card__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  padding: 1rem 1.5rem 2rem;
}
.c-detail_card .c-detail_card__content .c-detail_card__info {
  display: flex;
  flex-direction: column;
}
.c-detail_card .c-detail_card__content .c-detail_card__info .c-detail_card__title {
  position: relative;
  display: inline-block;
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #3FAF4F;
  font-size: 1.5rem;
  font-weight: bold;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.7em;
  padding-right: 1.7em;
}
.c-detail_card .c-detail_card__content .c-detail_card__info .c-detail_card__title::before, .c-detail_card .c-detail_card__content .c-detail_card__info .c-detail_card__title::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1.3em;
  aspect-ratio: 5/1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.c-detail_card .c-detail_card__content .c-detail_card__info .c-detail_card__title::before {
  left: 0;
  background-image: url(img/img_title_dot_01.svg);
}
.c-detail_card .c-detail_card__content .c-detail_card__info .c-detail_card__title::after {
  right: 0;
  background-image: url(img/img_title_dot_02.svg);
}
.c-detail_card .c-detail_card__content .c-detail_card__info .c-detail_card__text {
  margin-top: 1rem;
}
.c-detail_card .c-detail_card__content .c-detail_card__button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.5rem;
}

.c-logo {
  display: flex;
  align-items: center;
  gap: 10px;
}
.c-logo .c-logo__img {
  width: 4.5rem;
  aspect-ratio: 1/1;
}
.c-logo .c-logo__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.c-logo .c-logo__text {
  display: flex;
  flex-direction: column;
  color: #FFFFFF;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
}
.c-logo .c-logo__text .c-logo__text__small {
  font-size: 1rem;
}

.c-footer_menu {
  display: flex;
  gap: 20px;
  list-style: none;
  padding: 0;
}
@media screen and (max-width: 999px) {
  .c-footer_menu {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
.c-footer_menu > .menu-item {
  display: flex;
  flex-direction: column;
}
.c-footer_menu > .menu-item > a {
  position: relative;
  font-weight: bold;
  border-bottom: 1px dashed #FFFFFF;
  padding: 0.5em 2.5em 0.5em 0;
  transition: 0.2s;
}
@media screen and (max-width: 1200px) {
  .c-footer_menu > .menu-item > a {
    padding: 0.5em 1.5em 0.5em 0;
  }
}
.c-footer_menu > .menu-item > a:hover {
  opacity: 0.8;
}
.c-footer_menu > .menu-item > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translateY(-50%);
  height: 0.5em;
  aspect-ratio: 3/2;
  background-image: url(img/icon_arrow_white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 1200px) {
  .c-footer_menu > .menu-item > a::after {
    right: 0.3em;
  }
}
.c-footer_menu .sub-menu {
  display: flex;
  flex-direction: column;
  gap: 5px;
  list-style: none;
  padding: 0;
  margin-top: 12px;
}
.c-footer_menu .sub-menu a {
  transition: 0.2s;
}
.c-footer_menu .sub-menu a:hover {
  opacity: 0.8;
}

/* Project
----------------------------------------------------------------- */
.p-news {
  margin-top: 80px;
}
.p-news .p-news__title .c-title__deco {
  height: 0.8rem;
}
.p-news .c-news_card__wrapper {
  position: relative;
  max-width: 1000px;
  margin: 40px auto 0;
}
@media screen and (max-width: 768px) {
  .p-news .c-news_card__wrapper {
    margin-top: 24px;
  }
}
.p-news .c-news_card__wrapper::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-60%, 60%);
  width: 15%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_07.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .p-news .c-news_card__wrapper::before {
    transform: translate(-50%, -20%);
    width: min(40%, 200px);
  }
}
.p-news .p-news__button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .p-news .p-news__button {
    margin-top: 30px;
  }
}

.p-philosophy {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-top: 20px;
}
@media screen and (max-width: 999px) {
  .p-philosophy {
    grid-template-columns: 1fr;
    padding-top: 80px;
  }
}
.p-philosophy .p-philosophy__main {
  margin-left: auto;
  padding-top: 10vw;
  padding-left: var(--ark-padding--container);
}
@media screen and (max-width: 999px) {
  .p-philosophy .p-philosophy__main {
    margin-left: unset;
    padding-top: unset;
    padding-right: var(--ark-padding--container);
  }
}
.p-philosophy .p-philosophy__title {
  position: relative;
  color: #FFFFFF;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 2.5rem;
  font-weight: bold;
}
.p-philosophy .p-philosophy__title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-50%, -65%);
  width: 5em;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_01.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .p-philosophy .p-philosophy__title::before {
    transform: translate(-3vw, -65%);
  }
}
@media screen and (max-width: 1200px) {
  .p-philosophy .p-philosophy__title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .p-philosophy .p-philosophy__title {
    font-size: 1.7rem;
  }
}
.p-philosophy .p-philosophy__text {
  color: #FFFFFF;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 2;
  margin-top: 30px;
}
@media screen and (max-width: 1200px) {
  .p-philosophy .p-philosophy__text {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 999px) {
  .p-philosophy .p-philosophy__text {
    font-size: 1rem;
  }
}
.p-philosophy .p-philosophy__button {
  margin-top: 30px;
}
.p-philosophy .p-philosophy__deco {
  position: relative;
}
@media screen and (max-width: 999px) {
  .p-philosophy .p-philosophy__deco {
    margin-top: -8vw;
    padding-left: var(--ark-padding--container);
  }
}
.p-philosophy .p-philosophy__deco::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 5vw;
  transform: translateY(-10%);
  width: 10vw;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_02.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .p-philosophy .p-philosophy__deco::before {
    right: 10vw;
    transform: translateY(-15%);
    width: 15vw;
  }
}

.p-main_visual {
  position: relative;
}
.p-main_visual .p-main_visual__slide {
  position: relative;
  height: 95vh;
}
@media screen and (max-width: 999px) {
  .p-main_visual .p-main_visual__slide {
    height: 120vw;
    max-height: 700px;
  }
}
.p-main_visual .p-main_visual__slide .swiper-area,
.p-main_visual .p-main_visual__slide .swiper {
  height: 100%;
}
.p-main_visual .p-main_visual__slide .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-bottom-right-radius: 5px;
}
@media screen and (max-width: 768px) {
  .p-main_visual .p-main_visual__slide .swiper-slide img {
    border-bottom-right-radius: unset;
  }
}
.p-main_visual .p-main_visual__hill {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  aspect-ratio: 4.5/1;
  background-image: url(img/bg_green_01.png);
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: contain;
  z-index: 1;
}
.p-main_visual .p-main_visual__hill::before, .p-main_visual .p-main_visual__hill::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
}
.p-main_visual .p-main_visual__hill::before {
  right: 25%;
  bottom: 12%;
  width: 7%;
  aspect-ratio: 1/1;
  background-image: url(img/img_wood_03.svg);
}
.p-main_visual .p-main_visual__hill::after {
  right: 18%;
  bottom: 5%;
  width: 5%;
  aspect-ratio: 2/3;
  background-image: url(img/img_wood_04.svg);
}
@media screen and (max-width: 768px) {
  .p-main_visual .p-main_visual__hill::before {
    right: 13%;
    bottom: 15%;
    width: 11%;
  }
  .p-main_visual .p-main_visual__hill::after {
    right: 5%;
    bottom: 5%;
    width: 7%;
  }
}
.p-main_visual .p-main_visual__catch {
  position: absolute;
  bottom: 25%;
  left: 12%;
  width: 30%;
}
.p-main_visual .p-main_visual__catch img {
  width: 100%;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  .p-main_visual .p-main_visual__catch {
    left: var(--ark-padding--container);
    width: 70%;
    max-width: 400px;
  }
}

.p-footer_img_bg {
  position: relative;
  display: flex;
  width: 100%;
  aspect-ratio: 3/1;
  padding-right: 29vw;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .p-footer_img_bg {
    aspect-ratio: 8/5;
    padding-right: unset;
  }
}
.p-footer_img_bg::before, .p-footer_img_bg::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-footer_img_bg::before {
  top: -10px;
  aspect-ratio: 5/1;
  background-image: url(img/bg_lightgreen.png);
  background-position: top;
}
.p-footer_img_bg::after {
  bottom: -3px;
  aspect-ratio: 4.5/1;
  background-image: url(img/bg_brown.png);
  background-position: bottom;
}
.p-footer_img_bg img {
  width: 100%;
  height: 100%;
  aspect-ratio: 3/1;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .p-footer_img_bg img {
    aspect-ratio: 8/5;
  }
}

.p-details {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.125rem 1.5rem;
  margin-top: 180px;
}
@media screen and (max-width: 999px) {
  .p-details {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 120px;
  }
}
@media screen and (max-width: 600px) {
  .p-details {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.p-details::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 101%;
  transform: translateY(-50%);
  width: 5%;
  aspect-ratio: 7/9;
  background-image: url(img/img_wood_02.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .p-details::before {
    top: 33%;
    left: 96%;
    width: 10%;
  }
}
@media screen and (max-width: 600px) {
  .p-details::before {
    top: 50%;
    left: 92%;
    width: 18%;
  }
}
.p-details::after {
  content: "";
  position: absolute;
  bottom: 15%;
  left: 0;
  transform: translateX(-60%);
  width: 10%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_03.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .p-details::after {
    bottom: 30%;
    width: 15%;
  }
}
@media screen and (max-width: 600px) {
  .p-details::after {
    bottom: 33%;
    width: 30%;
    transform: translate(-60%, 25%);
  }
}
.p-details .c-detail_card {
  position: relative;
}
.p-details .c-detail_card:first-child:before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 15%;
  width: 15%;
  aspect-ratio: 1/2;
  background-image: url(img/img_wood_01.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
}
@media screen and (max-width: 999px) {
  .p-details .c-detail_card:first-child:before {
    width: 10%;
  }
}
@media screen and (max-width: 600px) {
  .p-details .c-detail_card:last-child::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    width: 30vw;
    aspect-ratio: 1/1;
    background-image: url(img/img_circle_04.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: -1;
  }
}

.p-recruit {
  position: relative;
  margin-top: 200px;
  padding-bottom: 70px;
}
@media screen and (max-width: 999px) {
  .p-recruit {
    margin-top: 60px;
    margin-bottom: 22.2222222222vw;
    padding-top: 150px;
    padding-bottom: 100px;
    background-image: url(img/bg_recruit.png);
    background-repeat: no-repeat;
    background-size: 250% 100%;
    background-position: center;
  }
}
.p-recruit::before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  transform: rotateX(180deg);
  width: 100%;
  aspect-ratio: 4.5/1;
  background-color: #E5F8E7;
  background-image: url(img/bg_green_01.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
}
@media screen and (max-width: 999px) {
  .p-recruit::before {
    bottom: unset;
    top: calc(100% - 1px);
    z-index: -1;
  }
}
.p-recruit .p-recruit__main {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 1000px;
  aspect-ratio: 1.77/1;
  margin-left: auto;
  margin-right: auto;
  padding: 40px;
  background-image: url(img/bg_recruit.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: 1;
}
@media screen and (max-width: 999px) {
  .p-recruit .p-recruit__main {
    padding: unset;
    background: unset;
  }
}
.p-recruit .p-recruit__main::before, .p-recruit .p-recruit__main::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
.p-recruit .p-recruit__main::before {
  bottom: 95%;
  right: 0;
  width: 15%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_04.png);
}
@media screen and (max-width: 999px) {
  .p-recruit .p-recruit__main::before {
    display: none;
  }
}
.p-recruit .p-recruit__main::after {
  bottom: 25%;
  left: 0;
  transform: translateX(-40%);
  width: 12%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_05.png);
}
@media screen and (max-width: 999px) {
  .p-recruit .p-recruit__main::after {
    bottom: 0;
    left: 0;
    transform: translate(-40%, 50%);
    width: min(30%, 150px);
  }
}
.p-recruit .p-recruit__main .p-recruit__deco {
  position: absolute;
}
.p-recruit .p-recruit__main .p-recruit__deco.--1 {
  top: -5%;
  left: 0;
  transform: translateX(-10%);
  width: 30%;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 999px) {
  .p-recruit .p-recruit__main .p-recruit__deco.--1 {
    top: unset;
    bottom: 100%;
    transform: translateX(-20%);
    width: 180px;
  }
}
.p-recruit .p-recruit__main .p-recruit__deco.--2 {
  top: 10%;
  right: 0;
  transform: translateX(30%);
  width: 35%;
  aspect-ratio: 1.27/1;
}
@media screen and (max-width: 999px) {
  .p-recruit .p-recruit__main .p-recruit__deco.--2 {
    top: 100%;
    width: min(70%, 400px);
  }
}
.p-recruit .p-recruit__main .p-recruit__deco img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-recruit .p-recruit__catch {
  font-size: 1.25rem;
  font-weight: bold;
  margin-top: 1.5rem;
  text-align: center;
}
.p-recruit .p-recruit__text {
  font-size: 1.12rem;
  text-align: center;
  margin-top: 1.5rem;
}
.p-recruit .p-recruit__buttons {
  display: flex;
  gap: 1rem;
  margin-top: 1.5rem;
}
@media screen and (max-width: 999px) {
  .p-recruit .p-recruit__buttons {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  .p-recruit .p-recruit__buttons .c-button {
    width: 100%;
    max-width: 400px;
  }
}

.p-blog {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 80px;
  padding-bottom: 20px;
}
.p-blog .p-blog__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 500px;
  border-radius: 9999px;
  overflow: hidden;
  transition: 0.2s;
}
.p-blog .p-blog__button:hover {
  opacity: 0.8;
}
.p-blog .p-blog__button img {
  width: 100%;
}

.p-header .l-header__body {
  max-width: unset;
}
@media screen and (max-width: 999px) {
  .p-header {
    position: fixed !important;
    background-color: transparent;
  }
  .p-header .l-header__body {
    grid-template-areas: "center right search menu";
    grid-template-columns: min(50%, 220px) auto var(--ark-searchW) 60px;
    padding-left: 0;
  }
  .p-header .l-header__center {
    background-color: #FFFFFF;
    border-bottom-right-radius: 20px;
    padding-left: 3vw;
    padding-right: 3vw;
  }
  .p-header .l-header__center .c-headLogo {
    width: 100%;
    height: unset;
  }
  .p-header .l-header__center .c-headLogo img {
    width: 100%;
  }
}
.p-header .p-header__links {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  height: 100%;
  margin-left: 1rem;
}
.p-header .p-header__social {
  display: flex;
  gap: 14px;
}
.p-header .p-header__social_link {
  position: relative;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: bold;
  background-color: #F5DA42;
  border-radius: 0px 0px 10px 10px;
  padding: 8px 12px;
  padding-left: 2.5em;
  transition: 0.2s;
}
.p-header .p-header__social_link:hover {
  opacity: 0.8;
}
.p-header .p-header__social_link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.5em;
  transform: translateY(-50%);
  width: 1.5em;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.p-header .p-header__social_link.--instagram::before {
  background-image: url(img/icon_camera.svg);
}
.p-header .p-header__social_link.--blog::before {
  background-image: url(img/icon_pen.svg);
}
.p-header .p-header__contact {
  display: flex;
  align-items: center;
  gap: 20px;
  padding-bottom: 10px;
}
.p-header .p-header__tel {
  position: relative;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 1.25rem;
  font-weight: bold;
  padding-left: 1.2rem;
}
.p-header .p-header__tel::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1rem;
  aspect-ratio: 1/1;
  background-image: url(img/icon_phone.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.p-header .c-gnav {
  padding-top: 20px;
  padding-bottom: 20px;
}
.p-header .c-gnav__li {
  display: flex;
  align-items: center;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 1rem;
  font-weight: bold;
}
@media screen and (max-width: 1200px) {
  .p-header .c-gnav__li {
    font-size: unset;
  }
}
.p-header .c-gnav__li.--about > .c-gnav__a::before {
  width: 2.5rem;
  aspect-ratio: 5/3;
  background-image: url(img/icon_menu_1.svg);
}
.p-header .c-gnav__li.--life > .c-gnav__a::before {
  width: 1.7rem;
  aspect-ratio: 1/1;
  background-image: url(img/icon_menu_2.svg);
}
.p-header .c-gnav__li.--addmission > .c-gnav__a::before {
  width: 2.5rem;
  aspect-ratio: 5/3;
  background-image: url(img/icon_menu_3.svg);
}
.p-header .c-gnav__li.--help > .c-gnav__a::before {
  width: 2.5rem;
  aspect-ratio: 5/3;
  background-image: url(img/icon_menu_4.svg);
}
.p-header .c-gnav__li.--recruit > .c-gnav__a::before {
  width: 1.9rem;
  aspect-ratio: 1/1;
  background-image: url(img/icon_menu_5.svg);
}
.p-header .c-gnav__li > .c-gnav__a {
  position: relative;
  justify-content: flex-end;
  padding: 2.5rem 1rem 0;
  height: auto;
}
@media screen and (max-width: 1200px) {
  .p-header .c-gnav__li > .c-gnav__a {
    padding: 2.5rem 0.5rem 0;
  }
}
.p-header .c-gnav__li > .c-gnav__a::before {
  content: "";
  position: absolute;
  bottom: calc(1em + 10px);
  left: 50%;
  transform: translateX(-50%);
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: contain;
}
.p-header .c-gnav__li:hover, .p-header .c-gnav__li.-current {
  color: #3FAF4F;
}
.p-header .c-gnav .sub-menu {
  background-color: #FFFFFF;
  color: #333333;
  border-radius: 20px;
  padding: 10px;
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
}
.p-header .c-gnav .sub-menu .c-gnav__a {
  font-size: 0.875rem;
  padding: 0.7em;
}
.p-header .c-gnav .sub-menu .c-gnav__a:hover {
  color: #3FAF4F;
}
.p-header .c-gnav .sub-menu .c-gnav__a::before {
  content: unset;
}
.p-header .c-gnav__depth1 {
  top: calc(100% + 10px);
  min-width: 200px;
}
.p-header .c-gnav__depth1:before {
  content: unset;
}

.l-footer {
  position: relative;
  background-color: #9D6C49;
  padding-top: 120px;
  padding-bottom: 20px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .l-footer {
    padding-top: 60px;
  }
}
.l-footer::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-10%, 50%);
  width: 25%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_09.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .l-footer::before {
    transform: translate(-50%, 50%);
    width: min(100%, 500px);
  }
}

.p-footer__main {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  color: #FFFFFF;
  margin-top: 100px;
}
@media screen and (max-width: 999px) {
  .p-footer__main {
    flex-direction: column;
    margin-top: 80px;
  }
}

.p-footer__logo {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 999px) {
  .p-footer__logo {
    width: 100%;
  }
}

.p-footer__address {
  font-size: 1.125rem;
  font-weight: 400;
}

.p-footer__buttons {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
  margin-top: 60px;
}
@media screen and (max-width: 999px) {
  .p-footer__buttons {
    justify-content: flex-start;
  }
}

.p-footer__small {
  display: block;
  color: #FFFFFF;
  font-size: 12px;
  text-align: center;
  margin-top: 20px;
  opacity: 1;
}
@media screen and (max-width: 999px) {
  .p-footer__small {
    margin-top: 80px;
  }
}

.p-contact .p-contact__main {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  background-color: #FFFFFF;
  border-radius: 9999px;
  margin-top: 40px;
  padding: 60px;
}
@media screen and (max-width: 999px) {
  .p-contact .p-contact__main {
    grid-template-columns: 1fr;
    gap: 40px;
    border-radius: 30px;
    padding: 40px 20px;
  }
}
.p-contact .p-contact__main::before {
  content: "";
  position: absolute;
  top: 0;
  right: 3%;
  transform: translateY(-50%);
  width: 8%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_08.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media screen and (max-width: 768px) {
  .p-contact .p-contact__main::before {
    right: 0;
    transform: translate(20%, -40%);
    width: min(22%, 120px);
  }
}
.p-contact .p-contact__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 999px) {
  .p-contact .p-contact__item.--mail {
    padding-top: 40px;
  }
  .p-contact .p-contact__item.--mail .c-button {
    font-size: 1.125rem;
  }
}
.p-contact .p-contact__item + .p-contact__item {
  border-image-source: repeating-linear-gradient(to right, #9D6C49, #9D6C49 8px, transparent 8px, transparent 16px);
  border-image-slice: 1;
  border-image-source: repeating-linear-gradient(to bottom, #9D6C49, #9D6C49 8px, transparent 8px, transparent 16px);
  border-left: 2px solid #9D6C49;
  border-image-width: 0 0 0 2px;
}
@media screen and (max-width: 999px) {
  .p-contact .p-contact__item + .p-contact__item {
    border-image-source: repeating-linear-gradient(to right, #9D6C49, #9D6C49 8px, transparent 8px, transparent 16px);
    border-image-slice: 1;
    border-image-source: repeating-linear-gradient(to right, #9D6C49, #9D6C49 8px, transparent 8px, transparent 16px);
    border-top: 2px solid #9D6C49;
    border-image-width: 2px 0 0 0;
  }
}
.p-contact .p-contact__item .p-contact__item__title {
  font-family: "M PLUS Rounded 1c", sans-serif;
}
.p-contact .p-contact__item .p-contact__item__tel {
  font-size: 2.5rem;
  font-weight: bold;
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.p-album {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .p-album {
    margin-top: calc(22.2222222222vw + 40px);
  }
}
.p-album .p-album__instagram {
  position: relative;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .p-album .p-album__instagram {
    margin-top: 20px;
  }
}
.p-album .p-album__instagram::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(30%, 45%);
  width: 25%;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_06.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .p-album .p-album__instagram::before {
    transform: translate(45%, 25%);
    width: min(50%, 250px);
  }
}
.p-album .p-album__button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .p-album .p-album__button {
    margin-top: 0;
  }
}

.l-header__drawerBtn {
  width: 60px;
  height: 60px;
}
.l-header__drawerBtn .c-iconBtn__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.l-header__drawerBtn .c-iconBtn__icon .arkhe-svg-menu {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.l-header__drawerBtn .c-iconBtn__icon .arkhe-svg-menu.__close {
  top: unset;
  left: unset;
  width: 60%;
  height: 60%;
}
.l-header__drawerBtn .c-iconBtn__icon .arkhe-svg-menu img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.p-drawerUnderlayer {
  background: rgba(0, 0, 0, 0.5019607843);
}

.p-drawer {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 16px;
  font-weight: bold;
  height: calc(95% - var(--ark-adminbar_height)) !important;
}
html:not([data-drawer-move=fade]) .p-drawer {
  background: unset !important;
}
.p-drawer::before {
  border-bottom-left-radius: 30px;
}
.p-drawer .p-drawer__social {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-top: 30px;
}
@media screen and (max-width: 374px) {
  .p-drawer .p-drawer__social {
    grid-template-columns: 1fr;
  }
}
.p-drawer .p-drawer__social .p-drawer__social_link {
  position: relative;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: bold;
  text-align: center;
  background-color: #F5DA42;
  border-radius: 10px;
  padding: 1em;
  padding-left: 3em;
}
.p-drawer .p-drawer__social .p-drawer__social_link.--instagram::before {
  background-image: url(img/icon_camera.svg);
}
.p-drawer .p-drawer__social .p-drawer__social_link.--blog::before {
  background-image: url(img/icon_pen.svg);
}
.p-drawer .p-drawer__social .p-drawer__social_link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1em;
  transform: translateY(-50%);
  width: 1.5em;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.p-drawer .p-drawer__contact {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-top: 30px;
}
.p-drawer .p-drawer__contact .p-drawer__contact_link {
  position: relative;
  font-size: 20px;
  padding-left: 1.5em;
}
.p-drawer .p-drawer__contact .p-drawer__contact_link:hover {
  color: #FFFFFF;
  background-color: #F0705F;
}
.p-drawer .p-drawer__contact .p-drawer__contact_link::before {
  content: "";
  position: absolute;
  left: 1em;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.p-drawer .p-drawer__contact .p-drawer__contact_link.--tel {
  background-color: #3FAF4F;
  border: 2px solid #3FAF4F;
}
.p-drawer .p-drawer__contact .p-drawer__contact_link.--tel:hover {
  color: #FFFFFF;
  background-color: #3FAF4F;
}
.p-drawer .p-drawer__contact .p-drawer__contact_link.--tel::before {
  width: 0.8em;
  aspect-ratio: 1/1;
  background-image: url(img/sp-icon_phone_white.svg);
}
.p-drawer .p-drawer__contact .p-drawer__contact_link.--mail::before {
  width: 1em;
  aspect-ratio: 4/3;
  background-image: url(img/sp-icon_mail_white.svg);
}

.c-drawerNav {
  border-top: unset;
  border-bottom: unset;
}
.c-drawerNav > .menu-item.--about > .c-drawerNav__a::before {
  aspect-ratio: 5/3;
  background-image: url(img/icon_menu_1.svg);
}
.c-drawerNav > .menu-item.--life > .c-drawerNav__a::before {
  aspect-ratio: 1/1;
  background-image: url(img/icon_menu_2.svg);
}
.c-drawerNav > .menu-item.--addmission > .c-drawerNav__a::before {
  aspect-ratio: 5/3;
  background-image: url(img/icon_menu_3.svg);
}
.c-drawerNav > .menu-item.--help > .c-drawerNav__a::before {
  aspect-ratio: 5/3;
  background-image: url(img/icon_menu_4.svg);
}
.c-drawerNav > .menu-item.--recruit > .c-drawerNav__a::before {
  aspect-ratio: 1/1;
  background-image: url(img/icon_menu_5.svg);
}
.c-drawerNav > .menu-item > .c-drawerNav__a {
  border-image-source: repeating-linear-gradient(to right, #9D6C49, #9D6C49 6px, transparent 6px, transparent 13px);
  border-image-slice: 1;
  border-image-source: repeating-linear-gradient(to right, #9D6C49, #9D6C49 6px, transparent 6px, transparent 13px);
  border-bottom: 1px solid #9D6C49;
  border-image-width: 0 0 1px 0;
  padding-left: 4em;
}
.c-drawerNav > .menu-item > .c-drawerNav__a::before {
  content: "";
  position: absolute;
  left: 0.5em;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.c-drawerNav .menu-item {
  border-bottom: unset;
}
.c-drawerNav .c-drawerNav__a {
  font-size: 16px;
}

.has-child--acc .sub-menu {
  border-top: unset;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.has-child--acc .sub-menu .c-drawerNav__a {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.c-submenuToggleBtn::after {
  content: unset;
}
.c-submenuToggleBtn::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(180deg);
  width: 1.2em;
  aspect-ratio: 2/1;
  background-image: url(img/sp-icon_arrow_green.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: 0.2s;
}
.c-submenuToggleBtn:focus {
  outline-style: unset;
  outline-width: unset;
}
.c-submenuToggleBtn.is-opened::before {
  transform: translate(-50%, -50%) rotate(0);
}
.c-submenuToggleBtn .c-submenuToggleBtn__svg {
  display: none;
}

.PS_RM_event-card {
  border-radius: 20px;
  background: #FFF;
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
  padding: 20px;
}

.PS_RM_event-card__date {
  margin-top: 20px;
}

.PS_RM_event-card__date__date {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.PS_RM_event-card__remain {
  margin-top: 20px;
}

.PS_RM_font-big {
  font-size: 1em;
}

.PS_RM_event-card__button_wrapper {
  margin-top: 20px;
}

.PS_RM_event-card__button {
  background-color: #9D6C49;
}
.PS_RM_event-card__button:hover {
  background-color: #9D6C49;
  opacity: 0.8;
}
.PS_RM_event-card__button.PS_RM_event-card__button--after-reserve, .PS_RM_event-card__button.PS_RM_event-card__button--no-reserve {
  background: #B5B5B5;
}
.PS_RM_event-card__button.PS_RM_event-card__button--after-reserve:hover, .PS_RM_event-card__button.PS_RM_event-card__button--no-reserve:hover {
  background: #B5B5B5;
  opacity: 1;
}
.PS_RM_event-card__button.PS_RM_event-card__button--before-reserve {
  background: #D5B6A0;
}
.PS_RM_event-card__button.PS_RM_event-card__button--before-reserve:hover {
  background: #D5B6A0;
  opacity: 1;
}

/* Utility
----------------------------------------------------------------- */
@media screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
@media screen and (max-width: 999px) {
  .ar-d {
    display: none !important;
  }
}
@media screen and (min-width: 1000px) {
  .ar-u {
    display: none !important;
  }
}
.u-color--yellow {
  color: #F5DA42;
}

/* Block
----------------------------------------------------------------- */
/*--------------------------------
    継承元
--------------------------------*/
/*------ 見出しH2 -------*/
.c-postContent h2.wp-block-heading, .editor-styles-wrapper h2.wp-block-heading,
.block-editor-block-preview__content h2.wp-block-heading {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: inline-block;
  color: #3FAF4F;
  font-size: 2.5rem;
  text-align: center;
  font-family: "M PLUS Rounded 1c", sans-serif;
  max-width: calc(100% - 3em);
  margin-top: 4em;
  margin-bottom: 1em;
}
.c-postContent h2.wp-block-heading::before, .editor-styles-wrapper h2.wp-block-heading::before,
.block-editor-block-preview__content h2.wp-block-heading::before, .c-postContent h2.wp-block-heading::after, .editor-styles-wrapper h2.wp-block-heading::after,
.block-editor-block-preview__content h2.wp-block-heading::after {
  content: "";
  position: absolute;
  bottom: 0.25em;
  width: 1.5em;
  height: 1.5em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
}
.c-postContent h2.wp-block-heading::before, .editor-styles-wrapper h2.wp-block-heading::before,
.block-editor-block-preview__content h2.wp-block-heading::before {
  right: calc(100% + 0.5em);
  background-image: url(img/img_wood_03.svg);
}
.c-postContent h2.wp-block-heading::after, .editor-styles-wrapper h2.wp-block-heading::after,
.block-editor-block-preview__content h2.wp-block-heading::after {
  left: calc(100% + 0.5em);
  background-image: url(img/img_wood_02.svg);
}
@media screen and (max-width: 999px) {
  .c-postContent h2.wp-block-heading, .editor-styles-wrapper h2.wp-block-heading,
  .block-editor-block-preview__content h2.wp-block-heading {
    font-size: 2rem;
  }
}

/*------ 見出しH3 -------*/
.c-postContent h3.wp-block-heading, .editor-styles-wrapper h3.wp-block-heading,
.block-editor-block-preview__content h3.wp-block-heading {
  position: relative;
  color: #3FAF4F;
  font-size: 2rem;
  font-family: "M PLUS Rounded 1c", sans-serif;
  padding-left: 1.8em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}
.c-postContent h3.wp-block-heading::before, .editor-styles-wrapper h3.wp-block-heading::before,
.block-editor-block-preview__content h3.wp-block-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: 40%;
  transform: translateY(-50%);
  width: 2.5em;
  aspect-ratio: 1/1;
  background-image: url(img/img_circle_04.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
  z-index: -1;
}
@media screen and (max-width: 999px) {
  .c-postContent h3.wp-block-heading, .editor-styles-wrapper h3.wp-block-heading,
  .block-editor-block-preview__content h3.wp-block-heading {
    font-size: 1.5rem;
  }
}

/*------ 見出しH4 -------*/
.c-postContent h4.wp-block-heading, .editor-styles-wrapper h4.wp-block-heading,
.block-editor-block-preview__content h4.wp-block-heading {
  position: relative;
  color: #3FAF4F;
  font-size: 1.3rem;
  font-weight: bold;
  font-family: "M PLUS Rounded 1c", sans-serif;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
  border-image-source: repeating-linear-gradient(to right, #3FAF4F, #3FAF4F 8px, transparent 8px, transparent 16px);
  border-image-slice: 1;
  border-image-source: repeating-linear-gradient(to right, #3FAF4F, #3FAF4F 8px, transparent 8px, transparent 16px);
  border-bottom: 2px solid #3FAF4F;
  border-image-width: 0 0 2px 0;
}

/*------ リンク -------*/
.c-postContent a:not(a[class]), .editor-styles-wrapper a:not(a[class]),
.block-editor-block-preview__content a:not(a[class]) {
  color: var(--color_link);
  text-decoration: underline;
}
.c-postContent a:hover:not(a[class]), .editor-styles-wrapper a:hover:not(a[class]),
.block-editor-block-preview__content a:hover:not(a[class]) {
  text-decoration: none;
}

/*--------------------------------
    出力
--------------------------------*/
.p-topArea {
  position: relative;
  font-family: "M PLUS Rounded 1c", sans-serif;
  background-color: #3FAF4F !important;
}
@media screen and (max-width: 768px) {
  .p-topArea {
    padding: 4rem 0 2rem 0;
  }
}
.p-topArea .c-pageTitle__main {
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-topArea .c-pageTitle__main {
    font-size: 2rem;
  }
}

.p-topArea__hill {
  position: relative;
  margin-top: 0;
}
.p-topArea__hill::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 5px;
  background-color: #3FAF4F;
  z-index: -1;
}

.p-topArea__body {
  text-align: center;
  color: #FFFFFF;
  text-shadow: unset;
}

.c-postContent .wp-block-table:is(figure, form), .editor-styles-wrapper .wp-block-table:is(figure, form),
.block-editor-block-preview__content .wp-block-table:is(figure, form) {
  border: 2px solid #3FAF4F;
}
.c-postContent .wpcf7-form table, .editor-styles-wrapper .wpcf7-form table,
.block-editor-block-preview__content .wpcf7-form table {
  border: 2px solid #3FAF4F;
}
@media screen and (max-width: 768px) {
  .c-postContent .wpcf7-form tbody tr, .editor-styles-wrapper .wpcf7-form tbody tr,
  .block-editor-block-preview__content .wpcf7-form tbody tr {
    display: flex;
    flex-direction: column;
  }
  .c-postContent .wpcf7-form tbody tr > :first-child, .editor-styles-wrapper .wpcf7-form tbody tr > :first-child,
  .block-editor-block-preview__content .wpcf7-form tbody tr > :first-child {
    border-top: unset !important;
    border-bottom: unset !important;
    border-left: unset !important;
  }
  .c-postContent .wpcf7-form tbody tr > :first-child, .editor-styles-wrapper .wpcf7-form tbody tr > :first-child,
  .block-editor-block-preview__content .wpcf7-form tbody tr > :first-child,
  .c-postContent .wpcf7-form th,
  .editor-styles-wrapper .wpcf7-form th,
  .block-editor-block-preview__content .wpcf7-form th {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .c-postContent .wp-block-table:is(figure, form), .editor-styles-wrapper .wp-block-table:is(figure, form),
  .block-editor-block-preview__content .wp-block-table:is(figure, form),
  .c-postContent .wpcf7-form,
  .editor-styles-wrapper .wpcf7-form,
  .block-editor-block-preview__content .wpcf7-form {
    border: none;
  }
}
.c-postContent .wp-block-table:is(figure, form) td, .editor-styles-wrapper .wp-block-table:is(figure, form) td,
.block-editor-block-preview__content .wp-block-table:is(figure, form) td, .c-postContent .wp-block-table:is(figure, form) th, .editor-styles-wrapper .wp-block-table:is(figure, form) th,
.block-editor-block-preview__content .wp-block-table:is(figure, form) th,
.c-postContent .wpcf7-form td,
.editor-styles-wrapper .wpcf7-form td,
.block-editor-block-preview__content .wpcf7-form td,
.c-postContent .wpcf7-form th,
.editor-styles-wrapper .wpcf7-form th,
.block-editor-block-preview__content .wpcf7-form th {
  padding-left: 1.75rem !important;
  padding-right: 1.75rem !important;
}
.c-postContent .wp-block-table:is(figure, form) table, .editor-styles-wrapper .wp-block-table:is(figure, form) table,
.block-editor-block-preview__content .wp-block-table:is(figure, form) table,
.c-postContent .wpcf7-form table,
.editor-styles-wrapper .wpcf7-form table,
.block-editor-block-preview__content .wpcf7-form table {
  background-color: #FFFFFF;
}
.c-postContent .wp-block-table:is(figure, form) thead th, .editor-styles-wrapper .wp-block-table:is(figure, form) thead th,
.block-editor-block-preview__content .wp-block-table:is(figure, form) thead th,
.c-postContent .wpcf7-form thead th,
.editor-styles-wrapper .wpcf7-form thead th,
.block-editor-block-preview__content .wpcf7-form thead th {
  background-color: #3FAF4F;
  border: 1px solid #3FAF4F;
  border-right: 1px solid #FFFFFF;
  color: #FFFFFF;
  font-weight: bold;
  vertical-align: middle;
}
.c-postContent .wp-block-table:is(figure, form) thead th:last-child, .editor-styles-wrapper .wp-block-table:is(figure, form) thead th:last-child,
.block-editor-block-preview__content .wp-block-table:is(figure, form) thead th:last-child,
.c-postContent .wpcf7-form thead th:last-child,
.editor-styles-wrapper .wpcf7-form thead th:last-child,
.block-editor-block-preview__content .wpcf7-form thead th:last-child {
  border-right-color: #3FAF4F !important;
}
.c-postContent .wp-block-table:is(figure, form) thead th + th, .editor-styles-wrapper .wp-block-table:is(figure, form) thead th + th,
.block-editor-block-preview__content .wp-block-table:is(figure, form) thead th + th,
.c-postContent .wpcf7-form thead th + th,
.editor-styles-wrapper .wpcf7-form thead th + th,
.block-editor-block-preview__content .wpcf7-form thead th + th {
  border-left: 1px solid #FFFFFF;
}
.c-postContent .wp-block-table:is(figure, form) tbody th::before, .editor-styles-wrapper .wp-block-table:is(figure, form) tbody th::before,
.block-editor-block-preview__content .wp-block-table:is(figure, form) tbody th::before,
.c-postContent .wpcf7-form tbody th::before,
.editor-styles-wrapper .wpcf7-form tbody th::before,
.block-editor-block-preview__content .wpcf7-form tbody th::before {
  content: unset;
}
.c-postContent .wp-block-table:is(figure, form) td, .editor-styles-wrapper .wp-block-table:is(figure, form) td,
.block-editor-block-preview__content .wp-block-table:is(figure, form) td,
.c-postContent .wpcf7-form td,
.editor-styles-wrapper .wpcf7-form td,
.block-editor-block-preview__content .wpcf7-form td {
  border: 1px solid #3FAF4F;
  vertical-align: middle;
}
.c-postContent .wp-block-table:is(figure, form) tr:last-child > td, .editor-styles-wrapper .wp-block-table:is(figure, form) tr:last-child > td,
.block-editor-block-preview__content .wp-block-table:is(figure, form) tr:last-child > td,
.c-postContent .wpcf7-form tr:last-child > td,
.editor-styles-wrapper .wpcf7-form tr:last-child > td,
.block-editor-block-preview__content .wpcf7-form tr:last-child > td {
  border-bottom-color: #3FAF4F !important;
}
.c-postContent .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr + tr > td:first-child, .editor-styles-wrapper .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr + tr > td:first-child,
.block-editor-block-preview__content .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr + tr > td:first-child,
.c-postContent .wpcf7-form.is-style-td_to_th_ tbody tr + tr > td:first-child,
.editor-styles-wrapper .wpcf7-form.is-style-td_to_th_ tbody tr + tr > td:first-child,
.block-editor-block-preview__content .wpcf7-form.is-style-td_to_th_ tbody tr + tr > td:first-child {
  border-top: 1px solid #FFFFFF;
}
.c-postContent .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child, .editor-styles-wrapper .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child,
.block-editor-block-preview__content .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child,
.c-postContent .wp-block-table:is(figure, form) th,
.editor-styles-wrapper .wp-block-table:is(figure, form) th,
.block-editor-block-preview__content .wp-block-table:is(figure, form) th,
.c-postContent .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
.editor-styles-wrapper .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
.block-editor-block-preview__content .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
.c-postContent .wpcf7-form th,
.editor-styles-wrapper .wpcf7-form th,
.block-editor-block-preview__content .wpcf7-form th {
  border-bottom: 1px solid #FFFFFF;
  background-color: #3FAF4F;
  color: #FFFFFF;
  font-weight: bold;
  vertical-align: middle;
}
.c-postContent .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child::before, .editor-styles-wrapper .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child::before,
.block-editor-block-preview__content .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child::before,
.c-postContent .wp-block-table:is(figure, form) th::before,
.editor-styles-wrapper .wp-block-table:is(figure, form) th::before,
.block-editor-block-preview__content .wp-block-table:is(figure, form) th::before,
.c-postContent .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child::before,
.editor-styles-wrapper .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child::before,
.block-editor-block-preview__content .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child::before,
.c-postContent .wpcf7-form th::before,
.editor-styles-wrapper .wpcf7-form th::before,
.block-editor-block-preview__content .wpcf7-form th::before {
  content: unset;
}
.c-postContent .wpcf7-form.wpcf7-form th,
.editor-styles-wrapper .wpcf7-form.wpcf7-form th,
.block-editor-block-preview__content .wpcf7-form.wpcf7-form th {
  text-align: left;
}
.c-postContent .wpcf7-form.wpcf7-form th.need p,
.editor-styles-wrapper .wpcf7-form.wpcf7-form th.need p,
.block-editor-block-preview__content .wpcf7-form.wpcf7-form th.need p {
  position: relative;
}
.c-postContent .wpcf7-form.wpcf7-form th.need p::after,
.editor-styles-wrapper .wpcf7-form.wpcf7-form th.need p::after,
.block-editor-block-preview__content .wpcf7-form.wpcf7-form th.need p::after {
  content: "必須";
  display: inline-block;
  background-color: #FFFFFF;
  color: #F0705F;
  font-size: 0.7em;
  font-weight: bold;
  margin-left: 10px;
  padding: 1px 8px;
}
.c-postContent .wpcf7-form.wpcf7-form input[type=text],
.editor-styles-wrapper .wpcf7-form.wpcf7-form input[type=text],
.block-editor-block-preview__content .wpcf7-form.wpcf7-form input[type=text],
.c-postContent .wpcf7-form.wpcf7-form input[type=email],
.editor-styles-wrapper .wpcf7-form.wpcf7-form input[type=email],
.block-editor-block-preview__content .wpcf7-form.wpcf7-form input[type=email],
.c-postContent .wpcf7-form.wpcf7-form input[type=date],
.editor-styles-wrapper .wpcf7-form.wpcf7-form input[type=date],
.block-editor-block-preview__content .wpcf7-form.wpcf7-form input[type=date],
.c-postContent .wpcf7-form.wpcf7-form input[type=tel],
.editor-styles-wrapper .wpcf7-form.wpcf7-form input[type=tel],
.block-editor-block-preview__content .wpcf7-form.wpcf7-form input[type=tel],
.c-postContent .wpcf7-form.wpcf7-form textarea,
.editor-styles-wrapper .wpcf7-form.wpcf7-form textarea,
.block-editor-block-preview__content .wpcf7-form.wpcf7-form textarea {
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box;
  font-size: 16px;
}
.c-postContent .wp-block-table:is(figure, form) .center, .editor-styles-wrapper .wp-block-table:is(figure, form) .center,
.block-editor-block-preview__content .wp-block-table:is(figure, form) .center,
.c-postContent .wpcf7-form .center,
.editor-styles-wrapper .wpcf7-form .center,
.block-editor-block-preview__content .wpcf7-form .center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.c-postContent .wp-block-table:is(figure, form) .center input[type=submit], .editor-styles-wrapper .wp-block-table:is(figure, form) .center input[type=submit],
.block-editor-block-preview__content .wp-block-table:is(figure, form) .center input[type=submit],
.c-postContent .wpcf7-form .center input[type=submit],
.editor-styles-wrapper .wpcf7-form .center input[type=submit],
.block-editor-block-preview__content .wpcf7-form .center input[type=submit] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  padding: 0.5em 2em;
  color: #FFFFFF;
  background-color: #3FAF4F;
  border: 1px solid #3FAF4F;
  border-radius: 999px;
  transition: 0.2s;
}
.c-postContent .wp-block-table:is(figure, form) .center input[type=submit]:hover, .editor-styles-wrapper .wp-block-table:is(figure, form) .center input[type=submit]:hover,
.block-editor-block-preview__content .wp-block-table:is(figure, form) .center input[type=submit]:hover,
.c-postContent .wpcf7-form .center input[type=submit]:hover,
.editor-styles-wrapper .wpcf7-form .center input[type=submit]:hover,
.block-editor-block-preview__content .wpcf7-form .center input[type=submit]:hover {
  color: #3FAF4F;
  background-color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .c-postContent .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr, .editor-styles-wrapper .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr,
  .block-editor-block-preview__content .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr,
  .c-postContent .wpcf7-form.is-style-td_to_th_ tbody tr,
  .editor-styles-wrapper .wpcf7-form.is-style-td_to_th_ tbody tr,
  .block-editor-block-preview__content .wpcf7-form.is-style-td_to_th_ tbody tr {
    display: flex;
    flex-direction: column;
  }
  .c-postContent .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child, .editor-styles-wrapper .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child,
  .block-editor-block-preview__content .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child,
  .c-postContent .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
  .editor-styles-wrapper .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
  .block-editor-block-preview__content .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child {
    border-top: unset !important;
    border-bottom: unset !important;
  }
  .c-postContent .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child, .editor-styles-wrapper .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child,
  .block-editor-block-preview__content .wp-block-table:is(figure, form).is-style-td_to_th_ tbody tr > :first-child,
  .c-postContent .wp-block-table:is(figure, form) th,
  .editor-styles-wrapper .wp-block-table:is(figure, form) th,
  .block-editor-block-preview__content .wp-block-table:is(figure, form) th,
  .c-postContent .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
  .editor-styles-wrapper .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
  .block-editor-block-preview__content .wpcf7-form.is-style-td_to_th_ tbody tr > :first-child,
  .c-postContent .wpcf7-form th,
  .editor-styles-wrapper .wpcf7-form th,
  .block-editor-block-preview__content .wpcf7-form th {
    text-align: center;
  }
}
