/* MENU の中身（試作_v3）：白の地が画面を覆い、四つの英字が立ち上がる。言葉づかいは MESSAGE・BUSINESS と同じ（Barlow Condensed 500・金の線）。 */
.mn{position:fixed;inset:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:19;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s;overflow:auto}
.menu-open .mn{opacity:1;visibility:visible;transition:opacity .6s ease}
.menu-open .hd{background:transparent!important}
.mn-in{min-height:100%;display:flex;flex-direction:column;justify-content:center;gap:clamp(40px,8vh,96px);padding:calc(var(--header-h) + 24px) var(--side) 32px}
.mn-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,5vh,56px) clamp(32px,6vw,96px);max-width:1040px;width:100%;margin:0 auto}
.mn-a{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:18px;padding-bottom:16px;color:var(--ink);opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .9s var(--ease)}
.menu-open .mn-a{opacity:1;transform:none;transition-delay:calc(.08s + var(--k,0)*.07s)}
.mn-a .en{font-family:var(--disp);font-weight:500;font-size:clamp(34px,3.4vw,46px);line-height:1.1;letter-spacing:.2em;color:var(--ink);transition:color .5s ease}
.mn-a .jp{font-size:13px;letter-spacing:.14em;color:var(--sub)}
.mn-a .ln2{position:absolute;left:0;right:0;bottom:0;height:1px;overflow:hidden;background:#E4E4E0}
.mn-a .ln2::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(172,135,0,.95),rgba(201,162,74,.75));transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease)}
.mn-a:last-child:nth-child(odd){grid-column:1/-1}   /* 五つ目（CONTACT）は一列ぶん＝左下に一つだけ残らない（2026-10-08） */
.mn-a:hover .en,.mn-a.cur .en{color:var(--gold)}
.mn-a:hover .ln2::after,.mn-a.cur .ln2::after{transform:none}
.mn-foot{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.mn-logo{display:block;color:var(--ink)}
.mn-logo .wa-row{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:12px;row-gap:8px;justify-content:center}
.mn-logo .wa-row .wa-sym{height:22px}
.mn-logo .wa-row .wa-en{font-size:17px}
.mn-logo .wa-row .wa-jp{grid-column:1/-1;text-align:center;font-size:11px}
.mn-pol{display:flex;gap:32px;flex-wrap:wrap;justify-content:center}
.mn-pol a{font-size:12px;letter-spacing:.08em;color:var(--sub)}
.mn-pol a:hover{color:var(--ink)}
@media (max-width:767px){
  .mn-nav{grid-template-columns:1fr;gap:26px}
  .mn-a .en{font-size:34px}
  .mn-a .jp{font-size:12px}
  .mn-in{gap:44px}
  .mn-logo .wa-row .wa-sym{height:20px}.mn-logo .wa-row .wa-en{font-size:15px}
}
@media (prefers-reduced-motion:reduce){.mn,.mn-a{transition:none}.mn-a{opacity:1;transform:none}}
