/* Approved direction: natural work photography, paper, charcoal and antique gold. */
:root{--cream:#f3efe6;--paper:#fcfaf5;--navy:#272824;--ink:#31332f;--red:#88652f;--yellow:#95713c;--blue:#e4e6dc;--pink:#e9dfd0;--green:#626a53;--shadow:none;--line:#d5c8b3;--display:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}
body{background:var(--paper);font-weight:400;line-height:1.95;color:var(--ink)}
h1,h2,h3{font-family:var(--display);font-weight:500!important;letter-spacing:.025em!important}
p,li{font-weight:400!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #88652f;outline-offset:5px}
.site-header{border-bottom:1px solid var(--line);background:rgba(252,250,245,.97)}
.header-inner{min-height:88px;gap:24px}.brand{color:var(--red)}.brand-mark{display:none}.brand-name{display:block;font-family:var(--display);font-size:1.7rem;font-weight:500;letter-spacing:.06em;white-space:nowrap}.brand-name span{color:inherit}.brand-name small{display:block;font:400 .65rem/1.5 sans-serif;letter-spacing:.16em;margin-top:6px}
.site-nav{gap:20px}.site-nav>a{font-size:.76rem;font-weight:500}.site-nav>a:not(.nav-cta)::after{height:1px}.site-nav .nav-cta{border:0;background:var(--red);box-shadow:none;padding:13px 20px;color:white;border-radius:3px}
.inner,.header-inner,.hero-inner,.footer-inner{width:min(1240px,calc(100% - 80px))}.section{padding:90px 0}.section-heading{text-align:left;max-width:none;margin:0 0 42px}.section-heading h2{font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.55}.section-heading>p:last-child{max-width:750px;font-size:.95rem}.section-heading.light h2,.section-heading.light>p:last-child{color:var(--ink)}
.eyebrow,.eyebrow.red,.eyebrow.blue,.eyebrow.yellow{border:0;box-shadow:none;transform:none;background:none;color:var(--red);padding:0;margin-bottom:18px;font-weight:500;letter-spacing:.17em;font-size:.72rem}.eyebrow::after{content:"";display:inline-block;width:44px;height:1px;background:var(--red);margin-left:18px;vertical-align:middle}
.button{border:1px solid var(--red);box-shadow:none;border-radius:3px;font-weight:500;min-height:52px;padding:14px 23px;transition:background .2s,color .2s}.button:hover{transform:none;box-shadow:none;background:#76572a;color:white}.primary,.contact-button{background:var(--red);color:white}.secondary{background:transparent;color:var(--red)}.text-link{font-weight:500;color:var(--red);font-size:.88rem;text-underline-offset:6px}
.hero{border:0;background:var(--cream);overflow:hidden}.hero:before,.hero-dots{display:none}.hero-inner{position:relative;min-height:650px;display:block;padding:78px 0 64px}.hero-copy{position:relative;z-index:2;width:53%;max-width:660px}.hero h1{font-size:clamp(2.4rem,4.2vw,4.2rem);line-height:1.42;text-wrap:initial;color:var(--navy)}.hero-lead{color:var(--red);font-family:var(--display);font-size:1.45rem;margin-top:22px;font-weight:400}.hero-description{max-width:470px;font-size:.91rem;margin-top:20px}.hero-actions{margin-top:28px;gap:16px}.hero-actions .secondary{border:0;padding-inline:0}.hero-note{font-size:.73rem;color:#65665e}.hero-visual{position:absolute;inset:0 calc((1240px - 100vw)/2) 0 38%;padding:0;display:block;min-height:0}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:66% center}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--cream),rgba(243,239,230,.85) 9%,transparent 42%)}
.hero-manifesto{position:absolute;z-index:1;right:5%;top:66px;width:195px;background:#272824;color:#fcfaf5;padding:28px 23px;border:1px solid #6c624d}.hero-manifesto p{font-family:var(--display);font-size:1.2rem;line-height:1.8;margin:0}.hero-manifesto small{display:block;margin-top:22px;padding-top:18px;border-top:1px solid #95713c;font-size:.75rem;line-height:1.9;color:#ece4d5}.hero-strip{background:var(--paper);color:var(--ink);border-block:1px solid var(--line);min-height:95px;gap:0;justify-content:space-evenly}.hero-strip span{font-weight:400;padding:0 35px;font-size:.87rem}.hero-strip span+span{border-left:1px solid var(--line)}.hero-strip span:before{color:var(--red);font-weight:400}
.work-flow{padding:65px 0;background:var(--cream)}.work-flow-inner{display:grid;grid-template-columns:.8fr 2.2fr;gap:50px}.work-flow h2{font-size:2.4rem;line-height:1.55;margin:0 0 20px}.work-flow-intro>p:last-child{font-size:.9rem}.work-flow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;margin:0;list-style:none}.work-flow li>span{font:italic 2rem var(--display);color:var(--red)}.work-flow img{width:100%;height:155px;object-fit:cover;margin-top:10px}.work-flow h3{font-size:1.35rem;margin:18px 0 8px}.work-flow li p{font-size:.86rem;margin:0}
.experience-section{padding:65px 0;background:var(--paper)}.experience-heading h2{font-size:1.8rem;max-width:820px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.experience-card{padding:22px 0;border:0;border-top:1px solid var(--line);background:none;box-shadow:none;transform:none}.experience-card h3{font-family:inherit;font-size:.98rem}.experience-card strong{display:block;color:var(--red);font-family:var(--display);font-size:1.6rem}.experience-card p{font-size:.85rem}.experience-number{font-size:inherit}.experience-link{text-align:right}.corporate-guide{display:grid;grid-template-columns:1.5fr 1fr;gap:35px;padding:30px;margin-top:38px;border:1px solid var(--line);background:var(--cream);box-shadow:none}.corporate-guide h2{font-size:1.6rem}.corporate-guide p{font-size:.86rem}.corporate-action{align-self:center}.corporate-action p{font-size:.72rem}
.worries{background:var(--cream)}.worries:before,.worries:after{display:none}.worry-grid{gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.worry-grid article{border:0;border-top:1px solid var(--line);background:none;box-shadow:none;min-height:0;padding:24px 0}.worry-grid article:before{display:none}.worry-grid article>b{border:0;background:none;color:var(--red);font:400 1.3rem var(--display);width:auto;height:auto;display:block;margin:0 0 12px}.worry-grid h3{font-size:1.1rem}.worry-grid p{font-size:.86rem}.comic-closing{background:none;box-shadow:none;border:0;padding:20px 0;color:var(--red);transform:none;font-family:var(--display);font-size:1.4rem}
.services,.cases,.reasons,.examples,.training,.pricing,.goal-section{background:var(--paper);color:var(--ink)}.services,.pricing{background:var(--cream)}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.service-card{border:1px solid var(--line);background:var(--paper);box-shadow:none;padding:32px;min-height:0;transform:none!important}.service-card:hover{box-shadow:none;transform:none;background:#f4f0e6}.service-top b{font:400 1.7rem var(--display);color:var(--red);-webkit-text-stroke:0}.service-top span{border:0;background:none;transform:none;color:var(--red);padding:0;font-weight:400}.service-card>i{display:none}.service-card h3{margin-top:22px;font-size:1.6rem}.service-card>p,.service-card li{font-size:.9rem}.service-card .service-price{background:var(--cream);border:0;color:var(--red)}.service-more{display:block;border-top:1px solid var(--line);padding-top:16px;margin-top:24px;font-weight:500;color:var(--red)}
.goal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.goal-card{border:0;border-top:1px solid var(--line);box-shadow:none;padding:25px 0;min-height:0;background:none}.goal-card>b{border:0;transform:none;background:none;padding:0;color:var(--red);font-weight:400}.goal-card h3{font-size:1.5rem}.goal-card ul{border-top:1px solid var(--line);font-size:.88rem}
.case-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.case-card{border:0;box-shadow:none;grid-template-columns:1fr;background:transparent}.case-image{height:300px;min-height:0;background:var(--cream)}.case-image img{object-fit:cover;object-position:top}.case-copy{padding:25px 0}.case-tag{border:0;background:none;color:var(--red);padding:0;font-weight:400;letter-spacing:.1em}.case-copy h3,.flyer-copy h3{font-size:1.5rem}.flyer-case{background:var(--cream);box-shadow:none;border:0;padding:32px;gap:35px}.flyer-stack img{border:0;box-shadow:0 5px 15px #27282418;transform:none!important;margin:0 6px;width:30%;object-fit:contain}.mini-case-grid article{border:0;border-top:1px solid var(--line);background:none;box-shadow:none;padding:24px 0}.mini-case-grid b{color:var(--red);font-weight:400}.past-note{background:transparent;border-left:1px solid var(--red)}
.seminar-gap{background:var(--cream);border:0}.gap-heading h2{font-size:2.4rem}.gap-heading h2 em{text-decoration:none;color:var(--red)}.comparison-card{border:1px solid var(--line);box-shadow:none;transform:none}.comparison-head{background:var(--navy)}.comparison-head strong{background:#626a53}.comparison-row{border-top:1px solid var(--line)}.comparison-row strong{border-left:1px solid var(--line);background:#eeeee5;font-weight:500}.comparison-card>p{border-top:1px solid var(--line);background:var(--cream);font-weight:400}.training-layout{gap:45px}.fitness-chart{border:1px solid var(--line);box-shadow:none;background:var(--cream)}.chart-title{border:0;background:var(--navy)}.chart-title span{color:#d8bd83}.fitness-chart li{border-bottom:1px solid var(--line)}.fitness-chart li>span{border:0;background:none;color:var(--red);font-weight:400}.fitness-chart>p{background:var(--cream)}.session-plan li{border:0;border-bottom:1px solid var(--line);box-shadow:none;background:none;padding:20px 0}.session-plan li>b,.session-plan li:nth-child(even)>b{border:0;background:none;color:var(--red);font:400 2rem var(--display)}.session-plan span{font-weight:500}
.reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.reason-grid article{border:0;border-top:1px solid var(--line);box-shadow:none;padding:24px 0;min-height:0;background:none}.reason-grid article>b{position:static;color:var(--red);font:400 1.4rem var(--display)}.reason-grid h3{font-size:1.3rem}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.price-card{display:flex;flex-direction:column;border:1px solid var(--line);box-shadow:none;padding:30px;background:var(--paper);transform:none}.price-card.featured{border:1px solid var(--red);background:#ece6d9}.price-card h3{font-size:1.5rem}.price-label{color:var(--red);font-size:.8rem}.price strong{font:500 2.2rem var(--display);color:var(--red)}.price span{display:block;font-size:.8rem}.price-sub,.price-note,.card-tagline{font-size:.82rem}.price-card ul{padding-left:0;list-style:none;font-size:.88rem;margin-bottom:28px}.recommend{position:static;display:block;background:none;color:var(--red);border:0;padding:0 0 14px;transform:none;font-size:.75rem;font-weight:500}.team-plan{border:1px solid var(--line);background:var(--paper);box-shadow:none;font-size:.88rem}.team-plan h3{font-size:1.3rem}.example-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.example-grid>div{border:0;border-bottom:1px solid var(--line);background:none;box-shadow:none;padding:20px 0}.example-grid b{color:var(--red);font-weight:400}
.about-editorial{padding:75px 0;background:var(--cream)}.about-editorial .inner{display:grid;grid-template-columns:.8fr 1.6fr;gap:65px;align-items:center}.about-editorial img{width:100%;height:380px;object-fit:cover;object-position:center 30%;border-radius:0 45% 0 0}.about-editorial h2{font-size:2.4rem;line-height:1.6;margin:0 0 22px}.about-editorial p{max-width:640px;font-size:.94rem}.about-editorial .button{margin-top:15px}
.musubi{background:var(--paper);border-block:1px solid var(--line);padding:42px 0}.musubi-inner{gap:35px}.musubi h2{font-size:1.7rem}.musubi p{font-size:.86rem}.musubi-button{background:none;color:var(--red)}.faq details{border:0;border-bottom:1px solid var(--line);background:none;box-shadow:none}.faq summary{padding:22px 45px 22px 35px;font-weight:500}.faq summary:before{border:0;background:none;color:var(--red);left:0;font:400 1.2rem var(--display)}.faq details p{padding:0 30px 24px 35px;font-size:.9rem}.contact{background:var(--navy);color:var(--paper);padding:85px 0;border:0}.contact h2{color:var(--paper);font-size:2.6rem;line-height:1.6}.contact-pop{border:0;background:none;box-shadow:none;color:#d8bd83;transform:none;padding:0;font-weight:400}.contact-button{border:1px solid #af905b}.contact-mail{font-size:.8rem}.site-footer{background:var(--paper);color:var(--ink);border:0;padding:45px 0 20px}.footer-inner b{font:400 1.6rem var(--display);color:var(--red)}.footer-inner p{font-size:.76rem}.footer-inner nav a{font-size:.78rem;font-weight:400}.copyright{font-size:.7rem}.mobile-line{background:var(--red);color:white;border:0;box-shadow:none;border-radius:3px}
.reason-grid{background:none;border:0;box-shadow:none}.experience-section{border-bottom:1px solid var(--line)}.contact:before,.contact:after{display:none}.comic-closing{font-size:1.3rem;line-height:1.8;margin-top:28px}
.detail-jump a{color:var(--ink)}.detail-grid>article,.detail-grid>div,.detail-list li,.detail-flow li,.blog-card,.term,.article-cta,.check-list,.legal-table,.article-lead,.article-source,.term-nav li a{border:1px solid var(--line);box-shadow:none;transform:none}.blog-card:hover,.term-nav li a:hover{box-shadow:none;transform:none;background:var(--cream)}.article-meta span,.term-legend{background:var(--cream);border:1px solid var(--line)}.legal-hero{border-bottom:1px solid var(--line);background:var(--cream)}.about-note-card{background:var(--cream);border:1px solid var(--line);box-shadow:none;transform:none}.about-note-card:before{display:none}
.experience-prose{max-width:850px}.experience-prose p{margin:0 0 20px;font-size:.95rem;line-height:2.1}.experience-prose p:last-child{margin-bottom:0}
.worry-grid article>.worry-check{display:grid;place-items:center;width:40px;height:40px;margin-bottom:18px;border:1px solid #e4d9c7;border-radius:50%;background:#fcfaf5;color:var(--red);font:400 1.2rem/1 sans-serif;box-shadow:0 4px 10px #59482e14}
.worry-grid.has-reveal article{opacity:0;transform:translateY(16px)}
.worry-grid.has-reveal.is-visible article{animation:worry-check-appear 1s ease-out both;animation-delay:var(--check-delay,0ms)}
@keyframes worry-check-appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.worry-grid.has-reveal article{opacity:1;transform:none;animation:none!important}}
/* Detail pages retain their content, with the same restrained materials. */
.detail-hero,.subpage-hero{background:var(--cream);border:0}.detail-hero:before,.detail-hero:after,.subpage-hero:after{display:none}.detail-price-card,.detail-card,.detail-option-card,.subpage-quote,.story-label,.activity-list article,.case-showcase-visual,.case-addon,.flyer-gallery figure,.case-author-card{box-shadow:none;transform:none;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.detail-jump{border-block:1px solid var(--line);background:var(--paper)}.article-body h2{border-left:2px solid var(--red);font-weight:500}.detail-home-link{color:var(--red)}
@media(min-width:1400px){.hero-visual{right:calc((1240px - 100vw)/2)}}
@media(max-width:1150px){.site-nav{gap:12px}.site-nav>a{font-size:.7rem}.site-nav>a:nth-child(4),.site-nav>a:nth-child(8){display:none}.hero-visual{right:-40px}.hero-manifesto{display:none}.hero-copy{width:57%}.work-flow-inner{grid-template-columns:1fr}.work-flow-intro{max-width:580px}.price-card{padding:24px}}
@media(max-width:820px){.inner,.header-inner,.hero-inner,.footer-inner{width:calc(100% - 40px)}.header-inner{min-height:74px}.menu-button{display:flex;border:1px solid var(--line);background:none;box-shadow:none;color:var(--ink);padding:8px 12px}.menu-button b{font-weight:400}.site-nav{display:none;position:absolute;top:74px;left:0;right:0;padding:22px;background:var(--paper);border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex;flex-direction:column;align-items:stretch}.site-nav>a,.site-nav>a:nth-child(4),.site-nav>a:nth-child(8){display:block;font-size:.9rem;padding:8px}.hero-inner{padding:48px 0 0;min-height:0}.hero-copy{width:100%;max-width:none}.hero h1{font-size:clamp(2.4rem,6.6vw,3.7rem)}.hero-description{max-width:560px}.hero-visual{position:relative;inset:auto;margin:25px -20px 0;height:340px}.hero-visual:after{background:linear-gradient(var(--cream),transparent 30%)}.hero-visual>img{object-position:center 65%}.hero-strip{flex-wrap:wrap;gap:8px;padding:20px}.hero-strip span{padding:5px 15px;font-size:.75rem}.work-flow ol{gap:20px}.work-flow img{height:140px}.corporate-guide,.training-layout,.gap-layout,.about-editorial .inner,.musubi-inner,.team-plan{grid-template-columns:1fr}.about-editorial .inner{gap:30px}.about-editorial img{max-width:380px;height:340px}.experience-grid{gap:20px}.worry-grid,.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-grid{grid-template-columns:1fr}.personal-card{grid-column:auto}.fitness-chart{position:static}.flyer-case{grid-template-columns:1fr}.footer-inner{align-items:start;text-align:left}.footer-inner nav{justify-content:start}.section{padding:65px 0}.mobile-line{position:fixed;bottom:10px;left:20px;right:20px;z-index:1200;display:flex;justify-content:center;padding:12px}.site-footer{padding-bottom:85px}}
@media(max-width:560px){.brand-name{font-size:1.35rem}.brand-name small{font-size:.55rem}.hero h1{font-size:2.28rem;letter-spacing:0!important}.hero-lead{font-size:1.04rem}.hero-actions{display:flex;flex-direction:column;align-items:start}.hero-actions .button{width:auto}.hero-visual{height:280px}.hero-strip{display:grid;justify-content:start;gap:5px}.hero-strip span+span{border:0}.hero-strip span{padding:2px 0}.work-flow ol,.service-grid,.worry-grid,.goal-grid,.case-feature-grid,.reason-grid,.experience-grid,.example-grid{grid-template-columns:1fr}.work-flow ol{gap:30px}.work-flow img{height:210px}.work-flow h2,.about-editorial h2,.gap-heading h2,.contact h2{font-size:1.85rem}.service-card{padding:25px}.section-heading h2{font-size:1.85rem}.experience-card h3 strong{display:inline;margin-left:12px}.experience-card{padding:16px 0}.corporate-guide{padding:24px}.case-image{height:250px}.flyer-case{padding:20px}.flyer-stack{min-height:220px;padding:0}.flyer-stack img{margin:0 3px}.price-card{padding:25px}.reason-grid article{padding:22px 0}.faq summary{font-size:.9rem}.about-editorial img{height:320px}.comparison-head span,.comparison-head strong,.comparison-row span,.comparison-row strong{padding:12px 10px}.comparison-row{font-size:.75rem}.musubi-inner{text-align:left}.musubi-button{margin:0}.contact{padding:65px 0}.hero-note{font-size:.67rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.compact-pricing{background:#eee8dd}.compact-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.compact-price-grid article{border-top:1px solid #bbaa8b;padding-top:24px}.compact-price-grid h3{font-size:1.5rem;margin-bottom:12px}.compact-price-grid .compact-price{font-size:2.3rem;font-family:serif;color:#806329;margin:12px 0}.compact-price small{font-size:.8rem}.compact-price-note{margin-top:28px;font-size:.85rem}.compact-price-note a{text-decoration:underline}@media(max-width:820px){.compact-price-grid{grid-template-columns:1fr;gap:28px}}
.consultation-price-notice{border-top:1px solid #bbaa8b;border-bottom:1px solid #bbaa8b;padding:24px 0;margin-bottom:32px}.consultation-price-notice h3{font-size:1.4rem;margin:0 0 12px}.consultation-price-notice strong{font-size:1.5rem;color:#806329}.hero .hero-consultation-price{font-size:.85rem;margin-top:14px;color:#655b4a}
.price-line-example{margin:0 0 24px;padding:22px;background:#e3ded2;text-align:center}.price-line-example img{display:block;width:210px;height:300px;object-fit:cover;object-position:center bottom;border:6px solid #303b37;border-radius:20px;margin:auto;box-shadow:0 8px 20px #0002}.price-line-example figcaption{font-size:.72rem;margin-top:14px}.line-real-examples{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:24px 0}.line-real-examples figure{margin:0;text-align:center}.line-real-examples img{display:block;width:min(100%,270px);height:auto;border:7px solid #303b37;border-radius:25px;margin:auto;box-shadow:0 8px 20px #0002}.line-real-examples figcaption{font-size:.8rem;line-height:1.7;margin-top:16px}@media(max-width:820px){.line-real-examples{grid-template-columns:1fr}}
.consultation-price-notice{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:32px}.consultation-price-image{margin:0}.consultation-price-image img{display:block;width:100%;height:230px;object-fit:cover;border-radius:5px}.consultation-price-image figcaption{font-size:.7rem;color:#655b4a;margin-top:8px}.consultation-price-copy p{margin:12px 0}.consultation-price-copy strong{display:block;line-height:1.5}@media(max-width:820px){.consultation-price-notice{grid-template-columns:1fr;gap:20px}.consultation-price-image img{height:210px}}
.price-web-example{margin:0 0 24px;padding:22px;background:#e3ded2;text-align:center}.price-web-example a{display:flex;align-items:center;justify-content:center;min-height:300px}.price-web-example img{display:block;width:100%;height:auto;border:7px solid #303b37;border-radius:9px;box-shadow:0 8px 20px #0002;box-sizing:border-box}.price-web-example figcaption{font-size:.72rem;margin-top:14px}.price-example-note{font-size:.75rem;line-height:1.7;margin-top:16px}
/* A consistent, approachable typeface; keep the wordmark's editorial serif. */
:root{--ui-font:'Noto Sans JP','Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}
body{font-family:var(--ui-font)}
h1,h2,h3,h4,.hero-lead,.hero-manifesto p,.stage-caption,.compact-price-grid .compact-price{font-family:var(--ui-font)!important;font-weight:600!important;letter-spacing:.015em!important}
.hero h1{font-weight:600!important;line-height:1.5}
.section-heading h2,.contact h2,.about-editorial h2{line-height:1.55}
.automation-demo header h3{font-family:var(--ui-font)!important;font-weight:600!important;letter-spacing:.015em!important}
.stage-caption{font-weight:600!important}
.hero-lead{font-weight:500!important}
.brand-name,.footer-inner b{font-family:var(--display)}
@media(max-width:560px){.hero h1{font-size:clamp(2rem,7.8vw,2.6rem)}.automation-demo header h3{font-size:1.75rem}}
/* Connect the landing message and introduction to the business card. */
.hero h1,.about-editorial h2{font-family:var(--display)!important;font-weight:500!important;letter-spacing:.025em!important;line-height:1.55}
/* Service pages: calm hierarchy and generous mobile reading space. */
.service-detail .detail-hero{padding:70px 0 45px}.service-detail .detail-hero-inner{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,.8fr);gap:48px;align-items:center}.service-detail .detail-hero h1{font-family:var(--display)!important;font-weight:500!important;font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.55}.service-detail .detail-lead{font-size:1rem;line-height:1.9;max-width:660px}.service-detail .detail-price-card{border:0;border-left:2px solid #95713c;border-radius:0;background:transparent;padding:24px}.service-detail .detail-price-card strong{font-family:var(--ui-font);font-size:2rem;color:#806329}.detail-photo-band{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center;padding-top:30px;padding-bottom:40px}.detail-photo-band figure{margin:0}.detail-photo-band img{display:block;width:100%;height:280px;object-fit:cover;border-radius:6px}.detail-photo-band figcaption{font-size:.7rem;color:#655b4a;margin-top:8px}.detail-photo-band>p{font-family:var(--display);font-size:1.4rem;line-height:1.9}.detail-photo-band a{font-family:var(--ui-font);font-size:.8rem;text-decoration:underline}.service-detail .detail-jump{position:static}.service-detail .detail-jump .inner{display:flex;gap:24px;overflow-x:auto;white-space:nowrap;padding:16px 0}.service-detail .detail-section{padding:64px 0}.service-detail .detail-heading{max-width:800px;margin-bottom:30px}.service-detail .detail-heading h2{font-size:clamp(1.5rem,2.5vw,2.1rem);line-height:1.6}.service-detail .detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-detail .detail-grid.two-choice{grid-template-columns:repeat(2,minmax(0,1fr))}.service-detail .detail-grid article{border:0;border-top:1px solid #d5c8b3;border-radius:0;background:transparent;box-shadow:none;padding:24px 0}.service-detail .detail-grid article>b{color:#806329;font-size:.75rem;letter-spacing:.1em}.service-detail .detail-grid h3{font-size:1.2rem;line-height:1.6}.service-detail .detail-grid p{font-size:.92rem;line-height:1.9}.service-detail .detail-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;counter-reset:service-step}.service-detail .detail-flow li{background:transparent;border:0;border-top:1px solid #d5c8b3;padding:20px 0;box-shadow:none}.service-detail .detail-flow li:before{counter-increment:service-step;content:'0' counter(service-step);display:block;color:#95713c;margin-bottom:12px}.service-detail .detail-notice{background:#eee8dd;border:0;border-left:2px solid #95713c;font-size:.85rem;line-height:1.9;padding:20px 24px}.service-detail .detail-consultation-note{color:#ead6a5;font-size:1rem}.service-detail .contact h2{font-family:var(--display)!important;font-weight:500!important}.service-detail .detail-option-card{border:1px solid #d5c8b3;border-radius:6px;padding:30px}.service-detail .line-real-examples{width:100%}@media(max-width:820px){.service-detail .detail-hero{padding:40px 0 24px}.service-detail .detail-hero-inner,.detail-photo-band,.service-detail .detail-grid,.service-detail .detail-grid.two-choice,.service-detail .detail-flow{grid-template-columns:1fr}.service-detail .detail-hero-inner{gap:24px}.service-detail .detail-hero h1{font-size:2rem}.service-detail .detail-price-card{padding:16px 20px}.detail-photo-band{gap:18px;padding-top:24px;padding-bottom:24px}.detail-photo-band img{height:210px}.detail-photo-band>p{font-size:1.1rem;margin:0}.service-detail .detail-section{padding:42px 0}.service-detail .detail-jump .inner{gap:20px;font-size:.8rem}.service-detail .detail-grid{gap:10px}.service-detail .detail-flow{gap:8px}.service-detail .detail-option-card{padding:20px}.service-detail .contact h2{font-size:1.8rem}.service-detail .header-inner{flex-wrap:wrap;padding:14px 0;gap:12px}.service-detail .brand-name{font-size:1.3rem}.service-detail .nav-cta{font-size:.75rem;padding:10px 12px;min-height:40px}}
.service-detail .detail-flow.six-flow{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:820px){.service-detail .detail-flow.six-flow{grid-template-columns:1fr}}
.case-study-page .case-hero-preview{margin:0}.case-hero-preview img{width:100%;height:auto;border:6px solid #303b37;border-radius:8px}.case-study-page .case-showcase,.case-study-page .case-showcase.reverse{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:start}.case-study-page .case-showcase-visual{padding:0;border:0;background:transparent;border-radius:6px;overflow:hidden}.case-study-page .case-showcase-visual img{display:block;width:100%;height:auto;object-fit:contain}.case-study-page .case-showcase-copy h3{font-size:1.1rem;margin:0 0 15px}.case-study-page .case-showcase-copy p,.case-study-page .case-showcase-copy li{font-size:.9rem}.case-check-details{margin:20px 0;border-block:1px solid #d5c8b3;padding:14px 0}.case-check-details summary{cursor:pointer;font-size:.8rem;color:#655b4a}.case-check-details p{margin:14px 0 0}.case-study-page .flyer-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.case-study-page .flyer-gallery figure{padding:0;border:0;background:transparent;margin:0}.case-study-page .flyer-gallery img{width:100%;height:340px;object-fit:contain;background:#eee8dd}.case-study-page .flyer-gallery figcaption{font-size:.75rem;margin-top:12px}.case-line-examples{max-width:1000px;width:calc(100% - 40px);margin:0 auto 60px;padding:32px;background:#eee8dd;border-radius:8px}.case-line-examples>h3{font-size:1.5rem;margin-top:0}.case-line-examples>p{font-size:.9rem}.case-study-page .case-addon{border:0;border-top:1px solid #d5c8b3;border-radius:0;padding-top:30px}.case-study-page .case-author-card{border:0;background:transparent;padding:0}.case-study-page .detail-flow{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:820px){.case-study-page .case-showcase,.case-study-page .case-showcase.reverse{grid-template-columns:1fr;gap:24px}.case-study-page .case-showcase.reverse .case-showcase-visual{order:0}.case-study-page .flyer-gallery{display:flex;overflow-x:auto;gap:18px;padding-bottom:20px}.case-study-page .flyer-gallery figure{flex:0 0 76vw}.case-study-page .flyer-gallery img{height:360px}.case-line-examples{box-sizing:border-box;padding:24px;margin-bottom:40px}.case-study-page .case-addon,.case-study-page .case-author-card,.case-study-page .detail-flow{display:grid;grid-template-columns:1fr;gap:20px}}
.case-ec-example{padding-bottom:60px}@media(max-width:820px){.case-ec-example{padding-bottom:40px}}
.profile-editorial .subpage-hero{padding:64px 0;background:var(--cream)}.profile-editorial .subpage-hero-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:56px;align-items:center}.profile-editorial .subpage-hero h1{font-family:var(--display)!important;font-weight:500!important;font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.55}.profile-editorial .subpage-hero p:not(.eyebrow){font-size:1rem;line-height:1.95;max-width:650px}.profile-portrait{margin:0}.profile-portrait img{display:block;width:100%;height:370px;object-fit:cover;border-radius:6px}.profile-portrait figcaption{font-size:.75rem;margin-top:12px;color:#655b4a}.profile-editorial .story-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:60px}.profile-editorial .story-label{background:transparent;border:0;border-top:1px solid var(--line);padding:22px 0;position:static;box-shadow:none}.profile-editorial .story-copy{max-width:780px}.profile-editorial .story-copy h2{font-size:1.7rem;line-height:1.6}.profile-editorial .story-copy h3{font-size:1.2rem;margin-top:36px}.profile-editorial .story-copy p{font-size:.95rem;line-height:2}.profile-editorial .activity-list{display:grid;grid-template-columns:1fr;gap:0;margin:32px 0}.profile-editorial .activity-list>div{background:transparent;border:0;border-top:1px solid var(--line);padding:18px 0;box-shadow:none}.profile-editorial .activity-list b{color:#806329;font-size:.7rem;letter-spacing:.1em}.profile-editorial .activity-list p{margin:8px 0}.profile-editorial .contact h2{font-family:var(--display)!important;font-weight:500!important}@media(max-width:820px){.profile-editorial .subpage-hero{padding:38px 0}.profile-editorial .subpage-hero-inner,.profile-editorial .story-grid{grid-template-columns:1fr;gap:28px}.profile-portrait img{height:300px;max-width:420px}.profile-editorial .subpage-hero h1{font-size:2rem}.profile-editorial .story-copy h2{font-size:1.5rem}.profile-editorial .contact h2{font-size:1.8rem}}
/* Shared navigation on all pages. */
.site-header .header-inner{position:relative;flex-wrap:nowrap}.site-header .site-nav{gap:14px}.site-header .site-nav>a{font-size:.72rem}.site-header .menu-button{margin-left:auto}.service-detail .site-header .header-inner{padding-block:0}.site-header .site-nav .nav-cta{font-size:.72rem;padding:12px 14px}
@media(max-width:1150px){.site-header .header-inner{min-height:74px}.site-header .menu-button{display:flex;border:1px solid var(--line);background:none;box-shadow:none;color:var(--ink);padding:8px 12px}.site-header .site-nav{display:none;position:absolute;top:100%;left:-20px;right:-20px;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);max-height:calc(100dvh - 90px);overflow-y:auto;z-index:100}.site-header .site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.site-header .site-nav>a,.site-header .site-nav>a:nth-child(4),.site-header .site-nav>a:nth-child(8){display:block;font-size:.9rem;padding:9px}.site-header .site-nav .nav-cta{font-size:.85rem;text-align:center;margin-top:8px}}

/* 2026-09-13 スマホ確認での修正
   フッター：背景を生成りにしたのに文字色が紺背景用（白・薄い水色）のままで読めなかったため、読める色に。スマホの余白の重なりも整理
   トップ：スマホの最初の画面に写真が入るよう「見出し→写真→LINEボタン→価格→説明」の順に（パソコン表示は変えない）
   固定LINEボタン：最初の画面では隠し、上のボタンを過ぎたら出す（価格に重ならないように） */
.site-footer .footer-inner p{color:#5f5d55}
.site-footer .footer-inner nav a{color:var(--ink)}
.site-footer .copyright{color:#6f6c63;border-top-color:var(--line)}
.mobile-line{transition:opacity .25s ease,visibility .25s ease}
.mobile-line.is-waiting{opacity:0;visibility:hidden;pointer-events:none}
@media(max-width:820px){
.site-footer{padding:36px 0 24px}
.site-footer .footer-inner{gap:18px}
.site-footer .footer-inner nav{gap:0 22px}
.site-footer .footer-inner nav a{display:inline-flex;align-items:center;min-height:40px}
.site-footer .copyright{margin-top:14px;padding-top:14px}
.hero-inner{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:28px}
.hero-copy,.hero-actions{display:contents}
.hero-copy>h1{order:1}
.hero-lead{order:2;margin-top:12px}
.hero .hero-visual{order:3;width:auto;height:210px;margin:18px -20px 0}
.hero-actions .primary{order:4;margin-top:22px;align-self:center}
.hero-consultation-price{order:5;margin:12px 0 0}
.hero-actions .secondary{order:6;align-self:center;margin-top:6px}
.hero-note{order:7;margin-top:4px}
.hero-description{order:8;margin:18px 0 32px}
}
@media(max-width:560px){.hero .hero-visual{height:200px}}
@media(prefers-reduced-motion:reduce){.mobile-line{transition:none}}

/* 2026-09-13 色とフォントの統一・改行の調整（さゆみさんと合意）
   色：生成り・墨・金茶の3つに統一（緑を使わない）
   フォント：明朝は Zen Old Mincho、ゴシックは Zen Kaku Gothic New の各1種類に統一（Webフォントで端末による差をなくす）
   見出し：太すぎる設定（950）と字間を詰める設定（マイナス）をやめ、落ち着いた太さと字間に
   改行：日本語で文字数を半分に割る「行の長さをそろえる指定」をやめ、言葉のまとまりで改行する */
:root{--display:"Zen Old Mincho","Yu Mincho","Hiragino Mincho ProN",serif;--ui-font:"Zen Kaku Gothic New","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
body{letter-spacing:.02em}
h1,h2,h3,h4{letter-spacing:.03em;text-wrap:wrap;word-break:auto-phrase}
h2,h3{font-weight:700}
.hero h1,.about-editorial h2,.service-detail .detail-hero h1,.service-detail .contact h2,.profile-editorial .subpage-hero h1,.profile-editorial .contact h2,.brand-name,.footer-inner b{font-weight:600;letter-spacing:.05em}
p,li,dd,figcaption,summary{text-wrap:pretty}
.home h1,.home h2,.home h3{word-break:keep-all;overflow-wrap:anywhere}
.musubi-inner h2{color:var(--navy)}
.musubi-inner>div p{color:var(--red)}
.musubi-inner>p{color:var(--ink)}
.home .hero-description,.home .worry-grid p,.home .section-heading p{word-break:keep-all;overflow-wrap:anywhere}
/* 浮世絵イラストでは右側に人物がいるため、黒い囲み（hero-manifesto）が人物に重なる。トップでは出さない */
.home .hero-manifesto{display:none}
/* 相談ページ：企業・団体向けAI研修（monrêvu）への案内。上の注意書きと近づけ、リンクの上余白をなくす */
.detail-notice.detail-corporate{margin-top:12px}.detail-corporate .text-link{padding-top:0;margin-left:.3em}
.compact-pricing .detail-notice.detail-corporate{margin-top:16px;background:#eee8dd;border:0;border-left:2px solid #95713c;font-weight:400;font-size:.85rem;line-height:1.9;padding:18px 24px}
/* トップ見出し（2026-09-17「あなたの仕事に合わせて」11文字）が1行に収まるよう、枠の幅に合わせて文字を縮める */
@media(min-width:821px){.home .hero-copy{container-type:inline-size}.home .hero h1{font-size:min(60px,calc(100cqi / 11.6))}}
@media(max-width:820px){.home .hero-inner{container-type:inline-size}.home .hero h1{font-size:min(34px,calc(100cqi / 11.6))}}
@media(min-width:821px){.home .hero .hero-visual{margin-top:96px}}
