/* 地域のお店の相談カウンター。 */
:root{--paper:#fffdf8;--soft:#f7f0e4;--ink:#333d35;--muted:#626358;--orange:#a84228;--green:#3c5342;--line:#ddd5c6;--white:#fffefb}
body{font-size:18px;letter-spacing:.035em;line-height:1.95}
.section{max-width:1200px;padding:100px 48px}
.header{max-width:1360px;padding:27px 48px;border-bottom:1px solid var(--line)}
.brand{font-size:23px}.brand small{font-size:12px}.brand-mark{border-radius:50%;width:46px;height:46px;background:var(--green)}
nav{font-size:15px}.nav-cta{background:var(--orange);border:0;color:white;border-radius:4px;padding:12px 24px}
.eyebrow{font-size:14px;letter-spacing:.12em;color:var(--orange);margin-bottom:22px}
h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-feature-settings:"palt";font-weight:700}
h2{font-size:38px;line-height:1.7;letter-spacing:.045em;text-wrap:pretty}
h3{text-wrap:pretty}
.hero{max-width:1360px;grid-template-columns:1.06fr 1fr;gap:36px;padding-top:58px;padding-bottom:66px;align-items:center}
.hero h1{font-size:clamp(40px,4.4vw,63px);line-height:1.52;letter-spacing:.015em;margin-bottom:27px}
.under{background:linear-gradient(transparent 83%,#efc99e 83%,#efc99e 93%,transparent 93%)}
.hero-copy>p:not(.eyebrow){font-size:17px}.hero-copy>.hero-lead{font-size:18px}.hero-lead strong{color:var(--orange)}
.hero-local{font-size:15px!important}.hero-copy>.eyebrow{font-size:14px}
.hero-visual.rebuilt-visual{margin:0;background:transparent;min-height:0;padding:0;border-radius:0;display:block;position:relative;align-self:stretch;align-content:center}
.rebuilt-visual img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:120px 120px 8px 8px;background:#f5ead7}
.rebuilt-visual figcaption{position:relative;background:var(--soft);padding:25px 24px 21px;margin:-1px 0 0;border-radius:0 0 8px 8px;text-align:center;border-top:1px solid #ddd0b9}
.rebuilt-visual figcaption>span{font-size:15px;display:block}.rebuilt-visual figcaption strong{display:block;font-family:"Yu Mincho",serif;font-size:24px;margin-top:5px}.rebuilt-visual figcaption small{display:block;font-size:12px;color:var(--muted);margin-top:12px}
.button{font-size:16px;padding:19px 23px;border-radius:4px;box-shadow:none;min-height:58px;line-height:1.6;gap:18px;letter-spacing:0}
.button>span{border:1px solid #ffffff66;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;flex-shrink:0}
.reassure{font-size:13px!important}.local-strip{display:flex;gap:35px;align-items:center;justify-content:center;background:var(--green);color:#fffaf0;border:0;padding:23px 30px;font-size:14px;letter-spacing:.07em}.local-strip strong{font-size:16px}.local-strip span{font-size:13px}
.worries{max-width:1200px}.worries h2{font-size:34px}.worry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 45px;margin-top:32px}.worry-card{border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:22px 0;display:grid;grid-template-columns:36px 115px 1fr;align-items:start;gap:12px}.worry-index{position:static;font-size:15px;color:var(--orange);padding-top:2px}.worry-label{font-size:14px;margin:0;padding-top:2px}.worry-card h3{font-size:17px;line-height:1.8;font-weight:500}.closing{text-align:center;margin-top:40px;padding:25px;background:var(--soft);border-radius:3px;font-size:18px}
.section-heading{text-align:left}.section-heading h2{font-size:46px}.section-heading p:not(.eyebrow){font-size:18px}.choices{margin-top:35px}.tool-list{justify-content:flex-start;gap:14px;margin-top:0}.tool-list span{font-size:16px;border-radius:4px;padding:10px 22px}.choice-bridge{font-size:15px;margin:15px 0;padding:10px;color:var(--green)}.examples{gap:25px}.examples article{padding:30px 35px;border-radius:0;border-top:4px solid var(--green)}.examples article:nth-child(2){border-color:var(--orange)}.example-tag{font-size:14px}.examples h3{font-size:24px}.selected-tools span{font-size:16px;background:#edf0e4}.examples article:nth-child(2) .selected-tools span{background:#fbebd7;border-color:#dbc5a6}.small{font-size:14px}.principle{font-family:"Yu Mincho",serif;font-size:30px;margin-top:45px}
.journey{max-width:1280px}.journey-track{gap:28px}.journey-number{font-size:14px}.mini-screen,.journey-word{height:150px;padding:17px;border-radius:12px;font-size:14px;border:2px solid #d4d7ca;box-shadow:0 7px 0 #edf0e8}.journey-word{font-family:"Yu Mincho",serif;font-size:24px;border:0}.search-line{font-size:12px}.search-result{display:block;font-size:16px;line-height:1.6;margin-top:13px}.search-result small{font-size:12px;color:var(--muted)}.preview-title{font-size:17px;font-weight:700}.preview-content{margin-top:12px;font-size:14px;border-top:1px solid var(--line);padding-top:10px}.chat-screen span{font-size:12px;padding:9px 5px}.chat-screen span:last-child{margin-left:3px}.journey-track h3{font-size:16px;min-height:60px;line-height:1.8}.journey-track p{font-size:14px}.journey-track>li:not(:last-child):after{top:95px;right:-23px;font-size:24px}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 50px;margin-top:40px}.service-card{background:transparent;border:0;border-top:1px solid #c7c9bc;border-radius:0;padding:30px 0;position:relative}.service-top{margin-bottom:18px;font-size:14px}.service-mark{border:0;border-radius:0;padding:0;font:500 15px sans-serif;color:var(--orange)}.service-card h3{font-size:24px;line-height:1.7;max-width:420px}.service-card>p{font-size:17px;margin:18px 0 20px}.service-name{border:0;font-size:15px;padding-top:0;color:var(--green)}
.small-help{gap:65px}.small-help h2{font-size:40px}.small-help>div>p:not(.eyebrow){font-size:17px}.request-list{background:#f6f0e4;padding:18px 30px;transform:rotate(-1deg)}.request-list li{font-size:17px;padding:19px 0}.request-list li:last-child{border-bottom:0}.text-link{font-size:16px}
.about-section{background:#e9eedf}.about{gap:65px;grid-template-columns:1fr 1.1fr}.about h2{font-size:35px}.about-card{transform:none;background:transparent;border:0;border-left:3px solid var(--orange);border-radius:0;padding:5px 0 5px 25px;margin-top:40px;max-width:none}.about-card>span{font-size:15px}.about-card>p{font-family:"Yu Mincho",serif;font-size:30px}.signature{font-size:14px;border:0;margin-top:20px;padding-top:0}.about-copy{font-size:17px}.about-copy .large{font-size:20px}.promise{font-size:16px;line-height:2}.promise li+li{margin-top:8px}
.business-tags li{border-radius:0;border:0;border-bottom:1px solid var(--line);padding:12px 17px;font-size:16px;background:transparent}.audience>p:not(.eyebrow){font-size:18px}.steps{gap:28px}.steps h3{font-size:18px}.steps p{font-size:16px}.steps span{font-size:35px}.prices p:not(.eyebrow){font-size:17px}.prices dl>div{font-size:17px;padding:23px 0}.prices dd{font-size:14px}.faq{max-width:1030px}.faq summary{font-size:18px;min-height:76px}.faq-answer{font-size:17px}.contact{background:#f2e7d6;color:var(--ink);border-top:6px solid var(--green)}.contact .eyebrow{color:var(--orange)}.contact h2{font-size:48px}.contact .large{font-size:20px}.contact-questions{font-size:16px;color:var(--muted)}.contact .answer+p{font-size:17px}.contact .button{background:var(--orange);color:white;box-shadow:none}.contact .button:hover{background:#873720}.contact-status{border-color:#b3a086}.answer{font-family:"Yu Mincho",serif;font-size:29px}.contact .reassure span{color:var(--muted)}footer{padding:40px 48px}.footer-brand small,footer>small{font-size:12px}.skip:not(:focus){clip-path:inset(100%);width:1px;height:1px;overflow:hidden}
@media(max-width:1050px) and (min-width:701px){.hero{grid-template-columns:1fr 1fr;gap:24px}.hero h1{font-size:43px}.section{padding:75px 32px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero .button{font-size:14px}.worry-card{grid-template-columns:25px 1fr}.worry-card h3{grid-column:2}.worry-label{grid-column:2}.worry-index{grid-row:1/3}.about{gap:35px}.journey-track{gap:18px}.mini-screen,.journey-word{padding:10px}.journey-track>li:not(:last-child):after{right:-17px}.steps{gap:15px}.steps h3{font-size:16px}.steps p{font-size:15px}.prices{gap:30px}.prices dl>div{font-size:15px}.prices dd{font-size:13px}.rebuilt-visual figcaption strong{font-size:20px}}
@media(max-width:700px){
 body{font-size:17px}.header{padding:19px 20px;gap:10px}.header .brand{font-size:17px;gap:8px;flex-shrink:1}.header .brand small{font-size:10px}.header .brand-mark{width:35px;height:35px;font-size:23px;flex-shrink:0}.nav-cta{font-size:13px;padding:11px 14px}.nav-cta span{display:none}.section{padding:64px 24px}.eyebrow{font-size:13px;line-height:1.8;margin-bottom:18px}h2{font-size:29px!important;line-height:1.7;letter-spacing:.015em}.hero{padding-top:32px;padding-bottom:40px;gap:34px;display:flex}.hero h1{font-size:clamp(33px,8.8vw,52px);line-height:1.55;letter-spacing:0;margin-bottom:24px}.hero-copy>.eyebrow{font-size:12px;letter-spacing:.03em}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-copy>.hero-lead{font-size:17px!important}.hero-local{font-size:14px!important}.hero .button,.button{font-size:15px;padding:18px 13px;gap:9px;min-height:62px}.button>span{width:22px;height:22px}.reassure{font-size:12px!important;letter-spacing:0}.reassure span{padding:0 4px}.rebuilt-visual{max-width:none!important;width:100%}.rebuilt-visual img{border-radius:65px 65px 4px 4px}.rebuilt-visual figcaption{padding:20px 12px}.rebuilt-visual figcaption>span{font-size:14px}.rebuilt-visual figcaption strong{font-size:20px}.rebuilt-visual figcaption small{font-size:12px;margin-top:9px}.local-strip{display:block;padding:23px 24px;text-align:left}.local-strip strong{font-size:17px;display:block}.local-strip span{display:block;font-size:13px;line-height:1.9;margin-top:6px}.worry-grid{grid-template-columns:1fr;gap:0;margin-top:25px}.worry-card{padding:19px 0;grid-template-columns:25px 1fr;gap:3px 12px}.worry-index{grid-row:1/3;font-size:15px}.worry-label{grid-column:2;font-size:13px}.worry-card h3{grid-column:2;font-size:17px}.closing{font-size:17px;text-align:left;padding:22px;margin-top:28px}.section-heading p:not(.eyebrow){font-size:17px}.tool-list{gap:8px}.tool-list span{font-size:14px;padding:8px 13px}.choice-bridge{font-size:14px}.examples{gap:20px}.examples article{padding:25px 22px}.example-tag{font-size:13px}.examples h3{font-size:22px}.selected-tools{gap:12px}.selected-tools span{font-size:15px;padding:7px 13px}.small{font-size:13px;line-height:1.9}.principle{font-size:23px;line-height:1.9}.journey-track>li{grid-template-columns:115px 1fr;gap:5px 21px;padding-bottom:36px;margin-bottom:16px}.journey-number{font-size:13px}.mini-screen,.journey-word{height:122px;padding:10px;font-size:14px;border-radius:9px;box-shadow:0 4px 0 #edf0e8}.journey-word{font-size:19px}.search-line{font-size:10px}.search-result{font-size:14px;margin-top:10px}.search-result small{font-size:10px}.preview-title{font-size:14px}.preview-content{font-size:12px;margin-top:10px;padding-top:7px}.chat-screen span{font-size:10px;padding:7px 3px}.journey-track h3{font-size:16px;min-height:0;margin:0;line-height:1.7}.journey-track p{font-size:14px;margin:0}.journey-track>li:not(:last-child):after{top:auto;bottom:0;left:48px;right:auto;font-size:24px}.service-grid{grid-template-columns:1fr;gap:0;margin-top:30px}.service-card{padding:28px 0}.service-card h3{font-size:23px;line-height:1.7}.service-top{margin-bottom:14px}.service-mark{font-size:14px}.service-card>p{font-size:17px}.service-name{font-size:14px}.small-help{gap:30px}.small-help>div>p:not(.eyebrow){font-size:17px}.request-list{transform:none;padding:10px 18px}.request-list li{font-size:16px;padding:17px 0}.request-list li:before{margin-right:7px}.about{gap:35px}.about-card{padding-left:22px;margin-top:28px}.about-card>span{font-size:14px}.about-card>p{font-size:29px}.about-card>p br{display:block}.signature{font-size:13px}.about-copy{font-size:17px}.about-copy .large{font-size:19px}.promise{font-size:16px}.audience>p:not(.eyebrow){font-size:17px}.business-tags{gap:8px 12px}.business-tags li{font-size:14px;padding:8px 0}.steps{margin-top:32px}.steps li{padding:0 0 28px 20px;grid-template-columns:37px 1fr;gap:8px 9px}.steps h3{font-size:18px}.steps p{font-size:16px}.steps span{font-size:28px}.prices{gap:25px}.prices p:not(.eyebrow){font-size:17px}.prices dl>div{font-size:16px;display:block;padding:18px 0}.prices dd{text-align:left;font-size:14px;margin-top:5px}.faq{padding-top:12px}.faq summary{font-size:17px;gap:14px}.faq-answer{font-size:16px;padding-left:28px;padding-right:8px}.contact h2{font-size:34px!important}.contact .large{font-size:17px}.contact-questions{font-size:15px;gap:10px}.contact .answer+p{font-size:16px}.answer{font-size:23px}.contact .button{font-size:15px}.contact-status{font-size:15px}.mobile-cta .button{font-size:14px;padding:14px 10px;min-height:52px}.mobile-cta{padding:9px 12px calc(12px + env(safe-area-inset-bottom))}.mobile-cta.is-hidden{visibility:hidden}footer{padding:35px 24px 115px;gap:22px}footer>small{font-size:12px}.footer-brand{font-size:18px}.footer-brand small{font-size:11px}
}
@media(max-width:360px){.header{padding:16px}.header .brand{font-size:14px}.header .brand small{font-size:9px}.header .brand-mark{width:30px;height:30px}.nav-cta{padding:10px;font-size:12px}.section{padding-left:19px;padding-right:19px}.hero h1{font-size:32px}.hero .button,.contact .button{font-size:13px}.reassure{font-size:11px!important}.journey-track>li{grid-template-columns:105px 1fr;column-gap:15px}.contact h2{font-size:30px!important}}

/* 動きの役割を分ける：イラストは静かなフェード、サービスは小さく浮かぶ。 */
.scroll-reveal {
  opacity: 1;
  transition: opacity 600ms ease-out;
}
.scroll-reveal.reveal-rise {
  transform: translateY(0);
  transition: opacity 500ms ease-out, transform 500ms cubic-bezier(.2, .7, .3, 1);
}
.scroll-reveal.reveal-pending {
  opacity: 0;
  transition: none;
}
.scroll-reveal.reveal-rise.reveal-pending {
  transform: translateY(10px);
}
.scroll-reveal:focus-within, .scroll-reveal.reveal-rise:focus-within {
  opacity: 1;
  transform: none;
  transition: none;
}
/* 横並びのPCでは少しずつ。スマホは目に入った項目を待たせず表示。 */
@media (min-width: 701px) {
  .illustrated-journey > li:nth-child(2) .scroll-reveal:not(.reveal-pending) { transition-delay: 80ms; }
  .illustrated-journey > li:nth-child(3) .scroll-reveal:not(.reveal-pending) { transition-delay: 160ms; }
  .illustrated-journey > li:nth-child(4) .scroll-reveal:not(.reveal-pending) { transition-delay: 240ms; }
  .illustrated-journey > li:nth-child(5) .scroll-reveal:not(.reveal-pending) { transition-delay: 320ms; }
  .service-card.scroll-reveal:nth-child(even):not(.reveal-pending) { transition-delay: 100ms; }
}
@media print, (prefers-reduced-motion: reduce) {
  .scroll-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
