:root{--ink:#30282a;--plum:#98213e;--coral:#ff866e;--cream:#faf7f1;--line:#e6ddd6;--muted:#7b7170}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Noto Sans JP',Meiryo,sans-serif;font-size:15px;line-height:1.9;background:var(--cream)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--coral);outline-offset:5px}.preview{height:30px;display:flex;justify-content:center;align-items:center;gap:18px;font-size:9px;letter-spacing:2px;background:#382b2e;color:#fff}.preview span{letter-spacing:1px;font-size:10px;opacity:.8}header{height:100px;background:#fff;display:flex;align-items:center;padding:0 5%;gap:36px;position:sticky;top:0;z-index:10;border-bottom:1px solid #eee8e2}.logo{width:208px;display:block}nav{display:flex;gap:28px;margin-left:auto;font-size:12px;font-weight:bold}.navcta{padding:12px 20px;background:var(--plum);color:white;border-radius:5px;font-size:12px}.navcta span{margin-left:18px}.menu{display:none}.hero{max-width:1400px;margin:auto;min-height:660px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;padding:78px 6% 72px;overflow:hidden}.eyebrow,.section-tag{font-size:10px;letter-spacing:2.2px;font-weight:bold;color:var(--plum)}h1{font-size:clamp(38px,4.2vw,61px);line-height:1.5;letter-spacing:.06em;font-weight:650;margin:25px 0}h1 em{font-style:normal;color:var(--plum)}.hero-copy>p{color:#655b5b;line-height:2.2;margin-bottom:28px}.button{display:inline-flex;gap:30px;align-items:center;padding:16px 24px;border-radius:5px;background:var(--plum);color:white;border:0;font-size:13px;font-weight:600}.button span{font-size:20px}.button:hover{background:#741b31}.hero-note{font-size:10px;color:var(--muted);margin-top:15px;letter-spacing:1px}.hero-art{position:relative;width:100%;aspect-ratio:1;max-width:560px;isolation:isolate}.orbit{border:1px solid #dfd0c6;border-radius:50%;position:absolute;inset:4%}.orbit2{inset:15%;border-style:dashed}.petal{position:absolute;width:35%;height:37%;border-radius:65% 65% 60% 60%;left:32%;top:3%;transform-origin:50% 122%;background:#eab0a4;opacity:.55;z-index:-1}.p2{transform:rotate(72deg);background:#e7b987}.p3{transform:rotate(144deg);background:#b9c8b3}.p4{transform:rotate(216deg);background:#c7c2d3}.p5{transform:rotate(288deg);background:#dfa0ab}.art-center{position:absolute;inset:33%;border-radius:50%;background:var(--plum);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 20px 40px #98213e18}.art-center small{font-size:11px;letter-spacing:2px}.art-center strong{font-size:31px;letter-spacing:5px}.floating{position:absolute;background:#fff;border-radius:30px;padding:10px 22px;box-shadow:0 8px 20px #6c41300b;font-size:12px;display:flex;gap:10px;align-items:center}.floating i{width:7px;height:7px;background:var(--coral);border-radius:50%}.f1{top:13%;left:0}.f2{right:0;top:43%}.f3{bottom:15%;left:7%}.art-caption{position:absolute;bottom:-2%;left:0;right:0;text-align:center;font-size:11px;letter-spacing:2px;color:var(--muted)}.section{padding:96px 7%;scroll-margin-top:20px}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;margin-top:30px}h2{font-size:34px;line-height:1.65;letter-spacing:.045em;font-weight:600;margin:0 0 25px}.intro p{font-size:14px;color:#6b6060;margin:0 0 23px}.intro .lead{font-size:20px;color:var(--ink);font-weight:600}.intro .keyline{color:var(--plum);font-weight:600}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:28px 0 35px}.section-heading p{font-size:13px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service-card{padding:46px;background:#fff;border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.service-card.soft{background:#f2e9e7}.big-num{position:absolute;right:28px;top:5px;font-family:Georgia,serif;font-size:110px;line-height:1.3;color:#e6d9d4;opacity:.5}.service-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--plum);color:#fff;font-size:27px;margin-bottom:30px}.service-card>small{font-size:9px;letter-spacing:2px;color:var(--plum)}h3{font-size:24px;line-height:1.6;margin:13px 0}.service-card p{font-size:13px;color:#6b6060}.service-card ul{padding:20px 0 12px;list-style:none;font-size:13px}.service-card li{padding:8px 0;border-bottom:1px solid var(--line)}.service-card li:before{content:'＋';margin-right:12px;color:var(--plum)}.status{display:inline-block;font-size:10px;border:1px solid #cbb4ae;padding:4px 11px;border-radius:30px;color:var(--plum);letter-spacing:1px}.products{background:#fff}.product-tabs{display:flex;border-bottom:1px solid var(--line);gap:6px}.product-tabs button{border:0;background:none;flex:1;padding:18px 8px;color:var(--muted);font-size:18px;border-bottom:3px solid transparent}.product-tabs button span{display:block;font-size:9px}.product-tabs button[aria-selected=true]{color:var(--plum);border-bottom-color:var(--plum);font-weight:bold}.product-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;padding:60px 0 0}.product-copy h3{font-family:Georgia,serif;font-size:38px;color:var(--plum);margin:10px 0}.product-copy h4{font-size:22px;font-weight:600;line-height:1.7;margin:16px 0}.product-copy p{font-size:13px;line-height:2;color:#726766}.product-copy .product-disclaimer{font-size:11px;background:var(--cream);padding:15px;border-radius:5px}.text-link{display:inline-block;font-size:13px;color:var(--plum);font-weight:bold;margin-top:15px;border-bottom:1px solid var(--plum);padding:4px 0}.text-link span{margin-left:30px}.product-visual{background:#f8f5f1;border-radius:12px;box-shadow:0 20px 45px #563d3010;border:1px solid var(--line);transform:rotate(1deg);align-self:center}.mock-top{display:flex;justify-content:space-between;background:#fff;border-radius:12px 12px 0 0;border-bottom:1px solid var(--line);padding:15px 22px}.mock-top b{color:var(--plum);font-size:15px}.mock-top>span{font-size:9px;color:var(--muted)}.mock-inner{padding:22px}.mock-greeting{font-size:14px;font-weight:bold}.mock-stats{display:flex;gap:14px;margin:18px 0}.mock-stats>div{background:#fff;border-radius:8px;padding:13px 18px;flex:1}.mock-stats small{display:block;font-size:10px;color:var(--muted)}.mock-stats strong{font-size:28px;color:var(--plum)}.mock-stats strong span{font-size:11px}.mock-item{display:flex;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--line);font-size:11px}.mock-item small,.owl small{display:block;color:var(--muted);font-size:9px}.avatar{background:#e9ded6;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.pill{margin-left:auto;border-radius:4px;padding:2px 8px;background:#f4ddd1;color:#9e6045;font-size:9px}.owl{margin-top:16px;background:#eee7e5;display:flex;gap:15px;padding:12px;border-radius:7px;color:var(--plum);font-size:11px}.mock-note{font-size:9px;color:var(--muted);text-align:center;margin:0 0 15px}.values{background:#3b3034;color:#f9f5ef}.values .section-tag{color:#eeb3a5}.values h2{margin-top:28px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.value-grid article{border-top:1px solid #68565d;padding-top:23px}.value-grid article>span{color:#db9b8f;font-family:Georgia,serif;font-size:26px}.value-grid h3{font-size:19px}.value-grid p{font-size:13px;color:#c9bdc0}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about h2{margin-top:30px}.about p{font-size:13px;color:var(--muted)}.company{background:#fff;border:1px solid var(--line);padding:35px;border-radius:8px}.company img{width:190px;margin-bottom:20px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:90px 1fr;border-bottom:1px solid var(--line);padding:14px 0;font-size:12px}.company dt{color:var(--muted)}.company dd{margin:0}.company>small{display:block;font-size:10px;color:var(--muted);margin-top:18px}.contact{background:#f0dfda;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.contact h2{margin-top:20px}.contact p{font-size:13px;color:#76615e}.contact-box{padding:32px 40px;background:#fff8;border-radius:8px}.contact-box h3{font-size:20px}.button.light{background:#fff;color:var(--plum);margin-top:15px}footer{padding:50px 7%;background:#fff;display:flex;align-items:center;gap:30px;flex-wrap:wrap}footer img{width:160px}footer p{font-size:11px;color:var(--muted)}footer a{font-size:11px;margin-left:auto}footer small{width:100%;font-size:9px;color:var(--muted)}dialog{max-width:560px;width:90%;border:0;border-radius:10px;padding:45px;color:var(--ink)}dialog::backdrop{background:#34232b99}dialog h2{font-size:24px;margin-top:20px}dialog li{font-size:14px;margin-bottom:10px}dialog p{font-size:12px;color:var(--muted)}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px}.mobile-br{display:none}@media(min-width:1500px){.section{padding-left:calc((100% - 1200px)/2);padding-right:calc((100% - 1200px)/2)}}@media(max-width:1000px){header{gap:15px;padding:0 4%;height:80px}.logo{width:160px}nav{gap:15px;font-size:10px}.navcta{font-size:10px;padding:10px}.hero{padding:60px 5%;min-height:600px}h1{font-size:43px}.art-center strong{font-size:23px}.floating{padding:8px 13px;font-size:10px}.section{padding:70px 5%}h2{font-size:29px}.service-card{padding:30px}.product-panel{gap:5%}}@media(max-width:700px){.preview{height:26px;font-size:8px;gap:8px;letter-spacing:1px}.preview span{font-size:8px;letter-spacing:0}header{height:72px;padding:0 20px}.logo{width:155px}.navcta{display:none}.menu{display:block;margin-left:auto;border:1px solid var(--line);background:white;border-radius:4px;font-size:11px;padding:6px 10px}nav{display:none;position:absolute;left:0;right:0;top:72px;background:white;padding:15px 24px 25px;box-shadow:0 12px 15px #0001}nav.open{display:grid;gap:8px}nav a{padding:8px;font-size:13px}.hero{display:block;padding:50px 25px 45px;min-height:0}.eyebrow{font-size:8px;letter-spacing:1.4px}h1{font-size:37px;line-height:1.55;margin:20px 0}.hero-copy>p{font-size:12px}.hero-art{max-width:380px;margin:35px auto 15px}.art-center strong{font-size:26px}.art-center small{font-size:9px}.floating{font-size:10px}.art-caption{font-size:10px}.section{padding:60px 25px}.intro-grid,.service-grid,.product-panel,.about,.contact{grid-template-columns:1fr;gap:30px}.intro-grid{margin-top:25px}h2{font-size:27px}.intro .lead{font-size:17px}.intro p{font-size:12px}.section-heading{display:block;margin-bottom:25px}.section-heading p{font-size:12px}.service-card{padding:30px 25px}.service-card h3{font-size:23px}.product-tabs{overflow:auto;gap:0}.product-tabs button{min-width:110px;font-size:15px;padding:14px 7px}.product-panel{padding-top:30px}.product-copy h4{font-size:21px}.product-visual{transform:none}.value-grid{grid-template-columns:1fr;gap:25px;margin-top:25px}.value-grid h3{margin:5px 0}.value-grid article>span{font-size:21px}.company{padding:25px}.contact-box{padding:25px}.contact-box .button{font-size:11px;padding:13px 16px;gap:12px}footer{padding:35px 25px;gap:15px}footer p{width:100%;margin:0}footer a{margin-left:0}.mobile-br{display:block}dialog{padding:35px 24px}dialog h2{font-size:20px}dialog ul{padding-left:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

[hidden]{display:none!important}
.hero{grid-template-columns:1fr 1.15fr;gap:35px;padding-right:3%;position:relative}.hero-illustration{margin:0;position:relative;padding:20px 0 30px}.hero-illustration img{width:100%;height:auto;display:block;border-radius:48% 48% 10% 10%;box-shadow:0 20px 70px #98213e08}.hero-illustration figcaption{font-size:11px;letter-spacing:2px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:26px;color:var(--muted)}.caption-dot{width:7px;height:7px;background:var(--coral);border-radius:50%}.illustration-label{position:absolute;right:0;top:0;font-size:8px;letter-spacing:2px;color:var(--plum);border-top:1px solid #cbb4ae;padding-top:9px}.visual-story{display:grid;grid-template-columns:1.25fr 1fr;gap:0;background:#f1e7e0;overflow:hidden}.visual-story figure{margin:0;min-height:440px}.visual-story img{width:100%;height:100%;object-fit:cover;display:block}.visual-story-copy{padding:65px 12%;align-self:center}.visual-story-copy h2{margin-top:25px}.visual-story-copy p{font-size:13px;line-height:2.2;color:#77645f}.visual-story-copy small{font-size:10px;color:var(--muted)}.story-line{display:block;width:45px;height:2px;background:var(--plum);margin:25px 0}.values{position:relative;overflow:hidden}.values:after{content:"";position:absolute;width:260px;height:260px;right:-90px;top:-90px;border-radius:40% 60% 60% 40%;border:30px solid #efc9be0d;transform:rotate(30deg);pointer-events:none}.service-icon{border-radius:18px;transform:rotate(-8deg)}.contact{position:relative;overflow:hidden}.contact:before{content:"";position:absolute;width:150px;height:150px;left:-100px;top:-80px;border-radius:50%;border:35px solid #98213e08;pointer-events:none}@media(max-width:1000px){.hero{gap:15px}.visual-story-copy{padding:40px 9%}.visual-story figure{min-height:400px}}@media(max-width:700px){.hero{padding:45px 25px 25px}.hero-illustration{margin:35px -10px 0;padding-top:20px}.hero-illustration img{border-radius:45% 45% 8% 8%}.hero-illustration figcaption{font-size:10px;letter-spacing:1px;margin-top:20px}.illustration-label{font-size:7px}.visual-story{grid-template-columns:1fr}.visual-story figure{min-height:0;aspect-ratio:3/2}.visual-story-copy{padding:40px 25px 50px}.visual-story-copy h2{font-size:29px}}

