:root{--pink:#ef7692;--pale:#fff2f4;--blue:#4f8fc9;--bluep:#e9f4fd;--ink:#2f3034;--line:#efcbd2;--shadow:0 9px 24px rgba(114,67,75,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;line-height:1.7;background:#fff}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:30px 0}
.hero{height:525px;position:relative;overflow:hidden;background:linear-gradient(110deg,#fff 0,#fff 52%,#fff0f3 100%)}.hero-bg{position:absolute;left:0;right:0;bottom:0;height:235px;background:url('assets/mountains.svg') center bottom/cover no-repeat;opacity:.95}.hero:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;right:-160px;top:120px;background:#f8d9df;opacity:.34}.hero-inner{height:100%;position:relative}.brand{position:absolute;left:0;top:20px;display:flex;gap:12px;align-items:center;z-index:5}.brand img{width:60px;height:54px}.brand div{display:flex;flex-direction:column}.brand small{font-size:12px;font-weight:700}.brand strong{font-family:"Yu Mincho",serif;font-size:25px}.hero-copy{position:absolute;left:45px;top:100px;z-index:4}.hero h1{font-family:"Yu Gothic",sans-serif;font-size:42px;line-height:1.32;margin:0;font-weight:800;letter-spacing:.02em}.hero h1 .pink{color:var(--pink);font-size:56px;line-height:1.2}.hero h1 .blue{color:var(--blue);font-size:56px;line-height:1.15}.hero-copy>p{font-size:16px;font-weight:700;margin:12px 0}.hero-pills{display:flex;gap:9px}.hero-pills span{background:#fff;border-radius:999px;padding:7px 13px;font-size:11px;font-weight:700;box-shadow:0 5px 14px rgba(0,0,0,.05)}.hero-person{position:absolute;right:160px;bottom:-6px;width:475px;z-index:3;filter:drop-shadow(0 16px 24px rgba(87,54,57,.16))}.talk{position:absolute;right:15px;top:60px;width:170px;height:130px;border:3px solid #f18aa0;border-radius:48% 52% 47% 53%;display:grid;place-items:center;text-align:center;background:rgba(255,255,255,.87);font-size:14px;font-weight:700;line-height:1.8;z-index:5}.talk:after{content:"";position:absolute;bottom:-19px;left:12px;border:20px solid transparent;border-top-color:#f18aa0;transform:rotate(28deg)}.talk:before{content:"";position:absolute;bottom:-14px;left:15px;border:17px solid transparent;border-top-color:#fff;transform:rotate(28deg);z-index:1}.area-seal{position:absolute;right:28px;bottom:45px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.85);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.5;color:#384350;z-index:4}.area-seal:before,.area-seal:after{content:"❧";position:absolute;top:38px;color:var(--blue);font-size:44px}.area-seal:before{left:-10px;transform:rotate(-65deg)}.area-seal:after{right:-10px;transform:scaleX(-1) rotate(-65deg)}.area-seal span{font-size:14px}.area-seal strong{font-size:20px}.paw{position:absolute;color:#ee96a8;opacity:.7;z-index:2}.p1{left:500px;top:120px}.p2{left:430px;top:195px;font-size:25px}.p3{right:240px;top:250px}
.global-nav{height:72px;background:rgba(255,250,251,.98);border-top:1px solid #f0d8dd;border-bottom:1px solid #f1dce0}.nav-inner{height:100%;display:grid;grid-template-columns:75px repeat(5,1fr)}.nav-inner a{display:flex;align-items:center;justify-content:center;gap:10px;border-left:1px solid #eadce0;font-weight:700;font-size:13px}.nav-inner a:hover{color:var(--pink)}.nav-inner a:first-child{border:0}.nav-logo img{width:42px}.nav-inner a:nth-child(2),.nav-inner a:nth-child(3){color:#2f2f33}.nav-inner a:nth-child(2)::first-letter,.nav-inner a:nth-child(3)::first-letter{color:var(--pink)}
.center-title{text-align:center;font-family:"Yu Mincho",serif;margin:0 0 20px;font-size:25px}.center-title span{color:var(--pink)}.center-title b{color:var(--pink);font-size:34px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.feature-grid article{border:1px solid var(--line);border-radius:8px;padding:20px 22px 18px;text-align:center;min-height:210px;background:#fff;box-shadow:0 4px 14px rgba(120,77,84,.04)}.icon{height:72px;display:grid;place-items:center;font-size:70px;line-height:1;color:var(--blue);font-family:Georgia,serif}.cat-icon{font-size:42px;border:3px solid var(--blue);border-top:0;width:66px;height:49px;margin:12px auto 11px;border-radius:0 0 25px 25px}.trees{font-size:34px;letter-spacing:-12px}.heart{font-size:84px;position:relative}.heart:after{content:"🐾";position:absolute;font-size:24px;right:52px;bottom:10px}.feature-grid h3{color:var(--blue);font-size:16px;margin:12px 0 8px}.feature-grid p{font-size:12px;text-align:left;margin:0}
.listing-band{background:linear-gradient(90deg,#fff7f8,#f5fbff);border-top:1px solid #f6e8eb;border-bottom:1px solid #f3e5e8}.double-listing{display:grid;grid-template-columns:1fr 1fr;gap:28px}.listing-block{min-width:0}.listing-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.listing-head h2{font-family:"Yu Mincho",serif;font-size:18px;margin:0}.listing-head h2:first-letter{color:var(--pink)}.listing-head a{background:var(--blue);color:#fff;padding:5px 15px;border-radius:999px;font-size:11px;font-weight:700}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini-card{border:1px solid #edcfd5;border-radius:8px;background:#fff;overflow:hidden;box-shadow:var(--shadow)}.mini-photo{height:160px;position:relative}.mini-photo img{width:100%;height:100%;object-fit:cover}.mini-photo span{position:absolute;left:8px;top:8px;background:var(--pink);color:#fff;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;border:1px solid #fff}.mini-photo span.blue{background:var(--blue)}.mini-body{padding:10px 10px 12px;text-align:center}.mini-body h3{font-family:"Yu Mincho",serif;font-size:12px;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-body p{font-size:10px;margin:0}.mini-body strong{display:block;color:var(--pink);font-size:18px;margin-top:7px}.mini-body strong small{font-size:9px;color:#333}.tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin-top:8px}.tags em{font-style:normal;background:var(--bluep);color:#49677e;border-radius:4px;padding:2px 5px;font-size:8px}
.info-band{background:linear-gradient(90deg,#fff7f8,#fff1f4)}.info-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.about,.access{background:rgba(255,255,255,.78);border-radius:8px;min-height:165px;display:flex;align-items:center;padding:20px;box-shadow:0 4px 16px rgba(127,77,85,.04)}.about>img{width:130px;height:130px;border-radius:50%;object-fit:cover;border:5px solid #fff;margin-right:22px}.about h2,.access h2{font-family:"Yu Mincho",serif;font-size:18px;margin:0 0 8px}.about p,.access p{font-size:11px;margin:4px 0}.about a,.access a{display:inline-flex;margin-top:9px;background:var(--blue);color:#fff;border-radius:999px;padding:6px 20px;font-size:10px;font-weight:700}.access{justify-content:space-between}.access img{width:118px;height:118px;border-radius:50%;object-fit:cover;border:5px solid #fff}.contact{background:#fff3f5;padding-top:10px}.contact-box{position:relative;min-height:110px;border:1px dashed var(--pink);border-radius:10px;background:#fff;display:grid;grid-template-columns:170px 1fr 350px;align-items:center;padding:8px 22px;overflow:hidden}.contact-box>img{width:150px}.contact-box h2{text-align:center;color:var(--pink);font-family:"Yu Mincho",serif;font-size:20px;line-height:1.6;margin:0}.contact-box>a{justify-self:center;background:linear-gradient(135deg,#ed6687,#f388a0);color:#fff;border-radius:999px;padding:14px 35px;font-size:18px;font-weight:700;box-shadow:0 8px 18px rgba(236,102,131,.24)}.paw-deco{position:absolute;right:14px;bottom:4px;color:var(--pink);font-size:28px}
footer{background:#fff7f9;border-top:1px solid #f2dfe3;padding:18px 0}.footer-inner{display:grid;grid-template-columns:310px 1fr auto 40px;align-items:center;gap:20px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:54px}.footer-brand div{display:flex;flex-direction:column}.footer-brand small{font-size:10px}.footer-brand strong{font-family:"Yu Mincho",serif;font-size:18px}.footer-inner nav{display:flex;justify-content:center;gap:28px;font-size:14px;font-weight:700}.footer-inner>small{font-size:12px}.to-top{width:34px;height:34px;border:1px solid var(--pink);border-radius:50%;display:grid;place-items:center;color:var(--pink)}.pattern-switch{position:fixed;right:18px;bottom:18px;background:#262626;color:#fff;padding:10px 16px;border-radius:999px;font-size:12px;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.18)}
@media(max-width:1020px){.hero-person{right:65px}.talk{right:0}.area-seal{right:0;bottom:25px}.hero-copy{left:0}.feature-grid{grid-template-columns:repeat(2,1fr)}.double-listing{grid-template-columns:1fr}.mini-photo{height:200px}.info-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-brand{justify-content:center}.footer-inner nav{flex-wrap:wrap}.to-top{justify-self:center}}
@media(max-width:720px){.wrap{width:min(100% - 24px,600px)}.hero{height:760px}.brand{top:10px;left:0}.brand img{width:46px}.brand strong{font-size:20px}.hero-copy{left:0;top:95px}.hero h1{font-size:28px}.hero h1 .pink,.hero h1 .blue{font-size:40px}.hero-copy>p{font-size:13px}.hero-pills{flex-direction:column;align-items:flex-start}.hero-person{width:390px;right:-100px}.talk{width:130px;height:100px;top:220px;font-size:11px}.area-seal{width:135px;height:135px;right:6px;bottom:40px}.area-seal span{font-size:11px}.area-seal strong{font-size:15px}.global-nav{height:auto}.nav-inner{grid-template-columns:repeat(3,1fr);padding:6px 0}.nav-inner a{border:0;height:42px;font-size:11px}.nav-logo{display:none!important}.feature-grid{grid-template-columns:1fr}.feature-grid article{min-height:180px}.mini-grid{grid-template-columns:1fr}.mini-photo{height:210px}.info-grid{gap:12px}.about,.access{flex-direction:column;text-align:center}.about>img{margin:0 0 12px}.contact-box{grid-template-columns:1fr;text-align:center;padding:10px}.contact-box>img{justify-self:center}.contact-box>a{padding:11px 24px;font-size:15px}.footer-inner nav{gap:12px}.pattern-switch{right:10px;bottom:10px}}

/* 2026-06 修正反映 */
.social-links{position:absolute;right:8px;top:18px;display:flex;gap:8px;z-index:8}
.social-links a{width:34px;height:34px;border:1px solid rgba(79,143,201,.34);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--blue);font-size:15px;font-weight:800;box-shadow:0 5px 14px rgba(70,93,118,.10);transition:transform .2s ease,background .2s ease,color .2s ease}
.social-links a:hover{transform:translateY(-2px);background:var(--blue);color:#fff}
.social-links .facebook span{font-family:Arial,sans-serif;font-size:20px}
.social-links .instagram span{font-family:Arial,sans-serif;font-size:21px;line-height:1}
.social-links .x span{font-family:Arial,sans-serif;font-size:14px}
.social-links .note{width:44px;border-radius:18px}
.social-links .note span{font-family:Arial,sans-serif;font-size:11px;letter-spacing:-.03em}
.area-seal span{font-size:14px;font-weight:700}
.area-seal strong{font-size:18px;color:var(--blue);line-height:1.4}
.area-seal b{font-size:18px;color:var(--pink);line-height:1.35}
.feature-grid article{min-height:228px}
.feature-grid h3{line-height:1.45}
.feature-grid p{line-height:1.75}
.representative{background:#fff3f5;padding:8px 0 28px}
.representative-card{position:relative;min-height:250px;border:1px solid #f0cbd3;border-radius:12px;background:linear-gradient(110deg,#fff 0%,#fff 64%,#fff7f9 100%);display:grid;grid-template-columns:300px 1fr;align-items:stretch;overflow:hidden;box-shadow:0 8px 22px rgba(122,70,79,.06)}
.representative-card:after{content:"🐾";position:absolute;right:26px;bottom:16px;color:#ef9caf;font-size:34px;opacity:.65;transform:rotate(-12deg)}
.representative-visual{position:relative;min-height:250px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(150deg,#fbe2e7,#edf7ff)}
.representative-visual:before,.representative-visual:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.55)}
.representative-visual:before{width:130px;height:130px;left:-32px;top:-26px}
.representative-visual:after{width:88px;height:88px;right:-18px;bottom:22px}
.rep-circle{position:absolute;width:210px;height:210px;border-radius:50%;background:#f7cbd5;left:46px;top:24px;box-shadow:0 0 0 12px rgba(255,255,255,.45)}
.representative-visual img{position:relative;z-index:2;height:245px;width:auto;max-width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 11px 17px rgba(59,67,78,.17))}
.representative-copy{padding:28px 70px 26px 38px;align-self:center}
.rep-kicker{display:inline-flex;margin:0 0 8px;padding:3px 13px;border-radius:999px;background:var(--bluep);color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.08em}
.representative-copy h2{font-family:"Yu Mincho",serif;font-size:24px;margin:0 0 14px;line-height:1.5}
.representative-copy h2 small{font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;font-size:13px;font-weight:600;color:#69727a}
.representative-copy p{font-size:12px;margin:5px 0;line-height:1.85}
.representative-copy .rep-motto{font-family:"Yu Mincho",serif;color:var(--pink);font-size:16px;font-weight:700;margin:11px 0 7px}

@media(max-width:1020px){
  .social-links{right:0}
  .representative-card{grid-template-columns:260px 1fr}
  .rep-circle{left:26px}
  .representative-copy{padding-right:50px}
}
@media(max-width:720px){
  .social-links{top:60px;right:0;gap:5px}
  .social-links a{width:30px;height:30px;font-size:13px}
  .social-links .note{width:40px}
  .hero-copy{top:118px}
  .talk{top:255px}
  .area-seal{bottom:34px}
  .area-seal span{font-size:10px}
  .area-seal strong,.area-seal b{font-size:14px}
  .feature-grid article{min-height:190px}
  .representative-card{grid-template-columns:1fr}
  .representative-visual{min-height:235px}
  .representative-visual img{height:225px}
  .rep-circle{left:50%;transform:translateX(-50%);top:22px;width:195px;height:195px}
  .representative-copy{padding:24px 22px 32px;text-align:left}
  .representative-copy h2{font-size:21px}
  .representative-copy h2 small{display:block;margin-top:3px}
}

/* 2026-06 スマートフォンヘッダー・ドロワーメニュー調整 */
.hero-head{position:absolute;inset:0 0 auto 0;height:86px;z-index:10;pointer-events:none}
.hero-head .brand,.hero-head .social-links,.hero-head .menu-toggle{pointer-events:auto}
.menu-toggle,.drawer-close{display:none}
.sp-only{display:none}

@media(max-width:720px){
  body.drawer-open{overflow:hidden}
  .hero-head{top:0;height:74px;display:flex;align-items:center;gap:8px;padding:8px 0;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(239,203,210,.7)}
  .brand{position:static;min-width:0;display:flex;align-items:center;gap:7px;flex:1 1 auto}
  .brand img{width:39px;height:42px;flex:0 0 auto}
  .brand div{min-width:0}
  .brand small{font-size:8px;line-height:1.25;white-space:nowrap}
  .brand strong{font-size:16px;line-height:1.35;white-space:nowrap}
  .social-links{position:static;display:flex;align-items:center;gap:4px;flex:0 0 auto}
  .social-links a{width:28px;height:28px;font-size:12px;box-shadow:none;background:#fff}
  .social-links .facebook span{font-size:17px}
  .social-links .instagram span{font-size:18px}
  .social-links .x span{font-size:12px}
  .social-links .note{width:35px;height:28px;border-radius:15px}
  .social-links .note span{font-size:9px}
  .menu-toggle{display:flex;width:36px;height:36px;flex:0 0 36px;border:1px solid rgba(79,143,201,.35);border-radius:8px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:0;box-shadow:0 4px 12px rgba(70,93,118,.08);cursor:pointer}
  .menu-toggle span{display:block;width:18px;height:2px;border-radius:2px;background:var(--blue);transition:transform .2s ease,opacity .2s ease}
  .drawer-open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .drawer-open .menu-toggle span:nth-child(2){opacity:0}
  .drawer-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

  .hero-copy{top:104px}
  .hero-copy>p.hero-lead{position:relative;z-index:6;width:210px;margin:10px 0 12px;padding:3px 7px;border-radius:5px;background:rgba(255,255,255,.88);font-size:13px;line-height:1.65}
  .sp-only{display:block}
  .hero-person{width:360px;right:-105px;bottom:-85px}
  .talk{top:200px}

  .global-nav{position:fixed;top:0;right:0;width:min(84vw,330px);height:100dvh;z-index:1200;background:#fff8fa;border:0;box-shadow:-12px 0 34px rgba(64,50,54,.18);transform:translateX(105%);transition:transform .28s ease;overflow-y:auto}
  .drawer-open .global-nav{transform:translateX(0)}
  .nav-inner{width:100%;height:auto;display:flex;flex-direction:column;align-items:stretch;padding:78px 18px 28px}
  .nav-inner a{height:58px;justify-content:flex-start;padding:0 16px;border:0;border-bottom:1px solid #f0dfe3;font-size:14px;gap:12px}
  .nav-inner a:first-of-type{border-bottom:1px solid #f0dfe3}
  .nav-logo{display:flex!important;height:64px!important;justify-content:center!important;background:#fff;border-radius:10px;margin-bottom:8px}
  .nav-logo img{width:48px}
  .drawer-close{display:grid;place-items:center;position:absolute;top:18px;right:18px;width:40px;height:40px;border:1px solid #efcbd2;border-radius:50%;background:#fff;color:var(--pink);font-size:27px;line-height:1;cursor:pointer}
  .drawer-overlay{position:fixed;inset:0;z-index:1100;background:rgba(32,39,46,.42);backdrop-filter:blur(2px)}
  .drawer-overlay[hidden]{display:none}
}

@media(max-width:390px){
  .hero-head{gap:5px}
  .brand img{width:35px;height:38px}
  .brand small{display:none}
  .brand strong{font-size:15px}
  .social-links{gap:3px}
  .social-links a{width:25px;height:25px}
  .social-links .note{width:32px;height:25px}
  .menu-toggle{width:33px;height:33px;flex-basis:33px}
}

/* 2026-06 スマートフォンKV微調整 */
.talk::before,.talk::after{display:none}
@media(max-width:720px){
  .hero-copy>p.hero-lead{width:auto;max-width:200px;line-height:1.65}
  .hero-copy>p.hero-lead span{white-space:nowrap}
  .hero-person{width:390px;right:-100px;bottom:-6px}
}

/* 2026-06 物件管理連携 */
.mini-card-link{display:block;height:100%;color:inherit}
.property-no{display:inline-flex;margin:0 0 5px!important;padding:2px 8px;border-radius:999px;background:#eef7ff;color:var(--blue);font-size:11px!important;font-weight:800}
.static-page{padding:56px 0;background:linear-gradient(180deg,#fff 0,#fff8fa 100%)}
.static-page-card{background:#fff;border:1px solid #f0cbd3;border-radius:22px;padding:34px;box-shadow:var(--shadow)}
.static-page h1{font-family:"Yu Mincho",serif;font-size:34px;line-height:1.45;margin:0 0 18px;color:var(--pink)}
.static-page h2{font-size:22px;margin:28px 0 10px;color:var(--blue)}
.static-table{width:100%;border-collapse:collapse;margin-top:18px;background:#fff}.static-table th,.static-table td{border-bottom:1px solid #f2dce2;padding:14px;text-align:left;vertical-align:top}.static-table th{width:220px;color:#5f6d78;background:#fff8fa}
.contact-form{display:grid;gap:14px;margin-top:20px}.contact-form label{font-weight:800}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #efcbd2;border-radius:10px;padding:12px 14px;font:inherit;background:#fff}.contact-form textarea{min-height:150px}.contact-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form button{justify-self:start;border:0;border-radius:999px;background:var(--pink);color:#fff;font-weight:800;padding:13px 32px;box-shadow:var(--shadow);cursor:pointer}.notice{padding:13px 16px;border-radius:12px;margin:15px 0;font-weight:700}.notice.ok{background:#eaf8f1;color:#207b52}.notice.error{background:#fff0f3;color:#b23052}.property-reference{padding:12px 14px;border-radius:12px;background:#eef7ff;border:1px solid #d6ebfb;color:#436b8f;font-weight:700}
@media(max-width:720px){.static-page{padding:34px 0}.static-page-card{padding:22px}.static-page h1{font-size:27px}.static-table th,.static-table td{display:block;width:100%;padding:10px 12px}.static-table th{border-bottom:0}.contact-form .form-grid{grid-template-columns:1fr}}
.simple-header{background:#fff8fa;border-bottom:1px solid #f0dfe3}.simple-header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;position:relative}.simple-brand{position:static}.simple-social{position:static}.static-global{position:sticky;top:0;z-index:30}.static-global .nav-inner{grid-template-columns:repeat(5,1fr)}
@media(max-width:720px){.simple-header-inner{height:auto;min-height:74px;gap:8px}.simple-brand .brand img,.simple-brand img{width:42px}.simple-brand strong{font-size:17px}.simple-brand small{font-size:9px}.simple-social a{width:27px;height:27px}.static-global{position:static}.static-global .nav-inner{grid-template-columns:repeat(2,1fr)}.static-global .nav-inner a{font-size:12px}}
