:root{--ink:#151515;--paper:#f2f0e9;--white:#fff;--blue:#2449ff;--lime:#d9ff43;--line:#c8c6bf;--muted:#686862}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans","Noto Sans JP",sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}.site-header{height:86px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4vw;border-bottom:1px solid var(--line);background:rgba(242,240,233,.94);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.logo{display:flex;align-items:baseline;gap:10px;width:max-content;line-height:1}.logo b{font-size:19px;letter-spacing:-.06em}.logo span{font-size:8px;letter-spacing:.2em}.site-header nav{display:flex;gap:34px;font-size:12px;font-weight:600}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--ink);transition:.25s}.site-header nav a:hover:after{width:100%}.header-contact{justify-self:end;background:var(--ink);color:#fff;padding:12px 18px;font-size:12px;display:flex;gap:32px}.hero{min-height:calc(100vh - 86px);padding:5vh 4vw 4vh;display:flex;flex-direction:column}.hero-kicker{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em}.hero h1{font-size:clamp(60px,10.2vw,150px);line-height:.94;letter-spacing:-.075em;margin:auto 0;font-weight:600}.hero h1 span{font-family:"Shippori Mincho",serif;font-weight:500;color:var(--blue);letter-spacing:-.07em}.hero-bottom{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px}.hero-bottom>p{max-width:540px;font-size:17px;margin:0}.round-link{width:122px;height:122px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;gap:13px;transition:.25s}.round-link:hover{transform:rotate(-6deg) scale(1.04)}.round-link span{font-weight:600;font-size:13px;line-height:1.4}.round-link b{font-size:20px}.hero-meta{display:flex;gap:9px;margin-top:30px}.hero-meta span{border:1px solid var(--ink);border-radius:99px;padding:6px 12px;font-size:10px}.intro{background:var(--blue);color:#fff;padding:130px 8vw;display:grid;grid-template-columns:1fr 2fr;gap:5vw}.section-no{font-size:10px;letter-spacing:.16em;font-weight:600}.intro-copy{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:start}.jp-serif{font-family:"Shippori Mincho",serif;font-size:clamp(27px,3vw,43px);line-height:1.65;margin:0}.intro-copy>p:last-child{font-size:14px;max-width:400px;margin-top:10px;color:#d8ddff}.services,.price,.process,.faq{padding:130px 8vw}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:5vw;margin-bottom:80px}.section-head h2{font-size:clamp(43px,6vw,82px);line-height:1.08;letter-spacing:-.055em;margin:0;font-weight:500}.service-list{border-top:1px solid var(--ink)}.service-list article{display:grid;grid-template-columns:80px 1fr 1.2fr;align-items:center;gap:30px;padding:32px 0;border-bottom:1px solid var(--line)}.service-list article>span{font-size:11px}.service-list h3{font-size:24px;margin:0;font-weight:500}.service-list p{max-width:510px;margin:0;font-size:14px;color:var(--muted)}.service-for{display:grid;grid-template-columns:80px 1fr;gap:30px;margin-top:35px;font-size:11px;letter-spacing:.06em}.service-for p{margin:0;color:var(--muted)}.works{background:var(--ink);color:#fff;padding:130px 8vw}.work-item{display:grid;grid-template-columns:1.4fr .6fr;gap:6vw;align-items:start}.work-visual{position:relative;background:#d5cbc0;padding:7%;display:block;overflow:hidden}.work-screen{background:#fff;color:#7f514a;box-shadow:0 30px 70px rgba(0,0,0,.28)}.screen-nav{height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 7%;font-family:"Shippori Mincho",serif;font-size:13px}.screen-nav i{font-family:"DM Sans",sans-serif;font-size:9px;font-style:normal;background:#a96e68;color:#fff;padding:6px 15px;border-radius:99px}.screen-copy{min-height:300px;background:linear-gradient(125deg,#f5e7e3,#e5c8c0);padding:9%;display:flex;flex-direction:column;justify-content:center}.screen-copy small{font-size:9px}.screen-copy strong{font-family:"Shippori Mincho",serif;font-size:clamp(29px,4vw,55px);line-height:1.45;margin:8px 0}.screen-copy em{font-size:8px;font-style:normal;letter-spacing:.2em}.screen-foot{display:flex;gap:8px;padding:18px 7%}.screen-foot span{border:1px solid #d7bdb7;border-radius:99px;padding:4px 10px;font-size:8px}.view-site{position:absolute;right:20px;bottom:20px;background:var(--lime);color:var(--ink);width:95px;height:95px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;transition:.25s}.work-visual:hover .view-site{transform:rotate(8deg) scale(1.05)}.work-info>div{display:flex;justify-content:space-between;border-bottom:1px solid #444;padding-bottom:12px;font-size:10px;color:#999}.work-info h3{font-size:clamp(36px,4vw,56px);line-height:1.25;letter-spacing:-.04em;margin:35px 0 10px}.work-info>p{font-size:12px;color:#aaa}.work-note{border-top:1px solid #444;margin-top:35px!important;padding-top:25px;line-height:1.9}.work-info ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin-top:28px}.work-info li{border:1px solid #555;border-radius:99px;padding:5px 9px;font-size:9px;color:#bbb}.price-layout{display:grid;grid-template-columns:1fr 2fr;gap:5vw}.price-copy p{max-width:360px;font-size:14px;color:var(--muted)}.price-copy .small{text-decoration:line-through;font-size:11px}.price-box{background:#fff;padding:45px;border-top:6px solid var(--blue)}.price-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px}.price-top span{font-weight:600}.price-top b{font-size:9px;letter-spacing:.15em;color:var(--blue)}.amount{display:flex;align-items:baseline;gap:8px;padding:35px 0}.amount span{font-size:26px}.amount strong{font-size:clamp(58px,8vw,105px);line-height:1;letter-spacing:-.07em}.amount small{font-size:11px}.included{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.included span{padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.included span:before{content:"↳";color:var(--blue);margin-right:10px}.price-box>p{font-size:10px;color:var(--muted);margin-top:25px}.process{background:var(--lime)}.process ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--ink)}.process li{display:grid;grid-template-columns:80px .8fr 1.2fr;gap:30px;border-bottom:1px solid rgba(0,0,0,.35);padding:27px 0;align-items:center}.process li b{font-size:11px}.process li span{font-size:20px;font-weight:600}.process li p{font-size:13px;margin:0;max-width:450px}.about{padding:130px 8vw;background:#fff;display:grid;grid-template-columns:.65fr 1fr 1.15fr;gap:5vw}.about-name span{font-size:10px;color:var(--muted)}.about-name h2{font-size:clamp(42px,5vw,70px);line-height:1.1;margin:20px 0 5px;letter-spacing:-.06em}.about-name small{font-size:9px;letter-spacing:.2em;color:var(--blue)}.about-copy>.jp-serif{font-size:28px;margin-bottom:35px}.about-copy>p:not(.jp-serif){font-size:13px;color:var(--muted)}.about-copy dl{margin-top:30px}.about-copy dl div{display:grid;grid-template-columns:70px 1fr;border-top:1px solid var(--line);padding:10px 0;font-size:10px}.about-copy dt{font-weight:700;color:var(--blue)}.about-copy dd{margin:0}.faq-list{border-top:1px solid var(--ink)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:25px 0;display:grid;grid-template-columns:55px 1fr auto;font-size:17px}summary::-webkit-details-marker{display:none}summary b{color:var(--blue)}summary span{font-size:22px}details[open] summary span{transform:rotate(45deg)}details p{margin:0;padding:0 55px 28px;font-size:13px;color:var(--muted)}.contact{background:var(--blue);color:#fff;padding:110px 8vw;text-align:center}.contact-label{font-size:10px;letter-spacing:.16em}.contact h2{font-family:"Shippori Mincho",serif;font-size:clamp(43px,7vw,95px);font-weight:500;letter-spacing:-.05em;margin:35px 0 12px}.contact>p{font-size:14px;color:#dfe4ff}.contact-soon{max-width:700px;margin:50px auto 0;padding:22px 0;border-top:1px solid rgba(255,255,255,.5);border-bottom:1px solid rgba(255,255,255,.5);display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em}.contact-soon b{color:var(--lime)}footer{background:var(--ink);color:#fff;padding:35px 4vw;display:flex;align-items:center;justify-content:space-between}footer p,footer>a:last-child{font-size:9px;color:#888;letter-spacing:.08em}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{min-height:780px}.intro,.section-head,.price-layout{grid-template-columns:1fr}.intro-copy{margin-top:50px}.work-item{grid-template-columns:1fr}.work-info{margin-top:20px}.about{grid-template-columns:1fr 1fr}.about>.section-no{grid-column:1/-1}.section-head{gap:35px}.price-copy{margin-bottom:30px}}
@media(max-width:600px){.site-header{height:70px;padding:0 20px}.logo b{font-size:17px}.header-contact{padding:10px 12px;gap:14px}.hero{min-height:calc(100svh - 70px);padding:35px 20px 25px}.hero h1{font-size:15vw;line-height:1.1;margin:14vh 0 auto}.hero-bottom{grid-template-columns:1fr auto}.hero-bottom>p{font-size:13px}.round-link{width:92px;height:92px}.round-link span{font-size:10px}.hero-meta{overflow:auto;white-space:nowrap}.intro,.services,.works,.price,.process,.about,.faq{padding:85px 22px}.intro-copy{grid-template-columns:1fr;margin-top:40px}.section-head{margin-bottom:50px}.section-head h2{font-size:46px}.service-list article{grid-template-columns:40px 1fr;padding:25px 0}.service-list article p{grid-column:2}.service-for{grid-template-columns:40px 1fr}.work-visual{padding:20px 12px 70px}.screen-copy{min-height:230px}.view-site{width:76px;height:76px}.work-info h3{font-size:38px}.price-box{padding:25px 20px}.price-top{flex-direction:column;gap:6px}.amount strong{font-size:60px}.included{grid-template-columns:1fr}.process li{grid-template-columns:35px 1fr;padding:22px 0}.process li p{grid-column:2}.about{grid-template-columns:1fr}.about>.section-no{grid-column:auto}.about-name{margin:25px 0}.faq .section-head h2{font-size:42px}summary{grid-template-columns:36px 1fr auto;font-size:14px;gap:4px}details p{padding-left:36px}.contact{padding:85px 22px}.contact h2{font-size:46px}.contact-soon{flex-direction:column;gap:8px}footer{padding:28px 20px;align-items:flex-start}footer p{display:none}}
