:root{--green:#a9cbbd;--dark:#567c70;--cream:#fff3f6;--orange:#dfa4b5;--line:#dce8e2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#30433f;font-family:"Yu Gothic",Meiryo,sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}.wrap{width:min(1100px,calc(100% - 48px));margin:auto}.narrow{max-width:760px}header{height:88px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fffafbf2;z-index:9;border-bottom:1px solid #f1e1e6}.logo{display:flex;align-items:center;gap:10px;color:var(--orange);font-size:32px;font-weight:bold}.logo span{color:var(--dark);font-size:17px;line-height:1.2}.logo small{display:block;font-size:10px}nav{display:flex;gap:25px}nav a{font-weight:bold;font-size:13px}.menu{display:none;border:0;background:none;font-size:26px}.hero{min-height:680px;background:var(--cream);display:grid;grid-template-columns:44% 56%;align-items:center}.hero>div{padding:70px 5vw 70px 8vw}.hero h1{font-size:clamp(44px,6vw,80px);line-height:1.35;color:var(--dark);letter-spacing:.07em}.en,h2 i{color:var(--orange);letter-spacing:.12em;font:normal 14px Georgia,serif}.hero figure{height:600px;margin:0;border-radius:0 0 0 130px;background:url("https://images.unsplash.com/photo-1576091160550-2173dba999ef?auto=format&fit=crop&w=1400&q=85") center/cover}section{padding:110px 0;scroll-margin-top:88px}h2{font-size:34px;color:var(--dark);margin:0 0 45px}h2 i{display:block}.band{background:var(--green);color:#fff;padding:65px 0}.band h2{color:#fff}.band .wrap,.band article{display:flex;gap:45px}.band article{padding-left:45px;border-left:1px solid #ffffff66}.band article p{margin:5px 0}.two,.grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.concept-img{height:520px;margin:0;border-radius:100px 12px;background:url("https://images.unsplash.com/photo-1559234938-b60fff04894d?auto=format&fit=crop&w=1000&q=85") center/cover}.two h3{font-size:38px;line-height:1.5;color:var(--dark)}.center{text-align:center;font-size:27px;margin:75px 0 30px}.card,.price{background:#f2f8f5;border-radius:25px;padding:38px;align-self:stretch}.card h3,.price h3{color:var(--dark)}.card h4{color:var(--green);margin-bottom:0}.card li{margin:7px 0}.price{background:var(--cream)}.price dl div{display:flex;justify-content:space-between;border-bottom:1px solid #d7d0c3;padding:12px}.price dd{margin:0;font-weight:bold}.price .total{color:var(--orange);font-size:20px}.soft{background:#eff7f3}details{background:white;border-radius:18px;margin:16px 0;padding:0 28px}summary{padding:22px 0;font-size:20px;font-weight:bold;cursor:pointer}.job{display:grid;grid-template-columns:130px 1fr;margin:0;padding-bottom:25px}.job dt,.job dd{padding:12px;border-top:1px solid var(--line)}.job dd{margin:0}.access iframe{width:100%;height:450px;border:0;border-radius:25px}.access h3{font-size:23px;color:var(--dark)}.access a{text-decoration:underline}.contact{background:var(--cream);text-align:center}.phone{display:block;background:var(--green);color:#fff;border-radius:15px;padding:16px;margin:30px auto;font-size:30px;font-weight:bold}.phone small{display:block;font-size:12px}form{background:white;border-radius:25px;padding:38px;text-align:left}label{display:block;margin:18px 0;font-weight:bold}label b{font-size:10px;background:var(--orange);color:#fff;padding:3px 6px}input,textarea{display:block;width:100%;padding:13px;border:1px solid var(--line);border-radius:8px;margin-top:7px;font:inherit}.agree{font-weight:normal}.agree input{display:inline;width:auto}form button{display:block;margin:28px auto 0;border:0;border-radius:50px;background:var(--orange);color:#fff;padding:15px 55px;font-weight:bold}.message{text-align:center;color:var(--green);font-weight:bold}footer{background:#6f9589;color:#fff;padding:60px 0}footer .logo span{color:#fff}footer a{text-decoration:underline}@media(max-width:800px){header{height:70px}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:white;padding:25px;grid-template-columns:1fr 1fr}nav.open{display:grid}.hero{display:block;min-height:0}.hero>div{padding:65px 7vw}.hero figure{height:390px;border-radius:0 70px 0 0}section{padding:75px 0}.band .wrap,.band article{display:block}.band article{border-left:0;border-top:1px solid #ffffff66;padding:22px 0 0}.two,.grid{grid-template-columns:1fr}.concept-img{height:350px;order:2}.job{grid-template-columns:1fr}.job dd{border-top:0;padding-top:0}.wrap{width:calc(100% - 32px)}}@media(max-width:500px){.hero h1{font-size:41px}.card,.price,form{padding:24px}h2{font-size:27px}.phone{font-size:23px}.access iframe{height:330px}}
/* onjukai-inspired layout */
@import url('https://fonts.googleapis.com/css2?family=Bellefair&family=Shippori+Mincho:wght@400;500;600&display=swap');
body{background:#fffdfd;font-family:'Shippori Mincho','Yu Mincho',YuMincho,serif;color:#4f675f;letter-spacing:.035em}
header{height:104px;padding:0 4.35vw;background:#fffdfdf5;border-bottom:0}
.logo span{font-family:'Shippori Mincho',serif;font-weight:600}
nav{gap:34px}nav a{font-family:'Shippori Mincho',serif;font-size:14px;color:#567c70;position:relative}nav a:after{content:'';position:absolute;left:50%;right:50%;bottom:-8px;height:1px;background:#dfa4b5;transition:.25s}nav a:hover:after{left:0;right:0}
.hero{width:91.3%;height:720px;min-height:0;display:block;position:relative;background:transparent;overflow:hidden;border-bottom-right-radius:80px}
.hero>div{position:absolute;z-index:2;left:7.4vw;top:50%;transform:translateY(-50%);padding:55px 65px;background:rgba(255,250,251,.88);border-radius:2px 50px 2px 50px;box-shadow:0 18px 55px rgba(74,108,97,.12)}
.hero h1{font-family:'Shippori Mincho',serif;font-weight:500;font-size:clamp(48px,5.2vw,76px);margin:18px 0;color:#567c70}
.hero figure{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background-image:linear-gradient(90deg,rgba(246,224,230,.2),rgba(169,203,189,.08)),url('https://images.unsplash.com/photo-1576091160550-2173dba999ef?auto=format&fit=crop&w=1800&q=88')}
section{padding:140px 0}
h2,h3{font-family:'Shippori Mincho',serif}h2{text-align:center;margin-bottom:55px;font-weight:500;font-size:36px;letter-spacing:.06em}h2 i{font-family:'Bellefair',serif;font-size:20px;letter-spacing:.14em;margin-bottom:12px;color:#dfa4b5}.center{font-weight:500;margin:95px 0 40px}
.band{width:91.3%;margin-left:auto;padding:145px 0 105px 8vw;border-bottom-left-radius:80px;background:#a9cbbd}.band .wrap{width:min(1000px,calc(100% - 10vw));margin:0}.band .wrap>h2{min-width:210px;text-align:left}.band h2 i{color:#fff}.band article{width:min(700px,100%);padding:32px 0;border-left:0;border-top:1px solid #fff;border-bottom:1px solid #fff;align-items:flex-start}.band article time{font-family:'Bellefair',serif;letter-spacing:.1em}
#concept{width:91.3%;margin-right:auto;padding:145px 8vw 105px 0;background:#f2f8f5;border-bottom-right-radius:80px}#concept .wrap{width:100%;max-width:1200px;margin:0;display:grid;grid-template-columns:minmax(420px,650px) minmax(340px,450px);gap:8vw}#concept h2{text-align:left}#concept .concept-img{width:100%;height:580px;border-radius:0 80px 0 0}#concept .two h3{font-size:38px;font-weight:500}
#about>.wrap>h2{text-align:center}.grid{gap:34px}.card,.price{border-radius:22px;background:#fff;padding:42px;border:1px solid #e6eee9;box-shadow:0 16px 44px rgba(83,119,107,.08);transition:transform .25s,box-shadow .25s}.card:hover,.price:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(83,119,107,.13)}.card:nth-child(odd),.price:nth-child(even){background:#fff5f7}.card:nth-child(even),.price:nth-child(odd){background:#f2f8f5}.card h3,.price h3{text-align:center;font-weight:500;font-size:23px;margin:0 0 28px}.card h4{font-weight:600}.price dl div{border-color:#dce8e2}
.soft{width:91.3%;margin-left:auto;background:#fff3f6;border-bottom-left-radius:80px;padding:140px 8vw 100px}.soft>.wrap{width:100%}.soft details{max-width:960px;margin:18px auto;background:#fffdfd;border-radius:0;border-top:1px solid #dfa4b5;border-bottom:1px solid #dfa4b5;padding:0 35px}.soft summary{font-weight:500}.soft summary::marker{color:#dfa4b5}
#access h2{text-align:center}.access{gap:80px}.access iframe{height:500px;border-radius:0 70px 0 70px}.access>div{padding:40px 0}.access h3{font-weight:500;font-size:26px}.access h3:first-letter{color:#dfa4b5}
.contact{width:91.3%;margin-right:auto;background:#a9cbbd;color:#fff;border-bottom-right-radius:80px;padding:135px 0 100px}.contact h2{color:#fff}.contact h2 i{color:#fff}.contact form{color:#567c70;border-radius:22px;box-shadow:0 18px 50px rgba(66,99,88,.16)}.phone{background:#fff;color:#6f9589;border:1px solid rgba(255,255,255,.8);max-width:520px}.contact input,.contact textarea{background:#fffdfd}
footer{margin-top:100px;padding:85px 0;background:#6f9589}footer .wrap{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}footer small{grid-column:1/-1;text-align:right;opacity:.75}
@media(max-width:800px){header{height:74px}.menu{display:block;color:#567c70}nav{top:74px;gap:18px}.hero{width:92%;height:520px;border-bottom-right-radius:50px}.hero>div{left:7vw;right:7vw;top:auto;bottom:35px;transform:none;padding:28px;border-radius:0 30px 0 30px}.hero h1{font-size:40px;margin:10px 0}.hero .en{font-size:10px}.hero figure{height:100%}section{padding:82px 0}h2{text-align:left;font-size:29px;margin-bottom:30px}.band{width:92%;padding:78px 30px 52px;border-bottom-left-radius:50px}.band .wrap{width:100%}.band .wrap,.band article{display:block}.band article{padding:25px 0}.band article time{display:block;margin-bottom:8px}#concept{width:92%;padding:78px 30px 52px 0;border-bottom-right-radius:50px}#concept .wrap{display:flex;width:100%;gap:0;flex-direction:column}#concept .concept-img{order:0;width:calc(100% + 30px);height:330px;border-radius:0 50px 0 0;margin-bottom:35px}#concept .two>div{padding-left:30px}#concept .two h3{font-size:28px}.center{text-align:left;margin:60px 0 25px}.grid{grid-template-columns:1fr}.card,.price{padding:28px}.soft{width:92%;padding:78px 30px 52px;border-bottom-left-radius:50px}.soft details{padding:0 20px}.access{grid-template-columns:1fr;gap:20px}.access iframe{height:350px;border-radius:0 45px 0 45px}.contact{width:92%;padding:78px 0 52px;border-bottom-right-radius:50px}.contact h2{text-align:center}footer{margin-top:70px;padding:60px 0}footer .wrap{grid-template-columns:1fr}footer small{grid-column:1;text-align:left}}
@media(max-width:500px){.hero{height:470px}.hero>div{left:20px;right:20px}.hero h1{font-size:34px}.hero>div>p:last-child{font-size:13px}.card,.price,form{padding:24px}.contact .wrap{width:calc(100% - 40px)}}/* pink-base overrides */
:root{--green:#aecdbf;--dark:#725b64;--cream:#fff1f5;--orange:#d894aa;--line:#ecdce2}
body{background:#fffafb;color:#725b64}
header{background:#fffafbf5;border-bottom:1px solid #f4e5ea}.logo span,nav a,.hero h1{color:#725b64}nav a:after{background:#aecdbf}
.hero>div{background:rgba(255,245,248,.91);box-shadow:0 18px 55px rgba(151,100,119,.12)}
h2{color:#725b64}h2 i{color:#aecdbf}
.band{background:#e5afbf}.band h2 i{color:#fff}
#concept{background:#fff1f5}.concept-img{box-shadow:18px 18px 0 #e8f3ee}
.card,.price{border-color:#f0dfe5;box-shadow:0 16px 44px rgba(156,105,123,.08)}.card:hover,.price:hover{box-shadow:0 22px 50px rgba(156,105,123,.13)}.card:nth-child(odd),.price:nth-child(even){background:#fff0f4}.card:nth-child(even),.price:nth-child(odd){background:#fff8fa}.card h3,.price h3{color:#725b64}.card h4{color:#8eaa9e}.price dl div{border-color:#ead8df}.price .total{color:#cf829a}
.soft{background:#f8dfe7}.soft details{border-color:#dba1b3}.soft summary::marker{color:#8eaa9e}
.access h3{color:#725b64}.access h3:first-letter{color:#d894aa}
.contact{background:#e5afbf}.phone{color:#b36f85}.contact form{color:#725b64;box-shadow:0 18px 50px rgba(146,91,112,.15)}
form button{background:#d894aa}.message{color:#7e9d90}
footer{background:#c98da1}.heart{color:#d894aa}
@media(max-width:800px){.menu{color:#b36f85}}/* green-balance overrides */
h2 i{color:#7fae9a}nav a{color:#628c7c}.logo span{color:#628c7c}
.hero>div{border-left:8px solid #aecdbf}.hero .en{color:#719b8b}
#concept{background:linear-gradient(115deg,#edf7f2 0%,#edf7f2 42%,#fff1f5 42%,#fff1f5 100%)}
.card:nth-child(even),.price:nth-child(odd){background:#edf7f2;border-color:#cfe3da}.card:nth-child(even) h3,.price:nth-child(odd) h3{color:#628c7c}
.card h4{color:#699887}.price .total{color:#6d9e8c}
.soft details:nth-of-type(even){background:#f1f8f5;border-color:#9fc6b6}.soft details:nth-of-type(even) summary{color:#628c7c}
.access>div{border-left:5px solid #aecdbf;padding-left:38px}.access a{color:#628c7c}
.contact form{border-top:8px solid #aecdbf}.contact input:focus,.contact textarea:focus{outline:2px solid #aecdbf;border-color:#7fae9a}
form button{background:#7fae9a}.message{color:#628c7c}
footer{background:linear-gradient(90deg,#c98da1 0%,#c98da1 62%,#7fae9a 62%,#7fae9a 100%)}
@media(max-width:800px){#concept{background:#fff1f5}.access>div{border-left:4px solid #aecdbf;padding-left:22px}footer{background:#c98da1}}/* vivid-palette overrides */
:root{--green:#65b995;--dark:#644c58;--cream:#fff0f5;--orange:#e7608c;--line:#e9cbd5}
body{color:#644c58}header{border-bottom-color:#f0cbd7}.logo{color:#e7608c}.logo span{color:#378b6a}nav a{color:#378b6a}nav a:after{height:2px;background:#e7608c}
.hero>div{border-left-color:#59b78f;background:rgba(255,243,247,.94)}.hero h1{color:#644c58}.hero .en{color:#29936a}.hero figure{background-image:linear-gradient(90deg,rgba(239,80,132,.12),rgba(71,180,137,.10)),url('https://images.unsplash.com/photo-1576091160550-2173dba999ef?auto=format&fit=crop&w=1800&q=88')}
h2{color:#644c58}h2 i{color:#2f9a71}.band{background:#e86f98}.band article{border-color:rgba(255,255,255,.9)}
#concept{background:linear-gradient(115deg,#dcf3e9 0%,#dcf3e9 42%,#ffe5ed 42%,#ffe5ed 100%)}.concept-img{box-shadow:18px 18px 0 #8fd1b4}
.card,.price{border-color:#edb8c9}.card:nth-child(odd),.price:nth-child(even){background:#ffe4ed}.card:nth-child(even),.price:nth-child(odd){background:#dff4eb;border-color:#95cfb7}.card:nth-child(even) h3,.price:nth-child(odd) h3{color:#27845f}.card h4{color:#2f926d}.price .total{color:#258662;font-weight:700}
.soft{background:#f7cddd}.soft details{border-color:#e7608c}.soft details:nth-of-type(even){background:#e5f6ef;border-color:#55aa85}.soft details:nth-of-type(even) summary{color:#277e5e}
.access>div{border-left-color:#52b288}.access a{color:#22805d;font-weight:600}
.contact{background:#e86f98}.contact form{border-top-color:#54b189}.phone{color:#d94e7c;border-width:2px}.contact input:focus,.contact textarea:focus{outline-color:#54b189;border-color:#2f9a71}form button{background:#35a77a;box-shadow:0 8px 20px rgba(28,133,94,.24)}form button:hover{background:#258b65}.message{color:#267e5e}
footer{background:linear-gradient(90deg,#d95380 0%,#d95380 62%,#399b74 62%,#399b74 100%)}
@media(max-width:800px){.menu{color:#d94e7c}#concept{background:#ffe5ed}footer{background:#d95380}}/* photo-gallery */
.life-gallery{padding:135px 0;background:#fffafb}.life-gallery h2{margin-bottom:18px}.gallery-lead{text-align:center;margin:0 0 50px;color:#378b6a}.photo-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:270px 270px;gap:22px}.photo-grid figure{position:relative;margin:0;overflow:hidden;border-radius:22px;background:#e9f3ef}.photo-grid .photo-large{grid-row:1/3}.photo-grid .photo-wide{grid-column:2/4}.photo-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.photo-grid figure:hover img{transform:scale(1.035)}.photo-grid figcaption{position:absolute;left:0;bottom:0;padding:35px 24px 18px;width:100%;color:#fff;font-weight:600;background:linear-gradient(transparent,rgba(67,49,58,.72));text-shadow:0 1px 5px rgba(0,0,0,.25)}.photo-grid figure:nth-child(2){border:6px solid #f8cbd9}.photo-grid figure:nth-child(3){border:6px solid #a4d8c1}.photo-grid .photo-wide{border-bottom-right-radius:70px}
@media(max-width:800px){.life-gallery{padding:80px 0}.life-gallery h2,.gallery-lead{text-align:left}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:320px 220px 250px;gap:12px}.photo-grid .photo-large{grid-column:1/3;grid-row:auto}.photo-grid .photo-wide{grid-column:1/3}.photo-grid figure{border-radius:16px}.photo-grid .photo-wide{border-bottom-right-radius:45px}.photo-grid figcaption{font-size:13px;padding:28px 15px 12px}}/* hero-photo replacement */
.hero figure{background-image:linear-gradient(90deg,rgba(239,80,132,.10),rgba(71,180,137,.08)),url('assets/photos/hero-staff-extended-right.png');background-position:center center}
@media(max-width:800px){.hero figure{background-position:58% center}}/* refined-heart-logo */
.logo{gap:13px;text-decoration:none}.logo>.logo-mark{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;width:52px;height:52px;border-radius:50% 50% 46% 54%;background:linear-gradient(145deg,#fff6f9,#ffe1eb);box-shadow:0 7px 20px rgba(209,79,124,.16),inset 0 0 0 1px rgba(231,96,140,.14);transform:rotate(-4deg)}.logo .logo-heart{position:relative;z-index:2;display:block;color:#e7608c;font-family:Arial,sans-serif;font-size:31px;line-height:1;transform:rotate(4deg) translate(-1px,1px);text-shadow:0 2px 4px rgba(190,56,102,.12)}.logo .logo-leaf{position:absolute;z-index:3;width:15px;height:9px;right:5px;top:6px;background:#4eb488;border-radius:100% 0 100% 0;transform:rotate(-17deg);box-shadow:0 2px 4px rgba(33,130,91,.16)}.logo .logo-leaf:after{content:'';position:absolute;width:8px;height:1px;background:#2b9168;left:2px;top:5px;transform:rotate(-22deg);transform-origin:left}.logo>.logo-type{color:#378b6a;font-size:17px;line-height:1.25;letter-spacing:.08em}.logo>.logo-type small{display:block;margin-top:3px;color:#a04d69;font-size:10px;letter-spacing:.18em}footer .logo>.logo-mark{background:rgba(255,255,255,.94);box-shadow:none}footer .logo>.logo-type{color:#fff}footer .logo>.logo-type small{color:#fff}@media(max-width:800px){.logo>.logo-mark{width:44px;height:44px}.logo .logo-heart{font-size:27px}.logo>.logo-type{font-size:14px}}/* caring-hands-logo */
.logo>.logo-mark{width:60px;height:56px;border-radius:22px 28px 24px 30px;background:linear-gradient(145deg,#fff9fb 10%,#ffe2ec 100%);box-shadow:0 8px 22px rgba(209,79,124,.18),inset 0 0 0 1px rgba(231,96,140,.16);transform:none;overflow:visible}.logo .logo-heart{font-size:30px;transform:translateY(-3px);filter:drop-shadow(0 3px 2px rgba(193,62,106,.13))}.logo .logo-heart:after{content:'';position:absolute;width:8px;height:5px;border-radius:50%;background:rgba(255,255,255,.65);left:9px;top:7px;transform:rotate(-25deg)}.logo .logo-leaf{display:none}.logo .logo-hand{position:absolute;z-index:4;bottom:10px;width:25px;height:17px;border:3px solid #3da67b;border-top:0;background:linear-gradient(180deg,rgba(255,255,255,.92),#dff5eb);box-shadow:0 2px 4px rgba(42,132,97,.12)}.logo .logo-hand-left{left:5px;border-radius:4px 5px 14px 13px;transform:rotate(20deg)}.logo .logo-hand-right{right:5px;border-radius:5px 4px 13px 14px;transform:rotate(-20deg)}.logo .logo-hand:before{content:'';position:absolute;top:-5px;width:16px;height:8px;border-top:3px solid #3da67b;border-radius:50%}.logo .logo-hand-left:before{left:5px;transform:rotate(18deg)}.logo .logo-hand-right:before{right:5px;transform:rotate(-18deg)}.logo .logo-hand:after{content:'';position:absolute;bottom:-8px;width:11px;height:10px;background:#58b991;border-radius:3px}.logo .logo-hand-left:after{left:-2px;transform:rotate(-8deg)}.logo .logo-hand-right:after{right:-2px;transform:rotate(8deg)}.logo>.logo-type{font-weight:600}.logo>.logo-type:after{content:'CARE & COMFORT';display:block;margin-top:2px;color:#d6537f;font:500 8px/1.1 Arial,sans-serif;letter-spacing:.21em}footer .logo>.logo-mark{background:#fff8fb}footer .logo>.logo-type:after{color:#fff}@media(max-width:800px){.logo>.logo-mark{width:52px;height:49px}.logo .logo-heart{font-size:26px}.logo .logo-hand{bottom:8px;width:22px;height:15px}.logo .logo-hand-left{left:4px}.logo .logo-hand-right{right:4px}.logo>.logo-type:after{font-size:7px}}/* final-transparent-logo */
header{height:118px}.final-logo{display:flex;align-items:center;height:100%;padding:8px 0}.final-logo img{display:block;width:auto;height:100%;max-height:102px;object-fit:contain}.final-logo:after{display:none}.footer-logo{height:auto;justify-content:flex-start}.footer-logo img{height:auto;width:170px;max-height:none;filter:drop-shadow(0 4px 10px rgba(72,40,52,.12))}
@media(max-width:800px){header{height:78px}nav{top:78px}.final-logo{padding:5px 0}.final-logo img{max-height:68px}.footer-logo img{width:145px}}/* gray-footer */
footer{background:#ededeb;color:#5f5f5c}footer a{color:#555553}footer small{color:#858582}.footer-logo img{filter:drop-shadow(0 4px 10px rgba(65,65,62,.10))}
@media(max-width:800px){footer{background:#ededeb}}/* horizontal-header-logo */
header .final-logo img{width:auto;height:82px;max-height:82px}header .final-logo{min-width:280px}@media(max-width:800px){header .final-logo{min-width:0}header .final-logo img{height:58px;max-height:58px}}/* pamphlet-spread */
.pamphlet-section{padding:130px 0;background:#fffafb}.pamphlet-section h2{margin-bottom:16px}.pamphlet-lead{text-align:center;margin:0 0 45px;color:#725b64}.pamphlet-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;max-width:1100px;margin:0 auto}.pamphlet-pages a{display:block;background:#fff;padding:10px;border-radius:12px;box-shadow:0 12px 35px rgba(82,67,73,.12);transition:transform .25s,box-shadow .25s}.pamphlet-pages a:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(82,67,73,.18)}.pamphlet-pages img{display:block;width:100%;height:auto;border-radius:5px}.pamphlet-download{display:block;width:max-content;margin:38px auto 0;padding:14px 32px;border-radius:999px;background:#35a77a;color:#fff;font-weight:600;box-shadow:0 8px 20px rgba(28,133,94,.2)}.pamphlet-download:hover{background:#258b65}@media(max-width:800px){.pamphlet-section{padding:80px 0}.pamphlet-section h2,.pamphlet-lead{text-align:left}.pamphlet-pages{grid-template-columns:1fr;gap:18px}.pamphlet-download{width:100%;text-align:center}}/* section-photo-backgrounds */
body{overflow-x:hidden}#news,#about,#recruit,#access,.pamphlet-section,.contact{position:relative;isolation:isolate;overflow:hidden}#news>.wrap,#about>.wrap,#recruit>.wrap,#access>.wrap,.pamphlet-section>.wrap,.contact>.wrap{position:relative;z-index:2}
#news:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(232,111,152,.96) 0%,rgba(232,111,152,.88) 58%,rgba(232,111,152,.62) 100%),url("assets/photos/dining.jpg") center right/cover no-repeat;opacity:.9}
#about{background:linear-gradient(180deg,#fffafb 0%,#fff7f9 100%)}#about:before{content:"";position:absolute;z-index:-1;top:110px;right:-6vw;width:min(48vw,720px);height:640px;background:linear-gradient(270deg,rgba(255,250,251,.18),rgba(255,250,251,.98)),url("assets/photos/room.webp") center/cover no-repeat;border-radius:100px 0 0 100px;opacity:.24;filter:saturate(.85)}#about:after{content:"";position:absolute;z-index:-1;left:-120px;bottom:5%;width:330px;height:330px;background:none;opacity:.045;transform:rotate(-10deg)}
#recruit:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(247,205,221,.96) 0%,rgba(247,205,221,.88) 54%,rgba(247,205,221,.62) 100%),url("assets/photos/hero-staff.jpg") 82% center/cover no-repeat}#recruit:after{content:"";position:absolute;z-index:-1;right:3%;top:50%;width:260px;height:260px;border:2px solid rgba(53,167,122,.18);border-radius:50%;transform:translateY(-50%)}
#access{background:#fffdfd}#access:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(255,253,253,.98) 0%,rgba(255,253,253,.9) 52%,rgba(255,253,253,.55) 100%),url("assets/photos/hero-lounge.jpg") center right/cover no-repeat;opacity:.58}#access:after{content:"";position:absolute;z-index:-1;right:-70px;bottom:-90px;width:270px;height:270px;border:40px solid rgba(101,185,149,.09);border-radius:50%}
.pamphlet-section{background:linear-gradient(135deg,#fffafb 0%,#fff4f7 52%,#edf8f3 100%)}.pamphlet-section:before{content:"";position:absolute;z-index:-1;left:-80px;top:70px;width:300px;height:350px;background:none;opacity:.055;transform:rotate(-8deg)}.pamphlet-section:after{content:"";position:absolute;z-index:-1;right:-100px;bottom:40px;width:360px;height:420px;background:none;opacity:.045;transform:rotate(11deg)}
.contact:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(232,111,152,.95) 0%,rgba(232,111,152,.88) 60%,rgba(232,111,152,.64) 100%),url("assets/photos/living.jpg") center right/cover no-repeat;opacity:.9}.contact form{background:rgba(255,255,255,.96);backdrop-filter:blur(3px)}
@media(max-width:800px){#news:before{background:linear-gradient(rgba(232,111,152,.92),rgba(232,111,152,.92)),url("assets/photos/dining.jpg") center/cover no-repeat}#about:before{top:160px;right:-120px;width:390px;height:560px;opacity:.16}#about:after{width:210px;height:210px;left:-90px;opacity:.035}#recruit:before{background:linear-gradient(rgba(247,205,221,.92),rgba(247,205,221,.92)),url("assets/photos/hero-staff.jpg") 70% center/cover no-repeat}#recruit:after{display:none}#access:before{background:linear-gradient(rgba(255,253,253,.9),rgba(255,253,253,.9)),url("assets/photos/hero-lounge.jpg") center/cover no-repeat;opacity:.75}.pamphlet-section:before{width:190px;height:220px;left:-90px;opacity:.04}.pamphlet-section:after{width:210px;height:250px;right:-100px;opacity:.035}.contact:before{background:linear-gradient(rgba(232,111,152,.9),rgba(232,111,152,.9)),url("assets/photos/living.jpg") center/cover no-repeat}}/* heart-star-decorations */
#about:after{content:"♥";display:grid;place-items:center;left:-25px;bottom:7%;width:240px;height:240px;background:none;color:rgba(231,96,140,.095);font:700 210px/1 Arial,sans-serif;opacity:1;transform:rotate(-12deg);text-shadow:170px -90px 0 rgba(53,167,122,.055);animation:decor-float 8s ease-in-out infinite}
.pamphlet-section:before{content:"✦";display:block;left:2%;top:90px;width:auto;height:auto;background:none;color:rgba(53,167,122,.13);font:700 105px/1 Georgia,serif;opacity:1;transform:rotate(-8deg);text-shadow:120px 75px 0 rgba(231,96,140,.10),45px 225px 0 rgba(255,199,0,.10);animation:star-twinkle 5.5s ease-in-out infinite}
.pamphlet-section:after{content:"♥";display:block;right:2%;bottom:55px;width:auto;height:auto;background:none;color:rgba(231,96,140,.10);font:700 150px/1 Arial,sans-serif;opacity:1;transform:rotate(10deg);text-shadow:-115px -95px 0 rgba(53,167,122,.075);animation:decor-float-reverse 7s ease-in-out infinite}
#recruit:after{content:"✦";display:grid;place-items:center;border:0;width:230px;height:230px;color:rgba(53,167,122,.14);font:700 125px/1 Georgia,serif;text-shadow:95px -75px 0 rgba(255,255,255,.24),-55px 95px 0 rgba(231,96,140,.10);animation:star-twinkle 6.5s ease-in-out infinite}
#access:after{content:"♥";display:grid;place-items:center;border:0;color:rgba(53,167,122,.075);font:700 220px/1 Arial,sans-serif;animation:decor-pulse 6s ease-in-out infinite}
@keyframes decor-float{0%,100%{transform:translate3d(0,0,0) rotate(-12deg)}50%{transform:translate3d(0,-18px,0) rotate(-7deg)}}
@keyframes decor-float-reverse{0%,100%{transform:translate3d(0,0,0) rotate(10deg)}50%{transform:translate3d(-12px,15px,0) rotate(5deg)}}
@keyframes star-twinkle{0%,100%{opacity:.72;transform:scale(.96) rotate(-8deg)}50%{opacity:1;transform:scale(1.06) rotate(2deg)}}
@keyframes decor-pulse{0%,100%{transform:scale(.96);opacity:.68}50%{transform:scale(1.05);opacity:1}}
@keyframes reveal-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes photo-breathe{from{transform:scale(1)}to{transform:scale(1.035)}}
.hero figure{animation:photo-breathe 14s ease-in-out infinite alternate}.photo-grid figure:nth-child(odd) img{animation:photo-breathe 11s ease-in-out infinite alternate}.photo-grid figure:nth-child(even) img{animation:photo-breathe 13s ease-in-out 1s infinite alternate}
@supports (animation-timeline:view()){.card,.price,#recruit details,.photo-grid figure,.pamphlet-pages a,.access>div{animation:reveal-up both ease-out;animation-timeline:view();animation-range:entry 5% cover 28%}.card:nth-child(2),.price:nth-child(2),.photo-grid figure:nth-child(even),.pamphlet-pages a:nth-child(2){animation-range:entry 12% cover 34%}}
@media(max-width:800px){#about:after{left:-55px;width:170px;height:170px;font-size:145px;text-shadow:110px -70px 0 rgba(53,167,122,.05)}.pamphlet-section:before{left:-20px;top:65px;font-size:70px;text-shadow:80px 55px 0 rgba(231,96,140,.08),25px 155px 0 rgba(255,199,0,.08)}.pamphlet-section:after{right:-18px;bottom:35px;font-size:105px;text-shadow:-70px -65px 0 rgba(53,167,122,.06)}#access:after{font-size:150px}}
@media(prefers-reduced-motion:reduce){#about:after,.pamphlet-section:before,.pamphlet-section:after,#recruit:after,#access:after,.hero figure,.photo-grid figure img,.card,.price,#recruit details,.pamphlet-pages a,.access>div{animation:none!important;transform:none!important;transition:none!important}}/* balloon-hearts-and-section-reveal */
#about:after,.pamphlet-section:after,#access:after{box-sizing:content-box;text-align:center;place-items:start center;background-repeat:no-repeat;background-position:center bottom}
#about:after{height:235px;padding-bottom:95px;background-image:linear-gradient(102deg,transparent 49.2%,rgba(179,103,132,.22) 49.7%,rgba(179,103,132,.22) 50.3%,transparent 50.8%);background-size:78px 105px}
.pamphlet-section:after{padding-bottom:82px;background-image:linear-gradient(76deg,transparent 49.2%,rgba(179,103,132,.20) 49.7%,rgba(179,103,132,.20) 50.3%,transparent 50.8%);background-size:64px 90px}
#access:after{height:255px;padding-bottom:105px;background-image:linear-gradient(100deg,transparent 49.2%,rgba(53,167,122,.18) 49.7%,rgba(53,167,122,.18) 50.3%,transparent 50.8%);background-size:80px 115px}
.js main>section.section-reveal{opacity:0;transform:translate3d(0,46px,0);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.js main>section.section-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}.js main>section.section-reveal:nth-of-type(even){transition-delay:.08s}.js main>section.hero.section-reveal{transform:translate3d(0,18px,0)}.js main>section.hero.section-reveal.is-visible{transform:translate3d(0,0,0)}
@media(max-width:800px){#about:after{height:165px;padding-bottom:65px;background-size:52px 72px}.pamphlet-section:after{padding-bottom:58px;background-size:45px 65px}#access:after{height:175px;padding-bottom:72px;background-size:55px 80px}.js main>section.section-reveal{transform:translate3d(0,30px,0);transition-duration:.75s}}
@media(prefers-reduced-motion:reduce){.js main>section.section-reveal,.js main>section.section-reveal.is-visible{opacity:1!important;transform:none!important;transition:none!important}}
/* item-level-reveal */
.js .reveal-item{opacity:0;translate:0 28px;filter:blur(3px);transition:opacity .8s cubic-bezier(.22,1,.36,1),translate .8s cubic-bezier(.22,1,.36,1),filter .8s ease;transition-delay:var(--reveal-delay,0ms);will-change:opacity,translate,filter}
.js .reveal-item[data-reveal="left"]{translate:-36px 0}
.js .reveal-item[data-reveal="right"]{translate:36px 0}
.js .reveal-item.is-visible{opacity:1;translate:0 0;filter:blur(0)}
@media(max-width:800px){.js .reveal-item{translate:0 22px;transition-duration:.7s}.js .reveal-item[data-reveal="left"]{translate:-24px 0}.js .reveal-item[data-reveal="right"]{translate:24px 0}}
@media(prefers-reduced-motion:reduce){.js .reveal-item,.js .reveal-item.is-visible{opacity:1!important;translate:none!important;filter:none!important;transition:none!important}}
/* heart-page-top-button */
.page-top-button{position:fixed;right:clamp(16px,3vw,42px);bottom:clamp(18px,3.5vw,42px);z-index:90;display:grid;justify-items:center;gap:1px;width:66px;color:#df4f80;text-decoration:none;opacity:0;visibility:hidden;pointer-events:none;translate:0 14px;transition:opacity .3s ease,visibility .3s ease,translate .3s ease}
.page-top-button.is-visible{opacity:1;visibility:visible;pointer-events:auto;translate:0 0}
.page-top-heart{position:relative;display:block;width:66px;height:58px;color:#e7608c;font:400 72px/.78 "Yu Gothic",Meiryo,sans-serif;text-align:center;filter:drop-shadow(0 7px 8px rgba(192,54,100,.17));transition:translate .35s cubic-bezier(.22,1,.36,1),filter .35s ease}
.page-top-heart>span{position:absolute;left:50%;top:44%;color:#d94f7e;font:700 25px/1 Arial,sans-serif;translate:-50% -50%;text-shadow:0 1px 0 rgba(255,255,255,.9);transition:translate .35s cubic-bezier(.22,1,.36,1)}
.page-top-label{color:#a64a69;font:700 10px/1.1 Arial,sans-serif;letter-spacing:.18em;text-indent:.18em}
.page-top-button:hover .page-top-heart,.page-top-button:focus-visible .page-top-heart{translate:0 -8px;filter:drop-shadow(0 12px 14px rgba(192,54,100,.28))}
.page-top-button:hover .page-top-heart>span,.page-top-button:focus-visible .page-top-heart>span{translate:-50% -62%}
.page-top-button:focus-visible{outline:2px solid rgba(231,96,140,.45);outline-offset:5px;border-radius:12px}
@media(max-width:800px){.page-top-button{right:12px;bottom:14px;width:56px}.page-top-heart{width:56px;height:50px;font-size:62px}.page-top-heart>span{font-size:24px}.page-top-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){.page-top-button,.page-top-heart,.page-top-heart>span{transition:none!important}}
/* section-heart-layout */
.page-top-heart>span{inset:0;display:grid;width:100%;height:100%;place-items:center;padding-top:5px;translate:0 0}
.page-top-button:hover .page-top-heart>span,.page-top-button:focus-visible .page-top-heart>span{translate:0 -3px}
main>section:not(.hero) h2::after{content:"♡";display:inline-block;margin-left:.32em;color:#e7608c;font:400 .72em/1 "Yu Gothic",Meiryo,sans-serif;vertical-align:.08em;filter:drop-shadow(0 3px 4px rgba(192,54,100,.10));animation:heading-heart-pulse 4.6s ease-in-out infinite}
main>section:nth-of-type(even) h2::after{color:#35a77a}
.band h2::after,.contact h2::after{color:#fff;filter:drop-shadow(0 3px 4px rgba(104,40,65,.12))}
@keyframes heading-heart-pulse{0%,100%{scale:1;rotate:-3deg}50%{scale:1.1;rotate:3deg}}
@media(max-width:800px){main>section:not(.hero) h2::after{margin-left:.24em;font-size:.68em}.page-top-heart>span{padding-top:4px}}
@media(prefers-reduced-motion:reduce){main>section:not(.hero) h2::after{animation:none!important}}
/* heart-shaped-visual-cards */
main>section:not(.hero) h2::after{content:none!important;display:none!important;animation:none!important}
#concept .concept-img,.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(3){-webkit-clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%)}
#concept .concept-img{border-radius:0;box-shadow:none;filter:drop-shadow(16px 18px 0 rgba(53,167,122,.34));background-position:center}
.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(3){border:0;border-radius:0;filter:drop-shadow(0 14px 18px rgba(97,62,75,.16))}
.photo-grid figure:nth-child(2) figcaption,.photo-grid figure:nth-child(3) figcaption{padding:34px 38px 30px;text-align:center;background:linear-gradient(transparent,rgba(67,49,58,.74))}
@media(max-width:800px){#concept .concept-img{width:min(100%,390px);height:360px;margin:0 auto 35px;filter:drop-shadow(10px 12px 0 rgba(53,167,122,.3))}.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(3){min-height:210px}.photo-grid figure:nth-child(2) figcaption,.photo-grid figure:nth-child(3) figcaption{padding:28px 18px 22px;font-size:12px}}
/* hero-heart-collage */
.hero .hero-heart-collage{position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:0;background:linear-gradient(125deg,#fff4f7 0%,#ffe5ed 45%,#dff4eb 100%)!important;overflow:hidden;animation:none!important}
.hero-heart-collage::before,.hero-heart-collage::after{content:"";position:absolute;border-radius:50%;filter:blur(2px)}
.hero-heart-collage::before{right:7%;top:7%;width:390px;height:390px;background:rgba(255,255,255,.5)}
.hero-heart-collage::after{right:35%;bottom:-70px;width:280px;height:280px;background:rgba(255,255,255,.34)}
.hero-heart{position:absolute;z-index:1;display:block;background-repeat:no-repeat;background-size:cover;-webkit-clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);filter:drop-shadow(0 18px 22px rgba(102,62,78,.18));animation:hero-heart-float 7s ease-in-out infinite}
.hero-heart-main{right:2%;top:2%;width:min(49vw,650px);height:min(49vw,650px);background-image:url('assets/photos/hero-staff-extended-right.png');background-position:72% center}
.hero-heart-dining{right:43%;top:4%;width:min(19vw,250px);height:min(19vw,250px);background-image:url('assets/photos/dining.jpg');background-position:center}
.hero-heart-living{right:40%;bottom:2%;width:min(17vw,220px);height:min(17vw,220px);background-image:url('assets/photos/living.jpg');background-position:center;animation-delay:-2.2s}
.hero-heart-room{right:2%;bottom:1%;width:min(16vw,205px);height:min(16vw,205px);background-image:url('assets/photos/room.webp');background-position:center;animation-delay:-4.1s}
@keyframes hero-heart-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
@media(max-width:800px){.hero .hero-heart-collage{height:100%;background:linear-gradient(145deg,#fff1f5,#dff4eb)!important}.hero-heart-main{right:-7%;top:-2%;width:88vw;height:88vw}.hero-heart-dining{left:-8%;right:auto;top:2%;width:38vw;height:38vw}.hero-heart-living{left:3%;right:auto;bottom:18%;width:31vw;height:31vw}.hero-heart-room{right:-2%;bottom:14%;width:29vw;height:29vw}.hero-heart-collage::before{right:-15%;top:-5%;width:72vw;height:72vw}}
@media(prefers-reduced-motion:reduce){.hero-heart{animation:none!important}}
/* hero-heart-collage-spread */
.hero-heart-main{z-index:2;right:1%;top:8%;width:min(55vw,720px);height:min(35vw,465px);background-size:cover;background-position:50% 50%;animation-duration:8.5s}
.hero-heart-dining{left:1.5%;right:auto;top:3%;width:min(16vw,205px);height:min(16vw,205px)}
.hero-heart-living{left:29%;right:auto;bottom:0;width:min(15vw,195px);height:min(15vw,195px)}
.hero-heart-room{right:1%;bottom:0;width:min(13vw,175px);height:min(13vw,175px)}
.hero-heart-lounge{position:absolute;z-index:1;left:2%;bottom:-2%;display:block;width:min(22vw,285px);height:min(22vw,285px);background:url('assets/photos/hero-lounge.jpg') center/cover no-repeat;-webkit-clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);filter:drop-shadow(0 15px 20px rgba(102,62,78,.15));animation:hero-heart-float 9s ease-in-out -3s infinite}
.hero-heart-care{left:22%;right:auto;top:-4%;width:min(12vw,155px);height:min(12vw,155px);background-image:url('assets/photos/hero-staff.jpg');background-position:center top;animation-delay:-5s}
.hero-heart-meal{left:43%;right:auto;top:2%;width:min(10vw,130px);height:min(10vw,130px);background-image:url('assets/photos/dining.jpg');background-position:center;animation-delay:-1.5s}
@media(max-width:800px){.hero-heart-main{right:-8%;top:4%;width:92vw;height:60vw;background-position:50% 50%}.hero-heart-dining{left:-6%;top:1%;width:34vw;height:34vw}.hero-heart-care{left:24%;top:-3%;width:24vw;height:24vw}.hero-heart-meal{left:48%;top:0;width:19vw;height:19vw}.hero-heart-lounge{left:-7%;bottom:12%;width:42vw;height:42vw}.hero-heart-living{left:28%;bottom:11%;width:30vw;height:30vw}.hero-heart-room{right:-3%;bottom:12%;width:28vw;height:28vw}}
@media(prefers-reduced-motion:reduce){.hero-heart-lounge{animation:none!important}}
/* hero-heart-size-up */
.hero-heart-main{right:-2%;top:5%;width:min(62vw,800px);height:min(40vw,520px)}
.hero-heart-dining{left:-1%;top:0;width:min(20vw,255px);height:min(20vw,255px)}
.hero-heart-living{left:27%;bottom:-3%;width:min(19vw,245px);height:min(19vw,245px)}
.hero-heart-room{right:-2%;bottom:-3%;width:min(17vw,220px);height:min(17vw,220px)}
.hero-heart-lounge{left:-2%;bottom:-5%;width:min(27vw,350px);height:min(27vw,350px)}
.hero-heart-care{left:19%;top:-6%;width:min(16vw,205px);height:min(16vw,205px)}
.hero-heart-meal{left:40%;top:-2%;width:min(13vw,170px);height:min(13vw,170px)}
@media(max-width:800px){.hero-heart-main{right:-13%;top:2%;width:105vw;height:68vw}.hero-heart-dining{left:-10%;top:-2%;width:43vw;height:43vw}.hero-heart-care{left:21%;top:-5%;width:30vw;height:30vw}.hero-heart-meal{left:48%;top:-2%;width:24vw;height:24vw}.hero-heart-lounge{left:-10%;bottom:8%;width:49vw;height:49vw}.hero-heart-living{left:26%;bottom:8%;width:36vw;height:36vw}.hero-heart-room{right:-7%;bottom:8%;width:34vw;height:34vw}}
/* hero-main-heart-portrait-crop */
.hero-heart-main{top:1%;width:min(62vw,800px);height:min(46vw,600px);background-position:78% 50%}
@media(max-width:800px){.hero-heart-main{right:-13%;top:-2%;width:105vw;height:82vw;background-position:78% 50%}}
/* hero-heart-tall-and-tilted */
.hero-heart-main{top:-4%;height:min(54vw,680px);rotate:2deg}
.hero-heart-dining{rotate:-8deg}
.hero-heart-living{rotate:7deg}
.hero-heart-room{rotate:-6deg}
.hero-heart-lounge{rotate:4deg}
.hero-heart-care{rotate:-10deg}
.hero-heart-meal{rotate:9deg}
@media(max-width:800px){.hero-heart-main{top:-7%;height:100vw;rotate:2deg}.hero-heart-dining{rotate:-7deg}.hero-heart-living{rotate:6deg}.hero-heart-room{rotate:-5deg}.hero-heart-lounge{rotate:4deg}.hero-heart-care{rotate:-8deg}.hero-heart-meal{rotate:8deg}}
/* hero-main-user-focus */
.hero-heart-main{background-position:100% 50%}
@media(max-width:800px){.hero-heart-main{background-position:100% 50%}}
/* hero-heart-balloon-strings */
.hero-heart-main{top:-8%}
.hero-heart-lounge{bottom:13%}
.hero-heart-living{bottom:15%}
.hero-heart-room{bottom:14%}
.hero-balloon-string{position:absolute;z-index:0;display:block;width:28px;height:155px;border-left:2px solid rgba(183,103,132,.46);border-radius:50% 0 0 50%;transform-origin:50% 0;pointer-events:none;animation:balloon-string-sway 5.8s ease-in-out infinite}
.hero-balloon-string::before{content:"";position:absolute;left:-5px;top:-3px;width:8px;height:8px;border-radius:50%;background:#e98aaa}
.hero-string-main{left:76%;top:79%;height:170px;rotate:-5deg}
.hero-string-dining{left:9%;top:32%;height:210px;rotate:7deg;border-color:rgba(53,167,122,.42)}
.hero-string-dining::before,.hero-string-living::before,.hero-string-care::before{background:#62bd98}
.hero-string-living{left:36%;top:77%;height:155px;rotate:-8deg;border-color:rgba(53,167,122,.42);animation-delay:-2s}
.hero-string-room{left:89%;top:79%;height:145px;rotate:6deg;animation-delay:-3.4s}
.hero-string-lounge{left:11%;top:72%;height:180px;rotate:-6deg;animation-delay:-1.2s}
.hero-string-care{left:27%;top:22%;height:205px;rotate:8deg;border-color:rgba(53,167,122,.42);animation-delay:-4s}
.hero-string-meal{left:47%;top:16%;height:175px;rotate:-7deg;animation-delay:-2.7s}
@keyframes balloon-string-sway{0%,100%{transform:skewX(0deg)}50%{transform:skewX(5deg)}}
@media(max-width:800px){.hero-heart-main{top:-10%}.hero-heart-lounge{bottom:18%}.hero-heart-living{bottom:19%}.hero-heart-room{bottom:18%}.hero-balloon-string{height:105px}.hero-string-main{left:75%;top:73%;height:125px}.hero-string-dining{left:10%;top:34%;height:120px}.hero-string-care{left:36%;top:23%;height:130px}.hero-string-meal{left:59%;top:18%;height:115px}.hero-string-lounge{left:13%;top:72%;height:110px}.hero-string-living{left:44%;top:75%;height:105px}.hero-string-room{left:86%;top:76%;height:100px}}
@media(prefers-reduced-motion:reduce){.hero-balloon-string{animation:none!important}}
/* attached-heart-strings */
.hero-balloon-string{display:none!important}
.hero-heart{--heart-position:center;--string-color:rgba(183,103,132,.48);--string-length:135px;background:none!important;-webkit-clip-path:none!important;clip-path:none!important;filter:none!important;overflow:visible;isolation:isolate}
.hero-heart::before{content:"";position:absolute;z-index:1;inset:0;background-image:var(--heart-image);background-position:var(--heart-position);background-size:cover;background-repeat:no-repeat;-webkit-clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);clip-path:polygon(50% 96%,42% 88%,31% 78%,18% 65%,8% 51%,3% 37%,4% 24%,10% 13%,20% 6%,31% 5%,41% 10%,50% 20%,59% 10%,69% 5%,80% 6%,90% 13%,96% 24%,97% 37%,92% 51%,82% 65%,69% 78%,58% 88%);filter:drop-shadow(0 16px 20px rgba(102,62,78,.17))}
.hero-heart::after{content:"";position:absolute;z-index:0;left:50%;top:93%;width:30px;height:var(--string-length);border-left:2px solid var(--string-color);border-radius:50% 0 0 50%;transform:translateX(-1px) skewX(4deg);transform-origin:50% 0;pointer-events:none}
.hero-heart-main{--heart-image:url('assets/photos/hero-staff-extended-right.png');--heart-position:100% 50%;--string-length:145px}
.hero-heart-dining{--heart-image:url('assets/photos/dining.jpg');--string-color:rgba(53,167,122,.46);--string-length:180px}
.hero-heart-living{--heart-image:url('assets/photos/living.jpg');--string-color:rgba(53,167,122,.46);--string-length:125px}
.hero-heart-room{--heart-image:url('assets/photos/room.webp');--string-length:115px}
.hero-heart-lounge{--heart-image:url('assets/photos/hero-lounge.jpg');--string-length:140px}
.hero-heart-care{--heart-image:url('assets/photos/hero-staff.jpg');--heart-position:center top;--string-color:rgba(53,167,122,.46);--string-length:170px}
.hero-heart-meal{--heart-image:url('assets/photos/dining.jpg');--string-length:150px}
@media(max-width:800px){.hero-heart{--string-length:90px}.hero-heart-main{--string-length:105px}.hero-heart-dining,.hero-heart-care{--string-length:110px}.hero-heart-lounge,.hero-heart-meal{--string-length:95px}.hero-heart-living,.hero-heart-room{--string-length:80px}}
/* connected-strings-and-staggered-entry */
.hero-heart::after{top:87%;height:calc(var(--string-length) + 9%)}
.hero-heart{--enter-delay:0s;animation:balloon-fade-up .88s cubic-bezier(.22,1,.36,1) var(--enter-delay) both,hero-heart-float 7s ease-in-out calc(var(--enter-delay) + .88s) infinite}
.hero-heart-main{--enter-delay:.08s}
.hero-heart-dining{--enter-delay:.22s}
.hero-heart-care{--enter-delay:.36s}
.hero-heart-meal{--enter-delay:.5s}
.hero-heart-lounge{--enter-delay:.64s}
.hero-heart-living{--enter-delay:.78s}
.hero-heart-room{--enter-delay:.92s}
@keyframes balloon-fade-up{0%{opacity:0;transform:translateY(58px) scale(.9)}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:800px){.hero-heart::after{top:86%;height:calc(var(--string-length) + 10%)}}
@media(prefers-reduced-motion:reduce){.hero-heart{opacity:1!important;transform:none!important;animation:none!important}}
/* section-hearts-no-strings-double */
#about::after,.pamphlet-section::after,#access::after{padding-bottom:0!important;background-image:none!important;background-size:0!important;background-position:center!important}
#about::after{text-shadow:170px -90px 0 rgba(53,167,122,.07),70px -185px 0 rgba(231,96,140,.065),245px 28px 0 rgba(53,167,122,.055)}
.pamphlet-section::after{text-shadow:-115px -95px 0 rgba(53,167,122,.085),-210px 15px 0 rgba(231,96,140,.065),65px -150px 0 rgba(53,167,122,.06)}
#access::after{text-shadow:-145px -95px 0 rgba(231,96,140,.065),125px -125px 0 rgba(53,167,122,.06),175px 35px 0 rgba(231,96,140,.055)}
@media(max-width:800px){#about::after{text-shadow:105px -60px 0 rgba(53,167,122,.07),45px -115px 0 rgba(231,96,140,.06),145px 20px 0 rgba(53,167,122,.05)}.pamphlet-section::after{text-shadow:-75px -60px 0 rgba(53,167,122,.08),-125px 10px 0 rgba(231,96,140,.06),45px -95px 0 rgba(53,167,122,.055)}#access::after{text-shadow:-90px -60px 0 rgba(231,96,140,.06),80px -80px 0 rgba(53,167,122,.055),110px 20px 0 rgba(231,96,140,.05)}}
/* deeper-balloon-entry */
.hero-heart{--entry-distance:180px;animation:balloon-fade-up 1.18s cubic-bezier(.16,1,.3,1) var(--enter-delay) both,hero-heart-float 7s ease-in-out calc(var(--enter-delay) + 1.18s) infinite}
@keyframes balloon-fade-up{0%{opacity:0;transform:translateY(var(--entry-distance)) scale(.86)}45%{opacity:.45}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:800px){.hero-heart{--entry-distance:140px}}
/* hero-copy-fade-in */
.js .hero>div{animation:hero-copy-fade-in .95s cubic-bezier(.22,1,.36,1) .58s both}
@keyframes hero-copy-fade-in{0%{opacity:0;transform:translateY(calc(-50% + 45px));filter:blur(4px)}100%{opacity:1;transform:translateY(-50%);filter:blur(0)}}
@media(max-width:800px){.js .hero>div{animation-name:hero-copy-fade-in-mobile}@keyframes hero-copy-fade-in-mobile{0%{opacity:0;transform:translateY(38px);filter:blur(4px)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}}
@media(prefers-reduced-motion:reduce){.js .hero>div{opacity:1!important;transform:translateY(-50%)!important;filter:none!important;animation:none!important}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.js .hero>div{transform:none!important}}
/* fluid-main-heart */
.hero-heart-main{right:clamp(-80px,-3vw,-18px);top:clamp(-72px,-5vw,-38px);width:clamp(500px,62vw,980px);height:clamp(560px,54vw,760px)}
@media(max-width:800px){.hero-heart-main{right:clamp(-100px,-13vw,-48px);top:clamp(-62px,-8vw,-30px);width:clamp(420px,112vw,620px);height:clamp(440px,100vw,600px)}}
/* main-heart-shift-right */
.hero-heart-main{right:clamp(-145px,-6vw,-55px)}
@media(max-width:800px){.hero-heart-main{right:clamp(-135px,-20vw,-72px)}}

/* generated-right-extension-placement */
.hero-heart-main{right:clamp(-72px,-2.4vw,-24px);--heart-position:100% 50%}
@media(max-width:800px){.hero-heart-main{right:clamp(-88px,-13vw,-48px);--heart-position:100% 50%}}

/* main-photo-crop-left */
.hero-heart-main{--heart-position:72% 50%}
@media(max-width:800px){.hero-heart-main{--heart-position:72% 50%}}
/* gallery-without-heart-crops */
.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(3){-webkit-clip-path:none;clip-path:none;border-radius:22px;filter:none}
.photo-grid figure:nth-child(2){border:6px solid #f8cbd9}
.photo-grid figure:nth-child(3){border:6px solid #a4d8c1}
.photo-grid figure:nth-child(2) figcaption,.photo-grid figure:nth-child(3) figcaption{padding:35px 24px 18px;text-align:left;background:linear-gradient(transparent,rgba(67,49,58,.72))}
@media(max-width:800px){.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(3){border-radius:16px}.photo-grid figure:nth-child(2) figcaption,.photo-grid figure:nth-child(3) figcaption{padding:28px 15px 12px;font-size:13px}}
/* gallery-all-colored-frames */
.photo-grid figure:nth-child(1){border:6px solid #a4d8c1}
.photo-grid figure:nth-child(4){border:6px solid #f8cbd9}

/* center-page-top-heart-arrow */
.page-top-button{justify-items:center}
.page-top-heart{text-align:center}
.page-top-heart>span{inset:auto;left:50%;top:44%;width:max-content;height:auto;padding:0;translate:-50% -50%;text-align:center}
.page-top-button:hover .page-top-heart>span,.page-top-button:focus-visible .page-top-heart>span{translate:-50% -62%}
@media(max-width:800px){.page-top-heart>span{left:50%;padding:0}}

/* page-top-arrow-optical-center */
.page-top-heart>span{left:53%}
@media(max-width:800px){.page-top-heart>span{left:53%}}

/* concept-image-fill-green-panel */
#concept .concept-img{width:clamp(600px,62vw,720px);height:clamp(640px,66vw,740px);max-width:none;justify-self:start;background-size:cover;background-position:center}
@media(max-width:800px){#concept .concept-img{width:calc(100% + 30px);height:clamp(390px,105vw,520px);max-width:none;margin:0 0 35px}}

/* concept-remove-heart-crop */
#concept .concept-img{-webkit-clip-path:none;clip-path:none;width:100%;height:clamp(600px,64vw,720px);border-radius:0 80px 0 0;filter:none;box-shadow:18px 18px 0 rgba(53,167,122,.34)}
@media(max-width:800px){#concept .concept-img{width:calc(100% + 30px);height:clamp(390px,105vw,520px);border-radius:0 50px 0 0;box-shadow:10px 12px 0 rgba(53,167,122,.3)}}

/* concept-trapezoid-crop */
#concept .concept-img{-webkit-clip-path:polygon(0 0,100% 0,72% 100%,0 100%);clip-path:polygon(0 0,100% 0,72% 100%,0 100%);border-radius:0;box-shadow:none;background-position:48% center}
@media(max-width:800px){#concept .concept-img{-webkit-clip-path:polygon(0 0,100% 0,86% 100%,0 100%);clip-path:polygon(0 0,100% 0,86% 100%,0 100%);border-radius:0;background-position:center}}

/* concept-organic-object-crop */
#concept .concept-img{-webkit-clip-path:polygon(7% 5%,28% 0,52% 4%,76% 1%,96% 13%,100% 35%,94% 58%,98% 80%,83% 96%,59% 100%,36% 95%,14% 100%,2% 82%,5% 61%,0 39%);clip-path:polygon(7% 5%,28% 0,52% 4%,76% 1%,96% 13%,100% 35%,94% 58%,98% 80%,83% 96%,59% 100%,36% 95%,14% 100%,2% 82%,5% 61%,0 39%);background-position:48% center}
@media(max-width:800px){#concept .concept-img{-webkit-clip-path:polygon(5% 5%,27% 0,51% 4%,76% 1%,97% 14%,100% 38%,94% 61%,98% 81%,82% 97%,56% 100%,32% 95%,10% 99%,1% 78%,5% 57%,0 34%);clip-path:polygon(5% 5%,27% 0,51% 4%,76% 1%,97% 14%,100% 38%,94% 61%,98% 81%,82% 97%,56% 100%,32% 95%,10% 99%,1% 78%,5% 57%,0 34%)}}

/* concept-image-fill-organic-shape */
#concept .concept-img{background-size:auto 115%;background-repeat:no-repeat;background-position:48% center}
@media(max-width:800px){#concept .concept-img{background-size:auto 112%;background-position:center}}

/* concept-full-screen-visual */
#concept{position:relative;overflow:hidden;min-height:860px}
#concept .wrap{min-height:610px}
#concept .concept-img{position:absolute;inset:0 auto 0 0;width:62%;height:100%;margin:0;background-size:cover;background-position:48% center}
#concept .wrap>div{grid-column:2;position:relative;z-index:1}
@media(max-width:800px){#concept{min-height:0}#concept .wrap{min-height:0}#concept .concept-img{position:relative;inset:auto;width:calc(100% + 30px);height:clamp(440px,118vw,600px);margin:0 0 35px;background-size:cover}#concept .wrap>div{grid-column:auto}}

/* concept-match-green-object-crop */
#concept .concept-img{-webkit-clip-path:polygon(0 0,100% 0,72% 100%,0 100%);clip-path:polygon(0 0,100% 0,72% 100%,0 100%);background-size:cover;background-position:48% center}
@media(max-width:800px){#concept .concept-img{-webkit-clip-path:polygon(0 0,100% 0,84% 100%,0 100%);clip-path:polygon(0 0,100% 0,84% 100%,0 100%);background-position:center}}

/* concept-copy-shift-right */
#concept .wrap>div{transform:translateX(clamp(28px,4vw,68px));width:calc(100% - clamp(28px,4vw,68px))}
@media(max-width:800px){#concept .wrap>div{transform:none;width:auto;padding-left:38px;padding-right:8px}}

/* concept-copy-fixed-pink-side */
#concept .wrap>div{position:absolute;z-index:2;right:clamp(45px,6vw,120px);top:50%;width:clamp(390px,25vw,480px);transform:translateY(-50%);margin:0}
@media(max-width:800px){#concept .wrap>div{position:relative;right:auto;top:auto;width:auto;transform:none;margin:0;padding-left:38px;padding-right:8px}}

/* hero-width-expand */
.hero{width:96%}
@media(max-width:800px){.hero{width:96%}}

/* hero-copy-frontmost */
.hero{isolation:isolate}
.hero>div{z-index:50!important}
.hero .hero-heart-collage{z-index:1!important}

/* about-background-photo-triple */
#about::before{transform:scale(3);transform-origin:right center}
@media(max-width:800px){#about::before{transform:scale(3);transform-origin:right center}}

/* about-background-photo-width-80 */
#about::before{width:80%;transform:none;right:-6vw}
@media(max-width:800px){#about::before{width:80%;transform:none;right:-10vw}}

/* about-background-photo-width-80vw */
#about::before{width:80vw;max-width:none}
@media(max-width:800px){#about::before{width:80vw;max-width:none}}

/* about-background-photo-width-90vw */
#about::before{width:90vw}
@media(max-width:800px){#about::before{width:90vw}}

/* provided-client-photos */
#concept .concept-img{background-image:url('assets/photos/provided/cherry-background-clean.png');background-position:center center}
.hero-heart-dining{--heart-image:url('assets/photos/provided/event-gathering.jpg');--heart-position:center 55%}
.hero-heart-living{--heart-image:url('assets/photos/provided/event-performance.jpg');--heart-position:center center}
.hero-heart-room{--heart-image:url('assets/photos/provided/meal-celebration.jpg');--heart-position:center center}
.hero-heart-lounge{--heart-image:url('assets/photos/provided/event-community.jpg');--heart-position:center center}
.hero-heart-care{--heart-image:url('assets/photos/provided/staff-group.jpg');--heart-position:center 42%}
.hero-heart-meal{--heart-image:url('assets/photos/provided/event-christmas.jpg');--heart-position:center 42%}
#recruit::before{background:linear-gradient(90deg,rgba(247,205,221,.96) 0%,rgba(247,205,221,.86) 48%,rgba(247,205,221,.58) 100%),url('assets/photos/provided/staff-group.jpg') 78% 44%/cover no-repeat}
.photo-grid .photo-wide img{object-position:center 42%}
@media(max-width:800px){#concept .concept-img{background-position:center center}#recruit::before{background:linear-gradient(rgba(247,205,221,.90),rgba(247,205,221,.90)),url('assets/photos/provided/staff-group.jpg') center 38%/cover no-repeat}}

/* provided-life-gallery-crops */
.photo-grid .photo-large img{object-position:center 45%}
.photo-grid figure:nth-child(2) img{object-position:center 48%}
.photo-grid figure:nth-child(3) img{object-position:center 38%}
.photo-grid .photo-wide img{object-position:center 38%}
@media(max-width:800px){.photo-grid .photo-large img{object-position:center 42%}.photo-grid .photo-wide img{object-position:center 38%}}

/* narahigashi-style-copy-animation */
.js .hero>div{opacity:1;animation:none!important}
.js .hero h1:not(.is-copy-ready){visibility:hidden}
.hero-copy-line{display:block;overflow:hidden;padding:.08em .12em .1em;margin:-.08em -.12em -.1em}
.hero-copy-char{display:inline-block;opacity:0;transform:translateY(115%) rotate(5deg);transform-origin:left bottom;filter:blur(5px);animation:hero-copy-char-rise .82s cubic-bezier(.16,1,.3,1) calc(.38s + var(--char-delay)) forwards}
.js .hero .en{opacity:0;animation:hero-copy-meta-in .75s ease .18s forwards}
.js .hero>div>p:last-child{opacity:0;animation:hero-copy-meta-in .8s ease 1.65s forwards}
@keyframes hero-copy-char-rise{0%{opacity:0;transform:translateY(115%) rotate(5deg);filter:blur(5px)}55%{opacity:1}100%{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}}
@keyframes hero-copy-meta-in{from{opacity:0;transform:translateY(16px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.js .hero h1:not(.is-copy-ready){visibility:visible}.hero-copy-char,.js .hero .en,.js .hero>div>p:last-child{opacity:1!important;transform:none!important;filter:none!important;animation:none!important}}

/* calm-continuous-balloon-motion */
.hero-heart{--balloon-sequence-delay:1.35s;--float-duration:11.8s;--float-x1:9px;--float-y1:-10px;--float-x2:-6px;--float-y2:-18px;--float-x3:-11px;--float-y3:-6px;animation:balloon-fade-up 1.18s cubic-bezier(.16,1,.3,1) calc(var(--balloon-sequence-delay) + var(--enter-delay)) both,hero-heart-gentle-drift var(--float-duration) ease-in-out calc(var(--balloon-sequence-delay) + var(--enter-delay) + .38s) infinite}
.hero-heart-main{--float-duration:13.4s;--float-x1:7px;--float-y1:-8px;--float-x2:-5px;--float-y2:-14px;--float-x3:-8px;--float-y3:-5px}
.hero-heart-dining{--float-duration:11.2s;--float-x1:-10px;--float-y1:-13px;--float-x2:7px;--float-y2:-20px;--float-x3:12px;--float-y3:-7px}
.hero-heart-living{--float-duration:12.5s;--float-x1:10px;--float-y1:-12px;--float-x2:-7px;--float-y2:-19px;--float-x3:-12px;--float-y3:-6px}
.hero-heart-room{--float-duration:11.8s;--float-x1:-9px;--float-y1:-11px;--float-x2:6px;--float-y2:-17px;--float-x3:11px;--float-y3:-5px}
.hero-heart-lounge{--float-duration:13s;--float-x1:12px;--float-y1:-14px;--float-x2:-8px;--float-y2:-22px;--float-x3:-13px;--float-y3:-8px}
.hero-heart-care{--float-duration:13.8s;--float-x1:-8px;--float-y1:-10px;--float-x2:5px;--float-y2:-16px;--float-x3:10px;--float-y3:-4px}
.hero-heart-meal{--float-duration:11.5s;--float-x1:11px;--float-y1:-13px;--float-x2:-7px;--float-y2:-20px;--float-x3:-12px;--float-y3:-6px}
@keyframes hero-heart-gentle-drift{0%,100%{translate:0 0;scale:1}25%{translate:var(--float-x1) var(--float-y1);scale:1.006}52%{translate:var(--float-x2) var(--float-y2);scale:.997}78%{translate:var(--float-x3) var(--float-y3);scale:1.004}}
@media(max-width:800px){.hero-heart{--float-x1:6px;--float-y1:-8px;--float-x2:-4px;--float-y2:-13px;--float-x3:-7px;--float-y3:-4px}}
@media(prefers-reduced-motion:reduce){.hero-heart{translate:0 0!important;scale:1!important;animation:none!important}}

/* centered-logo-loader */
body.is-loading{overflow:hidden}
.site-loader{position:fixed;inset:0;z-index:10000;display:grid;place-content:center;justify-items:center;gap:18px;background:#fff7fa;opacity:1;visibility:visible;transition:opacity .9s cubic-bezier(.4,0,.2,1),visibility 0s linear .9s}
.site-loader::before,.site-loader::after{content:"";position:absolute;border-radius:50%;filter:blur(2px);opacity:.35}
.site-loader::before{width:38vw;height:38vw;min-width:320px;min-height:320px;left:-12vw;bottom:-20vw;background:#dff3e8}
.site-loader::after{width:30vw;height:30vw;min-width:260px;min-height:260px;right:-9vw;top:-16vw;background:#f8d4e2}
.site-loader-logo{position:relative;z-index:1;width:clamp(210px,22vw,340px);height:auto;opacity:0;transform:translateY(12px);animation:loader-logo-in .8s cubic-bezier(.16,1,.3,1) .1s forwards}
.site-loader-text{position:relative;z-index:1;color:#37956f;font-size:11px;letter-spacing:.34em;padding-left:.34em;opacity:0;animation:loader-text-in .7s ease .45s forwards}
.site-loader.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.site-loader.is-leaving .site-loader-logo{transform:translateY(-6px) scale(.985);opacity:0;transition:opacity .62s ease,transform .8s ease}
@keyframes loader-logo-in{to{opacity:1;transform:translateY(0)}}
@keyframes loader-text-in{to{opacity:.72}}
@media(max-width:800px){.site-loader-logo{width:min(64vw,270px)}}
@media(prefers-reduced-motion:reduce){.site-loader,.site-loader-logo,.site-loader-text{animation:none!important;transition-duration:.15s!important}.site-loader-logo{opacity:1;transform:none}.site-loader-text{opacity:.72}}

/* hero-starts-after-loader */
body.is-loading .hero-heart,body.is-loading .hero-balloon-string,body.is-loading .hero-copy-char,body.is-loading .hero .en,body.is-loading .hero>div>p:last-child{animation-play-state:paused!important}


/* news-solid-background */
#news::before{display:none!important;background:none!important}
#news{background:#e86f98}

/* requested-fee-recruit-access-updates */
.soft details:nth-of-type(even){background:#fffdfd;border-color:#e7608c}
.soft details:nth-of-type(even) summary{color:inherit}
#access::before{background:linear-gradient(90deg,rgba(255,253,253,.98) 0%,rgba(255,253,253,.91) 52%,rgba(255,253,253,.62) 100%),url("assets/photos/provided/cherry-background-clean.png") center/cover no-repeat;opacity:.72}
@media(max-width:800px){#access::before{background:linear-gradient(rgba(255,253,253,.9),rgba(255,253,253,.9)),url("assets/photos/provided/cherry-background-clean.png") center/cover no-repeat;opacity:.78}}
/* narahigashi-inspired-life-slider */
.life-gallery{overflow:hidden;padding-bottom:135px}
.life-gallery>.wrap{width:100%;max-width:none}
.life-gallery h2,.life-gallery .gallery-lead{width:min(1100px,calc(100% - 48px));margin-left:auto;margin-right:auto}
.life-gallery h2{text-align:center}
.life-gallery .gallery-lead{text-align:center;margin-bottom:52px}
.life-slider{position:relative}
.life-slider-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:12px max(7vw,calc((100vw - 1120px)/2));overscroll-behavior-inline:contain}
.life-slider-viewport::-webkit-scrollbar{display:none}
.life-slider-track{display:flex;gap:clamp(22px,3vw,46px);width:max-content}
.life-slide{position:relative;flex:0 0 clamp(570px,68vw,980px);height:clamp(390px,47vw,650px);margin:0;overflow:hidden;scroll-snap-align:center;border-radius:80px 16px 80px 16px;background:#e8f4ef;box-shadow:0 18px 45px rgba(80,61,70,.12);transform:scale(.94);opacity:.62;transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .55s ease}
.life-slide.is-current{transform:scale(1);opacity:1}
.life-slide::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(57,42,49,.72))}
.life-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.life-slide.is-current img{transform:scale(1.025)}
.life-slide figcaption{position:absolute;z-index:2;left:clamp(28px,4vw,58px);right:30px;bottom:clamp(25px,3.5vw,48px);color:#fff;font-family:"Shippori Mincho",serif;font-size:clamp(22px,2.4vw,34px);letter-spacing:.08em;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.life-slide figcaption small{display:block;margin-bottom:7px;color:#fff;font-family:Georgia,serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.life-slider-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:32px}
.life-slider-controls button{display:grid;place-items:center;width:58px;height:58px;border:1px solid #e7608c;border-radius:50%;background:#fff;color:#e7608c;font-size:23px;cursor:pointer;transition:.25s ease}
.life-slider-controls button:hover,.life-slider-controls button:focus-visible{background:#e7608c;color:#fff;transform:translateY(-2px)}
.life-slider-count{display:flex;align-items:baseline;gap:8px;min-width:74px;margin:0;color:#977b87;font-family:Georgia,serif;letter-spacing:.08em}
.life-slider-count b{color:#e7608c;font-size:25px;font-weight:400}
.life-slider-count span{font-size:13px}
@media(max-width:800px){.life-gallery{padding-bottom:90px}.life-gallery h2,.life-gallery .gallery-lead{width:calc(100% - 32px)}.life-gallery h2{text-align:left}.life-gallery .gallery-lead{text-align:left;margin-bottom:30px}.life-slider-viewport{padding-inline:8vw}.life-slider-track{gap:18px}.life-slide{flex-basis:82vw;height:108vw;max-height:560px;border-radius:45px 10px 45px 10px}.life-slide figcaption{left:24px;bottom:24px;font-size:21px}.life-slider-controls{margin-top:24px}.life-slider-controls button{width:50px;height:50px}}
@media(prefers-reduced-motion:reduce){.life-slider-viewport{scroll-behavior:auto}.life-slide,.life-slide img{transition:none!important;transform:none!important}}
/* continuous-life-photo-marquee */
.life-marquee{position:relative;width:100%;overflow:hidden;padding:18px 0 28px;mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.life-marquee-track{--marquee-gap:clamp(20px,2.2vw,36px);display:flex;align-items:center;gap:var(--marquee-gap);width:max-content;animation:life-marquee-flow 52s linear infinite;will-change:transform}

.life-marquee-slide{position:relative;flex:0 0 clamp(320px,32vw,500px);height:clamp(330px,32vw,500px);margin:0;overflow:hidden;border:5px solid #a9ddc7;border-radius:58px 14px 58px 14px;background:#edf7f2;box-shadow:0 15px 34px rgba(91,65,76,.13)}
.life-marquee-slide:nth-child(even){height:clamp(280px,27vw,420px);border-color:#f2b5ca;border-radius:14px 58px 14px 58px}
.life-marquee-slide::after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(48,34,40,.7))}
.life-marquee-slide img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.life-marquee-slide:hover img{transform:scale(1.04)}
.life-marquee-slide figcaption{position:absolute;z-index:1;left:24px;right:20px;bottom:22px;color:#fff;font-family:"Shippori Mincho",serif;font-size:clamp(16px,1.5vw,22px);font-weight:600;letter-spacing:.06em;text-shadow:0 2px 10px rgba(0,0,0,.35)}
@keyframes life-marquee-flow{from{transform:translateX(0)}to{transform:translateX(calc(-50% - (var(--marquee-gap)/2)))}}
@media(max-width:800px){.life-marquee{mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.life-marquee-track{--marquee-gap:16px;animation-duration:40s}.life-marquee-slide{flex-basis:74vw;height:86vw;max-height:490px;border-width:4px;border-radius:40px 10px 40px 10px}.life-marquee-slide:nth-child(even){height:72vw;max-height:410px;border-radius:10px 40px 10px 40px}.life-marquee-slide figcaption{left:20px;bottom:18px;font-size:17px}}
@media(prefers-reduced-motion:reduce){.life-marquee{overflow-x:auto;mask-image:none;-webkit-mask-image:none}.life-marquee-track{animation:none}.life-marquee-track [aria-hidden="true"]{display:none}}
/* two-row-opposite-marquees */
.life-marquee-stack{display:grid;gap:10px}
.life-marquee-stack .life-marquee{padding:10px 0 18px}
.life-marquee-stack .life-marquee-track{animation-duration:38s}
.life-marquee-reverse .life-marquee-track{animation-direction:reverse}
.life-marquee-stack .life-marquee-slide{flex-basis:clamp(300px,28vw,430px);height:clamp(260px,25vw,380px)}
.life-marquee-stack .life-marquee-slide:nth-child(even){height:clamp(240px,22vw,340px)}
.life-marquee-reverse{transform:translateX(-3vw)}
@media(max-width:800px){.life-marquee-stack{gap:4px}.life-marquee-stack .life-marquee-track{animation-duration:30s}.life-marquee-stack .life-marquee-slide{flex-basis:68vw;height:70vw;max-height:420px}.life-marquee-stack .life-marquee-slide:nth-child(even){height:62vw;max-height:370px}.life-marquee-reverse{transform:translateX(-7vw)}}

/* recruit-people-shift-up */
#recruit::before{background-position:78% 62%}
@media(max-width:800px){#recruit::before{background-position:center 56%}}

/* recruit-accordion-animation */
#recruit details{will-change:height}
#recruit details.is-animating{overflow:hidden}
#recruit summary{position:relative;list-style:none;padding-left:25px}
#recruit summary::-webkit-details-marker{display:none}
#recruit summary::before{content:"";position:absolute;left:0;top:50%;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid #8eaa9e;transform:translateY(-50%) rotate(0);transform-origin:35% 50%;transition:transform .38s cubic-bezier(.16,1,.3,1)}
#recruit details[open] summary::before{transform:translateY(-50%) rotate(90deg)}
@media(prefers-reduced-motion:reduce){#recruit summary::before{transition:none}}
/* footer-section-links-right */
footer .wrap{align-items:center}
.footer-info{display:flex;flex-direction:column;align-items:flex-end;text-align:right}
.footer-links{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px 24px;max-width:680px;margin-bottom:34px;text-align:right}
.footer-links a{position:relative;color:#555553;font-size:13px;font-weight:600;letter-spacing:.04em;text-decoration:none}
.footer-links a::after{content:"";position:absolute;right:0;bottom:-3px;width:0;height:1px;background:#e7608c;transition:width .3s ease}
.footer-links a:hover::after,.footer-links a:focus-visible::after{width:100%}
.footer-info p{margin:0 0 32px;text-align:right}
.footer-info small{display:block;text-align:right;opacity:.75}
@media(max-width:800px){footer .wrap{grid-template-columns:1fr;gap:38px}.footer-info{align-items:flex-end;text-align:right}.footer-links{justify-content:flex-end;max-width:100%;gap:9px 18px;margin-bottom:28px}.footer-info p,.footer-info small,footer small{text-align:right}}

/* rounded-concept-image-edge */
#concept .concept-img{-webkit-clip-path:none;clip-path:none;border-radius:0 110px 110px 0;overflow:hidden}
@media(max-width:800px){#concept .concept-img{-webkit-clip-path:none;clip-path:none;border-radius:0 55px 55px 0}}


/* concept-image-shift-down */
#concept .concept-img{top:32px;bottom:0;height:auto}
@media(max-width:800px){#concept .concept-img{top:auto;bottom:auto;height:clamp(440px,118vw,600px);margin-top:18px}}


/* concept-image-overhang-spacing */
#concept{overflow:visible;margin-bottom:120px}
#concept .concept-img{top:64px;bottom:auto;height:100%}
@media(max-width:800px){#concept{overflow:visible;margin-bottom:80px}#concept .concept-img{top:auto;bottom:auto;height:clamp(440px,118vw,600px);margin-top:30px;margin-bottom:50px}}

/* about-star-and-heart-reposition */
#about>.wrap::before{content:"✦";position:absolute;z-index:0;left:clamp(-210px,-13vw,-120px);top:190px;width:190px;height:240px;color:rgba(255,199,0,.18);font:700 112px/1 Georgia,serif;text-align:center;text-shadow:95px 68px 0 rgba(53,167,122,.13),24px 185px 0 rgba(231,96,140,.12);pointer-events:none;animation:star-twinkle 6.2s ease-in-out infinite}
#about::after{left:auto;right:-25px;bottom:7%;text-shadow:-170px -90px 0 rgba(53,167,122,.055)}
@media(max-width:800px){#about>.wrap::before{left:-58px;top:135px;width:100px;height:150px;font-size:68px;text-shadow:62px 45px 0 rgba(53,167,122,.11),16px 118px 0 rgba(231,96,140,.10)}#about::after{left:auto;right:-55px;text-shadow:-110px -70px 0 rgba(53,167,122,.05)}}
@media(prefers-reduced-motion:reduce){#about>.wrap::before{animation:none!important}}
/* decorative-parallax-motion */
#about::after{animation:decor-float-parallax 8s ease-in-out infinite}
#about>.wrap::before,.pamphlet-section::before,#recruit::after{animation:star-twinkle-parallax 6.2s ease-in-out infinite}
.pamphlet-section::after{animation:decor-float-reverse-parallax 7s ease-in-out infinite}
#access::after{animation:decor-pulse-parallax 6s ease-in-out infinite}
@keyframes decor-float-parallax{0%,100%{transform:translate3d(0,var(--decor-parallax-y,0px),0) rotate(-12deg)}50%{transform:translate3d(0,calc(var(--decor-parallax-y,0px) - 18px),0) rotate(-7deg)}}
@keyframes decor-float-reverse-parallax{0%,100%{transform:translate3d(0,var(--decor-parallax-y,0px),0) rotate(10deg)}50%{transform:translate3d(-12px,calc(var(--decor-parallax-y,0px) + 15px),0) rotate(5deg)}}
@keyframes star-twinkle-parallax{0%,100%{opacity:.72;transform:translate3d(0,var(--decor-parallax-y,0px),0) scale(.96) rotate(-8deg)}50%{opacity:1;transform:translate3d(0,var(--decor-parallax-y,0px),0) scale(1.06) rotate(2deg)}}
@keyframes decor-pulse-parallax{0%,100%{transform:translate3d(0,var(--decor-parallax-y,0px),0) scale(.96);opacity:.68}50%{transform:translate3d(0,var(--decor-parallax-y,0px),0) scale(1.05);opacity:1}}
@media(prefers-reduced-motion:reduce){#about,#recruit,#access,.pamphlet-section{--decor-parallax-y:0px!important}}
/* prominent-header-contact */
header nav>a:last-child{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin:-10px 0;padding:0 24px;border-radius:999px;background:#e7608c;color:#fff;box-shadow:0 8px 20px rgba(199,66,111,.22);transition:transform .3s cubic-bezier(.16,1,.3,1),background .25s ease,box-shadow .3s ease}
header nav>a:last-child::before{content:"✉";font-size:15px;line-height:1}
header nav>a:last-child:hover,header nav>a:last-child:focus-visible{background:#d94f7e;transform:translateY(-3px);box-shadow:0 12px 26px rgba(199,66,111,.32)}
@media(max-width:800px){header nav>a:last-child{grid-column:1/-1;min-height:46px;margin:4px 0 0;padding:0 20px}}
@media(prefers-reduced-motion:reduce){header nav>a:last-child{transition:none}}
/* responsive-overlap-and-spacing-fixes */
@media(max-width:1100px){
  header{height:88px;padding-inline:4vw}
  header .final-logo img{max-height:76px}
  header .menu{display:block;color:#e7608c;line-height:1;cursor:pointer}
  header nav{display:none;position:absolute;z-index:20;top:88px;left:0;right:0;padding:28px 5vw;background:rgba(255,250,251,.98);box-shadow:0 14px 26px rgba(91,65,76,.12);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
  header nav.open{display:grid}
  header nav a{display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center}
  header nav>a:last-child{grid-column:1/-1;min-height:48px;margin:4px 0 0}
  .hero-heart-care,.hero-heart-meal{display:none}
  .hero-string-care,.hero-string-meal{display:none}
  #concept{width:100%;min-height:0;margin-bottom:90px;padding:70px 0;background:#fff1f5;overflow:visible}
  #concept .wrap{display:flex;flex-direction:column;width:100%;min-height:0;gap:0}
  #concept .concept-img{position:relative;inset:auto;order:0;width:92%;height:clamp(430px,72vw,650px);margin:0 0 48px;background-size:cover;background-position:center;border-radius:0 75px 75px 0}
  #concept .wrap>div{position:relative;inset:auto;right:auto;top:auto;width:auto;transform:none;margin:0;padding:0 7vw}
}
@media(max-width:800px){
  .hero-heart-living,.hero-heart-room{display:none}
  .hero-string-living,.hero-string-room{display:none}
  #concept{margin-bottom:70px;padding:55px 0 68px}
  #concept .concept-img{width:94%;height:clamp(400px,112vw,570px);margin:0 0 40px;border-radius:0 55px 55px 0}
  #concept .wrap>div{padding:0 6vw}
  .pamphlet-section>.wrap{width:calc(100% - 32px);max-width:none;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
  .pamphlet-pages{width:100%;margin-left:auto;margin-right:auto}
  #contact.contact{width:100%;max-width:none;border-radius:0}
}
@media(max-width:500px){
  .pamphlet-section>.wrap{width:calc(100% - 28px)}
  #contact .wrap{width:calc(100% - 32px)}
}
/* refined-mobile-layout-round-two */
@media(max-width:1250px){
  #concept{width:100%;min-height:0;margin-bottom:90px;padding:70px 0;background:#fff1f5;overflow:visible}
  #concept .wrap{display:flex;flex-direction:column;width:100%;min-height:0;gap:0}
  #concept .concept-img{position:relative;inset:auto;order:0;width:92%;height:clamp(430px,68vw,670px);margin:0 0 48px;background-size:cover;background-position:center;border-radius:0 75px 75px 0}
  #concept .wrap>div{position:relative;inset:auto;right:auto;top:auto;width:auto;transform:none;margin:0;padding:0 7vw}
}
@media(max-width:800px){
  .hero-heart:not(.hero-heart-main){display:none!important}
  .hero-balloon-string:not(.hero-string-main){display:none!important}
  .pamphlet-section h2,.pamphlet-section .pamphlet-lead{text-align:center}
  .pamphlet-section>.wrap,.pamphlet-pages{margin-left:auto;margin-right:auto}
  .pamphlet-download{margin-left:auto;margin-right:auto;text-align:center}
  footer .wrap{justify-items:center;text-align:center}
  footer .footer-logo{justify-content:center;width:100%}
  footer .footer-logo img{width:190px;max-width:70vw}
  footer .footer-info{align-items:center;text-align:center;width:100%}
  footer .footer-links{justify-content:center;text-align:center}
  footer .footer-info p,footer .footer-info small,footer small{text-align:center}
}
@media(max-width:500px){footer .footer-logo img{width:180px}}
/* mobile-about-guide-heading-center */
@media(max-width:800px){#about .center{width:100%;margin-left:auto;margin-right:auto;text-align:center}}

/* larger-mobile-footer-logo */
@media(max-width:800px){footer .footer-logo img{width:230px;max-width:82vw}}
@media(max-width:500px){footer .footer-logo img{width:220px}}

/* mobile-footer-logo-remove-height-limit */
@media(max-width:800px){footer .footer-logo img{width:300px;height:auto;max-height:none;max-width:88vw}}
@media(max-width:500px){footer .footer-logo img{width:280px;height:auto;max-height:none}}

/* center-mobile-pamphlet-pages */
@media(max-width:800px){.pamphlet-pages{display:grid;width:100%;justify-items:center}.pamphlet-pages a{width:min(620px,calc(100vw - 32px));max-width:100%;margin-left:auto;margin-right:auto;justify-self:center}.pamphlet-pages img{width:100%;margin-left:auto;margin-right:auto}}



/* center-mobile-pamphlet-links-without-cropping */
@media(max-width:800px){.pamphlet-pages{display:flex;flex-direction:column;align-items:center;width:100%}.pamphlet-pages a{display:block;width:calc(100% - 32px);max-width:620px;margin-left:auto!important;margin-right:auto!important;overflow:visible;align-self:center}.pamphlet-pages a img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;transform:none!important}}
/* mobile-pamphlet-link-display-contents */
@media(max-width:800px){.pamphlet-pages a{display:contents}.pamphlet-pages a img{width:100%;max-width:620px;height:auto;margin:0 auto;transform:none!important}}

/* center-mobile-google-map */
@media(max-width:800px){#access .access{width:100%;margin-left:auto;margin-right:auto}#access .access iframe{display:block;width:calc(100% - 32px);max-width:620px;margin-left:auto;margin-right:auto;justify-self:center}}

/* full-bleed-mobile-google-map */
@media(max-width:800px){#access .access iframe{display:block;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);justify-self:center}}

/* align-mobile-google-map-left-edge */
@media(max-width:800px){#access .access iframe{width:100vw;max-width:none;margin-left:-16px;margin-right:0;justify-self:start}}

/* animated-mobile-navigation */
@media(max-width:1100px){header .menu{width:44px;height:44px;padding:0;font-size:30px;transition:transform .35s cubic-bezier(.16,1,.3,1),color .25s ease}header .menu.is-open{transform:rotate(90deg);color:#d94f7e}header nav{display:grid;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-18px) scaleY(.96);transform-origin:top center;transition:opacity .32s ease,transform .42s cubic-bezier(.16,1,.3,1),visibility 0s linear .42s}header nav.open{display:grid;visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0) scaleY(1);transition-delay:0s}header nav a{opacity:0;transform:translateY(-8px);transition:opacity .25s ease,transform .35s cubic-bezier(.16,1,.3,1)}header nav.open a{opacity:1;transform:translateY(0)}header nav.open a:nth-child(2){transition-delay:.04s}header nav.open a:nth-child(3){transition-delay:.08s}header nav.open a:nth-child(4){transition-delay:.12s}header nav.open a:nth-child(5){transition-delay:.16s}header nav.open a:nth-child(6){transition-delay:.20s}}
@media(prefers-reduced-motion:reduce){header .menu,header nav,header nav a{transition:none!important;transform:none!important}}

/* life-gallery-lead-dark-text */
.life-gallery .gallery-lead{color:#4f4146}

/* contact-button-no-hover-underline */
header nav>a:last-child::after,header nav>a:last-child:hover::after,header nav>a:last-child:focus-visible::after{display:none;content:none}

/* compact-concept-gap-and-center-mobile-map */
@media(max-width:800px){#concept{margin-bottom:0}#about{padding-top:42px}#access .access iframe{position:relative;left:50%;display:block;width:100vw;max-width:none;margin-left:-50vw;margin-right:0;justify-self:start}}

/* rebalance-mobile-section-gap-and-map-width */
@media(max-width:800px){#concept{margin-bottom:18px}#about{padding-top:56px}#access .access iframe{position:relative;left:50%;display:block;width:calc(100vw - 24px);max-width:none;margin-left:calc(-50vw + 12px);margin-right:0;justify-self:start}}

/* fine-tune-mobile-concept-about-gap */
@media(max-width:800px){#concept{margin-bottom:10px}#about{padding-top:45px}}

/* separate-mobile-about-spacing-and-map-safe-area */
@media(max-width:800px){#concept{margin-bottom:15px}#about{padding-top:58px}#about .center{margin-top:28px}#access .access iframe{position:relative;left:50%;display:block;width:calc(100vw - 48px);max-width:none;margin-left:calc(-50vw + 24px);margin-right:0;justify-self:start}}

/* stacked-concept-text-before-image */
@media(max-width:1250px){#concept .wrap>div{order:1}#concept .concept-img{order:2;margin:48px 0 0}}
@media(max-width:800px){#concept .concept-img{margin:40px 0 0}}

/* center-page-top-label */
.page-top-label{display:block;width:100%;margin:0;text-align:center;text-indent:0}


/* align-page-top-link-and-lower-label */
.page-top-button{left:auto!important;right:clamp(16px,3vw,42px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:66px;min-width:0;margin:0;padding:0;text-align:center}
.page-top-label{margin-top:4px;line-height:1}
@media(max-width:800px){.page-top-button{left:auto!important;right:12px;width:56px}.page-top-label{margin-top:5px}}


/* page-top-label-optical-right */
.page-top-label{position:relative;left:3px}
@media(max-width:800px){.page-top-label{left:3px}}


/* mobile-marquee-chrome-safari-compatibility */
@-webkit-keyframes life-marquee-mobile-flow{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}}
@keyframes life-marquee-mobile-flow{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}}
@media(max-width:800px){.life-marquee{overflow:hidden;mask-image:none!important;-webkit-mask-image:none!important}.life-marquee-track{min-width:max-content;-webkit-animation:life-marquee-mobile-flow 30s linear infinite;animation:life-marquee-mobile-flow 30s linear infinite;will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.life-marquee-reverse .life-marquee-track{-webkit-animation-direction:reverse;animation-direction:reverse}.life-marquee-slide,.life-marquee-slide img{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.life-marquee{overflow-x:auto}.life-marquee-track{-webkit-animation:none!important;animation:none!important;-webkit-transform:none!important;transform:none!important}}


/* synchronize-mobile-marquee-rows */
@-webkit-keyframes life-marquee-mobile-reverse-flow{from{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
@keyframes life-marquee-mobile-reverse-flow{from{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
@media(max-width:800px){.life-marquee-forward .life-marquee-track{-webkit-animation-name:life-marquee-mobile-flow;animation-name:life-marquee-mobile-flow;-webkit-animation-direction:normal;animation-direction:normal}.life-marquee-reverse .life-marquee-track{-webkit-animation-name:life-marquee-mobile-reverse-flow;animation-name:life-marquee-mobile-reverse-flow;-webkit-animation-direction:normal;animation-direction:normal;-webkit-animation-delay:0s;animation-delay:0s}}


/* mobile-marquee-native-scroll-rendering */
@media(max-width:800px){.life-marquee{overflow:hidden!important;-webkit-overflow-scrolling:touch}.life-marquee-track{-webkit-animation:none!important;animation:none!important;-webkit-transform:none!important;transform:none!important;will-change:auto}.life-marquee-slide,.life-marquee-slide img{-webkit-transform:none!important;transform:none!important;-webkit-backface-visibility:visible;backface-visibility:visible}}


/* mobile-marquee-layout-visibility-guard */
@media(max-width:800px){.life-marquee-stack{display:flex;flex-direction:column;gap:4px}.life-marquee{display:block;width:100%;min-height:calc(62vw + 32px);transform:none!important}.life-marquee-track{display:flex!important;width:max-content!important;min-width:max-content!important;visibility:visible!important;opacity:1!important}.life-marquee-slide{display:block!important;visibility:visible!important;opacity:1!important}}


/* mobile-marquee-position-animation-final */
@-webkit-keyframes life-marquee-position-forward{from{left:0}to{left:calc(-50% - 8px)}}
@keyframes life-marquee-position-forward{from{left:0}to{left:calc(-50% - 8px)}}
@-webkit-keyframes life-marquee-position-reverse{from{left:calc(-50% - 8px)}to{left:0}}
@keyframes life-marquee-position-reverse{from{left:calc(-50% - 8px)}to{left:0}}
@media(max-width:800px){.life-marquee{display:block!important;overflow:visible!important;height:calc(70vw + 38px);min-height:300px;flex:none}.life-marquee-track{position:relative!important;top:0;display:flex!important;visibility:visible!important;opacity:1!important;-webkit-transform:none!important;transform:none!important;will-change:left}.life-marquee-forward .life-marquee-track{-webkit-animation:life-marquee-position-forward 26s linear infinite!important;animation:life-marquee-position-forward 26s linear infinite!important}.life-marquee-reverse .life-marquee-track{-webkit-animation:life-marquee-position-reverse 26s linear infinite!important;animation:life-marquee-position-reverse 26s linear infinite!important}.life-marquee-reverse .life-marquee-slide{visibility:visible!important;opacity:1!important}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.life-marquee-track{-webkit-animation:none!important;animation:none!important;left:0!important}.life-marquee-track [aria-hidden=true]{display:none}}


/* tablet-concept-edge-and-spacing */
@media(min-width:801px) and (max-width:1250px){#concept{margin-bottom:50px}#concept .concept-img{position:relative;left:calc(50% - 50vw);align-self:flex-start;width:96vw;margin-top:42px;margin-left:0!important;margin-right:0!important}#about{padding-top:65px}}

/* mobile-contact-floating-button */
@media(max-width:800px){.page-top-button{gap:3px}.page-top-heart{display:grid;width:52px;height:48px;place-items:center;border-radius:50%;background:#e7608c;color:#fff;font-size:0;filter:drop-shadow(0 7px 10px rgba(192,54,100,.22))}.page-top-heart::before{content:'✉';font:400 24px/1 Arial,sans-serif;color:#fff}.page-top-heart>span{display:none!important}.page-top-label{left:0;font-size:0;margin-top:3px}.page-top-label::after{content:'MAIL';font:700 9px/1 Arial,sans-serif;letter-spacing:.12em;color:#a64a69}}

/* recenter-mobile-google-map-final */
@media(max-width:800px){#access .access iframe{position:relative;left:50%;display:block;width:calc(100vw - 16px);max-width:none;margin-left:calc(-50vw + 8px);margin-right:0;justify-self:start}}


/* final-tablet-gap-mobile-contact-map-adjustments */
@media(min-width:801px) and (max-width:1250px){#concept{margin-bottom:30px}#about{padding-top:45px}}
@media(max-width:800px){.page-top-button{width:64px;align-items:center;justify-content:center}.page-top-heart{width:60px;height:60px;place-items:center}.page-top-heart::before{display:block;font-size:30px;line-height:1;transform:translateY(-1px)}.page-top-label{width:100%;text-align:center;margin-top:4px}#access .access iframe{position:relative;left:auto!important;display:block;width:calc(100vw - 32px);max-width:none;margin-left:0!important;margin-right:0!important;justify-self:start}}


/* tighter-tablet-about-heading-and-lower-mail-glyph */
@media(min-width:801px) and (max-width:1250px){#about>div.wrap>h2{margin-bottom:0}#about .center{margin-top:28px;margin-bottom:24px}}
@media(max-width:800px){.page-top-heart::before{transform:translateY(4px)}}


/* lower-mail-icon-and-shift-mobile-map-left */
@media(max-width:800px){.page-top-heart::before{transform:translateY(7px)}#access .access iframe{left:auto!important;width:calc(100vw - 16px);margin-left:-8px!important;margin-right:0!important}}


/* prevent-mobile-map-clipping-and-speed-up-marquee */
@media(max-width:800px){#access .access{width:100%;max-width:100%;overflow:hidden}#access .access iframe{position:relative;left:auto!important;width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;justify-self:stretch}.life-marquee-forward .life-marquee-track{-webkit-animation-duration:18s!important;animation-duration:18s!important}.life-marquee-reverse .life-marquee-track{-webkit-animation-duration:18s!important;animation-duration:18s!important}}


/* mobile-map-guaranteed-right-safe-space */
@media(max-width:800px){#access .access{overflow:visible!important}#access .access iframe{position:relative!important;left:auto!important;right:auto!important;display:block!important;width:calc(100% - 16px)!important;max-width:calc(100% - 16px)!important;margin-left:0!important;margin-right:16px!important;transform:none!important}}


/* triple-mobile-marquee-speed */
@media(max-width:800px){.life-marquee-forward .life-marquee-track,.life-marquee-reverse .life-marquee-track{-webkit-animation-duration:6s!important;animation-duration:6s!important}}


/* monthly-price-total-pink */
#about .price:nth-child(2) .total,#about .price:nth-child(2) .total dt,#about .price:nth-child(2) .total dd{color:#e7608c}


/* smooth-gpu-mobile-marquee-final */
@-webkit-keyframes life-marquee-smooth-forward{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}}
@keyframes life-marquee-smooth-forward{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}}
@-webkit-keyframes life-marquee-smooth-reverse{from{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
@keyframes life-marquee-smooth-reverse{from{-webkit-transform:translate3d(calc(-50% - 8px),0,0);transform:translate3d(calc(-50% - 8px),0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
@media(max-width:800px){.life-marquee{mask-image:none!important;-webkit-mask-image:none!important}.life-marquee-track{left:0!important;will-change:transform;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.life-marquee-forward .life-marquee-track{-webkit-animation:life-marquee-smooth-forward 6s linear infinite!important;animation:life-marquee-smooth-forward 6s linear infinite!important}.life-marquee-reverse .life-marquee-track{-webkit-animation:life-marquee-smooth-reverse 6s linear infinite!important;animation:life-marquee-smooth-reverse 6s linear infinite!important}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.life-marquee-track{-webkit-animation:none!important;animation:none!important;-webkit-transform:none!important;transform:none!important}}


/* monthly-fee-heading-and-total-pink-final */
#about .grid:nth-of-type(2) .price:last-child>h3,#about .grid:nth-of-type(2) .price:last-child .total,#about .grid:nth-of-type(2) .price:last-child .total dt,#about .grid:nth-of-type(2) .price:last-child .total dd{color:#e7608c!important}


/* rebalance-tablet-about-subheading-spacing */
@media(min-width:801px) and (max-width:1250px){#about .center{margin-top:48px;margin-bottom:38px}}


/* widen-tablet-about-top-space */
@media(min-width:801px) and (max-width:1250px){#about{padding-top:60px}}


/* widen-tablet-about-top-space-more */
@media(min-width:801px) and (max-width:1250px){#about{padding-top:78px}}


/* reliable-running-mobile-marquee-and-larger-left-map */
@-webkit-keyframes life-marquee-mobile-reliable-forward{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0)}}
@keyframes life-marquee-mobile-reliable-forward{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0)}}
@-webkit-keyframes life-marquee-mobile-reliable-reverse{from{-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
@keyframes life-marquee-mobile-reliable-reverse{from{-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
@media(max-width:800px){.life-marquee-forward .life-marquee-track{-webkit-animation:life-marquee-mobile-reliable-forward 6s linear infinite!important;animation:life-marquee-mobile-reliable-forward 6s linear infinite!important;-webkit-animation-play-state:running!important;animation-play-state:running!important}.life-marquee-reverse .life-marquee-track{-webkit-animation:life-marquee-mobile-reliable-reverse 6s linear infinite!important;animation:life-marquee-mobile-reliable-reverse 6s linear infinite!important;-webkit-animation-play-state:running!important;animation-play-state:running!important}#access .access{overflow:visible!important}#access .access iframe{position:relative!important;left:auto!important;width:calc(100vw - 16px)!important;max-width:none!important;margin-left:-16px!important;margin-right:0!important;transform:none!important}}


/* final-mobile-map-and-marquee-fix */
@media (max-width: 800px) {
  .life-marquee {
    overflow: hidden !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
  }

  .life-marquee-track,
  .life-marquee-forward .life-marquee-track,
  .life-marquee-reverse .life-marquee-track {
    position: relative !important;
    left: auto !important;
    min-width: max-content !important;
    width: max-content !important;
    animation: none !important;
    -webkit-animation: none !important;
    animation-play-state: paused !important;
    -webkit-animation-play-state: paused !important;
    visibility: visible !important;
    opacity: 1 !important;
    will-change: transform !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }

  .life-marquee-slide,
  .life-marquee-slide img {
    visibility: visible !important;
    opacity: 1 !important;
  }

  #access .access {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  #access .access iframe {
    position: relative !important;
    display: block !important;
    left: 50% !important;
    right: auto !important;
    width: calc(100vw - 16px) !important;
    max-width: none !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    justify-self: center !important;
  }
}

/* final-mobile-map-edge-correction */
@media (max-width: 800px) {
  #access .access iframe {
    left: 50% !important;
    width: calc(100vw - 24px) !important;
    width: calc(100svw - 24px) !important;
    max-width: none !important;
    margin: 0 !important;
    transform: translateX(calc(-50% - 8px)) !important;
  }
}

/* mobile-floating-mail-icon-only */
@media (max-width: 800px) {
  .page-top-button .page-top-label {
    display: none !important;
  }
}

/* remove-recruit-star-decoration */
#recruit::after {
  display: none !important;
  content: none !important;
}

/* concept-copy-before-image-when-stacked */
@media (max-width: 1400px) {
  #concept .wrap {
    display: flex !important;
    flex-direction: column !important;
  }

  #concept .wrap > div {
    order: 1 !important;
    position: relative !important;
    z-index: 2 !important;
  }

  #concept .concept-img {
    order: 2 !important;
    position: relative !important;
    z-index: 1 !important;
    margin-top: 48px !important;
    margin-bottom: 0 !important;
  }
}

@media (max-width: 800px) {
  #concept .concept-img {
    margin-top: 40px !important;
  }
}


/* complete-stacked-concept-layout */
@media (max-width: 1400px) {
  #concept {
    width: 100% !important;
    min-height: 0 !important;
    margin-bottom: 90px !important;
    padding: 70px 0 !important;
    background: #fff1f5 !important;
    overflow: visible !important;
  }

  #concept .wrap {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    gap: 0 !important;
  }

  #concept .wrap > div {
    order: 1 !important;
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 7vw !important;
    transform: none !important;
    z-index: 2 !important;
  }

  #concept .concept-img {
    order: 2 !important;
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 92% !important;
    height: clamp(430px, 68vw, 670px) !important;
    min-height: 430px !important;
    margin: 48px 0 0 !important;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 0 75px 75px 0 !important;
    z-index: 1 !important;
  }
}

@media (max-width: 800px) {
  #concept {
    margin-bottom: 15px !important;
    padding: 55px 0 68px !important;
  }

  #concept .wrap > div {
    padding: 0 6vw !important;
  }

  #concept .concept-img {
    width: 94% !important;
    height: clamp(400px, 112vw, 570px) !important;
    min-height: 400px !important;
    margin-top: 40px !important;
    border-radius: 0 55px 55px 0 !important;
  }
}

/* align-stacked-concept-image-to-left-edge */
@media (max-width: 1400px) {
  #concept .wrap {
    align-items: stretch !important;
  }

  #concept .concept-img {
    align-self: flex-start !important;
    left: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* mobile-map-right-safe-spacing */
@media (max-width: 800px) {
  #access .access iframe {
    width: calc(100vw - 32px) !important;
    width: calc(100svw - 32px) !important;
  }
}

/* compact-mobile-fee-to-life-spacing */
@media (max-width: 800px) {
  #about {
    padding-bottom: 60px !important;
  }

  #life.life-gallery {
    padding-top: 60px !important;
  }

  #about > .wrap::before {
    will-change: transform;
  }
}

/* contact-form-confirmation-and-status */
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-confirm h3{text-align:center;color:#4f675f;font-size:25px}.form-confirm-list{display:grid;grid-template-columns:150px 1fr;margin:25px 0;text-align:left}.form-confirm-list dt,.form-confirm-list dd{margin:0;padding:14px;border-bottom:1px solid var(--line)}.form-confirm-list dt{font-weight:600}.form-confirm-list dd{white-space:pre-wrap;overflow-wrap:anywhere}.turnstile-container{width:100%;min-height:65px;margin:24px auto;display:flex;align-items:center;justify-content:center}.turnstile-container.is-local-preview{border:1px dashed #d6b6c0;border-radius:10px;color:#846872;font-size:13px}.form-confirm-actions{display:flex;justify-content:center;gap:16px}.form-confirm-actions button{margin:0}.contact-edit-button{background:#fff!important;color:#6f9589!important;border:1px solid #6f9589!important}.contact-send-button:disabled,.contact-edit-button:disabled{opacity:.55;cursor:wait}.message.is-error{color:#b23a57}.message.is-success{color:#21835f}@media(max-width:500px){.form-confirm-inquiry-break{display:none}.form-confirm-list{grid-template-columns:1fr}.form-confirm-list dt{padding-bottom:3px;border-bottom:0}.form-confirm-list dd{padding-top:3px}.form-confirm-actions{flex-direction:column-reverse}.form-confirm-actions button{width:100%}}

/* privacy-policy */
.agree a{color:#23876a;text-decoration:underline;text-underline-offset:3px}.privacy-document{background:#fffafb}.privacy-document .privacy-main{padding:80px 0 10px}.privacy-document .privacy-wrap{width:min(900px,calc(100% - 48px));margin:0 auto}.privacy-document .privacy-hero{text-align:center;margin-bottom:45px}.privacy-document .privacy-hero i{display:block;color:#2f9a78;font-style:normal;font-size:18px;letter-spacing:.18em}.privacy-document .privacy-hero h1{margin:8px 0 12px;color:#644c58;font-size:clamp(30px,4vw,44px);font-weight:500}.privacy-document .privacy-lead{margin:0 auto;max-width:760px}.privacy-document .privacy-content{padding:50px clamp(24px,5vw,64px);border:1px solid #efc4d2;border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 16px 45px rgba(111,78,91,.08)}.privacy-document .privacy-content section{margin:0 0 38px;padding:0;background:none}.privacy-document .privacy-content section:last-child{margin-bottom:0}.privacy-document .privacy-content h2{margin:0 0 12px;text-align:left;color:#3b8e73;font-size:22px}.privacy-document .privacy-content p,.privacy-document .privacy-content li{font-size:15px;line-height:2}.privacy-document .privacy-content ul{padding-left:1.4em}.privacy-document .privacy-back{display:inline-block;margin-top:34px;color:#23876a;text-decoration:underline;text-underline-offset:4px}.privacy-document footer{margin-top:80px}@media(max-width:600px){.privacy-document .privacy-main{padding:55px 0 0}.privacy-document .privacy-wrap{width:calc(100% - 32px)}.privacy-document .privacy-content{padding:34px 20px;border-radius:20px}.privacy-document .privacy-content h2{font-size:19px}.privacy-document .privacy-content p,.privacy-document .privacy-content li{font-size:14px}}

/* stable-recruit-background */
#recruit{background:linear-gradient(90deg,#f7cddd 0%,#f8dce7 58%,#f9e7ee 100%)}
#recruit::before{inset:0 0 auto;height:clamp(680px,65vw,900px);background:linear-gradient(90deg,rgba(247,205,221,.96) 0%,rgba(247,205,221,.86) 48%,rgba(247,205,221,.58) 100%),url('assets/photos/provided/staff-group.jpg') 78% 70%/cover no-repeat}
@media(max-width:800px){#recruit{background:#f7cddd}#recruit::before{height:720px;background:linear-gradient(rgba(247,205,221,.90),rgba(247,205,221,.90)),url('assets/photos/provided/staff-group.jpg') center 64%/cover no-repeat}}
