.page-index{padding:0;max-width:100%;overflow-x:hidden;color:#333}
.page-index__hero-section{padding-top:0;margin-top:0;width:100%;overflow:hidden;background:#fff}
.page-index__hero-container{max-width:1600px;margin:0 auto}
.page-index__hero-link{display:block;text-decoration:none}
.page-index__hero-image{width:100%;height:auto;display:block;object-fit:cover;aspect-ratio:17/5;border:none}
.page-index__logo-grid-section{width:100%;max-width:1200px;margin:0 auto;padding:24px 16px 8px}
.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;justify-content:flex-start;gap:12px;width:100%;max-width:280px;padding:16px 12px;background:#fff;border:1px solid #eee;border-radius:16px;box-sizing:border-box}
.page-index__logo-image{width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;display:block;border-radius:8px;background:#fafafa}
.page-index__logo-cta{display:inline-block;margin-top:auto;padding:10px 22px;border-radius:999px;background:linear-gradient(180deg,#FF5A4F 0%,#E53935 100%);color:#fff;font-size:1rem;font-weight:700;text-decoration:none;line-height:1.4;border:none;cursor:pointer;text-align:center;max-width:100%;box-sizing:border-box;white-space:normal;word-wrap:break-word;box-shadow:0 4px 14px rgba(229,57,53,.25)}
.page-index__logo-item:nth-child(5){grid-column:2}
.page-index__logo-item:nth-child(6){grid-column:3}
.page-index__logo-cta:hover{background:linear-gradient(180deg,#E53935 0%,#FF5A4F 100%);transform:translateY(-2px);box-shadow:0 6px 18px rgba(229,57,53,.35)}
.page-index__guide-section{width:100%;max-width:1000px;margin:0 auto;padding:16px 16px 48px;background:#fff;border-radius:16px;background:#fff}
.page-index__guide-title{text-align:center;font-weight:800;color:#333;margin:16px auto 16px;line-height:1.35;max-width:900px;font-size:clamp(1.3rem, 2.2vw, 1.8rem);padding:0 4px}
.page-index__guide-inner h2{color:#E53935;font-size:clamp(1.1rem,1.6vw,1.4rem);font-weight:700;margin:28px 0 12px;padding-top:8px;border-top:2px solid #fdecea}
.page-index__guide-inner h3{margin:20px 0 8px;font-size:clamp(1rem,1.4vw,1.1rem);color:#E53935;font-weight:700}
.page-index__guide-inner p{line-height:1.75;color:#333;text-align:justify;margin:0 0 12px}
.page-index__guide-inner ul,.page-index__guide-inner ol{margin:8px 0 16px;padding-left:28px}
.page-index__guide-inner li{margin:6px 0;line-height:1.7}
.page-index__guide-inner a{color:#E53935;text-decoration:underline;
}
.page-index__guide-figure{margin:20px auto;max-width:800px;text-align:center;padding:8px 0}
.page-index__guide-figure img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);min-width:0}
.page-index__guide-figure figcaption{font-size:.92rem;color:#666;margin-top:10px;font-style:italic}
.page-index__guide-inner details{background:#f9fafb;border:1px solid #eef0f2;border-radius:6px;padding:10px 16px;margin:14px 0}
.page-index__guide-inner summary{cursor:pointer;font-weight:600;color:#333;user-select:none;position:relative;list-style:none}
.page-index__guide-inner summary::-webkit-details-marker{display:none}
.page-index__guide-inner summary:after{content:'+';float:right;font-size:1.4rem;font-weight:700;line-height:1;color:#E53935;transition:all .2s}
.page-index__guide-inner details[open] summary:after{content:'−'}
.page-index__guide-section .page-index__guide-title{color:#E53935;font-size:clamp(1.3rem, 2.2vw, 1.9rem);font-weight:700;padding:0 10px}
@media (max-width:1024px){
.page-index__logo-grid-section{padding-left:12px;padding-right:12px}
.page-index__logo-grid{column-gap:12px}
}
@media (max-width:768px){
.page-index .page-index__hero-section{max-width:100%}
.page-index__hero-image{aspect-ratio:2/1}
.page-index__logo-grid-section{padding:12px 8px 20px;max-width:100%}
.page-index__logo-grid{grid-template-columns:repeat(2,1fr);gap:12px}
.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:10px}
.page-index__logo-cta{max-width:100%;}
.page-index__guide-section{padding:8px 12px 38px;max-width:100%;box-sizing:border-box}
.page-index__guide-title{font-size:clamp(1.2rem, 4.8vw, 1.5rem);padding:0 2px}
.page-index__guide-figure{width:100%;max-width:100%;padding:8px 0;margin:16px 0}
.page-index__guide-figure img{height:auto;max-width:100%!important;width:100%!important}
.page-index__guide-inner p{text-align:left}
.page-index__guide-inner h2{font-size:1.1rem}
.page-index img{max-width:100%;height:auto}
}