.page-index__hero-section{padding:0;margin:0;width:100%;overflow:hidden;background:#ffffff;}
.page-index__hero-container{width:100%;}
.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:16px auto 28px;padding:0 16px;}
.page-index__logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 16px;justify-items:center;}
.page-index__logo-item{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:280px;text-align:center;}
.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;text-decoration:none;box-shadow:0 4px 14px rgba(4,119,219,0.35);transition:transform .2s ease;}
.page-index__logo-cta:hover{transform:scale(1.05);background:#036bbf;color:#ffffff;}
.page-index__logo-item:nth-child(5){grid-column:2 / 3;}
.page-index__logo-item:nth-child(6){grid-column:3 / 4;}

.page-index__guide-section{background:#ffffff;}
.page-index__guide-inner{max-width:1000px;margin:0 auto;padding:16px 16px 48px;color:#333333;line-height:1.7;font-size:1rem;}
.page-index__guide-title{text-align:center;color:#017439;font-weight:700;line-height:1.3;letter-spacing:.3px;max-width:900px;margin:12px auto 20px;font-size:clamp(1.35rem, 2.5vw, 1.9rem);word-wrap:break-word;overflow-wrap:break-word;}
.page-index__guide-intro{text-align:center;max-width:900px;margin:0 auto 20px;font-size:1.1rem;color:#333333;}
.page-index__guide-inner h2{color:#017439;font-size:1.55rem;font-weight:700;margin:36px 0 16px;}
.page-index__guide-inner h3{color:#017439;font-size:1.2rem;font-weight:600;margin:24px 0 12px;}
.page-index__guide-inner p{color:#333333;margin-bottom:16px;}
.page-index__guide-inner a{color:#0477db;text-decoration:underline;}
.page-index__guide-inner ul,.page-index__guide-inner ol{margin:0 0 16px 20px;padding:0;}
.page-index__guide-inner li{margin-bottom:8px;}
.page-index__guide-inner details{background:#f5f5f5;border-radius:8px;padding:12px 16px;margin-bottom:12px;}
.page-index__guide-inner summary{cursor:pointer;font-weight:600;color:#017439;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.page-index__guide-inner summary::-webkit-details-marker{display:none;}
.page-index__guide-inner details[open]{background:#f0f9f4;}
.page-index__guide-inner details summary span[data-faq-toggle]{display:inline-block;background:#0477db;color:#ffffff;border-radius:50%;width:24px;height:24px;line-height:22px;text-align:center;font-weight:700;flex-shrink:0;margin-left:12px;}
.page-index__guide-figure{margin:24px auto;text-align:center;max-width:800px;}
.page-index__guide-figure img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block;border-radius:8px;margin:0 auto;}
.page-index__guide-figure figcaption{font-size:.9rem;color:#666;margin-top:8px;line-height:1.5;}
.page-index__guide-cta{display:inline-block;padding:12px 30px;border-radius:999px;background:#017439;color:#ffffff;font-weight:700;text-decoration:none;box-shadow:0 4px 14px rgba(1,116,57,.4);margin-top:16px;transition:background .2s ease;font-size:1.05rem;}
.page-index__guide-cta:hover{background:#016232;color:#ffffff;text-decoration:none;}

@media (max-width:1024px){
  .page-index__logo-grid{grid-template-columns:repeat(4,1fr);gap:16px;}
  .page-index__logo-cta{padding:8px 18px;font-size:.95rem;}
}

@media (max-width:768px){
  .page-index__hero-image{aspect-ratio:2/1;}
  .page-index__logo-grid-section{margin:12px auto 20px;padding:0 12px;}
  .page-index__logo-grid{grid-template-columns:repeat(2,1fr);gap:16px 12px;}
  .page-index__logo-item{max-width:100%;}
  .page-index__logo-item:nth-child(5),.page-index__logo-item:nth-child(6){grid-column:auto;}
  .page-index__logo-cta{width:100%;max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word;text-align:center;padding:10px 16px;font-size:1rem;}
  .page-index__guide-section{padding:0;overflow-x:hidden;}
  .page-index__guide-inner{padding:12px 12px 32px;}
  .page-index__guide-title{font-size:clamp(1.2rem, 2vw, 1.45rem);margin-top:8px;word-break:break-word;}
  .page-index__guide-intro{font-size:1rem;line-height:1.6;}
  .page-index__guide-inner h2{font-size:1.3rem;line-height:1.4;margin-top:28px;}
  .page-index__guide-inner ul,.page-index__guide-inner ol{margin-left:4px;padding-left:18px;}
  .page-index__guide-figure{margin:16px auto;max-width:100%;}
  .page-index__guide-cta{max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word;text-align:center;padding:14px 20px;font-size:1rem;}
  .page-index__logo-image,.page-index__hero-image,.page-index__guide-figure img,.page-index__guide-section img{max-width:100% !important;height:auto !important;}
  .page-content.page-index{max-width:100%;overflow-x:hidden;}
  .page-index__guide-inner{width:100%;max-width:100%;box-sizing:border-box;}
  .page-index__logo-item a.page-index__logo-cta{max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word;}
  .page-index__guide-inner details{overflow-wrap:break-word;}
  .page-index__guide-inner summary span[data-faq-toggle]{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-width:24px;height:24px;flex-shrink:0;padding:2px;}
}

.page-index{color:#333333;background:#ffffff;}