@charset "UTF-8";
/* ------ ヘッダー ----- */
.l-header__new {
  width: 142px;
  margin-left: 25px;
}
@media screen and (max-width: 767px) {
  .l-header__new {
    display: none;
  }
}

.nav-menu-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}
@media screen and (max-width: 767px) {
  .nav-menu-content {
    display: none;
  }
}

.p-home-vis {
  width: 600px;
  margin: 0 auto;
  margin-top: -120px;
}

.hav-child {
  position: relative;
}

.dropDown {
  position: absolute;
  bottom: 0;
  display: none;
  padding: 10px 0;
  background-color: #b3c42b;
  color: initial;
  border-radius: 6px;
  -webkit-transform: translate(0, 100%);
          transform: translate(0, 100%);
  z-index: 4;
  text-align: center;
}
.dropDown a {
  color: #ffffff;
}

.hav-child:hover > .dropDown,
.hav-child:focus-within > .dropDown {
  display: block;
}

.link:hover > .dropDown,
.link:focus-within > .dropDown {
  display: block;
}

.dropDown__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px 0;
}

.dropDown__link {
  padding: 5px 20px;
  -webkit-transition: color 0.15s;
  transition: color 0.15s;
  font-size: 1.4rem;
}

/* ---- トップ -----*/
.p-home-visual-front img {
  width: 100%;
}
.visual-front__item {
  position: relative;
}
.visual-front__item .visual-inner {
  position: absolute;
  left: 0;
  top: 60%;
  font-weight: bold;
  font-size: 2.1rem;
  transform: translate(0,-50%);
  width: 80%;
  color: #666666;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  background: rgba(255,255,255,0.8);
  padding: 15px 25px;
}
.visual-front__item .visual-inner strong {
  font-size: 2.9rem;
}
@media screen and (max-width: 767px) {
  .visual-front__item .visual-inner {
    font-size: 1.4rem;
    width: 65%;
    padding: 15px;
  }
  .visual-front__item .visual-inner strong {
    font-size: 1.7rem;
  }
}
.visual-front__item .visual-inner span {
  display: block;
  text-align: center;
  line-height: 1.8;
}
@media screen and (min-width: 767px) {
  .visual-front__item .visual-inner {
    width: 400px;
    left: 50%;
    transform: translate(-50%,-50%);
  }
  .visual-front__item .visual-inner .eng {
    text-align: center;
  }
}
.p-home-visual-front .slick-dots {
  bottom: -10px;
  position: relative;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4px;
}
.p-home-visual-front .slick-dots li {
  width: 12px;
  height: 12px;
  position: relative;
  display: block;
}
.p-home-visual-front .slick-dots li button {
  width: 9px;
  height: 9px;
  display: block;
  text-indent: -9999px;
  background: none;
}
.p-home-visual-front .slick-dots li button:before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 100%;
  background: #E0E0E0;
  opacity: 1;
  position: absolute;
  display: block;
}
.p-home-visual-front .slick-dots li.slick-active button:before {
  background: #b3c42b;
}

.js-slick-sub {
  width: 100%;
  margin: 20px auto;
  padding-bottom: 10px;
}


.js-slick-sub .p-home-vis-sub__item {
  background: #ffffff;
  box-shadow: 0 0 5px rgba(0,0,0,0.4);
  margin: 0 10px;
  margin-bottom: 10px;
}

.p-home-vis-sub {
  padding: 10px 0;
}

/* スライダー全体の横幅を制限して中央に寄せる */
.js-slick-sub {
  width: 80%;      /* ここで「デカさ」を調整。70%〜90%くらいでお好みで */
}

/* 左右に見切れている画像を表示させる */
.js-slick-sub .slick-list {
  overflow: visible; 
}

/* スライド同士の隙間（任意） */
.js-slick-sub .slick-slide {
  margin: 0 10px;
}
@media screen and (min-width: 767px) {
  .l-header__r {
    margin-top: -50px;
  }
  .nav-menu-content {
    margin-top: -33px;
  }
}
  .l-header__logo .sp {
    display: none;
  }
@media screen and (max-width: 767px) {
  .home .l-nav__btn {
  }
  .home .l-nav__btn-bar {
  }
  .home .l-nav__btn-bar:before,.home .l-nav__btn-bar:after {
  }
  .home .l-header__logo .pc {
    display: none;
  }
  .home .l-header__logo .sp {
    display: block;
  }
  .p-home-visual-front-inner .eng {
    text-align: center;
  }
    .p-home-visual-front-inner .slick-slide {
      height: 46vh;
      position: relative;
    }
    .p-home-visual-front-inner .slick-slide img {
      position: absolute;
      width: auto;
      max-width: none;
      height: 100%;
      left: 50%;
      top: 50%;
      transform: translate(-50%,-50%);
    }
    .home .l-page__content {
      padding-top: 60px;
    }
    .home .l-header {
    }
}

.c-buy-md__body ul {
  display: flex;
  text-align: left;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 15px;
}
.c-buy-md__body ul li {
  width: calc(100% / 2 - 15px);
}
.c-buy-md__body ul li a {
  text-decoration: none;
  color: inherit;
}
.c-buy-md__body ul li figure {
  margin-bottom: 10px;
}
.c-buy-md__body ul li .cat span {
  text-align: left;
  border-bottom: 1px solid #b3c42b;
  font-size: 1.1rem;
  font-weight: bold;
}
.c-buy-md__body ul li .ttl {
  margin-top: 10px;
  font-weight: bold;
  font-size: 1.6rem;
}
.c-buy-md__body .prop-result {
  border: 1px solid #b3c42b;
  border-radius: 4px;
  width: 500px;
  text-align: center;
  margin: 60px auto 20px;
  letter-spacing: 0.1rem;
  padding: 30px 12px;
  font-weight: bold;
}
.c-buy-md__body .prop-result a {
  color: #b3c42b;
}

.c-foot-bnr {
  width: 650px;
  margin: 35px auto;
}
@media screen and (max-width: 767px) {
  .c-buy-md__body .prop-result {
    width: auto;
  }
  .c-foot-bnr {
    width: 90%;
    margin: 35px auto;
  }
}


.c-plan {
  background: none;
  padding: 0;
}

.p-works-hash ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 15px;
  gap: 12px;
}
.p-works-hash ul a {
  color: inherit;
  background: #ffffff;
  border-radius: 6px;
  padding: 4px;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
    .l-header__new {
        display: block;
        width: 21vw;
        margin-left: 5px;
    }
}

@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15); /* 拡大率 */
  }
}
@media screen and (max-width: 767px) {
  .add-animation {
    animation: zoomUp 10s linear 0s normal both;
  }
}

.pinyon-script-regular {
  font-family: "Pinyon Script", cursive;
  font-weight: 400;
  font-style: normal;
}


.sns_menu {
  margin-top: 12px;
}

@media screen and (max-width: 767px) {
    .l-header__new {
      width: 17vw;
    }
    .l-header__plan {
    width: 22vw;
  }
  .yaesu-instagram-bnr-sp {
    width: 98%;
  }
}

.c-btn--b {
  font-size: 1.8rem;
}

.c-form textarea {
    padding: 10px;
    width: 100%;
    height: 140px;
}
.p-sale-tab__btn {
  border-radius: 2px 2px 0 0;
}

@media screen and (max-width: 767px) {
  .c-btn--b {
    font-size: 1.35rem;
    padding: 3vw 1vw;
  }
    .c-form textarea {
        height:25vw
    }
}

.p-cnct-flowg__contact {
    width: 360px;
    margin: 0 auto;
    margin-top: 45px;
}
@media screen and (max-width: 767px) {
  .p-cnct-flowg__contact {
    text-align: center;
  }
}
.p-sale-tab__btn {
  background: #ffffff;
  color: #333333;
}
.p-sale-tab__btn.is-active {
    background: #71bb19;
    color: #ffffff;
}
@media screen and (min-width: 767px) {
  .p-sale-tab__wrap-btn br {
  }
}
.u-fill-concept {
  background: #ffffff;
  color: #000000;
}
.c-post-sale__wrap-cat .u-fill-concept,.c-post-sale__wrap-cat .u-fill-land {
  background: #71bb19;
  color: #ffffff;
}
@media screen and (min-width: 767px) {
  .c-post-sale__wrap-cat .u-fill-yotei {
    padding: 5px 40px;
  }
}
.u-fill-concept .c-icon--bar {
  background: #000000;
}
.c-btn--b.is-hover:hover {
  color: #ffffff;
}
.c-btn--b.is-hover:hover .c-icon--bar {
  background: #ffffff;
}
.c-btn--b.is-active {
    background: #71bb19 !important;
    color: #ffffff !important;
}
.c-btn--b.is-active .c-icon--bar {
  background: #ffffff !important;
}

.c-map-col .c-btn--b.is-active {
  background: #333333 !important;
}

.c-btn--b.is-hover:hover {
  background: #71bb19 !important;
  color: #ffffff !important;
}
.c-map-col .c-btn--b.is-hover:hover {
  background: #333333 !important;
}

.u-fill-land {
  background: #ffffff;
  color: #000000;
}
.u-fill-yotei {
  background: #ffffff;
  color: #000000;
}
@media screen and (min-width: 767px) {
.u-fill-yotei {
  padding: 40px 40px;
}
}
.u-fill-land .c-icon--bar {
  background: #000000;
}
.u-fill-yotei .c-icon--bar {
  background: #000000;
}

@media screen and (max-width: 767px) {
    .c-form {
      padding: 0 20px;
    }
}

input.datepicker {
  width: 50% !important;
}
.l-nav__m .c-btn--a {
  margin-bottom: 6px;
}

.single-button__wrap {
  display: table;
  margin: 0 auto;
  justify-content: center;
  padding: 30px 0;
}
.single-button__wrap.-nopd {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .single-button__wrap .l-nav__item:not(:last-child) {
    display: block !important;
  }
.c-form .mwform-radio-field-text::before {
  left: 10px;
}
.c-form .mwform-radio-field-text {
  padding: 20px 10px 20px 40px;
}
}
.l-page__afterservice {
  padding-bottom: 45px;
}
.l-page__afterservice .l-page__afterservice__ttl {
  font-size: 2.9rem;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 30px;
}
.l-page__afterservice .l-page__afterservice__list {
  display: flex;
  gap: 0 25px;
  justify-content: center;
  margin-bottom: 30px;
}
.l-page__afterservice .l-page__afterservice__list li {
  font-weight: bold;
}
.l-page__afterservice .l-page__afterservice__list li span {
  background: url(../img/icon/ico-check@3x.png) no-repeat left center;
  background-size: 22px;
  padding-left: 25px;
}
.l-page__afterservice .l-page__afterservice__tel {
  text-align: center;
  width: 350px;
  margin: 0 auto;
}
.l-page__afterservice .l-page__afterservice__tel p {
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .l-page__afterservice {
    padding-top: 45px;
    padding-bottom: 0;
  }
  .l-page__afterservice .l-page__afterservice__ttl {
    font-size: 2.3rem;
  }
  .l-page__afterservice .l-page__afterservice__list {
    flex-wrap: wrap;
  }
  .l-page__afterservice .l-page__afterservice__tel {
    width: 62%;
  }
}


/* 初期状態（PC表示） */
.pc-enable {
  display: block;
}
.sp-enable {
  display: none;
}

/* 760px以下の時（スマホ表示） */
@media screen and (max-width: 760px) {
  .l-page__afterservice .l-page__afterservice__list ul {
    display: flex;
    gap: 0 15px;
    margin-bottom: 15px;
  }
  .l-page__afterservice .l-page__afterservice__list ul:last-child {
    margin-bottom: 0;
  }
  .pc-enable {
    display: none;
  }
  .sp-enable {
    display: block;
  }
}


@media screen and (min-width: 768px) {
  .l-nav__m .c-btn--a {
    width: 100%;
  }
    .c-post-works__hdr {
      justify-content: left;
    }
}
.c-post-works__hdr>* {
  width: fit-content;
}
.c-post-works__cat {
  margin-left: 10px;
  margin-top: 3px;
}

@media screen and (max-width: 767px) {
  .c-post-works__col.is-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 4%; /* 任意：間隔を調整 */
  }

  .c-post-works__col.is-flex .c-post-works__fig {
    width: 48%; /* 2列化 */
  }
}

@media screen and (min-width: 768px) {
.c-posts-b {
    justify-content: center;
    gap: 0 40px;
}
}


.c-icon--search {
    background-image: url(../img/icon/ico-search.svg);
    width: 21px;
    height: 21px;
}
.c-icon--calendar {
    background-image: url(../img/icon/ico-calendar@2x.png);
    width: 16px;
    height: 16px;
}
.c-icon--newb {
    background-image: url(../img/icon/ico-new.png);
    width: 21px;
    height: 16px;
}
.l-footer__bnr {
  width: 560px;
}
@media screen and (max-width: 767px) {
.l-footer__bnr {
  width: 100%;
}
}
.l-footer__bnr ul {
  display: flex;
  gap: 0 15px;
}

.l-footer__wrap-tel {
  display: flex;
  width: 320px;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
.l-footer__wrap-tel {
  width: 60%;
  margin: 0 auto;
}
.l-footer__wrap-tel .label {
  width: 19.4px;
}
.l-footer__wrap-tel ul li {
  width: 200px;
}
.l-footer__logo_bottom {
  display: none
}
.l-footer__wrap-addr img {
  width: 100% !important;
}
}

.ico-and {
  width: 44px;
  margin-right: 10px;
  position: relative;
  top: 7px;
  display: inline-block;
}
@media screen and (max-width: 767px) {
.ico-and {
  width: 25px;
  margin-right: 10px;
  top: 4px;
}
}

.l-nav__m .l-nav__btn {
    position: absolute;
    right: 15px;
    top: 16px;
}

.blogbnr {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
.c-map-col {
  gap: 0 15px;
}
.c-map-col__wrap-btn {
  width: calc(100% / 3 - 10px);
  margin-right: 0;
}
.c-map-col .c-map-col__wrap-btn:last-child {
}
}
@media screen and (max-width: 767px) {
  .c-map-col {
    display: flex;
    gap: 0 15px;
    width: 96%;
    margin: 0 auto;
  }
}


/* 共通：矢印ボタンのスタイル */
.slick-prev, .slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 40px;
  height: 40px;
  background: rgba(0, 0, 0, 0.4); /* 半透明背景 */
  border: none;
  border-radius: 50%;
  cursor: pointer;
  padding: 0;
  outline: none;
  font-size: 0; /* テキストを視覚的に消す */
  color: transparent; /* 万一フォントサイズ効かない場合の保険 */

}

/* 左矢印の位置 */
.slick-prev {
  left: 10px;
}

/* 右矢印の位置 */
.slick-next {
  right: 10px;
}

/* 擬似要素で矢印アイコンをCSSだけで作成 */
.slick-prev::before,
.slick-next::before {
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* 左矢印（←）の角度 */
.slick-prev::before {
  transform: translate(-50%, -50%) rotate(-135deg);
}

/* 右矢印（→）の角度 */
.slick-next::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

/* ホバー時に少し濃く */
.slick-prev:hover, .slick-next:hover {
  background: rgba(0, 0, 0, 0.7);
}


@media screen and (max-width: 767px) {
  .l-page__content {
    padding-top: 70px !important;
  }
  .c-post-sale__hdr {
    padding-bottom: 0 !important;
  }
  .c-post-sale__ph figure {
    overflow: hidden;
  }
  .c-post-sale__ph figcaption p {
    min-height: auto !important;
  }
  .c-post-sale__ol td div {
    margin-right: 1vw;
  }
  .l-header {
    padding: 3vw 5vw !important;
  }
}

@media screen and (min-width: 768px) {
  .js-slick-sub {
  }
}
@media screen and (max-width: 767px) {
  .js-slick-sub {
  }
}

.p-home-map__body .c-map-col .c-map-col__wrap-btn {
  width: calc(100% / 3 - 10px);
}
@media screen and (max-width: 767px) {
.p-home-map__body .c-map-col {
  flex-wrap: wrap;
}
.p-home-map__body .c-map-col .c-map-col__wrap-btn {
  width: 100% !important;
}
}

.p-home-chice-ttl {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  padding-bottom: 0px;
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .p-home-chice-ttl {
  }
}
.l-nav__item {
  display: table-cell !important;
}

.p-home-visual-front .slick-slide {
  height: 56vw;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
.p-home-visual-front .slick-slide {
  height: 39.4vh;
}
}
@media screen and (min-width: 768px) {
.l-nav__link__flex {
  display: flex;
  flex-wrap: wrap;
  gap: 0 5px;
}
.l-nav__link__flex div {
  width: calc(100% / 2 - 3px);
}
.l-nav__m-cont {
  padding: 59px 15px;
}
.l-nav__m .c-btn--a {
  width: 100%;
}
.l-nav__m .c-btn--a {
  font-size: 1.3rem;
}
}
@media screen and (max-width: 768px) {
.l-nav__link__flex {
  display: flex;
  flex-wrap: wrap;
  gap: 0 5px;
}
.l-nav__link__flex div {
  width: calc(100% / 2 - 3px);
}
.l-nav__m .c-btn--a {
  width: 100%;
  padding-left: 30px;
}
}

.l-nav__btn-bar {
  border-radius: 10px;
}
.c-blog-post__hdr {
  justify-content: left !important;
}
@media screen and (max-width: 768px) {
.hidden-sp {
  display: none;
}
}

.c-posts-b__ttl a {
  color: inherit;
}
@media screen and (min-width: 768px) {
.c-post-sale__ph {
  width: 100%;
}
.c-post-sale__wrap-thumb {
  width: 100%;
}
.c-post-sale__thumb {
  margin-top: 20px;
}
.c-post-sale__thumb>* {
  width: 21%;
  height: 120px;
}
}


@media screen and (max-width: 767px) {
    .c-sale__props th {
        width: 4.0em;
    }
    .area-category {
      flex-flow: column;
    }
    .area-category .c-map-col__wrap-btn {
      width: 95vw;
    }
}

  .area-category .c-btn--loc {
  background: #fff;
  color: #333;
  }
  .area-category .c-btn--loc.is-active {
    background: #333333;
    color: #ffffff;
  }
  .area-category .c-btn--loc:hover {
    background: #333333;
    color: #ffffff;
  }
  .area-category .c-btn--loc.is-hover:hover {
    background: #333333;
    color: #ffffff;
  }

@media screen and (max-width: 767px) {
  .c-btn--loc {
  padding: 3vw 3vw;
  font-size: 3.2vw;
  }
  .c-btn--loc.is-active {
  }
}

@media screen and (min-width: 768px) {
.p-home-map {
  padding-bottom: 80px;
}
}

.c-btn--loc {
  font-size: 1.7rem;
}
.p-sale-tab__btn {
  font-size: 1.7rem;
}

@media screen and (min-width: 768px) {
  .p-sale-tab__btn {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-flow: column;
  }
}

.p-sale-tab__btn.is-active.u-fill-land {
  color: #ffffff !important;
}
@media screen and (min-width: 768px) {
}

.mapn iframe {
  width: 100%;
  height: 390px;
}


@media screen and (min-width: 768px) {

    .c-form__table th {
        width: 245px;
    }
    .c-form .mwform-radio-field-text {
    }
}

@media screen and (max-width: 767px) {
    .c-bread {
      display: block;
    }
}

.p-works-hash li.is-active a {
  color: #fff;
  background-color: #333;
  border-radius: 4px;
  padding: 0.2em 0.5em;
}


.syubetsu-col {
  flex-flow: column;
  gap: 12px 0;
  margin-bottom: 20px !important;
}
.syubetsu-col .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}


/* リスト全体のレイアウト */
.p-home-choice {
  display: flex;
  justify-content: center;
  gap: 20px; /* ボタン間の余白 */
  list-style: none;
  padding: 0;
  margin: 30px auto 40px;
}

/* 各ボタンの共通スタイル */
.p-home-choice__item {
  flex: 1; /* 横幅を均等に */
  background-color: #fff; /* 背景白 */
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.4); 
  transition: opacity 0.3s;
}

.p-home-choice__item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 25px 10px; /* 内側の余白 */
  text-decoration: none;
  color: #333; /* 文字色 */
  box-sizing: border-box;
}

/* ホバー時の挙動 */
.p-home-choice__item a.is-hover:hover {
  opacity: 0.7;
}

/* メインタイトルの文字サイズ */
.p-home-choice__item .title {
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 0;
  letter-spacing: 0.05em;
}

/* サブタイトルの文字サイズ */
.p-home-choice__item .sub-title {
  font-size: 16px;
  color: #666;
}

/* --- 各ボタンごとの色設定（下線） --- */

/* 建売住宅（緑） */
.p-home-choice__concept {
  border-bottom: 8px solid #6cb02c; /* 元画像に近い緑 */
}

/* 土地（黄緑） */
.p-home-choice__sale {
  border-bottom: 8px solid #b5c62d; /* 元画像に近い黄緑 */
}

/* 販売予定（黄色） */
.p-home-choice__ready {
  border-bottom: 8px solid #eeb902; /* 元画像に近い黄色 */
}


/* --- スマホ対応（レスポンシブ） --- */
@media screen and (max-width: 768px) {
  .p-home-choice {
    flex-direction: column; /* 縦並びにする */
    padding: 0 15px;
  }
  
  .p-home-choice__item {
    width: 100%;
    margin-bottom: 15px;
  }
  .p-home-choice>li {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
.p-home-visual-front img {
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
}
}

@media screen and (max-width: 767px) {
.p-home-choice {
    display: flex;
    justify-content: center;
    gap: 20px 6px;
    list-style: none;
    padding: 0;
    margin: 30px auto 0;
    flex-flow: inherit;
}
.p-home-choice__item .title {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 0;
    letter-spacing: 0.05em;
}
.p-home-choice__item .sub-title {
    font-size: 10px;
    color: #666;
}
}

h2.wp-block-heading {
  font-size: 2.1rem;
  padding: 10px;
  padding-bottom: 16px;
  line-height: 1.2;
}
h3.wp-block-heading {
  font-size: 1.8rem;
  padding: 10px;
  padding-bottom: 16px;
  line-height: 1.2;
}
h4.wp-block-heading {
  font-size: 1.6rem;
  padding: 10px;
  padding-bottom: 16px;
  line-height: 1.2;
}


@media screen and (max-width: 767px) {
.c-container, .c-container--m, .c-container--s, .c-container--ss, .c-container--xs {
  width: 100% !important;
  overflow: hidden;
}
}
/* =========================================================
   special_event / イベント一覧（アーカイブ）
   ========================================================= */
.p-event{ background:#fff; border-radius:12px; padding:56px 40px; }
.p-event__sec{ margin-bottom:64px; }
.p-event__sec:last-child{ margin-bottom:0; }
.p-event__hdr{ text-align:center; margin-bottom:28px; }
.p-event__ttl{ font-size:2.6rem; font-weight:700; letter-spacing:.06em; }
.p-event__filter{ display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-bottom:36px; }
.p-event__filter-btn{ -webkit-appearance:none; appearance:none; background:#fff; border:1px solid #333; border-radius:999px; padding:12px 32px; font-size:1.5rem; line-height:1; color:#333; cursor:pointer; transition:.2s; }
.p-event__filter-btn.is-active{ background:#333; color:#fff; }
.p-event__list{ display:grid; grid-template-columns:repeat(3,1fr); gap:34px 24px; list-style:none; padding:0; margin:0; }
.p-event__empty{ text-align:center; color:#666; }
.p-event-card__link{ display:block; color:inherit; text-decoration:none; }
.p-event-card__thumb{ position:relative; aspect-ratio:4/3; background:#e9e9e9 center center/cover no-repeat; overflow:hidden; }
.p-event-card__area{ position:absolute; top:8px; left:8px; z-index:2; background:#fff; border:1px solid #cfcfcf; color:#333; font-size:1.2rem; line-height:1; padding:6px 10px; }
.p-event-card__reserve{ position:absolute; top:8px; right:8px; z-index:2; background:#b5382c; color:#fff; font-size:1.2rem; line-height:1; padding:6px 10px; }
.p-event-card.is-ended .p-event-card__thumb{ filter:grayscale(1) brightness(1.04); }
.p-event-card.is-ended .p-event-card__thumb::after{ content:""; position:absolute; inset:0; background:rgba(120,120,120,.35); }
.p-event-card__ended{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:3; color:#fff; font-size:1.6rem; font-weight:700; letter-spacing:.05em; text-shadow:0 1px 5px rgba(0,0,0,.45); }
.p-event-card__meta{ margin:14px 0 0; }
.p-event-card__row{ display:flex; align-items:flex-start; gap:10px; margin-top:8px; font-size:1.4rem; line-height:1.5; }
.p-event-card__row dt{ flex:0 0 auto; background:#8cc63f; color:#fff; font-size:1.15rem; line-height:1; padding:6px 11px; margin-top:2px; white-space:nowrap; }
.p-event-card__row dd{ flex:1 1 auto; margin:0; color:#333; }
@media screen and (max-width:767px){
  .p-event{ padding:36px 18px; border-radius:10px; }
  .p-event__sec{ margin-bottom:48px; }
  .p-event__ttl{ font-size:2rem; }
  .p-event__filter{ gap:10px; margin-bottom:28px; }
  .p-event__filter-btn{ padding:11px 22px; font-size:1.3rem; }
  .p-event__list{ grid-template-columns:repeat(2,1fr); gap:24px 12px; }
  .p-event-card__row{ font-size:1.2rem; gap:8px; }
  .p-event-card__row dt{ font-size:1.05rem; padding:5px 8px; }
}

/* =========================================================
   special_event / イベント詳細（single）
   ========================================================= */
.p-evsingle{ display:flex; align-items:stretch; gap:44px; padding:52px 0 8px; }
.p-evsingle__main{ flex:1 1 auto; min-width:0; }
.p-evsingle__side{ flex:0 0 340px; }
.p-evsingle__summary{ position:-webkit-sticky; position:sticky; top:110px; background:#fff; border:1px solid #eee; border-radius:16px; padding:26px 24px; box-shadow:0 2px 14px rgba(0,0,0,.05); }
.p-evsingle__ttl{ font-size:1.9rem; font-weight:700; line-height:1.45; margin-bottom:16px; }
.p-evsingle__info{ margin:0 0 22px; border-top:1px solid #eee; }
.p-evsingle__info-row{ display:flex; gap:10px; padding:11px 2px; border-bottom:1px solid #eee; font-size:1.35rem; line-height:1.5; }
.p-evsingle__info-row dt{ flex:0 0 46px; color:#8cc63f; font-weight:700; }
.p-evsingle__info-row dd{ flex:1 1 auto; margin:0; color:#333; }
.p-evsingle__apply{ display:flex; align-items:center; justify-content:center; text-align:center; background:#a3c052; color:#fff; font-size:1.7rem; font-weight:700; border-radius:10px; padding:20px 10px; margin-bottom:14px; transition:.2s; }
.p-evsingle__apply:hover{ opacity:.85; }
.p-evsingle__sp{ display:flex; align-items:center; justify-content:center; gap:8px; text-align:center; background:#fff; border:2px solid #848484; color:#333; font-size:1.4rem; font-weight:700; border-radius:10px; padding:16px 10px; margin-bottom:18px; transition:.2s; }
.p-evsingle__line{ display:block; background:#7cbf42; color:#fff; border-radius:12px; padding:20px; }
.p-evsingle__line-ttl{ display:block; font-size:1.7rem; font-weight:700; margin-bottom:8px; }
.p-evsingle__line-txt{ display:block; font-size:1.3rem; line-height:1.6; }
.p-evsingle__gallery{ margin-bottom:30px; }
.p-evsingle__gallery.slick-slider{ margin-bottom:30px; }
.p-evsingle__slide img{ width:100%; height:auto; display:block; }
.p-evsingle__lead{ font-size:1.5rem; line-height:2; margin-bottom:40px; }
.p-evsingle__sec{ margin-bottom:40px; }
.p-evsingle__h2{ font-size:2.2rem; font-weight:700; text-align:center; margin-bottom:22px; }
.p-evsingle__mapbox{ line-height:0; border-radius:8px; overflow:hidden; }
.p-evsingle__mapaddr{ margin-top:10px; font-size:1.4rem; }
.p-evsingle__cta{ text-align:center; margin:44px 0; }
.p-evsingle__cta-btn{ display:inline-flex; align-items:center; justify-content:center; background:#a3c052; color:#fff; font-size:1.7rem; font-weight:700; border-radius:10px; padding:20px 60px; transition:.2s; }
.p-evsingle__cta-btn:hover{ opacity:.85; }
.p-evsingle__back{ text-align:center; margin:24px 0 10px; }
.p-evsingle .slick-prev, .p-evsingle .slick-next{ z-index:2; width:36px; height:36px; }
.p-evsingle .slick-prev{ left:10px; } .p-evsingle .slick-next{ right:10px; }
@media screen and (max-width:900px){
  .p-evsingle{ flex-direction:column; gap:28px; padding:34px 0 4px; }
  .p-evsingle__side{ flex-basis:auto; width:100%; }
  .p-evsingle__summary{ position:static; top:auto; }
  .p-evsingle__h2{ font-size:1.9rem; }
  .p-evsingle__lead{ font-size:1.4rem; }
}

/* イベント詳細：サイドメニューを右カラムへ（SPは上） */
.p-evsingle__main{ order:1; }
.p-evsingle__side{ order:2; }
@media screen and (max-width:900px){
  .p-evsingle__main{ order:2; }
  .p-evsingle__side{ order:1; }
}

/* =========================================================
   special_event 詳細：白カード・固定セクション・フォーム
   ========================================================= */
.p-evsingle__card{ background:#fff; border-radius:8px; padding:34px 34px 40px; }
.p-evsingle__card .p-evsingle__lead{ margin-bottom:0; }
.p-evsingle__gallery{ margin-bottom:24px; }
.p-evsingle__midokoro{ font-size:2rem; font-weight:700; margin:6px 0 18px; }
.p-evsingle__block{ margin-top:36px; }
.p-evsingle__panel{ background:#fff; border-radius:8px; padding:44px 40px; }
.p-evsingle__panel .p-evsingle__h2{ margin-bottom:26px; }

.p-evexp{ list-style:none; margin:0 auto; padding:0; max-width:900px; display:flex; flex-direction:column; gap:18px; }
.p-evexp__item{ display:flex; align-items:stretch; border:2px solid #a3c052; border-radius:8px; overflow:hidden; background:#fff; }
.p-evexp__ph{ flex:0 0 44%; max-width:44%; }
.p-evexp__ph img{ width:100%; height:150px; object-fit:cover; display:block; }
.p-evexp__txt{ flex:1 1 auto; display:flex; align-items:center; margin:0; padding:20px 28px; font-size:1.7rem; font-weight:700; line-height:1.7; }
.p-evexp__txtin{ display:block; }
.p-evexp__txt .marker{ background:linear-gradient(transparent 58%,#fff33f 58%); color:inherit; padding:0; }

.p-evmap{ line-height:0; border-radius:8px; overflow:hidden; }
.p-evmap__addr{ margin-top:14px; font-size:1.4rem; text-align:center; line-height:0; }
.p-evmap__addr{ line-height:1.6; }
.p-evmap__pin{ display:inline-block; background:#000; color:#fff; border-radius:100px; font-size:1.3rem; line-height:1; padding:6px 10px; margin-right:8px; }

.p-evworry__inner{ background:#D6E8F3; border-radius:16px; padding:44px 40px; }
.p-evworry__row{ display:flex; align-items:center; gap:30px; margin-top:22px; }
.p-evworry__ph{ flex:0 0 200px; margin:0; }
.p-evworry__ph img{ width:100%; }
.p-evworry__body{ flex:1 1 auto; }
.p-evworry__ttl{ font-size:2.1rem; font-weight:700; text-align:center; margin-bottom:0; line-height:1.5; width:100%; }
.p-evworry__ttl span{ color:#5b8fc0; }
.p-evworry__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
.p-evworry__list li{ position:relative; background:#fff; border:1px solid #9bbcd8; border-radius:6px; padding:20px; }
.p-evworry__no{ position:absolute; top:-11px; left:16px; background:#5b8fc0; color:#fff; font-size:1.2rem; font-weight:700; border-radius:4px; padding:4px 10px; }
.p-evworry__list p{ margin:4px 0 0; font-size:1.5rem; font-weight:700; line-height:1.6; }
.p-evworry__list b{ color:#5b8fc0; }
.p-evworry__cta{ background:#fff; border-radius:8px; padding:40px; margin-top:16px; display:flex; align-items:center; gap:30px; }
.p-evworry__cta-ph{ flex:0 0 240px; margin:0; }
.p-evworry__cta-ph img{ width:100%; }
.p-evworry__cta-body{ flex:1 1 auto; }
.p-evworry__cta-ttl{ font-size:2.1rem; font-weight:700; line-height:1.5; margin-bottom:22px; }
.p-evworry__cta-ttl mark{ background:linear-gradient(transparent 60%,#fff33f 60%); color:inherit; }
.p-evworry__cta-btns{ display:flex; flex-direction:column; gap:14px; max-width:360px; }
.p-evworry__access{ display:flex; align-items:center; justify-content:center; background:#5b8fc0; color:#fff; font-size:1.6rem; font-weight:700; border-radius:10px; padding:16px 10px; transition:.2s; }
.p-evworry__access:hover{ opacity:.85; }

.p-evform{ max-width:860px; margin:0 auto; }
.p-evform__tel{ text-align:center; margin-top:36px; padding-top:26px; border-top:1px solid #ddd; }
.p-evform__tel dt{ font-weight:700; font-size:1.5rem; }
.p-evform__tel dd{ margin:6px 0 8px; }
.p-evform__tel dd a{ font-size:3rem; font-weight:700; color:#333; }
.p-evform__tel p{ font-size:1.4rem; }

@media screen and (max-width:900px){
  .p-evsingle__card{ padding:22px 18px 26px; }
  .p-evsingle__panel{ padding:28px 18px; }
  .p-evexp__txt{ font-size:1.4rem; padding:14px 16px; }
  .p-evworry__inner{ padding:28px 18px; }
  .p-evworry__row,.p-evworry__cta{ flex-direction:column; }
  .p-evworry__cta{ padding:28px 18px; }
  .p-evworry__ph,.p-evworry__cta-ph{ flex-basis:auto; width:160px; }
  .p-evworry__cta-btns{ max-width:100%; width:100%; }
  .p-evform__tel dd a{ font-size:2.4rem; }
}
@media screen and (max-width:560px){
  .p-evexp__item{ flex-direction:column; }
  .p-evexp__ph{ flex-basis:auto; max-width:100%; }
  .p-evexp__ph img{ height:180px; }
}

/* イベント詳細：お問い合わせフォーム以降は1カラム全幅 */
.p-evsingle__block--full{ margin-top:36px; }
.p-evsingle__block--full .p-evform{ max-width:860px; }

/* イベント詳細：スマホに送る QRポップアップ */
.p-evsingle__sp{ width:100%; -webkit-appearance:none; appearance:none; cursor:pointer; font-family:inherit; }
.p-evqr[hidden]{ display:none; }
.p-evqr{ position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:20px; }
.p-evqr__overlay{ position:absolute; inset:0; background:rgba(0,0,0,.55); }
.p-evqr__box{ position:relative; z-index:1; background:#fff; border-radius:8px; padding:38px 34px 30px; text-align:center; width:340px; max-width:100%; box-shadow:0 12px 44px rgba(0,0,0,.3); }
.p-evqr__close{ position:absolute; top:6px; right:12px; background:none; border:none; font-size:2.8rem; line-height:1; color:#999; cursor:pointer; }
.p-evqr__ttl{ font-size:1.7rem; font-weight:700; margin-bottom:18px; }
.p-evqr__img{ width:240px; height:240px; max-width:100%; }
.p-evqr__txt{ margin-top:16px; font-size:1.3rem; line-height:1.7; color:#555; }

/* =========================================================
   special_event 詳細：ヘッダーブロック＆共通ボタン（構成修正）
   ========================================================= */
.p-evhead{ display:flex; gap:26px; align-items:flex-start; margin-bottom:20px; }
.p-evhead__ph{ flex:0 0 46%; max-width:46%; margin:0; }
.p-evhead__ph img{ width:100%; display:block; border-radius:4px; }
.p-evhead__info{ flex:1 1 auto; min-width:0; }
.p-evhead__ttl{ font-size:2.3rem; font-weight:700; line-height:1.45; margin:2px 0 16px; }
.p-evinfo{ margin:0; }
.p-evinfo dt{ font-size:1.4rem; font-weight:400; color:#555; }
.p-evinfo dd{ margin:0 0 10px; font-size:1.5rem; line-height:1.6; }
.p-evhead__btns{ display:flex; gap:16px; margin-bottom:36px; }
.p-evhead__btns .p-evbtn{ flex:1 1 0; }
.p-evbtn{ display:flex; align-items:center; justify-content:center; text-align:center; border-radius:8px; padding:18px 12px; font-size:1.6rem; font-weight:700; color:#fff; transition:.2s; }
.p-evbtn:hover{ opacity:.85; color:#fff; }
.p-evbtn--apply{ background:#a3c052; }
.p-evbtn--access{ background:#5b8fc0; }
/* サイド：チラシ＋概要＋ボタン */
.p-evsingle__ph{ margin:0 0 16px; }
.p-evsingle__ph img{ width:100%; display:block; border-radius:4px; }
.p-evsingle__summary .p-evinfo{ margin-bottom:20px; }
.p-evsingle__summary .p-evbtn--apply{ font-size:1.7rem; padding:20px 10px; margin-bottom:14px; }
.p-evworry__cta-btns .p-evbtn{ width:100%; }
@media screen and (max-width:900px){
  .p-evhead{ flex-direction:column; gap:16px; }
  .p-evhead__ph{ flex-basis:auto; max-width:100%; }
  .p-evhead__btns{ flex-direction:column; }
}

/* =========================================================
   special_event 詳細：見どころスライダー（大1＋右上下2）＆ドット/矢印
   ========================================================= */
.p-evsingle__gallery{ margin-bottom:26px; }
.p-evslide{ display:flex; gap:10px; }
.p-evslide__main{ flex:0 0 63%; max-width:63%; }
.p-evslide__main img{ width:100%; height:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.p-evslide__sub{ flex:1 1 auto; display:flex; flex-direction:column; gap:10px; }
.p-evslide__subitem{ flex:1 1 0; overflow:hidden; }
.p-evslide__subitem img{ width:100%; height:100%; object-fit:cover; display:block; }
/* ドット */
.p-evsingle__gallery .slick-dots{ position:static; display:flex; justify-content:center; gap:9px; list-style:none; margin:16px 0 0; padding:0; }
.p-evsingle__gallery .slick-dots li{ width:auto; height:auto; margin:0; }
.p-evsingle__gallery .slick-dots li button{ width:11px; height:11px; padding:0; border-radius:50%; background:#cfcfcf; border:none; font-size:0; line-height:0; text-indent:-9999px; overflow:hidden; }
.p-evsingle__gallery .slick-dots li button::before{ display:none; }
.p-evsingle__gallery .slick-dots li.slick-active button{ background:#a3c052; }
/* 来場でできること：画像の斜めカット */
.p-evexp__ph img{ clip-path:polygon(0 0, 100% 0, 90% 100%, 0 100%); }
@media screen and (max-width:560px){
  .p-evexp__ph img{ clip-path:none; }
  .p-evslide__main{ flex-basis:60%; max-width:60%; }
}

/* イベント詳細：埋め込みMW WP Formの調整 */
.p-evform{ max-width:none; }
.p-evform.c-container--ss{ margin-left:auto; margin-right:auto; }
/* 画面ごとの送信ボタン表示制御（入力画面で「送信する」、確認画面で「確認画面へ」を隠す） */
.mw_wp_form_input input[name="mwform_submit"]{ display:none; }
.mw_wp_form_confirm input[name="submitConfirm"]{ display:none; }

/* イベント詳細：MW WP Form 送信ボタンの画面別表示（確認/送信/戻る） */
.mw_wp_form_input .c-form__btn-item--submit,
.mw_wp_form_input .c-form__btn-item--back{ display:none; }
.mw_wp_form_confirm .c-form__btn-item--conf{ display:none; }

/* イベント詳細：電話アイコンの縦位置 */
.p-evform__tel .c-icon--tel{ vertical-align:middle; position:relative; top:-2px; }
/* イベント一覧へ戻るボタン：幅を広く＋右の線を1px（right:0 top:50%） */
.p-evsingle__back .c-btn{ min-width:340px; text-align:center; padding-top:28px; padding-bottom:28px; }
.p-evsingle__back .c-btn .c-icon--bar{ right:14px; top:50%; transform:translateY(-50%); width:16px; height:3px; border-radius:3px; }


/* イベント詳細フォームのみ：入力欄の背景色 #E4E4E0 */
.p-evform .c-form input[type="text"],
.p-evform .c-form input[type="email"],
.p-evform .c-form input[type="tel"],
.p-evform .c-form input[type="number"],
.p-evform .c-form textarea,
.p-evform .c-form select{ background:#E4E4E0; }

/* LINEで簡単相談：右下 fixed（画像1枚） */
.p-evline-fixed{ position:fixed; right:20px; bottom:20px; z-index:60; display:block; width:240px; line-height:0; border-radius:0; overflow:hidden; box-shadow:0 4px 16px rgba(0,0,0,.22); transition:transform .2s; }
.p-evline-fixed img{ width:100%; display:block; }
.p-evline-fixed:hover{ transform:translateY(-3px); }
@media screen and (max-width:900px){ .p-evline-fixed{ width:160px; right:12px; bottom:12px; } }

/* ===== イベント：追加調整 ===== */
/* mail アイコンを png に */
.p-evsingle__sp .c-icon--mail{ background-image:url("../img/icon/mail.png"); background-size:contain; background-repeat:no-repeat; width:27px; height:21px; }

/* フォーム：「*は入力必須事項です。」を中央 */
.p-evform .c-form__desc{ text-align:center; }

/* フォーム：チェックボックスもグレー（#E4E4E0） */
.p-evform .c-form input[type="checkbox"] ~ span:before{ background:#E4E4E0; }

/* フォーム：項目間の余白を拡げる */
.p-evform .c-form__table th,
.p-evform .c-form__table td{ padding-top:30px; padding-bottom:30px; }
.p-evform .mwform-checkbox-field label{ margin-right:22px; margin-bottom:12px; }
/* ラジオ/チェックの選択肢は縦間隔を詰めて整える */
.p-evform .mwform-radio-field-text,
.p-evform .mwform-checkbox-field-text{ padding-top:6px; padding-bottom:6px; }

/* ラジオの選択肢もグレーの帯に（入力欄と統一） */
.p-evform .mwform-radio-field{ display:block; margin-bottom:10px; }
.p-evform .mwform-radio-field-text{ background:#E4E4E0; }
/* ラベル（項目名）と入力欄の間に余白 */
.p-evform .c-form__table th{ padding-right:40px; }

/* 一覧：上下の余白バランス調整（このページのみ） */
.p-event-archive.c-fill-box--hang{ margin-top:50px; padding-bottom:50px; padding-top:60px; }
.p-ev-arch-outer{ padding-bottom:210px; }
@media screen and (max-width:900px){
  .p-event-archive.c-fill-box--hang{ margin-top:40px; padding-bottom:36px; padding-top:40px; }
  .p-ev-arch-outer{ padding-bottom:150px; }
}

