/* Homepage hero: align the heading and image, and group setup cost with monthly pricing. */
body.mm-ui.site-design.site-home .hero.hero-refined { padding:48px 0 32px; }
body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:44px; align-items:start; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-copy { display:block; }
body.mm-ui.site-design.site-home .hero.hero-refined h1 { margin:0; font-size:43px; font-weight:800; line-height:1.48; letter-spacing:-.045em; text-wrap:initial; max-width:none; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-line { white-space:nowrap; }
body.mm-ui.site-design.site-home .hero.hero-refined .lead { margin:20px 0 24px; font-size:15px; line-height:1.95; color:#5c635d; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns { display:grid; grid-template-columns:1.1fr 1fr; gap:12px; margin:18px 0 0; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns .btn { padding:15px 12px; min-height:52px; font-size:14px; border-radius:7px; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns .primary { display:flex; justify-content:center; align-items:center; gap:18px; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns .primary::after { content:''; width:7px; height:7px; border-top:1.5px solid; border-right:1.5px solid; transform:rotate(45deg); }
body.mm-ui.site-design.site-home .hero.hero-refined .need { margin:18px 0 0; font-size:11px; line-height:1.8; color:#5c635d; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual { padding-top:4px; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { display:block; height:558px; aspect-ratio:auto; object-fit:cover; object-position:80% center; border-radius:14px; }
body.mm-ui.site-design.site-home .hero.hero-refined .photo figcaption { padding-top:10px; font-size:11px; display:flex; align-items:center; gap:10px; }
body.mm-ui.site-design.site-home .hero.hero-refined .photo figcaption b { border:0; padding:0; color:#5c635d; font-size:11px; font-weight:500; }
body.mm-ui.site-design.site-home .hero.hero-refined .image-note { margin:5px 0 0; font-size:10px; line-height:1.7; }
@media(min-width:768px) and (max-width:1099px) {
 body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { gap:28px; }
 body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:clamp(26px,3.5vw,38px); }
 body.mm-ui.site-design.site-home .hero.hero-refined .lead { font-size:14px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .btns { grid-template-columns:1fr; gap:9px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:580px; }
}
/* 料金の別案：初期費用を上段、月額を白い下段にまとめる。 */
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer { display:grid; grid-template-columns:minmax(0,1fr); gap:0; padding:0; border:1px solid #d7e1cb; border-radius:12px; overflow:hidden; background:#fff; color:#064b35; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .zero-hero { grid-area:1/1; display:flex; align-items:center; justify-content:center; gap:16px; padding:13px 22px; margin:0; border:0; border-radius:0; background:#e7f9c2; color:#064b35; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-main { display:inline-flex; flex-direction:row; align-items:center; gap:16px; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-label { font-size:17px; font-weight:700; line-height:1.5; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero b { color:#064b35; font-size:56px; line-height:1.1; letter-spacing:-.04em; font-weight:800; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-currency { font-size:26px; margin-left:4px; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-end { width:auto; font-size:13px; font-weight:600; white-space:nowrap; color:#064b35; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .pricechip { grid-area:2/1; display:flex; align-items:baseline; justify-content:center; column-gap:7px; row-gap:3px; margin:0; padding:19px 20px 20px; width:auto; min-width:0; border:0; border-radius:0; background:#fff; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip > span:first-child { flex-basis:auto; margin:0 12px 0 0; font-size:12px; color:#5c635d; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .text-unit { font-size:inherit; color:inherit; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { font-size:39px; color:#064b35; line-height:1.25; letter-spacing:-.035em; white-space:nowrap; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .monthly-currency { font-size:20px; margin-left:3px; color:inherit; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .tx { font-size:12px; font-weight:400; color:#5c635d; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .sub { display:flex; flex-wrap:wrap; justify-content:center; flex-basis:100%; min-width:0; margin:6px 0 0; font-size:12px; line-height:1.8; white-space:normal; color:#5c635d; }
@media(min-width:768px) and (max-width:1099px) {
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .zero-hero { padding:14px 16px; gap:10px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-main { gap:8px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-label { font-size:14px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero b { font-size:48px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-end { font-size:11px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .pricechip > span:first-child { flex-basis:100%; margin:0 0 3px; text-align:center; }
 body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { font-size:36px; }
}
@media(max-width:767px) {
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer { grid-row:3; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .zero-hero { padding:14px 15px; gap:10px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-main { gap:10px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-label { font-size:14px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero b { font-size:48px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-currency { font-size:24px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-end { font-size:12px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .pricechip { padding:16px 16px 18px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .pricechip > span:first-child { flex-basis:100%; margin:0 0 2px; text-align:center; font-size:12px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { font-size:37px; }
}
@media(max-width:359px) {
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .zero-hero { padding:13px 10px; gap:8px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-main { gap:8px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-label { font-size:13px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero b { font-size:42px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero-end { font-size:10px; }
}
@media(max-width:767px) {
 body.mm-ui.site-design.site-home .hero.hero-refined { padding:28px 0 28px; }
 body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; padding-inline:22px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-copy { display:contents; }
 body.mm-ui.site-design.site-home .hero.hero-refined h1 { grid-row:1; font-size:clamp(25px,7.1vw,35px); line-height:1.5; margin:0; }
 body.mm-ui.site-design.site-home .hero.hero-refined .lead { grid-row:2; margin:0; font-size:14px; line-height:1.9; }
 body.mm-ui.site-design.site-home .hero.hero-refined .btns { grid-row:4; grid-template-columns:1fr 1fr; margin:0; gap:10px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .btns .btn { padding:13px 7px; font-size:12px; min-height:48px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .btns .primary { gap:9px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual { grid-row:5; padding:0; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:auto; aspect-ratio:1.25; object-position:80% center; }
 body.mm-ui.site-design.site-home .hero.hero-refined .need { grid-row:6; margin:0; font-size:10px; }
}
@media(max-width:359px) {
 body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { padding-inline:18px; }
 body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:24px; }
}
/* 採用案1：写真と料金を左右に配置し、本文・補足を黒く大きく表示。 */
body.mm-ui.site-design.site-home .hero.hero-refined { color:#111; }
body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; }
body.mm-ui.site-design.site-home .hero.hero-refined h1 { color:#111; font-size:36px; line-height:1.6; }
body.mm-ui.site-design.site-home .hero.hero-refined .lead { color:#111; font-size:18px; line-height:1.8; font-weight:600; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer { display:block; border:0; border-radius:0; background:#fff; overflow:visible; color:#111; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .zero-hero { display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:baseline; gap:9px; padding:0; background:transparent; color:#111; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-main { align-items:baseline; gap:9px; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-label { font-size:16px; font-weight:700; color:#111; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero b { font-size:54px; color:#111; background:linear-gradient(transparent 74%,#d6fa71 74%); padding:0 3px; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-currency { font-size:25px; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-end { color:#111; font-size:16px; font-weight:700; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .pricechip { display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:baseline; margin-top:18px; padding:17px 0 0; border-top:1px solid #e0e6e9; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip > span:first-child { flex-basis:100%; text-align:left; margin:0 0 5px; font-size:16px; color:#111; font-weight:600; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { color:#111; font-size:38px; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .monthly-currency { font-size:21px; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .tx { color:#111; font-size:16px; font-weight:600; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .sub { justify-content:flex-start; color:#111; font-size:16px; font-weight:600; }
body.mm-ui.site-design.site-home .hero.hero-refined .need,body.mm-ui.site-design.site-home .hero.hero-refined .image-note,body.mm-ui.site-design.site-home .hero.hero-refined .photo figcaption,body.mm-ui.site-design.site-home .hero.hero-refined .photo figcaption b { color:#111; font-size:16px; font-weight:600; line-height:1.8; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns .btn { color:#111; font-size:16px; font-weight:800; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:660px; object-position:61% center; }
@media(min-width:768px) and (max-width:1099px) { body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:clamp(25px,3.2vw,34px); } }
@media(max-width:767px) {
 body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { grid-template-columns:minmax(0,1fr); }
 body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:clamp(24px,6.5vw,30px); }
 body.mm-ui.site-design.site-home .hero.hero-refined .lead { font-size:17px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .btns { grid-template-columns:1fr; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:auto; aspect-ratio:1.1; }
}
/* 採用された白・深緑のトップデザイン。 */
body.mm-ui.site-design.site-home { --mm-green:#064b35; }
body.mm-ui.site-design.site-home .hero.hero-refined { background:#fcfbf8; padding:28px 0 36px; }
body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { gap:32px; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); }
body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:clamp(36px,4.3vw,60px); line-height:1.35; letter-spacing:-.055em; font-weight:900; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-mark { width:max-content; max-width:100%; background:linear-gradient(transparent 84%,#d6fa71 84%); }
body.mm-ui.site-design.site-home .hero-subtitle { margin:24px 0 0; font-size:20px; line-height:1.65; color:#111; font-weight:800; }
body.mm-ui.site-design.site-home .hero.hero-refined .lead { margin:16px 0 24px; font-size:16px; line-height:1.85; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer { display:grid; grid-template-columns:.8fr 1.2fr; gap:12px 20px; padding:20px 22px; background:#f1efe9; border-radius:18px; }
body.mm-ui.site-design.site-home .hero-loan-label { grid-column:1/-1; justify-self:start; padding:4px 14px; border-radius:30px; background:#d6fa71; color:#111; font-size:13px; font-weight:700; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .zero-hero { grid-area:auto; display:block; padding:0; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-main { display:flex; flex-direction:column; align-items:flex-start; gap:7px; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero b { background:none; color:#064b35; font-size:80px; padding:0; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-currency { font-size:34px; color:#111; }
body.mm-ui.site-design.site-home .hero.hero-refined .zero-end { display:block; font-size:12px; margin-top:5px; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .pricechip { grid-area:auto; border-top:0; border-left:1px solid #d5d2cb; margin:0; padding:0 0 0 20px; background:transparent; align-content:start; gap:5px; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip > span:first-child { font-size:15px; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { color:#064b35; font-size:52px; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .tx { font-size:12px; }
body.mm-ui.site-design.site-home .hero.hero-refined .pricechip .sub { font-size:13px; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns .primary,body.mm-ui.site-design.site-home .site-header .primary { background:#064b35; color:#fff; border-color:#064b35; }
body.mm-ui.site-design.site-home .hero.hero-refined .btns .btn { border-radius:7px; border-color:#064b35; min-height:60px; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual { position:relative; }
body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:720px; object-position:64% center; }
body.mm-ui.site-design.site-home .hero-monitor-example { position:absolute; z-index:1; top:38px; left:24px; display:grid; gap:7px; padding:17px 22px; border-radius:13px; background:#fff; box-shadow:0 8px 30px #0002; color:#111; font-size:14px; }
body.mm-ui.site-design.site-home .hero-monitor-example span { font-size:12px; }
body.mm-ui.site-design.site-home .hero-monitor-example small { font-size:13px; color:#064b35; font-weight:700; }
@media(min-width:768px) and (max-width:1099px) { body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:36px; } body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { font-size:37px; } }
@media(max-width:767px) {
 body.mm-ui.site-design.site-home .hero.hero-refined > .wrap { grid-template-columns:minmax(0,1fr); }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-copy { display:block; }
 body.mm-ui.site-design.site-home .hero.hero-refined h1 { font-size:clamp(30px,8vw,48px); }
 body.mm-ui.site-design.site-home .hero-subtitle { font-size:18px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .lead { font-size:16px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer { padding:18px 14px; gap:12px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .zero b { font-size:63px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .pricechip b { font-size:36px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .pricechip > span:first-child { font-size:12px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-offer > .pricechip { padding-left:12px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .btns { margin-top:18px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .need { margin-top:18px; }
 body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:auto; aspect-ratio:.95; }
 body.mm-ui.site-design.site-home .hero-monitor-example { top:20px; left:18px; padding:12px 16px; }
}

body.mm-ui.site-design.site-home .top .gnav .cta-s { background:#064b35; color:#fff; border-color:#064b35; }

/* 採用された提供画像をそのまま使用。画像内のカードと重複しないようにする。 */
body.mm-ui.site-design.site-home .hero.hero-refined .hero-visual .photo img { height:auto; width:100%; aspect-ratio:auto; object-fit:contain; object-position:center; border-radius:0; clip-path:inset(0 0 3.5% 0); margin-bottom:-3.5%; }
