@import url('style.css?v=2026082408');

/* ==========================================================================
   介護情報基盤 伴走支援ページ
   ========================================================================== */
.kiban-hero{
  overflow:hidden;
  position:relative;
  background-color:#f6fbfb;
  background-image:
    linear-gradient(90deg,rgba(246,251,251,.99) 0%,rgba(246,251,251,.96) 34%,rgba(246,251,251,.72) 51%,rgba(246,251,251,.06) 76%),
    url('../assets/kiban-card-reader-use.jpg');
  background-position:center;
  background-size:cover;
  color:#102c4d;
}
.kiban-site-header{height:76px;border-bottom:1px solid rgba(214,225,233,.72);background:rgba(255,255,255,.96);box-shadow:none}
.kiban-site-header.scrolled{height:68px;box-shadow:none}
.kiban-site-header .header-inner{max-width:1440px;margin:auto}
.kiban-site-header .nav{gap:clamp(18px,2vw,34px)}
.kiban-site-header .nav a{font-size:.82rem;letter-spacing:.01em}
.kiban-hero:before{
  display:none;
}
.kiban-hero:after{content:'';position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(34,142,125,.42) 45%,rgba(1,93,164,.36) 65%,transparent)}
.kiban-hero .eyebrow{color:#015da4}
.kiban-hero h1{color:#102c4d;text-shadow:none;letter-spacing:0;font-size:clamp(3.4rem,5.4vw,5.6rem)}
.kiban-hero-copy{max-width:650px}
.kiban-hero-copy p:last-child{max-width:610px;color:#4c5f6e}
.kiban-hero-layout{position:relative;z-index:1;display:block}

.kiban-points{background:#fff}
.kiban-card-grid{grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.kiban-card-grid article{padding:42px 28px;border-left:1px solid var(--line)}
.kiban-card-grid article:first-child{border-left:0}
.kiban-card-grid b{display:block;color:#015da4;font:700 .75rem Outfit,sans-serif;letter-spacing:.12em}
.kiban-card-grid h3{margin:22px 0 12px;color:#102c4d;font-size:1.14rem}
.kiban-card-grid p{margin:0;color:#4c5f6e;font-size:.88rem;line-height:1.9}
.kiban-careplan-support{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,70px);align-items:center;margin-top:42px;padding:30px 36px;border:1px solid #cbd9e4;border-left:4px solid #015da4;background:#f3f7fa}
.kiban-careplan-support .eyebrow{margin:0 0 12px}
.kiban-careplan-support h3{margin:0;color:#102c4d;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.5}
.kiban-careplan-support>p{margin:0;color:#4c5f6e;font-size:.91rem;line-height:1.9}
.kiban-heading-nowrap .phrase{white-space:nowrap}
.editorial-heading .kiban-heading-nowrap{font-size:clamp(2.05rem,3.5vw,3.1rem);line-height:1.55;letter-spacing:.11em}
.kiban-about .editorial-heading,.kiban-support .editorial-heading{display:block}
.kiban-about .editorial-heading{margin-bottom:clamp(58px,6vw,84px)}
.kiban-about .editorial-heading .eyebrow{margin-bottom:clamp(24px,3vw,34px)}
.kiban-about p{margin-bottom:22px;line-height:2.05}
.kiban-about p:last-child{margin-bottom:0}
.kiban-start-info{padding:20px 24px;background:#f3f7fa;border-left:3px solid #015da4;border-radius:4px;color:#314d64;font-size:.92rem}
.kiban-start-info a{display:inline-block;margin-top:8px;color:#015da4;font-weight:700;border-bottom:1px solid rgba(1,93,164,.28)}
.kiban-support-slider{margin:0 0 46px;overflow:hidden;border:1px solid #d6e1e9;background:#f3f7fa;box-shadow:0 22px 54px rgba(16,44,77,.1)}
.kiban-support-slider:focus-visible{outline:3px solid rgba(0,117,193,.28);outline-offset:4px}
.kiban-support-track{display:flex;animation:kiban-banner-slide 45s ease-in-out infinite;will-change:transform}
.kiban-support-track figure{flex:0 0 100%;margin:0}
.kiban-support-track img{display:block;width:100%;height:auto}
.kiban-support-slider:hover .kiban-support-track,.kiban-support-slider:focus .kiban-support-track{animation-play-state:paused}
@keyframes kiban-banner-slide{
  0%,15%{transform:translateX(0)}
  20%,35%{transform:translateX(-100%)}
  40%,55%{transform:translateX(-200%)}
  60%,75%{transform:translateX(-300%)}
  80%,95%{transform:translateX(-400%)}
  100%{transform:translateX(-500%)}
}

.kiban-limits{background:#f3f7fa}
.kiban-table-wrap{overflow-x:auto;background:#fff;border:1px solid #cbd9e4}
.kiban-table-wrap:focus-visible{outline:3px solid rgba(0,117,193,.22);outline-offset:2px}
.kiban-limit-table{width:100%;min-width:680px;border-collapse:collapse;text-align:left}
.kiban-limit-table caption{padding:17px 22px;border-bottom:1px solid #d6e1e9;color:#586b7c;font-size:.78rem;text-align:left}
.kiban-limit-table th,.kiban-limit-table td{padding:23px 24px;border-bottom:1px solid #d6e1e9;vertical-align:middle}
.kiban-limit-table thead th{background:#102c4d;color:#fff;font-size:.8rem;letter-spacing:.03em}
.kiban-limit-table tbody th{width:54%;color:#102c4d;font-size:1rem}
.kiban-limit-table tbody td{color:#20364a}
.kiban-limit-table tbody td strong{font-size:1.13rem}
.kiban-limit-table tbody tr:last-child th,.kiban-limit-table tbody tr:last-child td{border-bottom:0}
.kiban-service-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}
.kiban-service-groups details{background:#fff;border:1px solid #d6e1e9}
.kiban-service-groups summary{position:relative;padding:19px 48px 19px 20px;color:#102c4d;font-size:.86rem;font-weight:700;line-height:1.7;cursor:pointer;list-style:none}
.kiban-service-groups summary::-webkit-details-marker{display:none}
.kiban-service-groups summary:after{content:'＋';position:absolute;right:20px;color:#015da4}
.kiban-service-groups details[open] summary:after{content:'−'}
.kiban-service-groups p{margin:0;padding:0 20px 20px;color:#586b7c;font-size:.8rem;line-height:1.85}
.subsidy-caution{margin-top:48px;padding:32px 34px;background:#fff;border:1px solid #dde7ef;border-radius:16px}
.subsidy-caution h3{margin:0 0 18px;color:#102c4d;font-size:1.05rem}
.subsidy-caution ul{margin:0;padding:0;list-style:none}
.subsidy-caution li{position:relative;padding-left:20px;color:#4c5f6e;font-size:.88rem;line-height:1.9}
.subsidy-caution li+li{margin-top:10px}
.subsidy-caution li:before{content:'';position:absolute;left:0;top:.85em;width:8px;height:1px;background:#015da4}

.kiban-readers{background:#fff}
.kiban-reader-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.kiban-reader-card{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr);border:1px solid #d6e1e9;background:#fff}
.kiban-reader-card-featured{border-color:#9fc4da}
.kiban-reader-image{position:relative;display:flex;align-items:center;justify-content:center;min-height:420px;padding:30px;background:#f3f7fa;overflow:hidden}
.kiban-reader-image span{position:absolute;z-index:1;top:20px;left:20px;padding:7px 11px;background:#015da4;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.04em}
.kiban-reader-image img{width:100%;height:100%;max-height:350px;object-fit:contain}
.kiban-reader-copy{padding:36px 32px}
.kiban-reader-label{margin:0 0 12px;color:#015da4;font:700 .7rem Outfit,sans-serif;letter-spacing:.14em}
.kiban-reader-copy h3{margin:0 0 8px;color:#102c4d;font-size:clamp(1.45rem,2.4vw,2rem)}
.kiban-reader-type{margin:0 0 24px;color:#20364a;font-size:.9rem;font-weight:700}
.kiban-reader-copy ul{margin:0;padding:0;list-style:none}
.kiban-reader-copy li{position:relative;padding:9px 0 9px 18px;border-bottom:1px solid #e5edf2;color:#586b7c;font-size:.82rem;line-height:1.75}
.kiban-reader-copy li:before{content:'';position:absolute;left:0;top:1.05em;width:6px;height:6px;border-radius:50%;background:#0075c1}
.kiban-reader-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 8px;margin:28px 0 0;color:#586b7c}
.kiban-reader-price small{flex-basis:100%;font-size:.7rem}
.kiban-reader-price strong{color:#102c4d;font:700 1.45rem Outfit,sans-serif}
.kiban-reader-price span{font-size:.72rem}
.kiban-reader-note{max-width:900px;margin:20px auto 0;color:#6a7b89;font-size:.76rem;text-align:center}

.kiban-tadakayo{background:linear-gradient(135deg,#fff 0%,#fff8fa 58%,#f8f4f5 100%);color:#20364a;border-block:1px solid #eee3e6}
.kiban-tadakayo-panel{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(56px,8vw,110px);align-items:center}
.kiban-tadakayo-visual{overflow:hidden;border:1px solid #eadfe2;background:#fff7f9;box-shadow:0 24px 65px rgba(16,44,77,.09)}
.kiban-tadakayo-visual img{display:block;width:100%;height:auto}
.kiban-tadakayo-mark{display:grid;place-items:center;min-height:420px;padding:clamp(46px,6vw,78px);background:radial-gradient(circle at 50% 46%,#fff 0 42%,#fff6f8 70%,#f8edef 100%)}
.kiban-tadakayo-mark img{width:min(100%,270px)}
.kiban-tadakayo-copy .eyebrow{color:#d92f38}
.kiban-tadakayo-copy h2{margin-bottom:25px;color:#102c4d;font-size:clamp(2rem,3.8vw,3.35rem)}
.kiban-tadakayo-copy>p:not(.eyebrow){color:#4c5f6e;line-height:2}
.kiban-tadakayo-copy strong{color:#102c4d}
.kiban-tadakayo-copy ul{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 34px;padding:0;list-style:none}
.kiban-tadakayo-copy li{padding:8px 12px;border:1px solid #e5d8dc;background:rgba(255,255,255,.72);color:#4c5f6e;font-size:.76rem}
.kiban-external-btn{border:1px solid #102c4d;background:#102c4d;color:#fff!important;box-shadow:none}
.kiban-external-btn:hover{border-color:#d92f38;background:#d92f38;color:#fff!important}
.kiban-external-btn span{margin-left:10px;font-size:1.05rem}

.subsidy-flow{background:#f3f7fa}
.subsidy-flow .editorial-heading h2 .phrase{white-space:nowrap}
.subsidy-timeline{margin-top:8px;border-top:1px solid #b9cddc;grid-template-columns:repeat(5,1fr)}
.subsidy-timeline li{border-left-color:#c9d9e5}
.subsidy-timeline b{color:#015da4}
.kiban-official-grid .fund-card h3{font-size:1.18rem}
.kiban-tadakayo-card{border-color:#9fc4da;background:linear-gradient(145deg,#fff,#edf6fb)}
.ach-contact{text-align:center;background:#fff;border-top:1px solid #dde7ef}
.ach-contact h2{margin:0 0 22px;font-size:clamp(1.6rem,3.2vw,2.4rem)}
.ach-contact>.container>p{max-width:44em;margin:0 auto 14px;color:#4c5f6e;font-size:.92rem;line-height:1.95}
.ach-contact .btn{margin-top:22px}
.sub-footer-nav{display:flex;align-items:center;gap:24px}

@media(max-width:1100px){
  .kiban-reader-card{grid-template-columns:1fr}
  .kiban-reader-image{min-height:310px}
}
@media(max-width:980px){
  .kiban-card-grid{grid-template-columns:repeat(2,1fr)}
  .kiban-card-grid article:nth-child(odd){border-left:0}
  .subsidy-timeline{grid-template-columns:repeat(2,1fr)}
  .kiban-official-grid{grid-template-columns:repeat(2,1fr)}
  .kiban-service-groups{grid-template-columns:1fr}
}
@media(max-width:780px){
  .kiban-site-header,.kiban-site-header.scrolled{height:68px}
  .kiban-site-header .nav{gap:0}
  .kiban-hero{background-image:linear-gradient(90deg,rgba(246,251,251,.98) 0%,rgba(246,251,251,.94) 60%,rgba(246,251,251,.58) 100%),url('../assets/kiban-card-reader-use.jpg');background-position:62% center}
  .kiban-hero h1{font-size:3.1rem;line-height:1.24}
  .editorial-heading .kiban-heading-nowrap{font-size:clamp(1.65rem,7.5vw,2.2rem);line-height:1.6;letter-spacing:.075em}
  .kiban-about .editorial-heading{margin-bottom:48px}
  .kiban-about .editorial-heading .eyebrow{margin-bottom:20px}
  .kiban-support .editorial-heading h2{font-size:clamp(2rem,9vw,2.55rem)}
  .kiban-hero-copy p:last-child{font-size:.95rem}
  .kiban-card-grid,.subsidy-timeline{grid-template-columns:1fr}
  .kiban-support-slider{margin-bottom:32px}
  .kiban-official-grid{grid-template-columns:1fr}
  .kiban-card-grid article,.kiban-card-grid article:first-child,.kiban-card-grid article:nth-child(odd){padding:28px 5px;border-left:0;border-top:1px solid var(--line)}
  .kiban-careplan-support{grid-template-columns:1fr;gap:15px;margin-top:32px;padding:26px 22px}
  .kiban-limit-table th,.kiban-limit-table td{padding:18px 17px}
  .subsidy-caution{padding:26px 22px}
  .kiban-reader-grid{grid-template-columns:1fr}
  .kiban-reader-card{grid-template-columns:1fr}
  .kiban-reader-image{min-height:280px;padding:24px}
  .kiban-reader-copy{padding:30px 24px}
  .kiban-reader-note{text-align:left}
  .kiban-tadakayo-panel{grid-template-columns:1fr;gap:38px}
  .kiban-tadakayo-visual{max-width:600px}
  .kiban-tadakayo-mark{width:100%;min-height:300px;padding:44px}
  .kiban-tadakayo-mark img{width:min(70%,230px)}
  .sub-footer-nav{align-items:flex-start;flex-direction:column;gap:7px}
}
@media(prefers-reduced-motion:reduce){
  .kiban-support-track{animation:none}
}
