/* COPY2: the new copy is typeset in the existing paper / ink / vermilion edition. */
.copy2-section{padding:88px 0;border-bottom:1px solid var(--line)}
.copy2-heading{display:grid;grid-template-columns:64px minmax(0,1fr);gap:24px;align-items:start;margin-bottom:40px}
.copy2-heading>.folio{color:var(--accent);font-size:44px;line-height:1.4}
.copy2-heading h2{font-size:clamp(28px,3.3vw,48px);font-weight:900;line-height:1.55;letter-spacing:-.045em;max-width:1000px}
.copy2-top .masthead{height:116px;font-size:142px}
.copy2-top .cover-meta{padding-block:13px}
.copy2-top .cover-story{padding:24px 32px 28px 0}
.copy2-top .cover-title{font-size:clamp(40px,5.65vw,90px);line-height:1.18;letter-spacing:-.065em}
.copy2-top .headline-line{font-size:inherit;white-space:nowrap;line-height:1.18;padding-bottom:.1em}
.copy2-top .cover-bottom{display:block;margin-top:22px}
.copy2-top .cover .cover-lead{font-size:18px;line-height:1.85;max-width:680px;font-weight:700}
.copy2-top .cover-detail{margin-top:12px}
.copy2-top .cover-detail .cover-description{font-size:14px;line-height:1.8}
.copy2-top .cover .cover-cta{max-width:620px;font-size:16px;margin-top:15px;padding-block:9px}
.copy2-hero-note{font-size:12px;margin-top:8px;color:var(--muted)}
.copy2-top .cover-sidebar{padding-top:24px;justify-content:flex-start;gap:40px}
.copy2-top .contents>a{font-size:20px;gap:14px}
.copy2-example.service{display:block;padding:32px 0 40px;border-top:1px solid var(--ink)}
.copy2-example-title{display:flex;gap:24px;align-items:center;margin-bottom:24px}
.copy2-example-title .service-number{font:800 64px/1 'Barlow Condensed',sans-serif;color:var(--accent);width:64px;flex:none}
.copy2-example-title h3{font-size:25px;font-weight:800;line-height:1.6}
.copy2-pair{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:24px;align-items:center}
.copy2-pair>div{min-width:0;padding:20px 24px;border-top:1px solid var(--line)}
.copy2-pair>div:last-child{border-color:var(--accent);background:rgba(0,153,154,.055)}
.copy2-pair-label{font-size:13px;display:block;margin-bottom:8px;color:var(--muted);font-weight:700}
.copy2-pair>div:last-child .copy2-pair-label{color:var(--accent)}
.copy2-pair p{font-size:19px;font-weight:600;line-height:1.9}
.copy2-pair-arrow{font-size:32px;color:var(--accent);text-align:center}
.copy2-example .service-figure{margin:32px 0 0 88px;max-width:680px}
.copy2-example .service-figure .image-window{aspect-ratio:3/1}
.copy2-example .service-figure img{width:100%;height:100%;object-fit:cover}
.copy2-fees,.copy2-flow{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}
.copy2-fees th,.copy2-fees td,.copy2-flow th,.copy2-flow td{padding:28px 24px;border-bottom:1px solid var(--line);vertical-align:top;font-size:17px;line-height:1.85}
.copy2-fees thead th,.copy2-flow thead th{padding-top:0;padding-bottom:12px;color:var(--muted);font-size:12px;font-weight:500;border-bottom:2px solid var(--ink)}
.copy2-fees th:first-child{width:26%;padding-left:0;font-weight:800}.copy2-fees th:last-child{width:28%}
.copy2-price{font-size:clamp(26px,2.8vw,42px);font-weight:800;letter-spacing:-.04em;line-height:1.5;display:block;white-space:nowrap}
.copy2-price.is-free{font-size:clamp(44px,5vw,64px);color:var(--accent);line-height:1.25}
.copy2-tax{font-size:12px;display:block;color:var(--muted);font-weight:400;white-space:nowrap}
.copy2-notes{font-size:13px;line-height:2;color:var(--muted);margin-top:24px;max-width:960px}.copy2-notes p+p{margin-top:8px}
.copy2-small-start{font-size:19px;font-weight:700;margin-top:24px}
.copy2-consult .copy2-heading{margin-bottom:32px}.copy2-consult .copy2-heading>.folio{color:var(--paper)}
.copy2-consult .contact-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:64px}
.copy2-consult-body{font-size:21px;font-weight:600;line-height:2.15;max-width:620px}
.copy2-consult .contact-main>span:first-child{font-size:36px}.copy2-consult-note{font-size:14px;line-height:2;margin-top:28px}
.copy2-consult .contact-assurances{margin-top:20px}
.copy2-company{padding-block:48px 64px}.copy2-company>p{font-size:18px;font-weight:600}.copy2-company .company-links{margin:16px 0 24px}
.copy2-ai .ds2-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px}
.copy2-ai .ds2-hero h1{font-size:clamp(27px,3.25vw,46px);line-height:1.65;letter-spacing:-.045em}
.copy2-ai .ds2-hero-lead{font-size:18px;line-height:1.95;max-width:640px}
.copy2-ai .vh-actions a{font-size:16px;white-space:normal;line-height:1.8}
.copy2-checklist{max-width:960px;margin-left:88px}
.copy2-checklist li{padding:16px 0 16px 32px;border-bottom:1px solid var(--line);font-size:20px;line-height:1.9;position:relative}
.copy2-checklist li::before{content:'✓';position:absolute;left:0;color:var(--accent)}
.copy2-comparison{border-top:2px solid var(--ink)}
.copy2-compare-header,.copy2-compare-row{display:grid;grid-template-columns:22% 33% 45%}
.copy2-compare-header>*{padding:16px 24px;font-size:15px}
.copy2-compare-row{border-top:1px solid var(--line)}
.copy2-compare-row>*{padding:24px;font-size:18px;line-height:1.9}
.copy2-compare-row>h3{padding-left:0;font-size:16px;font-weight:700}
.copy2-compare-row>div:last-child,.copy2-compare-header>b:last-child{background:rgba(0,153,154,.055)}
.copy2-mobile-label{display:none}
.copy2-tasks{margin-left:88px}.copy2-tasks li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:24px;padding:32px 0;border-top:1px solid var(--line)}
.copy2-step{font:800 48px/1.3 'Barlow Condensed',sans-serif;color:var(--accent)}
.copy2-tasks h3{font-size:24px;line-height:1.6;margin-bottom:12px}.copy2-tasks p{font-size:18px;line-height:2}
.copy2-ai .r1-examples{gap:40px 32px}.copy2-ai .r1-example{min-width:0}.copy2-ai .r1-example-heading{display:block}.copy2-ai .r1-example-heading h3{font-size:24px;line-height:1.6}
.copy2-ai .r1-example .copy2-pair{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:8px;margin-top:20px}.copy2-ai .r1-example .copy2-pair>div{padding:16px 12px}.copy2-ai .r1-example .copy2-pair p{font-size:15px}.copy2-ai .copy2-booking{grid-column:1/-1}.copy2-booking .service-figure{max-width:680px;margin-top:24px}
.copy2-flow th:first-child{width:10%;padding-left:0}.copy2-flow th:last-child{width:28%}
.copy2-ai .faq{max-width:900px;margin-left:88px}.copy2-ai .faq details{border-top:1px solid var(--ink);padding:20px 0}.copy2-ai .faq summary{font-size:19px;font-weight:700;cursor:pointer}.copy2-ai .faq details>div,.copy2-ai .faq details>p{font-size:16px;padding:16px 0;line-height:2}
.copy2 a:hover{color:var(--accent)}.copy2 .contact a:hover{color:var(--ink)}
.copy2-case-label{font-size:21px;font-weight:800;margin-bottom:20px}
.copy2-ai .r1-example-heading .copy2-case-heading{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:8px;font-size:17px;line-height:1.9;letter-spacing:0;font-weight:600}
.copy2-case-heading>span:not(.copy2-pair-arrow){padding:16px 12px;border-top:1px solid var(--line)}
.copy2-case-heading>span:last-child{border-color:var(--accent);background:rgba(0,153,154,.055)}
.copy2-case-heading small{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:8px}
.copy2-case-heading>span:last-child small{color:var(--accent)}
.copy2-section .process-track{color:var(--accent);margin:0 0 32px}.copy2-section .process-track i{background:var(--accent)}
@media(max-width:760px){
 .copy2-section{padding:56px 0}.copy2-heading{grid-template-columns:34px minmax(0,1fr);gap:12px;margin-bottom:28px}.copy2-heading>.folio{font-size:28px}.copy2-heading h2{font-size:27px;line-height:1.65}
 .copy2-top .masthead{height:64px;font-size:68px;border-bottom-width:3px}.copy2-top .cover-meta{padding:12px 0;font-size:10px}.copy2-top .cover-layout{display:block}.copy2-top .cover-story{padding:20px 0 28px}.copy2-top .cover-title{font-size:39px;letter-spacing:-.07em;line-height:1.26}.copy2-top .headline-line{line-height:1.26}.copy2-top .cover-bottom{margin-top:20px}.copy2-top .cover .cover-lead{font-size:17px;line-height:1.9}.copy2-top .cover-detail{gap:12px}.copy2-top .cover-detail .cover-description{font-size:14px}.copy2-top .cover .cover-cta{font-size:16px;line-height:1.9;margin-top:16px}.copy2-hero-note{font-size:12px;line-height:1.9}.copy2-top .cover-sidebar{padding:20px 0;display:block}.copy2-top .cover-sidebar .contents{margin-top:16px}.copy2-top .contents>a{font-size:18px}
 .copy2-example.service{padding:24px 0 32px}.copy2-example-title{gap:16px}.copy2-example-title .service-number{width:32px;font-size:38px}.copy2-example-title h3{font-size:22px}.copy2-pair,.copy2-ai .r1-example .copy2-pair{display:grid;grid-template-columns:1fr;gap:0}.copy2-pair>div,.copy2-ai .r1-example .copy2-pair>div{padding:16px}.copy2-pair p,.copy2-ai .r1-example .copy2-pair p{font-size:17px}.copy2-pair-arrow{transform:rotate(90deg);line-height:1.3}.copy2-example .service-figure{margin:24px 0 0}.copy2-example .service-figure .image-window{aspect-ratio:16/9}
 .copy2-fees,.copy2-flow,.copy2-fees tbody,.copy2-flow tbody{display:block}.copy2-fees thead,.copy2-flow thead{display:none}.copy2-fees tr,.copy2-flow tr{display:grid;grid-template-columns:1fr;border-top:1px solid var(--ink);padding:24px 0;gap:12px}.copy2-fees th,.copy2-fees td,.copy2-flow th,.copy2-flow td{display:block;width:100%!important;padding:0;border:0;font-size:17px}.copy2-price{font-size:32px}.copy2-price.is-free{font-size:56px}.copy2-tax{font-size:12px}.copy2-notes{font-size:13px;margin-top:20px}
 .copy2-consult .contact-grid{grid-template-columns:1fr;gap:28px}.copy2-consult-body{font-size:18px;line-height:2}.copy2-consult .contact-main>span:first-child{font-size:29px}.copy2-consult-note{font-size:14px}.copy2-company{padding-block:36px 48px}.copy2-company>p{font-size:16px}
 .copy2-ai .ds2-hero-grid{grid-template-columns:1fr;gap:32px}.copy2-ai .ds2-hero h1{font-size:27px;line-height:1.65}.copy2-ai .ds2-hero-lead{font-size:17px}.copy2-ai .vh-actions a{font-size:15px}.copy2-ai .vh-foot{margin-top:28px}.copy2-checklist,.copy2-tasks,.copy2-ai .faq{margin-left:0}.copy2-checklist li{font-size:17px}
 .copy2-compare-header{display:none}.copy2-compare-row{display:block;padding:24px 0}.copy2-compare-row>*{padding:16px;font-size:17px}.copy2-compare-row>h3{padding:0 0 16px;font-size:19px}.copy2-compare-row>div:last-child::before{content:'↓';display:block;color:var(--accent);font-size:24px;margin-bottom:8px}.copy2-mobile-label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:8px}.copy2-compare-row>div:last-child .copy2-mobile-label{color:var(--accent)}
 .copy2-tasks li{grid-template-columns:34px minmax(0,1fr);gap:16px;padding:24px 0}.copy2-step{font-size:34px}.copy2-tasks h3{font-size:22px}.copy2-tasks p{font-size:17px}.copy2-ai .r1-examples{display:block}.copy2-ai .r1-example+.r1-example{margin-top:32px}.copy2-ai .faq summary{font-size:17px}
 .copy2-ai .r1-example-heading .copy2-case-heading{grid-template-columns:1fr;gap:0;font-size:17px}
}
/* Company links at the end of the top page: three equal cards with a readable title, a one-line hint and an arrow (社長 10-17). */
.copy2-company .copy2-company-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 0;padding:0;list-style:none}
.copy2-company-cards a{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:16px;row-gap:8px;align-items:center;height:100%;padding:24px 26px;border:1px solid var(--ink);background:rgba(255,255,255,.35);color:var(--ink);text-decoration:none;transition:background-color .25s var(--ease),box-shadow .25s var(--ease),transform .25s var(--ease)}
.copy2-company-cards b{font-size:20px;font-weight:800;line-height:1.4}
.copy2-company-cards span{grid-column:1;font-size:14px;line-height:1.7;color:var(--muted)}
.copy2-company-cards i{grid-column:2;grid-row:1 / span 2;font-style:normal;font-size:22px;color:var(--accent);transition:transform .25s var(--ease)}
.copy2-company-cards a:hover,.copy2-company-cards a:focus-visible{background:#fff;box-shadow:6px 6px 0 #001a47;transform:translate(-2px,-2px)}
.copy2-company-cards a:hover i,.copy2-company-cards a:focus-visible i{transform:translateX(4px)}
.copy2-company-cards a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.copy2-company-cards a:active{transform:translate(1px,1px);box-shadow:2px 2px 0 #001a47}
@media(max-width:760px){
 .copy2-company .copy2-company-cards{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:20px}
 .copy2-company-cards a{padding:18px 20px}
 .copy2-company-cards b{font-size:18px}
 .copy2-company-cards span{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
 .copy2-company-cards a,.copy2-company-cards i{transition:none}
 .copy2-company-cards a:hover,.copy2-company-cards a:focus-visible,.copy2-company-cards a:active,.copy2-company-cards a:hover i,.copy2-company-cards a:focus-visible i{transform:none}
}
