@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 20260921191511
    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
*/


















/* LECRIN-EN-STYLE-START */
/* ==========================================================================
   L'ECRIN 英語版サイト用スタイル

   本家 www.lecrin-mens.com のデザインに寄せている。
   - 地色はオフホワイト(#fafafa)、コンテンツは白
   - 配色は暖色のブラウン(#b88355 / #7b5739)＋ネイビーのボタン(#1c2b4a)
   - 見出しは中央揃えのセリフ体＋下に短い茶色の罫線
   - 本家は日本語明朝。英語版なので Cinzel / Playfair Display / Anton で代替する
   ========================================================================== */
:root {
  --lec-ink: #363636;
  --lec-muted: #605e5e;
  --lec-line: #d9cec1;          /* 本家の細い枠線と同じ暖色グレー */
  --lec-paper: #fafafa;
  --lec-brown: #b88355;         /* アクセント（見出し下の罫線・リンク） */
  --lec-brown-dark: #7b5739;
  --lec-deep: #3d2c1c;
  --lec-navy: #1c2b4a;          /* 本家のボタン色 */
  --lec-gold: #cfa13c;
  --lec-red: #a3392b;           /* 注意書き用（納期など見落とされたくない一文） */

  --lec-display: "Cinzel", "Playfair Display", Georgia, serif;
  --lec-head: "Playfair Display", Georgia, "Times New Roman", serif;
  --lec-body: Georgia, "Times New Roman", "Hiragino Mincho ProN", serif;
  --lec-slab: "Anton", "Playfair Display", Georgia, serif;
}

/* SWELLのヘッダー上に出る紺色の通知バーは本家に無いので消す */
.l-topBar, .c-infoBar { display: none !important; }

/* 地色をオフホワイトにして、本家の“白い紙が乗っている”印象に近づける */
body { background: var(--lec-paper); }

.post_content .lec-section,
.post_content .lec-hero,
.post_content .lec-cta { font-family: var(--lec-body); }

.lec-section { margin: 5rem 0; }

/* ------------------------------------------------------------- 見出し */
.lec-h2 {
  font-family: var(--lec-head);
  font-size: clamp(1.7rem, 1.2rem + 1.9vw, 2.5rem);
  font-weight: 400;
  letter-spacing: .12em;
  line-height: 1.5;
  text-align: center;
  margin: 0 0 .55em;
  color: var(--lec-deep);
}
.lec-h2::after {
  content: ""; display: block; width: 5.5rem; height: 1px;
  background: var(--lec-brown); margin: .9rem auto 0;
}
.lec-sub, .lec-lead {
  color: var(--lec-muted); margin: 0 auto 2.2rem; text-align: center;
  line-height: 2; max-width: 46rem;
}
.lec-lead { font-size: 1.02rem; }
.lec-big {
  font-family: var(--lec-head); font-weight: 400;
  font-size: clamp(1.15rem, .95rem + .9vw, 1.6rem);
  line-height: 1.8; letter-spacing: .06em; color: var(--lec-deep);
}
.lec-note { color: var(--lec-muted); font-size: .85rem; line-height: 2; }
.lec-center { text-align: center; margin: 2.5rem 0; }

/* 見落とされたくない注意書き（納期など）。本文中でも赤字で目立たせる */
.lec-caution {
  color: var(--lec-red);
  font-weight: 700;
  border-left: 3px solid var(--lec-red);
  background: rgba(163, 57, 43, .06);
  padding: .8rem 1.1rem;
  margin: 1.4rem 0;
  line-height: 1.85;
  font-size: .92rem;
  letter-spacing: .02em;
}
.post_content .lec-caution { color: var(--lec-red) !important; }

/* ----------------------------------------------------------- ヒーロー */
/* 本家は全面写真＋左寄せで「L'ECRIN MEN'S / TAILOR SUIT / 完全予約制サロン」 */
.lec-hero {
  position: relative; background-size: cover; background-position: center;
  min-height: min(80vh, 660px); display: flex; align-items: center;
  margin: 0 0 4rem;
}
.lec-hero::before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(20,16,12,.55), rgba(20,16,12,.12) 65%);
}
.lec-hero__inner {
  position: relative; color: #fff; width: 100%;
  padding: 3rem clamp(1.5rem, 5vw, 4.5rem); text-align: left;
}
.lec-hero__eyebrow {
  font-family: var(--lec-display);
  letter-spacing: .3em; font-size: clamp(.8rem, .7rem + .3vw, 1.05rem);
  margin: 0 0 .6rem; text-transform: uppercase;
}
.lec-hero__title {
  font-family: var(--lec-slab);
  font-size: clamp(3rem, 1.5rem + 7vw, 6.5rem);
  line-height: .96; letter-spacing: .02em; font-weight: 400;
  margin: 0; color: #fff; text-transform: uppercase;
}
.lec-hero__lead {
  position: relative; margin: 1.6rem 0 1.9rem; padding-top: 1.4rem;
  font-size: clamp(.9rem, .82rem + .3vw, 1.02rem);
  letter-spacing: .12em; max-width: 26rem; line-height: 1.9;
}
.lec-hero__lead::before {
  content: ""; position: absolute; top: 0; left: 0;
  width: 14rem; max-width: 100%; height: 1px; background: rgba(255,255,255,.8);
}
.lec-hero__cta { margin: 0; }

/* ------------------------------------------------------------- ボタン */
/* 本家のボタンはネイビー地＋内側に細い茶色の枠 */
.lec-btn {
  display: inline-block; padding: .9em 2.4em;
  background: var(--lec-navy); color: #fff !important;
  text-decoration: none !important; border: 1px solid var(--lec-brown);
  outline: 1px solid var(--lec-navy); outline-offset: -4px;
  font-family: var(--lec-display); font-size: .82rem;
  letter-spacing: .18em; text-transform: uppercase;
  transition: background .25s ease, color .25s ease;
}
.lec-btn:hover { background: var(--lec-brown-dark); }
.lec-btn--ghost {
  background: transparent; color: var(--lec-brown-dark) !important;
  outline-color: transparent;
}
.lec-btn--ghost:hover { background: var(--lec-brown); color: #fff !important; }
.lec-hero .lec-btn { background: rgba(28,43,74,.85); }

/* ------------------------------------------------------------- グリッド */
.lec-grid { display: grid; gap: 2.2rem 1.8rem; }
.lec-grid--3 { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }

/* 本家の商品カードは画像の下に中央揃えで品名と価格 */
.lec-card { margin: 0; }
.lec-card img {
  width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block;
  background: #eee;
}
.lec-card figcaption { padding: .95rem .3rem 0; text-align: center; line-height: 1.75; }
.lec-card__title {
  display: block; font-family: var(--lec-head); font-size: .98rem;
  font-weight: 400; letter-spacing: .06em; color: var(--lec-deep);
}
.lec-card__meta { display: block; font-size: .82rem; color: var(--lec-muted); margin-top: .35rem; }

.lec-plain { margin: 0; }
.lec-plain img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ------------------------------------------------------------- 2カラム */
.lec-split { display: grid; gap: 2rem; align-items: center; grid-template-columns: 1fr; }
@media (min-width: 782px) {
  .lec-split { grid-template-columns: 1fr 1fr; gap: 3.5rem; }
  .lec-split--reverse .lec-split__text { order: 2; }
}
.lec-split__text { line-height: 2; }
.lec-split__text > :first-child { margin-top: 0; }
.lec-split__img img { aspect-ratio: 4 / 3; }

.lec-list { padding-left: 1.2em; line-height: 2.1; }
.lec-list li { margin: .3em 0; }

/* --------------------------------------------------------------- タイル */
.lec-tile {
  display: block; padding: 1.6rem; border: 1px solid var(--lec-line);
  background: #fff; text-decoration: none !important; color: inherit !important;
  transition: border-color .25s ease; text-align: center;
}
.lec-tile:hover { border-color: var(--lec-brown); }
.lec-tile strong {
  display: block; font-family: var(--lec-head); font-weight: 400;
  font-size: 1.05rem; letter-spacing: .08em; color: var(--lec-brown-dark);
  margin-bottom: .5rem;
}
.lec-tile span { display: block; font-size: .85rem; color: var(--lec-muted); line-height: 1.95; }
.lec-tile--static { cursor: default; text-align: left; }

/* --------------------------------------------------------- カテゴリ一覧 */
.lec-cat { display: block; text-decoration: none !important; color: inherit !important; }
.lec-cat img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.lec-cat__label { display: block; padding: .85rem .1rem 0; text-align: center; }
.lec-cat__label strong {
  display: block; font-family: var(--lec-display); font-weight: 400;
  letter-spacing: .18em; text-transform: uppercase; color: var(--lec-deep);
  font-size: .92rem;
}
.lec-cat__label em { font-style: normal; font-size: .78rem; color: var(--lec-muted); letter-spacing: .06em; }

/* ----------------------------------------------------------------- 表 */
.lec-tablewrap { overflow-x: auto; }
.lec-table { width: 100%; border-collapse: collapse; min-width: 30rem; }
.lec-table th, .lec-table td {
  text-align: left; padding: 1.1rem .9rem; border-bottom: 1px solid var(--lec-line);
}
.lec-table thead th {
  font-family: var(--lec-display); font-size: .72rem; font-weight: 400;
  letter-spacing: .18em; text-transform: uppercase; color: var(--lec-brown-dark);
  border-bottom-color: var(--lec-brown);
}
.lec-table tbody th {
  font-family: var(--lec-head); font-weight: 400; font-size: 1.02rem;
  letter-spacing: .06em; white-space: nowrap; color: var(--lec-deep);
}
.lec-price { font-size: 1.08rem; white-space: nowrap; color: var(--lec-brown-dark); letter-spacing: .04em; }
.lec-table td:last-child { color: var(--lec-muted); font-size: .86rem; }
.lec-highlight {
  border: 1px solid var(--lec-line); background: #fff;
  padding: 1.1rem 1.3rem; margin: 2rem 0; text-align: center; letter-spacing: .06em;
}
.lec-highlight strong { color: var(--lec-brown-dark); }

/* ------------------------------------------------------------- ステップ */
.lec-steps { list-style: none; padding: 0; margin: 0; border: 1px solid var(--lec-line); background: #fff; }
.lec-step { display: flex; gap: 1.2rem; align-items: baseline; padding: 1.3rem 1.5rem; }
.lec-step + .lec-step { border-top: 1px solid var(--lec-line); }
.lec-step__n {
  flex: 0 0 auto; width: 2rem; height: 2rem; border-radius: 50%;
  border: 1px solid var(--lec-brown); color: var(--lec-brown-dark);
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--lec-display); font-size: .8rem;
}
.lec-step strong {
  display: block; font-family: var(--lec-head); font-weight: 400;
  font-size: 1.02rem; letter-spacing: .06em; color: var(--lec-deep);
}
.lec-step p { margin: .35rem 0 0; color: var(--lec-muted); font-size: .9rem; line-height: 1.95; }

/* --------------------------------------------------------------- プラン */
.lec-plan {
  border: 1px solid var(--lec-line); background: #fff;
  padding: 2rem 2rem 1.8rem; margin: 2.5rem auto; max-width: 34rem; text-align: center;
}
.lec-plan h3 {
  margin: 0 0 1rem; font-family: var(--lec-head); font-weight: 400;
  font-size: 1.1rem; letter-spacing: .14em; color: var(--lec-brown-dark);
}
.lec-plan .lec-list { display: inline-block; text-align: left; margin: 0 0 .8rem; }
.lec-plan__price {
  font-family: var(--lec-head);
  font-size: clamp(2rem, 1.3rem + 2.8vw, 3.2rem);
  margin: .5rem 0 .3rem; color: var(--lec-navy); letter-spacing: .02em;
}
.lec-plan__price span {
  display: block; font-size: .85rem; color: var(--lec-muted);
  margin: .4rem 0 0; letter-spacing: .1em; font-family: var(--lec-body);
}

.lec-compare { display: grid; gap: 1.5rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .lec-compare { grid-template-columns: 1fr 1fr; } }
.lec-compare__col { border: 1px solid var(--lec-line); background: #fff; padding: 1.7rem 1.5rem; text-align: center; }
.lec-compare__col h4 {
  margin: 0 0 .8rem; font-family: var(--lec-display); font-weight: 400;
  font-size: .76rem; letter-spacing: .2em; text-transform: uppercase; color: var(--lec-muted);
}
.lec-compare__col p { margin: .35rem 0; font-size: .92rem; color: var(--lec-muted); }
.lec-compare__total {
  font-family: var(--lec-head); font-size: 1.8rem;
  margin-top: 1rem !important; color: var(--lec-ink); letter-spacing: .02em;
}
.lec-compare__col--ours { border-color: var(--lec-brown); }
.lec-compare__col--ours .lec-compare__total { color: var(--lec-navy); }

/* ------------------------------------------------------------- 問い合わせ */
.lec-dl { margin: 0; }
.lec-dl dt {
  font-family: var(--lec-display); font-size: .72rem; letter-spacing: .2em;
  text-transform: uppercase; color: var(--lec-brown-dark); margin-top: 1.4rem;
}
.lec-dl dd { margin: .35rem 0 0; font-size: 1rem; line-height: 1.95; }
.lec-map { width: 100%; height: 360px; border: 1px solid var(--lec-line); }

/* ------------------------------------------------------------------ CTA */
/* 本家の「貴方もL'ECRIN号でしか出来ない体験を〜」の枠線ボックスに合わせる */
.lec-cta {
  margin: 4.5rem 0 0; padding: 2.8rem 1.75rem;
  border: 1px solid var(--lec-line); background: #fff; text-align: center;
}
.lec-cta h2 {
  font-family: var(--lec-head); font-weight: 400; color: var(--lec-brown-dark);
  margin: 0 0 1rem; font-size: clamp(1.15rem, 1rem + .6vw, 1.5rem); letter-spacing: .12em;
}
.lec-cta p { margin: .6rem auto; max-width: 34rem; line-height: 2; color: var(--lec-muted); }
.lec-cta .lec-btn { margin-top: 1.2rem; }
.lec-contact-line { font-size: .9rem; letter-spacing: .06em; }
.lec-cta a:not(.lec-btn) { color: var(--lec-brown-dark); }

/* ================================================== SWELLの装飾の打ち消し */
/* SWELLは .post_content の見出しに背景バーや縦棒を付けるので、独自ブロック内では消す */
.post_content .lec-h2,
.post_content .lec-cta h2,
.post_content .lec-plan h3,
.post_content .lec-compare h4,
.post_content .lec-tile strong {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.post_content .lec-h2::before,
.post_content .lec-cta h2::before,
.post_content .lec-plan h3::before,
.post_content .lec-plan h3::after,
.post_content .lec-compare h4::before,
.post_content .lec-compare h4::after,
.post_content .lec-tile strong::before { content: none !important; display: none !important; }

.post_content .lec-h2::after,
.post_content .lec-cta h2::after {
  content: "" !important; display: block !important; position: static !important;
  width: 5.5rem !important; height: 1px !important;
  background: var(--lec-brown) !important; margin: .9rem auto 0 !important;
  border: none !important;
}
.post_content .lec-hero__title { color: #fff !important; }
.post_content .lec-section p { line-height: 2; }
.post_content .lec-steps { padding-left: 0; }

/* ヘッダー・フッターも本家のセリフ体・暖色に寄せる */
.l-header, .l-header a { font-family: var(--lec-head); letter-spacing: .08em; }
.c-gnav .menu-item.current-menu-item > a { color: var(--lec-brown-dark); }
.l-footer { font-family: var(--lec-body); }

/* ============================================ SWELL側が勝つ指定への上書き */
/* SWELLの .post_content h2 は白文字＋背景バー。色まで上書きしないと読めない */
.post_content .lec-h2 { color: var(--lec-deep) !important; }
.post_content .lec-cta h2 { color: var(--lec-brown-dark) !important; }
.post_content .lec-plan h3 { color: var(--lec-brown-dark) !important; }
.post_content .lec-tile strong { color: var(--lec-brown-dark) !important; }
.post_content .lec-compare h4 { color: var(--lec-muted) !important; }
.post_content .lec-card__title,
.post_content .lec-step strong,
.post_content .lec-table tbody th { color: var(--lec-deep) !important; }

/* 本家のヘッダーには紺色の帯が無いので消す */
.l-header__bar { display: none !important; }

/* サイト名はロゴ画像に日本語が入っているため、英語版ではテキストのまま整える */
.c-headLogo, .c-headLogo a, .l-header .c-headLogo__title {
  font-family: var(--lec-display) !important;
  letter-spacing: .14em;
  font-weight: 400;
  color: var(--lec-deep);
}

/* ------------------------------------------------ ページタイトル・表の調整 */
/* SWELLのページタイトルは游ゴシック・左寄せ。本家に合わせて中央のセリフ体にする */
.c-pageTitle {
  font-family: var(--lec-head) !important;
  font-weight: 400 !important;
  font-size: clamp(1.8rem, 1.3rem + 2vw, 2.7rem) !important;
  letter-spacing: .14em !important;
  color: var(--lec-deep) !important;
  text-align: center !important;
  margin-bottom: .4em !important;
}
.c-pageTitle::after {
  content: "" !important; display: block !important; position: static !important;
  width: 5.5rem !important; height: 1px !important;
  background: var(--lec-brown) !important; margin: 1rem auto 0 !important;
  border: none !important;
}
.c-pageTitle::before { content: none !important; display: none !important; }

/* SWELLはtheadに紺色の背景を敷くので、本家の“罫線だけ”の表に戻す */
.post_content .lec-table th,
.post_content .lec-table td {
  background: transparent !important;
  border-left: none !important; border-right: none !important; border-top: none !important;
  border-bottom: 1px solid var(--lec-line) !important;
}
.post_content .lec-table thead th {
  color: var(--lec-brown-dark) !important;
  border-bottom: 1px solid var(--lec-brown) !important;
}
.post_content .lec-table tbody th { color: var(--lec-deep) !important; }
.post_content .lec-price { color: var(--lec-brown-dark) !important; }

/* ------------------------------------------------------------------ ロゴ */
/* 本家はロゴ画像の上に「オーダースーツ専門店」が乗る。英語版では英語の一行を添える */
.l-header .c-headLogo { display: inline-block; text-align: center; }
.l-header .c-headLogo::before {
  content: "Made-to-Measure Suits";
  display: block;
  font-family: var(--lec-display);
  font-size: .58rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lec-brown-dark);
  margin-bottom: .3rem;
  white-space: nowrap;
}
.l-header .c-headLogo img { display: block; margin: 0 auto; }
@media (max-width: 959px) {
  .l-header .c-headLogo::before { font-size: .5rem; letter-spacing: .16em; }
}

/* ページタイトルの内側spanが左寄せ＋紺の下線を持っているので、素の文字に戻す */
.c-pageTitle__inner {
  display: inline !important;
  border: none !important;
  padding: 0 !important;
  background: none !important;
}

/* 内側spanがブロック要素のままなので、flexで確実に中央寄せする */
.c-pageTitle {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* ==================================================== ファーストビュー周り */
/* 本家はヘッダーのすぐ下から写真が始まる。SWELLは空の投稿スライダーと
   .l-content の上パディングで隙間を作るので、トップページでは両方消す。 */
.home .p-postSlider { display: none !important; }
.home .l-content { padding-top: 0 !important; margin-top: 0 !important; }
.home .l-mainContent__inner,
.home .post_content { padding-top: 0 !important; margin-top: 0 !important; }
.home .post_content > .lec-hero:first-child { margin-top: 0 !important; }

/* 写真はコンテンツ幅を超えて画面いっぱいに広げる（本家の見え方に合わせる） */
.lec-hero {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  min-height: min(90vh, 900px);
  margin-bottom: 5.5rem;
  align-items: center;
}
.lec-hero::before {
  background: linear-gradient(90deg, rgba(18,14,10,.6), rgba(18,14,10,.15) 60%, rgba(18,14,10,.05));
}
.lec-hero__inner {
  max-width: 1240px; margin: 0 auto;
  padding: 3rem clamp(1.5rem, 5vw, 4rem);
}
.lec-hero__eyebrow { font-size: clamp(.95rem, .75rem + .7vw, 1.5rem); letter-spacing: .28em; margin-bottom: .5rem; }

/* 本家は TAILOR / SUIT の2行組。1行ずつブロックにして大きく見せる */
.lec-hero__title { font-size: clamp(3.4rem, 1.2rem + 9vw, 8.5rem); line-height: .92; }
.lec-hero__title span { display: block; }
.lec-hero__lead {
  margin: 1.8rem 0 0; padding-top: 1.5rem;
  font-size: clamp(.95rem, .85rem + .35vw, 1.15rem); letter-spacing: .18em;
}
.lec-hero__lead::before { width: 18rem; }

@media (max-width: 600px) {
  .lec-hero { min-height: 78vh; }
  .lec-hero__lead::before { width: 10rem; }
}

/* ============================================ ヘッダーの予約ボタン・ロゴ */
/* 本家はナビ右端に枠線の「ご予約はこちらから」がある。Bookをボタン化する */
.l-header .c-gnav > .menu-item:last-child > a {
  border: 1px solid var(--lec-brown);
  padding: .75em 1.5em;
  margin-left: .8rem;
  color: var(--lec-brown-dark);
  transition: background .25s ease, color .25s ease;
}
.l-header .c-gnav > .menu-item:last-child > a:hover {
  background: var(--lec-brown); color: #fff;
}
.l-header .c-gnav > .menu-item:last-child > a::after { content: none !important; }
.l-header .c-headLogo::before { font-size: .62rem; }

/* 本家の TAILOR / SUIT は写真の高さの半分近くを占める大きさ */
.lec-hero__title { font-size: clamp(4rem, 1rem + 12vw, 11rem) !important; line-height: .88 !important; }
.lec-hero__eyebrow { font-size: clamp(1rem, .7rem + 1vw, 1.8rem); }
.lec-hero__lead { font-size: clamp(1rem, .88rem + .4vw, 1.25rem); }

/* Bookボタンがヘッダーの高さいっぱいに伸びてしまうので、文字の高さに揃える */
.l-header .c-gnav > .menu-item:last-child {
  display: flex !important;
  align-items: center !important;
}
.l-header .c-gnav > .menu-item:last-child > a {
  display: inline-flex !important;
  align-items: center !important;
  height: auto !important;
  line-height: 1.2 !important;
}

/* トップのAccessの住所。lec-bigだと折り返しが多く重いので中間のサイズにする */
.lec-address {
  font-family: var(--lec-head);
  font-size: 1.08rem;
  line-height: 1.9;
  letter-spacing: .04em;
  color: var(--lec-deep);
  margin: 0 0 1rem;
}

/* ==================================== ファーストビューを本家のサイズ感に戻す */
/* 元画像が2048x1365(=3:2)。全幅に伸ばすと粗が出るので、本家と同じく
   コンテンツ幅より少し広い程度＋3:2で、原寸を超えない範囲に収める。 */
.lec-hero {
  --lec-hero-w: min(1200px, 94vw);
  width: var(--lec-hero-w) !important;
  margin-left: calc(50% - var(--lec-hero-w) / 2) !important;
  margin-right: calc(50% - var(--lec-hero-w) / 2) !important;
  aspect-ratio: 3 / 2;
  min-height: 0 !important;
  margin-bottom: 5.5rem !important;
}
.lec-hero__inner { max-width: none; padding: 2.5rem clamp(1.25rem, 3.5vw, 3rem); }

/* 画像が小さくなった分、見出しも本家の比率（画像幅の約1/4）に合わせる */
.lec-hero__title { font-size: clamp(2.6rem, 1rem + 5vw, 5.5rem) !important; line-height: .9 !important; }
.lec-hero__eyebrow { font-size: clamp(.85rem, .7rem + .5vw, 1.15rem); letter-spacing: .26em; }
.lec-hero__lead { font-size: clamp(.85rem, .78rem + .3vw, 1rem); margin-top: 1.4rem; padding-top: 1.2rem; }
.lec-hero__lead::before { width: 12rem; }

@media (max-width: 600px) {
  .lec-hero { aspect-ratio: 4 / 5; }
  .lec-hero__lead::before { width: 8rem; }
}

/* ファーストビューをもう一段小さく（元画像2048pxに対して等倍寄りにする） */
.lec-hero { --lec-hero-w: min(1000px, 90vw); }
.lec-hero__title { font-size: clamp(2.2rem, .9rem + 4.2vw, 4.6rem) !important; }
.lec-hero__eyebrow { font-size: clamp(.78rem, .68rem + .4vw, 1rem); }
.lec-hero__inner { padding: 2rem clamp(1.1rem, 3vw, 2.5rem); }
.lec-hero__lead::before { width: 10rem; }

/* =========================== ファーストビュー: 明るさと文字位置を本家に合わせる */
/* 本家は写真に暗いオーバーレイを敷いていない。全面を暗くするのはやめて、
   文字が乗る左下だけごく薄く落として可読性を確保する。 */
.lec-hero::before {
  background: linear-gradient(
    to top right,
    rgba(20, 16, 12, .38) 0%,
    rgba(20, 16, 12, .12) 38%,
    rgba(20, 16, 12, 0) 62%
  ) !important;
}

/* 本家は文字が左下。上下中央ではなく下端に寄せる */
.lec-hero { align-items: flex-end !important; }
.lec-hero__inner {
  padding: 0 0 clamp(1.5rem, 6%, 3.2rem) clamp(1.2rem, 6%, 3.2rem) !important;
}
.lec-hero__eyebrow,
.lec-hero__title,
.lec-hero__lead { text-shadow: 0 1px 10px rgba(0, 0, 0, .35); }
.lec-hero__lead { margin-bottom: 0; }

/* 本家の比率に合わせる: TAILOR の字面幅 ≒ 画像幅の1/4、
   アイキャッチ(L'ECRIN MEN'S)は TAILOR の約1/3.5 */
.lec-hero__title { font-size: clamp(2.7rem, 1rem + 5.2vw, 5.6rem) !important; }
.lec-hero__eyebrow {
  font-size: clamp(1rem, .75rem + 1vw, 1.5rem) !important;
  letter-spacing: .24em; margin-bottom: .45rem;
}
.lec-hero__lead {
  font-size: clamp(.9rem, .8rem + .35vw, 1.08rem) !important;
  margin-top: 1.5rem; padding-top: 1.3rem; letter-spacing: .2em;
}
.lec-hero__lead::before { width: 13rem; }

/* 本家の「TAILOR / SUIT」は字間・行間ともにゆったりしている。
   実測すると字間 ≒ .08em、行間 ≒ 1.15（詰めすぎると別物に見える） */
.lec-hero__title {
  letter-spacing: .08em !important;
  line-height: 1.15 !important;
}
.lec-hero__title span { display: block; }

/* ------------------------------------------------------------------ FAQ */
/* 海外からのお客様向けのQ&A。1問1答を細い罫線で区切るだけの素朴な作りにして、
   本家の「白い紙に文字が並んでいる」印象を壊さないようにする */
.lec-faq { border-top: 1px solid var(--lec-line); max-width: 46rem; margin: 0 auto; }
.lec-faq__item { border-bottom: 1px solid var(--lec-line); padding: 1.7rem .2rem; }
.lec-faq__q {
  font-family: var(--lec-head);
  font-size: clamp(1.02rem, .95rem + .3vw, 1.18rem);
  font-weight: 400; letter-spacing: .04em; line-height: 1.7;
  color: var(--lec-deep); margin: 0 0 .7rem;
}
.lec-faq__mark {
  font-family: var(--lec-display); color: var(--lec-brown);
  font-size: .82em; letter-spacing: .1em; margin-right: .6em;
}
.lec-faq__a { margin: 0; line-height: 2; }
.lec-faq__a + .lec-faq__a { margin-top: .9rem; }
.lec-faq__group {
  font-family: var(--lec-display); text-transform: uppercase;
  letter-spacing: .26em; font-size: .82rem; color: var(--lec-brown-dark);
  text-align: center; margin: 3.4rem 0 1.2rem;
}
.lec-faq__group:first-of-type { margin-top: 0; }

/* SWELLは .post_content のh3に縦棒や背景を付けるので、FAQの問いでは消す */
.post_content .lec-faq__q {
  background: none !important; border: none !important;
  padding: 0 !important; margin-left: 0 !important; margin-right: 0 !important;
  color: var(--lec-deep) !important;
}
.post_content .lec-faq__q::before,
.post_content .lec-faq__q::after { content: none !important; display: none !important; }
.post_content .lec-faq__a { line-height: 2; }

/* ------------------------------------------- 訪日のお客様向けページの補助 */
/* 「45日 / 2ヶ月 / 発送」を並べる3枚組。lec-tile--static を流用しつつ、
   数字だけ大きく見せる */
.lec-span {
  font-family: var(--lec-head); font-size: 1.5rem; letter-spacing: .04em;
  color: var(--lec-brown-dark); display: block; margin-bottom: .35rem;
}
.post_content .lec-span { color: var(--lec-brown-dark) !important; }

/* ----------------------------------------------- Googleの口コミ（[google_reviews]） */
/* google-reviews-widget プラグインは自前のCSSを本文中に <style id="grw-styles"> で出す。
   このファイル（head内）より後ろに来るので、打ち消すには .post_content でスコープして
   詳細度を上げること。!important だけに頼らないで済むのはこのため。
   既定は「左に評価サマリー／右にレビュー」の2カラムだが、他セクションが中央揃えなので、
   サマリーを上段の帯に、レビューを下段の3枚組（.lec-grid--3 と同じ見え方）に組み替える */
.post_content .grw {
  --grw-star: var(--lec-gold);
  --grw-muted: var(--lec-muted);
  --grw-rule: var(--lec-line);
  display: block;
  font-family: var(--lec-body);
  /* .post_content は900px。ヒーローと同じ手口で食み出させ、カードを横に広く取る */
  --grw-w: min(1200px, 94vw);
  width: var(--grw-w);
  margin-left: calc(50% - var(--grw-w) / 2);
}

/* 上段：評価サマリー */
.post_content .grw__summary { text-align: center; margin: 0 0 2.8rem; }
.post_content .grw__title {
  font-family: var(--lec-head);
  font-size: clamp(1.7rem, 1.2rem + 1.9vw, 2.5rem);
  font-weight: 400; letter-spacing: .12em; line-height: 1.5;
  color: var(--lec-deep) !important;
  margin: 0 0 .55em !important;
  background: none !important; border: none !important; padding: 0 !important;
}
.post_content .grw__title::before { content: none !important; display: none !important; }
.post_content .grw__title::after {
  content: "" !important; display: block !important; position: static !important;
  width: 5.5rem !important; height: 1px !important; border: none !important;
  background: var(--lec-brown) !important; margin: .9rem auto 0 !important;
}
.post_content .grw__score {
  justify-content: center; gap: .55rem; margin: 0 0 .4rem; line-height: 1.2;
}
.post_content .grw__number {
  font-family: var(--lec-head); font-weight: 400; font-size: 2.6rem;
  color: var(--lec-deep);
}
.post_content .grw__count {
  margin: 0 0 1rem; color: var(--lec-muted);
  font-size: .88rem; letter-spacing: .06em; line-height: 1.8;
}
.post_content .grw__link {
  color: var(--lec-brown-dark); text-decoration: none;
  font-family: var(--lec-display); font-size: .78rem;
  letter-spacing: .16em; text-transform: uppercase;
  border-bottom: 1px solid var(--lec-line); padding-bottom: .25rem;
}
.post_content .grw__link:hover { border-bottom-color: var(--lec-brown); }
.post_content .grw__attribution {
  margin: 1.1rem 0 0; color: var(--lec-muted);
  font-size: .72rem; letter-spacing: .1em; line-height: 1.6;
}

/* 下段：レビュー3枚組。プラグイン側の「最後の1件だけ罫線なし」は
   カード表示では困るので :last-child ごと打ち消す */
.post_content .grw__list {
  /* SWELLの .post_content ul が padding-left:24px を付けるので、
     プラグイン側の .grw__list{padding:0} では詳細度が足りず打ち消せない。
     放っておくとカード列だけ中央揃えの見出しから24pxずれる */
  margin: 0; padding: 0; list-style: none;
  display: grid; gap: 2.2rem 1.8rem;
  /* 最小幅280pxにしておくと、1200pxでも900pxでも3列・390pxで1列に落ちる */
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.post_content .grw-review,
.post_content .grw-review:last-child {
  border: 1px solid var(--lec-line);
  background: #fff;
  padding: 1.6rem 1.4rem;
}
.post_content .grw-review__author {
  font-family: var(--lec-head); font-weight: 400; letter-spacing: .04em;
  line-height: 1.6;
}
.post_content .grw-review__author a { color: var(--lec-deep) !important; }
.post_content .grw-review__sub { line-height: 1.6; }
/* 「2 months ago」が語中で折り返さないように、収まらなければ行ごと送る */
.post_content .grw-review__sub { flex-wrap: wrap; }
.post_content .grw-review__date {
  color: var(--lec-muted); font-size: .78rem; white-space: nowrap;
}

/* SWELLの .post_content blockquote は背景グレー＋擬似要素付き。引用ではなく
   口コミ本文なので全部消す */
.post_content .grw-review__text {
  background: none !important; border: none !important;
  padding: 0 !important; margin: 0 !important;
  font-size: .9rem; line-height: 1.95; color: var(--lec-ink);
}
.post_content .grw-review__text::before,
.post_content .grw-review__text::after { content: none !important; display: none !important; }
.post_content .grw-review__note {
  color: var(--lec-muted); font-size: .72rem; letter-spacing: .06em; line-height: 1.6;
}

/* LECRIN-EN-STYLE-END */

/* ------------------------------------------------ 日本語版のロゴ表記（2026-09-17）
   本番(Wix)に合わせて、ロゴの上に「オーダースーツ専門店」、下に「レクラン」を出す。
   英語版(lang="en-US")は既存の "Made-to-Measure Suits" のまま。 */
html[lang="ja"] .l-header .c-headLogo::before {
  content: "オーダースーツ専門店";
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-size: .62rem;
  letter-spacing: .08em;
  text-transform: none;
}
html[lang="ja"] .l-header .c-headLogo::after {
  content: "レクラン";
  display: block;
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-size: .6rem;
  letter-spacing: .18em;
  color: var(--lec-brown-dark);
  margin-top: .18rem;
  white-space: nowrap;
}
@media (max-width: 959px) {
  html[lang="ja"] .l-header .c-headLogo::before { font-size: .56rem; letter-spacing: .06em; }
  html[lang="ja"] .l-header .c-headLogo::after  { font-size: .54rem; }
}

/* 言語切替リンク（グローバルナビ内）。CTAボタン化の対象外にする */
.l-header .c-gnav .menu-item.lang-item > a {
  font-size: .82rem;
  letter-spacing: .12em;
  opacity: .8;
}
.l-header .c-gnav .menu-item.lang-item > a:hover { opacity: 1; }

/* LINEは日本語サイトのみに出す（SWELLのSNS設定は言語共通のため、英語側は隠す） */
html[lang="en-US"] .c-iconList__item.-line { display: none !important; }

/* 日本語ロゴをヘッダー高さに収める（上下に文字を足した分、画像を小さくする） */
html[lang="ja"] .l-header .c-headLogo { line-height: 1; }
html[lang="ja"] .l-header .c-headLogo__img,
html[lang="ja"] .l-header .c-headLogo img {
  max-height: 48px !important;
  width: auto !important;
  height: auto !important;
}
html[lang="ja"] .l-header .c-headLogo::before {
  font-size: .54rem; letter-spacing: .06em; line-height: 1.2; margin-bottom: .12rem;
}
html[lang="ja"] .l-header .c-headLogo::after {
  font-size: .52rem; letter-spacing: .16em; line-height: 1.2; margin-top: .1rem;
}
@media (max-width: 959px) {
  html[lang="ja"] .l-header .c-headLogo__img,
  html[lang="ja"] .l-header .c-headLogo img { max-height: 48px !important; }
  html[lang="ja"] .l-header .c-headLogo::before { font-size: .48rem; }
  html[lang="ja"] .l-header .c-headLogo::after  { font-size: .46rem; }
}

/* SWELLは .c-headLogo に固定 height を当てるため、上下に文字を足すとはみ出す。
   日本語版だけ高さを auto にして、親(.l-header__logo, flex/center)に収める。 */
html[lang="ja"] .l-header .c-headLogo { height: auto !important; }

/* ロゴは原寸のまま、ヘッダーを高くする（日本語版は上下に文字が付くため） */
html[lang="ja"] .l-header .c-headLogo__img,
html[lang="ja"] .l-header .c-headLogo img { max-height: 48px !important; }
html[lang="ja"] .l-header__inner,
html[lang="ja"] .l-header__logo { height: 108px !important; }
@media (max-width: 959px) {
  html[lang="ja"] .l-header .c-headLogo__img,
  html[lang="ja"] .l-header .c-headLogo img { max-height: 48px !important; }
  html[lang="ja"] .l-header__inner,
  html[lang="ja"] .l-header__logo { height: auto !important; min-height: 84px; }
}

/* 日本語ヘッダーの最終調整：ロゴは元の表示サイズ(48px)のまま、ヘッダーを高くして上下の文字を収める */
html[lang="ja"] .l-header .c-headLogo__img,
html[lang="ja"] .l-header .c-headLogo img {
  max-height: 48px !important; width: auto !important; height: auto !important;
}
html[lang="ja"] .l-header .c-headLogo { height: auto !important; }
html[lang="ja"] .l-header .c-headLogo::before { font-size: .6rem;  margin-bottom: .2rem; }
html[lang="ja"] .l-header .c-headLogo::after  { font-size: .58rem; margin-top: .18rem; }
html[lang="ja"] .l-header__inner,
html[lang="ja"] .l-header__logo { height: 100px !important; }
@media (max-width: 959px) {
  html[lang="ja"] .l-header .c-headLogo__img,
  html[lang="ja"] .l-header .c-headLogo img { max-height: 40px !important; }
  html[lang="ja"] .l-header__inner,
  html[lang="ja"] .l-header__logo { height: auto !important; min-height: 84px; }
}

/* 言語切替はナビと並べず、ヘッダー右上に小さく独立させる */
@media (min-width: 960px) {
  .l-header__inner { position: relative; }
  .l-header .c-gnav > .menu-item.lang-item {
    position: absolute;
    top: 6px;
    right: 0;
    margin: 0;
  }
  .l-header .c-gnav > .menu-item.lang-item > a {
    display: inline-block;
    padding: 1px 7px;
    font-size: .64rem;
    line-height: 1.6;
    letter-spacing: .12em;
    color: var(--lec-muted, #7b7268);
    border: 1px solid var(--lec-rule, #d9cec1);
    border-radius: 2px;
    opacity: 1;
  }
  .l-header .c-gnav > .menu-item.lang-item > a::after { content: none !important; }
  .l-header .c-gnav > .menu-item.lang-item > a:hover {
    color: var(--lec-brown-dark);
    border-color: var(--lec-brown-dark);
    background: transparent;
  }
}

/* 言語切替の高さを解除（SWELLがナビの li / a に height:100% を当てるため縦に伸びる） */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item,
  .l-header .c-gnav > .menu-item.lang-item > a {
    height: auto !important;
    min-height: 0 !important;
    line-height: 1.5 !important;
  }
  .l-header .c-gnav > .menu-item.lang-item { top: 5px; right: 2px; }
  .l-header .c-gnav > .menu-item.lang-item > a { padding: 1px 8px !important; }
}

/* 言語切替をCTAボタンと重ねない（英語版はヘッダーが低いので上に寄せる） */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item { top: 2px !important; right: 0 !important; }
  html[lang="ja"] .l-header .c-gnav > .menu-item.lang-item { top: 6px !important; }
}

/* 言語切替の最終位置：CTAボタンの上端(約20px)より上に必ず収める */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item { top: 0 !important; right: 0 !important; }
  .l-header .c-gnav > .menu-item.lang-item > a {
    font-size: .6rem !important;
    padding: 0 7px !important;
    line-height: 1.45 !important;
  }
  html[lang="ja"] .l-header .c-gnav > .menu-item.lang-item { top: 6px !important; }
}

/* 言語切替は枠線なしで右端へ。
   ヘッダー内コンテナは max-width 1296px + 右padding 48px なので、
   calc(50% - 50vw) でコンテナの外（ヘッダーの実際の右端）まで押し出す。 */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item {
    top: 0 !important;
    right: calc(50% - 50vw + 28px) !important;
  }
  .l-header .c-gnav > .menu-item.lang-item > a {
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    padding: 5px 0 0 !important;
    font-size: .62rem !important;
    letter-spacing: .14em !important;
    color: var(--lec-muted, #8a8078) !important;
  }
  .l-header .c-gnav > .menu-item.lang-item > a:hover {
    color: var(--lec-brown-dark) !important;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  html[lang="ja"] .l-header .c-gnav > .menu-item.lang-item { top: 4px !important; }
}

/* 日本語 / English を横に並べる。
   Polylangは言語ごとに <li> を出すので、絶対配置のままだと重なる。
   言語別クラス(lang-item-ja / lang-item-en)で right をずらして並びを作る。 */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item-en { right: calc(50% - 50vw + 28px) !important; }
  .l-header .c-gnav > .menu-item.lang-item-ja { right: calc(50% - 50vw + 100px) !important; }

  /* 表示中の言語は濃く、もう一方は控えめに */
  .l-header .c-gnav > .menu-item.lang-item.current-lang > a {
    color: var(--lec-deep, #1c2b4a) !important;
  }
  .l-header .c-gnav > .menu-item.lang-item.current-lang > a:hover {
    text-decoration: none;
    cursor: default;
  }
}

/* 区切りスラッシュを復活させる（SWELLのホバー下線を消すために入れた
   content:none !important を、言語切替だけ上書きする） */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item-ja > a::after {
    content: "/" !important;
    margin-left: 7px;
    color: #c9bfb4;
    position: static !important;
    background: none !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
  }
}

/* lang-item の ::after は出さない（SWELLの装飾が絶対配置で入り込むため） */
@media (min-width: 960px) {
  .l-header .c-gnav > .menu-item.lang-item > a::after { content: none !important; }
}

/* ------------------------------------------------ 言語切替：地球アイコン＋プルダウン
   右上の絶対配置をやめ、グローバルナビの中に戻す。
   親（.lang-parent）を地球アイコンにし、子にPolylangのスイッチャーを入れる。 */
@media (min-width: 960px) {
  .l-header .c-gnav .menu-item.lang-item {
    position: static !important;
    top: auto !important;
    right: auto !important;
    height: auto !important;
  }
}
/* 親のテキストを隠してアイコンだけにする */
.c-gnav .menu-item.lang-parent > a {
  font-size: 0 !important;
  letter-spacing: 0 !important;
}
.c-gnav .menu-item.lang-parent > a .ttl { display: none !important; }
.c-gnav .menu-item.lang-parent > a::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  vertical-align: middle;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9'/%3E%3Cline x1='3' y1='12' x2='21' y2='12'/%3E%3Cline x1='4.6' y1='6.8' x2='19.4' y2='6.8'/%3E%3Cline x1='4.6' y1='17.2' x2='19.4' y2='17.2'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9'/%3E%3Cline x1='3' y1='12' x2='21' y2='12'/%3E%3Cline x1='4.6' y1='6.8' x2='19.4' y2='6.8'/%3E%3Cline x1='4.6' y1='17.2' x2='19.4' y2='17.2'/%3E%3C/svg%3E") no-repeat center / contain;
  opacity: .75;
}
.c-gnav .menu-item.lang-parent > a:hover::before { opacity: 1; }
/* プルダウン内の言語名は通常サイズに戻す */
.c-gnav .sub-menu .menu-item.lang-item > a {
  font-size: .8rem !important;
  letter-spacing: .06em !important;
  padding: .7em 1em .7em 1.4em !important;
  border: none !important;
  color: inherit !important;
}
.c-gnav .sub-menu .menu-item.lang-item.current-lang > a { font-weight: 600; }
/* スマホの開閉メニューではテキストで出す */
@media (max-width: 959px) {
  .c-gnav .menu-item.lang-parent > a { font-size: inherit !important; }
  .c-gnav .menu-item.lang-parent > a .ttl { display: inline !important; }
  .c-gnav .menu-item.lang-parent > a::before { margin-right: .5em; }
}

/* 言語プルダウンの幅と位置を整える */
@media (min-width: 960px) {
  .l-header .c-gnav .menu-item.lang-parent > .sub-menu {
    width: 150px !important;
    min-width: 0 !important;
    left: auto !important;
    right: 0 !important;
  }
}

/* 言語プルダウンの transform を打ち消す（SWELLは translateX(-50%) で中央寄せする） */
@media (min-width: 960px) {
  .l-header .c-gnav .menu-item.lang-parent > .sub-menu {
    width: 150px !important;
    min-width: 0 !important;
    left: auto !important;
    right: 0 !important;
    transform: none !important;
  }
}

/* ------------------------------------------------ 日本語の見出しを大きく
   見出しの寸法は欧文書体(Playfair Display)前提で決めてあり、
   和文にフォールバックすると字面が小さく見えるため、日本語だけ引き上げる。 */
html[lang="ja"] .lec-h2 {
  font-size: clamp(1.45rem, 1.05rem + 1.2vw, 1.85rem);
  letter-spacing: .06em;
}
html[lang="ja"] .lec-cta h2 {
  font-size: clamp(1.4rem, 1.05rem + 1.05vw, 1.75rem);
}
html[lang="ja"] .lec-big {
  font-size: clamp(1.5rem, 1.1rem + 1.2vw, 1.95rem);
  line-height: 1.65;
}
html[lang="ja"] .lec-sub {
  font-size: 1.04rem;
}
html[lang="ja"] .lec-plan h3 {
  font-size: 1.25rem;
}
html[lang="ja"] .c-pageTitle {
  font-size: clamp(1.5rem, 1.15rem + 1.1vw, 2rem);
}
@media (max-width: 599px) {
  html[lang="ja"] .lec-h2 { letter-spacing: .04em; }
}

/* ================================================ 日本語ページのレイアウト・書体調整

   1) 数字の書体
      本文の既定は Georgia で、Georgia の数字は「オールドスタイル数字」（3や7が
      ベースラインより下がる欧文組版用の字形）。和文に混ざると違和感が出るため、
      数字だけ和文明朝系（ライニング数字）に差し替える。 */
@font-face {
  font-family: "LecNum";
  src: local("Hiragino Mincho ProN"), local("HiraMinProN-W3"),
       local("Yu Mincho"), local("YuMincho"), local("Yu Mincho Medium"),
       local("Noto Serif JP"), local("Times New Roman");
  unicode-range: U+0030-0039, U+FF10-FF19, U+002C, U+002E;
  font-display: swap;
}
html[lang="ja"] {
  --lec-display: "LecNum", "Cinzel", "Playfair Display", Georgia, serif;
  --lec-head:    "LecNum", "Playfair Display", Georgia, "Times New Roman", serif;
  --lec-body:    "LecNum", Georgia, "Times New Roman", "Hiragino Mincho ProN", serif;
}

/* 2) セクションの幅を広げる（SWELLの本文幅 900px → 1120px） */
@media (min-width: 960px) {
  html[lang="ja"] .l-mainContent { max-width: 1120px !important; }
}

/* 3) 2カラム内の画像は切り抜かず全体を見せる
      （4:3で固定していたためキッチンカーの横長写真が切れていた） */
html[lang="ja"] .lec-split__img--wide img {
  aspect-ratio: 5 / 3 !important;   /* 元画像 1512x899 ≒ 1.68 なのでほぼ切り抜かれない */
}

/* 4) 地図を広く */
html[lang="ja"] .lec-map { height: 420px; }
@media (max-width: 959px) {
  html[lang="ja"] .lec-map { height: 320px; }
}

/* ------------------------------------------------ 最新情報（Instagram / Facebook） */
.lec-sns { display: grid; gap: 2.5rem; justify-items: center; }
.post_content .lec-igbanner { margin: 0; width: 100%; max-width: 900px; }
.lec-igbanner a { display: block; transition: opacity .25s; }
.lec-igbanner a:hover { opacity: .88; }
.lec-igbanner img {
  width: 100%; height: auto; display: block;
  border: 1px solid var(--lec-line);
}
.lec-fb { width: 100%; max-width: 500px; }
.lec-fb iframe { width: 100% !important; border: 0; display: block; margin: 0 auto; }
@media (max-width: 599px) {
  .lec-sns { gap: 1.8rem; }
}

/* ================================================ トップページの調整（2026-09-18） */
/* 1) 「最近の仕立て」などのカード組みはPCで必ず3列
      （本文幅を1120pxに広げた結果 auto-fill が4列になっていた） */
@media (min-width: 900px) {
  html[lang="ja"] .post_content .lec-grid--3 { grid-template-columns: repeat(3, 1fr); }
}
/* 2) サービスは4枚を1列に */
.lec-grid--4 { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }
@media (min-width: 900px) {
  html[lang="ja"] .post_content .lec-grid--4 { grid-template-columns: repeat(4, 1fr); }
}
/* 3) 最新情報はPCでInstagramバナーとFacebookを横並び */
@media (min-width: 1040px) {
  .lec-sns {
    grid-template-columns: minmax(0, 1fr) 500px;
    align-items: start;
    justify-items: stretch;
    gap: 2.5rem;
  }
  .post_content .lec-igbanner { max-width: none; }
  .lec-fb { max-width: 500px; }
}
/* 4) アクセスは地図を広く、テキスト側を狭く */
@media (min-width: 900px) {
  html[lang="ja"] .lec-split--map { grid-template-columns: 1.75fr 1fr; gap: 2.5rem; }
  html[lang="ja"] .lec-split--map .lec-map { height: 460px; }
}
/* 5) CTA：電話を大きく、罫線で区切る */
.lec-cta--contact .lec-tel {
  margin: 0 auto;
  padding: 1.5rem 0 .3rem;
  border-top: 1px solid var(--lec-line);
  font-size: clamp(1.7rem, 1.1rem + 2.4vw, 2.6rem);
  letter-spacing: .04em;
  line-height: 1.3;
}
.lec-cta--contact .lec-tel a { color: var(--lec-brown-dark); text-decoration: none; }
.lec-cta--contact .lec-tel a:hover { opacity: .8; }
.lec-cta--contact .lec-tel__note {
  margin: 0 auto 1.4rem;
  font-size: .98rem;
  color: var(--lec-deep);
  letter-spacing: .08em;
}
.lec-cta--contact .lec-mail {
  margin: 0 auto;
  padding: 1.1rem 0 0;
  border-top: 1px solid var(--lec-line);
  font-size: 1.02rem;
}
.lec-cta--contact .lec-mail a { color: var(--lec-deep); text-decoration: none; }
.lec-cta--contact .lec-btn { margin-top: 1.6rem; min-width: 18rem; }

/* 最新情報：Facebookを狭く、Instagramバナーを広く（2026-09-18 調整） */
@media (min-width: 1040px) {
  .lec-sns { grid-template-columns: minmax(0, 1fr) 380px !important; }
  .lec-fb { max-width: 380px !important; }
}



/* LECRIN-HIGHLIGHT-ACTION-START */
/* 「通常仕上がり期間」の枠の中にボタンを置くときの余白。
   .lec-highlight 自体が text-align:center なので中央寄せは継承される。 */
.lec-highlight .lec-btn { margin-top: 1rem; }
/* LECRIN-HIGHLIGHT-ACTION-END */

/* LECRIN-HIGHLIGHT-SIZE-START */
/* 「通常仕上がり期間」の枠を本文より一段大きく。
   枠内のボタンは .lec-btn 側で font-size を持っているので影響を受けない。 */
.lec-highlight { font-size: 1.18rem; line-height: 1.8; }
@media (max-width: 600px) {
  .lec-highlight { font-size: 1.06rem; }
}
/* LECRIN-HIGHLIGHT-SIZE-END */

/* LECRIN-LIGHTBOX-START
   ギャラリーの拡大表示（JSは assets/lec-lightbox.js）。
   一覧は 3:4 に切り取っているので、拡大時は contain で全体を見せる。 */
.lec-card img { cursor: zoom-in; }

.lec-lb {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3.5rem 1rem 1rem;
  background: rgba(28, 22, 16, .94);
  opacity: 0;
  transition: opacity .18s ease;
  overscroll-behavior: contain;
}
/* display を指定すると hidden 属性が効かなくなるので明示的に消す */
.lec-lb[hidden] { display: none; }
.lec-lb.is-open { opacity: 1; }

.lec-lb__stage {
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 100%;
  max-height: 100%;
}

.lec-lb__img {
  display: block;
  max-width: min(1200px, 92vw);
  max-height: calc(100vh - 11rem);
  max-height: calc(100dvh - 11rem);
  width: auto;
  height: auto;
  object-fit: contain;
  background: rgba(255, 255, 255, .04);
}

.lec-lb__cap {
  flex: none;
  padding: .9rem .4rem 0;
  text-align: center;
  line-height: 1.7;
  color: var(--lec-paper);
}
.lec-lb__cap .lec-card__title {
  font-family: var(--lec-head);
  font-size: 1rem;
  letter-spacing: .06em;
  color: var(--lec-paper);
}
.lec-lb__cap .lec-card__meta { color: rgba(250, 250, 250, .72); }

/* 枚数は左上。下に置くと縦長の画像でキャプションと重なる */
.lec-lb__count {
  position: absolute;
  top: 0;
  left: 0;
  height: 56px;
  z-index: 2;
  display: flex;
  align-items: center;
  padding-left: 1.4rem;
  margin: 0;
  font-family: var(--lec-display);
  font-size: .78rem;
  letter-spacing: .14em;
  color: rgba(250, 250, 250, .6);
}

/* ---- 操作ボタン。矢印と×はCSSで描く（フォント依存を作らない） ---- */
.lec-lb__nav,
.lec-lb__close {
  position: absolute;
  appearance: none;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--lec-paper);
}
.lec-lb__nav:focus-visible,
.lec-lb__close:focus-visible { outline: 1px solid var(--lec-brown); outline-offset: -4px; }

/* ★ 上端56pxは「閉じる」と枚数表示の帯。ここに送りボタンを重ねると
   ×のクリックを送りボタンが奪ってしまう（実際に踏んだ）。必ず下にずらす。 */
.lec-lb__nav {
  top: 56px;
  bottom: 0;
  z-index: 1;
  width: clamp(56px, 12vw, 110px);
  display: flex;
  align-items: center;
  justify-content: center;
}
.lec-lb__nav--prev { left: 0; }
.lec-lb__nav--next { right: 0; }
.lec-lb__nav::before {
  content: "";
  width: 18px;
  height: 18px;
  border-top: 1px solid rgba(250, 250, 250, .85);
  border-right: 1px solid rgba(250, 250, 250, .85);
  transition: border-color .15s ease, transform .15s ease;
}
.lec-lb__nav--next::before { transform: rotate(45deg); }
.lec-lb__nav--prev::before { transform: rotate(-135deg); }
.lec-lb__nav:hover::before { border-color: var(--lec-brown); }
.lec-lb.is-single .lec-lb__nav { display: none; }

.lec-lb__close {
  top: 0;
  right: 0;
  z-index: 3;
  width: 56px;
  height: 56px;
}
.lec-lb__close::before,
.lec-lb__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 1px;
  background: rgba(250, 250, 250, .85);
  transition: background .15s ease;
}
.lec-lb__close::before { transform: translate(-50%, -50%) rotate(45deg); }
.lec-lb__close::after { transform: translate(-50%, -50%) rotate(-45deg); }
.lec-lb__close:hover::before,
.lec-lb__close:hover::after { background: var(--lec-brown); }

@media (max-width: 599px) {
  .lec-lb { padding: 3rem .5rem 2.4rem; }
  .lec-lb__img { max-width: 100%; max-height: calc(100dvh - 10rem); }
  /* 指が画像にかぶらないよう、矢印は画面端の細い帯だけにする */
  .lec-lb__nav { width: 44px; top: 48px; }
  .lec-lb__close { width: 48px; height: 48px; }
  .lec-lb__count { height: 48px; padding-left: 1rem; }
  .lec-lb__cap { font-size: .9rem; }
}

@media (prefers-reduced-motion: reduce) {
  .lec-lb { transition: none; }
  .lec-lb__nav::before { transition: none; }
}
/* LECRIN-LIGHTBOX-END */

/* LECRIN-FIXHEADER-BOOK-START */
/* スクロールで下りてくる追従バー（#fix_header.l-fixHeader）にも、
   通常ヘッダーと同じ「予約」ボタンの枠線装飾を効かせる。
   SWELLは .l-header とは別DOMで追従バーを出力するため、
   .l-header 限定の指定（上部「ヘッダーの予約ボタン・ロゴ」）だけでは乗らない。 */
.l-fixHeader .c-gnav > .menu-item:last-child {
  display: flex !important;
  align-items: center !important;
}
.l-fixHeader .c-gnav > .menu-item:last-child > a {
  display: inline-flex !important;
  align-items: center !important;
  height: auto !important;
  line-height: 1.2 !important;
  border: 1px solid var(--lec-brown);
  padding: .6em 1.4em;
  margin-left: .8rem;
  color: var(--lec-brown-dark);
  transition: background .25s ease, color .25s ease;
}
.l-fixHeader .c-gnav > .menu-item:last-child > a:hover {
  background: var(--lec-brown);
  color: #fff;
}
.l-fixHeader .c-gnav > .menu-item:last-child > a::after { content: none !important; }
/* LECRIN-FIXHEADER-BOOK-END */

/* LECRIN-HERO-H1-START
   トップのh1は装飾文字「Tailor / Suit」だけだったので、同じh1の中に
   実際の主題（長崎・佐々町のオーダースーツ専門店）を1行足している。
   見出しの巨大なサイズを継承させないため、ここで明示的に戻す。 */
.lec-hero__title-sub {
  display: block;
  margin-top: 1.1rem;
  font-family: var(--lec-body);
  font-size: clamp(.95rem, .62rem + .85vw, 1.3rem);
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: .16em;
}
@media (max-width: 599px) {
  .lec-hero__title-sub { margin-top: .9rem; letter-spacing: .1em; }
}
/* LECRIN-HERO-H1-END */







/* LECRIN-ARTICLE-START
   読み物ページ（/about-us/ /mobile-store/）の体裁。
   見出しとリードだけ中央で本文は全幅左寄せ、という中途半端な状態だったので
   1カラム中央寄せに統一する。 */
.lec-section--center { text-align: center; }
.lec-section--center > p,
.lec-section--center > ul,
.lec-section--center > ol,
.lec-section--center > .lec-highlight,
.lec-section--center > .lec-caution {
  max-width: 46rem;
  margin-left: auto;
  margin-right: auto;
}
.lec-section--center > p { line-height: 2.1; }
.lec-section--center > p + p,
.lec-section--center > ul + p,
.lec-section--center > ol + p,
.lec-section--center > p + ul,
.lec-section--center > p + ol { margin-top: 1.5rem; }

/* 箇条書きだけは行頭を揃えた方が読みやすいので、中央に置いて中身は左 */
.lec-section--center > ul,
.lec-section--center > ol {
  max-width: 34rem;
  text-align: left;
  line-height: 2;
}
.lec-section--center > ul > li + li,
.lec-section--center > ol > li + li { margin-top: .6rem; }

/* 冒頭の一文。ページで最初に目に入る言葉なので大きく。
   ★ 幅を絞ると最後の1〜2文字だけが次の行に落ちて不格好になる。
   幅はセクションいっぱいまで許し、文字サイズを少し抑えて1行に収める。
   それでも折り返す狭い画面では text-wrap: balance で行を均等に割る。 */
.lec-statement {
  font-family: var(--lec-head);
  font-size: clamp(1.2rem, .5rem + 2.1vw, 2rem);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: .08em;
  color: var(--lec-deep);
  margin: 0 auto 1.4rem;
  text-wrap: balance;
  line-break: strict;
}
/* 折り返すときは文節の切れ目で折る。
   そのままだと「スーツ」が「ス／ーツ」のように割れる。
   本文側で <span> に区切っておき、その単位で折り返させる。 */
.lec-statement > span { display: inline-block; }
/* 46remの上限（.lec-section--center > p）より後に置いて打ち消す。
   セクション幅いっぱいまで使わせて、1行に収まる余裕を確保する。 */
.lec-section--center > .lec-statement { max-width: none; }

/* 人物写真。信頼の軸になるので中央で大きめに見せる */
.lec-portrait { max-width: 46rem; margin: 0 auto 2rem; }
.lec-portrait img { width: 100%; height: auto; display: block; }
.lec-portrait figcaption {
  margin-top: .9rem;
  font-family: var(--lec-head);
  font-size: 1.02rem;
  letter-spacing: .1em;
  color: var(--lec-deep);
}

/* 横長の写真 */
.lec-wide { max-width: 46rem; margin: 0 auto 2rem; }
.lec-wide img { width: 100%; height: auto; display: block; }

@media (max-width: 599px) {
  .lec-statement { letter-spacing: .04em; }
  .lec-portrait { max-width: 100%; }
}

/* 2カラム（画像＋文章）の文章側。段落の余白が0で詰まっていたので空ける。
   TOPの移動店舗・使命・店主セクションにも同じく効く。 */
.lec-split__text > p + p { margin-top: 1.2rem; }
.lec-split__text > .lec-big { margin-bottom: .9rem; }
/* 文章が長いと画像が縦中央では上が大きく空くので、上端で揃える。
   .lec-split 全体を変えるとTOPの短い2カラムまで動くため、必要な箇所だけに付ける。 */
.lec-split--top { align-items: start; }
/* LECRIN-ARTICLE-END */



/* LECRIN-H2-ONELINE-START
   長い見出し（例：『挑戦・喜び・カッコイイ』それがレクランのモットーです）用。
   折り返すときに語中で割れないよう、本文側の <span> の区切りで折る。

   ★ font-size / letter-spacing はここで指定しても効かない。
     SWELLの `.post_content h2`（詳細度が上）が勝つため、.lec-h2 の指定ごと無効で、
     実測29.6px・letter-spacing .06em に揃う。見出しはどれも同じ大きさになる。 */
.lec-h2--oneline {
  text-wrap: balance;
  line-break: strict;
}
.lec-h2--oneline > span { display: inline-block; }
/* LECRIN-H2-ONELINE-END */




/* LECRIN-PHOTOS-START
   写真を2枚並べる用。枠は2枚とも同じ大きさ（本文側の img に style="aspect-ratio:4 / 3"）にし、
   中身は contain で全体を見せる。縦長の写真は枠より幅が狭くなるが、切り取られない。

   ★ aspect-ratio を auto にしてはいけない。WordPressが lazy画像の sizes に "auto," を足すため、
     WP標準の contain-intrinsic-size（1500px）が効いて高さが崩れる。 */
.lec-grid--2 { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.lec-grid--photos .lec-card img {
  object-fit: contain;
  background: transparent;
}
/* LECRIN-PHOTOS-END */

/* LECRIN-PRICE-START
   料金表と注記だけが本文全幅（約1090px）まで伸びていて、リード文（46rem）より広く、
   品目・価格・説明が離れて読みにくかった。ページ内の読み幅を46remに揃える。 */
.lec-tablewrap,
.lec-steps,
.lec-section > .lec-note,
.lec-section > .lec-highlight {
  max-width: 46rem;
  margin-left: auto;
  margin-right: auto;
}
/* LECRIN-PRICE-END */

/* LECRIN-BLOG-IMG-START
   ブログ本文の写真が本文幅いっぱい（1088px）に引き伸ばされていた。
   スマホで撮った縦長写真だと高さが2000pxを超えて、1枚で画面を何度も埋めてしまう。
   読み幅に収め、縦長は画面の高さでも止める。
   固定ページの写真は figure.lec-card / .lec-plain なのでここには当たらない。 */
.post_content .wp-block-image img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(100%, 40rem);
  max-height: 72vh;
  margin-left: auto;
  margin-right: auto;
}
.post_content .wp-block-image figcaption { text-align: center; }
/* LECRIN-BLOG-IMG-END */

/* LECRIN-MOVIE-START
   元サイト（Wix）から持ってきた縦型の動画。
   幅いっぱいに伸ばすと1画面を超えるので、スマホの画面比に近い幅で止める。 */
.lec-movie { margin: 0 auto; }
.lec-movie video {
  display: block;
  width: auto;
  height: auto;
  max-width: min(100%, 22rem);
  max-height: 78vh;
  margin-left: auto;
  margin-right: auto;
  background: #000;
}
/* LECRIN-MOVIE-END */

/* LECRIN-BLOG-WIDTH-START
   投稿記事の本文が1120px幅で、1行が長く読みづらかったので読み幅に寄せる。
   固定ページ（TOP・ギャラリー・料金など）は lec-* の段組みを前提に作ってあるので
   .single-post だけに効かせる。 */
.single-post .l-mainContent__inner {
  max-width: 54rem;
  margin-left: auto;
  margin-right: auto;
}
/* LECRIN-BLOG-WIDTH-END */

/* LECRIN-HERO-SP-FULL */
/* スマホではファーストビューの写真を画面の横幅いっぱいに出す（PCは上の 90vw・最大1000px のまま） */
@media (max-width: 599px) {
  .lec-hero { --lec-hero-w: 100vw; }
}
/* LECRIN-HERO-SP-FULL-END */

/* LECRIN-SP-HEADER */
/* スマホのヘッダーを Wix版と同じ「ロゴ｜ご予約｜メニュー」の1段にする（2026-09-25）
   ・検索ボタンは廃止し、その枠に予約ボタン（parts/header/sp_btns.php）
   ・ロゴ下の横スライドメニュー（p-spHeadMenu）は出さない
   ・スクロールして固定表示になったら、ロゴ上下の文字を消して高さを詰める */
@media (max-width: 959px) {
  .l-header__spNav { display: none !important; }

  .l-header__inner { justify-content: flex-start !important; gap: .5rem; }
  .l-header__logo { order: 1 !important; margin-right: auto !important; text-align: left !important; }
  .l-header__customBtn { order: 2 !important; width: auto !important; display: flex; align-items: center; }
  .l-header__menuBtn { order: 3 !important; }

  .lec-sp-reserve {
    display: inline-block;
    padding: .5em .95em;
    border: 1px solid var(--lec-brown-dark, #6b4a2b);
    color: var(--lec-brown-dark, #6b4a2b) !important;
    font-size: .8rem;
    letter-spacing: .12em;
    line-height: 1.2;
    white-space: nowrap;
    text-decoration: none;
  }

  /* 固定表示中はコンパクトに */
  html[data-scrolled="true"] .l-header .c-headLogo::before,
  html[data-scrolled="true"] .l-header .c-headLogo::after { display: none !important; }
  html[data-scrolled="true"] .l-header__inner,
  html[data-scrolled="true"] .l-header__logo { height: 56px !important; min-height: 0 !important; }
  html[data-scrolled="true"] .l-header .c-headLogo__img,
  html[data-scrolled="true"] .l-header .c-headLogo img { max-height: 30px !important; }
}
/* LECRIN-SP-HEADER-END */

/* LECRIN-SP-MENU */
/* ハンバーガーで開くメニューの項目を中央寄せにする（2026-09-25）。
   中央寄せだと左の「>」が浮くので消し、サブメニューは文字を一回り小さくして階層を見せる。 */
.p-spMenu .c-widget__title.-spmenu { text-align: center; }
.p-spMenu .c-spnav a {
  text-align: center;
  padding-left: .75em !important;
  padding-right: .75em !important;
}
.p-spMenu .c-spnav a::before { display: none !important; }
.p-spMenu .c-spnav .sub-menu a { font-size: .9em; }
/* LECRIN-SP-MENU-END */

/* LECRIN-SP-LOGO-TIGHT */
/* スマホ：ロゴ画像と上下の文字（オーダースーツ専門店／レクラン）の間を詰める（2026-09-25）。
   隙間の正体は SWELL が .c-headLogo__link に付ける上下10pxの padding。詰めた分ヘッダーも低くする。 */
@media (max-width: 959px) {
  html[lang="ja"] .l-header .c-headLogo__link { padding-top: 2px !important; padding-bottom: 2px !important; }
  html[lang="ja"] .l-header .c-headLogo::before { margin-bottom: 0 !important; }
  html[lang="ja"] .l-header .c-headLogo::after { margin-top: 0 !important; }
  html[lang="ja"] .l-header__inner,
  html[lang="ja"] .l-header__logo { min-height: 68px !important; }
}
/* LECRIN-SP-LOGO-TIGHT-END */

/* LECRIN-SP-SPLIT-BTN */
/* 1カラムになる幅（781px以下）では、写真＋文章の区画のボタンも他のボタンと同じく中央に置く（2026-09-25） */
@media (max-width: 781px) {
  .lec-split__text > p:has(> .lec-btn:only-child) { text-align: center; }
}
/* 固定ヘッダーは LECRIN-SP-LOGO-TIGHT の min-height より優先して 56px に詰める */
@media (max-width: 959px) {
  html[data-scrolled="true"][lang] .l-header__inner,
  html[data-scrolled="true"][lang] .l-header__logo { min-height: 0 !important; height: 56px !important; }
}
/* LECRIN-SP-SPLIT-BTN-END */

/* LECRIN-SP-LOGO-VCENTER */
/* スマホ：ロゴをヘッダーの高さの中で上下中央に置く（固定表示で56pxに詰めたときに上に寄っていた）2026-09-25 */
@media (max-width: 959px) {
  .l-header__logo { display: flex !important; align-items: center; }
}
/* LECRIN-SP-LOGO-VCENTER-END */

/* LECRIN-BTN-SIZE */
/* ボタンの文字を一回り大きく（2026-09-25）。.82rem だとスマホで約11.5pxと小さかった。
   .lec-btn は全ページ共通（予約フォームの送信・戻るも含む）。 */
.lec-btn { font-size: 1rem; }
.lec-sp-reserve { font-size: .95rem !important; }
.lec-bk__slot { font-size: 1.05rem; }
/* LECRIN-BTN-SIZE-END */

/* LECRIN-SP-HEADER-PAD */
/* スマホ：ヘッダーの左右に余白を取る（2026-09-25）。
   メニューボタンは40px幅の中に線が描かれているので、右は線の見た目で左と揃うよう少なめにする。 */
@media (max-width: 959px) {
  .l-header__inner { padding-left: 16px !important; padding-right: 8px !important; }
  .l-header__logo { padding-left: 0 !important; }
}
/* LECRIN-SP-HEADER-PAD-END */

/* LECRIN-SP-LANG */
/* スマホ：言語切替をヘッダーの予約ボタンの左に出す（parts/header/sp_btns.php）。
   ハンバーガー内の「Language」は重複するので隠す（PCのグローバルナビはそのまま）。2026-09-25 */
@media (max-width: 959px) {
  .l-header__customBtn { gap: .7rem; }
  .lec-sp-lang {
    font-family: var(--lec-display);
    font-size: .9rem;
    letter-spacing: .12em;
    color: var(--lec-brown-dark) !important;
    text-decoration: none;
    padding: .5em .1em;
    border-bottom: 1px solid currentColor;
    line-height: 1;
  }
  .p-spMenu .c-spnav .lang-parent { display: none !important; }
}
/* LECRIN-SP-LANG-END */

/* LECRIN-GALLERY-CAT-TITLE */
/* ギャラリー一覧（/gallery/・/en/collection/）の各色の名前を見出しらしい大きさに（2026-09-25）。
   以前は .92rem 相当でスマホ約13px・PC約15pxと本文より小さかった。 */
.lec-cat__label { padding-top: 1rem; }
.lec-cat__label strong { font-size: 1.3rem !important; letter-spacing: .14em; }
/* LECRIN-GALLERY-CAT-TITLE-END */

/* LECRIN-EN-SP-LOGO-START */
/* 英語版のスマホヘッダー（2026-10-06）
   日本語版と同じく、SWELLの固定heightを外してロゴ上の "Made-to-Measure Suits" を枠内に収める。
   スクロールして固定表示になったときは LECRIN-SP-HEADER のコンパクト表示のまま。 */
@media (max-width: 959px) {
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header .c-headLogo { height: auto !important; line-height: 1; }
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header .c-headLogo__img,
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header .c-headLogo img {
    max-height: 40px !important; width: auto !important; height: auto !important;
  }
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header .c-headLogo::before {
    font-size: .5rem; letter-spacing: .14em; line-height: 1.2; margin-bottom: 0;
  }
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header__inner,
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header__logo { height: auto !important; min-height: 0; padding-top: 0 !important; padding-bottom: 0 !important; }
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header .c-headLogo__link { padding: 2px 0 !important; }
  html[lang="en-US"]:not([data-scrolled="true"]) .l-header .c-headLogo { padding: 4px 0 !important; }
}
/* LECRIN-EN-SP-LOGO-END */
