.page-index{color:#333333;}
.page-index__hero-section{width:100%;overflow:hidden;padding-top:0;margin-top:0;background:#f4f8fb;}
.page-index__hero-container{width:100%;max-width:1200px;margin:0 auto;}
.page-index__hero-link{display:block;width:100%;}
.page-index__hero-image{width:100%;height:auto;aspect-ratio:17/5;object-fit:cover;display:block;}

.page-index__logo-grid-section{max-width:1200px;margin:26px auto 28px;padding:0 16px;}
.page-index__logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 18px;justify-items:center;}
.page-index__logo-item{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:280px;text-align:center;background:#fff;border:1px solid #eef2f7;border-radius:16px;padding:16px 12px;box-shadow:0 6px 18px rgba(0,0,0,0.04);transition:transform .2s ease;}
.page-index__logo-item:hover{transform:translateY(-3px);}
.page-index__logo-image{width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;display:block;}
.page-index__logo-cta{display:inline-block;padding:10px 22px;border-radius:999px;background:#0477db;color:#ffffff;font-weight:700;font-size:1rem;text-decoration:none;box-shadow:0 6px 16px rgba(4,119,219,0.35);transition:background .2s ease,box-shadow .2s ease;}
.page-index__logo-cta:hover{background:#0a5cad;box-shadow:0 8px 20px rgba(4,119,219,0.45);}
.page-index__logo-item:nth-child(5){grid-column:2;}
.page-index__logo-item:nth-child(6){grid-column:3;}

.page-index__guide-inner{max-width:1000px;margin:0 auto;padding:8px 16px 48px;}
.page-index__guide-title{text-align:center;color:#0477db;margin:12px 0 16px;font-weight:800;font-size:clamp(1.5rem, 2.5vw, 2rem);line-height:1.3;}
.page-index__guide-intro{font-size:1.05rem;line-height:1.8;text-align:center;margin-bottom:32px;}
.page-index__guide-title, .page-index__guide-inner h2{color:#184480;}
.page-index__guide-inner h2{margin:40px 0 16px;font-size:1.7rem;}
.page-index__guide-inner h3{margin:24px 0 12px;color:#26A9E0;font-size:1.3rem;}
.page-index__guide-inner p{line-height:1.8;margin-bottom:16px;}
.page-index__guide-inner ul, .page-index__guide-inner ol{margin:0 0 20px 25px;line-height:1.8;}
.page-index__guide-inner li{margin-bottom:8px;}
.page-index__guide-figure{margin:24px auto;text-align:center;max-width:800px;}
.page-index__guide-figure img{width:100%;max-width:800px;height:auto;aspect-ratio:2/1;object-fit:cover;display:block;border-radius:8px;}
.page-index__guide-figure figcaption{font-size:.9rem;color:#666;margin-top:10px;line-height:1.5;}

.page-index__guide-inner a.stream-link{color:#0a5cad;font-weight:700;}
.page-index__guide-inner details{background:#f7fafd;border-radius:10px;padding:18px 20px;margin-bottom:14px;border:1px solid #eaf0f5;}
.page-index__guide-inner summary{cursor:pointer;font-weight:700;color:#0a4a75;margin-bottom:8px;}

.page-index__guide-inner a.page-index__cta-link{color:#0a5cad;font-weight:800;text-decoration:underline;}

@media (max-width: 1024px){
  .page-index__logo-grid{grid-template-columns:repeat(3,1fr);}
}

@media (max-width: 768px){
  .page-index__hero-section{padding-top:0;margin-top:0;}
  .page-index__hero-image{aspect-ratio:2/1;max-width:100%;height:auto;}
  .page-index__logo-grid{grid-template-columns:repeat(2,1fr);gap:16px;}
  .page-index__logo-item:nth-child(5),.page-index__logo-item:nth-child(6){grid-column:auto;}
  .page-index__logo-item{max-width:100%;padding:12px;}
  .page-index__guide-title{font-size:1.35rem;}
  .page-index__guide-inner h2{font-size:1.4rem;}
  .page-index__guide-inner h3{font-size:1.1rem;}
  .page-index__guide-figure{margin-left:-8px;margin-right:-8px;}
  .page-index__guide-figure img{max-width:100%;height:auto;}
  .page-index img{max-width:100%!important;height:auto!important;}
  .page-index__logo-item a, .page-index__guide-inner a, .page-index__hero-container a, .page-index__logo-cta{max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word;display:inline-block;overflow-wrap:break-word;}
  .page-index__logo-grid-section{width:100%;box-sizing:border-box;overflow:hidden;padding:0 8px;}
  .page-index__guide-inner{width:100%;box-sizing:border-box;overflow:hidden;padding-left:12px;padding-right:12px;}
}