.g7-page{--ink:#183650;--deep:#102f45;--accent:#bb9157;--blue:#0a7b91;--line:#dce7ed;--pale:#f0f5f8}
.g7-page *{box-sizing:border-box}
.g7-page{margin:0;font:15px/1.82 "Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--ink);background:#fff}
.g7-page a{color:#176282;text-decoration:none}
.g7-page a:hover{text-decoration:underline}
.g7-page .wrap{max-width:1120px;margin:auto;padding:0 22px}
.g7-page .mock-header{border-bottom:1px solid var(--line)}
.g7-page .mock-header .wrap{padding-top:14px;padding-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:15px}
.g7-page .brand{font-weight:800;font-size:18px}
.g7-page .brand small{display:block;font-size:11px;color:#627b89;font-weight:400}
.g7-page .header-contact{font-size:12px;text-align:right}
.g7-page .header-contact strong{font-size:19px}
.g7-page .mock-nav{border-bottom:1px solid var(--line);background:#fbfcfd}
.g7-page .mock-nav .wrap{display:flex;gap:24px;flex-wrap:wrap;padding-top:9px;padding-bottom:9px;font-size:12px}
.g7-page .mock-nav a{color:var(--ink)}
.g7-page .crumb{padding:11px 0 13px;font-size:12px;color:#617f91}
.g7-page .crumb a{color:inherit}
.g7-page .hero{display:grid;grid-template-columns:54% 46%;min-height:320px;background:linear-gradient(105deg,#e7f0f4,#f8f9fa);border-radius:10px;overflow:hidden}
.g7-page .hero-copy{padding:36px 39px}
.g7-page .eyebrow{font-size:12px;color:#8a693f;font-weight:700;letter-spacing:.07em}
.g7-page .hero h1{font-family:"Noto Serif JP",serif;font-size:clamp(23px,2.6vw,34px);line-height:1.45;letter-spacing:.025em;margin:10px 0 14px}
.g7-page .hero p{font-size:14px;line-height:1.8;margin:0 0 20px}
.g7-page .hero img{display:block;width:100%;height:100%;object-fit:cover}
.g7-page .hero-actions{display:flex;flex-wrap:wrap;gap:9px}
.g7-page .hero-actions a, .g7-page .v5-button{display:inline-block;background:#153a53;color:white;padding:10px 19px;border-radius:22px;font-size:12px;font-weight:700}
.g7-page .hero-actions a.secondary{background:white;color:#17425a;border:1px solid #c4d9e5}
.g7-page .content{max-width:1120px;margin:0 auto;padding:34px 22px 65px}
.g7-page .content>.section{padding:26px 0;margin:0}
.g7-page .content>.section+.section{border-top:1px solid #edf2f5}
.g7-page .content h2{font-family:"Noto Serif JP",serif;line-height:1.45;font-size:23px;margin:0 0 13px;padding-left:14px;border-left:4px solid var(--accent)}
.g7-page .content h3{margin:0 0 12px;font-size:17px;line-height:1.5}
.g7-page .content p{margin:9px 0 15px}
.g7-page .grid{display:grid;gap:16px;align-items:stretch}
.g7-page .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g7-page .grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g7-page .card{border:1px solid var(--line);background:white;border-radius:10px;padding:23px 24px;box-shadow:0 6px 18px rgba(16,47,69,.055);min-width:0;height:100%}
.g7-page .card h2{font-size:19px}
.g7-page .card h3{color:var(--deep)}
.g7-page .card p:last-child{margin-bottom:0}
.g7-page .alt{background:var(--pale);border-radius:12px;padding:25px!important}
.g7-page .table-wrap{width:100%;overflow-x:auto}
.g7-page .simple-table{border-collapse:collapse;width:100%;min-width:570px;background:white}
.g7-page .simple-table th, .g7-page .simple-table td{border:1px solid #dce5ea;padding:12px 14px;vertical-align:top;text-align:left}
.g7-page .simple-table th{background:#eaf2f6}
.g7-page .simple-table tbody tr:nth-child(even){background:#f8fbfc}
.g7-page .help{font-size:12px;color:#617b89}
.g7-page .content ul{padding-left:21px}
.g7-page .faq details{background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:10px;padding:12px 17px}
.g7-page .faq summary{font-weight:700;cursor:pointer}
.g7-page .faq details[open]{box-shadow:0 4px 12px #14364d0d}
.g7-page .closing-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;background:#edf4f7;border-radius:12px;padding:24px;margin-top:32px}
.g7-page .closing-cta h2{font-size:20px}
.g7-page .closing-cta p{font-size:13px}
.g7-page .closing-actions{display:flex;flex-wrap:wrap;gap:8px;max-width:340px}
.g7-page .closing-actions a{white-space:nowrap}
.g7-page .mock-footer{background:#075260;color:#fff;padding:30px 22px;text-align:center;font-size:12px}
.g7-page .mock-footer strong{font-size:18px}
.g7-page .source-note{font-size:11px;color:#69818e;padding:16px 0}
.g7-page .content>.section:first-child{padding-top:0}
@media (max-width:720px){.g7-page .mock-header .wrap{align-items:flex-start}
.g7-page .header-contact strong{font-size:14px}
.g7-page .mock-nav .wrap{gap:10px 15px}
.g7-page .hero{grid-template-columns:1fr}
.g7-page .hero img{height:220px;grid-row:1}
.g7-page .hero-copy{padding:24px}
.g7-page .content{padding-top:25px}
.g7-page .grid-2, .g7-page .grid-3{grid-template-columns:1fr}
.g7-page .content h2{font-size:20px}
.g7-page .closing-cta{display:block}
.g7-page .closing-actions{max-width:none}
.g7-page .card{padding:19px}}
.g7-page .steps-note{border:1px solid #d6e4e9;background:#f4f8fa;padding:15px 19px;border-radius:10px;font-size:13px;margin-top:10px}
.g7-page .content>.section .card{height:100%}
.g7-page .content .section.alt{padding:25px!important}
.g7-page .content .section ul{line-height:1.9}
.g7-page .content .faq details>div{padding-top:8px}
.g7-page .content .section .grid-3 .card{border-top:3px solid #b99363}
.g7-page .hero-copy{display:flex;flex-direction:column;justify-content:center}
.g7-page .hero img{object-position:center}
.g7-page .closing-cta a{display:inline-block}
.g7-page .content>.section>h2:first-child{margin-bottom:18px}
.g7-page .content .table-wrap{margin-top:17px}
.g7-page .content .help{margin-top:13px}
@media (max-width:720px){.g7-page .hero-copy{order:2}
.g7-page .hero img{order:1}
.g7-page .hero{display:flex;flex-direction:column}
.g7-page .content .section.alt{padding:18px!important}}
.g7-page .safety-intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:26px}
.g7-page .safety-intro a{display:block;border:1px solid var(--line);border-radius:10px;padding:16px 17px;background:#f7fafb;font-weight:700}
.g7-page .callout{border-left:4px solid #bb9157;background:#fffaf3;padding:17px 23px;border-radius:5px}
.g7-page .callout p{margin:6px 0}
.g7-page .content .section.alt{padding:25px!important}
.g7-page .content .section .card{height:100%}
.g7-page .content .faq details>div{padding-top:8px}
.g7-page .content ul{line-height:1.9}
@media (max-width:720px){.g7-page .safety-intro{grid-template-columns:1fr}}
.g7-page{display:block;min-height:500px;position:relative;isolation:isolate}
.g7-page .brand,.g7-page .contact-top,.g7-page .header-contact{display:none}
