:root{--green-dark:#5a6b4a;--green:#7c8a5f;--green-mid:#8b9a6b;--green-light:#a8b487;--beige:#f4f1ea;--beige-deep:#ece7db;--cream:#faf8f3;--ink:#3a3a34;--ink-soft:#6b6b62;--line:#d8d3c5;--white:#fff;--gold:#b3a36a;--il-line:#2b2622;--il-hair:#6b5d57;--il-skin:#fdfcfa;--il-pink:#f6b8b5;--il-pink-d:#eaa3a0;--il-red:#ef6f6c}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Zen Kaku Gothic New,sans-serif;color:var(--ink);background:var(--cream);line-height:1.9;font-weight:400;-webkit-font-smoothing:antialiased;font-size:15px}.mincho{font-family:Shippori Mincho,serif}img{display:block;max-width:100%}.wrap{max-width:1080px;margin:0 auto;padding:0 24px}.accent{color:var(--green)}.ph{background:linear-gradient(135deg,#e6e2d6,#d4cfc0);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.ph:after{content:attr(data-label);font-size:11px;color:#9a9587;letter-spacing:.05em;text-align:center;padding:8px;line-height:1.6;font-family:Zen Kaku Gothic New,sans-serif}.ph-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}header{position:absolute;top:0;left:0;right:0;z-index:50;padding:18px 0}.header-inner{display:flex;align-items:center;justify-content:space-between}.logo .brand{font-family:Shippori Mincho,serif;font-size:26px;font-weight:600;color:var(--ink);letter-spacing:.02em}.logo .brand .colon{color:var(--green)}.logo .tag{font-size:10px;letter-spacing:.18em;color:var(--ink-soft);margin-top:2px}.header-right{display:flex;align-items:center;gap:24px}.header-note{font-size:13px;color:var(--ink-soft);letter-spacing:.05em}.btn-header{background:var(--green);color:#fff;text-decoration:none;padding:12px 26px;border-radius:4px;font-size:14px;display:flex;flex-direction:column;align-items:flex-start;line-height:1.3;position:relative;transition:.3s}.btn-header small{font-size:10px;opacity:.85;font-weight:300}.btn-header .arr{position:absolute;right:14px;top:50%;transform:translateY(-50%)}.btn-header:hover{background:var(--green-dark)}@media(max-width:768px){.header-note{display:none}.logo .brand{font-size:21px}}.hero{position:relative;background:linear-gradient(105deg,var(--cream) 48%,transparent 48%),linear-gradient(135deg,#dfe3d4 0,#cdd3bd 100%);min-height:660px;display:flex;align-items:center;padding-top:90px;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(100deg,var(--cream) 38%,hsla(42,31%,94%,.82) 48%,hsla(42,31%,94%,.3) 58%,transparent 72%);pointer-events:none}.hero-photo{position:absolute;top:0;right:0;width:60%;height:100%}.hero-photo .ph{width:100%;height:100%}.hero-content{position:relative;z-index:5;max-width:520px;padding:30px 0}.hero-access{display:inline-block;font-size:12.5px;letter-spacing:.08em;color:var(--green-dark);background:hsla(0,0%,100%,.85);border:1px solid var(--green-light);padding:5px 16px;border-radius:30px;margin-bottom:20px;font-weight:500}.hero h1{font-family:Shippori Mincho,serif;font-size:54px;font-weight:600;line-height:1.4;color:var(--ink);letter-spacing:.01em;margin-bottom:26px;text-shadow:0 1px 8px hsla(42,31%,94%,.8)}.hero h1 .big{font-size:62px;color:var(--green)}.hero .sub-headline{font-family:Shippori Mincho,serif;font-size:30px;font-weight:500;color:var(--ink);margin-bottom:26px;position:relative;display:inline-block;text-shadow:0 1px 6px hsla(42,31%,94%,.8)}.hero .sub-headline .em{color:var(--green)}.hero .sub-headline:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;background:var(--green-light)}.hero p{font-size:14.5px;color:var(--ink-soft);line-height:2;margin-bottom:8px}.hero p strong{color:var(--ink);font-weight:500}.hero-badges{display:flex;gap:18px;margin-top:34px}.hb{text-align:center}.hb .circle{width:100px;height:100px;border-radius:50%;background:hsla(0,0%,100%,.92);border:1.5px solid var(--green-light);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 8px;padding:6px;transition:.3s;backdrop-filter:blur(2px)}.hb .circle .kw{font-family:Shippori Mincho,serif;font-weight:600;font-size:17px;color:var(--green-dark);line-height:1.35;letter-spacing:.02em}.hb .circle .kw .sm{font-size:12px;display:block;font-weight:500;color:var(--green)}.hb .circle:hover{border-color:var(--green);background:var(--cream)}.hb span{font-size:11px;color:var(--ink-soft);line-height:1.4;display:block}.hero-seal{position:absolute;right:3%;top:18%;z-index:6;width:138px;height:138px;border-radius:50%;background:hsla(43,41%,97%,.94);border:1px solid var(--green-light);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 8px 30px rgba(90,107,74,.18)}.hero-seal .t1{font-family:Shippori Mincho,serif;font-size:17px;color:var(--green);line-height:1.4}.hero-seal .t2{font-size:9.5px;color:var(--ink-soft);margin-top:6px;line-height:1.5}.hero-campaign{position:absolute;right:2%;bottom:4%;z-index:7;background:var(--green-dark);color:#fff;padding:12px 20px;border-radius:6px;box-shadow:0 4px 18px rgba(0,0,0,.28);display:flex;align-items:center;gap:14px;border-left:4px solid #d4b96a;max-width:400px}.hero-campaign .camp-label{font-size:10px;letter-spacing:.1em;background:hsla(0,0%,100%,.18);padding:3px 8px;border-radius:2px;white-space:nowrap}.hero-campaign .camp-body{line-height:1.5}.hero-campaign .camp-body .camp-main{font-family:Shippori Mincho,serif;font-size:16px;font-weight:600;white-space:nowrap}.hero-campaign .camp-body .camp-main .camp-price{font-size:22px;color:#f0d080;margin:0 2px}.hero-campaign .camp-body .camp-sub{font-size:10.5px;opacity:.85;margin-top:2px}@media(max-width:880px){.hero-campaign{left:50%;transform:translateX(-50%);bottom:auto;top:12px;width:max-content;padding:10px 16px;gap:10px}.hero-campaign .camp-body .camp-main{font-size:14px}.hero-campaign .camp-body .camp-main .camp-price{font-size:18px}.hero{background:linear-gradient(135deg,#dfe3d4,#cdd3bd);min-height:auto;padding:120px 0 40px}.hero-photo{position:relative;width:100%;height:320px;margin-bottom:24px}.hero-content{max-width:100%}.hero h1{font-size:38px}.hero h1 .big{font-size:44px}.hero .sub-headline{font-size:24px}.hero-seal{position:relative;right:auto;bottom:auto;margin:24px auto 0}.hero-badges{justify-content:center}}.worry{background:var(--beige);padding:70px 0}.worry-inner{display:flex;gap:48px;align-items:center}.worry-photo{flex:0 0 320px}.worry-photo .ph{width:100%;height:300px;border-radius:6px}.worry-body{flex:1}.section-head{font-family:Shippori Mincho,serif;font-size:30px;font-weight:600;color:var(--ink);margin-bottom:30px;display:flex;align-items:center;gap:14px}.section-head .accent{color:var(--green)}.section-head:after{content:"";flex:1;height:1px;background:var(--line)}.worry-list{list-style:none}.worry-list li{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px dashed var(--line);font-size:16px;color:var(--ink)}.worry-list li:last-child{border-bottom:none}.check{flex:0 0 24px;width:24px;height:24px;border:1.5px solid var(--green-light);border-radius:4px;display:flex;align-items:center;justify-content:center}.check svg{width:14px;height:14px;stroke:var(--green);fill:none;stroke-width:2.5}.arrow-down{text-align:center;padding:24px 0;color:var(--green-light);font-size:30px}@media(max-width:768px){.worry-inner{flex-direction:column}.worry-photo{flex:none;width:100%}.section-head{font-size:24px}}.concept{background:var(--cream);padding:30px 0 70px}.concept-card{background:#fff;border-radius:12px;padding:50px;box-shadow:0 4px 24px rgba(90,107,74,.06)}.concept-lead{font-family:Shippori Mincho,serif;text-align:center;font-size:26px;font-weight:500;color:var(--ink);margin-bottom:44px;line-height:1.6}.concept-lead .accent{color:var(--green)}.concept-grid{display:flex;gap:40px;align-items:flex-start}.concept-left{flex:0 0 280px}.concept-left .label{font-family:Shippori Mincho,serif;font-size:14px;color:var(--green);letter-spacing:.05em;display:flex;align-items:center;gap:10px;margin-bottom:14px}.concept-left .label:after{content:"";width:40px;height:1px;background:var(--green-light)}.concept-left .big-copy{font-family:Shippori Mincho,serif;font-size:34px;font-weight:600;color:var(--ink);line-height:1.5;margin-bottom:20px}.concept-left .big-copy .em{color:var(--green)}.concept-left p{font-size:13.5px;color:var(--ink-soft);line-height:2}.concept-steps{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step .ph{width:100%;height:130px;border-radius:6px;margin-bottom:14px}.step h4{font-family:Shippori Mincho,serif;font-size:17px;font-weight:600;color:var(--ink);margin-bottom:6px;line-height:1.4}.step h4 .s{font-size:13px;color:var(--green);font-weight:500;display:block}.step p{font-size:12px;color:var(--ink-soft);line-height:1.7}@media(max-width:880px){.concept-card{padding:30px 22px}.concept-grid{flex-direction:column}.concept-left{flex:none}.concept-steps{grid-template-columns:1fr}.step .ph{height:180px}}.goal{background:var(--beige-deep);padding:54px 0}.goal-inner{display:flex;gap:40px;align-items:center}.goal-left{flex:0 0 320px;text-align:center}.goal-left .ttl{font-family:Shippori Mincho,serif;font-size:28px;font-weight:600;color:var(--ink);line-height:1.6}.goal-left .ttl .accent{color:var(--green)}.goal-left .note{font-size:13px;color:var(--ink-soft);margin-top:14px;letter-spacing:.05em}.goal-left .note:after,.goal-left .note:before{content:"—— ";color:var(--green-light)}.goal-items{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.goal-item{text-align:center}.goal-item .circle{width:96px;height:96px;border-radius:50%;background:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 10px;border:1.5px solid var(--green-light);padding:6px;transition:.3s}.goal-item .circle .gkw{font-family:Shippori Mincho,serif;font-weight:600;font-size:15px;color:var(--green-dark);line-height:1.4;letter-spacing:.02em}.goal-item .circle:hover{border-color:var(--green);background:#fff}.goal-item span{font-size:12.5px;color:var(--ink);line-height:1.5}@media(max-width:880px){.goal-inner{flex-direction:column}.goal-left{flex:none}.goal-items{grid-template-columns:repeat(2,1fr)}}.voice{padding:64px 0;background:var(--cream)}.voice-head{text-align:center;margin-bottom:44px}.voice-head .jp{font-family:Shippori Mincho,serif;font-size:28px;font-weight:600;color:var(--ink);position:relative;display:inline-block}.voice-head .jp:after,.voice-head .jp:before{content:"———";color:var(--green-light);margin:0 16px;font-size:16px;vertical-align:middle}.voice-head .en{font-size:11px;letter-spacing:.3em;color:var(--green);margin-top:6px}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.voice-card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 3px 16px rgba(90,107,74,.05)}.voice-top{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.voice-ava{flex:0 0 64px}.voice-ava .ava-initial,.voice-ava .ph{width:64px;height:64px;border-radius:50%}.voice-ava .ava-initial{background:var(--beige-deep);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1.3;text-align:center}.voice-ava .ava-initial,.voice-card h5{font-family:Shippori Mincho,serif;color:var(--green-dark);font-weight:600}.voice-card h5{font-size:15px;line-height:1.5;margin-bottom:6px}.voice-meta{font-size:12px;color:var(--ink-soft)}.voice-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.85}@media(max-width:880px){.voice-grid{grid-template-columns:1fr}}.offer{background:linear-gradient(135deg,var(--green) 0,var(--green-dark) 100%);color:#fff;padding:48px 0;position:relative;overflow:hidden}.offer-inner{display:flex;gap:36px;align-items:center}.offer-photo{flex:0 0 240px}.offer-photo .ph{width:100%;height:200px;border-radius:8px}.offer-body{flex:1;text-align:center}.offer-lead{font-family:Shippori Mincho,serif;font-size:22px;font-weight:500;margin-bottom:22px}.offer-lead:after,.offer-lead:before{content:"———";color:hsla(0,0%,100%,.5);margin:0 12px;font-size:13px;vertical-align:middle}.offer-price{gap:20px;flex-wrap:wrap;margin-bottom:26px}.badge-circ,.offer-price{display:flex;align-items:center;justify-content:center}.badge-circ{width:74px;height:74px;border-radius:50%;background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.5);flex-direction:column;font-size:11px;line-height:1.4;text-align:center}.offer-price .menu{text-align:left}.offer-price .menu .name{font-family:Shippori Mincho,serif;font-size:20px}.offer-price .menu .old{font-size:13px;text-decoration:line-through;opacity:.8}.offer-price .big-price{font-family:Shippori Mincho,serif;display:flex;align-items:baseline}.offer-price .big-price .num{font-size:64px;font-weight:700;line-height:1}.offer-price .big-price .yen{font-size:24px;margin-left:4px}.offer-price .big-price .tax{font-size:12px;opacity:.8;align-self:flex-end;margin-left:6px}.btn-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#fff;color:var(--green-dark);text-decoration:none;font-family:Shippori Mincho,serif;font-size:20px;font-weight:600;padding:18px 60px;border-radius:6px;position:relative;transition:.3s;box-shadow:0 6px 20px rgba(0,0,0,.18)}.btn-cta:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.25)}.btn-cta .arr{position:absolute;right:22px}.offer-note{font-size:12px;opacity:.85;margin-top:14px}@media(max-width:880px){.offer-inner{flex-direction:column}.offer-photo{flex:none;width:100%}.offer-price .big-price .num{font-size:48px}.btn-cta{font-size:17px;padding:16px 36px;width:100%}.offer-lead{font-size:18px}}.features{background:var(--cream);padding:30px 0;border-bottom:1px solid var(--line)}.feat-inner{justify-content:space-between;gap:20px;flex-wrap:wrap}.feat,.feat-inner{display:flex;align-items:center}.feat{gap:10px;font-size:12.5px;color:var(--ink)}.feat svg{width:30px;height:30px;stroke:var(--green);fill:none;stroke-width:1.3;flex:none}.feat .ft small{display:block;font-size:11px;color:var(--ink-soft)}.access-box{font-size:12px;color:var(--ink-soft);line-height:1.7;border-left:1px solid var(--line);padding-left:18px}.access-box b{color:var(--ink);font-size:12.5px}@media(max-width:880px){.feat-inner{justify-content:flex-start}.access-box{border-left:none;padding-left:0;border-top:1px solid var(--line);padding-top:14px;width:100%}}footer{background:var(--green-dark);color:#fff;padding:46px 0 30px}.footer-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;margin-bottom:28px}.footer-brand .brand{font-family:Shippori Mincho,serif;font-size:24px;font-weight:600;margin-bottom:8px}.footer-brand .tag{font-size:11px;letter-spacing:.15em;opacity:.8}.footer-info{font-size:13px;line-height:2}.footer-info .label{opacity:.7;display:inline-block;width:auto}.footer-info a{color:#fff;text-decoration:none}.footer-info .tel{font-size:18px;font-family:Shippori Mincho,serif}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.2);padding-top:18px;font-size:11px;opacity:.7;text-align:center}.mid-cta{background:var(--green-dark);padding:44px 0}.mid-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}.mid-cta .copy{color:#fff}.mid-cta .copy .en{font-size:11px;letter-spacing:.25em;opacity:.7;margin-bottom:6px}.mid-cta .copy h3{font-family:Shippori Mincho,serif;font-size:26px;font-weight:600;line-height:1.5}.mid-cta .copy p{font-size:13px;opacity:.8;margin-top:8px}.mid-cta-btns{display:flex;gap:14px;flex-wrap:wrap}.btn-mid{display:inline-flex;flex-direction:column;align-items:flex-start;text-decoration:none;padding:14px 28px;border-radius:6px;font-family:Shippori Mincho,serif;font-size:17px;font-weight:600;transition:.3s;position:relative;min-width:220px}.btn-mid small{font-size:11px;font-weight:400;opacity:.85;margin-bottom:3px}.btn-mid.line{background:#fff;color:var(--green-dark)}.btn-mid.trial{background:var(--green);color:#fff;border:1px solid hsla(0,0%,100%,.3)}.btn-mid:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.2)}@media(max-width:768px){.mid-cta-inner{flex-direction:column;text-align:center}.mid-cta-btns{justify-content:center}.btn-mid{min-width:260px;align-items:center}}.flow{background:var(--cream);padding:72px 0}.flow-head{text-align:center;margin-bottom:52px}.flow-head .en{font-size:11px;letter-spacing:.3em;color:var(--green);margin-bottom:8px}.flow-head h2{font-family:Shippori Mincho,serif;font-size:34px;font-weight:600;color:var(--ink)}.flow-head .bar{width:40px;height:2px;background:var(--green-light);margin:14px auto 0}.flow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}.flow-steps:before{content:"";position:absolute;top:44px;left:12.5%;right:12.5%;height:1px;background:var(--green-light);z-index:0}.flow-step{text-align:center;padding:0 12px;position:relative;z-index:1}.flow-step .num{width:88px;height:88px;border-radius:50%;background:#fff;border:2px solid var(--green-light);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 18px;box-shadow:0 4px 16px rgba(90,107,74,.1)}.flow-step .num .s{font-size:10px;letter-spacing:.15em;color:var(--green);font-weight:500}.flow-step .num .n{font-size:26px;font-weight:700;color:var(--green-dark);line-height:1}.flow-step .num .n,.flow-step h4{font-family:Shippori Mincho,serif}.flow-step h4{font-size:17px;font-weight:600;color:var(--ink);margin-bottom:10px;line-height:1.4}.flow-step p{font-size:12.5px;color:var(--ink-soft);line-height:1.8}.flow-step .tag{display:inline-block;font-size:10.5px;color:var(--green);background:rgba(124,138,95,.1);padding:2px 10px;border-radius:20px;margin-top:8px}@media(max-width:768px){.flow-steps{grid-template-columns:repeat(2,1fr);gap:32px 20px}.flow-steps:before{display:none}}.pricing{background:var(--beige);padding:72px 0}.pricing-head{text-align:center;margin-bottom:48px}.pricing-head .en{font-size:11px;letter-spacing:.3em;color:var(--green);margin-bottom:8px}.pricing-head h2{font-family:Shippori Mincho,serif;font-size:34px;font-weight:600;color:var(--ink)}.pricing-head .bar{width:40px;height:2px;background:var(--green-light);margin:14px auto 0}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.pricing-card{background:#fff;border-radius:10px;padding:32px 36px;border:1px solid var(--line)}.pricing-card.campaign{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.pricing-card .pc-label{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--green);margin-bottom:12px}.pricing-card.campaign .pc-label{color:#d4b96a}.pricing-card .pc-price{font-family:Shippori Mincho,serif;font-size:48px;font-weight:700;color:var(--green-dark);line-height:1;margin-bottom:6px}.pricing-card.campaign .pc-price{color:#d4b96a;font-size:40px}.pricing-card.campaign .pc-price .strike{font-size:22px;text-decoration:line-through;opacity:.6;margin-right:8px}.pricing-card .pc-tax{font-size:13px;color:var(--ink-soft);margin-bottom:12px}.pricing-card.campaign .pc-tax{opacity:.7;color:#fff}.pricing-card .pc-note{font-size:13px;color:var(--ink-soft)}.pricing-card.campaign .pc-note{color:hsla(0,0%,100%,.85)}.pricing-regular{background:#fff;border-radius:10px;padding:28px 36px;border:1px solid var(--line)}.pricing-regular .pr-label{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--green);margin-bottom:10px}.pricing-regular .pr-title{font-family:Shippori Mincho,serif;font-size:22px;font-weight:600;color:var(--ink);margin-bottom:8px}.pricing-regular .pr-price{font-size:15px;color:var(--ink);margin-bottom:12px}.pricing-regular .pr-list{list-style:none;display:flex;gap:24px;flex-wrap:wrap}.pricing-regular .pr-list li{font-size:13px;color:var(--ink-soft);padding-left:14px;position:relative}.pricing-regular .pr-list li:before{content:"※";position:absolute;left:0;color:var(--green-light)}@media(max-width:768px){.pricing-grid{grid-template-columns:1fr}.pricing-regular .pr-list{flex-direction:column;gap:6px}}.faq{background:var(--cream);padding:72px 0}.faq-head{text-align:center;margin-bottom:48px}.faq-head .en{font-size:11px;letter-spacing:.3em;color:var(--green);margin-bottom:8px}.faq-head h2{font-family:Shippori Mincho,serif;font-size:34px;font-weight:600;color:var(--ink)}.faq-head .bar{width:40px;height:2px;background:var(--green-light);margin:14px auto 0}.faq-list{max-width:760px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-q{display:flex;align-items:center;gap:16px;padding:20px 0;cursor:pointer;list-style:none}.faq-q::-webkit-details-marker,.faq-q::marker{display:none}.faq-q .ql{font-family:Shippori Mincho,serif;font-size:14px;font-weight:700;color:var(--green);flex:none}.faq-q .qt{font-size:15px;color:var(--ink);flex:1;font-weight:500}.faq-q .qi{flex:none;width:24px;height:24px;border-radius:50%;border:1px solid var(--green-light);display:flex;align-items:center;justify-content:center;color:var(--green);font-size:16px;transition:transform .3s}details[open] .faq-q .qi{transform:rotate(45deg)}.faq-a{padding:0 0 20px 40px;font-size:14px;color:var(--ink-soft);line-height:1.9}.shopinfo{background:var(--beige-deep);padding:72px 0}.shopinfo-head{text-align:center;margin-bottom:48px}.shopinfo-head .en{font-size:11px;letter-spacing:.3em;color:var(--green);margin-bottom:8px}.shopinfo-head h2{font-family:Shippori Mincho,serif;font-size:34px;font-weight:600;color:var(--ink)}.shopinfo-head .bar{width:40px;height:2px;background:var(--green-light);margin:14px auto 0}.shopinfo-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:start}.shopinfo-table{width:100%;border-collapse:collapse}.shopinfo-table tr{border-bottom:1px solid var(--line)}.shopinfo-table th{width:100px;padding:14px 0;font-size:13px;font-weight:600;color:var(--green-dark);text-align:left;vertical-align:top;white-space:nowrap}.shopinfo-table td{padding:14px 0;font-size:14px;color:var(--ink);line-height:1.8}.shopinfo-map{border-radius:8px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08)}.shopinfo-map iframe{width:100%;height:320px;border:0;display:block}.map-ph{width:100%;height:320px;background:var(--beige);display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:13px;color:var(--ink-soft);border:1px dashed var(--line)}@media(max-width:768px){.shopinfo-inner{grid-template-columns:1fr}}.program{background:var(--cream);padding:72px 0}.program-head{text-align:center;margin-bottom:52px}.program-head .en{font-size:11px;letter-spacing:.3em;color:var(--green);margin-bottom:8px}.program-head h2{font-family:Shippori Mincho,serif;font-size:32px;font-weight:600;color:var(--ink)}.program-head h2 .x{color:var(--green-light);margin:0 8px}.program-head .bar{width:40px;height:2px;background:var(--green-light);margin:14px auto 0}.program-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px;position:relative}.program-cols:after{content:"→";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 14px rgba(90,107,74,.3);z-index:2}.prog-col{background:#fff;border-radius:10px;padding:32px 36px;border:1px solid var(--line)}.prog-col .step-label{font-size:11px;letter-spacing:.2em;color:var(--green);font-weight:600;margin-bottom:10px}.prog-col h3{font-family:Shippori Mincho,serif;font-size:28px;font-weight:700;color:var(--ink);margin-bottom:6px}.prog-col h3 .sub{font-size:16px;font-weight:400;color:var(--ink-soft);margin-left:6px}.prog-col .prog-desc{font-size:13px;color:var(--ink-soft);margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.prog-col .prog-list{list-style:none;display:flex;flex-direction:column;gap:14px}.prog-col .prog-list li{font-size:14px;color:var(--ink);display:flex;gap:10px;align-items:flex-start}.prog-col .prog-list li .dot{color:var(--green);font-size:8px;flex:none;margin-top:6px}.prog-col .prog-list .li-main{font-weight:600}.prog-col .prog-list .li-sub{font-size:12px;color:var(--ink-soft);display:block;margin-top:2px}.prog-tags{background:var(--beige);border-radius:10px;padding:24px 36px;text-align:center}.prog-tags .pt-label{font-size:12px;color:var(--green);letter-spacing:.08em;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:12px}.prog-tags .pt-label:after,.prog-tags .pt-label:before{content:"";flex:1;max-width:80px;height:1px;background:var(--green-light)}.prog-tags .pt-items{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.prog-tags .pt-item{font-family:Shippori Mincho,serif;font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--line);padding:8px 22px;border-radius:30px}@media(max-width:768px){.program-cols{grid-template-columns:1fr;gap:16px}.program-cols:after{display:none}.prog-col{padding:24px 20px}.prog-tags{padding:20px 16px}}.concept-text-only{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.concept-text-steps{display:flex;flex-direction:column;gap:18px}.concept-text-step{display:flex;gap:16px;align-items:flex-start}.cts-num{flex:none;width:36px;height:36px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700}.cts-body h5,.cts-num{font-family:Shippori Mincho,serif}.cts-body h5{font-size:17px;font-weight:600;color:var(--ink);margin-bottom:4px}.cts-body .cts-sub{font-size:12px;color:var(--green);margin-bottom:4px}.cts-body p{font-size:13px;color:var(--ink-soft);line-height:1.7}@media(max-width:768px){.concept-text-only{grid-template-columns:1fr}}.float-cta{display:none}@media(max-width:880px){.float-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:90;background:var(--green);padding:10px 16px;gap:10px;box-shadow:0 -4px 16px rgba(0,0,0,.15)}.float-cta a{flex:1;text-align:center;background:#fff;color:var(--green-dark);text-decoration:none;font-weight:600;padding:13px;border-radius:6px;font-size:15px}body{padding-bottom:64px}}