@import url("読みもの仕上げ.css");
/* 商品、会社概要、記事の見出しと余白をトップに揃える */
.subpage{--sans:var(--font);--serif:var(--font);--mono:var(--font);--cobalt:#29453a;--indigo:#202622;--paper:#f1f2f0;--max:1240px;background:#fff}
.subpage .masthead{color:#171918}.subpage .masthead nav a{display:block}.subpage .footer{display:block;color:#171918}.subpage .footer nav{justify-content:flex-end}
.subpage .reveal{opacity:1;transform:none;transition:none}
.subpage .container{width:min(1240px,calc(100% - 120px))}
.subpage .button{border-radius:50px;font-weight:400;padding:14px 25px;min-height:50px}
.subpage .button-blue:hover{background:#3a5348}.subpage .button:hover{transform:none}
.subpage .eyebrow,.subpage .section-tag{font-family:var(--font);letter-spacing:0;font-size:11px}
.subpage .section-tag>span{display:none}
.subpage .service-hero{min-height:570px;background:#202622;grid-template-columns:1fr 1fr}
.subpage .service-hero-copy{padding:80px 5vw 80px max(40px,calc((100vw - 1240px)/2))}
.subpage .service-hero-copy h1{font-size:clamp(38px,4.2vw,64px);font-weight:500;letter-spacing:.02em;line-height:1.5}
.subpage .service-hero-copy .eyebrow{color:#c2cdc5}
.subpage .service-hero-copy>p:not(.eyebrow){color:#c2cdc5}
.subpage .service-hero-panel{padding:0;background:#060909;min-height:0;display:block}
.subpage .service-hero-panel::before{content:none}
.subpage .service-hero-panel>img{height:100%;width:100%;object-fit:cover}
.subpage .service-intro h2,.subpage .split-title h2,.subpage .service-block-head h2,.subpage .section-title{font-size:clamp(29px,3.1vw,45px);letter-spacing:0;line-height:1.55;font-weight:500}
.subpage .service-intro h2 br,.subpage .split-title h2 br{display:none}
.subpage .content-section,.subpage .service-block{padding-block:85px}
.subpage .service-block-head{top:40px}.subpage .service-block-head h2{margin-top:28px}
.subpage .service-offer{min-height:0;grid-template-columns:1fr;padding:30px 0}.subpage .service-offer>span{display:none}
.subpage .service-offer h3{font-size:20px}.subpage .service-block-dark{background:#202622}
.subpage .service-block-dark .service-block-head>p,.subpage .service-block-dark .service-offer p,.subpage .dark .content-card p:last-child,.subpage .dark .section-lead{color:#c0cbc4}
.subpage .service-block-dark .section-tag{color:#c0cbc4}
.subpage .workflow article{min-height:260px;padding:25px}.subpage .workflow article h3{margin-top:40px;font-size:20px}
.subpage .split-title{margin-bottom:48px}.subpage .search-grid article{min-height:260px}.subpage .search-grid h3{margin-top:55px;font-size:20px}
.subpage .service-contact{background:#202622;padding-block:85px}
.subpage .service-contact h2{font-size:45px;font-weight:500;letter-spacing:0;line-height:1.5;margin:22px 0}
.subpage .detail-hero,.subpage .detail-hero-grid{min-height:650px;background:#202622}
.subpage .detail-hero-copy{padding:90px 5vw 90px max(40px,calc((100vw - 1240px)/2))}
.subpage .detail-hero h1{font-size:90px;font-weight:400;letter-spacing:-.04em}
.subpage .detail-hero-lead{color:#c2cdc5}
.subpage .detail-hero-visual{height:650px;min-height:0}.subpage .detail-hero-visual img{object-position:center 60%}
.subpage .brand-origin{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;padding-block:75px;border-bottom:1px solid var(--line)}
.subpage .brand-origin h2{font-size:26px;line-height:1.5;font-weight:500;margin:0}.subpage .brand-origin p{margin:0;font-size:14px;line-height:2;color:var(--muted)}
.subpage .content-card{min-height:235px}.subpage .content-card h3{margin-top:45px;font-size:21px}
.subpage .product-detail .media-copy-body{max-width:820px;margin:auto}.subpage .content-section.dark{background:#202622}
.subpage .cta-section{background:#202622;padding-block:75px}.subpage .cta-grid h2{font-size:36px;letter-spacing:0;line-height:1.5}
.subpage .policy-hero,.subpage .editorial-hero{background:#f1f2f0;color:#171918;min-height:0;padding:85px 0 70px}
.subpage .policy-hero h1,.subpage .editorial-hero h1{font-size:clamp(30px,4vw,55px);letter-spacing:0;line-height:1.5;font-weight:500;margin-top:18px}
.subpage .policy-hero .eyebrow,.subpage .editorial-hero .eyebrow{color:#626663}
.subpage .policy-hero p:last-child,.subpage .editorial-lead,.subpage .editorial-meta{color:#626663}
.subpage .journal{padding-block:70px}.subpage .journal-card{min-height:320px}.subpage .journal-card h2{margin-top:45px;font-size:22px}.subpage .journal-card .number{color:#626663}
.subpage .policy-info{background:#f1f2f0}.subpage .policy-section h2{font-size:22px}.subpage .policy-nav{top:35px}
.company-page .page-hero{min-height:0;padding:85px 9vw;background:#f1f2f0;color:#171918}
.company-page .page-hero h1{font-size:55px;letter-spacing:.02em;margin:20px 0}.company-page .page-hero>img{display:none}
.company-page .origin,.company-page .outline{padding-block:85px}.company-page .origin h2,.company-page .outline h2{font-size:38px;line-height:1.4}
.company-page .origin>div:last-child{padding-top:0}.company-page .representative{padding-block:85px;background:#f1f2f0;grid-template-columns:.85fr 1.15fr}
.company-page .portrait{height:650px;min-height:0}.company-page .message h2{font-size:36px;line-height:1.65}
.company-page .message>p,.company-page .origin>div:last-child p{font-size:14px;color:#525b55;line-height:2.1}
.company-page .signature{align-items:center;margin-top:25px;margin-bottom:28px}.company-page .signature b{font-size:21px}
.company-page .cta{background:#202622;padding-block:80px}.company-page .cta h2{font-size:34px}.company-page .cta>a{border-radius:50px}
@media(max-width:900px){.subpage .container{width:calc(100% - 64px)}.company-page .representative{gap:45px}.company-page .portrait{height:570px}}
@media(max-width:700px){.subpage .container{width:calc(100% - 40px)}.subpage .service-hero{grid-template-columns:1fr;min-height:0}.subpage .service-hero-copy{padding:55px 24px}.subpage .service-hero-copy h1{font-size:40px}.subpage .service-hero-panel{height:290px}.subpage .service-hero-panel img{object-fit:cover}.subpage .content-section,.subpage .service-block{padding-block:60px}.subpage .service-block-head h2{font-size:32px}.subpage .service-intro-grid,.subpage .split-title{gap:24px}.subpage .section-title{font-size:30px}.subpage .service-contact h2{font-size:32px}.subpage .detail-hero-grid{min-height:0}.subpage .detail-hero-copy{padding:60px 24px}.subpage .detail-hero h1{font-size:70px}.subpage .detail-hero-visual{height:480px;min-height:0}.subpage .brand-origin{grid-template-columns:1fr;gap:20px;padding-block:50px}.subpage .brand-origin h2{font-size:24px}.subpage .content-card{min-height:195px}.subpage .content-card h3{margin-top:26px}.subpage .policy-hero,.subpage .editorial-hero{padding:55px 0}.subpage .policy-hero h1{font-size:27px;white-space:normal}.subpage .editorial-hero h1{font-size:29px}.subpage .footer nav{justify-content:flex-start}.company-page .page-hero{padding:55px 24px}.company-page .page-hero h1{font-size:37px}.company-page .origin,.company-page .outline,.company-page .representative{padding:55px 24px;grid-template-columns:1fr;gap:30px}.company-page .portrait{height:auto;aspect-ratio:1053 / 1500}.company-page .message h2{font-size:29px}.company-page .origin h2,.company-page .outline h2{font-size:30px}.company-page .cta{padding:55px 24px}.company-page .cta h2{font-size:27px}}
