
/* --- トップページ（設計 1a TOP）--------------------------------------------
   出自: _core/data/kaikei-tax-theme/css-src/front.css(52行)
   セレクタ対応: .home #main → body.home .main / .home #sidebar → body.home .side
   -------------------------------------------------------------------------- */
.kt-front{ padding-top:24px; }
.kt-front__main{ background:transparent !important; padding:0 !important; }
.kt-front__side{ background:transparent !important; }
.kt-front__main > * + *{ margin-top:20px; }

.kt-today{ background:var(--kt-paper); border-left:3px solid var(--kt-deep); padding:20px 24px; display:flex; gap:26px; }
.kt-today__label{ flex:0 0 auto; font:600 11px/1.6 var(--kt-mono); letter-spacing:.12em; color:var(--kt-link); padding-top:4px; }
.kt-today__title{ display:block; font-size:20px; font-weight:600; color:var(--kt-ink) !important; text-decoration:none; line-height:1.6; }
.kt-today__title:hover{ text-decoration:underline; }
.kt-today__lead{ margin:10px 0 0; font-size:14px; line-height:1.95; color:var(--kt-text); }

.kt-tiles{ display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.kt-tile{ display:flex; flex-direction:column; gap:7px; background:#2C463B; padding:17px 18px; text-decoration:none; color:#fff; }
.kt-tile:hover{ background:var(--kt-mid); text-decoration:none; }
.kt-tile__title{ font-size:16px; font-weight:600; color:#fff; line-height:1.5; }
.kt-tile__desc{ font-size:12px; line-height:1.7; color:#C3D4C9; }

.kt-panel{ background:var(--kt-paper); border:1px solid var(--kt-line); }
.kt-panel__head{ display:flex; justify-content:space-between; align-items:center; padding:11px 16px; border-bottom:1px solid var(--kt-line); }
.kt-panel__title{ font-size:13px; font-weight:600; letter-spacing:.06em; color:var(--kt-deep); }
.kt-panel__count{ font:500 11px/1 var(--kt-mono); color:var(--kt-muted); }
.kt-panel .kt-list{ border:0; }
.kt-list__tags{ white-space:nowrap; }
.kt-list__tags .kt-tag{ font-size:11px; padding:4px 8px; margin-right:4px; }
.kt-list__day{ font:500 11px/1 var(--kt-mono); color:var(--kt-muted); }
.kt-list thead th{ font-size:11px; background:transparent; padding:8px 14px; border:0; }

.kt-side-panel{ background:var(--kt-paper); border:1px solid var(--kt-line); margin-bottom:16px; }
.kt-side-panel__head{ padding:10px 13px; border-bottom:1px solid var(--kt-line); font-size:12px; font-weight:600; letter-spacing:.07em; background:var(--kt-panel); color:var(--kt-deep); }
.kt-deadlines{ list-style:none; margin:0; padding:0; }
.kt-deadlines li{ display:flex; gap:12px; align-items:baseline; padding:9px 14px; border-bottom:1px solid var(--kt-line-2); font-size:13px; }
.kt-deadlines li:last-child{ border-bottom:0; }
.kt-deadlines li.is-key{ background:var(--kt-panel); font-weight:600; }
.kt-deadlines__date{ font:500 11px/1.4 var(--kt-mono); color:var(--kt-link); flex:0 0 auto; }
.kt-deadlines__name{ color:var(--kt-text); font-size:12px; line-height:1.6; }
.kt-srclist{ list-style:none; margin:0; padding:0; }
.kt-srclist li{ padding:10px 14px; border-bottom:1px solid var(--kt-line-2); }
.kt-srclist li:last-child{ border-bottom:0; }
.kt-srclist a{ display:block; font-size:12px; line-height:1.7; color:var(--kt-link) !important; }
.kt-srclist__date{ display:block; font:500 10px/1.8 var(--kt-mono); color:var(--kt-muted); }

@media(max-width:1023px){
  .kt-tiles{ grid-template-columns:1fr; }
  .kt-today{ flex-direction:column; gap:10px; }
}

/* フロントは各ブロックが地の上に載る（main の白箱を外す） */
body.home .main{ background:transparent; padding:0; border:0; box-shadow:none; }
body.home .side{ background:transparent; padding:0; }
