@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
#body_wrap {
  opacity: 0;
  animation: b_fadeIn 0.4s ease-in forwards;
}

@keyframes b_fadeIn {
  to {
    opacity: 1;
  }
}

a {
  transition: all 0.3s !important;
}

a:hover {
  opacity: 0.6;
}

a[href^="tel:"] {
  pointer-events: none;
}

.br_pc {
  display: block;
}

.br_tb_n {
  display: block;
}

.br_tb_b,
.br_sp {
  display: none;
}

li {
  list-style: none;
}

figure img {
  -o-object-fit: cover;
  object-fit: cover;
}

/* =========================================================
//  ヘッダー
// ========================================================= */
.c-headLogo {
  max-width: 400px;
  height: 3.5vw;
  min-height: 60px;
}

/* お問合せボタン */
.h_contact_btn a {
  color: #144a27 !important;
  text-align: center;
  background: #fff;
  width: 152px;
  height: 67px !important;
  display: block;
  margin: 0 1.5rem 0 0;
  border-radius: 100px;
  align-content: center;
  transition: transform 0.3s ease, border 0.3s ease;
  border: 1px solid transparent;
  box-shadow: 0px 0px 6px 0px rgba(20, 74, 39, 0.4);
}
.h_contact_btn a span {
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem) !important;
  font-weight: 600 !important;
}
.h_contact_btn a:hover {
  opacity: 1 !important;
  color: #fff !important;
  background: #ff69b4;
  border: 1px solid #fff;
}
.c-gnav.is-scrolled .h_contact_btn a:hover {
  opacity: 0.6 !important;
  color: #144a27 !important;
}

/* ヘッダーを固定 */
@media (min-width: 960px) {
  .l-header {
    position: fixed !important;
    background: transparent;
  }
  .p-breadcrumb {
    margin-top: calc(var(--logo_size_pc) + 32px);
  }
}
/* 下層ページのヘッダー幅をトップに合わせる */
.l-header .l-container {
  max-width: 100% !important;
  padding: 0.5rem 2rem 0;
}

/* -------------------------------------
 * PCでハンバーガーボタンを表示させる設定 
 * ------------------------------------- */
.l-header__menuBtn.sp_ {
  display: block !important;
  background: #144a27;
  width: 68px;
  height: 68px;
  border-radius: 60px;
}

.-series .l-header__inner {
  align-items: center;
}

.p-spMenu {
  display: block;
}

/* ハンバーガーメニューアイコン */
.-menuBtn .c-iconBtn__icon {
  width: 30px;
  height: 1px;
  background-color: #fff;
  display: grid;
  place-items: center;
  transition: transform 0.3s;
}

.-menuBtn .c-iconBtn__icon::before,
.-menuBtn .c-iconBtn__icon::after {
  grid-area: 1/1;
  content: "";
  display: block;
  inset: 0;
  width: 30px;
  height: 1px;
  background-color: #fff;
  transition: transform 0.3s;
}

.-menuBtn .c-iconBtn__icon::before {
  transform: translateY(-12px);
}

.-menuBtn .c-iconBtn__icon::after {
  transform: translateY(12px);
}

/* ハンバーガーメニューメニューアイコン（オープン時） */
.p-spMenu__closeBtn {
  display: block !important;
  background: #144a27;
  width: 68px;
  height: 68px !important;
  border-radius: 60px;
}

[data-spmenu=opened] .-menuBtn .c-iconBtn__icon::before {
  background-color: #fff;
  transform: rotate(45deg);
}

[data-spmenu=opened] .-menuBtn .c-iconBtn__icon {
  background-color: transparent;
}

[data-spmenu=opened] .-menuBtn .c-iconBtn__icon::after {
  background-color: #fff;
  transform: rotate(-45deg);
}

/* ボタンラベル */
.l-header__menuBtn .c-iconBtn::after,
.p-spMenu__closeBtn .c-iconBtn::after {
  font-size: 10px;
}

/* ボタンラベル（開くボタン） */
.l-header__menuBtn .c-iconBtn::after {
  /* 	content: 'MENU'; */
}

/* ボタンラベル（閉じるボタン） */
.p-spMenu__closeBtn .c-iconBtn::after {
  /* 	content: 'CLOSE'; */
}

/* ---------------------------------
 * 開閉メニューのフルスクリーン設定
 * --------------------------------- */
.p-spMenu__inner {
  --color_menu_text: #333; /* メニューテキストの色 */
  --color_menu_bg: #fff; /* フルスクリーンメニューの背景色 */
  width: 29%;
}

.p-spMenu__overlay {
  background: rgba(20, 74, 39, 0.7);
}

.-right .p-spMenu__inner {
  transform: translateX(0);
  opacity: 0;
  transition: opacity 0.45s;
}

[data-spmenu=opened] .p-spMenu__inner {
  transform: translateX(0);
  opacity: 1;
}

.p-spMenu__inner::before {
  background: var(--color_menu_bg);
  opacity: 1;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

/* --------------------------------
 * フルスクリーンメニュー内の設定
 * -------------------------------- */
.p-spMenu__body {
  height: auto !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 700;
  color: var(--color_menu_text);
  padding: 0.5rem 5vw 0 !important;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

@media (max-width: 599px) {
  .p-spMenu__body {
    font-size: 5vw;
  }
}
/* 開閉メニュー内のタイトルを非表示 */
.c-widget__title.-spmenu {
  display: none;
}

/* メニューリンクの設定 */
.p-spMenu__nav {
  display: none;
}

.p-spMenu__bottom {
  width: 100%;
}
.p-spMenu__bottom ul {
  padding: 0;
  margin: 0 0 4rem;
}
.p-spMenu__bottom ul li {
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem) !important;
  font-weight: 600;
  margin: 0 0 1.4rem;
}
.p-spMenu__bottom ul li span {
  color: #888;
  font-size: clamp(0.75rem, 0.5625rem + 0.3906vw, 0.875rem);
  font-weight: 400;
}
.p-spMenu__bottom ul li a {
  display: flex;
  flex-direction: column;
  position: relative;
}
.p-spMenu__bottom ul li a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transform-origin: left;
  width: 10px;
  height: 1px;
  background-color: #888;
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.p-spMenu__bottom ul li a:hover {
  padding-left: 1.5rem;
}
.p-spMenu__bottom ul li a:hover::before {
  transform: translateY(-50%);
  opacity: 1;
}
.p-spMenu__bottom p {
  margin: 0;
}
.p-spMenu__bottom p a {
  font-size: 14px;
  font-weight: 400;
  display: block;
  position: relative;
  border-bottom: 1px solid #144a27;
}
.p-spMenu__bottom p a::after {
  content: "";
  display: inline-block;
  width: 33px;
  height: 33px;
  display: block;
  background-color: #144a27;
  -webkit-mask: url("../../uploads/2025/09/arrow2_green.svg");
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask: url("../../uploads/2025/09/arrow2_green.svg");
          mask: url("../../uploads/2025/09/arrow2_green.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
  position: absolute;
  right: 0;
  bottom: 9px;
  transition: transform 0.3s ease;
}
.p-spMenu__bottom p a span {
  font-size: clamp(1.5rem, 0.75rem + 1.5625vw, 2rem);
  font-weight: 400;
  margin: 0 1rem 0 0;
}
.p-spMenu__bottom p a:hover::after {
  transform: translateX(8px);
}
.p-spMenu__bottom figure {
  text-align: left;
}
.p-spMenu__bottom figure a {
  display: inline-block;
}

/* 閉じるボタンの設定 */
.c-iconBtn {
  color: var(--color_menu_text);
}

@media (min-width: 960px) {
  .-right .p-spMenu__closeBtn {
    right: var(--swl-pad_container, 0);
    height: calc(var(--logo_size_pc) + 32px);
    line-height: 10px;
    transform: translateX(16px) translateY(23px);
  }
}
/* =========================================================
//  フッター
// ========================================================= */
.w-beforeFooter .swell-block-fullWide__inner {
  background: rgb(255, 255, 255);
  padding: 4.5rem 0px 0px;
}

.l-footer .l-footer__inner {
  padding: 2.5rem 0 0;
}
.l-footer .swell-block-columns__inner {
  width: 1280px;
  justify-content: space-between;
}
.l-footer .titlebox {
  width: 40%;
}
.l-footer .titlebox .contact_btn {
  margin: 0 0 2.5rem;
}
.l-footer .titlebox .contact_btn a {
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem);
  font-weight: 400;
  display: block;
  position: relative;
  border-bottom: 1px solid #fff;
  line-height: 4rem;
}
.l-footer .titlebox .contact_btn a::after {
  content: "";
  display: inline-block;
  width: 33px;
  height: 33px;
  display: block;
  background-color: #fff;
  -webkit-mask: url("../../uploads/2025/09/arrow2_green.svg");
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask: url("../../uploads/2025/09/arrow2_green.svg");
          mask: url("../../uploads/2025/09/arrow2_green.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
  position: absolute;
  right: 0;
  bottom: 24px;
  transition: transform 0.3s ease;
}
.l-footer .titlebox .contact_btn a span {
  font-size: clamp(2.125rem, -0.6875rem + 5.8594vw, 4rem);
  font-weight: 400;
  letter-spacing: 0.1rem;
  margin: 0 1.5rem 0 0;
}
.l-footer .titlebox .contact_btn a:hover::after {
  transform: translateX(8px);
}
.l-footer .titlebox .add {
  font-size: 14px;
  margin: 0 0 1.2rem;
}
.l-footer .titlebox .tel {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.125rem, 0.5625rem + 1.1719vw, 1.5rem);
  font-weight: 400;
  font-optical-sizing: auto;
  font-style: normal;
  line-height: 1.1rem;
  margin: 0 0 1rem;
}
.l-footer .titlebox .tel::before {
  content: "";
  width: 21px;
  height: 21px;
  display: block;
  background-color: #fff;
  -webkit-mask: url("../../uploads/2025/09/tel_icon.svg");
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask: url("../../uploads/2025/09/tel_icon.svg");
          mask: url("../../uploads/2025/09/tel_icon.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
  margin: 0 0.5rem 0 0;
}
.l-footer .titlebox figure {
  text-align: left;
}
.l-footer .titlebox figure a {
  display: inline-block;
}
.l-footer .linkbox {
  position: relative;
}
.l-footer .linkbox ul {
  width: 100%;
  margin: 0 auto 4.5rem;
  row-gap: 0.9rem;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(3, 50px);
  row-gap: 1rem;
  position: absolute;
  right: 0;
  bottom: 0;
}
.l-footer .linkbox ul li {
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem) !important;
  font-weight: 600;
  margin: 0 0 1.4rem;
}
.l-footer .linkbox ul li span {
  color: #888;
  font-size: clamp(0.75rem, 0.5625rem + 0.3906vw, 0.875rem);
  font-weight: 400;
  display: block;
  margin: 0.1rem 0 0;
}

.l-footer .copyright {
  color: #888;
  text-align: right;
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  padding-bottom: 0.5em;
  padding-top: 1.5em;
}

/* =========================================================
//  共通
// ========================================================= */
.en {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.en2 {
  font-family: "Montserrat Alternates", sans-serif;
  font-style: normal;
}

.jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.midashi_01 {
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem) !important;
  font-weight: 600 !important;
  display: inline-block;
  letter-spacing: 0.1rem !important;
}
.midashi_01 span {
  color: #144a27;
  font-size: clamp(1.75rem, 1rem + 1.5625vw, 2.25rem) !important;
  letter-spacing: 0 !important;
  display: block;
}
.midashi_01 span::before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  display: block;
  background-color: #144a27;
  -webkit-mask: url("../../uploads/2025/09/midashi_img.svg");
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask: url("../../uploads/2025/09/midashi_img.svg");
          mask: url("../../uploads/2025/09/midashi_img.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
  position: absolute;
  left: -21px;
}
.midashi_02 {
  color: #144a27;
  font-size: clamp(1.125rem, 0.5625rem + 1.1719vw, 1.5rem) !important;
  font-weight: 600 !important;
  display: inline-block;
  letter-spacing: 0.1rem !important;
}
.midashi_02::before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  display: block;
  background-color: #144a27;
  -webkit-mask: url("../../uploads/2025/09/midashi_img.svg");
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask: url("../../uploads/2025/09/midashi_img.svg");
          mask: url("../../uploads/2025/09/midashi_img.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
  position: absolute;
  left: -25px;
}
.midashi_h3 {
  color: #144a27;
  font-size: clamp(1.75rem, 0.625rem + 2.3438vw, 2.5rem) !important;
  font-weight: 600 !important;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  margin: 0 0 4rem;
}

.bg_green {
  background: #edf8eb;
}

/* ボタン */
.swell-block-button {
  text-align: left !important;
}
.swell-block-button a {
  color: #144a27;
  background: #fff;
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem);
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  text-align: left !important;
  font-weight: 500;
  display: inline-block;
  padding: 11px 0 7px 24px;
  min-width: 240px;
  border: 1px solid;
  border-radius: 40px;
  box-shadow: none !important;
}
.swell-block-button a::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 13px;
  right: 30px;
  top: 52%;
  background-color: #144a27;
  -webkit-mask: url("../../uploads/2025/09/arrow.svg");
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask: url("../../uploads/2025/09/arrow.svg");
          mask: url("../../uploads/2025/09/arrow.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
  width: 60px;
  transform: translateY(-50%) translateX(0px);
  opacity: 0;
  animation: slideArrow 2s linear infinite;
}
.swell-block-button a:hover {
  color: #144a27;
  background: #fff;
  min-width: 200px;
  opacity: 1;
}
.swell-block-button a:hover::after {
  background-color: #144a27;
}

/* --------------------------------
 * アニメーション
 * -------------------------------- */
/* ぼやける */
.anime_blur {
  opacity: 0;
  filter: blur(10px);
  animation: focusIn 1s ease forwards;
}

@keyframes focusIn {
  to {
    opacity: 1;
    filter: blur(0);
  }
}
/* スクロールをうながす線 */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
/* フェードイン（上に） */
.fade-up {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s ease-out, transform 0.5s ease-out;
}

.fade-up.show {
  opacity: 1;
  transform: translateY(0);
}

/* ボタンアイコンのアニメーション */
@keyframes slideArrow {
  0% {
    transform: translateY(-50%) translateX(0px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  60% {
    transform: translateY(-50%) translateX(10px);
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
  100% {
    transform: translateY(-50%) translateX(10px);
    opacity: 0;
  }
}
@keyframes fadeIn {
  to {
    opacity: 1;
  }
}
/* フェードイン（ブロック） */
.Fade_block {
  transition: opacity 1s ease, transform 0.5s ease;
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

.Fade_block.fade-out {
  opacity: 0;
  filter: blur(50px);
  transform: translateY(60px); /* 下にふわっと移動 */
}
/* =========================================================
//  共通（下層）
// ========================================================= */
/* 下層ヘッダー */
.l-topTitleArea {
  position: relative;
  overflow: inherit;
  margin: 13rem 0 0 auto;
}
.l-topTitleArea::before {
  content: "";
  display: block;
  background: #144a27;
  width: 830px;
  height: 228px;
  position: absolute;
  left: 8.2%;
  bottom: -15px;
  border-radius: 15px;
}
.l-topTitleArea img {
  width: 90% !important;
  height: 600px;
  display: block;
  margin-left: auto;
  border-radius: 15px 0px 0px 15px;
  position: relative !important;
}
.l-topTitleArea .l-topTitleArea__body {
  color: #333;
  text-shadow: none;
  position: absolute;
  top: -87px;
  left: 10%;
  padding: 0;
}
.l-topTitleArea .l-topTitleArea__body h1 {
  font-size: clamp(1.75rem, 1rem + 1.5625vw, 2.25rem);
  font-weight: 600;
  letter-spacing: 0.4rem;
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
}
.l-topTitleArea .l-topTitleArea__body h1 small {
  color: #144a27;
  font-family: "Montserrat", sans-serif;
  font-weight: 600 !important;
  font-optical-sizing: auto;
  font-style: normal;
  letter-spacing: 0;
  margin: 0;
}

.l-topTitleArea {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.l-topTitleArea.fade-in {
  opacity: 1;
}

.single-menu time {
  display: none !important;
}

/* パンくず */
.p-breadcrumb {
  font-weight: 500;
  margin: 2rem 0 0;
}
.p-breadcrumb [class*=" icon-"]::before,
.p-breadcrumb [class^=icon-]::before {
  display: none;
}

/* --------------------------------
 * メニュー
 * -------------------------------- */
.salon_menu_box {
  padding: 1rem 0 0 !important;
  /* イントロボックス */
  /* 料金ボックス */
}
.salon_menu_box .swell-block-columns__inner {
  width: 1280px;
  margin: 0 auto;
  -moz-column-gap: 6rem;
       column-gap: 6rem;
}
.salon_menu_box .sidebox {
  width: 22%;
  margin: 0;
}
.salon_menu_box .contbox {
  width: 70.5%;
  margin: 0;
}
.salon_menu_box .wp-block-lazyblock-pageintro-block {
  margin: 0 0 5rem;
}
.salon_menu_box .intro_block .imgbox {
  margin: 0 0 1.7rem !important;
}
.salon_menu_box .intro_block .imgbox figure {
  margin: 0 0 3rem;
  transition: opacity 1.5s ease-out, transform 1s ease-out;
}
.salon_menu_box .intro_block .imgbox figure img {
  border-radius: 8px;
}
.salon_menu_box .intro_block .imgbox h2 {
  font-size: clamp(1.125rem, 0.5625rem + 1.1719vw, 1.5rem);
  font-weight: 600;
  border-left: 4px solid #144a27;
  padding: 0 0 0 0.5rem;
  margin: 0;
  transition-delay: 0.5s !important;
}
.salon_menu_box .intro_block .intro_txt {
  transition-delay: 1.1s !important;
}
.salon_menu_box .intro_block .intro_txt p {
  font-size: clamp(0.9375rem, 0.8438rem + 0.1953vw, 1rem);
  line-height: 2.1rem;
}
.salon_menu_box .intro_block .intro_tag {
  margin: 1.5rem 0 0;
}
.salon_menu_box .intro_block .intro_tag ul {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  padding: 0;
}
.salon_menu_box .intro_block .intro_tag ul li {
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.05rem;
  background: #144a27;
  padding: 0.1rem 0.5rem 0.2rem;
  border-radius: 2px;
}
.salon_menu_box .intro_block .intro_other {
  padding: 3rem 0 0;
}
.salon_menu_box .intro_block .intro_other .swell-block-button a:after {
  right: 5px;
}
.salon_menu_box .intro_block .intro_other .swell-block-button a:hover {
  min-width: 220px;
}
.salon_menu_box .wp-block-lazyblock-price-block {
  margin: 0 0 4rem;
}
.salon_menu_box .wp-block-lazyblock-price-block {
  margin: 0 0 4rem;
}
.salon_menu_box .price_block {
  background: #edf8eb;
  transition-delay: 0.5s !important;
  padding: 3rem 4rem;
  border-radius: 8px;
}
.salon_menu_box .price_block h3 {
  color: #fff;
  font-size: clamp(1.125rem, 0.9375rem + 0.3906vw, 1.25rem);
  font-weight: 500;
  background: #144a27;
  padding: 0.3rem 1rem;
  border-radius: 4px;
  margin: 0 0 1.5rem;
}
.salon_menu_box .price_block p {
  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem);
  line-height: 1.3rem;
  margin: 0.2rem 0 1.3rem !important;
}
.salon_menu_box .price_block section dl {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  border-bottom: 2px dotted #144a27;
}
.salon_menu_box .price_block section dl:not(:first-child) {
  margin: 2.5rem 0 0;
}
.salon_menu_box .price_block section dl dt {
  font-weight: 500;
}
.salon_menu_box .price_block section dl dd {
  font-size: clamp(1.125rem, 0.9375rem + 0.3906vw, 1.25rem);
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-optical-sizing: auto;
  font-style: normal;
  letter-spacing: 0.05rem;
  margin: 0;
}
.salon_menu_box .price_block section dl dd small {
  color: #333;
  font-size: 12px;
  font-weight: 500;
  margin: 0 0 0 0.1rem;
}
.salon_menu_box .price_block section dl dd:nth-of-type(1) {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 4px;
}
.salon_menu_box .price_block section dl .price_img {
  margin-left: 8px;
}
.salon_menu_box .price_block section dl .price_img figure {
  width: 124px;
}
.salon_menu_box .price_block section dl .price_img figure img {
  aspect-ratio: 1/1;
}
.salon_menu_box .price_block section p {
  color: #636363;
  font-size: 12px;
}

/* サロンメニューサイドバー */
.side_salon_menu {
  background: #144a27;
  width: 280px;
  border-radius: 8px;
  padding: 3rem 0 2rem;
}
.side_salon_menu li:not(:last-child) {
  margin-bottom: 1.6rem;
}
.side_salon_menu li a {
  color: #fff;
  font-size: clamp(0.9375rem, 0.6563rem + 0.5859vw, 1.125rem);
  font-weight: 600;
  display: block;
  padding: 0.55rem 1rem;
  border-radius: 8px 0px 0px 8px;
}

/* --------------------------------
 * ブログ
 * -------------------------------- */
/* 一覧 */
.blog,
.archive,
.page-id-801{
.w-beforeFooter .swell-block-fullWide__inner {
  padding: 0 !important;
}
	
  .l-mainContent {
    max-width: 73%;
    margin: 0;
    padding: 0;

    ul {
      gap: 3rem;
      margin: 0;

      li {
        width: calc(94% / 2) !important;
		margin-bottom: 1.5em !important;
		  
		  .p-postList__thumb{
			  box-shadow:none !important;
			  
			  figure{
				  border-radius: 8px;
			  }
		.c-postThumb__cat {
  			background-color: #144a27;
  			color: #fff;
  			background-image: none;
			border-radius: 50px;
            margin: 7px 7px 0;
			
			&::before {
			  display:none;
}
}
			 } 
			  .p-postList__body{
			.p-postList__meta {
    			font-size: 13px;
				  
				time{
			 &::before {
			  display:none !important;
}
				}
		
			  }

		  }
      }
    }
  }
}
/* サイドバー */
.blog,
.page-id-801,
.archive,
.single-post,
.single-esthe-case{
.l-sidebar{
    width: 20% !important;
	  
	  h2{
		  color:#fff;
		  font-size: clamp(1rem, 0.8125rem + 0.3906vw, 1.125rem);
		  font-weight:600;
		  background:#144A27;
		  padding: 0.6rem 2rem;
		  border-radius:4px;
		  margin: 0 0 0.2rem;
	  }
	  ul{
		  li{
			  border-bottom:1px solid #EFEFEF;
			  
			  a{
				  font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem);
				  padding: 1rem !important;
				  display: block;
				  
				  &::before{
					  display:none;
				  }
			  }
		  }
	  }
  }
	.textwidget{
			  h2{
		  margin: 0 0 0.2rem !important;
	  }
	}
}
.page-id-801,
.tax-case-cat,
.single-esthe-case{
	#block-6{
		display:none;
	}
	#custom_html-5{
		margin:0 !important;
	}
}
.blog,
.category,
.single-post{
	#custom_html-5{
		display:none;
	}
}
.page-id-801{
	.p-postList__times{
		display:none;
	}
}

/* 個別 */
.single-post {
  .post-meta {
    color: #144A27;
    font-size: clamp(0.8125rem, 0.625rem + 0.3906vw, 0.9375rem);
    font-weight: 600;
	margin: 0 0 1.5rem;

    .post-cats {
      font-size: 13px;
      border-radius: 17px;
      border: 1px solid;
      margin: 0 0 0 1rem;
      padding: 3px 15px;
    }
  }
  .post_title {
    font-size: 1.4em;
    border-bottom: 1px solid ;
    padding: 0 0 1rem;
    margin: 0 0 3.5rem !important;
  }
	.p-articleMetas{
		display:none !important;
	}
	.p-pnLinks .-prev .p-pnLinks__link:hover,
	.p-pnLinks .-next .p-pnLinks__link:hover{
    box-shadow: none !important;
  }
}

/* --------------------------------
 * 事例
 * -------------------------------- */
/* 一覧 */
.jirei_section{
	.midashi_01{
  text-align: center;
  width: 260px;
  display: block;
	margin: 0 auto 1.5rem !important;
	}
	
	p{
		margin: 0 0 3rem;
	}
	
	.p-postList__item {
  		padding: 0 .8em !important;
}
	
	.p-postList__body{
		display:flex;
		flex-direction:column-reverse;
		
		.p-postList__meta{
			height: 22px;
      		position: relative !important;
      		margin: 0 0 0.5rem !important;
			
			span{
				background:#144A27;
				position:absolute;
				left:0;
				width: fit-content;
				
				&::before{
					display:none;
				}
			}
		}
	}
	
	
	.swell-block-button{
		display: flex;
  		justify-content: center;
	}
}
.tax-case-cat{
	.p-postList__times{
		display:none;
	}
}

/* 個別 */
.single-esthe-case{
	.case_block {
      .imgbox {
        background: #fff;
        column-gap: 1rem;
		display:flex;
		flex-wrap:wrap;
        margin: 0 0 2.3rem;
		  
		  figure{
			  width: calc(98%/2);
			  height:500px;
			  position:relative;
			  
			  img{
				  object-fit:cover;
				  height: 100%;
			  }
			  .label{
				  color:#fff;
				  font-family: "Montserrat", "Noto Sans JP", sans-serif;
    				font-optical-sizing: auto;
    				font-style: normal;
				  font-weight:600 !important;
				  letter-spacing: 0.05rem;
				  display: inline-block;
				  position:absolute;
				  padding: 0.1rem 0.8rem 0.1rem 0.5rem;
			  }
		  }
		  
		  .before_img{
			  border:7px solid #A4A4A4;
			  .label{
				  background: #A4A4A4;
			  }
		  }
		  .after_img{
			  border:7px solid #FFB42A;
			 .label{
				  background: #FFB42A;
			  }
		  }
		}

        .contbox {
          margin: 0;

          dl {
            font-size: clamp(0.9375rem, 0.8438rem + 0.1953vw, 1rem);
            display: flex;
            flex-wrap: wrap;
            column-gap: 0;
            gap: 0.5rem;

            dt {
			font-weight:600;
              width: 26%;
              color: #fff;
              background: #144a27;
              align-content: center !important;
              text-align: center;
              margin: 0 !important;
            }
            dd {
              width: 72%;
              line-height: 1.2rem;
              background: #f6f6f6;
              padding: 0.8rem !important;
              margin: 0 !important;
            }
          }
        }
    }
	.c-taxList{
		a{
			color:#fff;
			background: #144a27;
			box-shadow:none;
		}
		&::before{
			display:none;
		}
	}
	
	.p-pnLinks .-prev .p-pnLinks__link:hover,
	.p-pnLinks .-next .p-pnLinks__link:hover{
    box-shadow: none !important;
  }
}
/* =========================================================
//  
// ========================================================= */
.Contact_wrap{
	.swell-block-columns__inner{
		column-gap: 5rem;
	}
	
	.titlebox{
		width: 42%;
			
			.wp-block-group{
				margin: 3.5rem 0 !important;
				
				h2{
					font-size: 24px;
					font-weight:600 !important;
					margin:0;
				}
				a{
					color:#333;
					font-size: 48px;
					font-weight:600 !important;
					font-family: "Montserrat", sans-serif;
  					font-optical-sizing: auto;
  					font-style: normal;
					line-height: 4.5rem;
					letter-spacing: 0.1rem;
					display: flex;
      align-items: center;
      justify-content: flex-start;
					
					
					      &::before {
        content: "";
        width: 32px;
        height: 32px;
        display: block;
        background-color: #144A27;
        -webkit-mask: url("../../uploads/2025/09/tel_icon.svg");
        -webkit-mask-position: center;
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        mask: url("../../uploads/2025/09/tel_icon.svg");
        mask-position: center;
        mask-size: contain;
        mask-repeat: no-repeat;
        margin: 0 0.5rem 0 0;
      }
				}
				.small{
					font-size:14px;
					line-height: 1rem;
  					margin: -20px 0 0;
				}
		}
	}
	.formbox{
		width: 48%;
		
		.btn{
	text-align:center;
}
}
}


    /*----お問合せフォーム----*/
    .form_inner {
		background:#EDF8EB;
		padding: 4.2rem 4rem;
		box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.25);
		border-radius:8px;
		
		dl{
			dt{
				padding: 0 0 0.3rem;
				font-weight:600 !important;
			}
			dd{
				padding: 0 0 1.6rem !important;
			}
		}
		
		.koko{
			display:flex;
			column-gap: 0.5rem;
		}
	}

    .wpcf7-acceptance {
      font-size: clamp(0.875rem, 0.6875rem + 0.3906vw, 1rem) !important;
      font-weight: 600 !important;
      text-align: center;
      display: block;
	margin: 0.6rem 0 2.5rem;
    }
    .wpcf7-acceptance a{
	color:#333;
      border-bottom:1px solid;
    }

    /*「必須」文字デザイン*/
    .required {
      font-size: 18px;
      font-weight: 600;
      color: #EB5757;
      order: 2;
    }

    /* 入力項目を見やすく */
    input.wpcf7-form-control.wpcf7-text,
    textarea.wpcf7-form-control.wpcf7-textarea,
    select.wpcf7-form-control.wpcf7-select {
      width: 100%;
      padding: 5px 15px;
      margin: 0;
      border: none;
      background-color: #fff;
		border:2px solid #CED0D6;
		border-radius:4px;
    }

    textarea.wpcf7-form-control.wpcf7-textarea {
      height: 155px;
    }

    /* エラーメッセージを見やすく */
    span.wpcf7-not-valid-tip,
    .wpcf7-response-output.wpcf7-validation-errors {
      color:#EB5757;
      font-weight: 600;
    }


    /*----お問い合わせフォームここまで----*/





/*---------------------------------------------------tb---*/
@media screen and (min-width: 768px) and (max-width: 1279px) {
.Contact_wrap {
  .midashibox {
    .swell-block-fullWide__inner {
      min-width: 90%;
    }
  }
}
  /*----*/
}
/*---------------------------------------------------sp---*/
@media screen and (max-width: 767px) {
.Contact_wrap {
  .midashibox {
    .swell-block-fullWide__inner {
      min-width: 90%;
    }
  }
  .form_inner {
    padding-bottom: 6rem !important;

    #cf-tbl table tr th,
    #cf-tbl table tr td {
      display: block;
      width: 100%;
      padding: 1.5rem 0;
    }
    #cf-tbl table tr th {
      border-bottom: none !important;
    }
  }
}
  /*----*/
}


/*------------------------------------------------------------------------------------------------------tb---*/
@media screen and (min-width: 768px) and (max-width: 1279px) {
.br_tb_n {
  display: none !important;
}
.br_tb_b {
  display: block !important;
}

/* =========================================================
//  ヘッダー
// ========================================================= */
.l-header[data-spfix="1"] {
  background: initial !important;
}

/* -------------------------------------
 * ハンバーガー
 * ------------------------------------- */
.p-spMenu__inner {
  --color_menu_text: #333;
  --color_menu_bg: #fff;
  width: 340px;
}

.-right .p-spMenu__closeBtn {
  right: 33px;
  top: 8px;
}

/* =========================================================
//  フッター
// ========================================================= */
.l-footer .swell-block-columns__inner {
  width: 100%;
  flex-wrap: inherit;
  margin: 0 auto;
}
.l-footer .titlebox {
  width: 50%;
}
.l-footer .linkbox ul {
  width: 100%;
  grid-template-rows: repeat(5, 45px);
  top: 0;
  bottom: 0;
}
/* =========================================================
//  共通（下層）
// ========================================================= */
/* 下層ヘッダー */
.l-topTitleArea {
  margin: 7rem 0 0 auto;
}
.l-topTitleArea .l-topTitleArea__body {
  top: -67px;
}
.l-topTitleArea::before {
  width: 460px;
  position: absolute;
  left: 6.5%;
  bottom: -10px;
}

/* パンくず */
.p-breadcrumb {
  margin: 1rem 0 0 1.5rem;
}

/* --------------------------------
 * メニュー
 * -------------------------------- */
.salon_menu_box .swell-block-columns__inner {
  width: 95%;
  margin: 0 auto;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
.salon_menu_box .sidebox {
  width: 25%;
  margin: 0;
}
.salon_menu_box .contbox {
  width: 68%;
  margin: 0;
}
.salon_menu_box .price_block {
  padding: 3rem 2.5rem;
}

/* サロンメニューサイドバー */
.side_salon_menu {
  width: 180px;
}
	
/* --------------------------------
 * ブログ
 * -------------------------------- */
/* 一覧 */
.blog,
.archive,
.page-id-801{
	.l-content{
		display: flex;
		justify-content:space-between;
	}
  .l-mainContent {
    ul {
      gap: 0rem !important;
    }
  }
}
.blog,
.page-id-801,
.archive,
.single-post,
.single-esthe-case {
.l-sidebar{
	width: 27% !important;
	margin:0 !important;
}
}
/* 個別 */
.page-id-801,
.single-post {
	.l-content{
		display: flex;
		justify-content:space-between;
	}
	.l-mainContent{
		max-width: 68%;
	}
}

/* --------------------------------
 * 事例
 * -------------------------------- */
/* 一覧 */	
.jirei_section {
  .p-postList__item {
    width: calc(100%/3);
  }
}

.single-esthe-case {
   .l-sidebar {
      width: 100% !important;
    }
  }
/* 個別 */
.single-esthe-case {
  .case_block {
    .imgbox {
      figure {
        width: calc(97%/2);
        height: 500px;
        position: relative;
      }
    }
  }
}
/* =========================================================
//  
// ========================================================= */
.Contact_wrap{
  padding: 0 !important;
		
	.swell-block-fullWide__inner{
		width:90%;
		margin:0 auto;
	}
	
	.swell-block-columns__inner {
    	column-gap: 0 !important;
  }
		.titlebox {
    width: 100%;
			
			.wp-block-group{
				text-align:center;
				a{
					justify-content:center;
				}
			}
  }
		.formbox {
    width: 100%;
  }
	}

  /*----*/
}
@media screen and (min-width: 960px) and (max-width: 1279px) {
.-right .p-spMenu__closeBtn {
  right: 48px;
  top: -3px;
}
  /*----*/
}
/*------------------------------------------------------------------------------------------------------sp---*/
@media screen and (max-width: 767px) {
a[href^="tel:"] {
  pointer-events: auto;
}

p {
  font-size: 14px;
}

.br_pc,
.br_tb_n,
.br_tb_b {
  display: none;
}

.br_sp {
  display: block;
}

/* =========================================================
//  ヘッダー
// ========================================================= */
.l-header[data-spfix="1"] {
  background: initial !important;
}

.l-header .l-container {
  padding: 0.5rem 1rem 0;
}

.l-header__menuBtn.sp_ {
  width: 55px;
  height: 55px;
}

.p-spMenu__closeBtn {
  width: 55px;
  height: 55px !important;
}

.-right .p-spMenu__closeBtn {
  right: 13px;
  top: 10px;
}

.p-spMenu__inner {
  width: 80%;
}

.p-spMenu__body {
  padding: 0 35px !important;
}

.p-spMenu__bottom ul li {
  font-size: 14px !important;
}
.p-spMenu__bottom p a {
  font-size: 11px;
}
.p-spMenu__bottom p a::after {
  width: 28px;
  height: 28px;
  bottom: 6px;
}

/* =========================================================
//  フッター
// ========================================================= */
.w-beforeFooter .swell-block-fullWide__inner {
  padding: 2.5rem 0 0;
}
.w-beforeFooter figure img {
  height: 140px;
}

.l-footer .swell-block-columns__inner {
  width: 100%;
  flex-wrap: inherit;
  margin: 0 auto;
  flex-direction: column;
  row-gap: 3.5rem;
}
.l-footer .titlebox {
  width: 80%;
}
.l-footer .linkbox {
  width: 80%;
}
.l-footer .linkbox ul {
  width: 100%;
  grid-template-rows: repeat(5, 45px);
  position: relative !important;
  padding: 0 !important;
}
.l-footer .copyright {
  padding-top: 0;
}
/* =========================================================
//  共通
// ========================================================= */
.midashi_02 {
  font-size: 16px !important;
  padding:0 0 0 2rem;
}
.midashi_02::before {
  left: 0;
}
.midashi_h3 {
  font-size: 21px !important;
}
/* =========================================================
//  共通（下層）
// ========================================================= */
/* 下層ヘッダー */
.l-topTitleArea {
  margin: 5rem 0 0 auto;
}
.l-topTitleArea .l-topTitleArea__body {
  top: -44px;
}
.l-topTitleArea .l-topTitleArea__body h1 {
  font-size: 20px;
  line-height: 1.5rem;
}
.l-topTitleArea::before {
  width: 220px;
  height: 70px;
  position: absolute;
  left: 7.2%;
  bottom: 10px;
  border-radius: 8px;
}
.l-topTitleArea img {
  border-radius: 8px 0px 0px 8px;
}

/* パンくず */
.p-breadcrumb {
  margin: -0.5rem 0 0 1.6rem;
}

/* --------------------------------
 * メニュー
 * -------------------------------- */
.salon_menu_box .wp-block-lazyblock-pageintro-block {
  margin: 0 0 4rem !important;
}
.salon_menu_box .swell-block-columns__inner {
  width: 90%;
  margin: 0 auto;
  row-gap: 5rem;
  flex-direction: column-reverse;
}
.salon_menu_box .sidebox {
  width: 100%;
  margin: 0;
}
.salon_menu_box .contbox {
  width: 100%;
  margin: 0;
}
.salon_menu_box .intro_block .intro_txt .swell-block-button {
  text-align: center !important;
}
.salon_menu_box .intro_block .intro_tag ul li {
  font-size: 12px;
}
.salon_menu_box .wp-block-lazyblock-price-block {
  margin: 0 0 2rem;
}
.salon_menu_box .price_block {
  padding: 3rem 2rem;
}
.salon_menu_box .price_block p {
  margin: 0.2rem 0 2.3rem !important;
}
.salon_menu_box .price_block section dl {
  align-items: flex-end;
  padding-bottom: 0.2rem;
}
.salon_menu_box .price_block section dl:not(:first-child) {
  margin: 3.5rem 0 0;
}
.salon_menu_box .price_block section dl dt {
  font-weight: 500;
  font-size: 13px;
  line-height: 2.3rem;
  width: 52%;
}
.salon_menu_box .price_block section dl dd {
  font-size: 18px;
}
.salon_menu_box .price_block section dl dd small {
  font-size: 10px;
  font-weight: 600;
  line-height: 1rem;
}
.salon_menu_box .price_block section dl .price_img figure {
  width: 80px !important;
}
.salon_menu_box .price_block section p {
  margin: 1rem 0 0 !important;
}
.salon_menu_box .with-img section dl dt {
  width: 30% !important;
}

/* サロンメニューサイドバー */
.side_salon_menu {
  width: 100%;
}

/* --------------------------------
 * ブログ
 * -------------------------------- */
.blog,.page-id-801,.archive {
  .l-mainContent {
    max-width: 100%;
	  
	  ul {
      li {
        width: 100% !important;
        margin-bottom: 0 !important;
      }
    }
  }
}
.blog,
.archive,
.page-id-801,
.single-post,
.single-esthe-case{
	.l-sidebar {
    width: 90% !important;
    margin: 0 auto;
  }
}
.single-post {
.l-content {
  width: 95%;
}
.post_title {
    font-size: 1.2em;
    margin: 0 0 1.5rem !important;
  }
.l-mainContent__inner > .post_content {
  margin: 2rem 0;
}
.p-articleFoot {
  padding: 0 !important;
}
	.p-pnLinks__link {
  padding: 0 1em !important;
}
}

/* --------------------------------
 * 事例
 * -------------------------------- */
/* 一覧 */	
.jirei_section {
  .p-postList__item {
    padding: 1.5em !important;
    margin: 0 !important;
  }
}

/* 個別 */
.single-esthe-case {
  .case_block {
    .imgbox {
      flex-direction: column;
      row-gap: 1rem;
		
		figure {
        width: 100%;
        height: 350px;
      }
		
	.before_img {
        border: 5px solid #A4A4A4;
      }
	.after_img {
        border: 5px solid #FFB42A;
      }
    }
  }
}
/* =========================================================
//  
// ========================================================= */
	.Contact_wrap{
  padding: 0 !important;
		
	.swell-block-fullWide__inner{
		padding:0 2rem !important;
	}
	
	.swell-block-columns__inner {
    	column-gap: 0 !important;
  }
		.titlebox {
    width: 100%;
			
			.wp-block-group{
				text-align:center;
				
				h2{
					font-size:18px;
				}
				a{
					font-size:34px;
					justify-content:center;
				}
			}
  }
		.formbox {
    width: 100%;
  }
		.form_inner {
  padding: 3.2rem 1.5rem 0;
	padding-bottom: 3rem !important;
}
		.wpcf7-acceptance {
  font-size: 14px !important;
}
.custom-submit-button {
  font-size: 14px !important;
  min-width: 200px !important;
}
	}

  /*----*/
}
