:root{--paper:#fffdfb;--ink:#433b37;--muted:#72665f;--coral:#b95b47;--peach:#fbebe3;--pale:#fff5ee;--line:#e8ddd4;--green:#427260;--green-pale:#f0f5ef;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/2 "Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-feature-settings:"palt";overflow-wrap:anywhere}h2{font-size:clamp(1.65rem,3.2vw,2.6rem);font-weight:600;line-height:1.75;letter-spacing:.03em}h3{font-size:1.2rem;font-weight:600;line-height:1.8}p+p{margin-top:1.2em}em{font-style:normal;color:var(--coral)}[hidden]{display:none!important}.wrap{width:min(1100px,calc(100% - 80px));margin-inline:auto}.narrow{max-width:800px}.section{padding-block:100px}.kicker{font-size:.8rem;letter-spacing:.12em;color:var(--coral);font-weight:600;margin-bottom:24px}.eyebrow{font-size:.9rem;letter-spacing:.12em;margin-bottom:26px}.note{font-size:.78rem;line-height:1.85;color:var(--muted)}.mini-label{font-size:.75rem;letter-spacing:.16em;color:var(--muted)}.center{text-align:center}.skip{position:fixed;top:-80px;background:white;padding:12px;z-index:100}.skip:focus{top:8px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}.header{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:Georgia,serif;font-size:1.8rem;letter-spacing:.18em;text-decoration:none;line-height:1.2;color:#624c40}.brand span{display:block;font:400 .72rem/1.8 "Yu Gothic",sans-serif;letter-spacing:.06em;margin-top:6px}.header nav{display:flex;gap:28px}.header nav a,.header-link{font-size:.85rem;text-decoration:none}.header-link{border-bottom:1px solid var(--coral);padding-block:6px;color:var(--coral)}.hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:50px;padding-top:50px;padding-bottom:58px}.hero h1{font-size:clamp(2.2rem,3.9vw,3.15rem);font-weight:550;line-height:1.65;letter-spacing:.015em}.hero h1>span{display:block}mark{color:var(--ink);background:linear-gradient(transparent 77%,#f3c7b5 77%,#f3c7b5 95%,transparent 95%)}.hero-sub{margin-top:26px;font-size:1rem;line-height:2}.hero-actions{margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:60px;background:var(--coral);color:white;padding:16px 24px;border-radius:12px;text-decoration:none;font:600 .95rem/1.6 inherit;transition:background .2s,transform .2s;border:1px solid transparent;text-align:center}.button small{font-size:.75rem;font-weight:400;white-space:nowrap}.button>span{font-size:1.3rem;flex-shrink:0}.button:hover{background:#a84b39;transform:translateY(-2px)}.secondary{display:inline-block;font-size:.85rem;color:var(--muted)}.hero-actions .secondary{display:block;margin-top:14px}.hero-portrait{position:relative;text-align:center;padding:30px 16px;background:linear-gradient(150deg,#fff6dd,#fff0e6 60%,#f8ede6);border-radius:48% 48% 42% 42% / 30% 30% 34% 34%;margin-top:15px}.hero-portrait img{width:76%;margin:18px auto;border-radius:50%}.portrait-note{font-size:1rem;line-height:1.9;letter-spacing:.09em;transform:rotate(-4deg)}.portrait-note span{color:var(--coral)}.portrait-caption{display:flex;align-items:center;justify-content:center;gap:14px}.portrait-caption b{font:1.5rem Georgia,serif;letter-spacing:.12em}.portrait-caption span{font-size:.75rem}.portrait-meta{font-size:.78rem;line-height:1.9;margin-top:12px}.credentials{display:flex;align-items:center;justify-content:center;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.credentials span{font-size:.78rem;padding:0 24px;border-right:1px solid var(--line)}.credentials span:last-child{border-right:0}.hero-note{text-align:center;margin-top:12px}.intro-strip{text-align:center;padding:44px 16px 50px;font-size:1.13rem;letter-spacing:.08em}.intro-strip span{color:var(--coral)}.empathy{background:var(--pale);border-radius:90px 0 0 0}.empathy h2{text-align:center}.empathy .kicker{text-align:center}.checklist{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:0}.checklist li{padding:17px 8px 17px 36px;border-bottom:1px solid var(--line);position:relative}.checklist li:before{content:'✓';position:absolute;left:6px;color:var(--coral);font-size:1.1rem}.empathy-bottom{display:flex;align-items:center;gap:35px;margin:40px auto 0}.empathy-bottom img{width:135px;flex-shrink:0;mix-blend-mode:multiply}.empathy-bottom p:first-child{font-weight:600;font-size:1.08rem}.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}.story .section-heading{align-self:start;position:sticky;top:40px}.story-body blockquote{margin:32px 0;padding:20px 24px;background:var(--pale);border-left:3px solid #d8957f;font-size:1.07rem}.before-after{margin:32px 0 38px}.before-after img{border-radius:14px;width:100%}.before-after figcaption{font-size:.88rem;line-height:1.9;margin-top:14px}.before-after figcaption .note{display:block;margin-top:8px}.story-body h3{font-size:1.45rem;margin-bottom:24px}.choices{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.choices li{padding:12px 14px;background:#f7f2ed;border-radius:8px;font-size:.88rem}.story-conclusion{margin-top:30px!important}.story-conclusion strong{font-weight:600;color:var(--coral)}.value{background:var(--green-pale)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:44px}.value-grid article{position:relative;border-top:1px solid #c3d0c3;padding:32px 12px 12px 0}.num{position:absolute;right:8px;top:18px;font:italic 3.2rem Georgia,serif;color:#cad7c7}.value-grid h3{margin:20px 0 16px;color:#3e5e4b}.value-grid p:last-child{max-width:285px}.transition{text-align:center;margin-top:52px}.learn .section-heading{max-width:800px}.learn .section-heading>p:not(.kicker){margin-top:22px}.subject-list{margin-top:40px;border-top:1px solid var(--line)}.subject-list article{display:grid;grid-template-columns:285px 1fr;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.subject-title{display:flex;align-items:baseline;gap:20px}.subject-title>span{font:italic 1.5rem Georgia,serif;color:var(--coral)}.subject-title h3{font-size:1.05rem}.tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0}.tags li{font-size:.9rem;border:1px solid #e9d8cb;background:#fff7f0;padding:7px 16px;border-radius:7px;overflow-wrap:anywhere}.subject-list article:nth-child(2) .tags li{background:#fcf1ef;border-color:#ebd5cf}.subject-list article:nth-child(3) .tags li{background:#f3f6ef;border-color:#dae3cf}.learn-cta{margin-top:46px}.learn-cta h3{font-size:1.2rem}.learn-cta p{margin-top:15px}.learn-cta .button{margin-top:26px}.environment{background:#f8f4ef}.environment-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px}.lead{font-size:1.25rem;margin-top:24px}.environment-grid>div>p:last-child{margin-top:25px}.simple-list{list-style:none;padding:0}.simple-list li{padding:12px 0 12px 24px;border-bottom:1px solid var(--line);position:relative}.simple-list li:before{content:'·';position:absolute;left:6px;color:var(--coral);font-weight:bold}.pending-label{display:inline-block;font-size:.78rem;color:var(--muted);border:1px solid #c8b9ab;border-radius:5px;padding:3px 10px;margin-bottom:15px}.support-item{border-bottom:1px solid var(--line);padding-block:16px}.interview-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;margin-top:38px}.video-slot{aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;border:1px solid var(--line);background:linear-gradient(140deg,#f6eee5,#fff9f3);border-radius:16px;overflow:hidden}.video-slot h3{margin-top:20px;font-size:1.3rem}.video-slot>p:last-child{font-size:.88rem;color:var(--muted);margin-top:15px}.video-slot iframe{width:100%;height:100%;border:0}.video-slot:has(iframe){padding:0}.video-play{font:inherit;background:var(--coral);color:white;border:0;padding:18px 24px;border-radius:10px;cursor:pointer}.profile-top{display:flex;align-items:center;gap:22px}.profile-top img{width:84px;border-radius:50%}.profile-top h3{font:1.8rem Georgia,serif;letter-spacing:.14em}.profile-top span{font-size:.8rem}.profile-list{padding-left:20px;margin-block:22px;font-size:.9rem}.profile>p{font-size:.9rem}.role{border-top:1px solid var(--line);padding-top:18px}.main-invitation{background:var(--peach);border-radius:0 80px 0 80px}.main-invitation h2{font-size:clamp(1.5rem,3vw,2.2rem)}.main-invitation p:not(.kicker){margin-top:26px}.main-invitation .button{margin-top:32px}.consultation{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.consultation .kicker{color:var(--green)}.consultation .simple-list{margin-top:24px}.consultation-card{background:var(--green-pale);padding:38px;border-radius:var(--radius)}.line-button{background:var(--green);margin-top:26px;width:100%}.line-button:hover{background:#315d4d}.consultation-card .note{margin-top:20px}.faq{background:#f9f6f2}.faq-list{margin-top:35px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0 4px}summary{list-style:none;cursor:pointer;position:relative;padding:22px 30px 22px 34px;font-size:1rem;font-weight:500}summary::-webkit-details-marker{display:none}summary:before{content:'Q';font:1.1rem Georgia,serif;position:absolute;left:0;top:28px;color:var(--coral)}summary:after{content:'＋';position:absolute;right:0;top:22px;color:var(--coral)}details[open] summary:after{content:'−'}details>p{padding:0 28px 22px 34px;font-size:.95rem;color:var(--muted)}details>.inline-link{display:inline-block;margin:0 0 24px 34px;color:var(--coral);font-size:.9rem}.closing h2{font-weight:500}.closing-text{margin:38px auto 0;max-width:760px}.closing-text p{line-height:2.25}.closing-invitation{font-size:1.23rem;font-weight:600;margin:36px 0 26px}.final-secondary{font-size:.85rem;margin-top:25px}.final-secondary a{margin-top:6px}.signature{display:block;margin:40px auto 0;font:italic 2.5rem Georgia,serif;color:#b1927d}footer{background:#f1ece6;padding:55px 0 28px}.legal{margin-top:28px;max-width:950px;font-size:.78rem;line-height:1.9;color:#675d55}.link-notice{font-size:.8rem;padding:15px;border:1px solid #d5c8bb;margin-top:24px}.copyright{font-size:.75rem;margin-top:28px;color:var(--muted)}.sticky-cta{display:none}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#433b37;color:#fff;padding:16px 22px;border-radius:10px;z-index:30;width:max-content;max-width:calc(100% - 32px);font-size:.9rem;box-shadow:0 8px 24px #433b3720}.mobile-only{display:none}.noscript-note{padding:20px} @media(min-width:1400px){.hero h1{font-size:3.3rem}.hero{gap:90px}}
@media(max-width:950px){.wrap{width:calc(100% - 48px)}.header nav{gap:18px}.header-link{display:none}.hero{gap:28px}.hero h1{font-size:2.2rem}.hero-portrait{padding:24px 10px}.portrait-meta{font-size:.75rem}.portrait-caption{flex-direction:column;gap:6px}.credentials span{padding-inline:12px}.story{gap:40px}.subject-list article{grid-template-columns:235px 1fr;gap:20px}.environment-grid,.consultation{gap:35px}.interview-grid{gap:28px}.consultation-card{padding:26px}.button{gap:13px}}
@media(max-width:700px){html{scroll-padding-top:15px}.wrap{width:calc(100% - 40px)}.section{padding-block:66px}.header{min-height:82px}.brand{font-size:1.55rem}.brand span{font-size:.7rem}.header nav{display:none}.header-link{display:block;font-size:.78rem}.hero{grid-template-columns:1fr;gap:30px;padding:25px 0 35px}.eyebrow{font-size:.8rem;margin-bottom:17px}.hero h1{font-size:clamp(1.82rem,7.6vw,2.65rem);line-height:1.65;letter-spacing:0}.hero h1>span{display:inline}.hero h1>span:nth-child(2):after{content:'';display:block}.hero-sub{font-size:.95rem;margin-top:19px}.hero-actions{margin-top:24px}.hero-actions .secondary{font-size:.78rem;text-align:center}.button{font-size:.88rem;padding:15px 16px;gap:12px;width:100%;min-height:58px}.button small{font-size:.7rem}.hero-portrait{width:100%;max-width:390px;margin:0 auto;padding:20px;display:grid;grid-template-columns:138px 1fr;gap:0 15px;align-items:center;border-radius:24px;text-align:left}.hero-portrait img{width:138px;grid-column:1;grid-row:1/4;margin:0;border-radius:50%}.portrait-note{grid-column:2;grid-row:1;transform:none;font-size:.8rem;letter-spacing:0}.portrait-caption{grid-column:2;grid-row:2;align-items:flex-start;gap:2px;margin-top:12px}.portrait-caption b{font-size:1.2rem}.portrait-caption span{font-size:.72rem}.portrait-meta{grid-column:1/3;grid-row:4;text-align:center;margin-top:12px;font-size:.75rem}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:14px 4px;padding-block:20px}.credentials span{font-size:.72rem;padding-inline:8px;text-align:center;border:0}.hero-note{text-align:left;font-size:.75rem}.intro-strip{padding:30px 20px 38px;font-size:1rem;line-height:2}.intro-strip span{display:block}.empathy{border-radius:44px 0 0 0}.kicker{font-size:.75rem;margin-bottom:16px}.checklist{margin-top:26px}.checklist li{font-size:.95rem;padding-block:14px}.empathy-bottom{gap:15px;align-items:start;margin-top:28px}.empathy-bottom img{width:80px;margin-top:8px}.empathy-bottom p{font-size:.9rem}.empathy-bottom p:first-child{font-size:.95rem}.story{display:block}.story .section-heading{position:static;margin-bottom:30px}.story-body blockquote{padding:18px;font-size:1rem;margin-block:26px}.choices{gap:8px}.choices li{font-size:.85rem;padding:12px}.story-body h3{font-size:1.3rem}.value-grid{grid-template-columns:1fr;gap:14px;margin-top:25px}.value-grid article{padding-top:24px}.value-grid article p:last-child{max-width:none}.value-grid h3{margin:10px 0}.num{top:12px}.transition{font-size:.95rem;margin-top:30px}.subject-list article{display:block;padding-block:23px}.subject-title{gap:16px;margin-bottom:15px}.tags{gap:8px}.tags li{font-size:.83rem;padding:6px 11px}.learn-cta h3{font-size:1.1rem}.learn-cta{text-align:left;margin-top:32px}.learn-cta p{font-size:.93rem}.environment-grid,.interview-grid,.consultation{grid-template-columns:1fr;gap:32px}.lead{font-size:1.15rem}.video-slot{aspect-ratio:16/11;padding:20px}.video-slot h3{font-size:1.1rem}.profile-top img{width:76px}.main-invitation{border-radius:0 40px 0 40px}.main-invitation h2{font-size:1.52rem}.main-invitation p{font-size:.95rem}.consultation-card{padding:24px 20px}.faq summary{font-size:.95rem;padding-left:30px}.closing-text{text-align:left;margin-top:26px}.closing-text br{display:none}.closing-text p{line-height:2.2}.closing-invitation{font-size:1.1rem}.signature{margin-top:30px}footer{padding-bottom:115px}.sticky-cta{display:block;position:fixed;bottom:0;left:0;width:100%;z-index:20;background:#fffdfbf5;border-top:1px solid var(--line);padding:10px 20px calc(10px + env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.sticky-cta .button{min-height:48px;padding:10px 16px;max-width:480px;margin:auto;display:flex}.toast{bottom:100px}.mobile-only{display:block}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}} 
.button{font-family:inherit;font-size:.95rem;font-weight:600;line-height:1.6}
.joy-illustration{width:112px;margin:0 auto 22px;mix-blend-mode:multiply}
.empathy-bottom img{width:100px}
.hero>*,.hero-portrait>*,.story>*,.environment-grid>*,.interview-grid>*,.consultation>*{min-width:0}
.button{overflow-wrap:anywhere}
@media(max-width:700px){
 html{scroll-padding-bottom:110px}
 .hero-portrait{grid-template-columns:minmax(85px,38%) minmax(0,1fr)}
 .hero-portrait img{width:100%}
 .empathy-bottom{display:grid;grid-template-columns:70px minmax(0,1fr);gap:18px}
 .empathy-bottom img{width:70px;margin-top:0}
 .empathy-bottom p,.empathy-bottom p:first-child{font-size:1rem}
 .empathy-bottom br{display:none}
 .joy-illustration{width:90px;margin-bottom:20px}
 .learn-cta>h3{text-align:center}
 .credentials span,.tags li,.choices li,.secondary,.hero-actions .secondary{font-size:.875rem}
 .checklist li,.learn-cta p:not(.note),.main-invitation p:not(.note):not(.kicker),.faq summary,details>p{font-size:1rem}
 .hero-actions .button{flex-wrap:wrap;column-gap:12px;row-gap:4px}
 .sticky-cta .button{flex-wrap:wrap;row-gap:0}
 .toast{bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){
 .wrap{width:calc(100% - 32px)}
 .header{gap:12px;flex-wrap:wrap;padding-block:14px}
 .header-link{font-size:.75rem}
 .empathy-bottom{display:flex;flex-direction:column;gap:14px}
 .empathy-bottom img{align-self:center;width:68px}
 .choices{grid-template-columns:1fr}
 .consultation-card{padding:22px 16px}
}
@media(max-width:700px){.button{font-size:.88rem}.hero h1>span:nth-child(1),.hero h1>span:nth-child(2){display:block}.hero h1>span:nth-child(2):after{display:none}}

/* 柔らかな和文書体。読み込み中・オフライン時はメイリオ等で表示。 */
.brand,.portrait-caption b,.profile-top h3,.signature{font-family:var(--font-jp);font-style:normal;letter-spacing:.05em;font-weight:500}
.closing-routes{margin-top:32px}.closing-routes h3{margin-bottom:20px}
.closing-text strong{font-weight:500;color:var(--coral)}
.video-slot:has(iframe){position:relative;aspect-ratio:16/9;padding:0;min-height:0;min-width:0;width:100%}
.video-slot iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
.video-fallback{font-size:.875rem;margin-top:12px;color:var(--muted)}
:root{--font-jp:"Zen Kaku Gothic New","Meiryo","メイリオ","Hiragino Kaku Gothic ProN",sans-serif}
body,.brand span{font-family:var(--font-jp)}
body{font-weight:400;line-height:1.95;letter-spacing:.01em}
h1,h2,h3{font-feature-settings:normal;letter-spacing:0;font-weight:500;line-break:strict;overflow-wrap:normal}
.hero h1{font-size:clamp(2.05rem,3.5vw,2.85rem);font-weight:500;line-height:1.65;letter-spacing:0}
.hero h1>span{display:inline}
.hero h1>span:nth-child(2):after{content:"";display:block;height:.22em}
h2,.closing h2{font-weight:500;line-height:1.65}
.kicker,.eyebrow{font-weight:500;letter-spacing:.05em}
.portrait-note,.intro-strip{letter-spacing:.03em}
.button,.empathy-bottom p:first-child,.closing-invitation,.story-conclusion strong{font-weight:500}
.hero-sub{line-height:1.95}
@media(max-width:700px){
 .hero h1{font-size:clamp(1.65rem,6.8vw,2.2rem);line-height:1.7}
 .hero h1>span:nth-child(1),.hero h1>span:nth-child(2){display:inline}
 .hero h1>span:nth-child(2):after{display:block;height:.25em}
 .hero h1>span:nth-child(2),.hero h1>span:nth-child(4){white-space:nowrap}
 h2{font-size:clamp(1.5rem,6.2vw,1.85rem);line-height:1.7}
}
