@charset "UTF-8";
:root{--ink:#193b35;--green:#133f38;--muted:#56655e;--paper:#fff;--mist:#f2f5f1;--gold:#ebc96e;--line:#d6ded7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #ad7511;outline-offset:6px}.wrap{max-width:1200px;margin:auto;padding-left:48px;padding-right:48px}header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:25px 48px;gap:28px}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:700;letter-spacing:.04em;line-height:1.4}.brand small{display:block;font-size:12px;font-weight:400;margin-top:5px;letter-spacing:.09em}.brand-mark{font-family:Georgia,serif;font-size:26px;background:var(--green);color:var(--gold);width:42px;height:42px;border-radius:50%;display:grid;place-items:center}nav{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:600}.button{background:var(--green);color:white;display:inline-flex;justify-content:space-between;gap:38px;align-items:center;padding:17px 25px;border-radius:4px;font-weight:700;transition:background .15s}.button:hover{background:#256151}.button.small{padding:12px 18px;gap:25px}.button.light{background:var(--gold);color:var(--ink);font-size:14px;display:flex;padding:14px 18px;gap:15px}.button.light:hover{background:#f5d989}.hero{max-width:1440px;display:grid;grid-template-columns:1fr 1.03fr;gap:44px;padding-top:35px;padding-bottom:65px}.hero-copy{padding:28px 0 5px 7%}.eyebrow{font-size:14px;letter-spacing:.13em;font-weight:700;margin:0 0 23px;display:flex;gap:11px;align-items:center}.eyebrow:before{content:"";width:22px;height:2px;background:currentColor;display:block}h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(38px,4.3vw,62px);font-weight:600;line-height:1.5;letter-spacing:.035em;margin:0 0 23px}p{margin:0 0 20px}.lead{font-size:17px;line-height:2.05;color:var(--muted)}.hero-price>span{font-size:14px}.hero-price p{font-size:16px;margin:0 0 22px;line-height:1.5}.hero-price strong{font-family:Georgia,serif;font-size:43px;font-weight:400;letter-spacing:.015em}.hero-price p span{font-size:13px}.micro{font-size:13px;line-height:1.8;color:var(--muted);margin:12px 0 0}.hero-photo{margin:0;position:relative;min-height:625px;background:#e1e8df;border-radius:3px 3px 85px 3px;overflow:hidden}.hero-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:62% center}.hero-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#16352ed9)}.hero-photo figcaption{position:absolute;bottom:32px;left:30px;right:22px;color:white;z-index:1;font-family:"Yu Mincho",serif;font-size:20px}.hero-photo figcaption small{display:block;font-family:sans-serif;font-size:12px;opacity:.9;margin-top:8px}.photo-label{position:absolute;right:24px;top:25px;writing-mode:vertical-rl;background:#fffdf3;padding:21px 17px;line-height:1.9;letter-spacing:.12em;font-size:16px}.photo-label b{font-family:"Yu Mincho",serif;font-size:24px;font-weight:500}.area-strip{background:var(--green);color:white;padding:24px 35px;display:flex;justify-content:center;gap:54px;align-items:center;font-size:15px}.area-strip span{color:var(--gold);font-size:14px}.area-strip p{margin:0}.area-strip i{color:#78948a;font-style:normal;margin:0 18px}section:not(.hero){scroll-margin-top:30px}h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:36px;font-weight:600;line-height:1.6;letter-spacing:.04em;margin:0 0 26px}h3{font-size:20px;line-height:1.6;margin:0 0 12px}.intro{text-align:center;padding-top:100px;padding-bottom:94px}.intro .eyebrow{justify-content:center}.concerns{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;margin-bottom:32px}.concerns p{padding:10px 24px;border-right:1px solid var(--line);font-size:20px;line-height:1.8}.concerns p:last-child{border:0}.concerns span{display:block;font-size:14px;font-family:Georgia,serif;color:#6b8274;margin-bottom:14px}.intro-end{color:var(--muted);margin:0}.service{background:var(--mist);padding:90px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:35px}.section-heading>p{color:var(--muted);font-size:15px}.service-layout{display:grid;grid-template-columns:350px 1fr;gap:55px}.price-card{background:var(--green);color:white;padding:35px;border-radius:5px;align-self:start}.price-card>span{font-size:17px}.price{line-height:1.3;margin:24px 0}.price strong{font-family:Georgia,serif;font-size:61px;font-weight:400;margin-right:5px}.price small{font-size:14px;display:block;margin-top:12px}.price-card>div{font-size:14px;border-bottom:1px solid #53716a;padding-bottom:20px}.price-card ul{padding-left:19px;font-size:15px;margin:22px 0}.price-card>p:not(.price){font-size:14px;color:#dfe8e2}.service-list article{display:flex;gap:23px;padding:26px 0;border-bottom:1px solid var(--line)}.service-list article:first-child{padding-top:0}.number{font-family:Georgia,serif;font-size:28px;color:#698577;line-height:1.5}.service-list p{font-size:15px;color:var(--muted);margin:0}.scope{margin-top:36px;padding:25px 30px;border:1px solid #cdd8cf;display:grid;grid-template-columns:220px 1fr;gap:20px}.scope h3{font-size:16px;margin:0}.scope p{font-size:14px;line-height:1.9;margin:0;color:var(--muted)}.report{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:110px;padding-bottom:100px}.report>div>p:not(.eyebrow){color:var(--muted)}.sample-label{display:block;font-size:12px;color:var(--muted);margin-top:25px}.report-paper{background:#fffef9;border:1px solid #dadfd6;box-shadow:10px 10px 0 #edf1eb;padding:30px;transform:rotate(-1deg)}.report-top{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:20px;border-bottom:2px solid var(--green);font-size:16px}.report-top span{font-size:11px;letter-spacing:.1em;border:1px solid var(--line);padding:2px 7px}dl{font-size:14px;margin:10px 0}dl>div{border-bottom:1px solid #e0e5db;padding:12px 0}dt{font-size:12px;color:var(--muted)}dd{margin:2px 0 0}.report-note{font-size:12px;margin:19px 0 0}.area{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:70px;padding-bottom:85px;border-top:1px solid var(--line)}.area p:not(.eyebrow){font-size:15px;color:var(--muted)}.area-panel{background:var(--mist);padding:35px;align-self:center;border-top:3px solid var(--green)}.area-panel .area-primary{font-size:29px;font-weight:700;color:var(--ink);margin-bottom:8px}.area-panel hr{border:0;border-top:1px solid var(--line);margin:23px 0}.area-panel .micro{font-size:13px}.flow{padding-top:45px;padding-bottom:100px}.flow ol{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.flow li{border-top:1px solid var(--line);padding-top:22px}.flow li>span{font-family:Georgia,serif;font-size:32px;color:#728d7a;display:block;margin-bottom:15px}.flow p{font-size:15px;color:var(--muted);margin:0}.faq{padding-top:75px;padding-bottom:80px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:40px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:16px;font-weight:600;padding:23px 35px 23px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:5px;font-size:23px;top:17px;font-weight:400}details[open] summary:after{content:"−"}details p{font-size:14px;color:var(--muted);padding-right:20px;margin:0 0 25px}.operator{border-top:1px solid var(--line);padding-top:45px;padding-bottom:65px;display:grid;grid-template-columns:1fr 2fr;gap:40px}.operator h2{font-family:inherit;font-size:22px;margin-bottom:15px}.operator p:not(.eyebrow){font-size:15px;color:var(--muted);margin:0}.contact{background:var(--green);color:white;text-align:center;padding:80px 0}.contact .eyebrow{justify-content:center;color:var(--gold)}.contact>div>p:not(.eyebrow){color:#e0e8e1}.privacy-note{font-size:12px;line-height:1.8;margin:0}footer{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 48px;font-size:12px}footer .brand{font-family:Georgia,serif;font-size:18px;letter-spacing:.1em}.skip{position:absolute;left:15px;top:-100px;padding:10px;background:white;z-index:9}.skip:focus{top:10px}
@media(max-width:1050px){nav>a:not(.button){display:none}.hero{gap:25px}.hero-copy{padding-left:0}.wrap{padding-left:32px;padding-right:32px}.hero-photo{min-height:620px}.service-layout{grid-template-columns:310px 1fr;gap:30px}.report,.area{gap:35px}.area-strip{gap:25px}.area-strip i{margin:0 8px}.price-card{padding:28px}}
@media(max-width:700px){html{scroll-padding-top:20px}header{padding:20px;gap:15px}.brand{font-size:14px;gap:8px}.brand small{font-size:10px}.brand-mark{width:34px;height:34px;font-size:23px}nav .button.small{font-size:12px;padding:9px 12px;gap:0}nav .button span{display:none}.wrap{padding-left:24px;padding-right:24px}.hero{display:flex;flex-direction:column;gap:28px;padding-top:18px;padding-bottom:36px}.hero-copy{padding:0}.eyebrow{font-size:12px;margin-bottom:18px}h1{font-size:41px;line-height:1.48;margin-bottom:20px}.lead{font-size:15px;line-height:1.95}.hero-price strong{font-size:38px}.hero-price>span{font-size:13px}.hero-copy>.button{display:flex;max-width:400px;padding:15px 20px;font-size:15px}.micro{font-size:12px}.hero-photo{min-height:340px;max-height:400px;border-bottom-right-radius:60px}.hero-photo img{object-position:center}.hero-photo figcaption{font-size:17px;left:22px;bottom:21px}.photo-label{font-size:13px;padding:15px 12px;right:18px;top:18px}.photo-label b{font-size:19px}.area-strip{display:block;text-align:center;padding:22px 20px}.area-strip span{font-size:12px}.area-strip p{font-size:13px;line-height:2;margin-top:8px}.area-strip i{margin:0 4px}.intro{padding-top:60px;padding-bottom:60px}h2{font-size:28px;line-height:1.65}.concerns{grid-template-columns:1fr;margin:28px 0 25px}.concerns p{border-right:0;border-bottom:1px solid var(--line);padding:19px 0;margin:0;font-size:18px}.concerns span{display:inline-block;margin:0 18px 0 0;vertical-align:top}.concerns p br{display:none}.intro-end{font-size:14px}.service{padding:55px 0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{font-size:14px}.service-layout{grid-template-columns:1fr;gap:35px}.price-card{padding:28px}.price{margin:18px 0}.price strong{font-size:58px}.price-card .button{font-size:15px}.service-list article{gap:18px;padding:23px 0}.service-list h3{font-size:18px}.service-list p{font-size:14px}.scope{display:block;padding:23px;margin-top:27px}.scope h3{margin-bottom:12px}.scope p{font-size:13px}.report{grid-template-columns:1fr;gap:30px;padding-top:60px;padding-bottom:65px}.report>div>p:not(.eyebrow){font-size:14px}.report-paper{padding:24px}.report-top{font-size:14px}.sample-label{margin-top:16px}.area{grid-template-columns:1fr;gap:15px;padding-top:55px;padding-bottom:55px}.area-panel{padding:26px}.area p:not(.eyebrow){font-size:14px}.area-panel .area-primary{font-size:26px}.flow{padding-top:25px;padding-bottom:60px}.flow ol{grid-template-columns:1fr;gap:24px;margin-top:24px}.flow li{position:relative;padding-left:45px;padding-top:20px}.flow li>span{position:absolute;left:0;top:17px;font-size:25px}.flow h3{font-size:18px;margin-bottom:8px}.flow p{font-size:14px}.faq{grid-template-columns:1fr;gap:0;padding-top:50px;padding-bottom:55px}.faq h2{margin-bottom:8px}summary{font-size:15px}.operator{grid-template-columns:1fr;gap:0;padding-top:35px;padding-bottom:45px}.operator h2{font-size:20px}.operator p:not(.eyebrow){font-size:14px}.contact{padding:55px 0}.contact>div>p:not(.eyebrow){font-size:14px}.contact>div>.privacy-note{font-size:12px}footer{padding:27px 24px;flex-wrap:wrap;font-size:11px}footer .brand{font-size:15px}.desktop{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.mobile{display:none}.service-list p,.flow p,.operator p:not(.eyebrow),details p,.area p:not(.eyebrow),.report>div>p:not(.eyebrow){font-size:1rem}.scope p,.area-panel .micro{font-size:.875rem}@media(max-width:700px){.mobile{display:block}h1{font-size:clamp(32px,10.4vw,41px)}.contact h2{font-size:28px}.lead,.intro-end{font-size:1rem}.brand small{font-size:12px}nav .button.small{max-width:130px}.report-top span,dt,.report-note,footer{font-size:12px}}

/* Service identity, photo-led awareness and individual consultation */
.service-brand{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:29px;letter-spacing:.13em}.service-brand small{font-family:"Hiragino Kaku Gothic ProN",sans-serif;letter-spacing:.05em}.brand-mark{font-size:22px}.footer-brand{font-family:"Yu Mincho",serif!important}.concern-photos{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:42px 0 16px;text-align:left}.concern-photos article{background:var(--mist)}.concern-photos figure{margin:0;position:relative}.concern-photos img{display:block;width:100%;height:280px;object-fit:cover}.concern-photos figcaption{position:absolute;right:12px;bottom:12px;background:#ffffffed;padding:3px 10px;font-size:12px}.concern-photos article>div{padding:28px}.concern-photos .eyebrow{justify-content:flex-start;font-size:13px;margin-bottom:12px}.concern-photos h3{font-size:21px}.concern-photos p{font-size:16px;color:var(--muted);margin:0}.image-disclaimer{font-size:12px;color:var(--muted);text-align:left}.intro-bridge{margin-top:38px}.intro-bridge p{font-family:"Yu Mincho",serif;font-size:25px;margin-bottom:12px}.intro-bridge span{font-size:16px;color:var(--muted)}.consultation{display:grid;grid-template-columns:1fr 1.4fr;gap:45px;background:white;border-top:3px solid var(--green);padding:35px;margin-top:45px}.consultation h3{font-family:"Yu Mincho",serif;font-size:25px;line-height:1.7}.consultation p:not(.eyebrow){font-size:16px;color:var(--muted)}.consultation .consent-note{font-size:14px!important;font-weight:600;color:var(--ink)!important}.text-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--green);padding:3px 0;font-size:15px;font-weight:700}.report{grid-template-columns:.85fr 1.15fr;gap:45px}.report-paper{transform:none;padding:26px}.report-photos{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:23px}.report-photos figure{margin:0;min-width:0}.report-photos img{width:100%;height:135px;object-fit:cover;display:block}.report-photos figcaption{font-size:12px;line-height:1.65;margin-top:9px}.report-photos figcaption b,.report-photos figcaption span{display:block}.report-photos figcaption span{margin-top:4px;color:var(--muted)}.report-image-note{font-size:12px;color:var(--muted);margin:12px 0 0}.scope{grid-template-columns:220px 1fr}.scope h3{font-size:15px}
@media(max-width:700px){.service-brand{font-size:23px}.service-brand small{font-size:10px}.concern-photos{grid-template-columns:1fr;gap:24px;margin-top:30px}.concern-photos img{height:220px}.concern-photos article>div{padding:23px}.concern-photos h3{font-size:19px}.intro-bridge p{font-size:23px}.consultation{grid-template-columns:1fr;gap:8px;padding:24px;margin-top:30px}.consultation h3{font-size:22px}.report{grid-template-columns:1fr;gap:30px}.report-paper{padding:20px}.report-top{gap:8px;font-size:13px}.report-top span{font-size:11px}.report-photos{gap:10px}.report-photos img{height:105px}.scope{display:block}.report-photos figcaption{font-size:12px}.image-disclaimer{font-size:12px}}

/* Text-only regional service name and four photo examples */
.service-brand{font-size:27px;letter-spacing:.06em;white-space:nowrap}.report-top b{font-size:14px}.intro h2,.intro-bridge p{text-wrap:balance}.photo-label b{font-size:22px}.report-photos{row-gap:22px}
@media(max-width:700px){header{gap:10px}.service-brand{font-size:20px;letter-spacing:.025em}.service-brand small{font-size:12px;letter-spacing:0}.report-top{align-items:flex-start}.report-top b{font-size:13px}.photo-label b{font-size:18px}.photo-label{font-size:12px}.report-photos img{height:110px}.intro h2{font-size:26px}.intro-bridge p{font-size:22px}nav .button.small{max-width:115px;font-size:12px;padding:9px 10px}}
@media(max-width:359px){header{padding-left:16px;padding-right:16px}.service-brand{font-size:18px}.service-brand small{font-size:11px}nav .button.small{max-width:100px}.report-photos{grid-template-columns:1fr}.report-photos img{height:150px}}

.report-top b .report-subtitle{display:block;border:0;padding:0;margin-top:5px;font-size:12px;font-weight:400;letter-spacing:.05em}.report-top>span{flex-shrink:0}

/* Googleフォーム：埋め込みと、表示できない環境向けの別タブ導線 */
.contact-form-intro{max-width:720px;margin:30px auto 24px;font-size:15px}
.form-direct-link{display:inline-block;border:1px solid #b6cec2;border-radius:4px;padding:12px 20px;color:#fff;text-decoration:underline;text-underline-offset:4px}
.form-direct-link:hover{background:#256151}
.contact-form-intro .form-help{font-size:13px;color:#e0e8e1;margin:12px 0 0}
.contact-form{max-width:760px;margin:0 auto 24px;background:#f3f5f5;border-radius:8px;overflow:hidden}
.contact-form iframe{display:block;width:100%;height:2100px;border:0}
.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}
@media(max-width:700px){.contact-form{margin-left:-16px;margin-right:-16px}.contact-form iframe{height:2480px}.contact-form-intro{font-size:14px}.form-direct-link{font-size:15px}}

@media(max-width:360px){.contact-form{margin-left:-24px;margin-right:-24px;border-radius:0}.contact-form iframe{height:2850px}}
