@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');
:root{--ink:#151515;--gray:#727272;--line:#e9e9e9;--teal:#298c9c;--font:'DM Sans','Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button{border:0}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:5px}::selection{background:#d4eef1}.header{display:flex;align-items:center;padding:0 3.5%;height:88px;background:#fffffff2;backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;gap:50px}.logo{display:block;width:170px;flex:none}.logo img{width:100%;height:auto}.header nav{display:flex;gap:32px;font-size:14px;margin-left:auto;font-weight:500}.header nav a{transition:color .2s}.header nav a:hover{color:var(--teal)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 25px;min-height:50px;border-radius:999px;font-size:14px;font-weight:500;transition:background .3s,transform .3s}.button span{font-size:20px;transition:transform .3s}.black{background:var(--ink);color:#fff}.black:hover{background:var(--teal);transform:translateY(-2px)}.button:hover span{transform:translate(2px,-2px)}.header-contact{padding:10px 23px;min-height:44px}.menu-button{display:none}#mobile-menu{display:none}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.1em}.triangle{display:inline-block;width:12px;height:11px;background:var(--teal);clip-path:polygon(50% 0,100% 100%,0 100%)}.hero{text-align:center;padding:65px 0 0;overflow:hidden}.hero>.eyebrow{display:flex;align-items:center;justify-content:center;gap:10px}.hero h1{font-size:clamp(40px,4.65vw,72px);line-height:1.55;letter-spacing:-.065em;font-weight:700;margin:26px 0 22px}.hero-description{font-size:15px;line-height:1.95;color:#616161}.hero-button{margin-top:29px;padding:15px 32px}.hero-gallery{margin-top:53px;overflow:hidden;padding:4px 0 16px}.gallery-track{display:flex;gap:24px;width:max-content;animation:gallery 62s linear infinite;will-change:transform}.hero-gallery:hover .gallery-track,.hero-gallery:focus-within .gallery-track,.gallery-track.paused{animation-play-state:paused}.hero-gallery-card{width:390px;flex:none;border-radius:8px;background:#f6f6f6;padding:14px;transition:transform .4s;display:block;text-align:left}.hero-gallery-card:nth-child(even){margin-top:24px;margin-bottom:-24px}.hero-gallery-card:hover{transform:translateY(-5px)}.hero-gallery-card .site-preview{height:237px;border-radius:3px;box-shadow:0 5px 20px #0000000a}.hero-gallery-bottom{display:flex;justify-content:space-between;align-items:center;margin:31px 3.5% 0;font-size:10px;letter-spacing:.04em;color:#777}.hero-gallery-bottom>div{display:flex;align-items:center;gap:14px}.hero-gallery-bottom button{background:#f5f5f5;width:28px;height:28px;border-radius:50%;font-size:12px;color:#333}@keyframes gallery{to{transform:translateX(-50%)}}.section{padding:105px 5%;max-width:1600px;margin:auto}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-top .eyebrow{margin-bottom:14px;color:#686868}h2{font-size:clamp(27px,3.1vw,46px);line-height:1.5;letter-spacing:-.055em;font-weight:600}.section-top>p{font-size:14px;line-height:1.9;color:#676767;padding-bottom:4px}.catalog-bar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:21px;margin-bottom:30px;gap:20px}.filters{display:flex;gap:8px}.filters button{border-radius:999px;background:#f5f5f5;padding:12px 20px;font-size:13px;white-space:nowrap;transition:background .25s,color .25s}.filters button:hover{background:#e6edef}.filters button.active{background:#181818;color:white}.filters button span{font-size:10px;margin-left:7px;opacity:.7}.catalog-note{font-size:10px;letter-spacing:.1em;color:#878787}.design-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 25px}.design-card{min-width:0;text-align:left;padding:0;background:none}.design-card[hidden]{display:none}.design-art{background:#f4f4f4;padding:23px 17px;border-radius:9px;position:relative;overflow:hidden;display:block}.design-art .site-preview{height:238px;box-shadow:0 6px 22px #0000000a;border-radius:2px;transition:transform .5s cubic-bezier(.2,.7,.3,1)}.design-card:hover .site-preview{transform:translateY(-4px) scale(1.025)}.design-art:after{content:'デザインを見る ↗';position:absolute;bottom:18px;right:16px;background:#fff;border:1px solid #eee;box-shadow:0 4px 15px #0000000a;border-radius:24px;padding:12px 17px;font-size:11px;opacity:0;transform:translateY(10px);transition:.3s}.design-card:hover .design-art:after,.design-card:focus-visible .design-art:after{opacity:1;transform:none}.design-name{display:flex;align-items:center;justify-content:space-between;margin:17px 0 7px;gap:10px}.design-name strong{font-size:17px;font-weight:600}.design-name>span{font-size:20px}.design-subtitle{display:block;font-size:13px;color:#696969;line-height:1.7}.design-tag{display:flex;gap:7px;align-items:center;margin-top:12px;font-size:10px;color:#707070}.design-tag>span{background:#f5f5f5;border-radius:4px;padding:4px 8px}.design-tag>small{font-size:10px;color:#aaa;margin-left:auto}.catalog-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:43px}.catalog-footer p{font-size:12px;color:#828282;line-height:1.8}.text-button{padding:10px 0;background:none;font-size:13px;white-space:nowrap;display:inline-flex;gap:25px;align-items:center;border-bottom:1px solid #181818}.text-button span{font-size:21px}.text-button:hover{color:var(--teal);border-color:var(--teal)}
/* Website preview compositions: miniature interface layouts. */
.site-preview{display:block;position:relative;background:white;overflow:hidden;color:#171717;isolation:isolate}.preview-nav{height:17%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 7%;font-size:6px;letter-spacing:.04em}.preview-nav strong{font-size:17px}.preview-body{position:relative;height:72%;overflow:hidden}.preview-body>img{width:100%;height:100%;object-fit:cover}.preview-footer{height:11%;display:flex;align-items:center;justify-content:space-between;padding:0 7%;font-size:6px}.preview-title{position:absolute;font-family:serif;left:9%;top:20%;color:white;line-height:1.6;font-size:27px;letter-spacing:.08em;text-align:left}.preview-small{position:absolute;left:9%;bottom:11%;font-size:6px;color:#fff;letter-spacing:.04em}.preview-haku .preview-body img{filter:brightness(.8)}.preview-une{background:#f5f0e8;color:#604c41}.preview-une .preview-nav strong{font:24px Georgia,serif}.preview-une .preview-title{font:38px/.95 Georgia,serif;left:7%;top:15%;letter-spacing:-.02em;text-shadow:0 2px 20px #0003}.preview-une .preview-small{left:7%;bottom:10%;font-size:8px}.preview-yohaku .preview-body{height:100%;position:absolute;inset:0}.preview-yohaku .preview-body img{filter:brightness(.63)}.preview-yohaku .preview-nav{position:relative;z-index:2;color:#fff}.preview-yohaku .preview-nav strong{font-size:13px;letter-spacing:.16em}.preview-yohaku .preview-title{top:32%;left:10%;font-size:25px}.preview-yohaku .preview-footer{display:none}.preview-frame{background:#244bd3;color:#fff}.preview-frame .preview-nav{border-bottom:1px solid #ffffff30}.preview-frame .preview-nav strong{font-size:15px}.frame-body{padding:7% 7% 5%;height:72%;display:flex;justify-content:space-between;align-items:flex-end}.frame-body>strong{font-size:43px;line-height:.9;font-weight:600;letter-spacing:-.08em}.frame-body>span{font-size:48px;line-height:1;font-weight:400;padding-bottom:3px}.preview-frame .preview-footer{border-top:1px solid #ffffff30}.preview-shift{background:#f84e2f;color:#1b1411}.preview-shift .preview-nav strong{font-size:15px}.shift-body{height:72%;padding:3% 7%;position:relative}.shift-body>strong{display:block;font-size:60px;letter-spacing:-.08em;line-height:.88;font-weight:700;transform:rotate(-4deg)}.shift-body>span{position:absolute;right:8%;bottom:9%;font-size:9px;line-height:1.6;border-top:1px solid;padding-top:8px}.preview-shift .preview-footer{border-top:1px solid #1b14113b}.preview-form{background:#edebe7;color:#232321}.preview-form .preview-nav strong{font-size:18px;font-weight:400;letter-spacing:.12em}.form-body{display:grid;grid-template-columns:1.3fr 1fr;height:72%;gap:10px;padding:5% 7%}.form-body>div{display:flex;flex-direction:column;justify-content:space-between}.form-body strong{font:35px/.97 Georgia,serif;letter-spacing:-.055em}.form-body p{font-size:7px;line-height:1.7}.form-body img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.preview-form .preview-footer{border-top:1px solid #23232125}.design-card[data-key='une'] .design-art{background:#f7f2ed}.design-card[data-key='frame'] .design-art{background:#eef0fa}.design-card[data-key='shift'] .design-art{background:#fff0ed}.design-card[data-key='yohaku'] .design-art{background:#eef2f0}.design-card[data-key='form'] .design-art{background:#f2f1ef}
.about-section{padding-top:65px}.about-heading{text-align:center;margin:0 auto 55px}.about-heading>.eyebrow{color:#777;margin-bottom:24px}.about-heading h2{font-size:clamp(35px,3.8vw,56px);font-weight:600;line-height:1.6}.about-heading h2>span{color:var(--teal)}.about-heading>p:last-child{font-size:15px;color:#727272;line-height:2;margin-top:27px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.approach-card{background:#fafafa;border-radius:12px;padding:29px 30px 33px;position:relative}.approach-num{font-size:11px;color:#777}.approach-diagram{height:172px;display:flex;align-items:center;justify-content:center;margin:12px 0 23px}.approach-card h3{font-size:20px;letter-spacing:-.04em;margin-bottom:15px;font-weight:600}.approach-card>p{font-size:14px;line-height:1.95;color:#757575}.ready-diagram{position:relative}.little-window{width:165px;height:120px;border:1px solid #ccc;background:white;border-radius:4px;position:relative;transform:rotate(-7deg);padding:27px 18px 12px}.little-window>span{position:absolute;top:13px;left:15px;width:18px;height:2px;background:var(--teal)}.little-window b{font-size:25px;font-weight:500;letter-spacing:-.05em;line-height:1}.little-window i{font-size:22px;position:absolute;right:17px;bottom:18px;font-style:normal}.check-label{position:absolute;bottom:8px;right:0;background:#e4f2f3;border-radius:20px;font-size:10px;color:#207887;padding:8px 12px}.route-diagram{flex-direction:column;gap:13px}.route-diagram>div{display:flex;gap:9px;color:#999;font-size:12px}.route-diagram i{font-style:normal}.route-diagram>p{color:#999;border-top:1px solid #ccc;font-size:10px;text-align:center;width:90%;padding-top:6px}.route-diagram>b{font-size:17px;font-weight:500;background:#fff;border:1px solid #e4e4e4;border-radius:6px;padding:12px 15px;white-space:nowrap}.route-diagram>b i{color:var(--teal);margin:0 7px}.identity-diagram{flex-wrap:wrap;gap:18px;align-content:center}.identity-diagram>span{font:60px Georgia,serif;letter-spacing:-.05em}.identity-diagram>div{display:flex}.identity-diagram i{width:27px;height:27px;border-radius:50%;background:#283c31;border:2px solid #fafafa;margin-left:-6px}.identity-diagram i:nth-child(2){background:var(--teal)}.identity-diagram i:nth-child(3){background:#d8e8e8}.identity-diagram>b{width:100%;text-align:center;font-size:15px;font-weight:500;letter-spacing:.04em}.custom-section{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:7%;padding-top:60px}.custom-copy .eyebrow{margin-bottom:20px;color:#777}.custom-copy h2{font-size:clamp(30px,3.2vw,46px)}.custom-copy>p:not(.eyebrow):not(.small-note){font-size:15px;line-height:2;color:#757575;margin:24px 0 29px}.custom-tabs{display:inline-flex;background:#f5f5f5;border-radius:40px;padding:5px;gap:3px}.custom-tabs button{font-size:12px;border-radius:30px;padding:12px 20px;background:transparent;transition:.3s}.custom-tabs .active{background:white;box-shadow:0 2px 8px #0000000b}.custom-tabs span{margin-left:8px}.small-note{font-size:11px;color:#898989;line-height:1.9}.custom-copy .small-note{margin-top:18px;max-width:400px}.custom-visual{background:#f6f6f6;padding:20px;border-radius:12px}.browser-dots{height:24px;display:flex;gap:4px;align-items:flex-start}.browser-dots i{width:5px;height:5px;background:#c4c4c4;border-radius:50%}.browser-dots>span{font-size:8px;letter-spacing:.08em;color:#999;margin:-3px 0 0 auto}.custom-site{background:#fff;box-shadow:0 6px 24px #00000007;transition:opacity .2s}.custom-site.changing{opacity:.1}.custom-site-nav{height:55px;padding:0 7%;display:flex;align-items:center;justify-content:space-between}.custom-site-nav strong{font-size:24px;letter-spacing:.06em}.custom-site-nav>span{font-size:7px}.custom-site-hero{height:275px;position:relative}.custom-site-hero>img{width:100%;height:100%;object-fit:cover;filter:brightness(.73)}.custom-site-hero>div{position:absolute;left:8%;top:28%;color:white}.custom-site-hero span{font-size:8px;letter-spacing:.1em}.custom-site-hero h3{font-family:serif;font-size:32px;font-weight:400;letter-spacing:.12em;margin-top:17px;line-height:1.5}.custom-site-hero p{font-size:9px;margin-top:14px}.custom-site-footer{height:65px;display:flex;align-items:center;justify-content:space-between;padding:0 7%}.custom-site-footer strong{font:14px Georgia,serif}.custom-site-footer span{font-size:6px;letter-spacing:.05em}.custom-caption{display:flex;justify-content:space-between;margin:17px 0 0;font-size:9px;color:#828282}.compare-section{padding-top:60px}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden}.compare-grid article{padding:35px;border-right:1px solid var(--line)}.compare-grid article:last-child{border:0}.compare-grid article>p:first-child{font-size:13px;height:35px;margin-bottom:12px;display:flex;align-items:center;gap:15px}.compare-grid h3{font-size:29px;font-weight:500;line-height:1.5;letter-spacing:-.03em;margin-bottom:23px}.compare-grid ul{list-style:none;margin:0 0 27px;padding:0;font-size:13px;color:#777;line-height:2}.compare-grid li:before{content:'・';margin-right:5px}.compare-grid article>span{font-size:11px;color:#888}.tateuri-method{background:#f1f9fa}.tateuri-method img{width:117px;height:auto}.tateuri-method p>span{font-size:10px;border:1px solid #c2dfe4;color:#367d88;padding:3px 7px;border-radius:3px}.compare-grid .tateuri-method h3{color:var(--teal)}.compare-note{margin-top:17px}.flow-section{padding-top:55px}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.flow-grid article{border-top:1px solid #ddd;padding-top:23px}.flow-grid article>span{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#777}.flow-grid i{font-size:20px;font-style:normal}.flow-grid h3{font-size:24px;font-weight:500;letter-spacing:-.04em;margin:22px 0 14px}.flow-grid p{font-size:13px;line-height:1.95;color:#777}.faq-section{display:grid;grid-template-columns:1fr 1.65fr;gap:7%;padding-top:55px}.faq-heading>.eyebrow{color:#777;margin-bottom:16px}.faq-heading>p:last-child{font-size:14px;color:#777;line-height:1.9;margin-top:22px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;list-style:none;align-items:center;justify-content:space-between;gap:30px;padding:25px 0;font-size:14px;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:20px;color:#888;transition:transform .3s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:13px;color:#777;line-height:2;padding:0 35px 25px 0}.contact-section{padding-top:60px}.contact-top{border-top:1px solid #ddd;padding-top:28px;display:flex;align-items:center;justify-content:space-between}.contact-top .eyebrow{color:#777}.contact-top .triangle{width:23px;height:20px}.contact-heading{display:flex;align-items:center;justify-content:space-between;margin:35px 0 42px;gap:35px}.contact-heading h2{font-size:clamp(50px,6.5vw,100px);line-height:1.45;letter-spacing:-.075em;font-weight:600}.big-contact{background:var(--teal);color:white;font-size:70px;border-radius:50%;width:150px;height:150px;transition:transform .4s,background .4s}.big-contact:hover{transform:rotate(45deg);background:#171717}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px}.contact-bottom>p{font-size:14px;color:#777;line-height:1.9}.contact-bottom .button{padding:17px 29px}.footer{padding:48px 5% 28px;border-top:1px solid var(--line);max-width:1600px;margin:auto}.footer-main{display:flex;align-items:center;gap:30px;margin-bottom:40px}.footer-main>.logo{width:175px}.footer-main>p{font-size:12px;color:#777}.footer-main nav{display:flex;gap:30px;font-size:12px;margin-left:auto}.footer-bottom{display:flex;gap:35px;border-top:1px solid var(--line);padding-top:23px;color:#888;font-size:11px}.footer-bottom>span:last-child{margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{opacity:1}.has-js .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.3,1)}.has-js .reveal.visible{opacity:1;transform:none}.hero>.eyebrow,.hero h1,.hero-description,.hero-button{animation:enter .8s both}.hero h1{animation-delay:.08s}.hero-description{animation-delay:.16s}.hero-button{animation-delay:.24s}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}dialog{border:1px solid #eee;border-radius:16px;padding:40px;background:white;color:var(--ink);width:min(960px,94vw);max-height:90vh;overflow:auto}dialog::backdrop{background:#10101088;backdrop-filter:blur(6px)}dialog[open]{animation:enter .25s both}.close-dialog{position:absolute;right:15px;top:12px;width:33px;height:33px;background:#f5f5f5;border-radius:50%;font-size:23px;z-index:2}.detail-heading{display:flex;gap:25px;justify-content:space-between;align-items:flex-end;padding-right:25px;margin:0 0 22px}.detail-heading .eyebrow{font-size:10px;color:#777}.detail-heading h2{font-size:34px;margin-top:8px}.detail-heading>span{font-size:11px;color:#888}.detail-stage{padding:35px;background:#f5f5f5;border-radius:8px}.detail-stage .site-preview{height:440px;max-width:750px;margin:auto;box-shadow:0 4px 20px #0001}.detail-stage .preview-nav{font-size:10px}.detail-stage .preview-nav strong{font-size:28px}.detail-stage .preview-title{font-size:49px}.detail-stage .preview-une .preview-title{font-size:70px}.detail-stage .preview-small,.detail-stage .preview-footer{font-size:10px}.detail-stage .frame-body>strong{font-size:80px}.detail-stage .frame-body>span{font-size:80px}.detail-stage .shift-body>strong{font-size:105px}.detail-stage .shift-body>span{font-size:14px}.detail-stage .form-body strong{font-size:64px}.detail-stage .form-body p{font-size:12px}.detail-copy{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:27px}.detail-copy p{font-size:14px;line-height:1.9;max-width:520px}.detail-copy .button{white-space:nowrap}.detail-note{margin-top:18px}#contact-dialog{width:min(580px,94vw);padding:45px}#contact-dialog>.eyebrow{font-size:10px;color:#777}#contact-dialog h2{font-size:34px;margin:17px 0}#contact-dialog>p:not(.eyebrow){font-size:14px;color:#777}#contact-form label{display:block;font-size:13px;margin-top:22px}#contact-form select,#contact-form textarea{display:block;width:100%;border:1px solid #ddd;border-radius:6px;background:#fafafa;font-size:15px;padding:13px;margin-top:9px;color:#333}#contact-form .button{width:100%;margin:22px 0 16px}#contact-form .small-note a{text-decoration:underline}#contact-status{font-size:12px;line-height:1.8;margin-top:15px;color:var(--teal)}
@media(min-width:1600px){.header{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}
@media(max-width:1100px){.header{gap:25px}.header nav{gap:20px;font-size:13px}.logo{width:150px}.section{padding:80px 4%}.design-grid{gap:32px 18px}.design-art{padding:17px 12px}.design-art .site-preview{height:190px}.preview-title{font-size:22px}.preview-une .preview-title{font-size:31px}.preview-yohaku .preview-title{font-size:22px}.frame-body>strong{font-size:35px}.shift-body>strong{font-size:48px}.form-body strong{font-size:28px}.approach-card{padding:24px 20px 28px}.approach-card h3{font-size:18px}.approach-card>p{font-size:13px}.approach-diagram{height:155px}.route-diagram>div{font-size:10px;gap:6px}.route-diagram>b{font-size:14px;padding:12px}.section-top>p{font-size:13px}.compare-grid article{padding:25px}.compare-grid h3{font-size:25px}.compare-grid ul{font-size:12px}.custom-site-hero{height:240px}.custom-site-hero h3{font-size:26px}.custom-site-footer strong{font-size:12px}.custom-site-footer span{display:none}.flow-grid{gap:25px}.flow-grid p{font-size:12px}.custom-section{gap:5%}.custom-tabs button{padding:11px 14px}.footer-main nav{gap:18px}}
@media(max-width:800px){.header{height:76px;padding:0 5%}.header nav{display:none}.header-contact{margin-left:auto;font-size:12px;min-height:39px;padding:9px 18px;gap:15px}.menu-button{display:flex;flex-direction:column;gap:5px;padding:10px 0 10px 3px;background:none}.menu-button span{height:1px;width:20px;background:#151515;transition:.3s}.menu-button[aria-expanded='true'] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-button[aria-expanded='true'] span:last-child{transform:translateY(-3px) rotate(-45deg)}#mobile-menu:not([hidden]){position:fixed;top:76px;left:0;right:0;background:#fff;display:flex;flex-direction:column;padding:15px 5% 25px;box-shadow:0 12px 20px #0000000a;z-index:29}#mobile-menu a,#mobile-menu button{padding:16px 0;background:none;text-align:left;border-bottom:1px solid #eee;font-size:15px}.hero{padding-top:48px}.hero h1{font-size:44px}.hero-description{font-size:13px}.hero-gallery-card{width:340px}.hero-gallery-card .site-preview{height:210px}.section-top{display:block}.section-top>p{margin-top:17px}.design-grid{grid-template-columns:1fr 1fr}.design-art .site-preview{height:220px}.catalog-note{display:none}.catalog-footer{align-items:flex-start;flex-direction:column;gap:15px}.approach-grid{gap:15px}.approach-card{padding:22px 16px}.approach-card h3{font-size:16px}.check-label{font-size:8px;padding:7px 9px;right:-9px}.little-window{width:135px;height:115px}.route-diagram>b{font-size:12px;padding:10px 7px}.route-diagram>b i{margin:0 3px}.custom-section{grid-template-columns:1fr;gap:35px}.custom-copy{text-align:center}.custom-copy .small-note{max-width:none}.custom-visual{max-width:600px;width:100%;margin:auto}.custom-site-hero{height:280px}.compare-grid article{padding:22px 18px}.compare-grid h3{font-size:23px}.compare-grid article>span{line-height:1.8;display:block}.compare-grid ul{font-size:11px;min-height:70px}.tateuri-method img{width:95px}.flow-grid{grid-template-columns:repeat(2,1fr);gap:35px}.flow-section .section-top{display:flex}.flow-grid p{font-size:14px}.faq-section{grid-template-columns:1fr;gap:35px}.faq-heading>p:last-child{display:none}.contact-heading h2{font-size:62px}.big-contact{width:115px;height:115px;font-size:56px}.footer-main{flex-wrap:wrap;gap:20px}.footer-main nav{margin-left:0;width:100%}.footer-bottom{flex-wrap:wrap;gap:15px 25px}.footer-bottom>span:last-child{margin-left:0}.detail-copy{display:block}.detail-copy .button{margin-top:20px}.detail-stage{padding:20px}.detail-stage .site-preview{height:350px}.detail-stage .frame-body>strong{font-size:65px}.detail-stage .shift-body>strong{font-size:85px}}
@media(max-width:540px){html{scroll-padding-top:90px}.header{gap:19px;height:70px}.logo{width:132px}.header-contact{font-size:11px;padding:8px 14px;min-height:36px;gap:9px}.header-contact>span{font-size:17px}#mobile-menu:not([hidden]){top:70px}.hero{padding-top:40px}.hero>.eyebrow{font-size:9px;letter-spacing:.07em}.hero h1{font-size:clamp(26px,7vw,38px);margin:23px 0 18px;line-height:1.65;letter-spacing:-.06em}.hero-description{padding:0 8%;font-size:13px;line-height:1.95}.hero-description br{display:none}.hero-button{margin-top:24px;font-size:13px;padding:12px 25px;min-height:46px}.hero-gallery{margin-top:36px}.hero-gallery-card{width:280px;padding:10px;border-radius:6px}.hero-gallery-card .site-preview{height:179px}.gallery-track{gap:15px}.hero-gallery-card:nth-child(even){margin-top:17px;margin-bottom:-17px}.hero-gallery-bottom{margin:23px 5% 0;align-items:flex-start;gap:12px}.hero-gallery-bottom>span{display:none}.hero-gallery-bottom>div{width:100%;justify-content:space-between;font-size:10px}.section{padding:60px 5%}.section-top{margin-bottom:27px}.section-top .eyebrow{font-size:10px;margin-bottom:12px}h2{font-size:27px;line-height:1.5}.section-top>p{font-size:13px;line-height:1.9}.catalog-bar{margin-bottom:25px;padding-bottom:17px;margin-right:-5vw;overflow-x:auto;scrollbar-width:none}.filters{gap:6px;padding-right:5vw}.filters button{font-size:11px;padding:10px 14px}.filters button span{font-size:9px;margin-left:4px}.design-grid{grid-template-columns:1fr;gap:29px}.design-art{padding:22px 19px;border-radius:8px}.design-art .site-preview{height:225px}.design-name{margin:14px 0 5px}.design-name strong{font-size:18px}.design-subtitle{font-size:13px}.design-tag{margin-top:9px}.design-tag>span{font-size:11px}.preview-nav{font-size:6px}.preview-nav strong{font-size:16px}.preview-title{font-size:27px}.preview-une .preview-title{font-size:38px}.preview-yohaku .preview-title{font-size:26px}.frame-body>strong{font-size:43px}.frame-body>span{font-size:46px}.shift-body>strong{font-size:60px}.form-body strong{font-size:33px}.hero-gallery-card .preview-title{font-size:21px}.hero-gallery-card .preview-une .preview-title{font-size:31px}.hero-gallery-card .frame-body>strong{font-size:35px}.hero-gallery-card .shift-body>strong{font-size:45px}.hero-gallery-card .form-body strong{font-size:27px}.catalog-footer{margin-top:28px}.catalog-footer p{font-size:11px}.text-button{font-size:13px}.about-section{padding-top:35px}.about-heading{margin-bottom:32px}.about-heading>.eyebrow{font-size:9px;margin-bottom:19px}.about-heading h2{font-size:29px;line-height:1.65}.about-heading>p:last-child{font-size:13px;line-height:2;margin-top:20px}.about-heading>p:last-child br{display:none}.approach-grid{grid-template-columns:1fr;gap:15px}.approach-card{padding:24px;display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.approach-num{font-size:10px;grid-column:1}.approach-diagram{grid-column:1;grid-row:2 / 4;margin:8px 0 0;height:145px}.approach-card h3{font-size:17px;grid-column:2;grid-row:2;align-self:end;line-height:1.6;margin-bottom:9px}.approach-card>p{grid-column:2;grid-row:3;font-size:12px;line-height:1.85}.little-window{width:125px;height:105px;padding:25px 13px 10px}.little-window b{font-size:23px}.check-label{font-size:7px;right:-7px;bottom:0}.route-diagram>div{gap:3px;font-size:8px}.route-diagram>b{font-size:10px;padding:9px 7px}.route-diagram>b i{margin:0 1px}.identity-diagram{gap:10px}.identity-diagram>span{font-size:48px}.identity-diagram i{width:20px;height:20px}.identity-diagram>b{font-size:12px}.custom-section{padding-top:30px}.custom-copy .eyebrow{font-size:10px}.custom-copy h2{font-size:29px}.custom-copy>p:not(.eyebrow):not(.small-note){font-size:13px;margin:20px 0 23px}.custom-tabs button{font-size:11px;padding:10px 16px}.custom-copy .small-note{font-size:10px;max-width:300px;margin:15px auto 0}.custom-visual{padding:14px}.custom-site-nav{height:43px}.custom-site-nav strong{font-size:20px}.custom-site-nav>span{font-size:5px}.custom-site-hero{height:210px}.custom-site-hero h3{font-size:23px;letter-spacing:.08em}.custom-site-hero span{font-size:6px}.custom-site-hero p{font-size:8px}.custom-site-footer{height:49px}.custom-site-footer strong{font-size:11px}.custom-caption{font-size:8px;gap:10px}.compare-section{padding-top:30px}.compare-grid{grid-template-columns:1fr}.compare-grid article{border-right:0;border-bottom:1px solid var(--line);padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:5px 20px}.compare-grid article>p:first-child{grid-column:1 / 3;font-size:12px;margin:0 0 7px;height:27px}.compare-grid h3{font-size:25px;margin:0;grid-column:1;grid-row:2 / 4}.compare-grid ul{font-size:11px;line-height:1.9;min-height:0;margin:0 0 4px}.compare-grid article>span{font-size:10px;grid-column:2}.tateuri-method img{width:106px}.compare-note{font-size:10px}.flow-section{padding-top:30px}.flow-section .section-top{display:block}.flow-section .text-button{margin-top:16px}.flow-grid{gap:28px 22px}.flow-grid article{padding-top:18px}.flow-grid article>span{font-size:10px}.flow-grid h3{font-size:22px;margin:17px 0 12px}.flow-grid p{font-size:12px}.flow-grid p br{display:none}.faq-section{padding-top:30px;gap:23px}.faq-heading .eyebrow{font-size:10px}.faq-list summary{font-size:13px;padding:24px 0;gap:17px;line-height:1.7}.faq-list summary>span{font-size:18px;flex:none}.faq-list details>p{font-size:12px;padding-right:15px}.contact-section{padding-top:30px}.contact-top{padding-top:21px}.contact-top .eyebrow{font-size:10px}.contact-top .triangle{width:17px;height:15px}.contact-heading{margin:27px 0;gap:15px}.contact-heading h2{font-size:clamp(33px,8.8vw,45px);letter-spacing:-.07em;line-height:1.55}.big-contact{width:67px;height:67px;font-size:35px;flex:none}.contact-bottom{display:block}.contact-bottom>p{font-size:12px;line-height:2}.contact-bottom>p br{display:none}.contact-bottom .button{margin-top:25px;font-size:13px;padding:13px 25px;min-height:46px}.footer{padding:35px 5% 25px}.footer-main{gap:18px;margin-bottom:27px}.footer-main>.logo{width:140px}.footer-main>p{font-size:10px}.footer-main nav{font-size:11px;gap:24px;margin-top:12px}.footer-bottom{font-size:10px;flex-direction:column;gap:13px;padding-top:20px}dialog,#contact-dialog{padding:35px 22px 25px;border-radius:12px}.detail-heading{display:block;margin-bottom:20px;padding-right:15px}.detail-heading h2{font-size:29px}.detail-heading>span{display:block;margin-top:8px;font-size:10px}.detail-stage{padding:12px;margin:0 -9px}.detail-stage .site-preview{height:220px}.detail-stage .preview-nav{font-size:6px}.detail-stage .preview-nav strong{font-size:19px}.detail-stage .preview-title{font-size:26px}.detail-stage .preview-une .preview-title{font-size:37px}.detail-stage .preview-small,.detail-stage .preview-footer{font-size:6px}.detail-stage .frame-body>strong{font-size:39px}.detail-stage .frame-body>span{font-size:43px}.detail-stage .shift-body>strong{font-size:56px}.detail-stage .shift-body>span{font-size:8px}.detail-stage .form-body strong{font-size:31px}.detail-stage .form-body p{font-size:7px}.detail-copy p{font-size:13px}.detail-copy .button{width:100%;font-size:13px}.detail-note{font-size:10px}#contact-dialog h2{font-size:29px}#contact-form select,#contact-form textarea{font-size:16px}#contact-form .small-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.has-js .reveal{opacity:1;transform:none}.gallery-track{transform:translateX(-150px)}}
.preview-body,.shift-body{display:block}.gallery-track{padding-right:24px}.design-grid{min-height:200px}@media(max-width:540px){.gallery-track{padding-right:15px}}
/* Additional collection samples — twelve designs, three desktop columns. */
.site-preview{container-type:inline-size}.preview-root{background:#d7f4d7;color:#18332c}.preview-root .preview-nav strong{font-size:23px;letter-spacing:-.07em}.root-body{height:72%;display:flex;flex-direction:column;justify-content:space-between;padding:3% 7% 5%;text-align:left}.root-body>span:first-child{font-size:6px;letter-spacing:.09em}.root-body>strong{font-size:14cqw;letter-spacing:-.07em;line-height:.94;font-weight:500}.root-bottom{display:flex;align-items:center;justify-content:space-between;font-size:7px}.root-bottom b{font-size:27px;font-weight:400}.preview-root .preview-footer{border-top:1px solid #18332c35}.preview-calm{background:#ede6f2;color:#574860}.preview-calm .preview-nav strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.calm-body{height:72%;padding:3% 7% 5%;display:grid;grid-template-columns:1.05fr 1fr;gap:5%;text-align:left}.calm-body>span{display:flex;flex-direction:column;justify-content:center}.calm-body small{font-size:5px;letter-spacing:.07em}.calm-body strong{font:400 10.5cqw/1 Georgia,serif;letter-spacing:-.055em;margin:12px 0 14px}.calm-body em{font-size:6px;font-style:normal}.calm-body img{width:100%;height:100%;object-fit:cover;object-position:60% center;border-radius:50% 50% 0 0}.preview-calm .preview-footer{border-top:1px solid #57486024}.preview-nest .preview-nav strong{font-size:15px;letter-spacing:.15em}.nest-body{height:72%;display:flex;flex-direction:column;padding:0 7%;gap:7%;text-align:left}.nest-body>span{display:flex;align-items:flex-end;justify-content:space-between;height:36%;gap:15px}.nest-body strong{font-family:serif;font-size:7.5cqw;line-height:1.4;font-weight:400}.nest-body small{font-size:5px;letter-spacing:.03em;padding-bottom:3px}.nest-body img{height:57%;width:100%;object-fit:cover;object-position:center 52%}.preview-wave{background:#ed7bd2;color:#3c1c44}.preview-wave .preview-nav{border-bottom:1px solid #3c1c4430}.preview-wave .preview-nav strong{font-size:16px;letter-spacing:-.07em;font-weight:700}.wave-body{height:72%;padding:3% 7% 4%;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.wave-body>small{font-size:6px;letter-spacing:.03em}.wave-body>strong{font-size:16cqw;line-height:.88;letter-spacing:-.065em;font-weight:700}.wave-body>span{display:flex;align-items:center;justify-content:space-between;font-size:7px}.wave-body b{font-size:25px;font-weight:400}.preview-wave .preview-footer{border-top:1px solid #3c1c4430}.preview-trail{background:#e3edf1;color:#254958}.preview-trail .preview-nav strong{font-size:16px;letter-spacing:.1em}.trail-body{height:72%;display:grid;grid-template-columns:1.05fr 1fr;gap:6%;padding:0 7% 3%;text-align:left}.trail-body img{width:100%;height:100%;object-fit:cover}.trail-body>span{display:flex;flex-direction:column;justify-content:center}.trail-body small{font-size:5px;letter-spacing:.02em}.trail-body strong{font-size:8.5cqw;line-height:1.07;letter-spacing:-.055em;font-weight:500;margin:16px 0}.trail-body em{font-size:7px;font-style:normal}.preview-edit{background:#f3f1eb;color:#192f65}.preview-edit .preview-nav{border-bottom:1px solid #192f6533}.preview-edit .preview-nav strong{font-family:Georgia,serif;font-size:21px;font-weight:400}.edit-body{height:72%;display:grid;grid-template-columns:1.8fr 1fr;gap:8%;padding:5% 7%;text-align:left}.edit-body>span:first-child{display:flex;flex-direction:column;justify-content:space-between}.edit-body small{font-size:5px;letter-spacing:.02em}.edit-body strong{font:400 10.5cqw/.97 Georgia,serif;letter-spacing:-.055em}.edit-side{display:flex;flex-direction:column;border-left:1px solid #192f6533;padding-left:15%;justify-content:space-between}.edit-side>b{font-size:9cqw;line-height:1;font-weight:400;font-family:Georgia,serif}.edit-side>span{font-family:serif;font-size:7px;line-height:1.7}.edit-side>small{font-size:5px;line-height:1.6}.preview-edit .preview-footer{border-top:1px solid #192f6533}.design-card[data-key='root'] .design-art{background:#f0f8f1}.design-card[data-key='calm'] .design-art{background:#f7f3f9}.design-card[data-key='nest'] .design-art{background:#f4f4f1}.design-card[data-key='wave'] .design-art{background:#fcf0fa}.design-card[data-key='trail'] .design-art{background:#f0f5f7}.design-card[data-key='edit'] .design-art{background:#f7f6f2}.detail-stage .root-body>span:first-child,.detail-stage .wave-body>small{font-size:10px}.detail-stage .root-bottom,.detail-stage .wave-body>span{font-size:12px}.detail-stage .calm-body small,.detail-stage .trail-body small,.detail-stage .nest-body small,.detail-stage .edit-body small{font-size:9px}.detail-stage .calm-body em,.detail-stage .trail-body em,.detail-stage .edit-side>span{font-size:12px}.detail-stage .root-bottom b,.detail-stage .wave-body b{font-size:45px}@media(max-width:540px){.detail-stage .root-body>span:first-child,.detail-stage .wave-body>small{font-size:6px}.detail-stage .root-bottom,.detail-stage .wave-body>span{font-size:7px}.detail-stage .calm-body small,.detail-stage .trail-body small,.detail-stage .nest-body small,.detail-stage .edit-body small{font-size:5px}.detail-stage .calm-body em,.detail-stage .trail-body em,.detail-stage .edit-side>span{font-size:7px}.detail-stage .root-bottom b,.detail-stage .wave-body b{font-size:25px}}
/* Cost-performance comparison */
.value-heading{max-width:820px;margin:0 auto 45px;text-align:center}.value-heading>.eyebrow{color:#777;margin-bottom:22px}.value-heading h2{font-size:clamp(33px,3.8vw,55px);line-height:1.6}.value-heading h2 span{color:var(--teal)}.value-heading>p:last-child{font-size:15px;line-height:2;color:#6d6d6d;margin-top:24px}.mobile-break{display:none}.table-scroll-hint{display:none}.value-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}.value-table{width:100%;min-width:760px;table-layout:fixed;border-collapse:collapse;text-align:center;font-size:14px}.value-table .criteria-col{width:19%}.value-table col:not(.criteria-col){width:27%}.value-table th,.value-table td{padding:25px 18px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:middle;font-weight:400;line-height:1.7}.value-table thead th{height:156px;background:#fafafa}.value-table th:last-child,.value-table td:last-child{border-right:0}.value-table tbody th{text-align:left;font-size:13px;font-weight:500;background:#fff}.table-heading-label{font-size:14px}.value-table thead strong{font-size:20px;display:block;font-weight:600;letter-spacing:-.035em;margin:11px 0 5px}.method-label{display:block;font-size:11px;color:#777}.value-table small{display:block;font-size:11px;color:#838383;line-height:1.8;margin-top:7px}.value-table td>strong{font-size:14px;font-weight:500;line-height:1.8}.value-table .chosen{background:#eff9fa;border-left:2px solid #298c9c;border-right:2px solid #298c9c}.value-table thead .chosen{background:#e4f3f5;border-top:2px solid #298c9c}.value-table thead .chosen img{width:147px;height:auto;margin:12px auto 4px}.value-badge{display:inline-block;background:var(--teal);color:white;border-radius:4px;padding:5px 13px;font-size:11px;font-weight:500}.value-check{display:block;margin:0 auto 7px;background:#d6edf0;color:#207d8c;width:28px;height:28px;border-radius:50%;font-size:17px;font-weight:600;line-height:28px}.value-table td.chosen>strong{font-weight:600;color:#196b78;font-size:16px}.cost-parts{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;max-width:215px;margin:auto}.cost-parts span{background:#f1f1f1;border:1px solid #e5e5e5;border-radius:4px;padding:5px 8px;font-size:11px;white-space:nowrap}.chosen .cost-parts span{background:white;border-color:#badbe0;color:#246976}.value-table .cost-emphasis{display:block;margin-top:13px;font-size:18px!important;line-height:1.6}.value-table .value-final-row td{font-size:13px}.value-table .value-final-row th,.value-table .value-final-row td{border-bottom:0}.value-table .value-final-row .chosen{background:var(--teal);color:white;border-bottom:2px solid var(--teal)}.value-table .value-final-row .chosen strong{color:white;font-size:17px}.value-takeaway{margin-top:32px;background:#fafafa;border-radius:12px;padding:32px 35px;display:flex;align-items:center;justify-content:space-between;gap:35px}.value-takeaway .eyebrow{font-size:10px;color:#777;letter-spacing:.07em;margin-bottom:13px}.value-takeaway h3{font-size:27px;font-weight:600;letter-spacing:-.05em;line-height:1.5}.value-takeaway div>p:last-child{font-size:13px;line-height:1.95;color:#777;margin-top:13px}.value-takeaway .button{flex:none;font-size:13px}.value-table-wrap:focus-visible{outline:2px solid var(--teal);outline-offset:4px}@media(max-width:1000px){.value-table th,.value-table td{padding:21px 12px}.value-table thead strong{font-size:17px}.value-table td.chosen>strong{font-size:14px}.value-takeaway{padding:28px}.value-takeaway h3{font-size:24px}.value-takeaway .button{font-size:12px;padding:14px 20px;gap:15px}}@media(max-width:800px){.table-scroll-hint{display:block;font-size:11px;color:#777;text-align:right;margin:0 0 12px}.value-takeaway{flex-direction:column;align-items:flex-start;gap:22px}}@media(max-width:540px){.value-heading{margin-bottom:29px}.value-heading>.eyebrow{font-size:10px;margin-bottom:17px}.value-heading h2{font-size:30px}.value-heading>p:last-child{font-size:13px;line-height:2;margin-top:19px}.mobile-break{display:block}.value-table{min-width:690px}.value-table th,.value-table td{padding:20px 11px}.value-table .criteria-col{width:17%}.value-table col:not(.criteria-col){width:27.666%}.value-table tbody th{font-size:12px}.value-table thead strong{font-size:16px}.value-table thead th{height:148px}.value-table thead .chosen img{width:130px}.value-badge{font-size:10px;padding:5px 9px}.value-table td>strong{font-size:12px}.value-table td.chosen>strong{font-size:13px}.value-table small{font-size:10px}.cost-parts span{font-size:10px;padding:5px 7px}.value-table .cost-emphasis{font-size:16px!important}.value-table .value-final-row .chosen strong{font-size:14px}.table-heading-label{font-size:12px}.value-takeaway{padding:26px 22px;margin-top:25px}.value-takeaway .eyebrow{font-size:8px}.value-takeaway h3{font-size:25px}.value-takeaway div>p:last-child{font-size:12px}.value-takeaway div>p:last-child br{display:none}.value-takeaway .button{width:100%;font-size:13px}}

/* 相談フォーム（ページ内送信） */
#contact-form input[type=text],#contact-form input[type=email],#contact-form input[type=tel]{display:block;width:100%;border:1px solid #ddd;border-radius:6px;background:#fafafa;font-size:15px;padding:12px 13px;margin-top:9px;color:#333}
#contact-form input:focus,#contact-form select:focus,#contact-form textarea:focus{outline:2px solid var(--teal);outline-offset:0;background:#fff}
.tu-row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
@media(max-width:560px){.tu-row{grid-template-columns:1fr}}
.tu-req{font-size:10px;background:var(--ink);color:#fff;border-radius:3px;padding:1px 6px;margin-left:8px;vertical-align:1px}
.tu-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#contact-form .tu-consent{display:flex;align-items:center;gap:10px;margin-top:24px;font-size:14px;cursor:pointer}
.tu-consent input{width:18px;height:18px;accent-color:#151515;flex:none}
.tu-privacy{font-size:11px;color:#888;line-height:1.8;margin-top:6px}
#contact-form .button:disabled{opacity:.6;cursor:wait}
.tu-status.is-error{color:#b4432f}
.tu-done{padding:24px 0 8px;outline:none}
.tu-done-title{font-size:22px;font-weight:600;margin-bottom:10px}
.tu-done p{font-size:14px;line-height:1.9;color:#444}
.tu-done p+p{margin-top:8px}
.design-tag .has-detail{background:#151515;color:#fff;border-radius:999px;padding:2px 8px}
.detail-copy .text-button{margin-left:18px}
.preview-cover{overflow:hidden;padding:0;background:#fff}
.preview-cover img{width:100%;height:100%;object-fit:cover;object-position:50% 0;display:block}
