:root{--navy:#081a38;--blue:#2459e0;--purple:#7850df;--cyan:#39bde7;--pale:#f4f7fc;--line:#dce4ef;--text:#13213a;--muted:#68768d;--grad:linear-gradient(135deg,#2459e0 0%,#5657df 52%,#8750db 100%)}
body{color:var(--text);background:#fff}.progress{background:var(--grad)}.header{height:82px;padding:0 max(28px,calc((100vw - 1240px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid rgba(8,26,56,.09);backdrop-filter:blur(18px)}.header.scrolled{height:70px;box-shadow:0 8px 30px rgba(8,26,56,.07)}.brand-mark{border-radius:10px;background:var(--grad);font-size:14px;box-shadow:0 7px 18px rgba(60,76,220,.22)}.brand b{font-family:var(--sans);font-size:16px;color:var(--navy)}.brand small{color:#8792a5}.nav{gap:27px;font-size:12px}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--grad);transition:.25s}.nav a:hover{color:var(--blue)}.nav a:hover:after{right:0}.head-cta{border-radius:8px;background:var(--grad);padding:12px 22px;box-shadow:0 8px 22px rgba(63,72,216,.2)}
.hero{min-height:780px;padding-top:150px;grid-template-columns:1fr 1fr;gap:72px;background:linear-gradient(135deg,#f8fbff 0%,#f2f3ff 58%,#fbf6ff 100%)}.hero:before{width:680px;height:680px;left:auto;right:-290px;top:-180px;background:radial-gradient(circle,rgba(106,82,228,.14),transparent 66%)}.hero-note{background:transparent;padding:0;transform:none;color:var(--blue);font-size:12px;letter-spacing:.08em}.hero-note:before{content:"";display:inline-block;width:32px;height:2px;margin-right:10px;vertical-align:middle;background:var(--grad)}h1{color:var(--navy);letter-spacing:-.055em;font-size:clamp(48px,5vw,72px);line-height:1.25}h1 em{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}h1 span:after{height:8px;background:linear-gradient(90deg,#63cdf1,#9b79ee);opacity:.45}.hero-lead{color:var(--muted);font-size:16px}.btn{border-radius:8px;padding:15px 25px;transition:.25s}.btn.primary{background:var(--grad);box-shadow:0 12px 28px rgba(61,76,214,.22)}.btn.primary:hover{transform:translateY(-2px)}.btn.secondary{border:1px solid #cbd4e2;color:var(--navy)}.hero-visual{height:520px}.blob{inset:12px -12px -12px 12px;border-radius:28px;background:var(--grad);transform:none}.hero-visual>img{inset:0;width:100%;height:100%;border-radius:24px;filter:saturate(.8);box-shadow:0 28px 70px rgba(18,34,74,.2)}.float-card{border-radius:12px;border:1px solid rgba(17,37,78,.08);box-shadow:0 16px 40px rgba(18,34,74,.15)}.float-card strong{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:27px}.fc1{left:-35px;top:42px}.fc2{right:-22px;bottom:28px}.hero-wave{display:none}
.promise{padding:110px 0;grid-template-columns:.9fr 1.1fr;gap:90px}.mini,.section-title span,.feature-copy>span{color:var(--blue);letter-spacing:.18em}.promise h2,.section-title h2,.message h2,.contact h2{color:var(--navy);letter-spacing:-.035em}.promise p,.section-title>p,.feature-copy p{color:var(--muted)}.promise-points{gap:14px}.promise-points div{border-radius:14px;aspect-ratio:auto;min-height:150px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px rgba(25,41,75,.06);position:relative;padding:72px 22px 22px;align-items:flex-start}.promise-points div:before{position:absolute;left:22px;top:20px;font:800 28px var(--latin);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.promise-points div:nth-child(1):before{content:"01"}.promise-points div:nth-child(2):before{content:"02"}.promise-points div:nth-child(3):before{content:"03"}
.section{padding:110px 0}.section-title{margin-bottom:58px}.problems{background:var(--navy);color:#fff}.problems .section-title h2{color:#fff}.problems .section-title>p{color:#adbad0}.problem-layout{gap:0}.problem-img{height:560px;border-radius:20px 0 0 20px;filter:saturate(.65)}.problem-list{background:#0e254d;border-radius:0 20px 20px 0;padding:10px 34px}.problem-list div{border-color:#294065;padding:19px 0}.problem-list b{color:#7bcff0}.problem-list span{font-size:15px}
.services{background:var(--pale)}.service-grid{gap:18px}.service-card{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 32px rgba(20,39,78,.055);transition:.25s}.service-card:hover{transform:translateY(-5px);border-color:#b8c6e0;box-shadow:0 18px 45px rgba(20,39,78,.1)}.service-card>span{color:var(--blue)}.service-icon{border-radius:12px;background:linear-gradient(135deg,#edf4ff,#f3edff)!important;color:var(--blue)!important}.service-card h3{color:var(--navy)}.service-card p,.service-card li{color:var(--muted)}
.features{background:#fff}.feature-list{gap:110px}.feature{gap:85px}.feature-media:before{inset:18px -18px -18px 18px;border-radius:22px;background:var(--grad)}.feature:nth-child(2) .feature-media:before{background:linear-gradient(135deg,#37bce8,#3f69df)}.feature-media img{border-radius:18px;filter:saturate(.78)}.feature-copy h3{color:var(--navy)}.feature-copy h3 em{background:linear-gradient(transparent 62%,#d7d8ff 62%)}
.flow{background:linear-gradient(135deg,#071932,#132c58)}.flow .section-title h2{color:#fff}.flow .section-title>p{color:#b2bed1}.flow-list{gap:14px}.flow-list li{border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);padding:28px}.flow-list b{color:#78d3f0}.flow-list strong{color:#fff}.flow-list p{color:#aab8ce}.price-section{background:var(--pale)}.price-grid{gap:16px}.price-card{border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(20,39,78,.05)}.price-card strong{color:var(--navy)}.case-study{background:linear-gradient(135deg,#edf5ff,#f3efff)}.case-metrics{gap:14px}.case-metrics div{border:1px solid #d9dfed;border-radius:14px;background:rgba(255,255,255,.72)}.case-metrics b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.faq-list{border-top:1px solid var(--navy)}details{border-color:var(--line)}summary{color:var(--navy)}
.contact{background:linear-gradient(130deg,#071831 0%,#173465 60%,#3a296f 100%)}.contact-inner>span{color:#7bd2f0}.contact h2{color:#fff}.contact p{color:#c1ccdd}.contact-box{border-radius:14px;box-shadow:0 22px 55px rgba(0,0,0,.2)}footer{background:#061226}.footer-brand .brand-mark{background:var(--grad);color:#fff}.footer-brand b{color:#fff}.copyright{border-color:#25334b}
@media(max-width:900px){.hero{grid-template-columns:1fr}.promise{grid-template-columns:1fr}.problem-layout{grid-template-columns:1fr}.problem-img{border-radius:18px 18px 0 0}.problem-list{border-radius:0 0 18px 18px}.service-grid,.price-grid{grid-template-columns:1fr 1fr}.service-card,.price-card,.service-card:nth-child(4),.service-card:nth-child(5),.price-card:nth-child(4),.price-card:nth-child(5){grid-column:auto}.flow-list{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.header{height:70px}.hero{padding-top:115px}.hero-visual{height:360px}.hero-visual>img{height:100%;top:0}.blob{inset:9px -9px -9px 9px}.promise{padding:78px 0}.promise-points{grid-template-columns:1fr}.promise-points div{min-height:125px}.service-grid,.price-grid,.flow-list{grid-template-columns:1fr}.section{padding:80px 0}.problem-img{height:290px}.feature-media{height:300px}.case-metrics{grid-template-columns:1fr 1fr}.contact-box{border-radius:12px}}
@media(max-width:650px){h1{font-size:36px;line-height:1.34;letter-spacing:-.07em}h1 span{white-space:nowrap}.hero-lead{font-size:14px}.hero-actions{margin-top:28px}}
/* responsive collision fixes: neutralize legacy decorative rules */
.promise-points div:before{display:none!important}.promise-points div{padding:24px 72px 24px 24px!important;background:linear-gradient(135deg,#fff,#f6f8ff)!important;border-color:var(--line)!important;color:var(--navy)!important}.promise-points div:nth-child(2),.promise-points div:nth-child(3){background:linear-gradient(135deg,#fff,#f6f8ff)!important;border-color:var(--line)!important}.promise-points div:after{right:20px!important;bottom:auto!important;top:50%!important;transform:translateY(-50%);font-size:44px!important;color:rgba(36,89,224,.09)!important}.promise-points strong{position:relative;z-index:1}
.problems .problem-list{display:grid!important;gap:0!important;background:#0e254d!important}.problems .problem-list>div{min-height:108px!important;background:transparent!important;border:0!important;border-bottom:1px solid #294065!important;border-radius:0!important;padding:22px 8px!important;display:flex!important;align-items:center!important;gap:22px!important;color:#fff!important}.problems .problem-list>div:last-child{border-bottom:0!important}.problems .problem-list b{position:static!important;flex:0 0 36px;color:#7bd2f0!important;font-size:17px!important}.problems .problem-list span{display:block!important;color:#fff!important;font-size:14px!important;line-height:1.7!important}
@media(max-width:650px){.promise-points div{padding:20px 68px 20px 20px!important}.promise-points div:after{font-size:36px!important}.problems .problem-list{padding:8px 20px!important}.problems .problem-list>div{min-height:96px!important;padding:18px 0!important;align-items:center!important}.problems .problem-list b{flex-basis:34px!important}.problems .problem-list span{font-size:13px!important}}
@media(max-width:650px){.fc1{left:0!important}.fc2{right:0!important}}
@media(max-width:650px){.feature-media:before{inset:10px 0 -10px 10px!important}}
@media(max-width:650px){.hero-visual{height:auto!important;aspect-ratio:16/9!important;margin-top:8px!important}.hero-visual>img{inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#f7f9ff!important}.hero-visual .blob{inset:7px -7px -7px 7px!important}.hero-visual .float-card{display:none!important}}
.hero-visual{height:auto!important;aspect-ratio:16/9!important}.hero-visual>img{inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#f7f9ff!important}
.feature-media{height:auto!important;aspect-ratio:16/9!important}.feature-media img{width:100%!important;height:100%!important;object-fit:contain!important;background:#f7f9ff!important}
.brand-mark{font-size:12px!important;letter-spacing:-.06em!important}.brand b{white-space:nowrap}.brand small{white-space:nowrap}
@media(max-width:650px){.brand b{font-size:13px!important}.brand small{font-size:7px!important;letter-spacing:.1em!important}.brand{gap:9px!important}}
@media(max-width:360px){.promise h2{font-size:29px!important;word-break:normal!important;overflow-wrap:anywhere!important}.contact-box{padding:14px!important}.contact-box img{width:82px!important;height:82px!important}}
.problem-img{width:100%!important;height:auto!important;aspect-ratio:16/9!important;object-fit:contain!important;background:#f7f9ff!important}
.title-line{white-space:nowrap}
@media(max-width:650px){.section-title h2 .title-line{font-size:clamp(24px,8vw,33px);letter-spacing:-.055em}}
@media(max-width:650px){.section-title h2 .title-line.long{font-size:clamp(22px,7.2vw,33px);letter-spacing:-.065em}.contact h2 .title-line{white-space:nowrap;font-size:clamp(24px,8vw,33px)}}
@media(max-width:650px){.service-grid.five{gap:12px!important}.service-card{padding:20px!important;border-radius:13px!important}.service-card>span{font-size:9px!important}.service-icon{width:44px!important;height:44px!important;margin:15px 0 17px!important;border-radius:10px!important}.service-icon svg{width:24px!important;height:24px!important}.service-card h3{font-size:21px!important;margin:0 0 8px!important}.service-card p{font-size:12px!important;line-height:1.7!important;min-height:0!important;margin:0!important}.service-card ul{margin:14px 0 0!important;padding:12px 0 0!important}.service-card li{font-size:11px!important;line-height:1.6!important;padding:3px 0 3px 16px!important}.service-card li:before{top:10px!important}}
@media(max-width:650px){.service-card{padding:16px!important}.service-icon{width:36px!important;height:36px!important;margin:10px 0 12px!important}.service-icon svg{width:20px!important;height:20px!important}.service-card h3{font-size:19px!important;margin-bottom:6px!important}.service-card p{font-size:11px!important;line-height:1.55!important}.service-card ul{margin-top:9px!important;padding-top:8px!important}.service-card li{font-size:10px!important;line-height:1.45!important;padding:2px 0 2px 14px!important}.service-card li:before{top:8px!important}}
:root{--sans:'Noto Sans JP',sans-serif;--latin:'Outfit',sans-serif}body{font-family:var(--sans);font-weight:400}h1{font-family:var(--sans);font-weight:800}.promise h2,.section-title h2,.contact h2{font-family:var(--sans);font-weight:800}.service-card h3,.feature-copy h3,.flow-list strong,summary{font-family:var(--sans);font-weight:700}.mini,.section-title span,.feature-copy>span,.service-card>span,.case-metrics b,.flow-list b{font-family:var(--latin)}
.profile{background:#fff}.profile-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center}.profile-photo{position:relative}.profile-photo:after{content:"";position:absolute;inset:16px -16px -16px 16px;border-radius:20px;background:var(--grad);z-index:0}.profile-photo img{position:relative;z-index:1;aspect-ratio:1/1;object-fit:cover;border-radius:18px;filter:saturate(.88)}.profile-copy>span{font:700 11px var(--latin);letter-spacing:.16em;color:var(--blue)}.profile-role{margin:18px 0 0!important;color:var(--blue)!important;font-size:12px!important;font-weight:700}.profile-copy h3{font-size:38px;line-height:1.35;margin:4px 0 24px;color:var(--navy)}.profile-copy h3 small{display:block;font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--muted);margin-top:7px}.profile-copy>p{color:var(--muted);font-size:14px;line-height:2}.profile-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-facts div{padding:20px 12px;border-right:1px solid var(--line)}.profile-facts div:last-child{border:0}.profile-facts b{display:block;font:800 28px var(--latin);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.profile-facts span{font-size:10px;color:var(--muted);font-weight:600}
@media(max-width:900px){.profile-grid{grid-template-columns:1fr;gap:48px}.profile-photo{max-width:560px}.profile-copy h3{font-size:33px}}
@media(max-width:650px){.profile-grid{gap:34px}.profile-photo:after{inset:8px -8px -8px 8px}.profile-copy h3{font-size:27px;margin-bottom:18px}.profile-copy>p{font-size:12px;line-height:1.8}.profile-facts{margin-top:20px}.profile-facts div{padding:14px 7px}.profile-facts b{font-size:22px}.profile-facts span{font-size:8px;line-height:1.5;display:block}}
@media(max-width:650px){footer{padding:32px 0 16px!important}.footer-inner{gap:18px!important}.footer-brand .brand-mark{width:34px!important;height:34px!important}.footer-inner p{margin:12px 0 0!important;font-size:9px!important;line-height:1.65!important}.footer-links{gap:5px 22px!important;font-size:10px!important;line-height:1.6!important}.copyright{margin-top:20px!important;padding-top:10px!important;font-size:8px!important}}
.contact{padding:85px 0 48px!important}footer{padding:44px 0 22px!important}
@media(max-width:650px){.contact{padding:68px 0 42px!important}footer{padding:32px 0 16px!important}}
.brand-logo{display:block;width:46px;height:46px;object-fit:cover;border-radius:10px;flex:0 0 auto;box-shadow:0 7px 18px rgba(31,42,72,.14)}.footer-brand .brand-logo{box-shadow:none}
@media(max-width:650px){.brand-logo{width:38px;height:38px;border-radius:8px}}
/* compact vertical rhythm */
.section{padding:76px 0!important}.section-title{margin-bottom:42px!important}.promise{padding:76px 0!important}.feature-list{gap:80px!important}
@media(max-width:650px){.section{padding:56px 0!important}.section-title{margin-bottom:30px!important}.promise{padding:56px 0!important}.feature-list{gap:58px!important}}
@media(min-width:651px) and (max-width:900px){.profile-grid{grid-template-columns:320px minmax(0,1fr)!important;gap:40px!important;align-items:start}.profile-photo{max-width:320px!important}.profile-copy h3{font-size:29px!important}.profile-copy>p{font-size:12px!important;line-height:1.75!important}.profile-facts{margin-top:18px!important}.profile-facts div{padding:12px 7px!important}.profile-facts b{font-size:22px!important}.profile-facts span{font-size:8px!important}}
@media(max-width:650px){.profile-photo{width:min(260px,82vw)!important;margin:0 auto!important}.profile-grid{gap:28px!important}}
.profile-role span{display:block;margin-top:5px;color:var(--navy);font-size:13px;line-height:1.6}.profile-work{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center;margin:20px 0 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--pale)}.profile-work img{width:150px;height:84px;object-fit:cover;border-radius:8px}.profile-work figcaption{display:flex;flex-direction:column}.profile-work b{font-size:13px;color:var(--navy)}.profile-work span{font-size:11px;color:var(--muted);font-weight:600}
@media(max-width:650px){.profile-role span{font-size:11px}.profile-work{grid-template-columns:108px 1fr;gap:10px;padding:9px}.profile-work img{width:108px;height:61px}.profile-work b{font-size:11px}.profile-work span{font-size:9px;line-height:1.5}}

/* Responsive service card columns */
.service-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch}
.service-grid.five .service-card,.service-grid.five .service-card:nth-child(4),.service-grid.five .service-card:nth-child(5){grid-column:auto!important;display:flex;flex-direction:column;height:100%}
.service-grid.five .service-card ul{margin-top:auto}
@media (min-width:651px) and (max-width:1050px){.service-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:650px){.service-grid.five{grid-template-columns:minmax(0,1fr)!important}.service-grid.five .service-card{height:auto}}

/* Seminar and meeting image pair */
.dual-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dual-media figure{position:relative;z-index:1;margin:0;min-width:0;height:100%;overflow:hidden;border-radius:18px;background:#f6f8fc}
.dual-media figure img{width:100%;height:100%;object-fit:cover;border-radius:0}
.dual-media figure:first-child img{object-position:36% center}
.dual-media figure:nth-child(2) img{object-position:32% center}
.dual-media figcaption{position:absolute;left:14px;bottom:14px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--navy);font-size:11px;font-weight:700;box-shadow:0 6px 18px rgba(20,39,78,.12)}
@media(max-width:650px){.dual-media{height:230px!important;gap:8px}.dual-media figure{border-radius:12px}.dual-media figcaption{left:8px;bottom:8px;padding:5px 8px;font-size:9px}}
@media(max-width:650px){.feature{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}.feature>*{min-width:0}.dual-media{width:100%;max-width:100%;min-width:0}.dual-media figure{width:auto;min-width:0}}
.dual-media figcaption{z-index:2}

/* Four profile metrics */
.profile-facts{grid-template-columns:repeat(4,minmax(0,1fr))}
.profile-facts div:nth-child(4){border-right:0}
@media(max-width:650px){.profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-facts div{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)}.profile-facts div:nth-child(2n){border-right:0!important}.profile-facts div:nth-last-child(-n+2){border-bottom:0}}

/* Keep the hero illustration unobstructed */
.hero-visual .float-card{display:none!important}

/* Tighter section rhythm */
.hero{padding-bottom:52px!important}
.promise{padding:48px 0!important}
.section{padding:56px 0!important}
.section-title{margin-bottom:34px!important}
.feature-list{gap:56px!important}
@media(max-width:650px){.hero{padding-bottom:36px!important}.promise{padding:42px 0!important}.section{padding:42px 0!important}.section-title{margin-bottom:24px!important}.feature-list{gap:42px!important}}

/* Approved customer problem statements */
@media(min-width:901px){.problem-layout{align-items:stretch}.problem-img{height:100%!important;aspect-ratio:auto!important;object-fit:cover!important}.problems .problem-list>div{min-height:92px!important;padding:16px 8px!important}}

/* Give the AI knowledge illustration breathing room */
.feature:nth-child(2) .feature-media{display:grid;place-items:center;padding:clamp(28px,4vw,54px);overflow:hidden;border-radius:18px;background:#f7f9ff}
.feature:nth-child(2) .feature-media img{width:min(82%,640px)!important;height:auto!important;max-height:82%!important;object-fit:contain!important;background:transparent!important}
@media(max-width:650px){.feature:nth-child(2) .feature-media{height:250px!important;padding:28px}.feature:nth-child(2) .feature-media img{width:82%!important;max-height:78%!important}}

/* Enlarge the representative's project photo */
.profile-work{grid-template-columns:260px 1fr!important;gap:24px!important;padding:18px!important}
.profile-work img{width:260px!important;height:146px!important;border-radius:12px!important}
.profile-work b{font-size:16px!important}.profile-work span{font-size:13px!important}
@media(max-width:650px){.profile-work{grid-template-columns:140px 1fr!important;gap:12px!important;padding:10px!important}.profile-work img{width:140px!important;height:79px!important;border-radius:8px!important}.profile-work b{font-size:12px!important}.profile-work span{font-size:10px!important}}

/* Keep Japanese particles with their hero headline phrases */
.hero h1{font-size:clamp(42px,4.8vw,68px)!important;line-height:1.28!important}
.hero h1 .hero-line{display:inline-block!important;white-space:nowrap}
.hero h1 .hero-line-team{position:relative}
.hero h1 .hero-line-team:after{content:"";position:absolute;left:-2%;right:-2%;bottom:7px;height:14px;background:linear-gradient(90deg,#9be7f5,#bcb7ff);z-index:-1}
@media(max-width:650px){.hero h1{font-size:clamp(34px,10vw,43px)!important;line-height:1.32!important}.hero h1 .hero-line-team:after{height:9px;bottom:5px}}

/* Prevent orphaned punctuation in the price introduction */
@media(min-width:901px){.price-intro span{display:inline-block;white-space:nowrap}}

/* Prevent orphaned punctuation in the flow introduction */
@media(min-width:901px){.flow-intro span{display:inline-block;white-space:nowrap}}

/* Highlight the AI automation product sales result */
.profile-achievement{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;padding:18px 22px;border-radius:14px;background:linear-gradient(135deg,#eef4ff,#f2edff);border:1px solid #d9e0f5;color:var(--navy)}
.profile-achievement span{font-size:13px;font-weight:700}.profile-achievement strong{font:800 34px/1 var(--latin);white-space:nowrap;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.profile-achievement small{font:700 13px var(--sans);margin-left:3px}
@media(max-width:650px){.profile-achievement{margin-top:14px;padding:14px 16px;gap:12px}.profile-achievement span{font-size:10px}.profile-achievement strong{font-size:27px}.profile-achievement small{font-size:10px}}

/* Compact company and legal information in the footer */
.footer-company{max-width:670px}.company-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px;margin:20px 0 0;color:#9aabc3;font-size:11px;line-height:1.6}.company-details div{display:grid;grid-template-columns:58px 1fr;gap:8px}.company-details dt{color:#7187a5;font-weight:600}.company-details dd{margin:0}.company-details a{color:#c6d2e4}.footer-links{align-content:start}.footer-links a:nth-last-child(-n+3){color:#aebdd2}
@media(max-width:650px){.company-details{grid-template-columns:1fr;gap:4px;margin-top:14px;font-size:9px}.company-details div{grid-template-columns:50px 1fr}.footer-links{grid-template-columns:1fr 1fr!important;margin-top:4px}}

/* AI development tools */
.tech-stack{background:#fff}.tech-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.tech-card{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(24,43,82,.07)}.tech-card img{width:100%;aspect-ratio:16/8.6;object-fit:cover}.tech-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px}.tech-card strong{font:700 18px var(--latin);color:var(--navy)}.tech-card span{font-size:11px;font-weight:700;color:var(--muted)}
@media(max-width:650px){.tech-grid{grid-template-columns:1fr;gap:14px}.tech-card figcaption{padding:13px 15px}.tech-card strong{font-size:16px}.tech-card span{font-size:9px}}

/* Subtle animated background accents */
.hero{background-size:180% 180%!important;animation:heroGradient 16s ease-in-out infinite}
.tech-stack,.problems,.services,.features,.price-section,.profile,.faq{position:relative;overflow:hidden;isolation:isolate}
.tech-stack>*,.problems>*,.services>*,.features>*,.price-section>*,.profile>*,.faq>*{position:relative;z-index:1}
.tech-stack:before,.services:before,.profile:before{content:"";position:absolute;z-index:0;width:360px;height:360px;border-radius:50%;filter:blur(2px);pointer-events:none;animation:accentDrift 13s ease-in-out infinite alternate}
.tech-stack:before{right:-150px;top:40px;background:radial-gradient(circle at 35% 35%,rgba(74,99,241,.16),rgba(124,73,224,.06) 48%,transparent 70%)}
.services:before{left:-170px;top:18%;background:radial-gradient(circle at 60% 40%,rgba(52,194,234,.14),rgba(74,99,241,.05) 52%,transparent 72%);animation-delay:-4s}
.profile:before{right:-140px;bottom:6%;background:radial-gradient(circle at 40% 40%,rgba(126,76,226,.13),rgba(75,108,237,.05) 52%,transparent 72%);animation-delay:-8s}
.problems:before,.faq:before{content:"";position:absolute;z-index:0;width:230px;height:230px;opacity:.32;pointer-events:none;background-image:radial-gradient(circle,rgba(72,103,226,.3) 1.5px,transparent 1.5px);background-size:18px 18px;mask-image:linear-gradient(135deg,#000,transparent 72%);animation:dotFloat 18s ease-in-out infinite alternate}
.problems:before{right:3%;top:7%}.faq:before{left:2%;bottom:4%;transform:rotate(180deg);animation-delay:-6s}
.features:after,.price-section:after{content:"";position:absolute;z-index:0;width:280px;height:280px;border:1px solid rgba(76,97,226,.12);border-radius:50%;pointer-events:none;animation:ringFloat 17s ease-in-out infinite alternate}
.features:after{right:-130px;top:30%}.price-section:after{left:-135px;bottom:8%;animation-delay:-5s}
.contact:before{animation:ringFloat 16s ease-in-out infinite alternate}.contact:after{animation:ringFloat 19s ease-in-out infinite alternate-reverse}
@keyframes heroGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes accentDrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-22px,28px,0) scale(1.08)}}
@keyframes dotFloat{0%{transform:translate3d(0,0,0) rotate(0deg)}100%{transform:translate3d(18px,-24px,0) rotate(4deg)}}
@keyframes ringFloat{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(22px,-18px,0) scale(1.1)}}
@media(max-width:650px){.tech-stack:before,.services:before,.profile:before{width:240px;height:240px;opacity:.75}.problems:before,.faq:before{width:150px;height:150px}.features:after,.price-section:after{width:190px;height:190px}}
@media(prefers-reduced-motion:reduce){.hero,.tech-stack:before,.services:before,.profile:before,.problems:before,.faq:before,.features:after,.price-section:after,.contact:before,.contact:after{animation:none!important}}

/* Replace circular motion accents with linear geometry */
.hero:before{width:460px!important;height:260px!important;border-radius:0!important;background:repeating-linear-gradient(90deg,rgba(76,98,229,.09) 0 1px,transparent 1px 34px),repeating-linear-gradient(0deg,rgba(76,98,229,.06) 0 1px,transparent 1px 34px)!important;transform:rotate(-8deg);mask-image:linear-gradient(135deg,#000,transparent 78%);animation:linearSlide 18s ease-in-out infinite alternate}
.tech-stack:before,.services:before,.profile:before{width:420px!important;height:230px!important;border-radius:0!important;filter:none!important;background:repeating-linear-gradient(135deg,rgba(74,99,241,.11) 0 2px,transparent 2px 28px)!important;mask-image:linear-gradient(90deg,#000,transparent 85%);animation:linearSlide 15s ease-in-out infinite alternate!important}
.services:before{background:repeating-linear-gradient(135deg,rgba(52,194,234,.12) 0 2px,transparent 2px 30px)!important}.profile:before{background:repeating-linear-gradient(135deg,rgba(126,76,226,.10) 0 2px,transparent 2px 30px)!important}
.problems:before,.faq:before{width:300px!important;height:190px!important;background:repeating-linear-gradient(0deg,rgba(72,103,226,.16) 0 1px,transparent 1px 18px),repeating-linear-gradient(90deg,rgba(72,103,226,.10) 0 1px,transparent 1px 36px)!important;mask-image:linear-gradient(135deg,#000,transparent 76%);animation:linearSlide 17s ease-in-out infinite alternate!important}
.features:after,.price-section:after{width:300px!important;height:150px!important;border-radius:0!important;border:1px solid rgba(76,97,226,.13)!important;box-shadow:18px 18px 0 -17px rgba(76,97,226,.16),36px 36px 0 -35px rgba(76,97,226,.11);animation:linearTilt 17s ease-in-out infinite alternate!important}
.contact:before,.contact:after{width:430px!important;height:190px!important;border-radius:0!important;border-color:rgba(255,255,255,.12)!important;animation:linearTilt 18s ease-in-out infinite alternate!important}
@keyframes linearSlide{0%{transform:translate3d(0,0,0) rotate(-7deg)}100%{transform:translate3d(24px,-18px,0) rotate(-4deg)}}
@keyframes linearTilt{0%{transform:translate3d(0,0,0) rotate(-8deg)}100%{transform:translate3d(22px,-16px,0) rotate(-4deg)}}
@media(max-width:650px){.hero:before{width:300px!important;height:180px!important}.tech-stack:before,.services:before,.profile:before{width:260px!important;height:160px!important}.features:after,.price-section:after{width:210px!important;height:110px!important}}
@media(prefers-reduced-motion:reduce){.hero:before{animation:none!important}}

/* Tighter service cards */
@media(min-width:651px){.service-grid.five{gap:16px!important}.service-grid.five .service-card{padding:24px 26px!important;min-height:0!important;height:auto!important}.service-card>span{font-size:10px!important}.service-icon{width:48px!important;height:48px!important;margin:16px 0 14px!important;border-radius:10px!important}.service-icon svg{width:26px!important;height:26px!important}.service-card h3{font-size:23px!important;line-height:1.4!important;margin:0 0 10px!important}.service-card p{font-size:12px!important;line-height:1.65!important;min-height:0!important;margin:0!important}.service-grid.five .service-card ul{margin:15px 0 0!important;padding:12px 0 0!important}.service-card li{font-size:11px!important;line-height:1.5!important;margin:4px 0!important;padding-left:17px!important}.service-card li:before{top:8px!important}}

/* Sales proof image */
.profile-achievement{display:block!important;padding:0!important;overflow:hidden}.profile-achievement-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 22px}.profile-achievement-proof{display:block;border-top:1px solid #d9e0f5;background:#fff}.profile-achievement-proof img{display:block;width:100%;height:230px;object-fit:cover;object-position:center 19%}.profile-achievement-proof:hover img{filter:brightness(.98)}
@media(max-width:650px){.profile-achievement-head{gap:12px;padding:14px 16px}.profile-achievement-proof img{height:150px;object-position:center 16%}}

/* Soft diagonal bar accents inspired by the reference */
.hero:before,.tech-stack:before,.services:before,.profile:before,.problems:before,.faq:before,.features:after,.price-section:after{width:138px!important;height:13px!important;border:0!important;border-radius:999px!important;filter:none!important;mask-image:none!important;background:linear-gradient(90deg,rgba(105,200,235,.18),rgba(89,151,230,.10))!important;box-shadow:54px 54px 0 rgba(105,200,235,.13),-72px 90px 0 rgba(105,200,235,.10),88px 132px 0 rgba(89,151,230,.08),-30px 164px 0 rgba(105,200,235,.09)!important;opacity:1!important;animation:barDrift 14s ease-in-out infinite alternate!important;pointer-events:none}
.hero:before{left:-30px!important;top:225px!important;width:170px!important;height:15px!important}.tech-stack:before{right:2%!important;top:16%!important}.services:before{left:3%!important;top:20%!important}.profile:before{right:3%!important;bottom:18%!important}.problems:before{right:5%!important;top:14%!important}.faq:before{left:4%!important;bottom:15%!important}.features:after{right:3%!important;top:30%!important}.price-section:after{left:3%!important;bottom:18%!important}
.tech-stack:before,.profile:before,.faq:before,.price-section:after{transform:rotate(-42deg)}.services:before,.problems:before,.features:after,.hero:before{transform:rotate(-47deg)}
@keyframes barDrift{0%{translate:0 0}100%{translate:14px -18px}}
@media(max-width:650px){.hero:before,.tech-stack:before,.services:before,.profile:before,.problems:before,.faq:before,.features:after,.price-section:after{width:90px!important;height:9px!important;box-shadow:36px 36px 0 rgba(105,200,235,.12),-48px 62px 0 rgba(105,200,235,.09),58px 92px 0 rgba(89,151,230,.07)!important}.hero:before{left:-32px!important;top:190px!important}}
@media(prefers-reduced-motion:reduce){.hero:before,.tech-stack:before,.services:before,.profile:before,.problems:before,.faq:before,.features:after,.price-section:after{animation:none!important}}

/* Match Ethical Sky Japan's Noto Sans JP / Outfit typography */
body{font-family:'Noto Sans JP',sans-serif!important;font-weight:400;letter-spacing:.025em;font-feature-settings:'palt' 1}
h1,.promise h2,.section-title h2,.message h2,.contact h2{font-family:'Noto Sans JP',sans-serif!important;font-weight:600!important;letter-spacing:-.025em!important}
h1 em{font-weight:700!important}.service-card h3,.feature-copy h3,.flow-list strong,.profile-copy h3,.price-card strong,summary{font-family:'Noto Sans JP',sans-serif!important;font-weight:600!important}.nav,.head-cta,.btn,.contact-box strong{font-weight:600!important}.brand b{font-weight:700!important}.hero-note,.hero-lead,.section-title>p,.promise p,.feature-copy p,.service-card p,.service-card li{font-weight:400}.mini,.section-title span,.feature-copy>span,.service-card>span,.profile-facts b,.flow-list b,.tech-card strong{font-family:'Outfit',sans-serif!important}

/* Two-column service cards on mobile */
@media(max-width:650px){.service-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.service-grid.five .service-card{padding:12px!important;border-radius:11px!important;min-width:0!important}.service-card>span{font-size:7px!important;letter-spacing:.06em!important;white-space:nowrap}.service-icon{width:30px!important;height:30px!important;margin:9px 0 10px!important;border-radius:7px!important}.service-icon svg{width:17px!important;height:17px!important}.service-card h3{font-size:15px!important;line-height:1.35!important;margin:0 0 6px!important;letter-spacing:-.04em!important}.service-card p{font-size:8.5px!important;line-height:1.55!important;margin:0!important}.service-grid.five .service-card ul{margin:9px 0 0!important;padding:8px 0 0!important}.service-card li{font-size:8px!important;line-height:1.45!important;padding:2px 0 2px 12px!important;margin:1px 0!important}.service-card li:before{top:7px!important;font-size:8px!important}.service-grid.five .service-card:last-child{grid-column:1/-1!important}.service-grid.five .service-card:last-child p,.service-grid.five .service-card:last-child ul{max-width:48%}}
@media(max-width:650px){.service-grid.five .service-card:last-child{grid-column:auto!important}.service-grid.five .service-card:last-child p,.service-grid.five .service-card:last-child ul{max-width:none}}

/* Larger profile proof cards and customer testimonial */
.profile-voices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.profile-voices .profile-work{display:flex!important;flex-direction:column;height:auto!important;margin:0!important;padding:10px!important;gap:10px!important}.profile-voices .profile-work>a{display:block;overflow:hidden;border-radius:10px}.profile-voices .profile-work img{width:100%!important;height:170px!important;object-fit:cover!important;border-radius:0!important}.profile-voices .customer-voice img{object-position:center 12%}.profile-voices .profile-work figcaption{padding:2px 4px 5px}.profile-voices .profile-work b{font-size:12px!important;line-height:1.5}.profile-voices .profile-work span{font-size:9px!important;line-height:1.55;margin-top:3px}
@media(max-width:650px){.profile-voices{grid-template-columns:1fr;gap:12px;margin-top:14px}.profile-voices .profile-work{padding:10px!important}.profile-voices .profile-work img{height:190px!important}.profile-voices .customer-voice img{height:360px!important;object-position:center top}.profile-voices .profile-work b{font-size:12px!important}.profile-voices .profile-work span{font-size:10px!important}}

/* New two-line hero message */
.hero h1.hero-headline-new{font-size:clamp(42px,4.6vw,58px)!important;line-height:1.34!important}.hero-headline-new .hero-line-auto{font-size:.82em;letter-spacing:-.045em}.hero-headline-new .hero-line-auto em{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}.hero-headline-new .hero-line-auto:after{content:"";position:absolute;left:-1%;right:-1%;bottom:4px;height:10px;background:linear-gradient(90deg,#9be7f5,#bcb7ff);z-index:-1}
@media(max-width:650px){.hero h1.hero-headline-new{font-size:clamp(33px,9.5vw,40px)!important}.hero-headline-new .hero-line-auto{font-size:.72em;letter-spacing:-.06em}.hero-headline-new .hero-line-auto:after{height:7px;bottom:3px}}

/* Two-line benefit-led service heading */
.service-heading-two-line small{display:block;margin-bottom:.18em;color:var(--blue);font-size:.58em;font-weight:700;line-height:1.2;letter-spacing:.04em}

/* Large, faint AI service watermarks */
.services .service-watermarks{position:absolute!important;inset:0!important;z-index:0!important;overflow:hidden;pointer-events:none;display:block}.service-watermarks span{position:absolute;white-space:nowrap;font-family:'Outfit',sans-serif;font-size:clamp(92px,13vw,190px);font-weight:800;line-height:1;letter-spacing:-.055em;color:rgba(65,85,165,.052)}.service-watermarks span:first-child{top:16%;left:-1.5%}.service-watermarks span:last-child{right:-3%;bottom:5%;color:rgba(64,180,214,.058)}
@media(max-width:650px){.service-watermarks span{font-size:68px;color:rgba(65,85,165,.06)}.service-watermarks span:first-child{top:11%;left:-10%}.service-watermarks span:last-child{right:-30%;bottom:4%;color:rgba(64,180,214,.065)}}

/* Tactile pop interaction for cards, images and key objects */
.pop-object{will-change:transform,box-shadow;transition:transform .26s cubic-bezier(.2,.8,.2,1),box-shadow .26s ease,filter .26s ease!important;transform-origin:center}.pop-object:hover,.pop-object:focus-within,.pop-object.is-popped{transform:translateY(-7px) scale(1.025)!important;box-shadow:0 18px 42px rgba(36,54,120,.16)!important;filter:saturate(1.035);z-index:3}.service-card.pop-object:hover,.service-card.pop-object.is-popped{transform:translateY(-8px) scale(1.018)!important}.problem-list>div.pop-object:hover,.profile-facts>div.pop-object:hover,.problem-list>div.pop-object.is-popped,.profile-facts>div.pop-object.is-popped{transform:translateY(-4px) scale(1.018)!important}.service-icon,.brand-logo{transition:transform .24s cubic-bezier(.2,.8,.2,1),filter .24s ease}.service-card:hover .service-icon,.service-card.is-popped .service-icon{transform:translateY(-3px) scale(1.12) rotate(-3deg);filter:drop-shadow(0 8px 10px rgba(71,92,218,.18))}.brand:hover .brand-logo{transform:translateY(-2px) scale(1.08) rotate(-2deg)}
@media(max-width:650px){.pop-object:hover{transform:none!important;box-shadow:inherit!important;filter:none}.pop-object.is-popped{transform:translateY(-4px) scale(1.018)!important;box-shadow:0 12px 28px rgba(36,54,120,.15)!important}.service-card.pop-object.is-popped{transform:translateY(-4px) scale(1.012)!important}}
@media(prefers-reduced-motion:reduce){.pop-object,.service-icon,.brand-logo{transition:none!important}.pop-object:hover,.pop-object:focus-within,.pop-object.is-popped{transform:none!important}}

/* Unified AI × SNS consultation CTA */
.head-cta{white-space:nowrap;font-size:12px!important;padding-left:18px!important;padding-right:18px!important}.contact-box strong{letter-spacing:-.035em}
@media(max-width:650px){.hero-actions .primary{font-size:12px!important;padding-left:16px!important;padding-right:16px!important}.contact-box strong{font-size:clamp(18px,5.5vw,24px)!important}}

/* Button treatment inside the LINE consultation card */
.contact-box strong{display:inline-flex!important;align-items:center;justify-content:center;align-self:flex-start;gap:8px;margin:9px 0 7px!important;padding:10px 16px;border-radius:999px;background:linear-gradient(100deg,#315eea,#7a4de2);color:#fff!important;font-size:15px!important;line-height:1.35;box-shadow:0 8px 20px rgba(76,77,221,.23);transition:transform .22s ease,box-shadow .22s ease}.contact-box strong:after{content:'→';font-family:sans-serif;font-size:1.05em}.contact-box:hover strong,.contact-box.is-popped strong{transform:translateY(-2px);box-shadow:0 12px 26px rgba(76,77,221,.3)}
@media(max-width:650px){.contact-box strong{font-size:12px!important;padding:9px 12px;white-space:nowrap}}

/* Two-column price cards on small screens */
@media(max-width:650px){.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.price-grid .price-card,.price-grid .price-card:nth-child(4),.price-grid .price-card:nth-child(5){grid-column:auto!important;min-width:0;padding:15px 12px!important;border-radius:12px!important}.price-card>span{font-size:10px!important;line-height:1.45}.price-card strong{font-size:clamp(18px,5.4vw,24px)!important;line-height:1.35;margin:10px 0 6px!important;letter-spacing:-.05em;white-space:normal}.price-card strong small{font-size:10px!important}.price-card p{font-size:9px!important;line-height:1.5}.price-grid .price-card:first-child strong{font-size:clamp(15px,4.3vw,20px)!important;white-space:nowrap}}

/* Two-column technology cards on small screens */
@media(max-width:650px){.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.tech-card{min-width:0;border-radius:12px!important}.tech-card img{aspect-ratio:16/10!important}.tech-card figcaption{align-items:flex-start!important;flex-direction:column;gap:2px!important;padding:10px!important}.tech-card strong{font-size:13px!important;line-height:1.25}.tech-card span{font-size:8px!important;line-height:1.35;white-space:nowrap}}

/* Tighten mobile hero spacing between CTA buttons and visual */
@media(max-width:650px){.hero{row-gap:18px!important;gap:18px!important;padding-bottom:24px!important}.hero-visual{margin-top:0!important}.hero-actions{margin-bottom:0!important}}

/* Official social links in the representative profile */
.profile-socials{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px}.profile-socials a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 13px;border:1px solid #d7dff0;border-radius:9px;background:#fff;color:var(--navy);box-shadow:0 6px 18px rgba(24,43,82,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.profile-socials a:hover{transform:translateY(-3px);box-shadow:0 11px 24px rgba(24,43,82,.12);border-color:#9eabe0}.profile-socials b{font-family:'Outfit',sans-serif;font-size:12px;font-weight:700}.profile-socials span{font-size:9px;color:var(--muted)}.profile-socials .social-x b{font-size:15px}.profile-socials .social-instagram b{color:#c13584}.profile-socials .social-youtube b{color:#e62117}
@media(max-width:650px){.profile-socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:11px 0 16px}.profile-socials a{min-width:0;flex-direction:column;justify-content:center;gap:0;padding:7px 4px;text-align:center}.profile-socials b{font-size:10px}.profile-socials .social-x b{font-size:13px}.profile-socials span{max-width:100%;font-size:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
