/* みんカレ新LP / approved concept 03. Keep app styles independent. */
:root{--v2-blue:#0663f7;--v2-blue2:#0085ff;--v2-ink:#07163a;--v2-muted:#4b5e7c;--v2-line:#e2eeff;--v2-page:#f5faff}
.mc-v2-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important}
body.leading-normal{background:#f5faff!important;background-image:radial-gradient(ellipse at 87% 11%,#d8edff 0,transparent 50%),radial-gradient(ellipse at 15% 33%,#eaf6ff 0,transparent 58%)!important;color:var(--v2-ink)!important;font-family:system-ui,-apple-system,'Hiragino Kaku Gothic ProN','Noto Sans JP',Meiryo,sans-serif!important}
.mc-nav{top:0!important;left:0!important;transform:none!important;width:100%!important;border-radius:0!important;border:0!important;border-bottom:1px solid #e7f0ff!important;background:rgba(255,255,255,.96)!important;box-shadow:none!important;z-index:100!important}
.mc-nav-inner{max-width:1300px!important;min-height:71px!important;margin:0 auto!important;padding:8px 30px!important}
.mc-brand{font-size:25px!important;font-weight:900!important;letter-spacing:-.055em!important}.mc-brand img{width:34px!important;height:34px!important}
.mc-nav-links{gap:30px!important}.mc-nav-links a{font-size:13px!important;color:#17284f!important}.mc-nav-actions{gap:10px!important}
.mc-nav-login{color:#0b1f4a!important;background:#fff!important;border:1px solid #e1ebfa!important}
.mc-nav-cta{background:linear-gradient(135deg,#0e8bff,#0057e7)!important;color:white!important;border:0!important;border-radius:11px!important;font-weight:800!important;padding:13px 23px!important}
.mc-mobile-menu{display:none}
.mc-v2-hero{position:relative!important;z-index:1;overflow:hidden;background:radial-gradient(ellipse at 84% 36%,#cfeaff 0,#eaf6ff 38%,transparent 65%),linear-gradient(155deg,#fff 5%,#f3faff 65%,#dff2ff 100%)!important;padding:105px 0 0!important;min-height:578px!important}
.mc-v2-hero::before{display:none!important}.mc-v2-swoosh{position:absolute;z-index:0;inset:0;opacity:.7;pointer-events:none;background:radial-gradient(ellipse 50% 40% at -11% 54%,#cce8fe 0%,transparent 98%),radial-gradient(ellipse 35% 24% at 96% 85%,#b7dfff 0%,transparent 100%);}
.mc-v2-main{width:min(1300px,calc(100% - 72px));margin:0 auto;position:relative;display:grid;grid-template-columns:.90fr 1.1fr;gap:28px;align-items:center;min-height:475px}
.mc-v2-copy{position:relative;z-index:5;padding-bottom:38px;padding-left:8px}
.mc-v2-pill{display:inline-flex;align-items:center;background:#e9f5ff;border-radius:99px;color:#0563ed;font-size:14px;font-weight:800;padding:8px 14px;margin:0 0 20px;letter-spacing:.015em}
.mc-v2-copy h1{font-family:system-ui,-apple-system,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif!important;font-size:clamp(45px,4.7vw,73px)!important;font-weight:900!important;letter-spacing:-.075em!important;line-height:1.16!important;color:#050d28!important;margin:0 0 19px!important;white-space:nowrap}
.mc-v2-copy h1 span{display:block;color:#0760f4!important}
.mc-v2-lead{max-width:565px;color:#344967;font-size:16px;font-weight:500;line-height:1.75;margin:0 0 21px}
.mc-v2-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.mc-v2-primary{display:inline-flex;gap:24px;align-items:center;justify-content:center;background:linear-gradient(105deg,#158fff,#0053ef);border-radius:12px;padding:16px 32px;color:#fff!important;font-weight:900;font-size:17px;text-decoration:none!important;box-shadow:0 13px 26px -18px #125feb;min-width:278px}
.mc-v2-primary:hover{background:linear-gradient(110deg,#047dea,#0648c8)}
.mc-v2-secondary{text-decoration:none!important;color:#005ff5!important;font-weight:800;font-size:14px}
.mc-v2-secondary:hover{text-decoration:underline!important}
.mc-v2-perks{display:flex;gap:18px;flex-wrap:wrap;margin-top:17px;color:#42577b;font-size:11px;font-weight:750}
.mc-v2-perks span::before{content:'✓';display:inline-flex;justify-content:center;align-items:center;width:17px;height:17px;border-radius:100%;color:#0374fc;background:#deedff;margin-right:6px;font-weight:900}
.mc-v2-visual{position:relative;height:470px;min-width:0;margin:0;isolation:isolate}
.mc-v2-halo{position:absolute;width:630px;height:550px;border-radius:52%;background:radial-gradient(ellipse at center,#d5ecff 1%,#c5e4ff 42%,transparent 73%);top:-63px;left:4%;z-index:-1}
.mc-v2-dots{position:absolute;width:220px;height:220px;top:42px;left:12%;border:4px dotted #0d7cfa;border-right:0;border-bottom:0;border-radius:50%;opacity:.75;transform:rotate(7deg);z-index:0}
.mc-v2-phone{position:absolute;z-index:3;background:#101825;border:7px solid #101825;border-radius:44px;box-shadow:0 28px 50px -18px rgba(11,28,65,.3),inset 0 0 0 2px #2f3948;overflow:hidden}
.mc-v2-phone-calendar{width:282px;height:480px;top:-10px;left:25%;transform:rotate(-5deg);z-index:4}
.mc-v2-phone-booking{width:254px;height:416px;top:48px;right:7%;transform:rotate(6deg);z-index:3}
.mc-v2-notch{position:absolute;z-index:5;top:-1px;left:50%;transform:translateX(-50%);background:#111725;width:104px;height:22px;border-radius:0 0 16px 16px}
.mc-v2-phone-content{position:relative;height:100%;background:#fff;border-radius:36px;overflow:hidden;color:#112547;padding-top:20px}
.mc-v2-app-header{height:36px;border-bottom:1px solid #edf2f8;display:flex;gap:4px;align-items:center;padding:0 12px;font-size:13px;font-weight:900;color:#15284e}
.mc-v2-mark{display:grid;place-items:center;width:18px;height:18px;background:#0b72f9;color:white;border-radius:5px;font-size:13px}.mc-v2-menu-glyph{margin-left:auto;color:#46648a;font-size:12px}
.mc-v2-calendar-top{display:flex;align-items:center;justify-content:space-around;margin:8px 0 4px;font-size:12px}
.mc-v2-calendar-top span{font-size:20px;color:#6084b1}.mc-v2-week-days{display:grid;grid-template-columns:repeat(5,1fr);margin:0 7px;padding-bottom:6px;border-bottom:1px solid #e2edf9;text-align:center}
.mc-v2-week-days span{font-size:9px;color:#536a8e}.mc-v2-week-days b{display:block;font-size:12px;color:#1f355d}.mc-v2-week-days .selected b{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#116af8;color:white;margin:0 auto}
.mc-v2-timeline{position:relative;display:flex;height:317px;overflow:hidden}.mc-v2-times{width:34px;display:flex;flex-direction:column;align-items:center;justify-content:space-around;color:#8aa1c0;font-size:9px}.mc-v2-calendar-grid{position:relative;flex:1;background:linear-gradient(to right,#e5effc 1px,transparent 1px),repeating-linear-gradient(to bottom,transparent 0,transparent 38px,#e5effc 39px,#e5effc 40px);background-size:20% 100%,100% 100%;border-left:1px solid #e5effc}
.mc-v2-event{position:absolute;background:#cae4ff;border-radius:3px;border-left:3px solid #70affd;font-size:8px;padding:3px;color:#2b64ac;font-weight:800;line-height:1.3}.mc-v2-event.e1{left:4%;top:16%;width:39%;height:17%}.mc-v2-event.e2{left:49%;top:26%;width:42%;height:20%;background:#dff4ea;border-color:#7fdcb3;color:#42886b}.mc-v2-event.e3{left:5%;top:49%;width:37%;height:11%;background:#ffebcc;border-color:#f7b95d;color:#9c763e}.mc-v2-event.e4{left:52%;top:62%;width:42%;height:15%;background:#eee0ff;border-color:#bc8df6;color:#815fc0}.mc-v2-event.e5{left:4%;top:77%;width:39%;height:16%;}
.mc-v2-app-tab{display:flex;align-items:center;justify-content:space-around;border-top:1px solid #e3edfa;height:43px;color:#1767cf;background:#fff}.mc-v2-app-tab span{text-align:center;font-size:16px}.mc-v2-app-tab small{display:block;font-size:7px}
.mc-v2-booking-title{padding:18px 14px 12px;font-size:15px;font-weight:900}.mc-v2-booking-title small{display:block;font-size:9px;color:#657a9c;font-weight:550;line-height:1.6}
.mc-v2-booking-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:0 12px}.mc-v2-booking-days span{background:#f1f5fc;border-radius:9px;text-align:center;padding:8px 2px;color:#526989;font-size:10px;line-height:1.45}.mc-v2-booking-days span strong{font-size:12px}.mc-v2-booking-days .selected{background:#0a67ef;color:white}
.mc-v2-booking-label{font-weight:900;font-size:11px;padding:17px 11px 9px;color:#142d54}
.mc-v2-available{display:flex;flex-direction:column;gap:7px;padding:0 12px}.mc-v2-available span{display:grid;place-items:center;height:35px;color:#0673ed;border:1.5px solid #9fc6ff;border-radius:8px;font-size:11px;font-weight:800}.mc-v2-available .selected{background:#086af0;color:#fff;border-color:#086af0}
.mc-v2-booking-next{display:grid;place-items:center;margin:13px 13px 0;height:29px;font-size:10px;border-radius:6px;background:#e8f2ff;color:#0667e8;font-weight:900}
.mc-v2-icon-float{position:absolute;z-index:5;width:61px;height:61px;border-radius:17px;background:white;box-shadow:0 8px 23px -12px #2477a9;display:grid;place-items:center}.mc-v2-icon-float img{height:60px;width:60px;object-fit:contain}
.mc-v2-line-float{top:50px;left:4%;transform:rotate(-11deg);background:transparent}.mc-v2-calendar-float{top:146px;left:12%;transform:rotate(7deg)}
.mc-v2-gcal-icon{width:36px;height:37px;border-radius:7px;display:grid;place-items:center;background:linear-gradient(90deg,#4285f4 0 21%,#fff 21% 76%,#e94235 76%),linear-gradient(#fbbc05,#34a853);box-shadow:0 4px 9px #1967ce21;position:relative;color:#1558ca;font-weight:800;font-size:18px;overflow:hidden}.mc-v2-gcal-icon::before{content:'';position:absolute;top:0;left:0;right:0;height:7px;background:#4285f4}.mc-v2-gcal-icon b{z-index:1;margin-top:5px}
.mc-v2-avatar{position:absolute;z-index:5;background:#d0e7ff;border:3px solid white;border-radius:100%;width:58px;height:58px;display:grid;place-items:center;font-size:33px;box-shadow:0 6px 15px #2765b135}.mc-v2-av1{top:0;left:17%}.mc-v2-av2{top:232px;left:3%}.mc-v2-av3{top:360px;left:14%}
.mc-v2-float-msg{position:absolute;top:95px;right:0;transform:rotate(-7deg);z-index:6;background:white;border-radius:14px;padding:11px 17px;text-align:center;color:#176bf4;box-shadow:0 5px 18px #0957a11c;font-size:13px;font-weight:900}
.mc-v2-float-note{position:absolute;right:12px;bottom:3px;font-size:9px;z-index:6;color:#6480a5;background:#eff7ffcc;padding:3px 8px;border-radius:9px}
.mc-v2-feature-section{position:relative!important;z-index:5;background:none!important;padding:0 28px 18px!important;margin:-4px auto 0!important;width:min(1330px,100%)}
.mc-v2-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.mc-v2-feature{background:#fff;display:flex;gap:13px;align-items:center;padding:18px 14px;border:1px solid #e5f0ff;border-radius:17px;min-height:104px;box-shadow:0 8px 24px #4c8acd13;text-decoration:none!important;transition:transform .2s,box-shadow .2s}.mc-v2-feature:hover{transform:translateY(-3px);box-shadow:0 10px 24px #2b77db22}.mc-v2-icon{width:49px;height:49px;display:grid;place-items:center;flex:none;border-radius:13px;background:#e5f2ff;color:#0764ff;font-size:34px;font-weight:900}.mc-v2-icon .mc-v2-gcal-icon{width:47px;height:47px;font-size:21px}.mc-v2-icon .mc-v2-gcal-icon::before{height:9px}.mc-v2-icon.mc-v2-line{background:none;border-radius:0}.mc-v2-icon.mc-v2-line img{display:block;width:49px;height:49px;object-fit:contain}.mc-v2-icon.mc-v2-link{background:linear-gradient(135deg,#6c9dff,#1148f8);color:#fff;font-size:34px}.mc-v2-icon.mc-v2-group{background:linear-gradient(130deg,#e0f3ff,#b5dcfe);font-size:36px}
.mc-v2-feature-text{display:block;min-width:0;flex:1}.mc-v2-feature strong{display:block;color:#112345!important;font-size:13.5px;font-weight:900;letter-spacing:-.02em;white-space:nowrap}.mc-v2-feature small{display:block;color:#586c89;font-size:10.8px;font-weight:500;line-height:1.65;margin-top:6px}.mc-v2-chevron{color:#065bee;font-size:25px;margin-left:auto}
.mc-v2-steps{position:relative;margin:0 auto 20px;width:min(1320px,calc(100% - 36px));padding:17px 25px 19px;border-radius:55px 55px 20px 20px;background:rgba(255,255,255,.82);box-shadow:0 10px 30px #1b7dd508}
.mc-v2-steps-kicker{text-align:center;color:#0970f4;font-size:12px;font-weight:900;margin:0 0 5px}.mc-v2-steps h2{text-align:center;font-size:25px;line-height:1.5;font-weight:900;color:#102346;margin:0 0 15px}
.mc-v2-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.mc-v2-step{position:relative;border-radius:22px;background:linear-gradient(128deg,#fff,#f1f8ff);border:1px solid #e4efff;min-height:170px;padding:21px 16px;overflow:hidden;box-shadow:0 9px 23px #1b68cf0c}.mc-v2-step-text{position:relative;z-index:2;max-width:64%}.mc-v2-num{display:grid;place-items:center;float:left;margin-right:10px;width:42px;height:42px;border-radius:50%;background:linear-gradient(140deg,#2b9bff,#0061f4);color:white;font-size:20px}.mc-v2-step h3{padding-top:6px;margin:0 0 10px;color:#13264a;font-size:16px;font-weight:900;white-space:nowrap}.mc-v2-step p{clear:both;margin:0;color:#4f6585;line-height:1.7;font-size:11.5px}.mc-v2-step-illo{position:absolute;right:6px;bottom:0;width:46%;height:120px;display:flex;align-items:flex-end;justify-content:center;background:radial-gradient(ellipse at center,#cce8ff,transparent 73%);}.mc-v2-illo-person{font-size:72px;line-height:1.25;filter:drop-shadow(0 3px 5px #5982ad36)}.mc-v2-illo-schedule{display:flex;position:absolute;right:0;bottom:16px;flex-direction:column;border:1px solid #cfe6ff;border-radius:9px;background:white;padding:6px;box-shadow:0 5px 13px #5c8acc29;color:#175ca5;font-size:8px;line-height:1.8}.mc-v2-illo-schedule span{font-size:8px}.mc-v2-illo-phone{background:#1a5adc;border:7px solid #12274c;color:#fff;border-radius:15px;font-size:40px;width:75px;height:115px;text-align:center;padding-top:18px;transform:rotate(6deg)}.mc-v2-illo-line{position:absolute;left:0;top:-8px;width:44px;height:44px}.mc-v2-illo-url{position:absolute;bottom:18px;left:-27px;white-space:nowrap;color:#0b6bef;border:1px solid #cae5ff;background:#fff;border-radius:9px;padding:5px;font-size:9px;font-weight:800;box-shadow:0 4px 10px #2883db20}.mc-v2-illo-done{position:absolute;top:0;right:0;background:#0b76f8;border-radius:30px;color:#fff;padding:6px 9px;font-size:11px;font-weight:900;box-shadow:0 5px 10px #1769c22a}
.mc-v2-steps-link{text-align:center;margin-top:15px;font-size:12px;font-weight:800}.mc-v2-steps-link a{color:#0765ed;text-decoration:none}
@media(max-width:1100px){.mc-v2-main{width:calc(100% - 42px);grid-template-columns:.92fr 1.08fr;gap:10px}.mc-v2-copy h1{font-size:clamp(41px,5vw,56px)!important}.mc-v2-phone-calendar{left:18%}.mc-v2-phone-booking{right:0}.mc-v2-feature strong{white-space:normal}.mc-v2-feature{padding:15px 11px}.mc-v2-feature-text small{font-size:10px}}
@media(max-width:767px){
.mc-nav-inner{padding:7px 15px!important;min-height:65px!important}.mc-brand{font-size:23px!important}.mc-nav-links{display:none!important}.mc-nav-actions{margin-left:auto!important}.mc-nav-login{display:none!important}.mc-nav-cta{font-size:12px!important;padding:12px 14px!important}
.mc-mobile-menu{display:block;position:relative;margin-left:4px}.mc-mobile-menu summary{list-style:none;cursor:pointer;color:#12264b;font-size:21px;padding:7px}.mc-mobile-menu summary::-webkit-details-marker{display:none}.mc-mobile-menu[open] .mc-mobile-menu-links{position:absolute;top:48px;right:0;background:white;border-radius:15px;padding:10px;display:flex;flex-direction:column;width:180px;gap:0;box-shadow:0 10px 30px #153f7940;border:1px solid #dce9f9}.mc-mobile-menu-links a{text-decoration:none;color:#17365f;font-size:13px;font-weight:700;padding:12px}
.mc-v2-hero{padding:92px 0 2px!important}.mc-v2-main{display:block;min-height:0;width:calc(100% - 34px)}.mc-v2-copy{padding:0 0 6px!important}.mc-v2-pill{font-size:11px;margin:0 0 15px!important;padding:6px 10px}.mc-v2-copy h1{font-size:clamp(40px,10.7vw,57px)!important;line-height:1.13!important;margin:0 0 16px!important}.mc-v2-lead{font-size:13.8px;line-height:1.7;max-width:460px;margin-bottom:16px}.mc-v2-desktop-break{display:none}.mc-v2-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch}.mc-v2-primary{font-size:16px;padding:14px 17px;min-width:0;width:100%}.mc-v2-secondary{text-align:center;font-size:13px}.mc-v2-perks{gap:7px 17px;font-size:10px;justify-content:flex-start;margin-top:13px}
.mc-v2-visual{width:min(440px,100%);height:387px;margin:20px auto 0}.mc-v2-halo{width:480px;height:420px;top:-28px;left:-10%;}.mc-v2-phone-calendar{top:17px;left:13%;width:210px;height:354px;border-width:5px;border-radius:32px;transform:rotate(-4deg)}.mc-v2-phone-booking{top:72px;right:0%;width:185px;height:295px;border-width:5px;border-radius:30px;transform:rotate(6deg)}.mc-v2-phone-content{border-radius:25px;padding-top:16px}.mc-v2-notch{width:75px;height:15px;border-radius:0 0 10px 10px}.mc-v2-app-header{height:28px;padding:0 7px;font-size:10px}.mc-v2-mark{width:15px;height:15px;font-size:9px}.mc-v2-calendar-top{font-size:10px;margin:4px 0}.mc-v2-calendar-top span{font-size:16px}.mc-v2-week-days b{font-size:10px}.mc-v2-week-days span{font-size:8px}.mc-v2-timeline{height:234px}.mc-v2-times{width:30px;font-size:7px}.mc-v2-event{font-size:6px;padding:2px}.mc-v2-app-tab{height:28px}.mc-v2-app-tab span{font-size:13px}.mc-v2-app-tab small{font-size:6px}.mc-v2-booking-title{font-size:12px;padding:12px 8px 7px}.mc-v2-booking-title small{font-size:7px}.mc-v2-booking-days{padding:0 6px;gap:2px}.mc-v2-booking-days span{font-size:8px;padding:5px 0;border-radius:6px}.mc-v2-booking-days span strong{font-size:9px}.mc-v2-booking-label{font-size:8px;padding:9px 7px 5px}.mc-v2-available{gap:5px;padding:0 7px}.mc-v2-available span{height:26px;font-size:8px;border-radius:6px}.mc-v2-booking-next{margin:7px;font-size:7px;height:21px}.mc-v2-icon-float{height:45px;width:45px;border-radius:11px}.mc-v2-icon-float img{width:45px;height:45px}.mc-v2-line-float{top:24px;left:1%}.mc-v2-calendar-float{top:131px;left:3%}.mc-v2-gcal-icon{width:30px;height:30px;font-size:15px}.mc-v2-avatar{width:45px;height:45px;font-size:25px}.mc-v2-av1{top:4px;left:10%}.mc-v2-av2{top:210px;left:-3%}.mc-v2-av3{top:300px;left:1%}.mc-v2-float-msg{font-size:10px;top:0;right:0;padding:6px}.mc-v2-float-note{font-size:7px;bottom:2px;right:0}
.mc-v2-feature-section{width:100%!important;padding:6px 13px 15px!important;margin:0!important}.mc-v2-feature-grid{display:grid;grid-template-columns:1fr;gap:9px}.mc-v2-feature{min-height:76px;gap:15px;border-radius:16px;padding:11px 15px}.mc-v2-icon{width:50px;height:50px}.mc-v2-feature strong{font-size:15px}.mc-v2-feature small{font-size:11px;margin-top:2px}.mc-v2-steps{width:calc(100% - 20px);border-radius:30px 30px 16px 16px;padding:22px 9px 19px;margin:0 auto 14px}.mc-v2-steps h2{font-size:23px;margin-bottom:14px}.mc-v2-steps-kicker{font-size:10px}.mc-v2-step-grid{grid-template-columns:1fr;gap:9px}.mc-v2-step{min-height:148px;padding:18px 18px}.mc-v2-step h3{font-size:15px}.mc-v2-step p{font-size:11px;max-width:200px}.mc-v2-step-illo{height:113px;width:42%}.mc-v2-illo-person{font-size:69px}.mc-v2-steps-link{font-size:12px}
}
@media(max-width:380px){.mc-v2-copy h1{font-size:38px!important}.mc-v2-visual{height:355px}.mc-v2-phone-calendar{left:10%;width:193px;height:328px}.mc-v2-phone-booking{right:0;width:173px;height:278px;top:62px}.mc-v2-timeline{height:211px}.mc-v2-float-msg{display:none}.mc-v2-perks{gap:6px}}
@media(prefers-reduced-motion:reduce){.mc-v2-feature{transition:none}}

/* Desktop viewport matching approved composition: hero + four tiles + first step row. */
@media(min-width:768px){
.mc-v2-hero{padding-top:92px!important;min-height:516px!important}
.mc-v2-main{min-height:424px!important}
.mc-v2-visual{height:425px!important}
.mc-v2-copy{padding-bottom:0!important}
.mc-v2-phone-calendar{top:-23px}
.mc-v2-phone-booking{top:35px}
}
.mc-v2-app-header img.mc-v2-mark{width:18px;height:18px;object-fit:contain;border-radius:4px;background:transparent;}
.mc-v2-phone-status{display:none;}
@media(max-width:767px){
.mc-v2-phone-status{display:block;width:139px;height:240px;right:0;top:-9px;transform:rotate(8deg);z-index:1;opacity:.96;border-width:5px;border-radius:30px}
.mc-v2-phone-status .mc-v2-phone-content{padding-top:16px}
.mc-v2-phone-status .mc-v2-booking-title{font-size:9px;padding:8px}
.mc-v2-phone-status .mc-v2-app-header{font-size:9px}
.mc-v2-phone-status .mc-v2-booking-next{background:#1c70f1;color:white}
}