/* =========================================================
   株式会社Unity — /company/ page-specific styles
   Reuses :root vars from style.css (concrete / ink / safety orange).
   Style.css is NOT edited — additive only.
   ========================================================= */

/* ---- 代表署名枠（sign.png 要差し替え） ---- */
.sign-frame{
  margin-top:36px;
  border:1px dashed var(--line-strong);
  background:rgba(22,20,15,.03);
  padding:clamp(22px,4vw,34px) 20px;
  display:flex;align-items:center;justify-content:flex-end;
  min-height:96px;
}
.sign-ph{
  font-size:.7rem;letter-spacing:.12em;color:var(--ink-3);
  text-align:right;line-height:1.8;
}

/* ---- 沿革 / History timeline ---- */
.history{
  border-top:2px solid var(--ink);
}
.hist-row{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  padding:clamp(22px,3vw,34px) 0;
  border-bottom:1px solid var(--line);
  position:relative;
}
.hist-date{
  font-family:var(--mono);
  font-size:clamp(1.1rem,2.6vw,1.5rem);
  font-weight:700;
  letter-spacing:.04em;
  color:var(--accent-dk);
  line-height:1;
}
.hist-body{
  font-size:.96rem;line-height:2.05;color:var(--ink-2);max-width:62ch;
}
.hist-body b{
  display:block;font-weight:900;color:var(--ink);
  font-size:1.1rem;letter-spacing:.03em;margin-bottom:6px;line-height:1.5;
}
.history-note{
  margin-top:24px;
  font-size:.72rem;letter-spacing:.06em;color:var(--ink-3);line-height:1.9;
}

/* ---- アクセス / Access ---- */
.access-layout{display:grid;gap:clamp(32px,5vw,56px)}
.access-figs{display:grid;gap:18px}
.access-photo{
  position:relative;aspect-ratio:16/10;
  border:1px solid var(--ink);overflow:hidden;background:var(--ink);
}
.access-photo img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.map-frame{
  position:relative;
  aspect-ratio:16/10;
  background:
    radial-gradient(110% 80% at 70% 20%, rgba(255,77,0,.1), transparent 55%),
    linear-gradient(155deg,#26221b,#131009);
  border:1px solid var(--ink);
  overflow:hidden;
}
.map-frame::before{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(var(--line-light) 1px,transparent 1px),
    linear-gradient(90deg,var(--line-light) 1px,transparent 1px);
  background-size:40px 40px;opacity:.5;
}
/* Drop-in replacement: a real <iframe> placed inside .map-frame fills it */
.map-frame iframe{
  position:absolute;inset:0;width:100%;height:100%;border:0;display:block;
}
.map-ph{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  text-align:center;font-size:.78rem;letter-spacing:.08em;
  color:rgba(244,243,240,.6);line-height:1.9;width:84%;
}
.map-ph .tag{
  display:inline-block;border:1px solid var(--line-light);padding:6px 12px;margin-bottom:12px;
  color:var(--accent);font-size:.66rem;letter-spacing:.24em;
}

.access-info{display:grid;gap:24px;align-content:start}
.acc-block{
  border-left:3px solid var(--accent);
  padding-left:18px;
}
.acc-k{
  display:block;font-size:.66rem;letter-spacing:.16em;
  color:var(--ink-3);text-transform:uppercase;margin-bottom:6px;
}
.acc-v{
  font-size:.98rem;line-height:1.9;color:var(--ink);
}

@media (min-width:960px){
  .access-layout{grid-template-columns:1.3fr 1fr;align-items:start}
}
