@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');

:root{--ink:#352b24;--paper:#fffaf2;--white:#fffaf2;--orange:#e96a39;--pink:#f4eee4;--blue:#ced9d8;--yellow:#f1cb5a;--line:#d9d0c3;--muted:#6d6a65;--serif:Georgia,'Times New Roman',serif;--content:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans JP',sans-serif;line-height:1.7;letter-spacing:.01em}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:10px;z-index:1000;background:#fff;padding:12px}.site-header{height:82px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(24,24,24,.09);position:sticky;top:0;background:rgba(255,250,242,.94);backdrop-filter:blur(15px);z-index:20}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:42px;height:42px;background:var(--orange);color:white;display:grid;place-items:center;font-size:19px;font-weight:900;position:relative;letter-spacing:-.08em}.brand-mark span{position:absolute;right:4px;top:0;font-size:11px}.brand-name{font-size:10px;font-weight:800;letter-spacing:.12em;line-height:1.05}.site-nav{display:flex;gap:31px;align-items:center;font-size:12px;font-weight:700}.site-nav>a:not(.nav-cta):hover,.text-link:hover{color:var(--orange)}.nav-cta{padding:12px 18px;background:var(--ink);color:white;border-radius:2px}.nav-cta span{margin-left:15px;color:var(--yellow)}.menu-toggle{display:none}
.hero{max-width:1600px;min-height:665px;margin:auto;position:relative;padding:78px max(8vw,36px) 76px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;overflow:hidden;background:var(--pink)}.hero:before{content:'';position:absolute;width:580px;height:580px;border-radius:50%;background:#e7d8c4;right:-115px;top:-90px;opacity:.6}.hero-copy{position:relative;z-index:2;max-width:670px}.eyebrow{margin:0 0 20px;font-size:10px;font-weight:800;letter-spacing:.17em}.hero .eyebrow{display:flex;align-items:center;gap:9px}.hero .eyebrow span{height:8px;width:8px;background:var(--orange);border-radius:50%}h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(47px,6.3vw,86px);letter-spacing:-.075em;line-height:1.22;margin:0 0 22px;font-weight:900}.hero h1 em,.section-top h2 em,.about h2 em{font-family:var(--serif);font-weight:500;letter-spacing:-.05em;color:var(--orange)}.hero-lead{font-size:15px;line-height:2.05;max-width:580px}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:29px}.button{min-height:54px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:35px;font-size:12px;font-weight:800}.button-dark{background:var(--ink);color:white}.button-dark span{color:var(--yellow)}.text-link{font-size:12px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link span{margin-left:13px}.hero-note{margin-top:43px;font-size:10px;font-weight:700}.note-dot{display:inline-block;width:7px;height:7px;border:1px solid var(--ink);border-radius:50%;margin-right:6px}.hero-art{height:490px;position:relative;z-index:1}.art-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(24,24,24,.22);border-radius:50%;transform:translate(-50%,-50%)}.orbit-one{width:410px;height:410px}.orbit-two{width:300px;height:300px;border-style:dashed}.hero-art:after{content:'';position:absolute;width:350px;height:350px;left:50%;top:50%;border-radius:50%;background:var(--yellow);transform:translate(-50%,-50%);opacity:.82}.art-core{position:absolute;z-index:2;left:50%;top:50%;width:165px;height:165px;border-radius:50%;background:var(--ink);color:white;transform:translate(-50%,-50%);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-size:10px;letter-spacing:.17em;line-height:1.7;font-weight:800}.core-play{font-size:23px;color:var(--orange);margin-bottom:8px}.art-card{position:absolute;z-index:4;background:white;width:147px;padding:12px;box-shadow:7px 9px 0 rgba(24,24,24,.13);transform:rotate(-5deg)}.art-card>span{display:block;font-size:7px;letter-spacing:.16em;color:#827c74;margin-top:8px}.art-card strong{display:block;font-size:11px;margin-top:2px}.card-product{left:2%;top:11%;transform:rotate(-8deg)}.card-video{right:0;top:20%;transform:rotate(7deg)}.card-live{left:17%;bottom:10%;transform:rotate(5deg)}.product-shape{height:90px;background:#f4eee4;position:relative;display:grid;place-items:center}.product-shape:before{content:'';width:48px;height:58px;border-radius:10px 10px 14px 14px;background:var(--orange);box-shadow:inset -8px 0 rgba(191,52,28,.17)}.product-shape i{position:absolute;width:22px;height:10px;top:12px;border:3px solid var(--ink);border-bottom:0;border-radius:5px 5px 0 0}.product-shape b{position:absolute;width:13px;height:4px;background:var(--yellow);top:47px}.video-screen{height:90px;background:#e1e8df;position:relative;display:flex;align-items:end;justify-content:center;gap:5px;padding-bottom:10px}.video-screen span{position:absolute;inset:0;display:grid;place-items:center;font-size:19px;color:var(--orange)}.video-screen i{width:19px;background:#8d9b86;border-radius:10px 10px 0 0;height:31px}.video-screen i:nth-of-type(2){height:47px;background:#e6a078}.video-screen i:nth-of-type(3){height:38px;background:#352b24}.live-screen{height:90px;background:#352b24;color:white;position:relative;padding:13px}.live-screen b{font-size:8px;background:var(--orange);padding:3px 6px}.live-screen span{position:absolute;right:12px;top:12px;color:#e96a39;font-size:10px}.live-screen i{position:absolute;bottom:10px;left:15px;font-size:19px;color:var(--pink);letter-spacing:7px}.art-sticker{position:absolute;right:10%;bottom:8%;width:76px;height:76px;background:var(--orange);color:white;display:grid;place-content:center;text-align:center;font-size:10px;font-weight:900;line-height:1.2;transform:rotate(10deg);z-index:5;border-radius:50%}.art-sticker b{font-size:20px}.hero-bottom{position:absolute;bottom:23px;left:8vw;right:8vw;display:flex;align-items:center;gap:14px;font-size:9px;font-weight:800;letter-spacing:.08em}.hero-line{height:1px;width:50px;background:var(--ink)}
.section-wrap{padding:120px max(8vw,36px);max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:.7fr 1.5fr .65fr;gap:6%;align-items:start;background:var(--paper)}.intro-label{display:flex;flex-direction:column;gap:12px;font-size:9px;font-weight:800;letter-spacing:.15em}.intro-label span:first-child{font-size:24px;color:var(--orange);font-family:var(--serif)}.intro-copy .eyebrow,.section-top .eyebrow,.process .eyebrow,.price .eyebrow,.about .eyebrow,.faq .eyebrow,.final-cta .eyebrow{color:var(--orange)}.intro-copy h2,.section-top h2,.process h2,.price h2,.about h2,.faq h2,.final-cta h2{color:var(--ink);font-size:clamp(34px,4.2vw,58px);line-height:1.38;letter-spacing:-.06em;margin-bottom:25px}.intro-copy>p:not(.eyebrow){max-width:600px;color:#595650;font-size:13px;line-height:2.15}.pain-list{display:grid;gap:0;margin-top:28px;border-top:1px solid var(--line);max-width:580px}.pain-list span{padding:11px 0;border-bottom:1px solid var(--line);font-size:11px;font-weight:700}.pain-list span:before{content:'×';color:var(--orange);font-size:15px;margin-right:12px}.intro-aside{border-left:1px solid var(--line);padding-left:25px;margin-top:80px}.aside-number{font-size:26px;line-height:1.3;font-weight:800}.aside-number b{color:var(--orange);font-size:38px}.intro-aside p{font-size:10px;color:var(--muted);margin:14px 0 22px}.circle-link{width:43px;height:43px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:18px}
.support{background:#eee7dc}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:46px}.section-top h2{margin:0}.section-desc{font-size:12px;max-width:340px;color:var(--muted);line-height:2;margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.service-card{grid-column:span 2;background:#fff;padding:21px 22px 20px;min-height:370px;display:flex;flex-direction:column;position:relative;overflow:hidden}.service-featured{background:#fff}.service-head{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:800;letter-spacing:.15em}.service-icon{font-size:16px}.service-illustration{height:155px;margin:17px -2px 17px;position:relative;overflow:hidden}.shop-ill{background:#ead8c7}.phone{position:absolute;width:90px;height:143px;background:var(--ink);border-radius:14px;left:50%;top:13px;transform:translateX(-50%) rotate(-7deg);padding:10px}.phone:before{content:'';position:absolute;width:22px;height:3px;border-radius:3px;background:#777;top:5px;left:34px}.phone div{height:62px;background:linear-gradient(145deg,#f1cb5a 0 45%,#e6a078 46%);border-radius:6px}.phone i,.phone b,.phone small{display:block;height:5px;background:#fff;border-radius:4px;margin:7px 3px}.phone b{width:47px}.phone small{width:30px;background:var(--orange)}.spark{position:absolute;font-size:43px;color:var(--orange);right:20%;top:19px}.video-ill{background:#e5ddd1}.play-button{position:absolute;left:45%;top:34px;width:63px;height:63px;display:grid;place-items:center;border-radius:50%;background:var(--orange);color:white;font-size:19px;box-shadow:0 10px 0 rgba(24,24,24,.11)}.caption-lines{position:absolute;bottom:22px;left:23px;display:grid;gap:5px}.caption-lines i{width:57px;height:4px;background:#71806a}.caption-lines i:nth-child(2){width:41px}.caption-lines i:nth-child(3){width:50px}.video-ill>b{position:absolute;right:18px;bottom:22px;font-size:10px;line-height:1.3;color:#445242}.live-ill{background:#352b24;color:white}.live-window{position:absolute;left:28px;right:28px;top:23px;height:105px;border:1px solid rgba(255,255,255,.28);padding:12px}.live-window span{font-size:8px;background:#e96a39;padding:3px 7px;font-weight:900}.live-window i{float:right;color:#e96a39;font-size:9px}.live-window b{display:block;font-size:11px;margin-top:19px;line-height:1.5}.live-wave{position:absolute;bottom:19px;right:27px;width:56px;height:21px;border-bottom:2px solid var(--pink);clip-path:polygon(0 50%,10% 40%,18% 70%,29% 0,40% 90%,51% 20%,64% 70%,76% 35%,88% 55%,100% 25%,100% 100%,0 100%);background:var(--pink)}.creator-ill{background:#eee2c4}.creator-bubble{position:absolute;padding:11px 13px;background:white;border-radius:20px;font-size:8px;font-weight:800;letter-spacing:.08em}.bubble-a{left:16px;top:28px;transform:rotate(-8deg)}.bubble-b{right:15px;bottom:23px;background:var(--orange);color:white;transform:rotate(7deg)}.creator-arrows{position:absolute;left:44%;top:45px;font-size:30px;color:var(--orange)}.creator-star{position:absolute;right:18%;top:14px;font-size:28px;color:#e96a39}.service-card h3{font-size:18px;letter-spacing:-.04em;margin:0 0 8px}.service-card p{font-size:10px;line-height:1.9;color:#5e5c58;margin:0 0 15px}.scope{margin-top:auto;border-top:1px solid rgba(24,24,24,.12);padding-top:12px;font-size:9px;font-weight:700}.scope:before{content:'↳';color:var(--orange);margin-right:7px}.service-ad{grid-column:span 6;min-height:155px;background:#352b24;color:white;display:grid;grid-template-columns:1fr auto;align-items:center}.service-ad .service-head{position:absolute;left:22px;top:20px;color:#ccc}.ad-content{display:flex;align-items:center;gap:35px;padding-left:18px}.ad-content h3{margin:0 0 6px}.ad-content p{max-width:600px;color:#ccc;margin:0}.service-ad .scope{border:0;padding:0;margin:0;color:#fff}.ad-bars{height:70px;width:105px;display:flex;align-items:end;gap:8px}.ad-bars i{width:14px;background:#e6a078;height:25%}.ad-bars i:nth-child(2){height:46%;background:#edb28f}.ad-bars i:nth-child(3){height:36%;background:var(--yellow)}.ad-bars i:nth-child(4){height:75%;background:var(--orange)}.ad-bars i:nth-child(5){height:100%;background:#e6a078}.scope-note{display:flex;align-items:center;gap:15px;margin-top:18px;padding:18px 22px;background:#e8dfd4}.scope-check{width:22px;height:22px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:12px;color:var(--orange)}.scope-note p{font-size:10px;margin:0;color:#5e5c58}.scope-note b{color:var(--ink)}
.process{background:var(--ink);color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:center}.process h2{margin-bottom:22px}.process-heading>p:last-child{font-size:11px;color:#aaa;max-width:320px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.steps article{border-top:1px solid #646464;padding-top:14px}.steps article>span{font-size:8px;letter-spacing:.15em;color:var(--yellow);font-weight:800}.step-mark{font-family:var(--serif);font-size:49px;color:var(--orange);margin:27px 0 12px;line-height:1}.steps h3{font-size:12px;margin-bottom:8px}.steps p{font-size:9px;color:#aaa;line-height:1.9}.price{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;align-items:center;background:#e8dfd4}.price-side h2{margin-bottom:15px}.price-side>p:not(.eyebrow){font-size:11px;color:#615d56;line-height:2;max-width:275px;margin-bottom:23px}.price-card{background:#fff;padding:29px 34px 20px;box-shadow:9px 10px 0 rgba(24,24,24,.08)}.price-card-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:800;letter-spacing:.13em}.price-tag{padding:6px 10px;background:#f4e2d3;letter-spacing:0}.price-amount{display:flex;align-items:baseline;gap:12px;padding:25px 0 14px;border-bottom:1px solid var(--line)}.price-amount small{font-size:10px}.price-amount strong{font-size:49px;line-height:1;letter-spacing:-.07em}.price-amount strong span{font-size:19px;letter-spacing:0}.price-plus{text-align:center;height:32px;color:var(--orange);font-size:22px;font-weight:800}.price-result{display:grid;grid-template-columns:.55fr 1.45fr;align-items:baseline;gap:6px}.price-result strong{font-size:12px}.price-result b{font-size:15px}.price-result small{grid-column:2;font-size:9px;color:var(--muted)}.price-foot{display:flex;gap:20px;margin-top:20px;padding-top:14px;border-top:1px solid var(--line);font-size:9px;color:#5e5c58}.price-foot span:before{content:'•';color:var(--orange);margin-right:6px}.price-caveat{grid-column:2;font-size:9px;color:#5e5c58;margin:-23px 0 0;line-height:1.8}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center}.about-art{height:385px;background:#e7d8c4;position:relative;display:grid;place-items:center;overflow:hidden}.about-art:before,.about-art:after{content:'';position:absolute;border:1px solid rgba(24,24,24,.22);border-radius:50%;width:330px;height:330px}.about-art:after{width:240px;height:240px;border-style:dashed}.portrait-placeholder{z-index:1;width:190px;height:230px;background:var(--orange);display:flex;align-items:center;justify-content:center;flex-direction:column;color:white;box-shadow:10px 10px 0 rgba(24,24,24,.13);transform:rotate(-5deg)}.portrait-placeholder span{font-size:65px;font-weight:900;letter-spacing:-.1em}.portrait-placeholder i{font-size:28px;font-style:normal;color:var(--yellow)}.portrait-placeholder b{font-size:8px;text-align:center;line-height:1.3;letter-spacing:.14em;margin-top:5px}.about-stamp{position:absolute;right:8%;bottom:10%;width:85px;height:85px;border-radius:50%;background:var(--yellow);display:grid;place-content:center;text-align:center;font-size:9px;font-weight:900;line-height:1.15;transform:rotate(13deg)}.about h2{font-size:clamp(31px,3.8vw,49px)}.about-copy>p:not(.eyebrow){font-size:12px;line-height:2.1;color:#595650}.about-small{font-size:9px!important;color:#777!important;border-left:2px solid var(--orange);padding-left:12px;margin:18px 0 23px}
.faq{background:#eee7dc;display:grid;grid-template-columns:.7fr 1.3fr;gap:9%}.faq-heading h2{margin-bottom:14px}.faq-heading>p:last-child{font-size:11px;color:var(--muted)}.faq-list details{border-bottom:1px solid #cecac2}.faq-list details:first-child{border-top:1px solid #cecac2}.faq-list summary{list-style:none;display:grid;grid-template-columns:30px 1fr 20px;gap:8px;align-items:center;padding:18px 0;font-size:11px;font-weight:700;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-family:var(--serif);color:var(--orange);font-size:15px}.faq-list summary b{font-size:16px;text-align:center}.faq-list details[open] summary b{transform:rotate(45deg)}.faq-list details p{padding:0 25px 18px 38px;font-size:10px;color:#5e5c58;margin:0;line-height:1.9}.final-cta{position:relative;background:var(--orange);color:var(--ink);text-align:center;padding:100px 24px 95px;overflow:hidden}.cta-inner{position:relative;z-index:2}.final-cta .eyebrow{color:var(--ink)}.final-cta h2{color:var(--ink);font-size:clamp(39px,5.5vw,72px);margin-bottom:15px}.final-cta .cta-inner>p:not(.eyebrow){color:var(--ink);font-size:12px;color:#ffece5;margin-bottom:27px}.button-light{background:white;color:var(--ink);min-width:245px}.button-light span{color:var(--orange)}.cta-inner small{display:block;font-size:9px;margin-top:14px;color:var(--ink)}.cta-shape{position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:50%}.shape-one{width:420px;height:420px;left:-130px;top:-150px}.shape-two{width:560px;height:560px;right:-175px;bottom:-300px}.site-footer{min-height:100px;padding:20px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white}.brand-footer .brand-mark{background:var(--yellow);color:var(--ink)}.site-footer>div{display:flex;gap:24px;font-size:9px;color:#ccc}.site-footer>p{font-size:9px;color:#aaa;margin:0}
@media(max-width:900px){.site-header{height:72px}.site-nav{gap:18px}.hero{padding-left:6vw;padding-right:6vw;grid-template-columns:1fr 1fr;min-height:610px}.hero h1{font-size:clamp(45px,7vw,66px)}.hero-art{transform:scale(.88);transform-origin:center}.section-wrap{padding:90px 6vw}.intro{grid-template-columns:.45fr 1.5fr .65fr;gap:4%}.service-card{padding:18px;min-height:365px}.process{grid-template-columns:1fr;gap:35px}.price{gap:5%}.price-amount strong{font-size:43px}.price-foot{gap:10px}.about{gap:7%}}
@media(max-width:680px){html{scroll-padding-top:72px}.site-header{height:68px;padding:0 20px}.brand-mark{width:36px;height:36px}.brand-name{font-size:9px}.menu-toggle{display:flex;width:42px;height:42px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:6px;padding:8px;cursor:pointer}.menu-toggle span{width:24px;height:2px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-nav{display:none;position:absolute;left:0;right:0;top:68px;background:var(--paper);padding:14px 22px 24px;border-bottom:1px solid var(--line);align-items:stretch;gap:0}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a:not(.nav-cta){padding:13px 0;border-bottom:1px solid var(--line)}.nav-cta{margin-top:14px;text-align:center}.hero{display:flex;flex-direction:column;align-items:stretch;padding:53px 24px 65px;min-height:0}.hero:before{width:360px;height:360px;right:-175px;top:280px}.hero .eyebrow{font-size:8px}.hero h1{font-size:clamp(42px,11vw,64px);line-height:1.3;margin-bottom:17px}.hero-lead{font-size:12px;line-height:1.9}.desktop-only{display:none}.hero-actions{gap:18px;flex-wrap:wrap;margin-top:21px}.button{min-height:51px;padding:0 16px;gap:23px;font-size:10px}.hero-actions .text-link{font-size:10px}.hero-note{margin-top:22px;font-size:9px}.hero-art{height:340px;margin-top:4px;transform:none}.orbit-one{width:300px;height:300px}.orbit-two{width:220px;height:220px}.hero-art:after{width:255px;height:255px}.art-core{width:125px;height:125px;font-size:8px}.core-play{font-size:18px}.art-card{width:112px;padding:8px}.product-shape,.video-screen,.live-screen{height:69px}.product-shape:before{width:38px;height:45px}.product-shape i{top:9px}.product-shape b{top:38px}.art-card>span{font-size:6px;margin-top:5px}.art-card strong{font-size:9px}.card-product{left:0;top:5%}.card-video{right:0;top:15%}.card-live{left:10%;bottom:2%}.art-sticker{width:60px;height:60px;font-size:8px;right:3%;bottom:3%}.hero-bottom{left:24px;right:24px;bottom:17px;font-size:8px}.section-wrap{padding:72px 23px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:20px}.intro-label{grid-column:1/-1;flex-direction:row;align-items:center;gap:12px}.intro-label span:first-child{font-size:19px}.intro-label span:last-child{font-size:8px}.intro-copy{grid-column:1/-1}.intro-copy h2,.section-top h2,.process h2,.price h2,.about h2,.faq h2{font-size:36px;line-height:1.38}.intro-copy .eyebrow{font-size:9px;margin-bottom:10px}.intro-copy>p:not(.eyebrow){font-size:11px}.pain-list{margin-top:18px}.pain-list span{font-size:10px;padding:9px 0}.intro-aside{grid-column:1/-1;margin:5px 0 0;border-left:0;border-top:1px solid var(--line);padding:17px 0 0;display:grid;grid-template-columns:1fr auto;align-items:center}.aside-number{font-size:18px}.aside-number b{font-size:27px}.intro-aside p{grid-column:1;margin:5px 0 0}.circle-link{grid-column:2;grid-row:1/3}.section-top{display:block;margin-bottom:28px}.section-top .eyebrow{font-size:9px;margin-bottom:12px}.section-top h2{margin-bottom:14px}.section-desc{font-size:10px}.service-grid{display:block}.service-card{min-height:0;margin-bottom:12px;padding:16px 17px}.service-illustration{height:125px;margin:13px -2px}.service-card h3{font-size:16px}.service-card p{font-size:10px}.scope{font-size:9px;padding-top:9px}.shop-ill .phone{transform:translateX(-50%) rotate(-7deg) scale(.85);transform-origin:top center}.spark{right:28%;font-size:36px}.video-ill>b{right:22%}.service-ad{display:block;padding-top:50px;min-height:0}.ad-content{padding:5px 0 13px;gap:19px}.ad-bars{width:74px;flex-shrink:0;gap:5px}.ad-bars i{width:11px}.ad-content h3{font-size:15px}.ad-content p{font-size:9px}.service-ad .scope{margin-left:0}.scope-note{align-items:flex-start;padding:14px;font-size:10px}.scope-note p{line-height:1.8}.process{padding-top:70px;padding-bottom:70px}.process h2{margin-bottom:12px}.process-heading>p:last-child{font-size:10px}.steps{grid-template-columns:1fr;gap:0}.steps article{display:grid;grid-template-columns:68px 1fr;column-gap:10px;padding:13px 0;border-top:1px solid #555}.steps article>span{grid-column:1/3}.step-mark{grid-row:2/4;font-size:39px;margin:11px 0 0}.steps h3{margin:14px 0 4px;font-size:11px}.steps p{margin:0;font-size:9px}.price{display:block}.price-side{margin-bottom:25px}.price-side>p:not(.eyebrow){font-size:10px}.price-card{padding:20px 17px 16px;box-shadow:5px 6px 0 rgba(24,24,24,.08)}.price-card-top{font-size:8px}.price-tag{font-size:8px}.price-amount{gap:7px;padding:19px 0 12px}.price-amount strong{font-size:41px}.price-amount strong span{font-size:16px}.price-amount small{font-size:8px}.price-result{grid-template-columns:.48fr 1.52fr}.price-result strong{font-size:10px}.price-result b{font-size:12px}.price-result small{font-size:8px}.price-foot{display:grid;gap:7px;font-size:8px}.price-caveat{margin:12px 0 0;font-size:8px}.about{display:flex;flex-direction:column;align-items:stretch;gap:34px}.about-art{height:270px}.about-art:before{width:260px;height:260px}.about-art:after{width:190px;height:190px}.portrait-placeholder{height:180px;width:148px}.portrait-placeholder span{font-size:51px}.about-stamp{width:70px;height:70px;font-size:8px;right:10%;bottom:8%}.about-copy>p:not(.eyebrow){font-size:11px}.about-small{font-size:8px!important}.faq{display:block}.faq-heading{margin-bottom:28px}.faq-heading>p:last-child{font-size:10px}.faq-list summary{font-size:10px;grid-template-columns:23px 1fr 18px}.faq-list details p{font-size:9px;padding-left:31px}.final-cta{padding:76px 23px 70px}.final-cta h2{color:var(--ink);font-size:42px;line-height:1.34}.final-cta .cta-inner>p:not(.eyebrow){color:var(--ink);font-size:10px;line-height:1.9}.shape-one{width:250px;height:250px;left:-130px;top:-95px}.shape-two{width:300px;height:300px;right:-150px;bottom:-210px}.site-footer{padding:20px 22px;display:grid;grid-template-columns:1fr 1fr;gap:17px}.site-footer>div{grid-column:1/-1;grid-row:2;gap:17px;font-size:8px}.site-footer>p{justify-self:end;font-size:8px}.brand-footer .brand-mark{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* 見出しの2行目が句読点だけで折り返されないよう、行組みを制御 */
.hero-second-line{display:inline-block;white-space:nowrap;font-size:.76em}
.hero-mobile-break{display:none}
.hero-third-line{white-space:nowrap}
@media(max-width:680px){.hero-second-line{white-space:normal;font-size:.9em}.hero-mobile-break{display:block}}

/* 進行セクションは見出しを全幅にし、指定した2行の途中で折り返さない */
.process{display:block}
.process-heading{max-width:900px;margin-bottom:42px}
.process-heading>p:last-child{max-width:480px}
@media(max-width:680px){.process-heading{margin-bottom:28px}.process h2{font-size:clamp(23px,7.2vw,36px)}}

/* 読みやすさと操作性を保ちながら、既存のエディトリアルな配色を活かす */
:root{--orange-text:#8f3d23}
.skip-link:focus{left:12px;top:12px;border:2px solid var(--ink);border-radius:2px;box-shadow:0 2px 12px rgba(24,24,24,.18)}
:focus-visible{outline:3px solid var(--orange-text);outline-offset:4px}
.site-nav>a,.button,.circle-link,.menu-toggle,.faq-list summary{min-height:44px}
.site-nav>a:not(.nav-cta){display:inline-flex;align-items:center}
.eyebrow,.intro-copy .eyebrow,.section-top .eyebrow,.process .eyebrow,.price .eyebrow,.about .eyebrow,.faq .eyebrow{color:var(--orange-text)}
.hero h1 em,.section-top h2 em,.about h2 em{color:var(--orange-text)}
.final-cta .eyebrow{color:var(--ink)}
.final-cta .cta-inner>p:not(.eyebrow),.final-cta .cta-inner small{color:var(--ink)}
.hero h1{line-height:1.18}
.hero .eyebrow{font-size:11px}
.art-card>span{font-size:9px;color:#5e5c58}
.section-desc,.intro-copy>p:not(.eyebrow),.about-copy>p:not(.eyebrow){color:#4c4944}
.service-card p{font-size:12px;line-height:1.85;color:#4c4944}
.scope{font-size:11px;line-height:1.65}
.service-head{font-size:10px}
.price-result small,.price-foot,.price-caveat{font-size:11px;line-height:1.75;color:#4c4944}
.about-small{font-size:11px!important;color:#4c4944!important}
.faq-list summary{font-size:13px;line-height:1.7}
.faq-list details p{font-size:12px;line-height:1.85;color:#4c4944}
.cta-inner small{font-size:11px}
.site-footer>div{font-size:11px}
.site-footer>p{font-size:10px}
.site-footer :focus-visible{outline-color:var(--yellow)}
@media(max-width:900px){.site-nav>a:not(.nav-cta){padding:0 2px}}
@media(max-width:680px){
  .hero .eyebrow{font-size:10px;letter-spacing:.12em}
  .hero h1{font-size:clamp(32px,10.5vw,56px);line-height:1.24}
  .button{min-height:52px;font-size:12px}
  .hero-actions .text-link{font-size:12px}
  .art-card>span{font-size:8px}
  .art-card strong{font-size:10px}
  .section-wrap{padding-top:68px;padding-bottom:68px}
  .intro-copy>p:not(.eyebrow),.about-copy>p:not(.eyebrow){font-size:13px;line-height:1.95}
  .intro-label span:last-child{font-size:9px}
  .pain-list span{font-size:12px;padding:11px 0}
  .section-top .eyebrow{font-size:10px}
  .section-desc{font-size:12px;line-height:1.85}
  .service-card{padding:18px;margin-bottom:14px}
  .service-card p{font-size:13px;line-height:1.8}
  .scope{font-size:11px;line-height:1.7;padding-top:11px}
  .service-ad .service-head{font-size:10px}
  .ad-content p{font-size:11px;line-height:1.7}
  .scope-note{font-size:12px;line-height:1.8}
  .process-heading>p:last-child,.steps p{font-size:12px;line-height:1.8}
  .steps h3{font-size:13px}
  .price-side>p:not(.eyebrow){font-size:12px;line-height:1.8}
  .price-card-top,.price-tag{font-size:10px}
  .price-amount small{font-size:10px}
  .price-result strong{font-size:12px}
  .price-result b{font-size:14px;line-height:1.55}
  .price-result small{font-size:10px;line-height:1.7}
  .price-foot{font-size:10px;line-height:1.7}
  .price-caveat{font-size:11px;line-height:1.8}
  .about-small{font-size:11px!important;line-height:1.8}
  .faq-heading>p:last-child{font-size:12px}
  .faq-list summary{font-size:12px;padding:16px 0}
  .faq-list details p{font-size:11px;line-height:1.8}
  .final-cta .cta-inner>p:not(.eyebrow){color:var(--ink);font-size:12px;line-height:1.8}
  .site-footer>div{font-size:10px}
}
@media(forced-colors:active){:focus-visible{outline:2px solid Highlight}}

/* 支援領域カードの図版・キャプション */
.hero-feature-card{min-width:0;background:var(--paper);box-shadow:6px 7px 0 rgba(24,24,24,.12);}
.feature-visual{height:105px;display:grid;place-items:center;overflow:hidden;background:#f4eee4}
.feature-visual svg{display:block;width:100%;height:100%}
.feature-video .feature-visual{background:#e1e8df}
.feature-live .feature-visual{background:#352b24}
.feature-creator .feature-visual{background:#eee2c4}
.feature-data .feature-visual{background:#e1e8df}
.feature-label{display:block;margin-top:10px;font-size:8px;line-height:1.2;letter-spacing:.12em;font-weight:800;color:#6d6a65}
.hero-feature-card h2{font-size:12px;line-height:1.5;letter-spacing:-.025em;margin:4px 0 2px}
.hero-feature-card p{margin:0;font-size:9px;line-height:1.5;color:#595650}
@media(max-width:680px){
  .feature-label{font-size:8px;margin-top:9px}
  .hero-feature-card h2{font-size:12px}
  .hero-feature-card p{font-size:10px}
}

/* 中心のブランド円を囲む5枚のカード。狭い幅では中央円の下に整列 */
.hero-feature-stage{position:relative;z-index:2;min-width:0;width:100%;height:540px;}
.hero-feature-cards{position:absolute;inset:0;z-index:3;transform-origin:50% 50%}
.feature-orbit{position:absolute;left:50%;top:50%;width:360px;height:360px;transform:translate(-50%,-50%);display:grid;place-items:center;}
.feature-orbit-ring,.feature-orbit-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;}
.feature-orbit-outer{width:100%;height:100%;border:1px solid rgba(24,24,24,.24)}
.feature-orbit-inner{width:78%;height:78%;border:1px dashed rgba(24,24,24,.2)}
.feature-orbit-glow{width:72%;height:72%;background:var(--yellow);opacity:.84}
.hero-feature-core{position:relative;z-index:1;width:154px;height:154px;border-radius:50%;background:var(--ink);color:white;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;line-height:1.65;letter-spacing:.16em;font-size:10px;box-shadow:0 9px 24px rgba(24,24,24,.13)}
.hero-feature-core .core-play{position:relative;display:grid;place-items:center;width:44px;height:44px;margin:0 0 8px 2px;border-radius:50%;background:var(--orange);color:var(--paper);font-size:14px;line-height:1;box-shadow:0 4px 0 #ad4d2c;transform:translateY(0) scale(1)}
.hero-feature-core .core-play:before,.hero-feature-core .core-play:after{content:"";position:absolute;inset:-5px;border:2px solid rgba(255,250,242,.88);border-radius:50%;opacity:0;pointer-events:none}
.hero-feature-core .core-play:after{inset:-9px;border-color:rgba(233,106,57,.7)}
.hero-feature-core b{font-weight:800}
.hero-feature-card{position:absolute;z-index:3;width:clamp(124px,11vw,150px);padding:9px 9px 11px;}
.hero-feature-card:nth-of-type(1){left:50%;top:68%;grid-column:auto;transform:translateX(-50%) rotate(-5deg)}
.hero-feature-card:nth-of-type(2){right:0;top:0;grid-column:auto;transform:rotate(5deg)}
.hero-feature-card:nth-of-type(3){right:0;bottom:0;grid-column:auto;transform:rotate(4deg)}
.hero-feature-card:nth-of-type(4){left:0;bottom:0;grid-column:auto;transform:rotate(-4deg)}
.hero-feature-card:nth-of-type(5){left:0;top:0;grid-column:auto;transform:rotate(1deg)}
@media(max-width:1100px){
  .hero-feature-stage{height:530px}
  .feature-orbit{width:min(330px,80%);height:auto;aspect-ratio:1}
  .hero-feature-core{width:140px;height:140px}
  .hero-feature-card{width:clamp(112px,12vw,126px);padding:8px 8px 9px}
  .hero-feature-card h2{font-size:10px;line-height:1.4}
  .hero-feature-card p{font-size:8px}
  .feature-label{font-size:7px}
  .hero-lead{font-size:13px;line-height:1.9}
}
@media(max-width:680px){
  .hero-feature-stage{height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:8px auto 0;width:100%;max-width:440px;}
  .hero-feature-cards{position:static;display:contents;transform:none!important;animation:none!important}
  .feature-orbit{position:relative;left:auto;top:auto;transform:none;width:155px;height:155px;grid-column:1/-1;margin:0 auto 2px;}
  .hero-feature-core{width:105px;height:105px;font-size:8px}
  .hero-feature-core .core-play{width:34px;height:34px;margin-bottom:4px;font-size:12px;box-shadow:0 3px 0 #ad4d2c}
  .hero-feature-card{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%;grid-column:span 1;padding:9px 9px 11px;}
  .hero-feature-card:nth-of-type(5){grid-column:1/-1;width:calc(50% - 6px);justify-self:center;transform:rotate(1deg)}
  .hero-feature-card:nth-of-type(1){transform:rotate(-1.5deg)}
  .hero-feature-card:nth-of-type(2){transform:rotate(1.5deg)}
  .hero-feature-card:nth-of-type(3){transform:rotate(-1deg)}
  .hero-feature-card:nth-of-type(4){transform:rotate(1deg)}
  .feature-visual{height:70px}
}

/* お問い合わせ導線は淡いクリームを基調にして、圧迫感を抑える */
.final-cta{background:#f4eee4;color:var(--ink)}
.final-cta .eyebrow{color:#8f3d23}
.final-cta h2{color:var(--ink)}
.final-cta .cta-inner>p:not(.eyebrow),.final-cta .cta-inner small{color:#4c4944}
.cta-shape{border-color:rgba(53,43,36,.16)}
.button-light{background:#fffaf2;color:var(--ink);box-shadow:0 2px 0 rgba(53,43,36,.12)}
.button-light span{color:#8f3d23}

/* WHYセクションの「一緒に動かす」を左カラムへ移動 */
.intro{grid-template-columns:.7fr 1.5fr;gap:6%}
.intro-label{grid-column:1;grid-row:1}
.intro-copy{grid-column:2;grid-row:1/3}
.intro-aside{grid-column:1;grid-row:2;margin-top:28px;border-left:0;border-top:1px solid var(--line);padding:18px 0 0}

/* 見出し以外の文字を、本文・注記・ラベルの役割に合わせて読みやすくする */
.site-nav{font-size:14px}
.nav-cta,.text-link{font-size:14px}
.hero .eyebrow{font-size:12px}
.hero-lead{font-size:16px;line-height:1.9}
.hero-note{font-size:12px}
.hero-feature-card .feature-label{font-size:10px}
.hero-feature-card h2{font-size:14px}
.hero-feature-card p{font-size:11px;line-height:1.6}
.intro-copy>p:not(.eyebrow){font-size:15px;line-height:2}
.pain-list span{font-size:14px}
.intro-aside p{font-size:13px;line-height:1.8}
.section-desc,.price-side>p:not(.eyebrow),.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.9}
.service-head{font-size:12px}
.feature-label{font-size:10px}
.hero-feature-card p,.service-card p{font-size:14px;line-height:1.8}
.scope{font-size:12px;line-height:1.7}
.steps article>span{font-size:10px}
.steps p{font-size:12px;line-height:1.8}
.price-card-top,.price-tag{font-size:11px}
.price-amount small{font-size:12px}
.price-result strong{font-size:14px}
.price-result b{font-size:16px}
.price-result small,.price-foot{font-size:12px;line-height:1.75}
.price-caveat{font-size:13px;line-height:1.8}
.about-small{font-size:12px!important;line-height:1.8}
.faq-heading>p:last-child{font-size:13px}
.faq-list summary{font-size:15px}
.faq-list details p{font-size:14px;line-height:1.8}
.final-cta .eyebrow{font-size:12px}
.final-cta .cta-inner>p:not(.eyebrow){font-size:15px;line-height:1.9}
.cta-inner small{font-size:12px}
.site-footer>div,.site-footer>p{font-size:12px}
@media(max-width:1100px){
  .hero-feature-card h2{font-size:13px}
  .hero-feature-card p{font-size:11px}
  .hero-feature-card .feature-label{font-size:9px}
}
@media(max-width:680px){
  .site-nav{font-size:15px}
  .nav-cta,.text-link{font-size:14px}
  .hero .eyebrow{font-size:11px}
  .hero-lead{font-size:14px;line-height:1.85}
  .hero-note{font-size:11px}
  .hero-feature-card .feature-label{font-size:9px}
  .hero-feature-card h2{font-size:14px}
  .hero-feature-card p{font-size:12px;line-height:1.65}
  .intro-copy>p:not(.eyebrow),.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.9}
  .pain-list span{font-size:13px}
  .intro-aside p{font-size:13px}
  .section-desc,.price-side>p:not(.eyebrow){font-size:13px}
  .service-head{font-size:11px}
  .service-card p{font-size:14px;line-height:1.8}
  .scope{font-size:12px}
  .ad-content p,.process-heading>p:last-child,.steps p{font-size:13px;line-height:1.8}
  .steps article>span{font-size:10px}
  .steps h3{font-size:14px}
  .price-card-top,.price-tag{font-size:11px}
  .price-amount small{font-size:11px}
  .price-result strong{font-size:13px}
  .price-result b{font-size:15px}
  .price-result small,.price-foot{font-size:11px}
  .price-caveat{font-size:12px}
  .about-small{font-size:12px!important}
  .faq-heading>p:last-child{font-size:13px}
  .faq-list summary{font-size:14px}
  .faq-list details p{font-size:13px;line-height:1.8}
  .final-cta .eyebrow{font-size:11px}
  .final-cta .cta-inner>p:not(.eyebrow){font-size:14px;line-height:1.85}
  .cta-inner small{font-size:11px}
  .site-footer>div,.site-footer>p{font-size:11px}
}

/* 支援内容をヒーローと同じ5領域にそろえ、最後の2枚を中央に配置 */
.service-card:nth-child(4){grid-column:2/span 2}
.service-card:nth-child(5){grid-column:4/span 2}
.data-ill{background:#e1e8df}
.data-bars{position:absolute;left:19%;bottom:23px;height:74px;display:flex;align-items:end;gap:12px}
.data-bars i{display:block;width:25px;background:#8d9b86}
.data-bars i:nth-child(1){height:34%}
.data-bars i:nth-child(2){height:55%}
.data-bars i:nth-child(3){height:45%}
.data-bars i:nth-child(4){height:82%;background:var(--orange)}
.data-arrow{position:absolute;right:19%;top:22px;color:#8f3d23;font-size:42px;font-weight:700}
@media(max-width:680px){
  .service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}
}

/* 支援内容カードの図版を、各業務がひと目で伝わる形に調整 */
.bag-product{position:absolute;left:50%;top:43px;width:106px;height:91px;transform:translateX(-50%) rotate(-5deg);border-radius:13px 13px 19px 19px;background:var(--orange);box-shadow:inset -10px 0 rgba(53,43,36,.12)}
.bag-product:before{content:'';position:absolute;left:31px;top:-25px;width:40px;height:28px;border:7px solid var(--ink);border-bottom:0;border-radius:22px 22px 0 0}
.bag-product:after{content:'';position:absolute;left:0;right:0;top:12px;height:5px;background:rgba(255,250,242,.42)}
.bag-product i{position:absolute;left:44px;top:42px;width:18px;height:12px;border-radius:2px;background:var(--yellow)}
.bag-product b{position:absolute;left:17px;right:17px;bottom:12px;height:2px;background:rgba(53,43,36,.18)}
.video-phone{position:absolute;left:50%;top:14px;width:76px;height:127px;transform:translateX(-50%) rotate(-4deg);border:7px solid var(--ink);border-radius:15px;background:var(--paper);box-shadow:5px 6px 0 rgba(53,43,36,.12)}
.video-phone:before{content:'';position:absolute;inset:8px 3px 12px;border-radius:5px;background:linear-gradient(155deg,#ced9d8 0 42%,#e1e8df 43% 65%,#e6a078 66%)}
.video-phone:after{content:'▶';position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);color:var(--ink);font-size:19px;text-shadow:0 0 0 5px var(--paper)}
.video-phone i{position:absolute;z-index:1;left:50%;bottom:3px;width:17px;height:2px;transform:translateX(-50%);border-radius:2px;background:var(--paper)}
.live-window{display:grid;place-items:center}
.live-window .recording-dot{position:absolute;z-index:2;left:13px;top:13px;width:12px;height:12px;padding:0;border:2px solid var(--paper);border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(233,106,57,.2)}
.live-scene{position:relative;width:92px;height:50px;border:1px solid rgba(255,250,242,.52);background:linear-gradient(180deg,#443a32 0 68%,#8d9b86 69%)}
.live-scene i{position:absolute;left:37px;top:13px;width:18px;height:18px;border-radius:50%;background:var(--yellow)}
.live-scene b{position:absolute;left:23px;bottom:0;width:46px;height:17px;border-radius:22px 22px 0 0;background:var(--orange)}
.creator-person{position:absolute;left:22%;bottom:20px;width:78px;height:112px}
.creator-person:before{content:'';position:absolute;z-index:1;left:25px;top:4px;width:31px;height:31px;border-radius:50%;background:var(--ink)}
.creator-person:after{content:'';position:absolute;left:9px;top:39px;width:63px;height:70px;border-radius:34px 34px 6px 6px;background:var(--orange)}
.creator-person i{position:absolute;z-index:2;left:32px;top:19px;width:4px;height:4px;border-radius:50%;background:var(--paper);box-shadow:12px 0 var(--paper)}
.creator-product{position:absolute;right:15%;bottom:29px;width:70px;height:63px;transform:rotate(7deg);border-radius:4px 4px 9px 9px;background:var(--yellow);box-shadow:inset -7px 0 rgba(53,43,36,.1)}
.creator-product:before{content:'';position:absolute;left:0;right:0;top:0;height:13px;background:#e6a078;clip-path:polygon(0 0,100% 0,86% 100%,14% 100%)}
.creator-product i{position:absolute;left:31px;top:0;bottom:0;width:8px;background:var(--paper)}
.creator-product b{position:absolute;left:0;right:0;top:28px;height:7px;background:var(--paper)}
.creator-arrows{left:47%;top:52px;font-size:23px}
/* 暗色の進め方セクションでも見出しとラベルのコントラストを確保 */
.process h2{color:var(--paper)}
.process .eyebrow{color:var(--yellow)}
@media(max-width:680px){
  .bag-product{transform:translateX(-50%) rotate(-5deg) scale(.86);transform-origin:top center}
  .video-phone{transform:translateX(-50%) rotate(-4deg) scale(.82);transform-origin:top center}
  .creator-person{left:20%;transform:scale(.82);transform-origin:bottom left}
  .creator-product{right:17%;transform:rotate(7deg) scale(.86);transform-origin:bottom right}
}

/* 料金詳細ページ */
.price-detail{max-width:1120px;margin:0 auto;padding:0 40px 100px}
.price-detail-head{padding:92px 0 62px;border-bottom:1px solid var(--line)}
.price-detail-head .eyebrow{color:var(--orange-text)}
.price-detail-head h1{font-size:clamp(38px,6vw,68px);line-height:1.25;letter-spacing:-.045em;margin:0 0 20px}
.price-detail-head>p:last-child{font-size:17px;max-width:700px;margin:0}
.price-detail-body{padding:58px 0;border-bottom:1px solid var(--line)}
.price-detail-body h2,.price-detail-cta h2{font-size:clamp(25px,3vw,38px);line-height:1.4;margin:0 0 24px}
.price-terms{margin:0;border-top:1px solid var(--line)}
.price-terms>div{display:grid;grid-template-columns:minmax(180px,.5fr) 1.5fr;gap:24px;padding:22px 12px;border-bottom:1px solid var(--line)}
.price-terms dt{font-weight:800}.price-terms dd{margin:0;font-weight:700}.price-terms small{display:block;font-size:14px;font-weight:500;margin-top:8px;color:var(--muted)}
.price-detail-note{margin:20px 0 0;color:var(--muted);font-size:15px;line-height:1.9}
.price-extra-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;padding:0;margin:24px 0 0;list-style:none;border-top:1px solid var(--line)}
.price-extra-list li{padding:17px 8px;border-bottom:1px solid var(--line);font-weight:700}
.price-extra-list li:before{content:'↗';color:var(--orange);margin-right:10px}
.price-detail-cta{padding:62px 0 0}.price-detail-cta p{font-size:16px;max-width:680px;margin-bottom:24px}
@media(max-width:680px){.price-detail{padding:0 23px 72px}.price-detail-head{padding:64px 0 38px}.price-detail-head>p:last-child{font-size:14px}.price-detail-body{padding:38px 0}.price-terms>div{grid-template-columns:1fr;gap:5px;padding:16px 8px}.price-terms dd{font-size:15px}.price-terms small{font-size:12px}.price-detail-note{font-size:13px}.price-extra-list{grid-template-columns:1fr}.price-detail-cta{padding-top:42px}.price-detail-cta p{font-size:14px}}

/* 本文・補足の文字をサイト全体で読みやすいサイズにそろえる */
.intro-label{font-size:11px}
.intro-copy>p:not(.eyebrow){font-size:16px;line-height:1.95}
.pain-list span{font-size:13px}
.intro-aside p{font-size:14px;line-height:1.8}
.section-desc,.price-side>p:not(.eyebrow),.about-copy>p:not(.eyebrow){font-size:15px;line-height:1.9}
.service-card p,.hero-feature-card p{font-size:15px;line-height:1.85}
.scope{font-size:13px;line-height:1.75}
.scope-note{font-size:14px;line-height:1.85}
.process-heading>p:last-child,.steps p{font-size:14px;line-height:1.85}
.steps article>span{font-size:11px}
.price-card-top,.price-tag{font-size:12px}
.price-amount small{font-size:13px}
.price-result strong{font-size:15px}
.price-result b{font-size:17px}
.price-result small,.price-foot{font-size:13px;line-height:1.8}
.price-caveat{font-size:14px;line-height:1.85}
.faq-heading>p:last-child{font-size:14px}
.faq-list summary{font-size:15px}
.faq-list details p{font-size:14px;line-height:1.85}
.final-cta .cta-inner>p:not(.eyebrow){font-size:16px;line-height:1.9}
.final-cta .cta-inner small{font-size:13px}
.art-card>span{font-size:10px}
.art-card strong{font-size:12px}
@media(max-width:680px){
  .intro-label{font-size:10px}
  .intro-copy>p:not(.eyebrow){font-size:15px;line-height:1.9}
  .pain-list span{font-size:13px}
  .intro-aside p{font-size:14px}
  .section-desc,.price-side>p:not(.eyebrow),.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.85}
  .service-card p,.hero-feature-card p{font-size:14px;line-height:1.8}
  .scope,.scope-note{font-size:13px;line-height:1.8}
  .process-heading>p:last-child,.steps p{font-size:14px;line-height:1.8}
  .steps article>span{font-size:11px}
  .price-card-top,.price-tag{font-size:12px}
  .price-amount small{font-size:12px}
  .price-result strong{font-size:13px}
  .price-result b{font-size:15px}
  .price-result small,.price-foot{font-size:12px;line-height:1.8}
  .price-caveat{font-size:13px;line-height:1.8}
  .faq-heading>p:last-child{font-size:14px}
  .faq-list summary{font-size:14px}
  .faq-list details p{font-size:14px;line-height:1.8}
  .final-cta .cta-inner>p:not(.eyebrow){font-size:15px;line-height:1.85}
  .final-cta .cta-inner small{font-size:13px}
  .art-card>span{font-size:9px}
  .art-card strong{font-size:11px}
}
@media(min-width:681px){.intro-label span:last-child{font-size:11px}}
.scope-note p{font-size:14px;line-height:1.85}
.about-small{font-size:13px!important;line-height:1.8}
@media(max-width:680px){.intro-label span:last-child{font-size:10px}.scope-note p{font-size:13px;line-height:1.8}.about-small{font-size:12px!important}}

/* 支援内容詳細ページ */
.support-detail{max-width:1240px;margin:0 auto;padding:0 40px 100px}
.support-detail-hero{width:calc(100% + 80px);margin-left:-40px;padding:92px max(5vw,40px) 65px;max-width:none;background:var(--pink)}
.support-detail-hero .eyebrow,.support-detail-copy .eyebrow,.support-detail-note .eyebrow{color:var(--orange-text)}
.support-detail-hero h1{font-size:clamp(42px,6.2vw,76px);line-height:1.25;letter-spacing:-.055em;margin:0 0 24px}
.support-detail-hero h1 em{font-family:var(--serif);font-weight:500;color:var(--orange-text)}
.support-detail-hero>p:not(.eyebrow){max-width:740px;font-size:17px;line-height:1.95;margin-bottom:28px;color:#4c4944}
.support-jump{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:26px}
.support-jump a{display:flex;align-items:center;gap:12px;padding:18px 12px;font-size:12px;font-weight:800;border-right:1px solid var(--line);min-height:58px}
.support-jump a:first-child{border-left:1px solid var(--line)}
.support-jump a>span{font-size:14px}.support-jump a:hover{background:#f2e6d8}
.support-detail-item{display:grid;grid-template-columns:.42fr 1.58fr;gap:6%;padding:66px 2%;border-bottom:1px solid var(--line);scroll-margin-top:92px}
.support-detail-index{display:flex;flex-direction:column;gap:30px;color:var(--orange-text);font-size:11px;font-weight:800;letter-spacing:.13em}
.support-detail-index b{font-family:var(--serif);font-size:46px;line-height:1;color:var(--ink);letter-spacing:-.04em}
.support-detail-copy .eyebrow{font-size:11px;margin-bottom:12px;letter-spacing:.15em}
.support-detail-copy h2{font-size:clamp(29px,4vw,46px);line-height:1.35;margin:0 0 15px;letter-spacing:-.045em}
.support-detail-lead{font-size:17px;line-height:1.8;color:#4c4944;margin-bottom:27px}
.support-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.support-detail-columns>div{padding:20px 22px;background:var(--paper);border:1px solid var(--line)}
.support-detail-columns .client-side{background:#f2e6d8;border-color:#e4d2bf}
.support-detail-columns h3{font-size:14px;margin:0 0 12px}
.support-detail-columns ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}
.support-detail-columns li{position:relative;padding-left:17px;font-size:15px;line-height:1.7}
.support-detail-columns li:before{content:'↗';position:absolute;left:0;color:var(--orange);font-weight:800}
.client-side li:before{content:'・';color:var(--ink)}
.support-detail-note{margin-top:70px;padding:52px clamp(24px,5vw,72px);background:#f2e6d8}
.support-detail-note h2{font-size:clamp(30px,4vw,48px);line-height:1.4;margin:0 0 18px}
.support-detail-note>p:not(.eyebrow){font-size:16px;line-height:1.9;max-width:780px;color:#4c4944}
.support-detail-links{display:flex;align-items:center;gap:26px;margin-top:25px}
.support-detail-links .text-link{font-size:14px}
@media(max-width:760px){
 .support-detail{padding:0 23px 72px}.support-detail-hero{width:calc(100% + 46px);margin-left:-23px;padding:65px 23px 42px}.support-detail-hero h1{font-size:clamp(36px,10vw,56px)}.support-detail-hero>p:not(.eyebrow){font-size:15px;line-height:1.9}
 .support-jump{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:8px}.support-jump a{padding:12px 10px;min-height:50px;border-bottom:1px solid var(--line)}.support-jump a:nth-child(odd){border-left:1px solid var(--line)}.support-jump a>span{font-size:13px}
 .support-detail-item{grid-template-columns:1fr;gap:20px;padding:40px 0;scroll-margin-top:76px}.support-detail-index{flex-direction:row;justify-content:space-between;align-items:center;gap:15px}.support-detail-index b{font-size:30px}.support-detail-copy .eyebrow{font-size:10px}.support-detail-copy h2{font-size:32px}.support-detail-lead{font-size:15px;margin-bottom:20px}.support-detail-columns{grid-template-columns:1fr;gap:9px}.support-detail-columns>div{padding:16px 17px}.support-detail-columns h3{font-size:13px}.support-detail-columns li{font-size:14px}.support-detail-note{margin-top:48px;padding:32px 22px}.support-detail-note h2{font-size:31px}.support-detail-note>p:not(.eyebrow){font-size:14px}.support-detail-links{align-items:flex-start;flex-direction:column;gap:18px}
}
.support-more{display:flex;justify-content:flex-start;margin-top:24px}
.support-more .text-link{font-size:14px}
@media(max-width:680px){.support-more{justify-content:flex-start;margin-top:19px}.support-more .text-link{font-size:14px}}

/* 運営チームページ */
.operator-detail{max-width:1240px;margin:0 auto;padding:0 40px 100px}
.operator-hero{width:calc(100% + 80px);margin-left:-40px;padding:92px max(5vw,40px) 72px;background:var(--pink)}
.operator-hero .eyebrow,.operator-section-label .eyebrow,.operator-contact .eyebrow{color:var(--orange-text)}
.operator-hero h1{font-size:clamp(42px,6.2vw,76px);line-height:1.2;letter-spacing:-.055em;margin:0 0 22px}
.operator-hero>p:last-child{max-width:760px;font-size:17px;line-height:1.95;color:#4c4944;margin-bottom:0}
.operator-overview,.operator-people,.operator-services{display:grid;grid-template-columns:.55fr 1.45fr;gap:6%;padding:62px 2%;border-bottom:1px solid var(--line)}
.operator-section-label h2{font-size:clamp(27px,3vw,38px);line-height:1.35;margin:0}
.operator-section-label .eyebrow{font-size:10px;margin-bottom:10px}
.operator-facts{margin:0;border-top:1px solid var(--line)}
.operator-facts>div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:19px 8px;border-bottom:1px solid var(--line)}
.operator-facts dt{font-weight:800}.operator-facts dd{margin:0;font-weight:600}
.operator-note{grid-column:2;margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.8}
.operator-person-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.operator-person{padding:26px;background:var(--paper);border:1px solid var(--line)}
.operator-person-card{display:block;padding:0;background:var(--paper);border:1px solid var(--line);color:inherit;transition:box-shadow .2s ease,transform .2s ease;scroll-margin-top:100px}
.operator-person-trigger{width:100%;text-align:left;font:inherit;cursor:pointer}
.operator-person-card:hover{box-shadow:0 8px 24px rgba(53,43,36,.1);transform:translateY(-2px)}
.operator-person-card:focus-visible{outline:3px solid var(--orange-text);outline-offset:3px}
.operator-person-card>img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top;border-bottom:1px solid var(--line)}
.operator-person-static{padding:0;overflow:hidden}
.operator-person-card-copy{display:block;padding:19px 20px 17px}
.operator-person-card .operator-person-role{display:block;margin:0 0 5px}
.operator-person-name{display:block;font-size:27px;line-height:1.3;font-weight:800;margin:0}
.operator-person-prompt{display:flex;justify-content:space-between;align-items:center;margin-top:19px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;font-weight:800}
.operator-person-prompt b{font-size:18px;color:var(--orange-text);font-weight:500}
.operator-profile-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(1180px,calc(100vw - 64px));max-width:none;max-height:calc(100dvh - 48px);margin:0;padding:0;border:0;background:var(--paper);color:var(--ink);box-shadow:0 24px 90px rgba(24,20,17,.2);overflow:auto}
.operator-profile-dialog::backdrop{background:rgba(245,241,235,.72);backdrop-filter:blur(10px)}
.operator-profile-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);min-height:620px}
.operator-profile-main{padding:clamp(32px,4.5vw,64px);align-self:center}
.operator-profile-main>.eyebrow{color:var(--orange-text);font-size:10px;margin-bottom:20px}
.operator-profile-main h2{font-size:clamp(36px,5vw,58px);line-height:1.2;margin:0 0 18px;letter-spacing:-.04em}
.operator-profile-close{position:absolute;z-index:2;right:16px;top:14px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:rgba(255,250,242,.94);color:var(--ink);font-size:28px;line-height:1;cursor:pointer}
.operator-profile-close:hover{background:var(--ink);color:white}
.operator-profile-photo{min-height:620px;background:#e9e4dc;display:flex;align-items:center;justify-content:center;overflow:hidden}
.operator-profile-photo img{display:block;width:100%;height:100%;max-height:calc(100dvh - 48px);object-fit:cover;object-position:center top}
.operator-profile-intro{font-size:15px;line-height:1.9;color:#4c4944;margin:0 0 23px}
.operator-profile-intro p{margin:0 0 12px}.operator-profile-intro p:last-child{margin-bottom:0}
.operator-profile-results{display:grid;gap:14px}
.operator-profile-results article{padding:16px 18px;border:1px solid var(--line);background:#fffdf8}
.operator-profile-result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.operator-profile-results h3{font-size:15px;margin:0}
.operator-profile-result-heading>a{font-size:12px;font-weight:700;color:var(--orange-text);white-space:nowrap}
.operator-profile-results dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 0}
.operator-profile-results dl>div{padding-top:8px;border-top:1px solid var(--line)}
.operator-profile-results dt{font-size:10px;color:var(--muted)}
.operator-profile-results dd{font-size:13px;font-weight:800;line-height:1.45;margin:3px 0 0;font-variant-numeric:tabular-nums}
.operator-profile-note{font-size:11px;line-height:1.7;color:var(--muted);margin:14px 0 0}
.operator-person-role{font-size:12px;color:var(--orange-text);font-weight:800;letter-spacing:.08em;margin-bottom:8px}
.operator-person h3{font-size:30px;line-height:1.3;margin:0 0 12px}
.operator-person>p:last-child{font-size:15px;line-height:1.85;color:#4c4944;margin:0}
.operator-services>p{font-size:16px;line-height:1.95;margin:0;color:#4c4944}
.operator-links{grid-column:2;display:flex;align-items:center;gap:26px;margin-top:0}
.operator-links .text-link{font-size:14px}
.operator-contact{margin-top:68px;padding:52px clamp(24px,5vw,72px);background:#f2e6d8}
.operator-contact h2{font-size:clamp(30px,4vw,48px);line-height:1.4;margin:0 0 17px}
.operator-contact>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#4c4944;margin-bottom:24px}
@media(max-width:760px){
 .operator-detail{padding:0 23px 72px}.operator-hero{width:calc(100% + 46px);margin-left:-23px;padding:65px 23px 42px}.operator-hero h1{font-size:clamp(36px,10vw,56px)}.operator-hero>p:last-child{font-size:15px;line-height:1.9}
 .operator-overview,.operator-people,.operator-services{grid-template-columns:1fr;gap:23px;padding:40px 0}.operator-facts>div{grid-template-columns:115px 1fr;gap:12px;padding:15px 7px}.operator-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-person{padding:21px}.operator-person h3,.operator-person-name{font-size:26px}.operator-person-description,.operator-services>p{font-size:14px;line-height:1.85}.operator-links{grid-column:1;align-items:flex-start;flex-direction:column;gap:18px}.operator-contact{margin-top:46px;padding:32px 22px}.operator-contact h2{font-size:31px}.operator-contact>p:not(.eyebrow){font-size:14px;line-height:1.85}.operator-person-card-copy{padding:15px}.operator-person-name{font-size:23px}.operator-person-prompt{font-size:11px}.operator-profile-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.operator-profile-layout{grid-template-columns:1fr;min-height:0}.operator-profile-main{padding:30px 22px 24px}.operator-profile-main>.eyebrow{padding-right:40px;font-size:9px}.operator-profile-main h2{font-size:38px}.operator-profile-intro{font-size:14px;line-height:1.8}.operator-profile-results{gap:10px}.operator-profile-results article{padding:14px}.operator-profile-results dl{gap:6px}.operator-profile-results dt{font-size:9px}.operator-profile-results dd{font-size:12px}.operator-profile-note{font-size:10px}.operator-profile-photo{min-height:0}.operator-profile-photo img{width:100%;height:auto;max-height:54vh;object-fit:contain}
}
@media(max-width:560px){.operator-person-grid{grid-template-columns:1fr}.operator-profile-results article{padding:12px}.operator-profile-result-heading{align-items:flex-start;flex-direction:column;gap:4px}.operator-profile-results h3{font-size:14px}.operator-profile-result-heading>a{font-size:11px}.operator-profile-results dl{grid-template-columns:1fr;gap:0;margin-top:9px}.operator-profile-results dl>div{display:flex;justify-content:space-between;gap:10px;padding:5px 0}.operator-profile-results dd{margin:0}}

/* お問い合わせページ：相談内容を選びやすく、フォームを読み進めやすく整理 */
.contact-page{background:var(--paper)}
.contact-page-hero{max-width:1600px;margin:auto;min-height:360px;padding:76px max(8vw,36px);display:flex;align-items:center;justify-content:space-between;gap:48px;background:#f4eee4;position:relative;overflow:hidden}
.contact-page-hero-copy{position:relative;z-index:1;max-width:760px}
.contact-page-hero .eyebrow,.contact-page-intro .eyebrow{color:var(--orange-text);font-size:12px}
.contact-page-hero h1{font-size:clamp(38px,5.4vw,72px);line-height:1.35;letter-spacing:-.055em;margin:0 0 18px}
.contact-page-hero h1 em{font-family:var(--serif);font-weight:500;color:var(--orange-text)}
.contact-page-hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#4c4944;margin:0;max-width:600px}
.contact-page-note{display:inline-flex;align-items:center;gap:9px;margin-top:24px;font-size:13px;font-weight:700}
.contact-page-note i{width:8px;height:8px;border:1px solid var(--orange-text);border-radius:50%}
.contact-page-aside{width:188px;height:188px;flex:none;border:1px solid rgba(53,43,36,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;color:var(--ink)}
.contact-page-aside:before,.contact-page-aside:after{content:'';position:absolute;border:1px solid rgba(53,43,36,.12);border-radius:50%}
.contact-page-aside:before{inset:14px}.contact-page-aside:after{inset:30px}
.contact-page-aside span{font-size:9px;font-weight:800;letter-spacing:.18em;position:absolute;top:35px}
.contact-page-aside b{font:500 66px/1 var(--serif);color:var(--orange-text)}
.contact-page-aside i{position:absolute;bottom:28px;font-size:10px;font-style:normal;font-weight:800;letter-spacing:.2em}
.contact-page-body{max-width:1240px;margin:auto;padding:90px max(5vw,28px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,8vw,110px);align-items:start}
.contact-page-intro{position:sticky;top:120px}
.contact-page-intro h2{font-size:clamp(30px,3.2vw,40px);line-height:1.4;letter-spacing:-.045em;margin:0 0 16px}
.contact-page-intro>p:not(.eyebrow){font-size:15px;line-height:1.9;color:#4c4944}
.contact-line-card{margin-top:34px;padding:17px;display:grid;grid-template-columns:54px 1fr 36px;align-items:center;gap:12px;background:#fffdf8;border:1px solid var(--line)}
.contact-line-mark{width:48px;height:48px;border-radius:50%;background:#e8eee5;color:#455844;display:grid;place-items:center;font-size:9px;font-weight:900;letter-spacing:.05em}
.contact-line-card h3{font-size:13px;margin:0 0 4px}.contact-line-card p{font-size:12px;line-height:1.5;color:#5e5b56;margin:0}
.contact-line-card>a{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:17px}
.contact-form-wrap{padding:clamp(22px,4vw,40px);background:#fffdf8;border:1px solid var(--line);box-shadow:8px 10px 0 rgba(53,43,36,.05)}
.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 18px}
.contact-field{display:grid;gap:8px;min-width:0}
.contact-field-full{grid-column:1/-1}
.contact-field label{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800}
.contact-field label span{padding:2px 6px;background:#f5e6da;color:#8f3d23;font-size:10px;letter-spacing:.04em}
.contact-field label small{font-size:11px;font-weight:500;color:#6d6a65}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-height:49px;padding:12px 14px;border:1px solid #d9d0c3;border-radius:2px;background:#fff;color:var(--ink);font:inherit;font-size:14px;line-height:1.6}
.contact-field textarea{min-height:150px;resize:vertical}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#8b8780}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:3px solid rgba(143,61,35,.18);border-color:var(--orange-text)}
.contact-privacy-check{display:flex;align-items:flex-start;gap:11px;margin-top:25px;font-size:13px;line-height:1.8}
.contact-privacy-check input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--orange-text);flex:none}
.contact-privacy-check a{color:var(--orange-text);text-decoration:underline;text-underline-offset:3px}
.contact-privacy-check b{margin-left:4px;color:#8f3d23;font-size:10px}
.contact-submit{margin-top:23px;min-width:240px;cursor:pointer}
.contact-form-note{margin:14px 0 0;font-size:11px;line-height:1.7;color:#6d6a65}
.contact-page-bottom{max-width:1240px;margin:0 auto;padding:0 max(5vw,28px) 76px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.contact-page-bottom p{margin:0;font-size:14px;font-weight:700}
.contact-page-bottom .text-link{font-size:13px}
@media(max-width:850px){.contact-page-hero{min-height:320px;padding:66px 6vw}.contact-page-aside{width:145px;height:145px}.contact-page-aside b{font-size:55px}.contact-page-aside span{top:27px}.contact-page-aside i{bottom:20px}.contact-page-body{grid-template-columns:1fr;gap:30px;padding:66px 6vw}.contact-page-intro{position:static}.contact-page-intro h2 br{display:none}.contact-line-card{max-width:490px;margin-top:22px}}
@media(max-width:680px){.contact-page-hero{min-height:0;padding:56px 23px 45px}.contact-page-hero h1{font-size:clamp(34px,9vw,48px);line-height:1.38}.contact-page-hero-copy>p:not(.eyebrow){font-size:14px}.contact-page-aside{display:none}.contact-page-body{padding:52px 23px;gap:28px}.contact-page-intro .eyebrow,.contact-page-hero .eyebrow{font-size:10px}.contact-page-intro h2{font-size:32px}.contact-page-intro>p:not(.eyebrow){font-size:14px}.contact-line-card{grid-template-columns:44px 1fr 34px;padding:13px;gap:10px}.contact-line-mark{width:40px;height:40px}.contact-form-wrap{padding:22px 17px;box-shadow:5px 6px 0 rgba(53,43,36,.05)}.contact-form-grid{grid-template-columns:1fr;gap:18px}.contact-field-full{grid-column:auto}.contact-field label{font-size:13px}.contact-field input,.contact-field select,.contact-field textarea{font-size:15px;min-height:48px}.contact-field textarea{min-height:140px}.contact-privacy-check{font-size:12px}.contact-submit{width:100%;min-width:0;margin-top:21px}.contact-page-bottom{padding:0 23px 56px;align-items:flex-start;flex-direction:column;gap:15px}.contact-page-bottom p{font-size:13px}}

/* 菊地プロフィール：役職・ローマ字、個人アカウントの実績説明と確認後に追記する枠 */
.operator-profile-romaji{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--orange-text);margin:0 0 3px}
.operator-person-romaji{display:block;margin:5px 0 2px;font-size:10px;font-weight:800;letter-spacing:.16em;line-height:1.4;color:var(--orange-text)}
.operator-profile-main h2{margin-bottom:18px}
.operator-results-intro{margin:0 0 14px}
.operator-results-intro h3{font-size:16px;line-height:1.5;margin:0 0 7px}
.operator-results-intro p{font-size:13px;line-height:1.8;color:#4c4944;margin:0}
.operator-profile-result-heading h4{font-size:14px;line-height:1.5;margin:0}
@media(max-width:680px){.operator-profile-romaji{font-size:10px}.operator-person-romaji{font-size:9px}.operator-results-intro h3{font-size:15px}.operator-results-intro p{font-size:13px}.operator-profile-result-heading h4{font-size:14px}}

/* 静かなスクロール表示と操作時の小さな反応 */
.motion-ready .motion-reveal{opacity:0;translate:0 18px;transition:opacity .62s cubic-bezier(.2,.65,.3,1),translate .62s cubic-bezier(.2,.65,.3,1);transition-delay:var(--motion-delay,0ms)}
.motion-ready .motion-reveal.is-visible{opacity:1;translate:0 0}
.motion-ready .hero-copy{animation:dp-rise-in .92s cubic-bezier(.2,.65,.3,1) both}
.motion-ready .hero-feature-card{animation:dp-card-in .76s cubic-bezier(.2,.65,.3,1) both}
.motion-ready .feature-product{animation-delay:140ms}.motion-ready .feature-video{animation-delay:260ms}.motion-ready .feature-live{animation-delay:380ms}.motion-ready .feature-creator{animation-delay:500ms}.motion-ready .feature-data{animation-delay:620ms}
.motion-ready .hero-feature-core .core-play{animation:dp-core-button-press .52s cubic-bezier(.25,.75,.3,1) .55s both}
.motion-ready .hero-feature-core .core-play:before{animation:dp-play-ripple .68s cubic-bezier(.15,.65,.35,1) .55s both}
.motion-ready .hero-feature-core .core-play:after{animation:dp-play-ripple .82s cubic-bezier(.15,.65,.35,1) .62s both}
.service-card{transition:box-shadow .24s ease,transform .24s ease}
.support-jump a,.button,.text-link{transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}
@media(hover:hover) and (pointer:fine){.service-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(53,43,36,.1)}.button:hover{transform:translateY(-2px);box-shadow:0 5px 12px rgba(53,43,36,.16)}}
@keyframes dp-rise-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
@keyframes dp-card-in{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
.hero-title{position:relative}
.hero-title-line{display:block;position:relative;z-index:1;white-space:nowrap}
.hero-title-bottom{font-size:.82em;line-height:1.3}
.hero-title-bar{position:absolute;z-index:2;left:50%;top:50%;width:100%;height:.12em;transform:translate(-50%,-50%);pointer-events:none}
.hero-title-bar:before{content:'';position:absolute;left:50%;top:50%;width:100%;height:.72em;background:#171717;transform:translate(-50%,-50%) translateX(-65vw) scaleX(.052) scaleY(1);transform-origin:center;will-change:transform,opacity}
.hero-title-motion .hero-title-line{opacity:0;will-change:opacity,translate}
.hero-title-motion .hero-title-top{animation:dp-title-top-in 1.15s cubic-bezier(.2,.7,.25,1) 2.05s both}
.hero-title-motion .hero-title-bottom{animation:dp-title-bottom-in 1.15s cubic-bezier(.2,.7,.25,1) 2.05s both}
.hero-title-motion .hero-title-bar:before{animation:dp-title-block-to-rule 4.6s cubic-bezier(.22,.7,.25,1) both}
@keyframes dp-title-block-to-rule{0%{opacity:1;transform:translate(-50%,-50%) translateX(-65vw) scaleX(.052) scaleY(1)}25%{opacity:1;transform:translate(-50%,-50%) translateX(0) scaleX(.052) scaleY(1)}36%{opacity:1;transform:translate(-50%,-50%) translateX(0) scaleX(.052) scaleY(1)}52%{opacity:1;transform:translate(-50%,-50%) translateX(0) scaleX(1) scaleY(.105)}72%{opacity:1;transform:translate(-50%,-50%) translateX(0) scaleX(1) scaleY(.105)}100%{opacity:0;transform:translate(-50%,-50%) translateX(-110vw) scaleX(1) scaleY(.105)}}
@keyframes dp-title-top-in{from{opacity:0;translate:0 .25em}to{opacity:1;translate:0 0}}
@keyframes dp-title-bottom-in{from{opacity:0;translate:0 -.25em}to{opacity:1;translate:0 0}}
@keyframes dp-core-button-press{0%,100%{transform:translateY(0) scale(1);box-shadow:0 4px 0 #ad4d2c}35%,58%{transform:translateY(4px) scale(.93);box-shadow:0 0 0 #ad4d2c}}
@keyframes dp-play-ripple{0%{opacity:.9;scale:.72}65%{opacity:.38}100%{opacity:0;scale:1.55}}
@media(min-width:681px){
  .motion-ready .feature-orbit{animation:dp-feature-orbit-one-turn 4.2s linear 1.1s both;will-change:transform}
  .motion-ready .hero-feature-core{animation:dp-feature-core-counter-turn 4.2s linear 1.1s both;will-change:rotate}
  .motion-ready .hero-feature-cards{animation:dp-feature-cards-one-turn 4.2s linear 1.1s both;will-change:transform}
  .motion-ready .hero-feature-cards .hero-feature-card{animation:dp-feature-card-appear .62s cubic-bezier(.2,.7,.25,1) var(--card-arrival,0ms) both,dp-feature-card-counter-turn 4.2s linear 1.1s both;will-change:rotate,scale,opacity}
  .motion-ready .feature-product{--card-arrival:1.1s}.motion-ready .feature-video{--card-arrival:1.7s}.motion-ready .feature-live{--card-arrival:2.3s}.motion-ready .feature-creator{--card-arrival:2.9s}.motion-ready .feature-data{--card-arrival:3.5s}
}
@media(max-width:680px){
  .motion-ready .hero-feature-card{animation:dp-card-in .72s cubic-bezier(.2,.65,.3,1) var(--mobile-card-arrival,1.1s) both}
  .motion-ready .feature-product{--mobile-card-arrival:1.1s}.motion-ready .feature-video{--mobile-card-arrival:1.3s}.motion-ready .feature-live{--mobile-card-arrival:1.5s}.motion-ready .feature-creator{--mobile-card-arrival:1.7s}.motion-ready .feature-data{--mobile-card-arrival:1.9s}
}
@keyframes dp-feature-orbit-one-turn{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes dp-feature-cards-one-turn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes dp-feature-core-counter-turn{from{rotate:0deg}to{rotate:-360deg}}
@keyframes dp-feature-card-counter-turn{from{rotate:0deg}to{rotate:-360deg}}
@keyframes dp-feature-card-appear{from{opacity:0;scale:.72}to{opacity:1;scale:1}}
@media(prefers-reduced-motion:reduce){.motion-ready .motion-reveal{opacity:1!important;translate:none!important;transition:none!important}.motion-ready .hero-copy,.motion-ready .hero-feature-card,.motion-ready .hero-feature-cards,.motion-ready .feature-orbit,.motion-ready .hero-feature-core{animation:none!important;transform:none!important;rotate:0deg!important}.hero-title-motion .hero-title-line{opacity:1!important;animation:none!important}.hero-title-motion .hero-title-bar:before{opacity:0!important;animation:none!important;transform:translate(-50%,-50%)!important}*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* プライバシーポリシー */
.privacy-page{max-width:1600px;margin:0 auto;padding:0 max(5vw,28px) 88px}
.privacy-hero{position:relative;overflow:hidden;margin:0 calc(0px - max(5vw,28px));padding:78px max(8vw,36px) 68px;background:#f4eee4}
.privacy-hero .eyebrow{color:var(--orange-text);font-size:12px}
.privacy-hero h1{position:relative;z-index:1;margin:0 0 18px;font-size:clamp(42px,6vw,72px);line-height:1.22;letter-spacing:-.055em}
.privacy-hero h1 em{font-family:var(--serif);font-weight:500;color:var(--orange-text)}
.privacy-hero>p:not(.eyebrow){position:relative;z-index:1;max-width:700px;margin:0;font-size:16px;line-height:1.95;color:#4c4944}
.privacy-hero-mark{position:absolute;right:9%;top:50%;display:grid;place-items:center;width:170px;height:170px;border:1px solid rgba(53,43,36,.18);border-radius:50%;color:rgba(53,43,36,.13);font-size:52px;font-weight:900;letter-spacing:-.08em;transform:translateY(-50%) rotate(-12deg)}
.privacy-content{max-width:900px;margin:0 auto;padding-top:64px}
.privacy-lead{margin:0 0 32px;padding:20px 24px;background:#fff;border-left:3px solid var(--orange-text);font-size:15px;line-height:1.9}
.privacy-section{padding:27px 0;border-bottom:1px solid var(--line)}
.privacy-section h2{margin:0 0 12px;font-size:21px;line-height:1.5;letter-spacing:-.025em}
.privacy-section p,.privacy-section li{font-size:15px;line-height:1.95;color:#4c4944}
.privacy-section p{margin:0 0 12px}
.privacy-section p:last-child{margin-bottom:0}
.privacy-section ul{display:grid;gap:5px;margin:12px 0;padding-left:1.4em}
.privacy-section li::marker{color:var(--orange-text)}
.privacy-section a{color:#8f3d23;text-decoration:underline;text-underline-offset:3px}
.privacy-contact{margin-top:8px;padding:26px 28px;background:#fff}
.privacy-contact p+p{margin-top:18px}
.privacy-revision{margin:24px 0 0;text-align:right;font-size:12px;line-height:1.8;color:var(--muted)}
@media(max-width:680px){.privacy-page{padding:0 22px 60px}.privacy-hero{margin:0 -22px;padding:58px 23px 44px}.privacy-hero h1{font-size:clamp(38px,11vw,54px)}.privacy-hero>p:not(.eyebrow){font-size:14px;max-width:500px}.privacy-hero-mark{right:-27px;top:auto;bottom:-65px;width:150px;height:150px;font-size:42px}.privacy-content{padding-top:34px}.privacy-lead{padding:15px 17px;font-size:14px}.privacy-section{padding:22px 0}.privacy-section h2{font-size:18px}.privacy-section p,.privacy-section li{font-size:14px}.privacy-contact{padding:21px 18px}.privacy-revision{font-size:11px}}

.support .section-desc{max-width:390px}

/* DPを選ぶ理由を具体化 */
.intro-copy h2 em{font-family:var(--serif);font-size:1.04em;font-weight:500;color:var(--orange-text);letter-spacing:-.04em}
.why-reasons{display:grid;gap:0;margin-top:27px;border-top:1px solid var(--line);max-width:690px}
.why-reason{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.why-reason-number{font-family:var(--serif);font-size:19px;line-height:1.2;color:var(--orange-text)}
.why-reason h3{margin:0 0 4px;font-size:15px;line-height:1.55}
.why-reason p{margin:0;color:#595650;font-size:14px;line-height:1.8}
@media(max-width:680px){.why-reasons{margin-top:20px}.why-reason{grid-template-columns:30px 1fr;gap:9px;padding:13px 0}.why-reason h3{font-size:14px}.why-reason p{font-size:13px;line-height:1.75}.intro-copy h2 em{font-size:1em}}

/* 支援カード：ポインター操作時だけ、図版も連動して反応 */
@media(hover:hover) and (pointer:fine){
  .service-card{transition:transform .45s ease-out,box-shadow .45s ease-out}
  .service-illustration{transition:transform .45s ease-out}
  .service-illustration:before{content:'';position:absolute;z-index:0;left:50%;top:50%;width:62%;height:76%;border-radius:50%;background:radial-gradient(ellipse,rgba(233,106,57,.28) 0%,rgba(233,106,57,.12) 42%,transparent 72%);filter:blur(8px);opacity:0;transform:translate(-50%,-50%) scale(.72);pointer-events:none}
  .service-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(53,43,36,.16)}
  .service-card:hover .service-illustration{transform:translateY(-3px) scale(1.025)}
  .service-card:hover .service-illustration:before{animation:service-aura 2.4s ease-in-out infinite alternate}
  .service-card:hover .bag-product{animation:service-bag-bounce 1.8s ease-in-out infinite alternate}
  .service-card:hover .spark{animation:service-spark-turn 2.2s ease-in-out infinite alternate}
  .service-card:hover .video-phone{animation:service-phone-tilt 2s ease-in-out infinite alternate}
  .service-card:hover .video-phone:after{animation:service-play-pop 1.8s ease-in-out infinite alternate}
  .service-card:hover .recording-dot{animation:service-recording-pulse 1.8s ease-in-out infinite}
  .service-card:hover .live-wave{animation:service-live-wave 1.8s ease-in-out infinite}
  .service-card:hover .creator-person{animation:service-person-rise 2s ease-in-out infinite alternate}
  .service-card:hover .creator-product{animation:service-product-approach 2s ease-in-out infinite alternate}
  .service-card:hover .creator-arrows{animation:service-arrow-nudge 1.8s ease-in-out infinite alternate}
  .service-card .data-bars i{transform:scaleY(.72);transform-origin:bottom}
  .service-card:hover .data-bars i{animation:service-bar-grow 1.8s ease-in-out infinite alternate}
  .service-card:hover .data-bars i:nth-child(2){animation-delay:.08s}
  .service-card:hover .data-bars i:nth-child(3){animation-delay:.16s}
  .service-card:hover .data-bars i:nth-child(4){animation-delay:.24s}
  .service-card:hover .data-arrow{animation:service-arrow-rise 1.8s ease-in-out infinite alternate}
}
@keyframes service-aura{from{opacity:.22;transform:translate(-50%,-50%) scale(.72)}to{opacity:.82;transform:translate(-50%,-50%) scale(1.12)}}
@keyframes service-bag-bounce{0%,100%{transform:translateX(-50%) rotate(-8deg) translateY(0)}50%{transform:translateX(-50%) rotate(6deg) translateY(-12px)}}
@keyframes service-spark-turn{to{transform:rotate(180deg) scale(1.16)}}
@keyframes service-phone-tilt{0%,100%{transform:translateX(-50%) rotate(-6deg) translateY(0)}50%{transform:translateX(-50%) rotate(7deg) translateY(-9px)}}
@keyframes service-play-pop{0%,100%{scale:1}50%{scale:1.4}}
@keyframes service-recording-pulse{50%{box-shadow:0 0 0 8px rgba(233,106,57,.12)}}
@keyframes service-live-wave{50%{transform:scaleY(.72);opacity:.72}}
@keyframes service-person-rise{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes service-product-approach{0%,100%{transform:rotate(8deg) translateY(0)}50%{transform:rotate(-2deg) translate(-9px,-10px)}}
@keyframes service-arrow-nudge{50%{transform:translateX(12px)}}
@keyframes service-bar-grow{0%{transform:scaleY(.58)}50%{transform:scaleY(1.18)}100%{transform:scaleY(1)}}
@keyframes service-arrow-rise{0%,100%{transform:translate(0,0)}50%{transform:translate(10px,-12px)}}
@media(prefers-reduced-motion:reduce){.service-card,.service-illustration{transition:none!important}.service-card:hover,.service-card:hover .service-illustration{transform:none!important}.service-card:hover *,.service-card:hover *:before,.service-card:hover *:after{animation:none!important}.service-card .data-bars i{transform:none!important}}

/* お問い合わせ完了ページ */
.thanks-page{max-width:1600px;margin:0 auto;padding:76px max(5vw,28px) 92px;background:#f4eee4}
.thanks-card{max-width:850px;margin:0 auto;padding:58px clamp(24px,7vw,88px);background:var(--paper);text-align:center}
.thanks-card>.eyebrow{margin:0 0 20px;color:var(--orange-text);font-size:11px;font-weight:800;letter-spacing:.18em}
.thanks-check{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 22px;border:1px solid #71806a;border-radius:50%;color:#52684f;font-size:31px;line-height:1}
.thanks-card h1{margin:0;font-size:clamp(34px,5vw,56px);line-height:1.35;letter-spacing:-.045em}
.thanks-card h1 em{font-family:var(--serif);font-weight:500;color:var(--orange-text);font-style:normal}
.thanks-lead{margin:20px 0 0;color:#4c4944;font-size:16px;line-height:1.95}
.thanks-next{display:grid;grid-template-columns:72px 1fr;gap:15px;align-items:start;margin:34px auto 0;padding:20px 22px;max-width:600px;background:#eee7dc;text-align:left}
.thanks-next-number{padding-top:3px;color:var(--orange-text);font-size:10px;font-weight:800;letter-spacing:.16em}
.thanks-next p{margin:0;font-size:14px;line-height:1.9;color:#4c4944}
.thanks-actions{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin-top:34px}
.thanks-actions .button{min-height:54px}
.thanks-actions .text-link{font-size:14px}
@media(max-width:680px){.thanks-page{padding:42px 18px 58px}.thanks-card{padding:38px 20px}.thanks-card>.eyebrow{font-size:10px;margin-bottom:17px}.thanks-check{width:56px;height:56px;font-size:27px;margin-bottom:18px}.thanks-card h1{font-size:clamp(32px,9vw,42px)}.thanks-lead{font-size:14px}.thanks-next{grid-template-columns:1fr;gap:5px;margin-top:26px;padding:16px;text-align:left}.thanks-next p{font-size:13px}.thanks-actions{align-items:stretch;gap:16px;margin-top:26px}.thanks-actions .button{width:100%;justify-content:center}.thanks-actions .text-link{font-size:13px}}

/* 雑誌の紙・線・印を使う演出。初回表示だけ動かし、本文の位置は安定させる。 */
.motion-ready .why-reason.motion-reveal,
.motion-ready .final-cta.motion-reveal,
.motion-ready .steps > .motion-reveal{opacity:1;translate:none;transition:none}
.motion-ready .why-reason.is-visible .why-reason-number{display:inline-block;animation:dp-editor-stamp .42s cubic-bezier(.2,.75,.3,1) var(--motion-delay,0ms) both}
@keyframes dp-editor-stamp{0%{opacity:0;transform:scale(1.35) rotate(-9deg)}65%{opacity:1;transform:scale(.94) rotate(1deg)}100%{transform:scale(1) rotate(0)}}

/* translate/rotateを使い、既存のホバー用transformと干渉させない。 */
.motion-ready .service-card.motion-reveal{rotate:-1.4deg;translate:0 22px;transition:opacity .7s ease,translate .7s cubic-bezier(.2,.7,.25,1),rotate .7s cubic-bezier(.2,.7,.25,1),box-shadow .7s ease,transform .3s ease;transition-delay:var(--motion-delay,0ms)}
.motion-ready .service-card.motion-reveal:nth-child(even){rotate:1.4deg}
.motion-ready .service-card.motion-reveal.is-visible{rotate:0deg;translate:0 0}

/* 進行順に細い線と点を渡す。文章は最初から読める。 */
.motion-ready .steps > article{position:relative;border-top-color:transparent;--route-delay:0s}
.motion-ready .steps > article:nth-child(2){--route-delay:.4s}
.motion-ready .steps > article:nth-child(3){--route-delay:.8s}
.motion-ready .steps > article:before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:#a79a8c;transform:scaleX(0);transform-origin:left}
.motion-ready .steps > article:after{content:'';position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--orange);opacity:0}
.motion-ready .steps > article.is-visible:before{animation:dp-route-line .45s ease-out var(--route-delay) both}
.motion-ready .steps > article.is-visible:after{animation:dp-route-dot .45s ease-out var(--route-delay) both}
@keyframes dp-route-line{to{transform:scaleX(1)}}
@keyframes dp-route-dot{0%{opacity:0;left:0}12%{opacity:1}85%{opacity:1}100%{opacity:0;left:calc(100% - 7px)}}

/* 背景の円はSVGの輪郭だけ描く。CTAの文章は非表示にしない。 */
.final-cta .cta-shape{border:0;pointer-events:none}
.cta-shape svg{display:block;width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}
.cta-shape circle{fill:none;stroke:rgba(53,43,36,.16);stroke-width:1;vector-effect:non-scaling-stroke}
.motion-ready .final-cta circle{stroke-dasharray:1;stroke-dashoffset:1}
.motion-ready .final-cta.is-visible circle{animation:dp-arc-draw 1s cubic-bezier(.2,.7,.25,1) both}
.motion-ready .final-cta.is-visible .shape-two circle{animation-delay:.15s}
@keyframes dp-arc-draw{to{stroke-dashoffset:0}}
.final-cta .button span{display:inline-block}
.final-cta .button:focus-visible{outline:2px solid var(--orange-text);outline-offset:5px}
.final-cta .button:focus-visible span{animation:dp-cta-arrow .35s ease both}
@media(hover:hover) and (pointer:fine){.final-cta .button:hover span{animation:dp-cta-arrow .35s ease both}}
@keyframes dp-cta-arrow{0%,100%{opacity:1;transform:translate(0,0)}45%{opacity:0;transform:translate(7px,-7px)}46%{opacity:0;transform:translate(-7px,7px)}}
@media(max-width:680px){
 .motion-ready .steps > article:nth-child(n){border-top:0;padding-left:18px;--route-delay:0s}
 .motion-ready .steps > article:before{top:0;left:0;width:1px;height:100%;transform:scaleY(0);transform-origin:top}
 .motion-ready .steps > article:after{top:0;left:-3px}
 .motion-ready .steps > article.is-visible:before{animation-name:dp-route-line-vertical}
 .motion-ready .steps > article.is-visible:after{animation-name:dp-route-dot-vertical}
}
@keyframes dp-route-line-vertical{to{transform:scaleY(1)}}
@keyframes dp-route-dot-vertical{0%{opacity:0;top:0}12%{opacity:1}85%{opacity:1}100%{opacity:0;top:calc(100% - 7px)}}
@media(prefers-reduced-motion:reduce){
 .motion-ready .why-reason-number,.motion-ready .steps > article:before,.motion-ready .steps > article:after,.final-cta circle,.final-cta .button span{animation:none!important}
 .motion-ready .service-card.motion-reveal{opacity:1;translate:none;rotate:0deg;transition:none}
 .motion-ready .steps > article:before{transform:none}
 .motion-ready .steps > article:after{opacity:0}
 .motion-ready .final-cta circle{stroke-dashoffset:0}
}
