/* Requested 2026-10-03: a soft transition between text and photograph. */
.home-preview .hero{background:#f5f6ef;min-height:590px;padding:85px 0 65px;isolation:isolate}
.home-preview .hero-photo{position:absolute;inset:0 0 0 23%;height:auto;margin:0}
.home-preview .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:70% 43%}
.home-preview .hero-photo::after{display:block;content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f5f6ef 0%,rgba(245,246,239,.98) 9%,rgba(245,246,239,.82) 22%,rgba(245,246,239,.38) 37%,rgba(245,246,239,0) 54%);pointer-events:none}
.home-preview .hero-inner{position:relative;z-index:2}
.home-preview .hero-copy{width:53%;max-width:575px;padding-right:0}
.home-preview .hero h1{font-size:43px;line-height:1.7;white-space:normal}
.home-preview .hero .lead{font-size:17px;line-height:2;margin:24px 0 29px}
.home-preview .hero-photo figcaption{z-index:3;background:rgba(245,246,239,.8);bottom:13px;right:18px;font-size:10px;color:#59614e}
@media(min-width:1600px){.home-preview .hero-photo{left:32%}.home-preview .hero-photo img{object-position:65% 43%}}
@media(min-width:761px) and (max-width:1050px){.home-preview .hero{padding:65px 0 55px;min-height:530px}.home-preview .hero h1{font-size:34px}.home-preview .hero .lead{font-size:15px}.home-preview .hero-photo{left:20%}.home-preview .hero-photo::after{background:linear-gradient(90deg,#f5f6ef 0%,rgba(245,246,239,.93) 19%,rgba(245,246,239,.55) 37%,transparent 60%)}.home-preview .hero-copy{width:56%}}
@media(max-width:760px){.home-preview .hero{padding:0 0 34px;min-height:0;background:#f5f6ef}.home-preview .hero-photo{position:absolute;inset:0 0 auto 0;height:365px;width:100%}.home-preview .hero-photo img{object-position:83% 36%;object-fit:cover}.home-preview .hero-photo::after{display:block;background:linear-gradient(0deg,#f5f6ef 0%,rgba(245,246,239,.97) 8%,rgba(245,246,239,.62) 23%,rgba(245,246,239,.14) 37%,transparent 50%)}.home-preview .hero-inner{padding-top:310px;margin-top:0}.home-preview .hero-copy{width:100%;max-width:none}.home-preview .hero h1{font-size:29px;line-height:1.65}.home-preview .hero .kicker{font-size:12px;margin-bottom:12px}.home-preview .hero .lead{font-size:15px;line-height:1.95;margin:17px 0 22px}.home-preview .hero-photo figcaption{top:10px;bottom:auto;right:10px;font-size:9px;padding:2px 5px}.home-preview .hero .button{width:100%}}

/* 2026-10-04: stronger first impression, keeping a calm expression. */
.home-preview .hero{min-height:650px;padding:76px 0 64px}
.home-preview .hero-copy{width:57%;max-width:660px}
.home-preview .hero .kicker{display:inline-block;font-size:14px;font-weight:700;letter-spacing:.12em;border-bottom:2px solid #647b35;padding-bottom:10px;margin-bottom:24px;color:#415b25}
.home-preview .hero h1{font-size:clamp(42px,4.45vw,64px);font-weight:700;line-height:1.45;letter-spacing:-.055em;color:#3d382c;margin:0}
.home-preview .hero .lead{font-size:17px;line-height:1.95;margin:28px 0 30px;color:#3d4436}
.home-preview .hero .button{min-width:300px;min-height:76px;padding:22px 30px;font-size:19px;font-weight:700;background:#3f5d21;border:1px solid #3f5d21;border-radius:2px;box-shadow:0 4px 0 #2d4517;justify-content:space-between;gap:32px}
.home-preview .hero .button:hover{background:#304a18;transform:translateY(-2px)}
.home-preview .hero .hero-note{font-size:13px;color:#4d5547;margin-top:17px}
@media(min-width:761px) and (max-width:1050px){.home-preview .hero{min-height:590px;padding:62px 0 52px}.home-preview .hero-copy{width:59%}.home-preview .hero h1{font-size:clamp(36px,4.55vw,48px)}.home-preview .hero .lead{font-size:15px}.home-preview .hero .button{min-width:270px;font-size:17px}}
@media(max-width:760px){.home-preview .hero{min-height:0;padding:0 0 38px}.home-preview .hero-copy{width:100%;max-width:none}.home-preview .hero-inner{padding-top:295px}.home-preview .hero h1{font-size:clamp(29px,8.7vw,44px);line-height:1.42;letter-spacing:-.055em}.home-preview .hero .kicker{font-size:11px;margin-bottom:17px;padding-bottom:8px}.home-preview .hero .lead{font-size:15px;line-height:1.9;margin:20px 0 24px}.home-preview .hero .button{width:100%;min-width:0;min-height:70px;padding:20px 24px;font-size:18px}}

/* Strong horizontal headline, requested 2026-10-04. */
.home-preview .hero h1{font-size:clamp(40px,4.8vw,70px);font-weight:900;line-height:1.4;letter-spacing:-.065em;color:#283d22;text-shadow:.35px 0 currentColor,-.35px 0 currentColor}
@media(min-width:761px) and (max-width:1050px){.home-preview .hero h1{font-size:clamp(36px,4.6vw,48px)}}
@media(max-width:760px){.home-preview .hero h1{font-size:clamp(29px,8.9vw,42px);line-height:1.45;letter-spacing:-.06em}}
/* Typography composition: service names carry the visual hierarchy. */
.home-preview .hero{padding:66px 0 58px;min-height:675px}
.home-preview .hero-copy{width:60%;max-width:690px}
.home-preview .hero .kicker{font-size:12px;letter-spacing:.18em;border:0;display:flex;align-items:center;gap:14px;margin:0 0 30px;padding:0}
.home-preview .hero .kicker::before{content:"";width:32px;height:1px;background:#69734c}
.home-preview .hero h1.hero-title{font-size:clamp(37px,4.45vw,64px);font-weight:600;line-height:1.2;letter-spacing:-.065em;text-shadow:none;color:#293c25}
.hero-title-line{display:flex;align-items:baseline;white-space:nowrap;gap:8px}
.home-preview .hero-title strong{font-weight:800}
.home-preview .hero-title .hero-key{font-size:1.7em;letter-spacing:-.07em;line-height:1.15}
.home-preview .hero-title .hero-connect{font-size:.55em;letter-spacing:-.04em;font-weight:500;color:#464c3c}
.home-preview .hero-title .hero-title-second{margin-top:12px;gap:5px}
.home-preview .hero-title .hero-dot{font-size:.65em;vertical-align:.08em}
.home-preview .hero-title .hero-until{font-size:.49em;font-weight:500;letter-spacing:-.05em;color:#464c3c}
.home-preview .hero .lead{margin:30px 0 28px;padding-left:18px;border-left:1px solid #b4b99c;font-size:15px;line-height:1.95}
.home-preview .hero .button{min-height:66px;min-width:300px;font-size:17px;padding:19px 25px;box-shadow:none;border-radius:0;background:#3c532a}
.home-preview .hero .button span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #ffffff70;border-radius:50%;font-size:18px}
@media(min-width:761px) and (max-width:1050px){.home-preview .hero{min-height:590px;padding:52px 0}.home-preview .hero h1.hero-title{font-size:4.3vw}.home-preview .hero .lead{font-size:14px}}
@media(max-width:760px){.home-preview .hero{padding:0 0 36px;min-height:0}.home-preview .hero-copy{width:100%}.home-preview .hero h1.hero-title{font-size:clamp(28px,8.6vw,48px)}.home-preview .hero .kicker{font-size:10px;letter-spacing:.08em;margin-bottom:20px;gap:10px}.home-preview .hero .kicker::before{width:22px}.home-preview .hero-title .hero-title-second{margin-top:10px}.home-preview .hero .lead{font-size:13px;margin:23px 0;padding-left:14px}.home-preview .hero .button{min-width:0;width:100%;font-size:17px}}
/* Whole homepage: consistent editorial rhythm and clear consultation routes. */
.home-preview{--ink:#30392c;--muted:#66705d;--line:#dadfd0}
.home-preview main>section:not(.hero){padding:100px 0}
.home-preview main h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:36px;line-height:1.55;letter-spacing:.025em;color:#304128}
.home-preview .section-heading{margin-bottom:46px}
.home-preview .worries{background:#f8f5ec}
.home-preview .worries .section-heading{grid-template-columns:1fr 1fr;gap:72px}
.home-preview .worries h2{max-width:390px;font-size:39px}
.home-preview .worry-photo{max-width:none;width:100%;position:relative;margin:0;padding:0 18px 18px 0}
.home-preview .worry-photo::before{content:"";position:absolute;inset:22px 0 0 22px;border:1px solid #c3c7ae;z-index:0}
.home-preview .worry-photo img{position:relative;display:block;border-radius:0;aspect-ratio:1.6;object-fit:cover}
.home-preview .worry-photo figcaption{position:relative;font-size:10px;margin-top:6px}
.home-preview .two-columns{gap:54px}
.home-preview .worry-group{padding-top:10px}
.home-preview .worry-group h3{border-bottom:1px solid #a4af8d;padding:0 0 18px;font-size:21px;display:flex;align-items:center;gap:16px}
.home-preview .worry-group h3::before{content:"01";font:italic 36px Georgia,serif;color:#89956e}
.home-preview .worry-group:nth-child(2) h3::before{content:"02"}
.home-preview .worry-group li{border-bottom:1px solid #e2e0d5;padding:18px 0 18px 25px;font-size:16px}
.home-preview .worry-group .text-link{display:inline-flex;margin-top:14px}
.home-preview .services{background:#fff}
.home-preview .services>.wrap>.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:65px}
.home-preview .services .section-heading h2{max-width:480px}
.home-preview .services .section-heading>p{max-width:360px;margin:8px 0 0;font-size:15px;line-height:2}
.home-preview .service-row{grid-template-columns:34% 1fr;gap:50px;border:0;border-top:1px solid #bec7ae;padding:40px 0}
.home-preview .service-title h3{font-family:"Yu Mincho",serif;font-size:29px;color:#344d2c;line-height:1.6}
.home-preview .service-row dl>div{grid-template-columns:130px 1fr;padding-bottom:22px}
.home-preview .service-row dt{color:#344d2c}
.home-preview .service-row dd{font-size:15px;line-height:1.9}
.home-preview .service-consult{background:#f5f5ed;border-left:3px solid #7c8c56;padding:32px 35px;margin-top:22px}
.home-preview .button,.home-preview .solid-link{border-radius:0;box-shadow:none}
.home-preview #urizun-comic-demo{margin:74px 0}
.home-preview #urizun-comic-demo .uc-surface{background:#f7f5ee;border:0;border-radius:0;padding:45px 30px}
.home-preview #urizun-comic-demo h2{font-size:29px;text-align:center}
.home-preview .people{background:#f4f5ef;margin-top:80px;padding:60px;grid-template-columns:32% 1fr;gap:65px;align-items:center}
.home-preview .representative{margin:0}
.home-preview .representative img{height:340px;width:100%;object-fit:cover;border-radius:0;object-position:center 24%}
.home-preview .representative figcaption{margin-top:18px;text-align:left}
.home-preview .people-copy h2{font-family:"Yu Mincho",serif;font-size:34px}
.home-preview .people-copy>p:not(.kicker){font-size:15px;line-height:2.05}
.home-preview .photo-plan{background:transparent;border:0;border-top:1px solid #d3dac6;padding:16px 0 0;color:#69715e}
.home-preview .consultation{background:#eef1e5;border-top:1px solid #d8dfc8;border-bottom:1px solid #d8dfc8}
.home-preview .consultation .section-heading{text-align:center;max-width:760px;margin:0 auto 42px}
.home-preview .consultation .section-heading>p{line-height:2;max-width:660px;margin:22px auto 0;font-size:15px}
.home-preview .assurances{max-width:820px;margin:0 auto 44px;padding:24px 0;border-block:1px solid #bcc7a9;gap:0}
.home-preview .assurances p{text-align:center;padding:5px 20px}
.home-preview .assurances p+p{border-left:1px solid #c4cdb5}
.home-preview .assurances b{font-family:"Yu Mincho",serif;font-size:26px;color:#354c28}
.home-preview .assurances span{display:block;margin-top:5px}
.home-preview .contact-methods{background:#fff;padding:36px 42px;border:0;gap:50px}
.home-preview .contact-methods>div{min-width:0}
.home-preview .contact-methods .button{min-width:0;width:100%}
.home-preview .contact-flow{text-align:center;line-height:2.2;font-size:13px}
.home-preview .columns{background:#faf9f4}
.home-preview .columns .section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:35px}
.home-preview .home-topics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}
.home-preview .topic-link{padding:9px 17px;background:transparent;border:1px solid #c8d0ba;border-radius:0;font-size:13px;color:#465636;text-decoration:none}
.home-preview .topic-link:hover{background:#e9eddf}
.home-preview .home-articles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-bottom:36px}
.home-preview .column-entry{border:0;padding:0;background:#fff;min-width:0}
.home-preview .column-entry>a{display:flex;flex-direction:column;gap:0;height:100%;text-decoration:none}
.home-preview .column-entry img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0}
.home-preview .column-entry>a>div{padding:25px 28px 28px}
.home-preview .column-entry h2{font-family:"Yu Gothic",Meiryo,sans-serif;font-size:19px;line-height:1.8;letter-spacing:0;margin:9px 0 16px;color:#303c2a}
.home-preview .column-entry time{font:12px Georgia,serif;color:#78816c;letter-spacing:.08em}
.home-preview .category-label{font-size:11px;color:#607547;letter-spacing:.05em}
.home-preview .columns>.wrap>.solid-link{display:table;margin:38px auto 0;padding:16px 42px}
.home-preview main>.closing{padding:62px 0;background:#354b2b}
.home-preview .closing h2,.home-preview .closing p{color:#fffdf5}
.home-preview .closing h2{font-size:28px}
.home-preview .closing .button{border:1px solid #b9c4a8;background:transparent;color:#fffdf5}
.home-preview .global-footer{padding-top:48px;background:#f8f8f2}
.home-preview .text-link:hover{color:#293d20;text-decoration-thickness:2px}
@media(max-width:900px){.home-preview main h2{font-size:30px}.home-preview .worries h2{font-size:32px}.home-preview .worries .section-heading{gap:30px}.home-preview .people{gap:30px;padding:35px}.home-preview .service-row{gap:25px}.home-preview .service-title h3{font-size:24px}.home-preview .contact-methods{padding:28px;gap:25px}}
@media(max-width:760px){.home-preview main>section:not(.hero){padding:58px 0}.home-preview main h2{font-size:27px}.home-preview .section-heading{margin-bottom:28px}.home-preview .worries .section-heading{grid-template-columns:1fr;gap:28px}.home-preview .worries h2{font-size:29px}.home-preview .two-columns{grid-template-columns:1fr;gap:35px}.home-preview .worry-group li{font-size:15px}.home-preview .worry-group h3{font-size:19px}.home-preview .services>.wrap>.section-heading{display:block}.home-preview .services .section-heading>p{margin-top:18px;max-width:none}.home-preview .service-row{grid-template-columns:1fr;gap:20px;padding:28px 0}.home-preview .service-row dl>div{grid-template-columns:1fr;gap:5px}.home-preview .service-consult{padding:24px 20px}.home-preview #urizun-comic-demo{margin:45px 0}.home-preview #urizun-comic-demo .uc-surface{padding:28px 12px}.home-preview #urizun-comic-demo h2{font-size:23px}.home-preview .people{grid-template-columns:1fr;padding:28px 22px;margin-top:42px;gap:28px}.home-preview .representative{max-width:260px;margin:auto}.home-preview .representative img{height:280px}.home-preview .people-copy h2{font-size:27px}.home-preview .assurances p{padding:3px 8px}.home-preview .assurances b{font-size:18px}.home-preview .assurances span{font-size:11px}.home-preview .contact-methods{grid-template-columns:1fr;padding:25px 20px;gap:28px}.home-preview .phone{font-size:30px}.home-preview .contact-flow{font-size:11px}.home-preview .columns .section-heading{display:block}.home-preview .home-topics{gap:7px}.home-preview .topic-link{font-size:12px;padding:7px 10px}.home-preview .home-articles{grid-template-columns:1fr;gap:24px}.home-preview .column-entry>a>div{padding:20px}.home-preview .column-entry h2{font-size:17px}.home-preview main>.closing{padding:40px 0}.home-preview .closing h2{font-size:25px}.home-preview .global-footer{padding-bottom:90px}}

/* Motion is decorative: all content remains visible without JavaScript. */
@keyframes urizunPhotoDrift{from{transform:scale(1.025) translateX(.4%)}to{transform:scale(1.075) translateX(-.6%)}}
@keyframes urizunTitleIn{from{opacity:0;transform:translateY(22px);filter:blur(3px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(prefers-reduced-motion:no-preference){
.home-preview .hero-photo{overflow:hidden}
.home-preview .hero-photo img{animation:urizunPhotoDrift 16s ease-in-out infinite alternate;transform-origin:75% 45%}
.home-preview .hero-title-line{animation:urizunTitleIn 1.1s cubic-bezier(.2,.7,.2,1) both}
.home-preview .hero-title-second{animation-delay:.28s}
.home-preview .hero .lead{animation:urizunTitleIn 1s .5s both}
.home-preview .hero .button{animation:urizunTitleIn 1s .7s both}
.home-preview .motion-ready{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform 1.1s cubic-bezier(.16,1,.3,1)}
.home-preview .motion-ready.is-visible{opacity:1;transform:none}
.home-preview .column-entry img{transition:transform .7s ease}
.home-preview .column-entry>a{overflow:hidden}
.home-preview .column-entry:hover img{transform:scale(1.025)}
}
.home-preview .hero-photo .hero-scene{position:absolute;inset:0;opacity:0;transition:opacity 1s ease;animation:none;object-fit:cover}
.home-preview .hero-photo .hero-scene.is-current{opacity:1}
.home-preview .hero-photo .scene-1{object-position:75% center}
.home-preview .hero-photo .scene-2{object-position:72% center}
.home-preview .hero-film-controls{position:absolute;right:25px;bottom:46px;z-index:4;display:flex;gap:8px;align-items:center;background:#faf9f0ed;padding:6px 10px;color:#31432c}
.home-preview .hero-film-controls button{border:0;background:transparent;color:inherit;min-width:36px;min-height:36px;padding:5px;font-size:17px;cursor:pointer}
.home-preview .hero-film-controls .film-pause{font-size:11px;border-left:1px solid #ccd1c2;padding-left:13px}
.home-preview .hero-film-count{font:12px Georgia,serif;letter-spacing:.1em}
@keyframes filmRight{from{transform:scale(1.025) translateX(-.4%)}to{transform:scale(1.1) translateX(.4%)}}
@keyframes filmOut{from{transform:scale(1.09)}to{transform:scale(1.015)}}
@media(prefers-reduced-motion:no-preference){.home-preview .hero-photo .hero-scene.is-moving{animation:urizunPhotoDrift 4.2s ease-out both}.home-preview .hero-photo .scene-1.is-moving{animation:filmRight 4.2s ease-out both}.home-preview .hero-photo .scene-2.is-moving{animation:filmOut 4.2s ease-out both}}
@media(prefers-reduced-motion:reduce){.home-preview .hero-photo .hero-scene{transition:none}}
@media(max-width:760px){.home-preview .hero-film-controls{top:240px;right:12px;bottom:auto;padding:2px 7px;gap:3px}.home-preview .hero-film-controls button{min-height:32px;min-width:32px}.home-preview .hero-photo .scene-1{object-position:75% center}.home-preview .hero-photo .scene-2{object-position:70% center}}



.home-preview .hero-photo .hero-scene.is-outgoing{opacity:1;z-index:1}.home-preview .hero-photo .hero-scene.is-current{z-index:2}.home-preview .hero-photo::after{z-index:3}.home-preview .hero-photo figcaption{z-index:4}

/* Keep all slideshow layers beneath the hero copy. */
.home-preview .hero-photo{z-index:0;isolation:isolate}
.home-preview .hero-inner{z-index:2}

/* Smartphone photographs recomposed in portrait format, 2026-10-08. */
@media(max-width:760px){
.home-preview .hero-photo{height:150vw;max-height:780px}
.home-preview .hero-photo .hero-scene{object-position:center center;transform-origin:center center}
.home-preview .hero-photo::after{background:linear-gradient(0deg,#f5f6ef,rgba(245,246,239,.8) 4%,transparent 18%)}
.home-preview .hero-inner{padding-top:min(140vw,730px)}
.home-preview .hero-film-controls{top:12px;bottom:auto;right:12px}
.home-preview .hero-photo figcaption{top:60px;font-size:12px}
}

/* Mobile portrait and headline composition, 2026-10-09. */
@media(max-width:760px){
.home-preview .hero-photo::after{background:linear-gradient(180deg,transparent 0%,transparent 52%,rgba(245,246,239,.5) 66%,rgba(245,246,239,.96) 80%,#f5f6ef 100%)}
.home-preview .hero-inner{padding-top:min(108vw,560px)}
.home-preview .hero .kicker{font-size:14px;letter-spacing:.05em;margin-bottom:13px;padding-bottom:7px}
.home-preview .hero h1.hero-title{font-size:clamp(28px,8.5vw,44px);line-height:1.35}
.home-preview .hero-title .hero-key{font-size:1.6em}
.home-preview .hero-title .hero-title-second{margin-top:8px}
.home-preview .hero .lead{font-size:16px;line-height:1.9;margin:20px 0}
.home-preview .hero .hero-note{font-size:14px}
.home-preview .hero-photo figcaption{font-size:14px;top:54px}
}
