@charset "UTF-8";
/* =============================================================
   EIGHT SPACE — 会員ページ（ログイン後）

   色・書体・角丸はサイト本体（css/es.css）の値をそのまま使う。
   ここに足すのは、読み物ではなく道具として使う画面に要るものだけ。
   一覧・状態のラベル・入力の並び。

   見た目を増やさない。会員が来る目的は
   「前の予約を見る」「草案の続きを書く」の2つで、
   飾りが増えるほどその2つが遠くなる。
   ============================================================= */

/* hidden 属性を効かせる。
   ブラウザ既定の [hidden]{display:none} は、クラスで指定した display に負ける。
   .mb-head nav a や .es-btn は display を持っているので、JS で hidden を
   立てても消えない。会員に「会員管理」のリンクが見えたままになり、
   掲載OKの草案で保存ボタンが残ったのはこれが原因だった。 */
[hidden]{display:none !important}

/* --- 骨組み ------------------------------------------------------------ */
.mb-head{
  position:sticky;top:0;z-index:60;
  background:rgba(11,11,12,.96);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--on-dark-line);
}
.mb-head .bar{
  max-width:1100px;margin:0 auto;padding:0 var(--pad);
  min-height:64px;display:flex;align-items:center;gap:16px;
}
.mb-head .logo img{height:26px;width:auto;display:block}
.mb-head nav{display:flex;gap:4px;margin-left:auto;align-items:center;flex-wrap:wrap}
.mb-head nav a{
  display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;
  border-radius:var(--r);font-size:13px;color:rgba(245,243,239,.72);
}
.mb-head nav a:hover{color:var(--paper);background:rgba(245,243,239,.08)}
.mb-head nav a[aria-current]{color:var(--ink);background:var(--accent);font-weight:700}
.mb-head .who{
  display:flex;align-items:center;gap:10px;font-size:12px;
  color:rgba(245,243,239,.5);white-space:nowrap;
}
.mb-head .out{
  background:none;border:1px solid rgba(245,243,239,.28);border-radius:var(--r);
  color:rgba(245,243,239,.8);padding:8px 13px;min-height:40px;font-size:12px;cursor:pointer;
}
.mb-head .out:hover{background:rgba(245,243,239,.1);color:var(--paper)}

@media (max-width:640px){
  .mb-head .bar{flex-wrap:wrap;padding-block:10px;gap:8px}
  .mb-head nav{order:3;width:100%;margin-left:0;overflow-x:auto;flex-wrap:nowrap}
  .mb-head nav a{white-space:nowrap}
  .mb-head .who span.nm{display:none}
}

.mb-main{max-width:1100px;margin:0 auto;padding:clamp(24px,4vw,44px) var(--pad) 96px}
.mb-main.narrow{max-width:820px}

.mb-title{margin:0 0 6px;font-size:clamp(21px,2.4vw,28px);font-weight:700;line-height:1.4}
.mb-sub{margin:0 0 28px;font-size:13.5px;line-height:1.9;color:var(--muted)}

.mb-sec{margin-top:clamp(30px,4vw,48px)}
.mb-sec:first-of-type{margin-top:0}
.mb-sec > h2{
  margin:0 0 14px;font-size:15px;font-weight:700;letter-spacing:.02em;
  display:flex;align-items:center;gap:10px;
}
.mb-sec > h2 .n{
  font-family:var(--en);font-size:12px;color:var(--muted-2);font-weight:400;
  background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:2px 9px;
}
.mb-sec > h2 .sp{margin-left:auto}

/* --- カード・一覧 ------------------------------------------------------ */
.mb-card{
  border:1px solid var(--line);border-radius:var(--r);background:#fff;
  padding:clamp(16px,2vw,24px);
}
.mb-list{display:grid;gap:10px}
.mb-row{
  display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;
  border:1px solid var(--line);border-radius:var(--r);background:#fff;
  padding:15px 17px;
}
a.mb-row{color:inherit}
a.mb-row:hover{border-color:var(--accent)}
.mb-row .main{flex:1 1 260px;min-width:0}
.mb-row .t{font-size:15px;font-weight:700;line-height:1.55;word-break:break-word}
.mb-row .d{font-size:12.5px;color:var(--muted);line-height:1.85;margin-top:4px}
.mb-row .side{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:12px;color:var(--muted-2);
}

.mb-empty{
  border:1px dashed var(--line-strong);border-radius:var(--r);
  padding:28px 20px;text-align:center;color:var(--muted-2);font-size:13.5px;line-height:1.9;
}

/* --- 状態のラベル ------------------------------------------------------
   色は5段階ぶんだけ。増やすと、どれが「まだ動いていない」のか
   ひと目で分からなくなる。 */
.mb-pill{
  display:inline-flex;align-items:center;min-height:24px;
  padding:3px 10px;border-radius:999px;
  font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
  border:1px solid var(--line-strong);background:var(--paper-2);color:var(--muted);
}
.mb-pill.draft   {background:#F1EFEA;color:#5A5A5C;border-color:#DEDBD3}
.mb-pill.review  {background:#FFF4E8;color:#9A5B14;border-color:#F0D7B6}
.mb-pill.revising{background:#FDECE8;color:#B23A20;border-color:#F3CFC5}
.mb-pill.approved{background:#E6F6F4;color:#0A6E6E;border-color:#B7E2DD}
.mb-pill.published{background:#0FB5B5;color:#0B0B0C;border-color:#0FB5B5}
.mb-pill.stop    {background:#FDECE8;color:#B23A20;border-color:#F3CFC5}
.mb-pill.admin   {background:#0B0B0C;color:#F5F3EF;border-color:#0B0B0C}

/* --- 表（会員管理） ---------------------------------------------------- */
.mb-tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.mb-table{width:100%;border-collapse:collapse;font-size:13px;min-width:680px}
.mb-table th,.mb-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line)}
.mb-table th{
  font-size:11.5px;letter-spacing:.06em;color:var(--muted-2);font-weight:700;
  background:var(--paper-2);white-space:nowrap;
}
.mb-table tr:last-child td{border-bottom:none}
.mb-table td.num{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--muted)}
.mb-table .acts{display:flex;gap:6px;flex-wrap:wrap}
.mb-table .acts button{
  border:1px solid var(--line-strong);background:#fff;border-radius:var(--r);
  padding:6px 10px;min-height:32px;font-size:12px;cursor:pointer;white-space:nowrap;
}
.mb-table .acts button:hover{border-color:var(--accent);color:var(--accent)}
.mb-table .acts button.danger:hover{border-color:#C0392B;color:#C0392B}

/* --- ログイン画面 ------------------------------------------------------ */
.mb-auth{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  padding:40px var(--pad);background:var(--paper);
}
.mb-auth .box{width:100%;max-width:420px}
.mb-auth .brand{display:flex;justify-content:center;margin-bottom:26px}
.mb-auth .brand img{height:30px;width:auto}
.mb-auth .panel{
  border:1px solid var(--line);border-radius:var(--r);background:#fff;
  padding:clamp(24px,4vw,34px);
}
.mb-auth h1{margin:0 0 6px;font-size:19px;font-weight:700}
.mb-auth .note{margin:0 0 22px;font-size:13px;line-height:1.9;color:var(--muted)}
.mb-auth .es-btn{width:100%}
.mb-auth .alt{
  margin-top:20px;padding-top:18px;border-top:1px solid var(--line);
  font-size:13px;line-height:1.9;color:var(--muted);text-align:center;
}
.mb-auth .alt a{border-bottom:1px solid var(--line-strong);padding-bottom:1px}
.mb-back{
  display:inline-flex;align-items:center;gap:6px;min-height:40px;
  margin-top:18px;font-size:13px;color:var(--muted);
}
.mb-back:hover{color:var(--accent)}

/* --- 入力の並び -------------------------------------------------------- */
.mb-form{display:grid;gap:18px}
.mb-form .es-field label{margin-bottom:7px}
/* 何も出していないときのメッセージ欄が、ボタンとの間に穴を作らないようにする */
.mb-form .es-msg:empty{min-height:0;margin:0}
.mb-actions{
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;
  margin-top:22px;padding-top:20px;border-top:1px solid var(--line);
}
.mb-actions .sp{margin-left:auto}
@media (max-width:560px){
  .mb-actions{flex-direction:column;align-items:stretch}
  .mb-actions .sp{margin-left:0}
  .mb-actions .es-btn{width:100%}
}

/* 折りたたみの節（草案の入力が長いので、種類ごとに畳む） */
.mb-fold{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-bottom:12px}
.mb-fold > summary{
  list-style:none;cursor:pointer;padding:16px 44px 16px 18px;position:relative;
  font-size:14.5px;font-weight:700;min-height:56px;display:flex;align-items:center;gap:10px;
}
.mb-fold > summary::-webkit-details-marker{display:none}
/* 合字が絵に変わるまでの一瞬、"expand_more" という文字がそのまま出る。
   1文字ぶんの箱に押し込めて、見出しを押し広げないようにする（es.css と同じ考え方） */
.mb-fold > summary::after{
  content:"expand_more";font-family:'Material Symbols Outlined';font-size:22px;color:var(--muted-2);
  position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:transform .2s ease;
  display:inline-block;width:1em;height:1em;line-height:1;overflow:hidden;white-space:nowrap;
}
.mb-fold[open] > summary::after{transform:translateY(-50%) rotate(180deg)}
.mb-fold > summary .cnt{
  margin-left:auto;margin-right:6px;font-size:11.5px;font-weight:400;color:var(--muted-2);
}
.mb-fold .body{padding:2px 18px 20px;border-top:1px solid var(--line)}

/* 特徴の入力（3つまで） */
.mb-feat{border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:10px;background:var(--paper-2)}
.mb-feat .hd{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.mb-feat .hd b{font-size:12px;color:var(--muted)}
.mb-feat .hd button{
  margin-left:auto;border:1px solid var(--line-strong);background:#fff;border-radius:var(--r);
  min-height:32px;padding:5px 10px;font-size:12px;cursor:pointer;
}
.mb-feat .hd button:hover{border-color:#C0392B;color:#C0392B}

/* 画像 */
.mb-imgs{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.mb-img{position:relative;width:120px}
.mb-img img{width:120px;height:84px;object-fit:cover;border:1px solid var(--line);border-radius:var(--r);background:var(--paper-2)}
.mb-img .x{
  position:absolute;top:-8px;right:-8px;width:26px;height:26px;border-radius:50%;
  border:1px solid var(--line-strong);background:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;color:var(--muted);
}
.mb-img .x:hover{border-color:#C0392B;color:#C0392B}
.mb-img input{
  width:100%;margin-top:6px;padding:6px 8px;font-size:12px;
  border:1px solid var(--line);border-radius:var(--r);
}

/* --- PR TIMES のプレビュー ---------------------------------------------
   本文は等幅にしない。PR TIMES に貼ったときの見え方に寄せる。 */
.pr-preview{
  border:1px solid var(--line);border-radius:var(--r);background:#fff;
  padding:clamp(20px,3vw,34px);
}
.pr-preview .pr-body{
  white-space:pre-wrap;word-break:break-word;
  font-size:14.5px;line-height:2.05;color:var(--ink);
}
.pr-edit{
  width:100%;min-height:420px;padding:18px;border:1px solid var(--line-strong);
  border-radius:var(--r);background:#fff;
  font-size:14.5px;line-height:2.05;resize:vertical;
}
.pr-edit:focus{outline:none;border-color:var(--accent)}
.pr-bar{
  display:flex;gap:8px;flex-wrap:wrap;align-items:center;
  margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line);
}
.pr-bar .sp{margin-left:auto}
.pr-tabbtn{
  border:1px solid var(--line-strong);background:#fff;border-radius:var(--r);
  padding:9px 15px;min-height:40px;font-size:13px;cursor:pointer;
}
.pr-tabbtn[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.pr-hint{font-size:12.5px;line-height:1.9;color:var(--muted-2);margin:10px 0 0}

/* 差し戻しコメント */
.mb-back-note{
  border:1px solid #F0C6B8;background:#FDF3F0;border-radius:var(--r);
  padding:15px 17px;margin-bottom:18px;font-size:13.5px;line-height:1.9;
}
.mb-back-note b{display:block;font-size:12px;color:#B23A20;margin-bottom:5px;letter-spacing:.04em}

/* 画面いっぱいの通知（コピーしました等） */
.mb-toast{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%);
  background:var(--ink);color:var(--paper);border-radius:var(--r);
  padding:13px 22px;font-size:13.5px;z-index:200;
  box-shadow:0 8px 30px rgba(0,0,0,.22);animation:esPop .18s ease;
  max-width:calc(100vw - 32px);text-align:center;
}

/* =============================================================
   予約カレンダー
   7列（曜日）× 時間の格子。狭い画面でも列を減らさない。
   1週間を一望できることに意味があるので、横に潰しても7列は残す。
   ============================================================= */
.cal-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.cal-bar .wk{font-size:14px;font-weight:700;min-width:11em}
.cal-bar .sp{margin-left:auto}
.cal-bar button{
  border:1px solid var(--line-strong);background:#fff;border-radius:var(--r);
  min-height:40px;padding:8px 13px;font-size:13px;cursor:pointer;
  display:inline-flex;align-items:center;gap:6px;
}
.cal-bar button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
.cal-bar button:disabled{opacity:.4;cursor:default}

.cal-wrap{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}
.cal{display:grid;grid-template-columns:54px repeat(7,minmax(0,1fr));font-size:12px}
.cal > *{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}
.cal > *:nth-child(8n){border-right:none}

.cal-hd{
  padding:8px 4px;text-align:center;background:var(--paper-2);
  font-weight:700;line-height:1.5;position:sticky;top:0;z-index:2;
}
.cal-hd .d{font-size:15px}
.cal-hd .w{font-size:11px;color:var(--muted-2);letter-spacing:.04em}
.cal-hd.sat .w{color:#2C6FA8}
.cal-hd.sun .w{color:#B23A20}
.cal-hd.today{background:var(--accent);color:var(--ink)}
.cal-hd.today .w{color:var(--ink)}
.cal-hd .mk{display:block;font-size:12px;margin-top:2px}

.cal-t{
  padding:0 4px;text-align:right;color:var(--muted-2);font-size:11px;
  background:var(--paper-2);display:flex;align-items:center;justify-content:flex-end;
  font-variant-numeric:tabular-nums;
}

/* 枠。押せる高さを確保する（44pxは指で押せる下限） */
.cal-c{
  min-height:44px;border:none;background:#fff;cursor:pointer;padding:0;
  display:flex;align-items:center;justify-content:center;
  font-size:10.5px;color:var(--muted-2);font-family:inherit;
}
.cal-c:hover:not(:disabled){background:var(--tint,#EAF7F6)}
.cal-c:disabled{cursor:default}
.cal-c.open{background:#fff}
.cal-c.open::after{content:"空";color:#0A6E6E;font-size:11px}
.cal-c.booked,.cal-c.tentative{background:var(--paper-2);color:var(--faint,#8C8577)}
.cal-c.booked::after{content:"×"}
.cal-c.tentative::after{content:"×"}
.cal-c.blocked{background:repeating-linear-gradient(45deg,#F0EEE9,#F0EEE9 4px,#E6E3DC 4px,#E6E3DC 8px)}
.cal-c.past,.cal-c.closed{background:#F7F6F3;color:#C9C5BC}
.cal-c.past::after,.cal-c.closed::after{content:"–"}
.cal-c.sel{background:var(--accent) !important;color:var(--ink)}
.cal-c.sel::after{content:"選択中";font-size:10px;font-weight:700;color:var(--ink)}
.cal-c.mine{background:#EAF3FB;color:#2C6FA8}
.cal-c.mine::after{content:"自分"}

.cal-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:11.5px;color:var(--muted-2)}
.cal-legend span{display:inline-flex;align-items:center;gap:6px}
.cal-legend i{width:14px;height:14px;border:1px solid var(--line-strong);border-radius:2px;flex:none}
.cal-legend i.open{background:#fff}
.cal-legend i.busy{background:var(--paper-2)}
.cal-legend i.blocked{background:repeating-linear-gradient(45deg,#F0EEE9,#F0EEE9 3px,#E6E3DC 3px,#E6E3DC 6px)}
.cal-legend i.sel{background:var(--accent);border-color:var(--accent)}
.cal-legend i.mine{background:#EAF3FB;border-color:#B6D4EE}

@media (max-width:640px){
  .cal{grid-template-columns:42px repeat(7,minmax(0,1fr));font-size:11px}
  .cal-hd{padding:6px 2px}
  .cal-hd .d{font-size:13px}
  .cal-c{min-height:44px}
  .cal-c.open::after,.cal-c.sel::after{font-size:9.5px}
  .cal-c.sel::after{content:"選択"}
}

/* 選んだ内容 */
.cal-pick{
  border:1px solid var(--accent);background:rgba(15,181,181,.07);border-radius:var(--r);
  padding:15px 17px;margin-top:16px;
}
.cal-pick .t{font-size:15px;font-weight:700;margin-bottom:4px}
.cal-pick .d{font-size:12.5px;color:var(--muted)}

/* =============================================================
   請求書
   画面ではカードとして、印刷ではA4の書面として出す。
   ============================================================= */
.iv-doc{
  background:#fff;border:1px solid var(--line);border-radius:var(--r);
  padding:clamp(20px,4vw,44px);max-width:780px;margin:0 auto;
  font-size:13px;line-height:1.85;color:var(--ink);
}
.iv-doc h1{
  margin:0 0 24px;font-size:22px;font-weight:700;letter-spacing:.3em;
  text-align:center;padding-bottom:14px;border-bottom:2px solid var(--ink);
}
.iv-meta{display:flex;justify-content:flex-end;gap:24px;flex-wrap:wrap;font-size:12.5px;margin-bottom:20px}
.iv-meta dl{margin:0;display:grid;grid-template-columns:auto auto;gap:2px 12px}
.iv-meta dt{color:var(--muted-2)}
.iv-meta dd{margin:0;font-variant-numeric:tabular-nums}

.iv-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:26px}
@media (max-width:600px){.iv-parties{grid-template-columns:1fr}}
.iv-parties h2{
  margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--muted-2);
}
.iv-to .nm{font-size:17px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:6px;display:block}
.iv-to .sub,.iv-from .sub{font-size:12px;color:var(--muted);line-height:1.9}

.iv-big{
  display:flex;align-items:baseline;gap:12px;margin:0 0 26px;
  padding:14px 18px;background:var(--paper-2);border-radius:var(--r);
}
.iv-big .lb{font-size:12px;color:var(--muted-2);font-weight:700}
.iv-big .n{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;margin-left:auto}
.iv-big .u{font-size:13px}

.iv-table{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:18px}
.iv-table th,.iv-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left}
.iv-table th{background:var(--paper-2);font-size:11px;letter-spacing:.06em;color:var(--muted-2);white-space:nowrap}
.iv-table td.n,.iv-table th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}

/* 合計。表の外に置く（狭い画面で表が横に送れるため） */
.iv-sum{
  display:grid;grid-template-columns:1fr auto;gap:6px 24px;
  margin:0 0 18px;padding:12px 0 0;font-size:12.5px;
  max-width:340px;margin-left:auto;
}
.iv-sum dt{color:var(--muted);text-align:right}
.iv-sum dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.iv-sum dt.tt,.iv-sum dd.tt{
  border-top:2px solid var(--ink);padding-top:9px;margin-top:3px;
  font-weight:700;font-size:15px;color:var(--ink);
}

.iv-bank{border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;font-size:12.5px;line-height:2}
.iv-bank h2{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--muted-2)}
.iv-bank .v{white-space:pre-wrap}
.iv-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:14px;white-space:pre-wrap}

/* 明細の編集（管理者） */
.iv-edit{display:grid;grid-template-columns:1fr 80px 70px 110px 32px;gap:8px;margin-bottom:8px;align-items:center}
.iv-edit input{padding:9px 10px;font-size:14px;border:1px solid var(--line-strong);border-radius:var(--r);width:100%}
.iv-edit input.n{text-align:right;font-variant-numeric:tabular-nums}
.iv-edit .x{
  border:1px solid var(--line-strong);background:#fff;border-radius:var(--r);
  min-height:38px;cursor:pointer;color:var(--muted);
}
.iv-edit .x:hover{border-color:#C0392B;color:#C0392B}
.iv-edit-hd{
  display:grid;grid-template-columns:1fr 80px 70px 110px 32px;gap:8px;
  font-size:11px;color:var(--muted-2);font-weight:700;margin-bottom:6px;
}
.iv-edit-hd span:nth-child(n+2){text-align:right}
@media (max-width:720px){
  .iv-edit,.iv-edit-hd{grid-template-columns:1fr 1fr 1fr;}
  .iv-edit-hd{display:none}
  .iv-edit{border:1px solid var(--line);border-radius:var(--r);padding:10px;gap:6px}
  .iv-edit input:first-child{grid-column:1 / -1}
  .iv-edit .x{grid-column:1 / -1;min-height:40px}
}

/* --- 印刷（PDFで保存） ---
   ブラウザの印刷から「PDFに保存」を選んでもらう。日本語のPDFを
   JavaScript で作るとフォントを丸ごと積むことになり、数MBになる。 */
@media print{
  .mb-head,.mb-main > .mb-sub,.pr-bar,.mb-actions,.mb-toast,
  .iv-noprint,.mb-back{display:none !important}
  body{background:#fff}
  .mb-main{padding:0 !important;max-width:none}
  .iv-doc{border:none;border-radius:0;padding:0;max-width:none;font-size:11pt}
  .iv-doc h1{font-size:18pt}
  .iv-big{background:#F2F2F2 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .iv-table th{background:#F2F2F2 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  @page{size:A4;margin:16mm}
}

/* --- 320px でも請求書が収まるように ---
   明細は5列あり、狭い画面では余白のぶんだけ画面からはみ出していた。
   詰めたうえで、それでも足りないときは表だけ横に送れるようにする。
   印刷（PDF）のときは元の余白に戻す。 */
.iv-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media screen and (max-width:480px){
  .iv-doc{padding:18px 14px}
  /* 列を潰して4文字ごとに折るより、表ごと横に送れるほうが読める */
  .iv-table{font-size:11.5px;min-width:420px}
  .iv-table th,.iv-table td{padding:8px 6px}
  .iv-meta{justify-content:flex-start}
  .iv-big{padding:12px 14px}
  .iv-big .n{font-size:22px}
}
@media print{
  .iv-tablewrap{overflow:visible}
  .iv-table{font-size:11pt;min-width:0}
  .iv-table th,.iv-table td{padding:9px 10px}
}

/* 単独で置いてあるリンクの押せる高さ（ログイン画面の「パスワードを忘れた方」など） */
.mb-auth .alt a{display:inline-flex;align-items:center;min-height:24px}
