:root {--ink:#17253d;--navy:#172d59;--muted:#657084}
body {letter-spacing:.015em}
.editorial-section {grid-template-columns:210px minmax(0,1fr)}
.rail-heading {padding-left:4.5vw}
.rail-heading h2 {font-size:23px;letter-spacing:.04em}
.rail-intro>p {font-size:18px}
.rail-intro .button {font-size:15px;min-width:190px}
.rail-intro h3 {font-size:32px}
.news-section {display:block;padding:56px 0 80px;background:#f7f9fc}
.news-section>.rail-heading {margin-bottom:25px;padding:0 4.5%}
.news-section>.rail-heading h2 {font-size:32px;color:var(--navy)}
.news-section .rail-body {padding-left:4.5%}
.news-section .rail-intro {position:absolute;top:51px;right:4.5%;padding:0;margin:0}
.news-section .rail-intro .button {font-size:15px;min-width:160px}
.motion-track {gap:26px}
.motion-track>.article-card {flex-basis:31vw}
.motion-track .article-card h3 {font-size:20px;line-height:1.75}
.motion-track .article-meta {font-size:14px;gap:10px}
.motion-track .article-meta>time {margin-right:0}
.motion-track .article-meta>span {border:0;padding:0;color:#5f6e87}
.motion-track .article-meta>.draft-badge {padding:2px 8px;background:#fff5d9;color:#775a20}
.motion-buttons button {min-width:40px;height:40px}
.service-card h3 {margin-top:24px;font-size:24px}
.service-card p {font-size:16px;line-height:2}
.poster-label, .support-note {display:none}
.art-security .security-frame>span {font-size:0}
.art-security .security-frame>span:before {content:"診断";font-size:clamp(24px,9cqw,56px);line-height:2.1;letter-spacing:.1em}
.art-support>strong {font-size:clamp(26px,9cqw,54px)}
.art-training strong {top:19%}
.art-development .screen-frame {top:12%}
.about-stage {grid-template-columns:210px minmax(0,1fr)}
.about-copy h2 {font-size:32px}
.about-copy p {font-size:16px;line-height:2.1}
.about-copy .button {font-size:16px}
.work-editorial p {font-size:16px}
.work-editorial .tags span {font-size:14px}
.work-editorial .work-client {font-size:14px}
.future-line>span {font-size:15px}
.future-line small {font-size:15px}
.future-line strong {font-size:20px}
.join-label h2 {font-size:34px;color:var(--blue)}
.join-label>p {font-size:17px;letter-spacing:.03em}
.join-copy>p {font-size:16px}
.join-copy .button {font-size:16px}
.contact-editorial p {font-size:16px}
.footer-links {font-size:15px}
.footer-main p {font-size:15px}
.footer-bottom, .footer-bottom small {font-size:13px}
.preview-note {font-size:14px;color:#657084;border-bottom:1px solid #dfe4ed;padding-bottom:22px;margin-bottom:35px}
.article-meta {font-size:14px}
.article-card h3 {font-size:20px}
.article-card p {font-size:16px}
.article-grid .article-meta {font-size:14px}
@media(max-width:1100px) {
.editorial-section, .about-stage {grid-template-columns:180px minmax(0,1fr)}
.rail-heading {padding-left:28px}
.rail-heading h2 {font-size:20px}
.rail-intro h3 {font-size:28px}
.rail-intro .button {font-size:14px;min-width:170px}
.about-copy h2 {font-size:28px}
.about-copy p {font-size:15px}
.service-card h3 {font-size:22px}
.motion-track>.article-card {flex-basis:340px}
.work-editorial p {font-size:15px}
.future-line {gap:20px}
.future-line small {font-size:14px}
.future-line strong {font-size:18px}
}
@media(max-width:820px) {
.editorial-section, .about-stage {display:block}
.rail-heading {padding-inline:24px}
.rail-heading h2 {font-size:23px}
.news-section .rail-body {padding-left:24px}
.news-section>.rail-heading {padding-inline:24px}
.news-section>.rail-heading h2 {font-size:28px}
.news-section .rail-intro {right:24px}
.news-section .rail-intro .button {min-width:140px;font-size:14px}
.about-copy {width:72%}
.about-copy h2 {font-size:29px}
.about-copy p {font-size:15px}
.work-editorial .work-client {font-size:14px}
.future-line>span {font-size:14px}
.join-copy>p {font-size:15px}
.join-copy .button {font-size:14px}
.contact-editorial p {font-size:15px}
.footer-links {font-size:14px}
.footer-bottom, .footer-bottom small {font-size:12px}
}
@media(max-width:560px) {
.news-section {padding-top:40px;padding-bottom:55px}
.news-section>.rail-heading {padding-inline:22px;margin-bottom:25px}
.news-section>.rail-heading h2 {font-size:25px}
.news-section .rail-body {padding-left:22px}
.news-section .rail-intro {position:static;margin-bottom:24px}
.news-section .rail-intro .button {margin-top:0;font-size:14px;min-width:155px}
.motion-track>.article-card, .motion-track>.service-card {flex-basis:84vw}
.motion-track .article-meta {font-size:13px;margin-top:19px}
.motion-track .article-card h3 {font-size:19px}
.rail-heading h2 {font-size:24px}
.rail-intro h3 {font-size:28px}
.rail-intro .button {font-size:14px;min-width:180px}
.service-card h3 {font-size:23px}
.service-card p {font-size:15px}
.about-stage {padding-bottom:55px}
.about-copy {width:calc(100% - 44px);margin-left:22px}
.about-copy h2 {font-size:26px;line-height:1.8}
.about-copy p {font-size:15px;line-height:2.1}
.about-copy .button {font-size:15px}
.future-line>span {font-size:14px}
.future-line strong {font-size:16px}
.future-line small {font-size:14px;line-height:1.8}
.work-editorial h3 {font-size:23px}
.work-editorial p {font-size:15px}
.work-editorial .tags span {font-size:13px}
.join-label h2 {font-size:28px}
.join-label>p {font-size:16px}
.join-copy {margin-left:10%}
.join-copy h2 {font-size:37px}
.join-copy>p {font-size:15px;line-height:2}
.join-copy .button {font-size:14px;min-width:240px}
.contact-editorial h2 {font-size:30px}
.contact-editorial p {font-size:15px}
.contact-editorial>a {font-size:16px}
.footer-links {font-size:14px}
.footer-main p {font-size:14px}
.footer-bottom {font-size:12px;line-height:2}
.preview-note {font-size:13px}
.article-grid .article-meta {font-size:13px}
.article-card h3 {font-size:20px}
.article-card p {font-size:15px}
}
.news-heading {display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 4.5% 30px}
.news-heading h2 {font-size:32px;color:var(--navy)}
.news-heading .button {font-size:15px;min-width:155px}
.news-section .rail-body {position:relative}
@media(max-width:820px) {
.news-heading {margin-inline:24px}
.news-heading h2 {font-size:28px}
}
@media(max-width:560px) {
.news-heading {margin:0 22px 25px;gap:15px}
.news-heading h2 {font-size:25px}
.news-heading .button {font-size:13px;min-width:100px;gap:10px;padding:10px 18px 10px 0}
.news-heading .button:after {height:12px;width:12px}
}
