@charset "UTF-8";
:root{--navy:#062640;--ink:#102b40;--orange:#ff7109;--deep-orange:#ae3e00;--cream:#fcf9f0;--line:#dedfdc;--muted:#53606a;--white:#fff;--max:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.95;font-weight:500;background:#fff;overflow-wrap:anywhere}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto;vertical-align:middle}figure,p,h1,h2,h3,ul,ol{margin:0}p+p{margin-top:1.2em}h2,h3{font-feature-settings:"palt";text-wrap:pretty}h2{font-size:clamp(1.8rem,3.25vw,2.75rem);font-weight:900;line-height:1.65;letter-spacing:.01em}h3{line-height:1.65;font-weight:800}a:focus-visible,summary:focus-visible{outline:3px solid #007dae;outline-offset:6px}section[id]{scroll-margin-top:20px}.container{max-width:var(--max);width:calc(100% - 80px);margin-inline:auto}.narrow{max-width:880px}.section{padding:100px 0}.eyebrow{color:var(--deep-orange);font-size:.875rem;font-weight:800;letter-spacing:.1em;display:flex;align-items:center;gap:12px;margin-bottom:18px}.eyebrow:before{content:"";display:inline-block;width:30px;height:3px;background:var(--orange);flex-shrink:0}.small{font-size:.875rem;line-height:1.8;color:var(--muted)}.center{text-align:center;margin-top:36px}.marker{background:linear-gradient(transparent 72%,#ffca83 72%,#ffca83 94%,transparent 94%)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:20px;z-index:50;padding:12px;background:white}.skip-link:focus{top:10px}
.site-header{min-height:88px;padding:15px 3%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid #ecece8}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.3rem;font-weight:800;line-height:1.4;flex-shrink:0}.brand .brand-mark{width:45px;height:45px;object-fit:contain}.brand small{display:block;font-size:.75rem;font-weight:500;margin-top:5px;letter-spacing:.05em}.site-header nav{display:flex;gap:24px;font-size:.875rem;font-weight:700}.site-header nav a{text-decoration:none}.site-header nav a:hover{color:var(--deep-orange)}.header-cta{padding:12px 20px;background:var(--navy);color:#fff;text-decoration:none;font-size:.875rem;font-weight:700;white-space:nowrap}.header-cta span{margin-left:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;max-width:100%;min-height:68px;padding:18px 28px;border-radius:3px;background:var(--orange);color:var(--navy);font-size:1.0625rem;font-weight:900;line-height:1.6;text-decoration:none;box-shadow:0 5px 0 #c94700;transition:background .2s,transform .2s}.button span{font-size:1.5rem;flex-shrink:0}.button:hover{background:#ff9135;transform:translateY(-2px)}
.hero{background:var(--cream)}.hero-image{display:block;width:100%;max-width:1672px;margin:auto}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;padding-top:34px;padding-bottom:34px}.hero-lead{font-size:1.125rem;font-weight:700;line-height:1.8}.hero-lead strong{color:var(--deep-orange)}.hero-bottom p+p{margin-top:8px;font-size:.875rem}.hero-action{text-align:center}.hero-action .button{width:100%;font-size:1rem;padding-inline:16px}.hero-action .small{margin-top:12px}.service-strip{display:flex;justify-content:center;gap:0;background:var(--navy);color:#fff;padding:20px}.service-strip span{padding:0 38px;font-size:.9375rem;line-height:1.5;border-right:1px solid #ffffff55}.service-strip span:last-child{border:0}
.problem{background:#f5f6f6}.problem-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px 70px}.problem h2{font-size:clamp(1.8rem,3.2vw,2.8rem)}.problem em{font-style:normal;color:var(--deep-orange)}.section-intro{margin-top:22px}.checks{list-style:none;padding:0}.checks li{position:relative;padding:17px 0 17px 34px;border-bottom:1px solid #d6dcdF;line-height:1.85;font-weight:700}.checks li:first-child{padding-top:0}.checks li:before{content:"✓";position:absolute;left:0;color:var(--deep-orange);font-size:1.25rem;font-weight:900}.problem-message{grid-column:1/-1;max-width:840px;margin:24px auto 0;padding-top:36px;border-top:2px solid var(--navy)}.problem-message p:last-child{font-size:1.2rem;font-weight:800;color:var(--navy)}
.approach{background:var(--cream)}.approach-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;margin-top:40px;align-items:center}.reading p{line-height:2.1}.signature{font-size:.875rem}.signature strong{display:block;font-size:1.6rem;letter-spacing:.12em;margin-top:6px}.portrait{position:relative;background:#eee6d7;border-bottom:7px solid var(--orange)}.portrait img{width:100%;display:block}.portrait figcaption{padding:12px 8px;text-align:center;background:var(--navy);color:#fff;font-size:.875rem;font-weight:700}.profile-evidence{display:grid;grid-template-columns:1fr .8fr;gap:55px;align-items:center;max-width:920px;margin:60px auto 0;border-top:1px solid #d8d6cc;padding-top:38px}.book{display:flex;align-items:center;gap:25px}.book img{width:110px;box-shadow:3px 5px 12px #06264025}.book h3{font-size:1.05rem}.book p{font-size:.875rem;margin-top:8px}.book .eyebrow{margin-bottom:8px}.seminar img{width:100%;height:175px;object-fit:cover}.seminar figcaption{font-size:.8125rem;margin-top:6px;color:var(--muted)}
.main-case{background:var(--navy);color:#fff;position:relative}.main-case .eyebrow{color:#ffad62}.case-heading{text-align:center}.case-heading .eyebrow{justify-content:center}.case-index{font-size:3.5rem;line-height:1;font-weight:900;color:var(--orange);letter-spacing:-.03em}.client{font-size:1rem;font-weight:700;margin-bottom:18px}.samurai{font-size:clamp(3rem,5vw,4.5rem);font-weight:900}.main-flyers{margin-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.flyer a{display:block;position:relative;line-height:1;text-decoration:none;box-shadow:0 7px 20px #00152616;transition:transform .2s}.flyer a:hover{transform:translateY(-4px)}.flyer img{display:block;width:100%;background:#fff}.zoom{position:absolute;right:0;bottom:0;background:var(--navy);color:#fff;font-size:.8125rem;line-height:1;padding:11px 14px}.flyer figcaption{font-size:.875rem;margin-top:12px;line-height:1.65}.flyer figcaption span{font-size:.75rem;border:1px solid currentColor;padding:2px 6px;margin-right:8px;white-space:nowrap}.main-case .small{color:#cad2d9}.gallery-note{margin-top:20px}.case-copy{max-width:870px;margin:38px auto}.points-title{text-align:center;margin-top:48px;font-size:1.25rem}.reason-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:26px 0 36px}.reason-grid li{padding:26px 24px;background:#fff;color:var(--navy);border-top:4px solid var(--orange)}.number{display:block;color:var(--deep-orange);font-weight:900;font-size:2.7rem;line-height:1.2;letter-spacing:-.05em}.reason-grid h3{font-size:1.13rem;margin:16px 0 10px}.reason-grid p{font-size:.9375rem;line-height:1.95}.main-case .case-copy .small{font-size:.8125rem}
.other-cases h2{margin-bottom:55px}.other-case{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;padding:48px 0;border-top:1px solid var(--line);align-items:start}.other-copy .case-index{display:block;margin-bottom:22px}.other-copy .client{font-size:.9375rem;margin-bottom:12px}.other-copy h3{font-size:1.625rem;margin-bottom:24px}.other-copy>p:last-child{font-size:.9375rem;line-height:2}.flyer-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.closing-note{padding:30px 40px;background:var(--cream);border-left:5px solid var(--orange);font-weight:700;margin-top:16px}
.methods{background:#f3f5f5}.methods h2 span{color:var(--deep-orange)}.method-grid{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.method{display:flex;gap:24px;border-top:1px solid #cdd5d9;padding:32px 0}.method .number{font-size:2.4rem;padding-top:3px}.method h3{font-size:1.25rem;margin-bottom:14px}.method p{font-size:.9375rem}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.painter{display:block;width:230px;height:290px;object-fit:contain;object-position:center bottom;margin:28px auto 0}.audience .checks{border-top:3px solid var(--navy)}.audience .checks li:first-child{padding-top:17px}
.flow{background:var(--cream)}.flow-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.flow h2{margin-bottom:26px}.steps{list-style:none;padding:0;position:relative}.steps li{position:relative;display:flex;gap:24px;padding-bottom:32px}.steps li:before{content:"";position:absolute;left:24px;top:48px;bottom:0;width:1px;background:#c5cacf}.steps li:last-child:before{display:none}.step-number{background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0;font-weight:800;font-size:1.4rem;border-radius:50%;line-height:1}.steps li:last-child .step-number{background:var(--orange);color:var(--navy)}.steps h3{font-size:1.13rem;padding-top:5px}.steps p{font-size:.9375rem;margin-top:8px;line-height:1.8}.faq h2{margin-bottom:36px}.faq-list{border-top:2px solid var(--navy)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:18px;padding:25px 0;cursor:pointer}summary::-webkit-details-marker{display:none}summary h3{font-size:1rem;flex:1;font-weight:700}summary .q{font-size:1.7rem;font-weight:800;color:var(--deep-orange);line-height:1}.toggle{width:18px;height:18px;position:relative;flex-shrink:0}.toggle:before,.toggle:after{content:"";position:absolute;background:var(--navy);width:16px;height:2px;left:1px;top:8px}.toggle:after{transform:rotate(90deg)}details[open] .toggle:after{transform:rotate(0)}details[open] summary{padding-bottom:18px}.answer{display:flex;gap:20px;padding:0 30px 28px 0}.answer>span{font-size:1.5rem;color:var(--muted);line-height:1.8;font-weight:800}.answer p{line-height:2}
.contact{background:var(--navy);color:#fff;text-align:center;position:relative;overflow:hidden}.contact:before{content:"";position:absolute;right:-90px;top:0;width:180px;height:100%;background:var(--orange);transform:skewX(-20deg);opacity:.16}.contact .container{position:relative}.contact .eyebrow{color:#ffb36e;justify-content:center}.contact h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:28px;line-height:1.65}.contact h2 span{font-size:.72em}.contact p:not(.eyebrow){max-width:670px;margin-inline:auto}.contact .button{margin-top:32px;min-width: min(520px,100%)}.contact .contact-hint{margin-top:22px;font-size:.8125rem;color:#dbe2e7}.contact .contact-signature{margin-top:30px;font-size:.875rem}.site-footer{padding:34px 0}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.back-top{font-size:.875rem}.footer-row>small{font-size:.75rem;color:var(--muted)}
@media(min-width:1500px){.hero-image{max-width:1440px}.hero-bottom{max-width:1240px}}
@media(max-width:1100px){.site-header nav{gap:16px}.site-header{gap:18px}.brand{font-size:1.15rem}.site-header nav a:nth-child(2){display:none}.container{width:calc(100% - 56px)}.hero-bottom{gap:24px}.hero-action .button{font-size:.9375rem}.problem-grid,.flow-grid,.audience-grid{gap:36px}.approach-grid{gap:40px}.other-case{gap:28px}.reason-grid{gap:18px}.reason-grid li{padding:24px 20px}.reason-grid h3{font-size:1.05rem}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{min-height:74px;padding:12px 20px}.site-header nav{display:none}.brand{font-size:1.05rem;gap:8px}.brand .brand-mark{width:36px;height:36px}.brand small{font-size:.6875rem;letter-spacing:0}.header-cta{font-size:.8125rem;padding:10px 13px}.header-cta span{margin-left:5px}.container{width:calc(100% - 40px)}.section{padding:64px 0}h2{font-size:1.75rem;line-height:1.7}.hero-bottom{grid-template-columns:1fr;gap:22px;padding-top:24px;padding-bottom:30px}.hero-lead{font-size:1.13rem}.hero-action .button{font-size:1rem;width:100%}.hero-bottom p+p{font-size:.875rem}.service-strip{display:grid;grid-template-columns:1fr 1fr;gap:14px 0;padding:20px}.service-strip span{padding:0 12px;text-align:center;font-size:.8125rem}.service-strip span:nth-child(2){border:0}.problem-grid,.approach-grid,.audience-grid,.flow-grid{grid-template-columns:1fr;gap:28px}.problem h2{font-size:2rem}.problem-message{padding-top:26px;margin-top:8px}.problem-message p:last-child{font-size:1.1rem}.checks li{font-size:.9375rem}.problem .checks li:first-child{padding-top:17px}.section-intro{margin-top:14px}.eyebrow{font-size:.8125rem;letter-spacing:.06em;margin-bottom:14px}.approach h2 br{display:none}.approach-grid{margin-top:26px}.portrait{max-width:340px;margin:8px auto 0}.profile-evidence{grid-template-columns:1fr;gap:30px;margin-top:40px;padding-top:28px}.book{justify-content:center;gap:20px}.book img{width:94px}.seminar{max-width:400px;width:100%;margin:auto}.seminar img{height:210px}.samurai{font-size:3.2rem}.case-heading h2{font-size:1.55rem}.case-index{font-size:2.8rem}.main-flyers{grid-template-columns:1fr;gap:30px;margin-top:28px}.flyer figcaption{font-size:.8125rem}.main-case .gallery-note{font-size:.75rem}.case-copy{margin:28px auto}.reason-grid{grid-template-columns:1fr;gap:18px}.reason-grid li{padding:22px 24px;position:relative}.reason-grid .number{font-size:2rem}.reason-grid h3{font-size:1.125rem;margin-top:10px}.points-title{margin-top:32px}.button{font-size:1rem;padding:17px 22px;gap:15px;text-align:left}.other-cases h2{margin-bottom:28px;font-size:1.7rem}.other-case{grid-template-columns:1fr;padding:30px 0;gap:24px}.other-copy h3{font-size:1.5rem;margin-bottom:16px}.other-copy .case-index{margin-bottom:15px}.flyer-pair{gap:12px}.flyer-pair figcaption{font-size:.75rem}.flyer-pair .zoom{font-size:.6875rem;padding:8px 10px}.flyer-pair figcaption span{display:table;margin-bottom:5px}.closing-note{padding:22px 24px;font-size:.9375rem}.method-grid{grid-template-columns:1fr;margin-top:28px}.method{gap:20px;padding:26px 0}.method h3{font-size:1.125rem}.method .number{font-size:2rem}.audience-grid{gap:20px}.audience-grid>div{position:relative;min-height:225px;padding-right:95px}.audience h2{font-size:1.6rem}.audience .eyebrow{font-size:.75rem}.painter{position:absolute;right:-5px;bottom:0;width:145px;height:190px;margin:0;z-index:-0}.audience-grid>div h2,.audience-grid>div .eyebrow{position:relative;z-index:1}.flow h2{margin-bottom:18px}.steps li{gap:18px}.steps h3{font-size:1rem}.steps p{font-size:.9375rem}.faq h2{margin-bottom:26px}summary{gap:12px;padding:22px 0}summary h3{font-size:.9375rem}.answer{padding-right:0;gap:15px;font-size:.9375rem}.contact h2{font-size:2rem}.contact>div>p{font-size:.9375rem}.contact .eyebrow{font-size:.75rem}.contact .button{min-width:0;width:100%}.contact:before{right:-150px}.footer-row{flex-wrap:wrap;gap:24px}.footer-row>small{width:100%}.back-top{font-size:.8125rem}.site-footer{padding-bottom:110px}}
@media(max-width:360px){.site-header{padding-inline:14px}.brand{font-size:.9375rem}.header-cta{font-size:.75rem;padding-inline:10px}.container{width:calc(100% - 32px)}.audience-grid>div{padding-right:75px}.audience h2{font-size:1.4rem}.painter{width:120px}.button{font-size:.9375rem;padding-inline:18px}.contact h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:360px){.site-header{gap:10px}.site-header .brand{flex-shrink:1}.site-header .brand small{display:none}.site-header .brand-mark{width:30px;height:30px}}
@media print{.site-header nav,.header-cta,.floating-consultation,.button,.back-top{display:none}.section{padding:30px 0}.container{width:95%}.main-case,.contact{background:#fff;color:var(--navy)}.main-case .small{color:var(--muted)}.flyer a{box-shadow:none}.site-footer{padding-bottom:0}details .answer{display:flex!important}h2,h3{break-after:avoid}img,.flyer,.reason-grid li,.steps li{break-inside:avoid}}

/* 画面右下に追従する無料相談バナー */
.floating-consultation{position:fixed;right:24px;bottom:24px;z-index:30;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 22px;border:1px solid #ffffff80;border-radius:6px;background:var(--orange);color:var(--navy);box-shadow:0 4px 18px #06264030;text-decoration:none;font-size:1rem;font-weight:800;line-height:1.5;transition:background .2s}
.floating-consultation:hover{background:#ff9135}
@media(max-width:760px){.floating-consultation{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));min-height:44px;padding:10px 18px;font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){.floating-consultation{transition:none}}
@media print{.floating-consultation{display:none}}

/* 講演・セミナー写真一覧（キャプションなし） */
.profile-evidence{grid-template-columns:1fr;max-width:920px}
.seminar-showcase{margin-top:48px}
.seminar-showcase h3{font-size:1.4rem;margin-bottom:24px;padding-left:16px;border-left:4px solid var(--orange)}
.seminar-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.seminar-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#e8e5dd;border-radius:2px}
@media(max-width:1100px){.seminar-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.seminar-showcase{margin-top:36px}.seminar-showcase h3{font-size:1.2rem;margin-bottom:20px}.seminar-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}}
