*{
  box-sizing: border-box;
  letter-spacing: 0.08em;
  font-feature-settings: "palt";
}
body{
    margin: 0;
    /* font-family: 'Maison Neue EB',"noto-sans-cjk-jp",'lato', sans-serif; */
    /* font-family: "proxima-nova","noto-sans-cjk-jp",'lato', sans-serif; */
    font-family:  "Marcellus",'游ゴシック', '游ゴシック体', '游ゴシック Medium', 'Yu Gothic Medium', YuGothic,  'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'Noto Sans JP','Lato', sans-serif;
    font-style: normal;
    font-size: 1.6rem;
    color: #333132;
    margin-top: 0;
    font-feature-settings: "palt";
}
a{
    text-decoration: none;
    color: #333132;
}
ul,li,ol{
    list-style: none;
    padding: 0;
    margin: 0;
}
h1,h2,h3,p{
margin: 0;
padding: 0;
}
img{
width: 100%;
height: auto;
object-fit: cover;
}

.pc{
display: block ;
}
.sp{
display: none !important;
}
#Wrapper{
overflow: hidden;
/* background: #0d3678; */
background: #EDF2EC;
}
#top-header {
  /* background-color: #f8f8f8; */
  background-color: rgba(255, 255, 255, 0.4);
    padding: 20px 5%;
  /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
      position: fixed;
    width: 100%;
    height:7vh;
    z-index: 9999;
    border-bottom: 1px solid #fff;
    backdrop-filter: blur(10px);
    top:0;
}

.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  width: 100%;
  height: 100%;
}

.header-logo {
  margin: 0;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.3em;
  line-height: 1;
}

.header-logo a {
  text-decoration: none;
  color: #333132;
  /* font-family: 'Maison Neue EB', sans-serif; */
  font-family: "Marcellus", serif;
  font-weight: 600;
}

/* PC用ナビゲーション */
#g-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}

#g-nav li {
  margin-left: 30px;
}

#g-nav a {
  text-decoration: none;
  color: #fff;
  font-size: 16px;
  padding: 5px 0;
  transition: color 0.3s ease;
}

#g-nav a:hover {
  opacity: 0.8;
}

/* ハンバーガーメニューボタン */
.openbtn1 {
  display: none; /* 初期状態では非表示 */
  position: relative;
  cursor: pointer;
  width: 50px;
  height: 2vh;
  z-index: 100;
  transition: all 0.5s ease;
}

.openbtn1 span {
  display: block;
  position: absolute;
  height: 1px;
  width: 100%;
  background: #333132;
  left: 0;
  transition: all 0.5s ease;
}

.openbtn1 span:nth-child(1) {
  top: 0;
}

.openbtn1 span:nth-child(2) {
  top: 10px;
}

.openbtn1 span:nth-child(3) {
  top: 20px;
}

/* ハンバーガーメニューオープン時 */
.openbtn1.active span:nth-child(1) {
  transform: translateY(10px) rotate(-45deg);
}

.openbtn1.active span:nth-child(2) {
  opacity: 0;
}

.openbtn1.active span:nth-child(3) {
  transform: translateY(-10px) rotate(45deg);
}
/* 既存のスタイル */
section.kv {
  width: 100%;
  height: 100vh;
}
.kv_inner{
width: 100%;
height: 100%;
}
.kv_img{
  position: relative;
background-image: url(../img/kv.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 100%;
height: 100%;
/* kv_copyを中央に配置するために必要であれば以下を追加 */
display: flex; /* flexboxを有効にする */
justify-content: center; /* 水平方向の中央揃え */
align-items: center; /* 垂直方向の中央揃え */
overflow: hidden;
}
.kv_img::after{
  content: "";
    width: 100%;
    height: 100%;
    opacity: 0.5;
    background-image: url(../img/dot.png);
    background-size: 3px 3px;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 0;
}
.content-bg{
  position: relative;
background-image: url(../img/kv.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 100%;
height: 500px;
/* kv_copyを中央に配置するために必要であれば以下を追加 */
display: flex; /* flexboxを有効にする */
justify-content: center; /* 水平方向の中央揃え */
align-items: center; /* 垂直方向の中央揃え */
overflow: hidden;

}
/* .content::after{
  content: "";
    width: 100%;
    height: 100%;
    background-image: url(../img/dot.png);
    background-size: 3px 3px;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 0;
} */
/* kv_copy の既存スタイルとアニメーション用スタイルを統合 */
.kv_copy{
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  justify-content: end;
  padding: 10vh;
  color: #fff;
  /* text-align: center; */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s ease-out, transform 1s ease-out;
  z-index: 999;
  font-family: "Marcellus", serif;
  font-weight: 600;

}

/* kv_copy が表示された状態 */
.kv_copy.is-visible {
    opacity: 1; /* 表示 */
    transform: translateY(0); /* 元の位置に戻る */
}

/* kv_copy 内のテキストのスタイル (必要であれば追加) */
.kv_title {
  font-size: 10vw;
  margin-bottom: 0.1em;
  line-height: 1;
}

.kv_text {
    font-size: 3vw; /* 例 */
}
.content{
  width: 100%;
  margin-top: 30vw;
}
.content2{
  width: 100%;
}
.content_inner{
padding:10vw 0 30vw;
z-index: 1;
width:100% ;
margin: 0 auto;
}
.concept_box{
  max-width: 100%;
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 5vw;
}
.concept_article{
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  gap: 5vw;
}
.concept_title{
    line-height: 2em;
    display: block;
    align-content: center;
    font-family: "Noto Serif JP", serif;;
    font-weight: 500;
    /* color: #0E387C; */
}
.concept_title__en,.content-title_en{
font-size:13px;
font-weight: 600;
    /* font-family: 'Maison Neue EB', sans-serif; */
}
.concept_title__jp,.content-title_j{
    font-size: 44px;
    line-height: 2em;

}
.concept_text{
  display: flex;
  gap: 30px;
  flex-direction: column;
  font-family: "Noto Serif JP", serif;;
  font-weight: 500;
}
.concept_text p{
  font-size: 20px;
  line-height: 2em;
  text-align: justify;
  /* color: #0E387C; */

}
.concept-img{

}
.concept-img img{
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 16 / 9;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);
}
.bg-gray{
  background: #f8f8f8;
}
.content-title{
 margin-bottom: 30px;
 text-align: center;
}

.color-wh{
color: #fff;
z-index: 1;
}
.contact-box{
  width: 80%;
  margin: 0 auto;
}
.contact-box a {
  position: relative;
  text-align: center;
  background: #fff;
  width: 100%;
  max-width: 25vw;
  margin: 0;
  display: block;
  padding:30px 20px;
  border-radius: 100px;
  border: solid 1px #f8f8f8;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);
  transition: 0.5s;
  font-size: 1.45vw;
  font-weight: normal;
  color: #69797e;
}

.contact-box a:hover{
  transition: 0.5s;
  background: #f8f8f8;
  border: solid 1px #69797e;
  box-shadow:none;

}
.concept-title_box{
display: grid;
grid-template-columns:1fr 1fr ;
gap:50px;
}
.concept-title_img{
  -webkit-box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);
    box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);

}
.parallax-slow{
  width: 100%;
  margin-left: auto;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}
.parallax-medium{
  width: 100%;
  margin-left: auto;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}
.parallax-fast{
  width: 100%;
  margin-left: auto;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  display: flex;
  justify-content: right;
}
.concept-title_img img{
  height: calc(100% + 50px);

}
.concept-article_img{
  display: grid;
  gap: 50px;
}
.con-art_top{
width: 80%;
margin-right: auto;
box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);
}
.con-art_bottom{
  width: 50%;
  margin-left: auto;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);

}
.parallax-container {
  position: relative;
  height: auto;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

.parallax-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 0.1s linear;
}
.concept-article{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
}
.fade-in {
  opacity: 0;
  filter: blur(10px); /* 最初は少しぼかす */
  transition: opacity 3.0s, filter 3.0s;
}

.fade-in.is-visible {
  opacity: 1;
  filter: blur(0);    /* ぼかしをなくしてくっきりさせる */
}
.fade-in.is-visible {
  opacity: 1 !important;
  filter: blur(0) !important;
  transform: translateY(0) !important;
  visibility: visible !important;
}

.js-sticky-area {
  position: relative;
  /* JSを使わないので、高さは auto (中身に合わせる) */
  height: auto; 
  padding: 0;
}

.js-sticky-item {
  /* position: -webkit-sticky; */
  position:relative;
  /* z-index: var(--index); */
  width: 100%;
  /* 最初から中身が見えている状態にする */
  height: 70rem;
    /* background: #fff; */
  /* border-top: 10px solid #0E387C; */
  margin-bottom: 0; /* 隙間をなくして重ねる */

  /* 停止位置：前のカードの「バー(35px)」が重なって見えるように計算 */
  /* top: 10vh; */
}

/* エリアに入った時のフワッとした出現 */
.js-sticky-area.is-visible .js-sticky-item {
  opacity: 1;
  transform: translateY(0);
}

/* --- 修正ポイント：展開時の高さ --- */
/* .js-sticky-item.is-active {
  height: 70vh;
} */

.sticky-header-bar {
 /* 修正：高さを 35px に */
 height: auto;
 display: flex;
 justify-content: space-between;
 padding: 0; /* 横の余白も少しタイトに */
 flex-shrink: 0;
  color: #0E387C;
  gap: 10px;
}

/* 中身のパディングを調整（バーが太くなった分、中の余白を微調整） */
.sticky-body-content {
  display: block;
  padding:0;
  opacity: 1; /* 常に表示 */
  margin: 0 auto;
    width: 100%;
}
/* テキストエリアの調整 */
.sticky-text {
  /* 比率が狭くなるため、改行位置を意識したフォントサイズ調整 */
  max-width: 100%;
  margin-top:8vh;
  display: flex;
  flex-direction: column;
  gap: 20vh;
}
.js-sticky-item.is-active .sticky-body-content {
  opacity: 1;
}
.sticky-img {
  webkit-mask-image: url(../img/mask.svg);
  mask-image: url(../img/mask.svg);
  -webkit-mask-size: 100% auto;
  mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  overflow: hidden;
}
/* 画像の微調整 */
.sticky-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 4px;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 768px){
  .sticky-img{
    position: absolute;
    top: 0;
    right: -3.2rem;
    width: 60vw;
    height: 70rem;
}
}
.sticky-card-inner{
  display: flex;
  flex-direction: column;
  padding: 0;
  width: 100%;
  margin: 0 auto;

}
h3.content-title_jp{
  font-size:3vw;
  line-height: 1.2;
  margin-bottom: 20px;
  color: #0E387C;
}
h4.content-subtitle{
 font-size: 1.24rem;
}
p.content_text{
  font-size: 1rem;
  line-height: 2em;
  text-align: justify;
  padding: 0 60.222vw 0 7.2222vw;
  margin-top: 4vh;
}
footer{
  background: #333132;
  /* background: #0E387C; */


}
.footer-inner{
width: 90%;
margin: 0 auto;
padding: 5vw 0 0;
display: flex;
justify-content: space-between;
}
.footer-logo{

}
.footer-logo a{
color:#fff;
}
.copylight{
  color:#fff;
  text-align: center;
  padding: 15px;
  font-size: 10px;
}
.footer-menu{
display: flex;
justify-content: space-between;
}
.footer-menu_list{
  display: flex;
  gap: 20px;

}
.footer-menu_list li{
width: auto;
}
.footer-menu_list li a{
  color: #fff;
  font-size: 14px;
  text-decoration: none;
}
span.sticky-num{
  font-size: 16px;
  font-weight: 600;
  font-family: 'Maison Neue EB', sans-serif;

}
h2.sticky-title-short {
  position: relative;
  font-size: 13px;
  display: inline-block;
  /* color: rgba(0, 0, 0, 0); */
  /* background-image: radial-gradient(rgb(210, 215, 216) 0% 40%, rgb(255, 255, 255) 50%, rgba(210, 215, 216, 0.4) 60% 100%);
  background-repeat: no-repeat;
  background-position: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  background-size: 800% 250%; */
  /* letter-spacing: -0.1em; */
  white-space: nowrap;
  /* font-family: "Noto Serif JP", serif;; */
  font-weight: 600;
  text-align: left;
  z-index: 1;
  /* font-family: 'Maison Neue EB', sans-serif; */
}
.job{

}
.inner{
  width: 100%;
  margin: 0 auto;
}
.top-heading{
  /* font-family: "Bodoni Moda", serif; */
  font-family: "Marcellus", serif;
  font-weight: 500;
  color: #69797e;
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.top-heading_en{
  font-size: 8vw;
  display: inline-block;
  padding-bottom: .5em;
  margin-bottom: -0.5em;
  color: rgba(0, 0, 0, 0);
  background-image: radial-gradient(rgb(210, 215, 216) 0% 40%, rgb(255, 255, 255) 50%, rgba(210, 215, 216, 0.4) 60% 100%);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-background-clip: text;
  background-clip: text;
  background-size: 800% 250%;
  line-height: 1em;
  letter-spacing: 0.06em;
    white-space: nowrap;
    font-weight: 600;
}
.top-heading_jp{
  font-size: 2vw;
}
.job-container{
  margin: 20vh auto;
}
.job-service{
  margin-top: 20vh;
  padding: 0;
}
.job-heading{
  color: #69797e;
  font-weight: 500;
  display: flex;
  gap: 20px;
  align-items: center;
  line-height: 1em;
  width: 80%;
  margin: 0 auto;
}
.job-heading::before{
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    border:#69797e ;
}
.job-heading_en{
font-size: 2.5vw;
}
.job-heading_jp{
  font-size: 16px;
}
.job-service_box{
  margin-top: 8vh;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.job-service_article{
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 50px;
  border-top: 1px solid #ddd;
  width: 80%;
  margin: 0 auto;
  align-items: center;
}
.job-service_heading{
  margin: 0;
    font-size: 1.25vw;
    padding-top: 4vh;
    position: relative;
}
.job-service_heading::before{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background-color:#69797e;
}
.job-service_text{
font-size: 1vw;
    text-align: right;
    padding-top: 4vh;
}
.job-service_image{
  width: 80%;
  margin: 4vh auto 0;
  
  height: auto;
  aspect-ratio: 16 / 6;
  overflow: hidden;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.16);
}
.job-service_image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* Swiper全体の調整 */
.job-service_slider {
  width: 100%;
  max-width: 80%; /* 必要に応じて調整 */
  margin: 4vh auto 0;
  position: relative; /* 矢印の基準位置 */
  padding:0;    /* ★左右に60pxの隙間を作る（ここに矢印を置く） */
  /* overflow: hidden; は削除！ */
  /* margin-left: 5%; */
  
}

.salon-slider {
  width: 100%;
  overflow: hidden; /* スライドのはみ出しはここで隠す */
  padding-bottom: 50px;
}

.swiper-slide {
  height: auto;
  display: flex; /* これにより直下の子要素が高さいっぱいに伸びます */
}

.swiper-slide-active {
  opacity: 1; /* アクティブなスライドはくっきり */
}

.salon-slide_link {
  display: block;
  width: 100%;
  text-decoration: none;
  color: #333132;
}

.salon-slide_img {
  width: 100%;
  overflow: hidden;
  aspect-ratio: 3 / 2; /* 画像の比率を固定（適宜変更してください） */
  margin-bottom: 15px;
}

.salon-slide_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

/* ホバー時のズームエフェクト */
.salon-slide_link:hover .salon-slide_img img {
  transform: scale(1.05);
}

.salon-slide_title {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: left;
}

/* 独自矢印ボタンのスタイル */
.salon-button-prev,
.salon-button-next {
  position: absolute;
  top: 40%; /* 画像の中央付近に来るよう調整 */
  transform: translateY(-50%);
  width: 80px;
  height: 80px;
  border: 1px solid #fff;
  cursor: pointer;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  color: inherit;
  border-radius: 100px;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.09);
  margin: 0 30px;
  backdrop-filter: blur(3px);
}

/* 矢印の形状（Swiperのデフォルトアイコンを利用） */
.salon-button-prev::after,
.salon-button-next::after {
  content: "";
  font-family: swiper-icons;
  font-size: 30px;
  font-weight: bold;
}
.salon-button-prev::after{
content: "←";
}
.salon-button-next::after{
  content: "→";
}


/* ページネーション */
.swiper-pagination-bullet-active {
  background: #0E387C;
}
/* スライド内のレイアウト調整 */
.salon-slide_inner {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #fff;
  padding: 50px 30px;
  border-radius: 0px;
  box-shadow: 24px 24px 40px rgba(0, 0, 0, 0.09);
}
/* 3. テキストエリアを余ったスペースいっぱいに広げる */
.salon-slide_content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
}
/* 配置（paddingエリアに置く） */
.salon-button-prev {
  left: 0;
}

.salon-button-next {
  right: 0;
}
/* タイトル */
.salon-slide_title {
  font-size: 1.4rem;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 10px;
}

/* 住所・最寄り駅のテキスト */
.salon-info_text {
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 5px;
  color: #333;
}

/* 電話番号（アイコン付き） */
.salon-info_tel {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 21px;
  font-family: 'Maison Neue EB', sans-serif; /* 英数字用フォント */
  font-weight: 500;
  margin: 20px 0;
  text-decoration: none;
  transition: opacity 0.3s;
}

.salon-info_tel svg {
  width: 44px;
  height: 44px;
  border: 1px solid;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 100px;
}

.salon-info_tel:hover {
  opacity: 0.7;
}

/* WEB予約ボタン */
.salon-btn_reserve {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 12px 20px;
  background-color: #333132;
  color: #fff;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(14, 56, 124, 0.2);
  transition: all 0.3s ease;
  position: relative;

  /* ▼▼▼ ここを修正しました ▼▼▼ */
  /* margin: 0 auto 0 0; を削除し、以下のように個別に指定します */
  
  margin-top: auto;    /* これでFlexボックス内で一番下に配置されます */
  margin-right: auto;  /* 左寄せにするための記述 */
  margin-bottom: 0;
  margin-left: auto;      /* 左寄せ */
  line-height: 3em;
  /* ▲▲▲ 修正ここまで ▲▲▲ */
}

.salon-btn_reserve:hover {
  background-color: #fff;
  color: #333132;
  border: 1px solid #333132;
  box-shadow: none;
  transform: translateY(2px);
}
.salon-slide_link_wrap{
  display:flex;
  flex-direction: column;
}
.swiper-pagination{
  position: relative !important;
}
.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
  margin-top: 5vh;
}
/* --- スライダー左右のフェード効果（ベースカラー：#EDF2EC） --- */

/* 共通設定 */
.salon-slider::before,
.salon-slider::after {
  content: "";
  position: absolute;
  top: 0;
  width: 10%; /* 霞ませる幅（お好みで調整してください） */
  height: 100%;
  z-index: 5; /* スライドより手前に表示 */
  pointer-events: none; /* フェード部分もクリック操作を通す */
}

/* 左側のフェード */
.salon-slider::before {
  left: 0;
  /* #EDF2EC (不透明) → #EDF2EC (透明) */
  background: linear-gradient(to right, #EDF2EC 0%, rgba(237, 242, 236, 0) 100%);
}

/* 右側のフェード */
.salon-slider::after {
  right: 0;
  /* #EDF2EC (不透明) → #EDF2EC (透明) */
  background: linear-gradient(to left, #EDF2EC 0%, rgba(237, 242, 236, 0) 100%);
}
.g-nav{

}
#g-nav-list{

}
.g-nav_box{

}
.g-nav_box ul{

}
.g-nav_box li{

}
.g-nav_box li a{
color: #333132;
}
.swiper-autoheight .swiper-wrapper{
  align-items: unset !important;
}
.page{

}
.page-heading{
  font-weight: 500;
  color: #69797e;
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 35vh;
}
.contact-form-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 50px;
  background: #fff;
  border-radius: 20px;
}

.form-intro {
  text-align: center;
  margin-bottom: 40px;
  font-size: 0.9rem;
  line-height: 1.8;
}

.form-item {
  margin-bottom: 24px;
}
.form-item p{

}
.form-item label {
  display: block;
  font-weight: bold;
  margin-bottom: 8px;
  font-size: 0.9rem;
}

.required {
  color: #d9534f;
  margin-left: 4px;
}

/* 入力フィールドの装飾 */
.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]) {
  width: 100%;
  font-family: inherit;
  border-radius: 4px; /* シャープな印象に */
  font-size: 14px;
    padding: 14px 5px;
    border: 1px solid #ddd;
    background: #f8f8f8;
}

/* 送信ボタン（NUTUREのトーンに合わせる） */
.form-submit {
  text-align: center;
  margin-top: 40px;
}

.wpcf7-submit {
  background-color: #333132;
  color: #fff;
  padding: 15px 60px;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  letter-spacing: 0.1em;
}

.wpcf7-submit:hover {
  opacity: 0.8;
  transform: translateY(-2px);
}

.form-privacy {
  text-align: center;
  margin-top: 30px;
}
.page-content {
  padding: 15vh 0;
}
.wpcf7-list-item{
  margin: 0;
}
