/* Pattern A. Each section uses the layout that helps its content be understood. */
.ac-page{--paper:#FBFAF5;--ink:#262420;--green:#2D6358;--yellow:#F0CD55;--blue:#3D5878;--line:#d6d7cb;background:var(--paper);color:var(--ink);font:400 17px/1.9 'Zen Kaku Gothic New','Hiragino Sans',sans-serif;overflow:clip}
.ac-page *{box-sizing:border-box}.ac-page [hidden]{display:none!important}.ac-page h1,.ac-page h2,.ac-page h3,.ac-page p,.ac-page ol{margin:0}.ac-page h1,.ac-page h2{font-family:'Shippori Mincho B1','Hiragino Mincho ProN',serif;font-weight:700;letter-spacing:.025em;line-height:1.55}.ac-page h2{font-size:clamp(30px,3.1vw,44px)}.ac-page h3{font-size:25px;font-weight:700;line-height:1.6}.ac-page p+p{margin-top:22px}.ac-page a{color:inherit}.ac-page img{display:block;max-width:100%;height:auto}.ac-wrap{width:min(1120px,calc(100% - 80px));margin-inline:auto}.ac-section{padding-block:90px}.ac-page [id]{scroll-margin-top:100px}.ac-page :focus-visible{outline:3px solid var(--blue);outline-offset:5px}.ac-eyebrow{font-size:15px;letter-spacing:.08em;font-weight:700;color:var(--green);margin-bottom:20px!important}.ac-caption,.ac-small{font-size:14px;line-height:1.85;color:#51574e}.ac-caption{margin-top:24px!important}.ac-intro{font-size:20px;line-height:1.9}.ac-section-heading{text-align:center;margin-bottom:40px}.ac-section-heading>p:last-child:not(.ac-eyebrow){margin-top:24px}.ac-button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:64px;padding:18px 28px;border:0;border-radius:8px;background:var(--green);color:#fff!important;font:700 18px/1.65 'Zen Kaku Gothic New',sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 5px 0 #1b463e;transition:background .2s,transform .25s,box-shadow .25s}.ac-button:hover{background:#214e44;transform:translateY(-3px);box-shadow:0 8px 0 #1b463e}.ac-button:active{transform:translateY(3px);box-shadow:0 2px 0 #1b463e}.ac-button:disabled{opacity:.6;cursor:wait}.ac-button small{display:block;font-size:14px;font-weight:400}.ac-mobile-break{display:none}
/* A centered promise and an ensemble illustration; no photograph behind the text. */
.ac-hero{padding-top:30px;text-align:center;background:var(--paper)}.ac-hero-copy{position:relative;z-index:1}.ac-hero .ac-eyebrow{margin-bottom:10px!important}.ac-service-name{font-size:21px;font-weight:700;margin-bottom:17px!important}.ac-hero h1{font-size:clamp(34px,3.6vw,54px);line-height:1.5}.ac-hero h1 span{display:inline-block}.ac-hero-lead{margin-top:20px!important;font-size:19px}.ac-hero-art{max-width:860px;margin:15px auto 0;overflow:hidden}.ac-hero-art img{width:100%;height:380px;object-fit:cover;object-position:center 60%;mix-blend-mode:multiply}.ac-hero-bottom{position:relative;z-index:1;display:flex;justify-content:center;align-items:stretch;gap:24px;margin-top:0;padding-bottom:40px}.ac-hero-bottom .ac-button{min-width:350px;text-align:left}.ac-hero-secondary{display:flex;align-items:center;justify-content:center;gap:32px;min-width:290px;padding:20px 30px;background:var(--yellow);border-radius:8px;box-shadow:0 5px 0 #c0a135;text-decoration:none;font-size:18px;font-weight:700;transition:transform .25s}.ac-hero-secondary:hover{transform:translateY(-3px)}.ac-story-nav{display:flex;justify-content:center;gap:42px;padding:22px;background:var(--green);color:#fff;font-size:16px;font-weight:700}.ac-story-nav a{text-decoration:none}.ac-story-nav a:after{content:'↓';margin-left:14px;color:var(--yellow)}
/* Equal panels are for the two equal entry points, not for every section. */
.ac-opening{padding:90px 0;background:#eaf0eb;text-align:center}.ac-story-choices{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:45px auto}.ac-story-choices>a{display:flex;flex-direction:column;padding:34px 36px;background:#fffef9;border:3px solid #cbdcd0;border-radius:18px;text-align:left;text-decoration:none;transition:transform .3s,border-color .3s,box-shadow .3s}.ac-story-choices>a:hover{transform:translateY(-7px);border-color:var(--green);box-shadow:0 12px 24px #2d635812}.ac-story-choices>a>span{font-size:16px;color:var(--green);font-weight:700}.ac-story-choices strong{display:block;font-size:27px;line-height:1.65;margin:20px 0}.ac-story-choices p{font-size:17px;margin-bottom:24px}.ac-story-choices em{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:20px;margin-top:auto;font-style:normal;font-weight:700;color:var(--green)}.ac-opening-answer{font-size:20px}.ac-opening-answer strong{font-size:26px;color:var(--green);display:inline-block;margin-top:14px}
/* A legible, interactive workflow sits on one contrasting stage. */
.ac-flow-story{padding:90px 0;background:var(--green);color:#fff}.ac-flow-story .ac-eyebrow{color:var(--yellow)}.ac-flow-story .ac-reading{max-width:1120px;width:calc(100% - 80px);margin:auto}.ac-flow-story .ac-intro{max-width:900px;margin:auto;text-align:center}.ac-flow-story .ac-caption{color:#eef3ec;text-align:center}.ac-switch{display:flex;gap:10px;margin:32px 0 0;padding:9px;background:#214e44;border-radius:13px 13px 0 0}.ac-switch button{flex:1;min-height:60px;padding:16px;border:0;background:transparent;border-radius:7px;color:#fff;font:700 18px/1.6 'Zen Kaku Gothic New',sans-serif;cursor:pointer;transition:background .25s,color .25s}.ac-switch button[aria-pressed=true]{background:var(--yellow);color:var(--ink)}.ac-flow-panel{background:var(--paper);color:var(--ink);padding:38px 42px;border-radius:0 0 12px 12px}.ac-flow-panel h3{font-size:28px;text-align:center}.ac-ribbon{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:30px 0!important;gap:32px}.ac-ribbon li{position:relative;background:#fff;border:2px solid #dde4da;border-radius:10px;padding:24px 18px;text-align:center}.ac-ribbon li+li:before{content:'→';position:absolute;left:-29px;top:40%;color:var(--green);font-size:23px}.ac-ribbon b{color:var(--green);font-size:21px}.ac-ribbon p{font-size:17px;margin-top:12px}.ac-flow-panel[data-flow-panel=after] .ac-ribbon li{border-color:#b9d0bc;background:#eef4ea}.ac-flow-panel>p{max-width:880px;margin:auto}.ac-disclosure{border-block:1px solid var(--line);margin-top:30px}.ac-page summary{cursor:pointer;list-style:none;font-weight:700}.ac-page summary::-webkit-details-marker{display:none}.ac-disclosure summary,.ac-notebook summary{display:flex;justify-content:space-between;gap:18px;padding:22px 0;font-size:17px}.ac-page details[open]>summary>span{transform:rotate(45deg)}.ac-page summary>span{transition:transform .25s;flex-shrink:0}.ac-disclosure>p{padding-bottom:24px}.ac-disclosure>h3{margin:20px 0 12px}.ac-disclosure>a{display:inline-block;margin-bottom:24px}
/* The handover conversation is beside an interactive notebook. */
.ac-handover-story{padding:90px 0;background:var(--paper)}.ac-handover-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.ac-handover-intro h2{font-size:36px}.ac-handover-intro img{width:100%;margin:24px auto;mix-blend-mode:multiply}.ac-handover-intro>p:last-child{margin-top:22px}.ac-notebook{background:white;padding:30px 34px;border:2px solid #d8e1e6;border-top:10px solid var(--blue);border-radius:4px 4px 14px 14px;box-shadow:8px 9px 0 #e6e9e4}.ac-notebook h3{font-size:27px;margin-bottom:26px}.ac-notebook details{border-top:1px solid var(--line)}.ac-notebook summary{color:var(--blue)}.ac-notebook details>p{padding-bottom:24px}.ac-notebook .ac-eyebrow{font-size:14px;color:var(--blue)}
/* Implementation: supporting photo + explicit deliverables. */
.ac-implementation{padding:90px 0;background:#eef1e9}.ac-implementation-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;background:#fffef9;padding:30px;border-radius:14px}.ac-wide-art{width:100%;border-radius:8px}.ac-implementation-copy p+p{margin-top:24px}.ac-keeps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}.ac-keeps>span{grid-column:1/-1;font-size:19px;font-weight:700;color:var(--green)}.ac-keeps p{background:white;padding:25px 16px;border-radius:8px;text-align:center;font-size:17px;font-weight:700;margin:0!important;border-bottom:4px solid var(--green)}.ac-keeps p:before{content:'✓';display:block;color:var(--green);font-size:25px;margin-bottom:10px}.ac-experience{display:grid;grid-template-columns:1fr 1.3fr;gap:60px}.ac-experience .ac-section-heading{text-align:left}.ac-experience-body>.ac-intro{font-weight:700}.ac-plan{background:var(--yellow)}.ac-plan .ac-wrap>h2,.ac-plan .ac-wrap>.ac-eyebrow,.ac-plan-lead{text-align:center}.ac-plan .ac-eyebrow{color:var(--ink)}.ac-plan-lead{margin-top:25px!important}.ac-price{font-size:26px;font-weight:700;text-align:center;margin:30px 0 25px!important}.ac-plan .ac-button{display:flex;width:max-content;max-width:100%;margin:auto}.ac-process{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:55px!important}.ac-process li{position:relative;background:var(--paper);padding:25px 22px;border-radius:10px}.ac-process b{display:block;font-size:40px;line-height:1.2;color:var(--green)}.ac-process h3{font-size:22px;margin:18px 0 12px}.ac-process p{font-size:16px}.ac-plan .ac-disclosure{border-color:#aa9033}.ac-area{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #aa9033;padding-top:30px;margin-top:32px}.ac-area p{font-size:22px;font-weight:700}.ac-area a{align-self:center}.ac-faq{display:grid;grid-template-columns:1fr 2fr;gap:55px}.ac-faq details{border:1px solid var(--line);border-radius:8px;padding-inline:24px;margin-bottom:14px;background:white}.ac-faq summary{position:relative;padding:24px 28px 24px 0;font-size:17px}.ac-faq summary:after{content:'＋';position:absolute;right:0;top:24px;color:var(--green)}.ac-faq details[open] summary:after{content:'−'}.ac-faq details>p{padding-bottom:25px}
/* A first conversation, with preparation and cost clear before the form. */
.ac-contact{background:#eaf0eb}.ac-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.ac-consult-photo{width:100%;margin-bottom:25px;mix-blend-mode:multiply}.ac-contact h2{font-size:35px}.ac-contact h2+p{margin-top:24px}.ac-consult-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.ac-consult-facts p{margin:0!important;padding:14px 8px;background:#fffef9;border-radius:8px;text-align:center;font-size:14px}.ac-consult-facts strong{display:block;font-size:21px;color:var(--green)}.ac-contact-next{padding-left:24px;margin:25px 0!important;font-size:16px}.ac-contact .ac-text-link{display:inline-block;margin-top:22px}.ac-form-panel{padding:32px;background:white;border-top:8px solid var(--green);border-radius:6px 6px 14px 14px}.ac-form-panel h3{font-size:24px}.ac-form-panel label{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:700;margin-top:24px}.ac-form-panel label>span{font-size:12px;color:#fff;background:var(--green);padding:1px 6px}.ac-form-panel label>small{font-size:14px;font-weight:400}.ac-form-panel input,.ac-form-panel textarea{width:100%;display:block;margin-top:9px;padding:12px;border:1px solid #98a391;border-radius:4px;background:#fffef9;color:var(--ink);font:400 17px/1.8 'Zen Kaku Gothic New',sans-serif}.ac-form-panel textarea{resize:vertical;min-height:180px}.ac-form-panel .ac-small{margin-top:18px}.ac-form-panel .ac-button{width:100%;margin-top:24px}.ac-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.ac-form-panel #ac-form-status:not(:empty){margin-top:22px;font-weight:700}.ac-form-panel #ac-form-status[data-error=true]{color:#8d3026}.ac-share{display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding-block:28px;font-size:14px}.ac-share button{font:inherit;background:none;border:0;text-decoration:underline;cursor:pointer;color:var(--green)}.ac-share>a{margin-left:auto}.ac-share #ac-share-status{overflow-wrap:anywhere;max-width:100%}.ac-image-note{text-align:center;padding:15px 24px 40px;font-size:13px;color:#51574e}.ac-floating-consult{position:fixed;bottom:22px;right:22px;z-index:80;font-size:16px;min-height:56px;padding:13px 20px}.ac-floating-consult>span{font-size:13px;font-weight:400}
@media(max-width:1000px){.ac-wrap,.ac-flow-story .ac-reading{width:calc(100% - 48px)}.ac-story-nav{gap:24px}.ac-story-choices>a{padding:28px}.ac-story-choices strong{font-size:24px}.ac-handover-grid,.ac-contact-grid{gap:30px}.ac-handover-intro h2{font-size:30px}.ac-notebook{padding:25px}.ac-process{grid-template-columns:1fr 1fr}.ac-implementation-grid{gap:25px;padding:24px}.ac-keeps{grid-template-columns:1fr 1fr}.ac-hero-art{max-width:780px}.ac-hero-bottom{margin-top:0}.ac-consult-facts{gap:6px}.ac-contact h2{font-size:30px}}
@media(max-width:760px){.ac-page{font-size:16px;line-height:1.9}.ac-wrap,.ac-flow-story .ac-reading{width:calc(100% - 40px)}.ac-section,.ac-opening,.ac-flow-story,.ac-handover-story,.ac-implementation{padding-block:60px}.ac-page h2{font-size:29px;line-height:1.65}.ac-page h3{font-size:23px}.ac-eyebrow{font-size:14px;margin-bottom:18px!important}.ac-caption,.ac-small{font-size:14px}.ac-intro{font-size:18px}.ac-mobile-break{display:block}.ac-hero{padding-top:32px}.ac-hero h1{font-size:30px;line-height:1.55}.ac-hero h1 span:last-child{max-width:12em}.ac-hero .ac-eyebrow{font-size:13px;letter-spacing:0}.ac-service-name{font-size:18px}.ac-hero-lead{font-size:16px}.ac-hero-art{width:100%;margin-top:24px}.ac-hero-art img{height:auto;object-fit:contain}.ac-hero h1>span:last-child{white-space:nowrap}.ac-hero h1 .ac-mobile-break{display:block}.ac-hero-bottom{display:grid;gap:16px;margin-top:0;padding:10px 0 36px}.ac-hero-bottom .ac-button,.ac-hero-secondary{min-width:0;width:100%;font-size:18px}.ac-hero-secondary{padding:16px;min-height:58px}.ac-story-nav{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:12px 14px;font-size:14px}.ac-story-nav a{padding:10px;text-align:center}.ac-story-nav a:after{margin-left:8px}.ac-story-choices{grid-template-columns:1fr;gap:20px;margin:30px 0}.ac-story-choices>a{padding:26px 24px}.ac-story-choices strong{font-size:24px;margin:16px 0}.ac-story-choices p{font-size:16px}.ac-story-choices>a>span{font-size:14px}.ac-opening-answer{font-size:17px;text-align:left}.ac-opening-answer strong{font-size:22px}.ac-section-heading{margin-bottom:28px}.ac-flow-story .ac-intro{text-align:left}.ac-switch{gap:4px;padding:6px}.ac-switch button{font-size:15px;padding:13px 6px}.ac-flow-panel{padding:24px 20px}.ac-flow-panel h3{font-size:23px;text-align:left}.ac-ribbon{grid-template-columns:1fr;gap:25px;margin:25px 0!important}.ac-ribbon li{padding:18px}.ac-ribbon li+li:before{content:'↓';top:-29px;left:calc(50% - 9px)}.ac-ribbon b{font-size:20px}.ac-ribbon p{font-size:16px;margin-top:8px}.ac-disclosure summary,.ac-notebook summary{font-size:16px}.ac-handover-grid{grid-template-columns:1fr;gap:30px}.ac-handover-intro h2{text-align:center;font-size:29px}.ac-handover-intro>.ac-eyebrow{text-align:center}.ac-handover-intro img{max-width:460px}.ac-notebook{padding:26px 22px}.ac-notebook h3{font-size:25px}.ac-implementation-grid{grid-template-columns:1fr;padding:20px;gap:24px}.ac-keeps{gap:12px}.ac-keeps p{font-size:16px;padding:18px 10px}.ac-experience{display:block}.ac-experience .ac-section-heading{text-align:center}.ac-price{font-size:23px}.ac-plan .ac-button{font-size:17px}.ac-process{grid-template-columns:1fr;gap:16px;margin-top:36px!important}.ac-process li{display:grid;grid-template-columns:45px 1fr;gap:12px;padding:24px}.ac-process b{grid-row:span 2;font-size:31px}.ac-process h3{margin:0;font-size:23px}.ac-process p{grid-column:2;font-size:16px}.ac-area{display:block}.ac-area p{font-size:21px}.ac-area a{display:block;margin-top:20px}.ac-faq{display:block}.ac-faq-list{margin-top:30px}.ac-faq details{padding-inline:18px}.ac-faq summary{font-size:16px}.ac-contact-grid{grid-template-columns:1fr;gap:35px}.ac-contact h2{font-size:27px}.ac-contact .ac-eyebrow{text-align:center}.ac-consult-photo{margin-bottom:20px}.ac-form-panel{padding:26px 20px}.ac-form-panel h3{font-size:22px}.ac-form-panel label{font-size:16px}.ac-share{gap:15px}.ac-share>a{margin-left:0}.ac-floating-consult{bottom:12px;right:12px;left:12px;justify-content:center;gap:14px;font-size:16px;min-height:54px}.ac-floating-consult>span{font-size:12px}.ac-image-note{padding-bottom:85px}}
@media(max-width:359px){.ac-hero h1{font-size:26px}.ac-page h2,.ac-handover-intro h2,.ac-contact h2{font-size:25px}.ac-story-choices>a{padding:22px 18px}.ac-story-choices strong{font-size:22px}.ac-contact h2{font-size:24px}.ac-consult-facts strong{font-size:18px}.ac-consult-facts p{font-size:12px}.ac-button{font-size:16px}.ac-story-nav{font-size:13px}.ac-flow-panel{padding:24px 16px}}
@media(prefers-reduced-motion:reduce){.ac-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.ac-button:hover,.ac-story-choices>a:hover,.ac-hero-secondary:hover{transform:none}}
@media print{#blog-nav,#mobile-drawer,#mobile-overlay,footer,.ac-story-nav,.ac-contact,.ac-share,.ac-button,.ac-switch,.ac-floating-consult{display:none!important}.ac-wrap,.ac-flow-story .ac-reading{width:100%}.ac-page [data-flow-panel][hidden]{display:block!important}.ac-page details>p{display:block!important}.ac-hero-art{max-width:400px}.ac-section{padding-block:25px}.ac-flow-story{background:white;color:#262420}.ac-page h2{font-size:24pt}.ac-notebook{box-shadow:none}}

/* Japanese phrase-aware wrapping; explicit units below provide browser-independent protection. */
.ac-page :is(h1,h2,h3,p,strong,summary,label,button,em){word-break:auto-phrase;overflow-wrap:normal;line-break:strict}

.ac-page .ac-unit{display:inline-block;white-space:nowrap;word-break:normal;overflow-wrap:normal}
/* Keep desktop columns from forcing very narrow Japanese labels on tablets. */
@media(min-width:761px) and (max-width:900px){
 .ac-handover-grid,.ac-contact-grid{grid-template-columns:1fr}
 .ac-ribbon{gap:16px}.ac-ribbon li{padding-inline:10px}
 .ac-ribbon li+li:before{left:-16px;font-size:17px}
}
