/* 月次の予定と記録を主役にしたマーケの右腕の表示。 */
body.cp-page{margin:0;background:#fff;color:#1f2c3a;font-family:var(--font-site);overflow-x:clip}
.cp-main{--cp-ink:#1f2c3a;--cp-teal:#1d6b7e;--cp-pink:#bc3f61;--cp-blue:#eaf3fb;--cp-line:#1d6b7e30;--cp-top:110px;--cp-vh:calc(var(--motion-vh,1svh) * 100);isolation:isolate;line-height:1.9}
.cp-main *{box-sizing:border-box}
.cp-main h1,.cp-main h2,.cp-main h3,.cp-main p,.cp-main ul,.cp-main dl,.cp-main dd{margin:0}
.cp-main h1,.cp-main h2,.cp-main h3{line-height:1.4;letter-spacing:-.03em;font-weight:800;text-wrap:pretty}
.cp-main h1{font-size:clamp(40px,4.7vw,70px);line-height:1.3;font-weight:900}
.cp-main h2{font-size:clamp(30px,3.6vw,52px)}
.cp-main h3{font-size:clamp(23px,2.6vw,36px)}
.cp-main p{font-size:16px;line-height:1.95;margin-top:22px}
.cp-main a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
.cp-main a:focus-visible,.cp-main summary:focus-visible{outline:3px solid #de6484;outline-offset:5px}
.cp-main .cp-label{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--cp-pink);margin:0 0 18px}
.cp-main .cp-small{font-size:13px}
.cp-main [id]{scroll-margin-top:115px}
.cp-wrap{width:min(1200px,calc(100% - 96px));margin:auto}
.cp-narrow{width:min(860px,calc(100% - 96px))}
.cp-section{padding:108px 0;position:relative}
.cp-heading{max-width:880px}
.cp-heading>p:not(.cp-label){max-width:760px}
.cp-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}
.cp-main .cp-button{display:inline-flex;justify-content:center;align-items:center;background:var(--cp-pink);color:#fff;padding:13px 26px;min-height:52px;border-radius:100px;text-decoration:none;font-size:15px;font-weight:700;line-height:1.65}
.cp-button:hover{background:#a33354}
.cp-art{display:block;width:100%;height:auto;object-fit:contain}
.cp-chapter{position:relative}
.cp-pin{position:relative;background:#fff;isolation:isolate}
.cp-stage{width:min(1200px,calc(100% - 96px));margin:auto;position:relative}
.cp-tabs{display:flex;gap:32px;align-items:center;position:relative;z-index:8;padding:18px 0}
.cp-tabs a{font-size:15px;font-weight:700;min-height:44px;display:flex;align-items:center;text-decoration:none;border-bottom:2px solid transparent}
.cp-tabs a[aria-current=step]{color:var(--cp-pink);border-color:var(--cp-pink)}
.cp-panels{perspective:1400px;position:relative}
.cp-panel{position:relative;transform-origin:50% 45%}
.cp-panel-inner{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:68px;align-items:center;padding:48px 0;position:relative}
.cp-panel-inner>*{min-width:0}
.cp-copy p{max-width:660px}
.cp-opening .cp-pin{background:#f5f9fd}
.cp-opening .cp-pin:before{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#2396ad24 .9px,transparent 1px),linear-gradient(90deg,transparent 74%,#deebf7 74%,#deebf7 74.08%,transparent 74.08%);background-size:20px 20px,100% 100%;mask-image:linear-gradient(90deg,transparent 44%,#000 80%)}
.cp-opening .cp-tabs{padding-top:var(--cp-top)}
.cp-opening .cp-panel-inner{padding-top:32px;padding-bottom:68px}
.cp-opening .cp-tabs a:first-child{font-size:21px;letter-spacing:.04em}
.cp-hero-visual{position:relative;padding:30px 0}
.cp-hero-visual:before{content:"";position:absolute;width:90%;aspect-ratio:1;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:#e1edf8;z-index:-1}
.cp-desk-labels{display:flex;gap:18px;justify-content:center;font-size:13px;font-weight:600;color:var(--cp-teal)}
.cp-role .cp-panel-inner{grid-template-columns:1fr 1.2fr}
.cp-roles>div{display:flex;gap:26px;padding:24px 0;border-bottom:1px solid var(--cp-line)}
.cp-roles>div:last-child{border-bottom:0}
.cp-roles>div>span{font-size:13px;font-weight:700;color:var(--cp-pink);padding-top:7px}
.cp-roles h3{font-size:26px}
.cp-roles p{margin-top:10px}
.cp-month-intro{padding-bottom:56px}
.cp-main .cp-link-note{font-size:14px;max-width:760px}
.cp-month .cp-pin{background:#eaf3fb}
.cp-month .cp-pin:before{content:"";position:absolute;inset:0;z-index:-1;background-image:repeating-linear-gradient(0deg,transparent 0 79px,#2396ad0c 79px 80px)}
.cp-month .cp-tabs{justify-content:space-between;border-bottom:1px solid var(--cp-line)}
.cp-month .cp-tabs a{width:30%;font-size:20px}
.cp-calendar{background:white;border:1px solid #1d6b7e55;border-radius:14px;padding:25px 30px 12px;box-shadow:12px 16px 0 #d5e5f1;position:relative}
.cp-calendar:before,.cp-calendar:after{content:"";position:absolute;top:-11px;width:8px;height:22px;border:2px solid var(--cp-teal);background:#eaf3fb;border-radius:5px;left:25%}
.cp-calendar:after{left:75%}
.cp-calendar-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--cp-line);color:var(--cp-teal);font-size:13px}
.cp-calendar-top b{font-size:18px}
.cp-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:20px}
.cp-calendar-grid i{aspect-ratio:1.6;background:#edf4fa;border-radius:3px}
.cp-calendar-grid i.marked{background:#f3c1cf}
.cp-calendar img{max-height:210px;object-fit:contain}
.cp-scope-intro{padding-bottom:38px}
.cp-scope .cp-pin{background:#fff}
.cp-scope .cp-tabs{justify-content:space-between;gap:20px;border-bottom:1px solid var(--cp-line)}
.cp-scope .cp-tabs a{font-size:clamp(30px,4.5vw,64px);font-weight:800;flex:1;line-height:1.45;letter-spacing:.04em;padding-bottom:12px}
.cp-main .cp-scope-condition{font-size:13px;color:#52616a;margin:16px 0 0}
.cp-scope .cp-panel-inner{padding:36px 0 44px}
.cp-work-doc{border:1px solid var(--cp-line);border-radius:10px;padding:28px 32px;background:#fff;box-shadow:10px 12px 0 #eaf3fb,20px 24px 0 #f3f7fb}
.cp-main .cp-document-name{font-size:14px;color:var(--cp-teal);font-weight:700;border-bottom:1px solid var(--cp-line);padding-bottom:12px;margin:0}
.cp-work-doc img{height:155px}
.cp-work-doc ul{padding:0;list-style:none}
.cp-work-doc li{font-size:15px;padding:10px 0 10px 20px;position:relative;border-bottom:1px solid var(--cp-line)}
.cp-work-doc li:before{content:"";position:absolute;left:0;top:20px;width:5px;height:5px;background:#de6484;border-radius:50%}
.cp-work-doc li:last-child{border-bottom:0}
.cp-common{padding-top:56px}
.cp-common-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:start}
.cp-common .cp-heading h2{font-size:32px}
.cp-common-note{padding:28px 32px;background:#fcf5df;border-radius:8px}
.cp-common-note h3{font-size:21px}
.cp-common-note p{margin-top:14px}
.cp-related{display:flex;gap:24px;flex-wrap:wrap;margin-top:40px;font-size:14px}
.cp-compare{background:#f5f9fd;background-image:radial-gradient(#1d6b7e14 .8px,transparent 1px);background-size:18px 18px}
.cp-comparison{margin-top:52px;background:white;border-radius:12px;border:1px solid var(--cp-line);overflow:hidden}
.cp-comparison-head,.cp-comparison-row{display:grid;grid-template-columns:.7fr 1fr 1fr 1.2fr}
.cp-comparison-head>*{font-size:15px;padding:22px}
.cp-comparison-row{border-top:1px solid var(--cp-line)}
.cp-comparison-row h3{font-size:15px;padding:24px}
.cp-comparison-row p{margin:0;padding:24px;font-size:15px}
.cp-comparison-head>*:last-child,.cp-comparison-row>*:last-child{background:#faeaf0}
.cp-mobile-option{display:none}
.cp-handoff-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.cp-handoff-sticky{position:sticky;top:var(--cp-top);padding:18px 0}
.cp-handoff-sticky img{max-height:300px;margin-top:28px;transform:translateY(calc(var(--handoff,0)*-12px)) scale(calc(.96 + var(--handoff,0)*.04));transform-origin:center}
.cp-handoff-steps>p{margin-top:0}
.cp-handoff-steps article{padding:42px 0;border-bottom:1px solid var(--cp-line)}
.cp-handoff-steps article:last-child{border:0}
.cp-handoff-steps article>span{font-size:13px;color:var(--cp-pink);font-weight:700;display:block;margin-bottom:16px}
.cp-handoff-steps h3{font-size:27px}
.cp-pricing .cp-pin{background:#eaf3fb;background-image:repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),#2396ad0c calc(25% - 1px) 25%)}
.cp-pricing .cp-stage{display:grid;grid-template-columns:1fr 1fr;gap:0 70px;padding-block:24px}
.cp-pricing .cp-tabs{grid-column:1/-1}
.cp-pricing .cp-fee-summary{grid-column:1;align-self:center;padding:25px 0}
.cp-fee-summary h2{font-size:42px;margin-bottom:24px}
.cp-fee-summary dl>div{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #1d6b7e40;padding:22px 0}
.cp-fee-summary dt{font-size:15px;font-weight:700}
.cp-fee-summary dd{font-size:27px;font-weight:800;letter-spacing:-.03em}
.cp-fee-summary small{display:block;font-size:12px;font-weight:500;text-align:right}
.cp-main .cp-contract{font-size:14px;font-weight:700;margin-top:14px}
.cp-main .cp-fee-excludes{font-size:13px;margin-top:12px;color:#52616a}
.cp-pricing .cp-panels{grid-column:2;align-self:center}
.cp-fee .cp-panel-inner{display:block;padding:32px;border:1px solid var(--cp-line);border-radius:12px;background:white;box-shadow:10px 12px 0 #d5e5f1}
.cp-fee h3{font-size:30px}
.cp-fee .cp-fee-art{height:120px;margin-top:22px}
.cp-ranges{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;gap:36px}
.cp-ranges article{padding:25px 0;border-top:1px solid var(--cp-line)}
.cp-ranges article>span{color:var(--cp-pink);font-size:13px;font-weight:700}
.cp-ranges p{font-size:15px;margin-top:15px}
.cp-ranges h3{font-size:23px;margin-top:18px}
.cp-notes{margin-top:36px}
.cp-notes section{display:grid;grid-template-columns:240px 1fr;gap:35px;border-top:1px solid var(--cp-line);padding:28px 0}
.cp-notes h3{font-size:20px}
.cp-notes p{margin:0}
.cp-price-future{max-width:840px}
.cp-faq{background:#f7fafc}
.cp-questions{margin-top:38px}
.cp-questions details{border-bottom:1px solid var(--cp-line);padding:26px 0}
.cp-questions details:first-child{border-top:1px solid var(--cp-line)}
.cp-questions summary{position:relative;list-style:none;font-size:20px;font-weight:700;line-height:1.7;padding-right:36px;cursor:pointer}
.cp-questions summary::-webkit-details-marker{display:none}
.cp-questions summary:after{content:"＋";position:absolute;right:0;color:var(--cp-pink)}
.cp-questions details[open] summary:after{content:"−"}
.cp-questions p{font-size:16px}
.cp-contact{background:#eaf3fb;background-image:radial-gradient(#1d6b7e13 .8px,transparent 1px);background-size:18px 18px}
.cp-contact-head{display:grid;grid-template-columns:1fr 210px;gap:30px;align-items:center}
.cp-tel a{display:inline-block;margin-right:10px}
/* 内容が収まる章のみ、画面を固定し同じ領域の中で資料を切り替える。 */
.cp-chapter.is-pinned{height:calc(var(--cp-vh) + var(--travel))}
.is-pinned .cp-pin{position:sticky;top:0;height:var(--cp-vh);overflow:clip;padding-top:var(--cp-top)}
.is-pinned .cp-stage{height:calc(var(--cp-vh) - var(--cp-top));display:flex;flex-direction:column}
.is-pinned .cp-panels{flex:1;min-height:0}
.is-pinned .cp-panel{position:absolute;inset:0;display:flex;align-items:center;will-change:transform,opacity}
.is-pinned .cp-panel-inner{width:100%}
.is-pinned.cp-opening .cp-tabs{padding-top:8px}
.is-pinned.cp-pricing .cp-stage{display:grid;grid-template-rows:auto 1fr;grid-template-columns:1fr 1fr;padding:0 0 24px}
.is-pinned.cp-pricing .cp-panels{height:100%;width:100%;min-height:0}
.is-measuring .cp-panel{position:relative!important;transform:none!important;visibility:visible!important;opacity:1!important}
.is-measuring .cp-stage{height:auto!important}
@media(min-width:1000px) and (max-height:780px){.cp-main h1{font-size:54px}.cp-panel-inner{padding:26px 0;gap:48px}.cp-opening .cp-panel-inner{padding:18px 0}.cp-hero-visual{padding:0}.cp-hero-visual img{height:320px}.cp-panel h3{font-size:30px}.cp-roles>div{padding:17px 0}.cp-roles h3{font-size:23px}.cp-fee-summary dl>div{padding:16px 0}.cp-fee-summary h2{font-size:36px}.cp-fee .cp-fee-art{height:80px}.cp-calendar img{height:160px}.cp-scope .cp-panel-inner{padding:24px 0}.cp-scope .cp-tabs a{font-size:48px}}
@media(max-width:999px){.cp-wrap,.cp-stage{width:calc(100% - 48px)}.cp-panel-inner{gap:30px}.cp-main h1{font-size:44px}.cp-main h2{font-size:34px}.cp-main h3{font-size:26px}.cp-common-grid,.cp-handoff-grid{gap:36px}.cp-comparison-head>*,.cp-comparison-row>*{padding:18px}.cp-pricing .cp-stage{gap:0 30px}.cp-fee-summary dd{font-size:22px}.cp-fee-summary dt{font-size:13px}.cp-fee .cp-panel-inner{padding:24px}.cp-fee-summary h2{font-size:34px}}
@media(max-width:699px){
.cp-wrap,.cp-stage,.cp-narrow{width:calc(100% - 40px)}
.cp-section{padding:64px 0}.cp-main p{font-size:16px;line-height:1.85;margin-top:16px}
.cp-main h1{font-size:35px;line-height:1.35}.cp-main h2{font-size:29px}.cp-main h3{font-size:23px}
.cp-main .cp-label{font-size:12px;margin-bottom:12px}.cp-pc-break{display:none}
.cp-panel-inner,.cp-role .cp-panel-inner{display:block;padding:26px 0}.cp-panel-inner>div+div{margin-top:24px}
.cp-tabs{gap:22px;padding:10px 0}.cp-tabs a{font-size:13px;min-height:44px}
.cp-opening .cp-tabs a:first-child{font-size:17px}.cp-opening .cp-panel-inner{padding:16px 0 24px}
.cp-hero-visual{padding:0}.cp-hero-visual img{height:150px}.cp-hero-visual:before{height:100%;width:80%;aspect-ratio:auto}.cp-desk-labels{font-size:11px;gap:18px}
.cp-actions{gap:18px;margin-top:20px}.cp-main .cp-button{font-size:14px;min-height:48px;padding:12px 22px}.cp-actions>a:not(.cp-button){font-size:14px;min-height:44px;display:flex;align-items:center}
.cp-role-head h2 br{display:revert}.cp-role .cp-role-head .cp-label{display:none}.cp-role .cp-roles{margin-top:16px}
.cp-roles>div{gap:16px;padding:16px 0}.cp-roles h3{font-size:20px}.cp-roles p{font-size:15px;line-height:1.8;margin-top:8px}.cp-roles>div>span{padding-top:2px}
.cp-month-intro{padding-bottom:38px}.cp-month .cp-tabs a{font-size:16px}
.cp-calendar{padding:16px 18px 0;box-shadow:7px 8px 0 #d5e5f1;display:grid;grid-template-columns:1fr 100px;gap:10px 16px;margin:28px 6px 8px 0!important}
.cp-calendar-top{grid-column:1/-1;padding-bottom:10px}.cp-calendar-top b{font-size:15px}.cp-calendar-top span{font-size:11px}
.cp-calendar-grid{margin:0;gap:5px;align-self:center}.cp-calendar-grid i{aspect-ratio:2.4}.cp-calendar img{height:95px}
.cp-scope-intro{padding-bottom:24px}.cp-scope .cp-tabs a{font-size:29px;padding-bottom:6px;justify-content:center}.cp-main .cp-scope-condition{font-size:12px;margin:10px 0 0}
.cp-scope .cp-panel-inner{padding:18px 0 24px}.cp-scope .cp-copy>.cp-label{display:none}
.cp-work-doc{padding:16px 18px;box-shadow:6px 8px 0 #eaf3fb,12px 16px 0 #f3f7fb;margin:22px 10px 10px 0!important;display:grid;grid-template-columns:65px 1fr;gap:8px 14px;align-items:center}
.cp-main .cp-document-name{grid-column:1/-1;font-size:12px;padding-bottom:8px}.cp-work-doc img{height:75px}.cp-work-doc li{font-size:13px;padding:6px 0 6px 12px}.cp-work-doc li:before{top:16px;width:4px;height:4px}
.cp-common-grid{display:block}.cp-common .cp-heading h2{font-size:27px}.cp-common-note{padding:22px;margin-top:28px}.cp-related{display:grid;gap:16px;margin-top:30px}.cp-related a{line-height:1.8}
.cp-comparison{margin-top:32px}.cp-comparison-head{display:none}.cp-comparison-row{display:block;padding:22px 20px}.cp-comparison-row:first-of-type{border:0}.cp-comparison-row h3{padding:0 0 14px;font-size:20px}.cp-comparison-row p{padding:14px 0;font-size:15px}.cp-comparison-row p:last-child{padding:16px;margin-top:8px;border-radius:7px}.cp-mobile-option{display:block;font-size:12px;color:var(--cp-teal);font-weight:700;margin-bottom:5px}
.cp-handoff-grid{display:block}.cp-handoff-sticky{position:relative;top:auto;padding:0;display:grid;grid-template-columns:1fr 100px;gap:12px;align-items:center}.cp-handoff-sticky img{height:130px;margin:0}.cp-handoff-sticky h2{font-size:26px}.cp-handoff-steps{margin-top:24px}.cp-handoff-steps article{padding:30px 0}.cp-handoff-steps h3{font-size:23px}
.cp-pricing .cp-stage,.is-pinned.cp-pricing .cp-stage{display:flex;flex-direction:column;padding-block:0}.cp-pricing .cp-fee-summary{align-self:stretch;padding:12px 0 18px}.cp-fee-summary h2{font-size:28px;margin-bottom:12px}.cp-fee-summary dl>div{padding:10px 0}.cp-fee-summary dt{font-size:13px}.cp-fee-summary dd{font-size:22px}.cp-fee-summary small{display:inline;font-size:11px}.cp-main .cp-contract{font-size:12px;margin-top:8px}.cp-main .cp-fee-excludes{font-size:11px;line-height:1.8;margin-top:6px}.cp-fee .cp-panel-inner{padding:20px;box-shadow:6px 8px 0 #d5e5f1}.cp-fee .cp-panel-inner>div+img{display:none}.cp-fee h3{font-size:23px}.cp-fee .cp-label{display:none}.cp-fee p{font-size:15px;line-height:1.8;margin-top:12px}.cp-fee .cp-actions{margin-top:16px}.cp-pricing .cp-panels{padding-bottom:28px}.cp-pricing .cp-panel{padding-bottom:24px}
.cp-ranges{display:block;margin-top:32px}.cp-ranges article{padding:24px 0}.cp-ranges h3{font-size:23px}.cp-notes{margin-top:20px}.cp-notes section{display:block;padding:24px 0}.cp-notes p{margin-top:12px}.cp-notes h3{font-size:20px}
.cp-questions summary{font-size:18px}.cp-questions details{padding:22px 0}.cp-contact-head{grid-template-columns:1fr 85px;gap:16px}.cp-contact-head img{height:115px}.cp-contact-head h2{font-size:28px}.cp-main .cp-tel{font-size:13px}.cp-main .cp-tel a{font-size:22px;display:block;font-weight:700}
.is-pinned .cp-stage{padding-bottom:12px}.is-pinned.cp-pricing .cp-panels{min-height:0;width:100%}
}
@media(max-width:699px) and (max-height:740px){:where(html:not([data-motion-short])) .cp-hero-visual img{height:95px}:where(html:not([data-motion-short])) .cp-hero-visual .cp-desk-labels{display:none}:where(html:not([data-motion-short])) .cp-main h1{font-size:32px}:where(html:not([data-motion-short])) .cp-opening .cp-panel-inner{padding-block:10px}:where(html:not([data-motion-short])) .cp-opening .cp-panel-inner>div+div{margin-top:14px}:where(html:not([data-motion-short])) .cp-calendar{margin-top:18px!important}:where(html:not([data-motion-short])) .cp-calendar img{height:75px}:where(html:not([data-motion-short])) .cp-calendar-grid i{aspect-ratio:3}:where(html:not([data-motion-short])) .cp-fee-summary h2{font-size:26px}:where(html:not([data-motion-short])) .cp-pricing .cp-fee-summary{padding:6px 0 12px}:where(html:not([data-motion-short])) .cp-fee .cp-panel-inner{padding:18px}:where(html:not([data-motion-short])) .cp-fee p{margin-top:10px}:where(html:not([data-motion-short])) .cp-role h2{font-size:26px}:where(html:not([data-motion-short])) .cp-roles>div{padding:12px 0}:where(html:not([data-motion-short])) .cp-role .cp-roles{margin-top:8px}:where(html:not([data-motion-short])) .cp-work-doc{margin-top:16px!important}}
@media(max-width:699px){:where(html[data-motion-short~="740"]) .cp-hero-visual img{height:95px}:where(html[data-motion-short~="740"]) .cp-hero-visual .cp-desk-labels{display:none}:where(html[data-motion-short~="740"]) .cp-main h1{font-size:32px}:where(html[data-motion-short~="740"]) .cp-opening .cp-panel-inner{padding-block:10px}:where(html[data-motion-short~="740"]) .cp-opening .cp-panel-inner>div+div{margin-top:14px}:where(html[data-motion-short~="740"]) .cp-calendar{margin-top:18px!important}:where(html[data-motion-short~="740"]) .cp-calendar img{height:75px}:where(html[data-motion-short~="740"]) .cp-calendar-grid i{aspect-ratio:3}:where(html[data-motion-short~="740"]) .cp-fee-summary h2{font-size:26px}:where(html[data-motion-short~="740"]) .cp-pricing .cp-fee-summary{padding:6px 0 12px}:where(html[data-motion-short~="740"]) .cp-fee .cp-panel-inner{padding:18px}:where(html[data-motion-short~="740"]) .cp-fee p{margin-top:10px}:where(html[data-motion-short~="740"]) .cp-role h2{font-size:26px}:where(html[data-motion-short~="740"]) .cp-roles>div{padding:12px 0}:where(html[data-motion-short~="740"]) .cp-role .cp-roles{margin-top:8px}:where(html[data-motion-short~="740"]) .cp-work-doc{margin-top:16px!important}}
@media(prefers-reduced-motion:reduce){.cp-handoff-sticky img{transform:none}.cp-panel{will-change:auto}.cp-main *{scroll-behavior:auto!important}}
/* 小画面も固定表示を成立させる。図と重複ラベルの高さを先に調整する。 */
@media(max-width:699px) and (max-height:740px){:where(html:not([data-motion-short])) .cp-pc-break{display:initial}:where(html:not([data-motion-short])) .cp-hero-visual img{height:60px}:where(html:not([data-motion-short])) .cp-roles>div{padding:9px 0}:where(html:not([data-motion-short])) .cp-calendar{padding:12px 16px!important}:where(html:not([data-motion-short])) .cp-calendar-top{display:none}:where(html:not([data-motion-short])) .cp-calendar img{height:72px}:where(html:not([data-motion-short])) .cp-calendar-grid i{aspect-ratio:2.8}:where(html:not([data-motion-short])) .cp-work-doc{padding:12px 16px}:where(html:not([data-motion-short])) .cp-work-doc li{padding-block:3px}:where(html:not([data-motion-short])) .cp-work-doc li:before{top:13px}:where(html:not([data-motion-short])) .cp-pricing .cp-panel{padding-bottom:0}:where(html:not([data-motion-short])) .cp-fee-summary dl>div{padding-block:9px}:where(html:not([data-motion-short])) .cp-fee-summary small{display:none}
}
@media(max-width:699px){:where(html[data-motion-short~="740"]) .cp-pc-break{display:initial}:where(html[data-motion-short~="740"]) .cp-hero-visual img{height:60px}:where(html[data-motion-short~="740"]) .cp-roles>div{padding:9px 0}:where(html[data-motion-short~="740"]) .cp-calendar{padding:12px 16px!important}:where(html[data-motion-short~="740"]) .cp-calendar-top{display:none}:where(html[data-motion-short~="740"]) .cp-calendar img{height:72px}:where(html[data-motion-short~="740"]) .cp-calendar-grid i{aspect-ratio:2.8}:where(html[data-motion-short~="740"]) .cp-work-doc{padding:12px 16px}:where(html[data-motion-short~="740"]) .cp-work-doc li{padding-block:3px}:where(html[data-motion-short~="740"]) .cp-work-doc li:before{top:13px}:where(html[data-motion-short~="740"]) .cp-pricing .cp-panel{padding-bottom:0}:where(html[data-motion-short~="740"]) .cp-fee-summary dl>div{padding-block:9px}:where(html[data-motion-short~="740"]) .cp-fee-summary small{display:none}
}
@media(max-width:699px) and (max-height:740px){:where(html:not([data-motion-short])) .cp-fee-summary dd{line-height:1.35}:where(html:not([data-motion-short])) .cp-scope .cp-panel-inner{padding:16px 0 20px}}
@media(max-width:699px){:where(html[data-motion-short~="740"]) .cp-fee-summary dd{line-height:1.35}:where(html[data-motion-short~="740"]) .cp-scope .cp-panel-inner{padding:16px 0 20px}}
@media(min-width:1000px) and (max-height:780px){.cp-scope .cp-panel-inner{padding-bottom:18px}}

/* MVは本文のタブ・固定スクロールから独立した領域。 */
.cp-mv{position:relative;isolation:isolate;background:#f5f9fd;padding:calc(var(--cp-top,96px) + 48px) 0 64px}
.cp-mv::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(#2396ad24 .9px,transparent 1px);background-size:20px 20px;mask-image:linear-gradient(90deg,transparent 35%,#000)}
.cp-mv .cp-panel-inner{padding:0;width:100%;min-height:560px;align-items:center}
.cp-intro-section{padding:72px 0;background:#f5f9fd}
.cp-intro-section .cp-panel-inner{width:100%;padding:0}
@media(max-width:699px){
 .cp-mv{padding-top:calc(var(--cp-top,88px) + 30px);padding-bottom:48px}
 .cp-mv .cp-panel-inner{min-height:0;padding:0;gap:32px}
 .cp-intro-section{padding:48px 0}
}
@media(max-width:699px){.cp-mv .cp-hero-visual img{height:230px}.cp-mv .cp-hero-visual{margin-top:32px}}


/* 月ごとの検討を支える、広い間隔のカレンダー罫。 */
.cp-intro-section{background-image:linear-gradient(#1D6B7E0b 1px,transparent 1px),linear-gradient(90deg,#1D6B7E0b 1px,transparent 1px);background-size:160px 80px}
@media(max-width:699px){.cp-month .lp-stack-panel{background-image:repeating-linear-gradient(0deg,transparent 0 79px,#1D6B7E0d 79px 80px)}.cp-pricing .lp-stack-panel{background-image:linear-gradient(90deg,transparent calc(100% - 1px),#1D6B7E0b 0);background-size:50% 100%}}

/* 横並びの項目は、同じ行の見出し・説明の高さを共有する。縦並びは自然な高さを保つ。 */
@media(min-width:700px){
.cp-ranges>article{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
.cp-ranges h3{align-self:start}
}
