:root{--bg:#f8f7f2;--ink:#262b28;--muted:#62665e;--orange:#c34a26;--line:#dcded4;--soft:#eeeee4;--dark:#253f36;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.95;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}p,h1,h2,h3,ul,ol,dl{margin:0}h1,h2,h3{line-height:1.5;letter-spacing:.01em}p{overflow-wrap:anywhere}ul{padding:0;list-style:none}img{max-width:100%;height:auto}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-top:112px;padding-bottom:112px}.eyebrow{font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.15em;line-height:1.5}.accent{color:var(--orange)}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:15px;z-index:99999}.skip-link:focus{top:10px}.site-header{height:98px;width:100%;padding:0 4%;display:flex;align-items:center;justify-content:space-between;background:rgba(248,247,242,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}body.admin-bar .site-header{top:32px}.brand{font-family:Arial,sans-serif;font-size:32px;line-height:1;font-weight:800;letter-spacing:-1.9px;display:inline-flex;align-items:center;gap:10px}.brand-dot{color:var(--orange)}.brand-mark{color:white;background:var(--orange);height:37px;width:37px;display:flex;align-items:center;justify-content:center;position:relative;border-radius:10px;font-size:29px;letter-spacing:-3px;padding-right:5px}.brand-mark span{font-size:15px;margin-left:2px;align-self:flex-start;margin-top:3px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:600}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--orange)}.site-header nav .nav-contact{border:1px solid var(--ink);border-radius:99px;padding:11px 21px;display:flex;gap:27px}.menu-toggle{display:none}.hero{position:relative;padding-top:88px;display:grid;grid-template-columns:1.2fr 1fr;gap:22px;min-height:730px;align-items:center}.status-dot{display:inline-block;height:7px;width:7px;background:var(--orange);border-radius:50%;margin:0 10px 1px 0}.hero h1{font-size:clamp(38px,4.3vw,63px);font-weight:700;line-height:1.55;letter-spacing:-.055em;margin-top:27px;white-space:nowrap}.small-break{display:none}.hero-lead{font-size:19px;font-weight:600;line-height:1.85;margin-top:26px}.hero-text{font-size:13px;color:var(--muted);margin-top:19px;line-height:2.05}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:31px}.button{background:var(--orange);border:1px solid var(--orange);color:#fff;border-radius:99px;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:16px 25px;font-size:13px;font-weight:600;transition:background .2s,transform .2s;min-height:56px}.button span{font:23px Arial,sans-serif}.button:hover{background:#a23b1c;transform:translateY(-2px)}.text-link{font-size:12px;border-bottom:1px solid var(--ink);padding:10px 0;display:flex;gap:20px}.hero-bottom{grid-column:1/-1;width:100%;display:flex;justify-content:space-between;align-items:center;font-family:Arial,sans-serif;letter-spacing:.12em;font-size:9px;border-top:1px solid var(--line);padding:27px 0;margin-top:55px}.hero-bottom a span{margin-left:18px}.hero-art{height:475px;position:relative;isolation:isolate}.art-orbit{position:absolute;width:390px;height:390px;right:0;top:10px;border-radius:50%;border:1px solid #dadccf;background:#eeefe5}.art-orbit:after{content:"";position:absolute;inset:-28px;border:1px dashed #d8dacd;border-radius:50%}.art-star{position:absolute;top:-13px;right:0;font-size:81px;color:var(--orange);z-index:3;line-height:1}.web-window{position:absolute;left:0;top:58px;width:350px;background:#fff;border:1px solid #d7d8cf;border-radius:12px;transform:rotate(-7deg);box-shadow:0 22px 35px #27362a12;overflow:hidden}.window-bar{height:32px;border-bottom:1px solid #e9e9e2;display:flex;align-items:center;gap:4px;padding:0 12px}.window-bar i{width:5px;height:5px;border-radius:50%;background:#c9cec3}.window-bar span{font-size:6px;letter-spacing:.1em;margin-left:auto}.window-content{height:223px;padding:22px;position:relative;overflow:hidden}.mini-logo{font:8px Georgia,serif;color:#5e6a5c}.mini-title{position:relative;font-size:27px;line-height:1.4;font-weight:700;margin-top:17px;z-index:2}.mini-line{height:3px;background:#deded4;width:112px;margin-top:16px}.mini-line.short{width:85px;margin-top:6px}.mini-button{display:inline-block;background:var(--orange);color:#fff;padding:7px 11px;margin-top:15px;font:6px Arial;letter-spacing:.1em;border-radius:3px}.mini-shape{position:absolute;width:136px;height:170px;border-radius:75px 75px 0 0;right:-4px;bottom:0;background:#eddcc5;transform:rotate(10deg)}.mini-shape:after{content:"";position:absolute;width:96px;height:96px;background:var(--orange);border-radius:50%;top:19px;left:20px}.mini-shape span{position:absolute;width:97px;height:65px;background:#244739;bottom:0;left:-15px;border-radius:50px 50px 0 0;z-index:1}.window-footer{display:flex;justify-content:space-around;border-top:1px solid #e9e9e2;padding:11px;font:6px Arial;letter-spacing:.15em}.movie-window{position:absolute;right:-8px;top:207px;width:225px;background:#244237;color:white;border-radius:11px;padding:13px 13px 10px;transform:rotate(9deg);box-shadow:0 24px 36px #142b2624}.movie-head{font:7px Arial;letter-spacing:.1em;display:flex;justify-content:space-between;margin-bottom:11px}.movie-head span{color:#d7ded1}.movie-scene{height:126px;border-radius:4px;background:#d8dfc8;position:relative;overflow:hidden}.sun{position:absolute;width:39px;height:39px;border-radius:50%;background:#d8794f;right:31px;top:17px}.mountain{position:absolute;width:100%;height:82px;background:#758671;left:0;bottom:21px;clip-path:polygon(0 100%,14% 66%,26% 65%,43% 12%,51% 32%,60% 28%,76% 70%,100% 90%,100% 100%)}.sea{position:absolute;bottom:0;left:0;right:0;height:36px;background:repeating-linear-gradient(0deg,#65857a 0px,#65857a 9px,#97aaa0 10px,#65857a 11px)}.play{position:absolute;left:calc(50% - 19px);top:calc(50% - 19px);border:1px solid #fff9;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:12px;padding-left:2px;color:white;backdrop-filter:blur(2px)}.timeline{height:24px;display:flex;gap:3px;align-items:center;position:relative;margin-top:11px}.timeline i{display:block;flex:1;height:12px;background:#658272}.timeline i:nth-child(3n){height:20px;background:#a7b496}.timeline b{position:absolute;left:60%;top:0;height:25px;width:1px;background:#f3c78e}.movie-caption{font:7px Georgia,serif;color:#dee2d3}.life-tag{position:absolute;bottom:18px;left:7px;background:#f2d7b7;display:flex;align-items:center;gap:13px;padding:14px 20px;transform:rotate(-6deg);border-radius:5px}.life-tag>span{font-size:33px;line-height:1;color:var(--orange)}.life-tag div{font:7px Arial;letter-spacing:.13em}.life-tag small{display:block;font-size:10px;font-weight:700;letter-spacing:0;margin-top:7px}.art-note{position:absolute;bottom:0;right:0;font:7px Arial;letter-spacing:.16em;transform:rotate(-90deg);transform-origin:right center}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:49px;gap:30px}.section-heading h2,.about-copy h2{font-size:36px;line-height:1.65;letter-spacing:-.035em;margin-top:20px}.section-heading>p{font-size:13px;line-height:2.1;color:var(--muted);padding-bottom:6px}.services{padding-top:90px}.service-group-label{display:flex;align-items:center;gap:20px;margin-bottom:22px}.service-group-label span{font:10px Arial;letter-spacing:.1em;border:1px solid var(--ink);border-radius:99px;padding:5px 14px}.service-group-label p{font-size:12px;font-weight:600}.creative-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.creative-card{padding:36px 39px 28px;border-radius:var(--radius)}.web-card{background:#eeeadf}.movie-card{background:#e7ece2}.card-top{display:flex;align-items:center;gap:14px;margin-bottom:20px}.service-number{font:12px Arial;color:var(--orange)}.service-en{font:10px Arial;letter-spacing:.13em}.service-icon{margin-left:auto;font:34px Arial;color:var(--orange)}.creative-card h3{font-size:27px;letter-spacing:-.03em}.card-catch{font-size:18px;font-weight:600;line-height:1.8;margin:18px 0}.creative-card>p:not(.card-catch){font-size:13px;line-height:2.1;color:#525a51}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:23px}.tags li{font-size:10px;border:1px solid #cbd0c2;border-radius:4px;padding:3px 9px}.card-link{font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cbd0c2;margin-top:29px;padding-top:21px}.card-link span{font:24px Arial;color:var(--orange)}.card-link:hover{color:var(--orange)}.life-label{margin-top:49px}.life-row{display:grid;grid-template-columns:36px 245px 1fr 52px;gap:21px;align-items:center;border-top:1px solid var(--line);padding:29px 0}.life-row:last-child{border-bottom:1px solid var(--line)}.life-title h3{font-size:21px;margin-top:6px}.life-title .service-en{font-size:9px;color:var(--muted)}.life-row>p{font-size:12px;line-height:2.1;color:var(--muted);max-width:550px}.life-row>a{width:44px;height:44px;border:1px solid #b5bbae;border-radius:50%;display:grid;place-items:center;font:22px Arial;transition:background .2s}.life-row>a:hover{background:var(--orange);color:white;border-color:var(--orange)}.service-note{font-size:11px;color:var(--muted);margin-top:17px;text-align:right}.about-section{background:#eeeee5}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-art{height:520px;background:#d9dfcb;border-radius:180px 180px 12px 12px;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center}.about-art-label{position:absolute;top:52px;left:0;right:0;text-align:center;font:9px Arial;letter-spacing:.2em}.local-symbol{position:relative;width:100%;height:330px}.local-sun{position:absolute;right:22%;top:34px;width:102px;height:102px;background:#cf6240;border-radius:50%}.local-mountain{position:absolute;bottom:93px;left:0;width:100%;height:174px;background:#57705b;clip-path:polygon(0 100%,19% 69%,34% 65%,48% 15%,57% 43%,65% 37%,79% 74%,100% 100%)}.local-wave{position:absolute;left:-10%;width:120%;height:60px;border-top:2px solid #738972;border-radius:50%;bottom:60px;transform:rotate(-3deg)}.local-wave.w2{bottom:35px;transform:rotate(3deg)}.local-wave.w3{bottom:10px;transform:rotate(-3deg)}.about-art-bottom{position:absolute;bottom:32px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;font-size:10px}.about-art-bottom span:last-child{font:8px Arial;letter-spacing:.1em}.about-copy>p:not(.eyebrow){font-size:13px;line-height:2.2;margin-top:23px;color:#50594d}.business-info{margin-top:26px;font-size:12px}.business-info div{display:flex;gap:18px;padding:9px 0;border-top:1px solid #d4d8c9}.business-info dt{width:100px;color:var(--muted);flex-shrink:0}.business-info dd{margin:0;overflow-wrap:anywhere}.business-info a{text-decoration:underline;text-underline-offset:4px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:42px}.step-index{font:10px Arial;letter-spacing:.14em;display:flex;justify-content:space-between;border-top:1px solid #bfc6b8;padding-top:24px;color:var(--orange)}.step-index span{font-size:19px;line-height:1}.steps h3{font-size:19px;margin:22px 0 15px}.steps p{font-size:13px;color:var(--muted);line-height:2}.faq-section{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding-top:10px;padding-bottom:115px}.faq-section h2{font-size:25px;margin-top:19px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}details>summary{cursor:pointer;list-style:none}details>summary::-webkit-details-marker{display:none}.faq-list summary{font-size:13px;display:flex;align-items:center;gap:17px;padding:22px 0;line-height:1.9}.faq-list summary>span:first-child{font-family:Arial;color:var(--orange);align-self:flex-start}.faq-plus{margin-left:auto;padding-left:15px;font-size:21px;font-weight:400}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-list details>p{font-size:12px;padding:0 27px 25px;color:var(--muted);line-height:2.1}.contact-section{background:var(--dark);color:#fff;padding:77px 0}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-inner .eyebrow{color:#d6c8a6}.contact-inner h2{font-size:35px;line-height:1.65;margin:24px 0}.contact-inner p{font-size:12px;line-height:2.1;color:#d1d8cd}.contact-actions{min-width:270px;text-align:center}.button-light{background:#faf7ef;color:var(--dark);border-color:#faf7ef;width:100%;font-size:14px}.button-light:hover{background:#e5d8c2}.email-address{display:block;font:19px Arial;letter-spacing:.02em;margin:25px 0 9px}.copy-email{background:transparent;color:#e2e7dd;border:0;border-bottom:1px solid #6f8477;font-size:10px;padding:6px}.copy-email span{margin-left:12px}.contact-actions .contact-note{font-size:10px;color:#b9c7b9;margin-top:15px}.privacy-section{padding-top:29px;padding-bottom:29px;border-bottom:1px solid var(--line)}.privacy-section summary{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.privacy-section details>div{font-size:11px;color:var(--muted);max-width:900px;padding-top:20px;line-height:2}.privacy-section p+p{margin-top:10px}.privacy-section a{text-decoration:underline}.site-footer{padding:45px 4% 25px}.footer-top{display:flex;align-items:center;gap:35px}.footer-top .brand{font-size:35px;gap:0}.footer-top p{font:9px/1.9 Arial,sans-serif;letter-spacing:.09em;color:var(--muted)}.back-top{margin-left:auto;width:44px;height:44px;display:grid;place-items:center;border:1px solid #c4cabc;border-radius:50%;font-size:19px}.footer-bottom{display:flex;justify-content:space-between;font:9px Arial,sans-serif;color:var(--muted);border-top:1px solid var(--line);margin-top:33px;padding-top:20px;gap:20px;letter-spacing:.05em}.footer-bottom a{font-size:10px}.mobile-contact{display:none}#copy-status{position:fixed;bottom:35px;left:50%;transform:translate(-50%,30px);opacity:0;background:#192f25;color:white;font-size:12px;border-radius:6px;box-shadow:0 5px 20px #0003;padding:14px 24px;pointer-events:none;transition:.2s;z-index:90;text-align:center;width:max-content;max-width:90%}#copy-status.is-visible{transform:translate(-50%,0);opacity:1}.document{width:min(860px,90%);min-height:60vh;margin:85px auto}.document h1{font-size:33px;margin-bottom:35px}.document p{margin:20px 0}.document a:not(.button){text-decoration:underline}.document h2{margin:30px 0 18px}body .wp-block-html{margin:0}@media(min-width:1500px){.hero{min-height:780px}.hero-art{transform:scale(1.06);transform-origin:center right}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-header nav{gap:21px}.hero{grid-template-columns:1.1fr 1fr;padding-top:65px}.hero h1{font-size:44px}.hero-art{transform:scale(.86);transform-origin:center right;margin-left:-50px}.hero-text .desktop-break{display:none}.creative-card{padding:28px}.about-grid{gap:50px}.life-row{grid-template-columns:25px 210px 1fr 44px;gap:15px}.steps{gap:25px}.faq-section{gap:40px}.contact-inner h2{font-size:30px}}@media(max-width:800px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.site-header{height:76px;padding:0 20px}.brand{font-size:29px}.brand-mark{height:32px;width:32px;font-size:26px}.menu-toggle{display:flex;align-items:center;gap:10px;background:transparent;border:0;font-size:11px;padding:10px 0 10px 15px}.menu-toggle span{font-size:24px;line-height:1}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;padding:20px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 10px 20px #1e30210a;align-items:stretch}.site-header nav.is-open{display:flex;flex-direction:column;gap:5px}.site-header nav a{padding:11px}.site-header nav .nav-contact{margin-top:5px;justify-content:center;gap:18px;padding:13px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:46px;gap:0;min-height:0}.hero h1{font-size:clamp(33px,6.5vw,48px);margin-top:20px;line-height:1.55;letter-spacing:-.05em}.hero-lead{font-size:16px;margin-top:22px}.hero-text{font-size:12px;max-width:510px;margin-top:17px}.hero .eyebrow{font-size:9px;letter-spacing:.12em}.hero-actions{gap:24px;margin-top:25px}.hero-art{transform:none;margin:38px auto 0;width:min(430px,100%);height:410px}.web-window{width:320px;left:3px;top:38px}.window-content{height:199px;padding:17px 21px}.mini-title{font-size:24px}.mini-button{margin-top:11px}.mini-shape{height:145px;width:120px}.mini-shape:after{height:85px;width:85px;left:15px}.movie-window{top:178px;width:204px;right:0}.movie-scene{height:111px}.art-orbit{width:318px;height:318px;right:15px;top:12px}.art-orbit:after{inset:-15px}.art-star{font-size:65px;top:-7px;right:12px}.life-tag{left:10px;bottom:5px;padding:12px 15px}.art-note{right:-5px;font-size:6px;bottom:20px}.hero-bottom{margin-top:27px;font-size:7px;gap:12px;padding:19px 0}.hero-bottom a{white-space:nowrap;font-size:6px}.hero-bottom a span{margin-left:4px}.section{padding-top:69px;padding-bottom:69px}.section-heading{display:block;margin-bottom:32px}.section-heading h2,.about-copy h2{font-size:28px;margin-top:16px}.section-heading>p{font-size:12px;margin-top:20px}.service-group-label{gap:12px}.service-group-label span{font-size:8px;padding:4px 10px}.service-group-label p{font-size:10px}.creative-grid{grid-template-columns:1fr;gap:18px}.creative-card{padding:28px 25px 24px}.creative-card h3{font-size:24px}.card-catch{font-size:18px}.creative-card>p:not(.card-catch){font-size:12px}.tags li{font-size:9px}.life-label{margin-top:35px}.life-row{grid-template-columns:25px 1fr 42px;gap:10px;padding:24px 0}.life-row>.service-number{align-self:start;padding-top:7px}.life-title h3{font-size:20px}.life-row>p{grid-column:2/3;font-size:12px;grid-row:2}.life-row>a{grid-column:3;grid-row:1/3;width:38px;height:38px}.service-note{text-align:left;font-size:10px}.about-grid{display:flex;flex-direction:column-reverse;gap:36px;align-items:stretch}.about-copy>p:not(.eyebrow){font-size:12px}.about-art{height:360px;max-width:440px;width:100%;align-self:center}.about-art-label{top:34px}.local-symbol{height:260px}.local-sun{width:76px;height:76px;top:35px}.local-mountain{height:135px;bottom:72px}.local-wave{height:40px;bottom:43px}.local-wave.w2{bottom:23px}.local-wave.w3{bottom:3px}.about-art-bottom{bottom:23px;font-size:9px}.steps{grid-template-columns:1fr;gap:27px}.step-index{padding-top:22px}.steps h3{font-size:19px;margin:16px 0 10px}.steps p{font-size:12px}.faq-section{display:block;padding-top:0;padding-bottom:67px}.faq-section h2{font-size:26px;margin:14px 0 28px}.faq-list summary{font-size:12px;gap:10px;padding:21px 0}.faq-list details>p{font-size:12px;padding:0 19px 23px}.faq-plus{padding-left:8px}.contact-section{padding:55px 0}.contact-inner{display:block}.contact-inner h2{font-size:27px;margin:19px 0}.contact-inner p{font-size:12px}.contact-actions{min-width:0;margin-top:29px;max-width:350px}.contact-actions .button{min-height:59px}.contact-actions .email-address{font-size:20px}.privacy-section{padding-top:22px;padding-bottom:22px}.privacy-section summary{font-size:10px;gap:12px}.site-footer{padding:33px 20px 95px}.footer-top{gap:22px}.footer-top .brand{font-size:30px}.footer-top p{font-size:7px}.back-top{width:37px;height:37px}.footer-bottom{font-size:8px;gap:12px;flex-wrap:wrap}.footer-bottom a{font-size:9px}.footer-bottom>span:last-child{display:none}.mobile-contact{display:block;position:fixed;bottom:0;left:0;right:0;z-index:45;background:var(--bg);padding:9px 16px max(9px,env(safe-area-inset-bottom));border-top:1px solid #dcded4}.mobile-contact a{background:var(--orange);color:white;display:flex;align-items:center;justify-content:center;gap:35px;font-size:12px;font-weight:600;padding:10px;border-radius:99px}.mobile-contact a span{font-size:20px;line-height:1}#copy-status{bottom:89px;font-size:11px}.document{margin:50px auto}.document h1{font-size:27px}body.admin-bar .site-header{top:46px}}@media(max-width:380px){.hero h1{font-size:31px}.hero .eyebrow{font-size:8px}.hero-actions{gap:14px}.hero-actions .button{font-size:12px;gap:15px;padding:14px 18px}.text-link{font-size:10px;gap:10px}.hero-art{transform:scale(.9);transform-origin:top left;width:111%;margin-bottom:-41px}.contact-inner h2{font-size:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
