:root{--cream: #fff8e9;--ink: #222326;--coral: #ff745f;--blue: #345be8;--lime: #d9ee76;--yellow: #ffd54a;--pink: #f6b8d0;--muted: #5d5a55;--gutter: 16px;--font: "Avenir Next", "Avenir", "Nunito Sans", "Segoe UI", "Helvetica Neue", Arial, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;color-scheme:light}@media(min-width:720px){:root{--gutter: 40px}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:64px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);line-height:1.55;overflow-x:hidden}html.i18n-wait main{opacity:0}main{transition:opacity .25s}img{display:block;max-width:100%}a{color:inherit}h1,h2,h3,p{margin:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.dots{background-image:radial-gradient(rgba(34,35,38,.1) 1.3px,transparent 1.3px);background-size:24px 24px}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(10px + env(safe-area-inset-top)) var(--gutter) 10px;background:#fff8e9e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{font-weight:800;font-size:24px;letter-spacing:-.06em;text-decoration:none}.brand .dot,.word b,.end-word b{color:var(--yellow)}.brand .dot{color:var(--blue)}.lang select{font:inherit;font-size:14px;font-weight:700;color:var(--ink);background:transparent;border:2px solid var(--ink);border-radius:999px;padding:6px 30px 6px 14px;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 16px) 52%,calc(100% - 11px) 52%;background-size:5px 5px;background-repeat:no-repeat}.furn{font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:18px var(--gutter) 0;position:relative;z-index:2}.big{font-weight:800;letter-spacing:-.045em;line-height:.98;font-size:clamp(46px,12vw,120px)}.small{margin-top:18px;font-size:clamp(18px,2.6vw,26px);line-height:1.4;letter-spacing:-.01em;max-width:34em}.capsule{display:inline-flex;align-items:center;gap:14px;background:var(--yellow);color:var(--ink);text-decoration:none;font-weight:800;font-size:19px;letter-spacing:-.02em;padding:16px 28px;border-radius:999px;min-height:56px;transition:transform .15s}.capsule:hover{transform:translateY(-2px)}.capsule:active{transform:scale(.97)}.capsule-ink{background:var(--ink);color:var(--cream)}.motifs{position:absolute;inset:0;pointer-events:none;overflow:hidden}.mo{position:absolute;width:var(--s);height:var(--s);animation:turn var(--t, 40s) linear infinite}.mo-flower{--s: clamp(90px, 18vw, 220px);left:-4%;top:12%;fill:var(--coral)}.mo-arch{--s: clamp(80px, 15vw, 200px);right:-3%;top:9%;fill:var(--blue);--t: 55s;animation-direction:reverse}.mo-ring{--s: clamp(80px, 15vw, 200px);right:2%;top:58%;stroke:var(--lime);--t: 60s}.mo-half{--s: clamp(80px, 14vw, 190px);left:3%;top:64%;fill:var(--pink);--t: 70s;animation-direction:reverse}.mo-spark1{--s: clamp(36px, 6vw, 90px);left:40%;top:7%;fill:var(--yellow);--t: 18s}.mo-spark2{--s: clamp(32px, 5vw, 80px);left:66%;top:80%;fill:var(--coral);--t: 22s;animation-direction:reverse}@keyframes turn{to{transform:rotate(360deg)}}.spin{transform-box:fill-box;transform-origin:center;animation:turn 14s linear infinite}.orbit{transform-origin:100px 100px;animation:turn 12s linear infinite}.thread{animation:flow 3s linear infinite}@keyframes flow{to{stroke-dashoffset:-32}}.hero{position:relative;overflow:hidden;padding-bottom:48px}.hero-in{position:relative;z-index:2;text-align:center;padding:28px var(--gutter) 0}.eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--yellow);padding:8px 14px;transform:rotate(-2deg);max-width:100%}.word{font-weight:800;letter-spacing:-.055em;line-height:1.05;font-size:clamp(104px,31vw,300px);margin:18px 0 0}.word span{display:inline-flex}.word i{font-style:normal;display:inline-block;animation:drop .7s cubic-bezier(.3,1.5,.5,1) both}.word i:nth-child(2){animation-delay:.07s}.word i:nth-child(3){animation-delay:.14s}.word i:nth-child(4){animation-delay:.21s}.word b{display:inline-block;animation:pop .5s .32s cubic-bezier(.3,1.8,.5,1) both;text-shadow:0 0 40px rgba(255,213,74,.55)}@keyframes drop{0%{transform:translateY(-60%) rotate(-10deg);opacity:0}}@keyframes pop{0%{transform:scale(0)}}.tagline{font-size:clamp(24px,4.4vw,44px);letter-spacing:-.02em;margin-top:4px}.hero-small{font-size:17px;color:var(--muted);margin:10px 0 26px}.montage{position:relative;z-index:2;display:block;width:min(100% - 2 * var(--gutter),880px);aspect-ratio:16 / 9;margin:40px auto 0;border:4px solid var(--ink);border-radius:22px;overflow:hidden;background:var(--ink);box-shadow:10px 10px 0 var(--blue);transform:rotate(-1.5deg)}.montage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.montage img:not(.on){visibility:hidden}.band{position:relative;overflow:hidden}.band-in{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:36px var(--gutter) 56px;display:grid;gap:24px;align-items:center}@media(min-width:820px){.band-in{grid-template-columns:1fr auto;padding:56px var(--gutter) 80px}}.band-art{width:clamp(150px,26vw,300px);height:auto;justify-self:end}.band-coral{background:var(--coral)}.band-blue{background:var(--blue);color:var(--cream)}.band-yellow{background:var(--yellow)}.band-lime{background:var(--lime)}.band-pink{background:var(--pink)}.band-coral .small{color:#3a2420}.band-blue .small{color:var(--lime)}.connect-art{width:clamp(180px,30vw,340px)}.apps-in{max-width:1180px;margin:0 auto;padding:28px var(--gutter) 64px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.chip{font:inherit;font-size:15px;font-weight:700;cursor:pointer;padding:8px 16px;border-radius:999px;border:2px solid var(--ink);background:var(--cream);color:var(--ink);min-height:42px;display:inline-flex;align-items:center;gap:8px}.chip .n{display:none}.chip[aria-pressed=true]{background:var(--ink);color:var(--cream)}.chip .sw{width:11px;height:11px;border-radius:50%;background:var(--sw, var(--yellow))}.status{color:var(--muted)}.status:empty{display:none}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:20px}.card{position:relative;display:flex;flex-direction:column;background:#fffdf7;border:3px solid var(--ink);border-radius:22px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}.card:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--accent, var(--blue))}.card[hidden]{display:none}.card-shot{position:relative;aspect-ratio:16 / 9;background:var(--tint);overflow:hidden;border-bottom:3px solid var(--ink)}.card-shot img{width:100%;height:100%;object-fit:cover}.card-badges{position:absolute;top:10px;left:10px;right:10px;display:flex;flex-wrap:wrap;gap:6px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:var(--cream);border:2px solid var(--ink)}.badge svg{width:14px;height:14px;flex:none}.card-body{position:relative;padding:36px 18px 18px;display:flex;flex-direction:column;flex:1}.card-icon{position:absolute;top:-32px;left:14px;width:62px;height:62px;border-radius:18px;overflow:hidden;background:var(--tint);border:3px solid var(--ink)}.card-icon img{width:100%;height:100%;object-fit:cover}.card-meta{position:absolute;top:10px;right:16px;font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--muted)}.card-name{font-size:22px;font-weight:800;letter-spacing:-.03em;margin:0 0 6px}.card-desc{margin:0 0 16px;color:var(--muted);font-size:15px;line-height:1.5;flex:1}.card-go{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;background:var(--yellow);color:var(--ink);font-weight:800;font-size:16px;padding:10px 20px;border-radius:999px;min-height:44px}.card-go:after{content:"\2192";transition:transform .2s}.card:hover .card-go:after{transform:translate(4px)}@media(min-width:1000px){.promises{display:grid;grid-template-columns:1fr 1fr}.promises .band-in{grid-template-columns:1fr}.promises .big{font-size:clamp(46px,6vw,84px)}.promises .band-art{justify-self:start;width:170px}}.setup{position:relative}.setup-in{max-width:1180px;margin:0 auto;padding:36px var(--gutter) 72px}.steps{list-style:none;padding:0;margin:36px 0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}.steps li{position:relative;background:#fffdf7;border:3px solid var(--ink);border-radius:22px;padding:22px;overflow:hidden}.step-mo{position:absolute;right:-18px;top:-18px;width:86px;height:86px;opacity:.9}.step-n{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ink);color:var(--yellow);font-weight:800;margin-bottom:12px}.steps h3{font-size:20px;font-weight:800;letter-spacing:-.02em;margin-bottom:6px;padding-right:50px}.steps p{font-size:15.5px;color:var(--muted)}.note{margin-top:12px;font-size:14px;color:var(--muted)}.dad-in{max-width:1180px;margin:0 auto;padding:36px var(--gutter) 72px;display:grid;gap:32px}@media(min-width:900px){.dad-in{grid-template-columns:1.1fr 1fr;align-items:center}}.dad-title{display:grid;gap:10px}.dad-title span{display:block}.dad-title small{display:block;font-size:clamp(22px,3.4vw,34px);font-weight:700;letter-spacing:-.02em}.dad-title em{font-style:normal;font-weight:800;letter-spacing:-.05em;line-height:1;font-size:clamp(54px,12vw,120px);background:linear-gradient(var(--blue),var(--blue)) 0 92% / 100% .12em no-repeat}.story p{font-size:clamp(17px,2vw,21px);line-height:1.6}.story p+p{margin-top:14px}.end{position:relative;overflow:hidden;background:var(--ink);color:var(--cream)}.end .furn{color:var(--cream)}.end-in{position:relative;z-index:2;text-align:center;padding:56px var(--gutter) 40px;display:flex;flex-direction:column;align-items:center}.end-word{font-weight:800;letter-spacing:-.055em;line-height:1.05;font-size:clamp(90px,24vw,240px)}.end .tagline{margin:0 0 30px}.end-back{margin-top:18px;font-weight:700;color:var(--cream);opacity:.8}.end .mo-flower{top:8%}.foot{position:relative;z-index:2;padding:26px var(--gutter) calc(26px + env(safe-area-inset-bottom));text-align:center;font-size:14px;color:#fff8e9bf}.foot nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px}.foot a{text-decoration:none;font-weight:600}.foot a:hover{text-decoration:underline;color:var(--cream)}.foot p{margin-top:12px;font-size:13px}@media(prefers-reduced-motion:reduce){.mo,.spin,.orbit,.thread,.word i,.word b{animation:none}}@media(max-width:819px){.band-in{gap:8px;padding-bottom:40px}.band-art,.connect-art{width:128px;margin-top:-4px}.eyebrow{max-width:calc(100% - 28px);font-size:12px}}.end .mo-spark2{top:60%;left:70%}:lang(ja) .big{font-size:clamp(34px,9.2vw,100px);letter-spacing:-.02em;line-height:1.12;word-break:keep-all;overflow-wrap:anywhere}:lang(ja) .dad-title em{font-size:clamp(38px,10.4vw,100px);letter-spacing:-.02em}:lang(ja) .eyebrow{letter-spacing:.04em}.band .furn,.setup .furn{max-width:1180px;margin-inline:auto}.promises .furn{max-width:none}
