:root{--ink:#212121;--blue:#137cac;--sky:#9de0f5;--yellow:#fdf49c;--accent:#fff100;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'M PLUS Rounded 1c',sans-serif;font-size:16px;line-height:1.875;background:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}p{margin:14px 0}h1,h2,h3,h4{margin:0;font-weight:700}a:focus-visible{outline:3px solid #137cac;outline-offset:5px}.wrap{width:min(calc(100% - 80px),var(--max));margin:auto}.topbar{background:#f8fafb;text-align:center;font-size:12px;line-height:26px;min-height:26px}.topbar a{text-decoration:underline}body>header{height:94px;background:white;position:sticky;top:0;z-index:20;box-shadow:0 2px 0 #137cac1a}.nav{display:flex;height:100%;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;gap:12px;align-items:center;color:var(--blue)}.brand small{display:block;font-size:13px;font-weight:700;letter-spacing:.08em}.brand strong{display:block;font-size:25px;line-height:1.4}.sun{width:43px;height:43px;background:var(--accent);border:2px solid var(--ink);border-radius:50%;box-shadow:0 0 0 7px #fff7ab;flex-shrink:0}.nav-links{display:flex;gap:18px;font-size:15px;font-weight:700;align-items:center}.nav-links a{padding:8px 0;border-bottom:2px solid transparent}.nav-links a:hover{border-color:var(--blue)}.hero{height:533.328px;background:var(--sky);position:relative;overflow:hidden}.hero>.wrap{width:100%;height:100%}.hero-shell{position:relative;height:100%;isolation:isolate}.hero-bg,.tooth{display:none}.hero-inner,.hero-grid{height:100%}.hero-main{position:absolute;left:50%;top:58px;transform:translateX(-50%);width:752px;padding:24px 32px 22px;text-align:center;background:#fff;border:2px solid var(--ink);border-radius:22px;z-index:3}.eyebrow{display:inline-block;background:var(--accent);border-radius:10px;font-size:17px;line-height:28px;font-weight:800;padding:0 16px}.hero h1{font-size:46px;line-height:60px;letter-spacing:1px;margin:8px -10px 12px}.hero p.lead{font-size:16px;line-height:27px;letter-spacing:.8px;margin:0}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;background:var(--accent);font-size:16px;font-weight:800;min-height:48px;padding:8px 30px;box-shadow:0 4px 0 #ddd;transition:transform .2s}.btn:after{content:'';display:block;margin-left:20px;border-left:7px solid var(--blue);border-top:5px solid transparent;border-bottom:5px solid transparent}.btn:hover{transform:translateY(-3px)}.btn-secondary{background:#fff;border:2px solid var(--blue);box-shadow:none}.hero-copy{position:absolute;top:calc(100% + 20px);left:50%;transform:translateX(-50%);width:880px;display:flex;justify-content:center;gap:20px;white-space:nowrap;font-size:15px;font-weight:700}.line{display:flex;gap:7px;align-items:center}.dot{width:8px;height:8px;background:var(--blue);border-radius:50%;flex-shrink:0}.hero-side{position:absolute;inset:0;pointer-events:none;z-index:4}.badge{position:absolute;width:184px;background:white;border:2px solid var(--ink);border-radius:50px;padding:11px 7px;text-align:center;line-height:1.5}.badge strong{font-size:17px;display:block}.badge span{font-size:15px;display:block;margin-top:4px}.badge:nth-child(1){left:22px;top:70px}.badge:nth-child(2){right:22px;top:42px}.badge:nth-child(3){left:30px;bottom:42px}.badge:nth-child(4){right:26px;bottom:40px}.badge:after{content:'';position:absolute;bottom:-11px;left:60%;width:16px;height:16px;background:#fff;border-right:2px solid #212121;border-bottom:2px solid #212121;transform:skewY(-30deg)}.edge-photo{position:absolute;width:210px;height:205px;border:5px solid #fff;border-radius:100px;z-index:1}.edge-photo-1{left:28px;top:160px;transform:rotate(-9deg)}.edge-photo-2{right:22px;top:150px;transform:rotate(9deg)}.edge-photo-3{left:31%;top:-105px;width:190px;height:170px;transform:rotate(8deg)}.edge-photo-4{right:25%;bottom:-100px;width:190px;height:160px;transform:rotate(-9deg)}.section{position:relative;padding:85px 0 95px}.section-head{text-align:center;margin-bottom:40px}.label{font-size:16px;font-weight:800;letter-spacing:.1em;color:var(--blue);margin-bottom:12px}.section h2,.cta h2{font-size:46px;line-height:60px;letter-spacing:2.76px}.section-head p{max-width:800px;margin:20px auto 0;font-size:16px;line-height:30px}.section-head h2:before,.section-head h2:after{content:'';display:inline-block;width:22px;height:32px;border-left:3px solid var(--ink);border-right:3px solid var(--ink);transform:rotate(-32deg);margin:0 24px}.section-head h2:after{transform:rotate(32deg)}#kodawari{background:var(--yellow);min-height:958px;padding-bottom:130px}.promise-card>h3{font-size:24px;text-align:center;line-height:1.6}.promise-card>p{max-width:960px;margin:16px auto 22px}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.mini{border:2px solid var(--ink);border-radius:35px;background:white;padding:22px 24px;position:relative}.mini strong{display:block;font-size:21px;line-height:1.5;margin-bottom:12px}.mini span{font-size:16px;line-height:1.8}.mini:after{content:'';position:absolute;bottom:-14px;left:48%;height:20px;width:20px;transform:skewY(-35deg);border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);background:#fff}.promise-card+.promise-card{margin-top:45px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:25px}.step{display:grid;grid-template-columns:48px 1fr;gap:15px}.num{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--blue);color:white;font-size:25px;font-weight:800}.step h4{font-size:19px;line-height:1.6}.step p{font-size:16px;margin:10px 0 0}#menu{min-height:919px;background:white;border-radius:50% 50% 0 0 / 65px 65px 0 0;margin-top:-65px;padding-top:100px;z-index:1}#menu h2{color:var(--blue)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 50px;text-align:center}.service-card{position:relative}.service-card small{width:120px;height:120px;border:6px double white;box-shadow:0 0 0 2px #c8e8f4;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;border-radius:50%;background:#139fcd;color:#fff;font-size:17px;line-height:1.4;font-weight:700;padding:15px}.service-card h3{font-size:23px;color:var(--blue)}.service-card p{font-size:16px;line-height:1.85;text-align:left}.price-chip{display:block;border-top:1px dashed #a9d2e1;font-size:15px;font-weight:700;padding-top:12px}#photo{min-height:1038px;background:var(--yellow);padding-top:125px}.gallery-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:60px}.gallery-card{background:#fff;border:2px solid var(--ink);border-radius:5px;overflow:hidden}.gallery-card img{width:100%;height:345px}.gallery-copy{padding:22px}.gallery-copy strong{font-size:23px;color:var(--blue);display:block;border-bottom:1px dotted var(--blue);padding-bottom:15px;margin-bottom:15px}.gallery-copy span{font-size:16px}#guide{min-height:908px;background:var(--yellow)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:60px}.info-card{border:2px solid var(--ink);background:#fff;border-radius:26px;padding:32px}.info-card h3{font-size:26px;color:var(--blue);margin-bottom:24px}.schedule-row,.access-item{padding:18px 0;border-top:1px dotted #abc6cd}.schedule-row{display:grid;grid-template-columns:70px 1fr;gap:20px}.access-item small{font-size:15px;font-weight:700;color:var(--blue)}.note{background:#d9f0f7;border-radius:20px;padding:20px;margin-top:25px}.cta{min-height:934px;background:var(--yellow);padding:80px 0 100px}.cta-box{padding:390px 50px 45px;text-align:center;background:#fff url('img/01.jpg') center top/100% 340px no-repeat;border:2px solid var(--ink);border-radius:22px}.cta-box p{max-width:850px;margin:25px auto;font-size:16px}.cta .hero-actions{position:static!important}body>footer{min-height:730px;background:#fff;padding:160px 0 100px;display:flex;align-items:center;color:var(--blue);text-align:center}.foot{display:grid;gap:36px}.foot strong{font-size:32px}.foot div{font-size:16px}.foot a{text-decoration:underline}#noren-direct-reception{--noren-accent:#137cac!important;--noren-accent2:#179fc9!important;--noren-font:'M PLUS Rounded 1c',sans-serif!important;--noren-on-accent:#fff!important;--noren-radius:22px!important;--noren-radius-s:24px!important}.reveal{opacity:1}.de02-motion .reveal:not(.is-visible){opacity:0}.de02-motion .reveal.is-visible{animation:gentle-appear .6s ease both}@keyframes gentle-appear{from{opacity:0}to{opacity:1}}
@media(max-width:1050px) and (min-width:701px){.brand strong{font-size:20px}.nav-links{gap:10px;font-size:13px}.hero-main{width:66%;padding:24px}.hero h1{font-size:37px;line-height:1.4}.badge{width:15%;padding:10px 3px}.badge strong{font-size:15px}.badge span{font-size:13px}.edge-photo{width:17%;height:180px}.hero-copy{width:95vw;gap:12px;font-size:13px}.section h2,.cta h2{font-size:36px;line-height:1.5}.section-head h2:before,.section-head h2:after{display:none}}
@media(max-width:700px){html{scroll-padding-top:145px}.wrap{width:calc(100% - 40px)}.topbar{font-size:10px;line-height:18px;padding:5px 14px}.nav{display:block;padding:17px 0 12px}.brand{justify-content:center;gap:10px}.brand small{font-size:10px}.brand strong{font-size:20px}.sun{width:30px;height:30px;box-shadow:0 0 0 4px #fff7ab}body>header{height:135px}.nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:0 15px;margin-top:10px;font-size:12px;line-height:1.5}.nav-links a{padding:3px 0}.hero{height:auto;min-height:1080px;padding:0 0 30px}.hero-shell{min-height:1050px}.hero-main{left:20px;right:20px;top:128px;transform:none;width:auto;padding:25px 18px 24px;border-radius:22px}.eyebrow{font-size:15px}.hero h1{font-size:27px;line-height:1.6;letter-spacing:0;margin:14px -5px}.hero p.lead{font-size:15px;line-height:1.9;text-align:left;letter-spacing:0}.hero-actions{gap:12px;flex-direction:column;align-items:center}.btn{font-size:15px;min-width:210px;min-height:48px}.hero-copy{position:static;transform:none;white-space:normal;display:grid;grid-template-columns:1fr;gap:5px;width:auto;margin:20px 0;text-align:left;font-size:15px}.hero-main .hero-actions{margin-top:20px}.edge-photo-1{width:150px;height:120px;left:18px;top:10px;border-radius:70px}.edge-photo-2{width:155px;height:120px;right:15px;top:0;border-radius:70px}.edge-photo-3,.edge-photo-4{display:none}.hero-side{position:absolute;top:780px;bottom:auto;left:20px;right:20px}.floating-badges{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}.badge:nth-child(n){position:relative;inset:auto;width:100%;padding:12px 6px;border-radius:40px}.badge strong{font-size:16px}.badge span{font-size:15px}.section{padding:65px 0}.section h2,.cta h2{font-size:28px;line-height:1.7;letter-spacing:1px}.section-head h2:before,.section-head h2:after{display:none}.section-head{margin-bottom:32px}.section-head p{font-size:15px;line-height:1.9;text-align:left}.label{font-size:15px}.promise-card>h3{font-size:22px}.promise-card>p{font-size:15px}.promise-grid,.steps,.service-grid,.gallery-wrap,.info-grid{grid-template-columns:1fr}.promise-grid{gap:26px}.mini{padding:25px}.mini strong{font-size:21px}.mini span,.step p{font-size:15px}.steps{gap:30px}.step h4{font-size:20px}#kodawari{padding-bottom:100px}#menu{padding-top:70px;margin-top:-35px;border-radius:50% 50% 0 0 / 35px 35px 0 0}.service-grid{gap:40px}.service-card{padding:0 14px 28px;border-bottom:1px dotted #a9d2e1}.service-card p{text-align:left;font-size:15px}.service-card small{width:115px;height:115px;font-size:17px}.service-card h3{font-size:24px}#photo{padding-top:70px}.gallery-wrap{margin-top:35px;gap:30px}.gallery-card img{height:290px}.gallery-copy{padding:22px}.gallery-copy span{font-size:15px}.info-grid{gap:25px;margin-top:35px}.info-card{padding:24px}.info-card h3{font-size:25px}.schedule-row{gap:12px;grid-template-columns:55px 1fr;font-size:15px}.access-item,.note{font-size:15px}.cta{padding:65px 0;min-height:0}.cta-box{padding:260px 20px 30px;background-size:auto 225px}.cta h2{font-size:26px;line-height:1.7;letter-spacing:0}.cta-box p{font-size:15px}.cta .wrap{width:calc(100% - 28px)}body>footer{min-height:460px;padding:70px 0}.foot{gap:25px}.foot strong{font-size:24px}.foot div{font-size:15px}.section{min-height:0!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.de02-motion .reveal{opacity:1!important}}
.eyebrow,.label,.service-card small{text-transform:uppercase}.service-card small{overflow-wrap:normal;font-size:15px}.section h2,.cta h2{text-wrap:balance}@media(min-width:1051px){#menu{padding-top:80px;padding-bottom:65px}#menu .section-head{margin-bottom:25px}.service-grid{row-gap:25px}.service-card small{width:110px;height:110px;margin-bottom:12px}.service-card p{margin:10px 0}}
@media(min-width:1051px){#menu{padding-bottom:40px}#menu .section-head{margin-bottom:20px}}
