/* ===== Lumi — Hero / First View ===== */

:root{
  --cream:      #f6f0e6;   /* オフホワイト＋ベージュ */
  --cream-deep: #efe7d8;
  --ink:        #5b5048;   /* 見出し・本文の墨茶 */
  --ink-soft:   #7c7065;
  --gold:       #bda06b;   /* アクセント（線・装飾） */
  --gold-soft:  #cdb486;
  --pink:       #d79aa3;   /* くすみピンク（CTA） */
  --pink-deep:  #cd8b95;
  --green:      #9bae8d;   /* グリーンアクセント */
  --line:       #d9cdba;
}

*{ box-sizing:border-box; margin:0; padding:0; }

html{ scroll-behavior:smooth; }

body{
  font-family:"Noto Sans JP", sans-serif;
  font-weight:400;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  line-height:1.8;
}

a{ color:inherit; text-decoration:none; }
ul{ list-style:none; }
svg{ display:block; }

/* ---------- Header ---------- */
.site-header{
  position:absolute;
  inset:0 0 auto 0;
  z-index:20;
  display:flex;
  align-items:center;
  gap:32px;
  padding:26px clamp(24px, 4vw, 60px);
}

.brand{ display:flex; align-items:center; gap:14px; }
.brand__mark{ width:52px; }
.brand__mark svg{ width:100%; height:auto; }
.brand__text{ display:grid; line-height:1; }
.brand__sub{
  font-size:11px; letter-spacing:.34em; color:var(--ink-soft);
  margin-bottom:6px; padding-left:.34em;
}
.brand__name{
  font-family:"Cormorant Garamond", serif;
  font-weight:500; font-size:40px; letter-spacing:.12em; color:var(--ink);
}
.brand__read{
  font-size:11px; letter-spacing:.5em; color:var(--ink-soft);
  margin-top:4px; padding-left:.5em;
}

.gnav{ margin-left:auto; }
.gnav ul{ display:flex; align-items:center; gap:0; }
.gnav li{ position:relative; }
.gnav li + li::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:1px; height:14px; background:var(--line);
}
.gnav a{
  display:block; padding:6px 22px;
  font-size:14px; letter-spacing:.08em; color:var(--ink);
  transition:color .25s;
}
.gnav a:hover{ color:var(--gold); }

/* ---------- Reserve button ---------- */
.btn-reserve{
  display:inline-flex; align-items:center; gap:10px;
  background:var(--pink); color:#fff;
  border:none; cursor:pointer;          /* button要素の黒枠を除去 */
  font-family:"Noto Sans JP", sans-serif;
  border-radius:999px;
  letter-spacing:.08em;
  transition:background .25s, transform .25s, box-shadow .25s;
}
.btn-reserve:hover{ background:var(--pink-deep); transform:translateY(-2px); }
.btn-reserve .ico-cal{ width:18px; height:18px; fill:none; stroke:#fff; stroke-width:1.6; }

.btn-reserve--header{
  padding:13px 26px; font-size:14px;
  box-shadow:0 6px 18px rgba(205,139,149,.28);
}

/* ---------- Hamburger (mobile only) ---------- */
.hamburger{
  display:none;
  width:42px; height:34px; background:none; border:none; cursor:pointer;
  flex-direction:column; justify-content:center; gap:7px;
}
.hamburger span{ display:block; height:1.5px; background:var(--gold); border-radius:2px; }

/* ---------- Hero ---------- */
.hero{
  position:relative;
  min-height:100vh;
  background-image:url("../images/ChatGPT Image 2026年6月1日 21_19_50 (1).png");
  background-size:cover;
  background-position:center right;
  background-repeat:no-repeat;
  background-color:var(--cream);
}

.hero__inner{
  position:relative;
  max-width:1500px; margin:0 auto;
  min-height:100vh;
  display:flex; align-items:center;
  padding:140px clamp(24px, 4vw, 60px) 80px;
}

.hero__copy{ width:min(780px, 58%); }

.hero__title{
  font-family:"Zen Old Mincho", serif;
  font-weight:500;
  font-size:clamp(34px, 4.2vw, 56px);
  line-height:1.55;
  letter-spacing:.06em;
  color:var(--ink);
  white-space:nowrap;
}

.leaf-divider{ display:flex; align-items:center; gap:14px; margin:30px 0 26px; }
.leaf-divider__line{ width:200px; height:1px; background:var(--line); }
.leaf-divider svg{ width:40px; height:16px; }

.hero__lead{
  font-size:15px; font-weight:300;
  line-height:2.1; letter-spacing:.04em;
  color:var(--ink-soft);
}

/* feature badges */
.features{ display:flex; gap:22px; margin:38px 0 44px; }
.feature{ text-align:center; width:106px; }
.feature__icon{
  display:grid; place-items:center;
  width:96px; height:96px; margin:0 auto 12px;
  border:1px solid var(--line); border-radius:50%;
  background:rgba(255,255,255,.45);
}
.feature__icon svg{ width:42px; height:42px; }
.feature__label{
  font-size:12.5px; font-weight:400; line-height:1.5;
  letter-spacing:.04em; color:var(--ink-soft);
}

/* CTA */
.cta{ display:inline-flex; flex-direction:column; align-items:center; }
.btn-reserve--main{
  padding:22px 60px; font-size:19px; letter-spacing:.12em;
  box-shadow:0 12px 30px rgba(205,139,149,.3);
}
.btn-reserve--main .ico-cal{ width:22px; height:22px; }
.btn-reserve--main .ico-arrow{ width:20px; height:20px; fill:none; stroke:#fff; stroke-width:1.6; }
.cta__note{
  margin:16px 0 0; font-size:13px; font-weight:300;
  letter-spacing:.05em; color:var(--ink-soft);
}
.cta__sub{ display:none; }

/* owner round badge over the photo */
.hero__visual{
  position:absolute; inset:0; pointer-events:none;
}
.owner-badge{
  position:absolute; right:10%; bottom:1%;
  width:200px; height:200px;
  display:grid; place-items:center; text-align:center;
  /* 写真の下端をまたぎ、縁がにじむ半透明のヴェール（はっきりした円にしない） */
  background:radial-gradient(circle at 50% 44%,
    rgba(255,253,249,.74) 26%,
    rgba(255,253,249,.44) 58%,
    rgba(255,253,249,0)   82%);
}
.owner-badge span{
  position:relative; z-index:1;
  font-family:"Zen Old Mincho", serif;
  font-size:14.5px; line-height:1.92; letter-spacing:.07em; color:var(--ink);
}
.owner-badge__sprig{
  position:absolute; right:-2px; bottom:18px;
  width:74px; height:auto;
  opacity:.5; fill:none;
  stroke:#b6a279; stroke-width:1; stroke-linecap:round; stroke-linejoin:round;
}

/* ============ Concept ============ */
.concept{
  position:relative;
  display:flex;
  align-items:stretch;
  background:var(--cream);
  overflow:hidden;
}

/* 左：縦長写真（左端まで全面ブリード／右端を有機的な曲線に） */
.concept__media{
  flex:0 0 41%;
  position:relative;
}
.concept__media img{
  width:100%; height:100%;
  object-fit:cover;
  display:block;
  /* 縦半径を大きく取り、上下が連続するなだらかなカーブに */
  border-radius:0 190px 190px 0 / 0 48% 48% 0;
}

/* 右：テキスト */
.concept__body{
  flex:1;
  padding:clamp(60px, 7vw, 110px) clamp(40px, 5.5vw, 96px);
  display:flex; flex-direction:column;
  align-items:flex-start;
}

/* セクション見出し（番号＋英字） */
.sec-head{ display:flex; align-items:center; gap:18px; margin-bottom:26px; }
.sec-head__num{
  font-family:"Cormorant Garamond", serif;
  font-size:34px; font-weight:600; color:var(--gold);
  letter-spacing:.04em;
  padding-bottom:6px;
  border-bottom:1px solid var(--gold-soft);
}
.sec-head__en{
  font-family:"Cormorant Garamond", serif;
  font-size:18px; font-weight:500; letter-spacing:.22em;
  color:var(--ink-soft); text-transform:uppercase;
}

.sec-title{
  display:flex; align-items:center; gap:16px;
  font-family:"Zen Old Mincho", serif;
  font-weight:500;
  font-size:clamp(32px, 3.4vw, 46px);
  letter-spacing:.18em; color:var(--ink);
  margin-bottom:40px;
}
.sec-title__leaf{ width:40px; height:16px; flex:none; }

.concept__lead{
  font-family:"Zen Old Mincho", serif;
  font-weight:500;
  font-size:clamp(22px, 2vw, 28px);
  line-height:1.85; letter-spacing:.08em;
  color:var(--ink);
  margin-bottom:32px;
}

.concept__text{
  font-size:17px; font-weight:300;
  line-height:2.1; letter-spacing:.04em;
  color:var(--ink-soft);
  margin-bottom:48px;
}

/* 特徴バッジ（角丸の四角） */
.concept__features{
  display:flex; gap:18px;
  width:100%; max-width:720px;
  margin-bottom:54px;
}
.cfeature{
  flex:1;
  display:flex; flex-direction:column; align-items:center;
  gap:12px;
  padding:24px 10px 20px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.4);
  text-align:center;
}
.cfeature__icon svg{ width:42px; height:42px; }
.cfeature__label{
  font-size:13px; font-weight:400; line-height:1.55;
  letter-spacing:.04em; color:var(--ink-soft);
}

/* CTA（右下） */
.concept__cta{ align-self:flex-end; margin-top:auto; }
.btn-reserve--ghost{ padding:18px 44px; font-size:16px; gap:14px; }
.btn-reserve--ghost .ico-arrow{
  width:20px; height:20px; fill:none; stroke:#fff; stroke-width:1.6;
}

/* 装飾の植物（線画） */
.concept__sprig{
  position:absolute; z-index:0; pointer-events:none;
  fill:none; stroke:#c4b389; stroke-width:1;
  stroke-linecap:round; stroke-linejoin:round; opacity:.5;
}
.concept__sprig--tr{ top:38px; right:40px; width:130px; }
.concept__sprig--br{ bottom:30px; right:64px; width:120px; }

/* ============ Price ============ */
.price{
  position:relative; overflow:hidden;
  background:var(--cream);
  padding:clamp(72px, 8vw, 120px) clamp(24px, 5vw, 60px);
}

.price__head{
  display:flex; flex-direction:column; align-items:center;
  text-align:center;
  margin-bottom:48px;
}
.sec-head--center,
.price__head .sec-head{ justify-content:center; }
.sec-title--center{ justify-content:center; margin-bottom:22px; }

.price__note-top{
  font-size:15px; font-weight:300;
  line-height:1.95; letter-spacing:.04em;
  color:var(--ink-soft);
}

/* 価格パネル */
.price__panel{
  position:relative; z-index:1;
  max-width:780px; margin:0 auto;
  background:#fff;             /* 料金表は真っ白 */
  border:1px solid var(--line);
  border-radius:24px;
  padding:clamp(34px, 4vw, 56px) clamp(28px, 4.5vw, 64px);
}

.price-list{ display:flex; flex-direction:column; }
.price-row{
  display:flex; align-items:baseline;
  padding:18px 2px;
}
.price-row + .price-row{ border-top:1px solid rgba(189,160,107,.18); }

.price-row__name{
  font-size:17px; font-weight:400;
  letter-spacing:.04em; color:var(--ink);
  white-space:nowrap;
}
.price-row__min{
  margin-left:12px;
  font-size:12.5px; letter-spacing:.06em; color:var(--ink-soft);
}
.price-row__leader{
  flex:1 1 auto;          /* 名前と料金の間隔をとるだけ（点線なし） */
  margin:0 14px;
}
.price-row__price{
  font-family:"Cormorant Garamond", serif;
  font-size:25px; font-weight:600; letter-spacing:.02em;
  color:var(--ink);
  white-space:nowrap;
}

.price__note{
  max-width:780px; margin:18px auto 0;
  font-size:13px; font-weight:300; letter-spacing:.04em;
  color:var(--ink-soft);
  text-align:center;       /* 税込注釈は中央揃え */
}

.price__cta{
  display:flex; justify-content:center;
  margin-top:40px;
}

.price__sprig{
  position:absolute; z-index:0; pointer-events:none;
  left:48px; bottom:40px; width:120px;
  fill:none; stroke:#c4b389; stroke-width:1;
  stroke-linecap:round; stroke-linejoin:round; opacity:.45;
  transform:scaleX(-1);
}

/* ============ Access / Salon Info ============ */
.access{
  position:relative;
  background:var(--cream);
  padding:clamp(72px, 8vw, 120px) clamp(24px, 5vw, 60px);
}

.access__head{
  display:flex; flex-direction:column; align-items:center;
  text-align:center;
  margin-bottom:54px;
}

.access__inner{
  max-width:1160px; margin:0 auto;
  display:flex; align-items:stretch;
  gap:clamp(32px, 4vw, 64px);
}

/* 左：地図 */
.access__map{
  flex:1 1 56%;
  min-height:440px;
  border-radius:24px; overflow:hidden;
  border:1px solid var(--line);
}
.access__map iframe{
  width:100%; height:100%; min-height:440px;
  border:0; display:block;
  filter:saturate(.85);
}

/* 右：情報 */
.access__info{
  flex:1 1 44%;
  display:flex; flex-direction:column;
  padding-top:6px;
}

.info-list{ width:100%; }
.info-row{
  display:flex; gap:24px;
  padding:22px 4px;
  border-bottom:1px solid var(--line);
}
.info-row:first-child{ border-top:1px solid var(--line); }
.info-row dt{
  flex:0 0 96px;
  font-family:"Zen Old Mincho", serif;
  font-size:15px; font-weight:500;
  letter-spacing:.1em; color:var(--ink);
  padding-top:2px;
}
.info-row dd{
  flex:1;
  font-size:15px; font-weight:300;
  line-height:1.95; letter-spacing:.04em;
  color:var(--ink-soft);
}
.info-row dd a{ color:var(--ink-soft); transition:color .25s; }
.info-row dd a:hover{ color:var(--gold); }
.info-sub{ font-size:13px; }

.access__btn{
  align-self:flex-start;
  margin-top:36px;
  padding:18px 48px; font-size:16px; gap:12px;
}
.access__btn .ico-cal{ width:19px; height:19px; }
.access__btn .ico-arrow{ width:19px; height:19px; fill:none; stroke:#fff; stroke-width:1.6; }

/* ============ Contact ============ */
.contact{
  position:relative;
  background:var(--cream);
  padding:clamp(72px, 8vw, 120px) clamp(24px, 5vw, 60px) clamp(80px, 9vw, 130px);
}
.contact__head{
  display:flex; flex-direction:column; align-items:center;
  text-align:center;
  margin-bottom:50px;
}
.contact__note-top{
  font-size:15px; font-weight:300;
  line-height:1.95; letter-spacing:.04em;
  color:var(--ink-soft);
}

.contact-form{
  max-width:680px; margin:0 auto;
}
.form-row{ margin-bottom:28px; }
.form-label{
  display:block;
  margin-bottom:10px;
  font-size:15px; font-weight:500;
  letter-spacing:.06em; color:var(--ink);
}
.form-badge{
  display:inline-block;
  margin-left:8px;
  padding:3px 10px;
  font-size:11px; font-weight:400; letter-spacing:.08em;
  border-radius:4px; vertical-align:middle;
}
.form-badge--req{ background:var(--pink); color:#fff; }
.form-badge--any{ background:#e6ddcd; color:var(--ink-soft); }

.form-input{
  width:100%;
  padding:15px 18px;
  font-family:"Noto Sans JP", sans-serif;
  font-size:15px; color:var(--ink);
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  transition:border-color .25s, box-shadow .25s;
}
.form-input::placeholder{ color:#b8ab9b; }
.form-input:focus{
  outline:none;
  border-color:var(--gold-soft);
  box-shadow:0 0 0 3px rgba(189,160,107,.15);
}
.form-textarea{ resize:vertical; min-height:150px; line-height:1.8; }

.form-privacy{
  margin:4px 0 28px;
  font-size:13px; font-weight:300; letter-spacing:.03em;
  color:var(--ink-soft); text-align:center;
}
.form-submit{ display:flex; justify-content:center; }
.contact__btn{
  padding:18px 64px; font-size:17px; letter-spacing:.12em;
  box-shadow:0 12px 30px rgba(205,139,149,.3);
}
.contact__btn .ico-arrow{ width:20px; height:20px; fill:none; stroke:#fff; stroke-width:1.6; }

/* ============ Footer ============ */
.footer{
  background:#ece3d4;
  border-top:1px solid var(--line);
  padding:clamp(56px, 6vw, 84px) clamp(24px, 5vw, 60px) 0;
}
.footer__inner{
  max-width:1160px; margin:0 auto;
  display:flex; flex-direction:column; align-items:center;
  text-align:center;
  gap:32px;
  padding-bottom:clamp(48px, 5vw, 70px);
}

.brand--footer{ align-items:center; justify-content:center; }
.footer__brand{ display:flex; flex-direction:column; align-items:center; }
.footer__tagline{
  margin-top:20px;
  font-family:"Zen Old Mincho", serif;
  font-size:15px; letter-spacing:.08em; line-height:1.9;
  color:var(--ink-soft);
}

.footer__nav ul{
  display:flex; flex-wrap:wrap;
  justify-content:center; gap:16px 30px;
}
.footer__nav a{
  font-size:14px; letter-spacing:.06em; color:var(--ink);
  transition:color .25s;
}
.footer__nav a:hover{ color:var(--gold); }

.footer__info{
  font-size:13.5px; font-weight:300;
  line-height:2; letter-spacing:.04em;
  color:var(--ink-soft);
}
.footer__info p{ margin-bottom:10px; }
.footer__info a{ color:var(--ink-soft); transition:color .25s; }
.footer__info a:hover{ color:var(--gold); }

.footer__copy{
  border-top:1px solid rgba(189,160,107,.25);
  padding:24px 0;
  font-family:"Cormorant Garamond", serif;
  font-size:13px; letter-spacing:.12em;
  text-align:center; color:var(--ink-soft);
}

/* ============ Responsive (mobile) ============ */
@media (max-width:900px){
  .gnav, .btn-reserve--header{ display:none; }
  .hamburger{ display:flex; }

  /* ヘッダーは写真の上のクリーム帯に固定（写真と重ねない） */
  .site-header{
    position:static;
    inset:auto;
    background:var(--cream);
    justify-content:space-between;
    align-items:flex-start;
    gap:0;
    padding:14px 20px 12px;
  }
  .brand{ gap:10px; }
  .brand__mark{ width:38px; }
  .brand__sub{ font-size:8.5px; letter-spacing:.05em; margin-bottom:3px; padding-left:0; }
  .brand__name{ font-size:27px; letter-spacing:.08em; }
  .brand__read{ font-size:8.5px; letter-spacing:.28em; margin-top:2px; padding-left:0; }
  .hamburger{ width:30px; height:24px; gap:6px; margin-top:6px; }

  .hero{
    background-image:url("../images/ChatGPT Image 2026年6月1日 21_19_50 (2).png");
    background-position:top center;
    background-size:100% auto;
    background-repeat:no-repeat;
    min-height:auto;
  }
  .hero__inner{
    display:block;
    min-height:auto;
    /* 画像内の写真領域ぶんだけ空けて、テキストは下のクリーム地へ */
    padding:67vw 26px 30px;
  }
  .hero__copy{ width:100%; }

  /* 見出しは2行に収め、サイズを抑える */
  .hero__title{
    font-size:clamp(22px, 6.4vw, 28px);
    line-height:1.55; white-space:normal; letter-spacing:.03em;
  }

  .leaf-divider{ margin:18px 0 16px; }
  .leaf-divider__line{ width:120px; }

  /* サブコピーは小さめ＆自然に折り返す（強制改行を無効化） */
  .hero__lead{ font-size:12.5px; line-height:1.85; }
  .hero__lead br{ display:none; }

  .features{ gap:12px; justify-content:space-between; max-width:none; margin:24px 0 22px; }
  .feature{ width:auto; }
  .feature__icon{ width:74px; height:74px; margin-bottom:8px; }
  .feature__icon svg{ width:34px; height:34px; }
  .feature__label{ font-size:11px; line-height:1.45; }

  .cta{ display:flex; align-items:stretch; text-align:center; margin-top:4px; }
  .btn-reserve--main{
    width:100%; justify-content:center;
    padding:16px 20px; font-size:18px;
  }
  .cta__note{ text-align:center; margin-top:12px; }
  .cta__sub{
    display:inline-block; margin-top:16px;
    color:var(--pink-deep); font-size:14px; letter-spacing:.08em;
  }

  /* スマホは4つ目のバッジを隠して3つに（完成イメージに合わせる） */
  .features .feature:nth-child(4){ display:none; }
  .owner-badge{ display:none; }

  /* ----- Concept（スマホ：写真を上に積む） ----- */
  .concept{ flex-direction:column; }
  .concept__media{ flex:none; width:100%; height:62vw; max-height:420px; }
  .concept__media img{
    height:100%;
    border-radius:28px;   /* 四隅すべて角丸 */
  }
  .concept__body{ padding:44px 26px 56px; }

  .sec-head{ gap:14px; margin-bottom:20px; }
  .sec-head__num{ font-size:28px; }
  .sec-head__en{ font-size:15px; letter-spacing:.18em; }
  .sec-title{ font-size:clamp(28px, 8vw, 36px); letter-spacing:.12em; margin-bottom:28px; }
  .sec-title__leaf{ display:none; }   /* 見出し左の装飾は非表示 */

  .concept__lead{ font-size:clamp(19px, 5.4vw, 23px); line-height:1.8; margin-bottom:24px; }
  .concept__lead br{ display:none; }
  .concept__lead br.lead-br-sp{ display:inline; }   /* 「完全個室マンツーマン。」の後だけ改行 */
  .concept__text{ font-size:15px; line-height:1.95; margin-bottom:36px; }
  .concept__text br{ display:none; }

  .concept__features{ flex-wrap:wrap; gap:12px; max-width:none; margin-bottom:40px; }
  .cfeature{ flex:1 1 calc(50% - 6px); padding:20px 8px 16px; border-radius:16px; }
  .cfeature__icon svg{ width:38px; height:38px; }
  .cfeature__label{ font-size:12px; }

  .concept__cta{ align-self:stretch; }
  .btn-reserve--ghost{ width:100%; justify-content:center; padding:16px 20px; }

  .concept__sprig--tr{ width:90px; top:-10px; right:16px; opacity:.4; }
  .concept__sprig--br{ display:none; }

  /* ----- Price（スマホ） ----- */
  .price{ padding:64px 18px 72px; }
  .price__head{ margin-bottom:34px; }
  .price__note-top{ font-size:13.5px; }   /* 改行はPCと同じく維持 */

  .price__panel{ padding:24px 20px; border-radius:18px; }
  .price-row{ padding:15px 0; justify-content:space-between; }
  .price-row__leader{ display:none; }            /* スマホはドット線を省略し左右寄せ */
  .price-row__name{ font-size:14.5px; white-space:normal; }
  .price-row__min{ margin-left:8px; font-size:11.5px; }
  .price-row__price{ font-size:21px; }

  .price__cta{ margin-top:32px; }
  .price__sprig{ display:none; }

  /* ----- Access（スマホ：縦積み） ----- */
  .access{ padding:64px 22px 72px; }
  .access__head{ margin-bottom:34px; }
  .access__inner{ flex-direction:column; gap:28px; }
  .access__map{ flex:none; width:100%; min-height:0; height:62vw; max-height:360px; border-radius:18px; }
  .access__map iframe{ min-height:0; height:100%; }
  .access__info{ padding-top:0; }
  .info-row{ gap:18px; padding:18px 2px; }
  .info-row dt{ flex:0 0 76px; font-size:14px; }
  .info-row dd{ font-size:14px; }
  .access__btn{ align-self:stretch; justify-content:center; width:100%; margin-top:30px; padding:16px 20px; }

  /* ----- Contact（スマホ） ----- */
  .contact{ padding:64px 22px 80px; }
  .contact__head{ margin-bottom:34px; }
  .contact__note-top{ font-size:13.5px; }
  .contact__note-top br{ display:none; }
  .form-row{ margin-bottom:22px; }
  .form-label{ font-size:14px; }
  .form-input{ font-size:16px; padding:14px 16px; }  /* 16pxでiOSの自動ズーム防止 */
  .contact__btn{ width:100%; justify-content:center; padding:17px 20px; }

  /* ----- Footer（スマホ） ----- */
  .footer__inner{ gap:30px; padding-bottom:40px; }
  .footer__nav ul{ flex-direction:column; align-items:center; gap:13px; }
}

/* さらに小さい端末 */
@media (max-width:360px){
  .hero__inner{ padding:67vw 20px 24px; }
  .feature__icon{ width:66px; height:66px; }
  .feature__icon svg{ width:30px; height:30px; }
  .feature__label{ font-size:10.5px; }
}
