/* トップページ：イベントカード／ご案内カード／お知らせ（2026-10 再設計） */
.hv-sec{padding:8px 0 28px}
.hv-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}
.hv-head h2{font-size:22px;font-weight:700;letter-spacing:1px;color:var(--text);line-height:1.3}
.hv-head h2 small{display:block;font-size:11px;font-weight:700;letter-spacing:2.5px;color:var(--brown);margin-bottom:2px}
.hv-more{font-size:13px;font-weight:700;color:var(--brown);white-space:nowrap}
.hv-more:hover{text-decoration:underline}

/* イベントカード */
.hv-slider{position:relative}
.hv-events{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:4px 2px 14px;scrollbar-width:none}
.hv-events::-webkit-scrollbar{display:none}
.hv-events>.hv-ev{flex:0 0 calc((100% - 54px)/4.25);scroll-snap-align:start}
.hv-nav{position:absolute;top:calc(50% - 40px);width:44px;height:44px;border-radius:50%;border:1px solid rgba(139,105,20,.25);background:#fff;color:var(--brown);font-size:20px;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.14);display:flex;align-items:center;justify-content:center;z-index:2;transition:opacity .2s,background .2s}
.hv-nav:hover{background:var(--yellow)}
.hv-nav[disabled]{opacity:0;pointer-events:none}
.hv-nav--prev{left:-14px}
.hv-nav--next{right:-14px}
.hv-ev{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(139,105,20,.16);border-radius:16px;overflow:hidden;transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.hv-ev:hover{box-shadow:0 10px 28px rgba(139,105,20,.16);transform:translateY(-2px)}
.hv-ev-photo{position:relative;aspect-ratio:3/2;background:var(--yellow-light);overflow:hidden}
.hv-ev-photo img{width:100%;height:100%;object-fit:cover}
.hv-ev-date{position:absolute;left:0;top:14px;background:var(--yellow);color:var(--text);font-weight:700;font-size:17px;line-height:1.1;padding:6px 12px 6px 10px;border-radius:0 12px 12px 0;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.hv-ev-date small{display:block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-top:2px}
.hv-ev-body{padding:10px 12px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.hv-ev-place{font-size:12px;font-weight:700;color:var(--brown);display:flex;align-items:center;gap:5px}
.hv-ev-place svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;flex-shrink:0}
.hv-ev-title{font-size:14px;font-weight:700;line-height:1.5;color:var(--text)}

.hv-ev-pick{position:absolute;right:10px;top:12px;background:var(--brown);color:#fff;font-size:12px;font-weight:700;letter-spacing:1px;padding:5px 12px;border-radius:100px;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.hv-ev-collab{position:absolute;left:0;right:0;bottom:0;background:rgba(139,105,20,.92);color:#fff;font-size:13px;font-weight:700;letter-spacing:.5px;line-height:1.4;padding:7px 12px;text-align:center}
.hv-places{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 4px}
.hv-places li{font-size:12px;font-weight:700;color:var(--brown);background:#fff;border:1px solid var(--yellow);border-radius:100px;padding:3px 12px}

/* ご案内カード（キャラバン・書籍） */
.hv-feature{display:grid;grid-template-columns:.75fr 1fr;background:var(--yellow-pale);border:2px solid var(--yellow);border-radius:20px;overflow:hidden;margin-bottom:18px;transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.hv-feature:hover{box-shadow:0 8px 32px rgba(255,230,0,.28);transform:translateY(-2px)}
.hv-feature-photo{position:relative;min-height:0;background:var(--yellow-light)}
.hv-feature-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:35% 50%;filter:brightness(1.14) saturate(1.06)}
.hv-feature-body{padding:16px 28px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.hv-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--brown)}
.hv-feature-body h3,.hv-book-body h3{font-size:19px;font-weight:700;line-height:1.5;color:var(--text)}
.hv-feature-body p,.hv-book-body p{font-size:13px;line-height:1.7;color:var(--text-sub)}
.hv-link{margin-top:4px;font-size:14px;font-weight:700;color:var(--brown)}
/* パソコンでは、キャラバンと書籍2冊のカードの高さをそろえる */
@media (min-width:861px){.hv-feature,.hv-book{height:224px}}
.hv-books{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.hv-book{display:flex;gap:22px;align-items:center;background:#fff;border:1px solid rgba(139,105,20,.18);border-radius:16px;padding:16px 18px;transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.hv-book:hover{box-shadow:0 10px 28px rgba(139,105,20,.16);transform:translateY(-2px)}
.hv-book img{width:118px;height:auto;border-radius:4px;box-shadow:0 3px 10px rgba(0,0,0,.18);flex-shrink:0}
.hv-book-body{display:flex;flex-direction:column;gap:6px}
.hv-book-body h3{font-size:16px}
/* 出張ワークショップ（企業・学校・行政向け）は控えめに、いちばん下 */
.hv-biz{display:flex;align-items:center;gap:18px;border:1px dashed rgba(139,105,20,.4);border-radius:14px;padding:16px 22px;background:#fff;transition:background .2s}
.hv-biz:hover{background:var(--yellow-pale)}
.hv-biz-label{font-size:11px;font-weight:700;letter-spacing:1px;color:#fff;background:var(--brown);border-radius:100px;padding:4px 12px;white-space:nowrap}
.hv-biz-text{flex:1;font-size:14px;color:var(--text)}
.hv-biz-text b{font-weight:700}
.hv-biz-text span{display:block;font-size:12px;color:var(--text-sub)}
.hv-biz .arr{color:var(--brown);font-weight:700}

/* note の最新記事 */
.hv-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.hv-note{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(139,105,20,.16);border-radius:14px;overflow:hidden;transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.hv-note:hover{box-shadow:0 10px 28px rgba(139,105,20,.16);transform:translateY(-2px)}
.hv-note-photo{aspect-ratio:1200/630;background:var(--yellow-light);overflow:hidden}
.hv-note-photo img{width:100%;height:100%;object-fit:cover}
.hv-note-body{padding:12px 14px 16px;display:flex;flex-direction:column;gap:4px}
.hv-note-body time{font-size:12px;color:var(--text-muted);letter-spacing:1px}
.hv-note-title{font-size:14px;font-weight:700;line-height:1.55;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

@media (max-width:860px){
  .hv-events{gap:12px}
  .hv-events>.hv-ev{flex-basis:calc((100% - 24px)/3.2)}
  .hv-nav{display:none}
  .hv-feature{grid-template-columns:1fr}
  .hv-feature-photo{min-height:0;aspect-ratio:16/9}
  .hv-books{grid-template-columns:1fr}
  .hv-notes{grid-template-columns:repeat(2,1fr);gap:12px}
}
@media (max-width:520px){
  .hv-events>.hv-ev{flex-basis:56%}
  .hv-head h2{font-size:19px}
  .hv-ev-collab{font-size:11px;padding:5px 8px}
  .hv-ev-date{font-size:15px;padding:5px 10px 5px 8px;top:8px}
  .hv-ev-body{padding:10px 12px 14px}
  .hv-ev-title{font-size:13px}
  .hv-ev-place{font-size:11px}
  .hv-feature-body{padding:20px 20px}
  .hv-biz{flex-wrap:wrap;gap:8px 12px;padding:14px 16px}
  .hv-biz-text{flex-basis:100%;order:3}
  .hv-note-body{padding:10px 12px 14px}
  .hv-note-title{font-size:13px}
}
