/* Shared subpages use the source site's banner and horizontal category navigation. */
.jj-site.is-sub .site-sub-visual { height:468px; padding:104px 20px 0; box-sizing:border-box; }
.jj-site.is-sub .site-sub-visual:before { content:none; }
.jj-site.is-sub .site-sub-visual h1 { font:700 50px/1 'JJ Sans',sans-serif; margin:0; max-width:none; }
.jj-site.is-sub .site-sub-visual p { font:500 22px/1.8 'JJ Sans',sans-serif; letter-spacing:0; color:rgba(255,255,255,.8); opacity:1; margin:25px 0 0; }
.jj-site.is-sub .section-nav > .site-inner { width:calc(100% - 40px); max-width:1600px; overflow:visible; justify-content:center; }
.jj-site.is-sub .section-nav a { position:relative; min-width:0; padding:21px 45px; border:0; font-size:20px; font-weight:500; color:#999; text-align:center; line-height:1.5; display:flex; align-items:center; justify-content:center; }
.jj-site.is-sub .section-nav a.current { color:#222; font-weight:700; }
.jj-site.is-sub .section-nav a.current:after { content:''; position:absolute; bottom:-1px; left:0; right:0; height:3px; background:linear-gradient(90deg,#70b34a,#0f4d87); }
.jj-site.is-sub .section-nav a:hover { background:#f7f7f7; }
.jj-site.is-sub .sub-content { width:100%; max-width:1442px; padding:70px 20px 100px; }
.jj-site.is-sub .page-heading { margin-bottom:60px; }
.jj-site.is-sub .page-heading h2 { font-size:45px; line-height:1.5; }
.jj-site.is-sub .social-rail { display:none; }
.jj-site.is-sub .original-content .ce_item { opacity:1; }
.jj-site.is-sub .original-content .de_item { opacity:1; }
.jj-site.is-sub .original-content .ceo_conts { display:block; }
.jj-site.is-sub .original-content [hidden] { display:none!important; }
.jj-site.is-sub .greeting_toggle[aria-expanded=true] .greeting_toggle__ico { transform:rotate(180deg); }
@media(prefers-reduced-motion:no-preference) {
 .jj-site.is-sub .original-content .subpage-reveal { opacity:0; transform:translateY(30px); transition:opacity .65s,transform .65s; }
 .jj-site.is-sub .original-content .subpage-revealed { opacity:1; transform:none; }
}
.jj-site.is-sub .original-content { max-width:none; }
.jj-site.is-sub .original-page-shell { max-width:none; width:100%; padding:0 0 100px; }
.jj-site.is-sub .original-page-shell .original-content { font-size:17px; line-height:1.5; }
.jj-site.is-sub .original-page-shell .original-content ul { list-style:none; padding-left:0; }
.jj-site.is-sub .original-page-shell .original-content .page-heading { margin:70px 20px 60px; }
.jj-site.is-sub .original-page-shell .original-content img { max-width:100%; }
.jj-site.is-sub .original-content .inner { max-width:1442px; }
.jj-site.is-sub .article-attachment a { overflow-wrap:anywhere; }
.jj-site.is-sub .download-actions { display:flex; flex-wrap:wrap; gap:10px; }
.jj-site.is-sub .download-actions a { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 24px; border:1px solid #bbb; color:#333; font-size:15px; }
.jj-site.is-sub .download-actions .ebook { color:white; background:#62a602; border-color:#62a602; }
.jj-site.is-sub .download-actions img { width:18px; height:20px; object-fit:contain; }
@media (max-width:1199px) {
 .jj-site.is-sub .site-sub-visual { height:360px; padding-top:80px; }
 .jj-site.is-sub .section-nav a { flex:1; padding:18px 15px; font-size:17px; }
}
@media (max-width:767px) {
 .jj-site.is-sub .site-sub-visual { height:280px; padding-top:55px; }
 .jj-site.is-sub .site-sub-visual h1 { font-size:26px; }
 .jj-site.is-sub .site-sub-visual p { font-size:16px; margin-top:20px; }
 .jj-site.is-sub .section-nav { border:0; padding:2px; }
 .jj-site.is-sub .section-nav > .site-inner { width:100%; flex-wrap:wrap; padding:0; gap:2px; }
 .jj-site.is-sub .section-nav a { flex:1 0 auto; border:1px solid #dedede; padding:9px 10px; font-size:12px; }
 .jj-site.is-sub .section-nav a.current { border-color:#aee008; }
 .jj-site.is-sub .section-nav a.current:after { content:none; }
 .jj-site.is-sub .sub-content { padding:45px 20px 65px; }
 .jj-site.is-sub .page-heading h2 { font-size:28px; }
 .jj-site.is-sub .page-heading { margin-bottom:35px; }
}
