/* PLAN v4.3 — keep the approved v2.5/v4.2 visual language, restore v10 content */
.plan-v43{padding:58px 0 64px!important;background:#fffdfb!important;border-bottom:1px solid #f1e8e2;}
.plan-v43 .dm-plan-layout{grid-template-columns:31% minmax(0,69%)!important;gap:34px!important;align-items:start!important;}
.plan-v43 .dm-plan-intro{padding-top:24px;}
.plan-v43 .dm-plan-intro h2{font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif!important;font-size:clamp(30px,2.45vw,39px)!important;line-height:1.48!important;font-weight:600!important;letter-spacing:-.025em!important;margin-bottom:18px!important;}
.plan-v43 .dm-plan-intro>p{max-width:315px!important;font-size:13px!important;line-height:1.95!important;color:#60717c!important;margin-bottom:12px!important;}
.plan-v43 .plan-v43-keycopy{margin:20px 0 22px!important;color:#223d53!important;font-size:14px!important;font-weight:600!important;letter-spacing:.03em;}
.plan-v43 .dm-outline-link{font-size:12px!important;}
.plan-v43-main{min-width:0;}

.plan-v43-campaign{display:flex;align-items:center;gap:12px;min-height:44px;margin:0 0 20px;padding:10px 14px;border:1px solid #f2c6bf;border-radius:10px;background:#fff8f6;color:#344c60;font-size:11px;line-height:1.5;}
.plan-v43-campaign-label{flex:0 0 auto;padding:5px 9px;border-radius:999px;background:#ec7468;color:#fff;font-weight:700;letter-spacing:.04em;}
.plan-v43-campaign strong{font-size:12px;font-weight:700;color:#243f55;}
.plan-v43-campaign s{color:#8b9298;font-weight:500;}
.plan-v43-campaign>span:last-child{margin-left:auto;color:#7b6c67;white-space:nowrap;}

.plan-v43 .plan-v43-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important;}
.plan-v43 .plan-v43-card{display:flex;flex-direction:column;min-width:0;min-height:530px!important;padding:24px 18px 18px!important;border:1px solid #e8dfd9!important;border-radius:12px!important;background:#fff!important;text-align:left!important;box-shadow:none!important;}
.plan-v43 .plan-v43-card.is-featured{border:1.5px solid #eb7468!important;background:#fffdfc!important;}
.plan-v43 .dm-popular{top:-13px!important;padding:6px 16px!important;font-family:"Noto Sans JP",sans-serif;font-size:10px!important;letter-spacing:.02em;}
.plan-v43 .dm-plan-use{min-height:43px!important;margin:0 0 7px!important;font-size:11px!important;line-height:1.65!important;color:#405a6f!important;font-weight:600!important;text-align:center;}
.plan-v43 .plan-v43-card img{height:54px!important;max-width:78px!important;margin:0 auto 7px!important;border-radius:12px!important;}
.plan-v43 .plan-v43-card h3{margin:0!important;font-family:"DM Sans","Noto Sans JP",sans-serif!important;font-size:18px!important;line-height:1.25!important;letter-spacing:.05em!important;font-weight:700!important;text-align:center;}
.plan-v43 .plan-v43-card h3 small{display:block;margin-top:3px;font-family:"Noto Sans JP",sans-serif!important;font-size:9px!important;line-height:1.5!important;letter-spacing:.02em!important;color:#74808a!important;font-weight:500!important;}
.plan-v43-tagline{min-height:35px;margin:9px 0 8px;color:#5f6f7a;font-size:10px;line-height:1.55;text-align:center;}
.plan-v43 .dm-plan-price{margin:0!important;justify-content:center!important;gap:4px!important;text-align:center;}
.plan-v43 .dm-plan-price strong{font-family:"DM Sans",sans-serif!important;font-size:27px!important;line-height:1.15!important;letter-spacing:-.035em!important;color:#223d53;}
.plan-v43 .dm-plan-price span{display:block!important;font-size:9px!important;color:#697781!important;}
.plan-v43 .dm-plan-price span small{display:block;margin-top:2px;font-size:8px;opacity:.75;}
.plan-v43-hours{margin:6px 0 13px;padding-bottom:12px;border-bottom:1px solid #eee6e0;color:#7c7773;font-size:9px;line-height:1.5;text-align:center;}
.plan-v43-list{list-style:none;margin:0;padding:0;display:grid;gap:9px;color:#465b6c;font-size:10px;line-height:1.55;}
.plan-v43-list li{position:relative;padding-left:17px;}
.plan-v43-list li::before{content:"✓";position:absolute;left:0;top:0;color:#e97468;font-weight:700;}
.plan-v43-for{margin:auto 0 0!important;padding-top:14px!important;color:#304c61!important;font-size:10px!important;line-height:1.65!important;font-weight:600!important;border-top:1px solid #f1ebe6;}

.plan-v43-reason-wrap{margin-top:28px;}
.plan-v43-reason-title{margin:0 0 14px;text-align:center;color:#243f55;font-size:14px;font-weight:600;letter-spacing:.02em;}
.plan-v43-reasons{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #eee4dd;border-bottom:1px solid #eee4dd;}
.plan-v43-reasons>div{position:relative;padding:19px 24px 18px;}
.plan-v43-reasons>div+div{border-left:1px solid #eee4dd;}
.plan-v43-reasons span{display:block;margin-bottom:7px;color:#e9776b;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:700;letter-spacing:.1em;}
.plan-v43-reasons strong{display:block;margin-bottom:5px;color:#2c465b;font-size:12px;font-weight:600;}
.plan-v43-reasons p{margin:0;color:#6d7c86;font-size:10px;line-height:1.65;}
.plan-v43-note{margin:12px 0 0;color:#849099;font-size:9px;line-height:1.75;text-align:center;}
.plan-v43-spot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:18px 20px;border:1px solid #ebe1da;border-radius:10px;background:#fff;}
.plan-v43-spot strong{display:block;margin-bottom:4px;color:#263f54;font-size:12px;}
.plan-v43-spot p{margin:0;color:#6a7983;font-size:10px;line-height:1.6;}
.plan-v43-spot a{flex:0 0 auto;color:#d86459;font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap;}

@media (max-width:1050px){
  .plan-v43 .dm-plan-layout{grid-template-columns:1fr!important;gap:24px!important;}
  .plan-v43 .dm-plan-intro{padding-top:0;max-width:670px;}
  .plan-v43 .dm-plan-intro>p{max-width:560px!important;}
}
@media (max-width:820px){
  .plan-v43{padding:52px 0!important;}
  .plan-v43-campaign{flex-wrap:wrap;gap:8px 10px;}
  .plan-v43-campaign>span:last-child{margin-left:0;width:100%;}
  .plan-v43 .plan-v43-card{min-height:500px!important;padding:22px 16px 17px!important;}
  .plan-v43-reasons{grid-template-columns:1fr;}
  .plan-v43-reasons>div+div{border-left:0;border-top:1px solid #eee4dd;}
  .plan-v43-spot{align-items:flex-start;flex-direction:column;gap:12px;}
}
@media (max-width:680px){
  .plan-v43 .plan-v43-cards{grid-template-columns:1fr!important;gap:25px!important;}
  .plan-v43 .plan-v43-card{width:100%!important;max-width:430px!important;min-height:0!important;margin-inline:auto!important;}
  .plan-v43 .dm-plan-use,.plan-v43-tagline{min-height:0!important;}
  .plan-v43 .dm-plan-intro h2{font-size:29px!important;}
  .plan-v43-reason-wrap{margin-top:24px;}
}
