/* Real Noto Sans CJK JP glyphs, self-hosted and subset to the complete site copy.
   Licensed under SIL OFL 1.1; see assets/fonts/editorial/OFL.txt. */
@font-face{font-family:"GG Editorial Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/editorial/regular.woff") format("woff")}
@font-face{font-family:"GG Editorial Sans";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/editorial/medium.woff") format("woff")}
@font-face{font-family:"GG Editorial Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/editorial/bold.woff") format("woff")}
body,body .gg-article,body .home-page,
body :is(.site-header,.site-footer,.mobile-menu,.home-line,.home-guide-card){
 font-family:"GG Editorial Sans","Hiragino Sans",Meiryo,sans-serif;
 font-synthesis:none;
}
button,input,select,textarea{font-family:inherit;font-synthesis:none}
.gg-article :is(h1,h2,h3),.gg-article .article-intro-pitch,
.gg-article :is(.article-cta,.article-line-cta),.header-download,
.home-page :is(h2,h3,.home-line-cta){font-weight:700;letter-spacing:0}
.gg-article .article-intro .heading-kicker,
.gg-article .article-intro .heading-subtitle{font-weight:500;letter-spacing:0}
.gg-article .article-intro .heading-main{font-weight:700;letter-spacing:0}
.gg-article :is(p,li,dd){letter-spacing:0}
.gg-article :is(strong,b,mark){font-weight:700}

/* The safety artwork uses native text, so its letters stay exact and readable.
   Layout and typography scale with the actual card width, including home cards. */
.gg-safety-art{
 container-type:inline-size;
 box-sizing:border-box;
 position:relative;
 display:grid;
 grid-template-columns:minmax(0,62fr) minmax(0,38fr);
 grid-template-rows:minmax(0,1fr) auto;
 width:100%;
 min-height:260px;
 aspect-ratio:1672 / 941;
 overflow:hidden;
 border:1px solid #bdd6e9;
 border-radius:8px;
 background:#f8fcff;
 color:#082846;
 font-family:"GG Editorial Sans","Hiragino Sans",Meiryo,sans-serif;
 font-synthesis:none;
 text-align:left;
 text-shadow:none;
}
.gg-safety-art .gg-art-copy{
 box-sizing:border-box;
 display:flex;
 flex-direction:column;
 align-items:flex-start;
 grid-column:1;
 grid-row:1;
 min-width:0;
 padding:4.2cqw 3.4cqw 3.4cqw 4.2cqw;
 background:linear-gradient(150deg,#fff 55%,#eaf5fc);
}
body .gg-safety-art img.gg-art-brand,
.gg-article.safety-article .gg-safety-art img.gg-art-brand{
 display:block;
 flex:none;
 width:clamp(82px,17cqw,140px);
 max-width:100%;
 height:auto;
 margin:0 0 3.2cqw;
 padding:0;
 border:0;
 border-radius:0;
 background:transparent;
 box-shadow:none;
}
.gg-safety-art .gg-art-photo{
 position:relative;
 display:block;
 grid-column:2;
 grid-row:1;
 min-width:0;
 min-height:0;
 overflow:hidden;
 background:#06233d;
}
body .gg-safety-art .gg-art-photo img,
.gg-article.safety-article .gg-safety-art .gg-art-photo img{
 position:absolute;
 display:block;
 inset:0;
 width:100%;
 height:100%;
 max-width:none;
 max-height:none;
 margin:0;
 padding:0;
 border:0;
 border-radius:0;
 object-fit:cover;
 object-position:right center;
 box-shadow:none;
}
body .gg-safety-art :is(.gg-art-eyebrow,.gg-art-title,.gg-art-deck,.gg-art-heading,.gg-art-footer){
 margin:0;
 padding:0;
 border:0;
 background:none;
 font-family:inherit;
 font-style:normal;
 letter-spacing:0;
 text-align:left;
 text-shadow:none;
}
body .gg-safety-art .gg-art-eyebrow{font-size:clamp(17px,3.7cqw,34px);font-weight:500;line-height:1.45}
body .gg-safety-art .gg-art-title{margin-top:.5cqw;font-size:clamp(36px,8cqw,76px);font-weight:700;line-height:1.28;letter-spacing:.02em}
body .gg-safety-art .gg-art-deck{margin-top:2.4cqw;font-size:clamp(12px,2.25cqw,21px);font-weight:500;line-height:1.65}
body .gg-safety-art .gg-art-heading{font-size:clamp(19px,4.4cqw,40px);font-weight:700;line-height:1.5}
body .gg-safety-art--support .gg-art-heading{font-size:clamp(18px,4.2cqw,38px)}
.gg-safety-art .gg-art-heading em{font-style:normal;color:#0875ba;font-weight:inherit}
body .gg-safety-art .gg-art-footer{
 grid-column:1 / -1;
 grid-row:2;
 display:flex;
 align-items:center;
 justify-content:center;
 box-sizing:border-box;
 min-height:42px;
 padding:1.8cqw 2.6cqw;
 background:#07304f;
 color:#fff;
 font-size:clamp(10px,1.95cqw,18px);
 font-weight:500;
 line-height:1.5;
 text-align:center;
}
.gg-safety-art .gg-art-topics{display:grid;grid-template-columns:1fr 1fr 1.35fr .8fr;gap:0;width:100%}
.gg-safety-art .gg-art-topics span{display:block;padding:0 1cqw;border-right:1px solid #4b728e;white-space:nowrap}
.gg-safety-art .gg-art-topics span:last-child{border:0}
body .gg-safety-art .gg-art-checks{display:grid;gap:1.8cqw;width:100%;margin:2.4cqw 0 0;padding:0;list-style:none}
body .gg-safety-art .gg-art-checks li{display:flex;align-items:baseline;gap:1.3cqw;margin:0;padding:0;font-size:clamp(12px,2.3cqw,21px);font-weight:500;line-height:1.6;letter-spacing:0}
.gg-safety-art .gg-art-checks li::before{content:"";display:block;flex:none;width:.45em;height:.45em;border-radius:50%;background:#0875ba;transform:translateY(-.15em)}
.gg-safety-art .gg-art-support{display:grid;gap:2cqw;width:100%;margin:2.8cqw 0 0}
.gg-safety-art .gg-art-support>div+div{padding-top:2cqw;border-top:1px solid #c9deec}
body .gg-safety-art .gg-art-support dt{display:flex;align-items:center;gap:1cqw;margin:0;font-size:clamp(12px,2.5cqw,23px);font-weight:700;line-height:1.5;color:#11669c}
body .gg-safety-art .gg-art-support dt.gg-art-line{color:#008436}
body .gg-safety-art .gg-art-support dd{margin:.5cqw 0 0;font-size:clamp(11px,2cqw,18px);font-weight:400;line-height:1.65;letter-spacing:0}
body .gg-safety-art img.gg-art-line-icon,
.gg-article.safety-article .gg-safety-art img.gg-art-line-icon{width:clamp(15px,3cqw,24px);height:auto;display:block;margin:0;border:0;border-radius:3px}
.home-page .home-guide-eyecatch.gg-safety-art{container-type:inline-size;display:grid;place-items:stretch;min-height:0;aspect-ratio:1672 / 941;border:1px solid #bdd6e9;border-radius:8px}
.home-page .home-guide-eyecatch.gg-safety-art .gg-art-brand{width:17cqw;min-width:0;margin-bottom:3cqw}
.home-page .home-guide-eyecatch.gg-safety-art .gg-art-eyebrow{font-size:3.7cqw}
.home-page .home-guide-eyecatch.gg-safety-art .gg-art-title{font-size:8cqw}
.home-page .home-guide-eyecatch.gg-safety-art .gg-art-deck{font-size:2.6cqw;margin-top:2cqw}
.home-page .home-guide-eyecatch.gg-safety-art .gg-art-footer{font-size:2.45cqw;min-height:0;padding:1.8cqw}
@media(max-width:560px){
 .gg-article .gg-safety-art{min-height:264px;aspect-ratio:auto}
 .gg-article .gg-safety-art .gg-art-copy{padding-block:18px}
 .gg-article.safety-article .gg-safety-art img.gg-art-brand{margin-bottom:16px}
 .gg-article .gg-safety-art .gg-art-title{margin-top:4px}
 .gg-article .gg-safety-art .gg-art-deck{margin-top:12px}
 .gg-article .gg-safety-art .gg-art-heading{font-size:clamp(18px,5.1cqw,26px);line-height:1.55}
 .gg-article .gg-safety-art--support .gg-art-heading{font-size:clamp(16px,4.8cqw,26px)}
 .gg-article .gg-safety-art .gg-art-checks{gap:12px;margin-top:16px}
 .gg-article .gg-safety-art .gg-art-checks li{font-size:clamp(11px,3.1cqw,15px)}
 .gg-article .gg-safety-art .gg-art-support{gap:12px;margin-top:14px}
 .gg-article .gg-safety-art .gg-art-support>div+div{padding-top:10px}
 .gg-article .gg-safety-art .gg-art-footer{min-height:38px;padding:10px 8px}
}
