@charset "UTF-8";

/* ======================== Main Visual ======================== */
.moreve-mv{
  background:url("../images/main_bg.jpg") no-repeat top center/cover;
  padding:0; /* 余白圧縮（SP） */
}
@media(min-width:768px){
  .moreve-mv{
    /*background-image:url("/moreve/mice/makuhari/assets/images/main_bg.jpg");*/
    padding:80px 0;
  } /* 余白圧縮（PC） */
}
.moreve-mv .wrapper{
  background:rgba(34,34,34,.68); /* 読みやすい濃グレー */
  padding:40px 3vw;;border-radius:0 !important; /* 角丸なし */
  text-align:center;margin-bottom:0;
}
.moreve-mv__title{
  display:flex;align-items:center;justify-content:center;margin:0 auto;max-width:640px;padding: 2rem 1rem;
}
.moreve-mv__title img{
  height:60px;
  border-radius:0 !important;
filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
} /* ロゴのみ角丸解除（保険） */
/* ヒーロー見出し */
.mv-eyebrow{
  display:inline-block;
  color:#fff;
  border:1px solid rgba(255,255,255,.85);
  border-radius:0;
  padding:6px 10px;
  font-weight:700;
  font-size:1.4rem;
  margin:10px auto 0
}
.mv-title{
  color:#fff;
  text-align:center;
  font-size:clamp(20px,3.6vw,26px);
  font-weight:800;
  margin:8px 0 4px;
  line-height:1.6em;
}
.mv-sub{
  color:#fff;
  text-align:center;
  font-size:clamp(18px,3.2vw,24px);
  font-weight:700;
  margin:4px 0
}
.mv-lead{
  color:#fff;
  text-align:center;
  font-size:clamp(16px,3vw,20px);
  font-weight:700;
  margin:4px 0 0
}
.mv-cta{
  margin-top:2rem;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center
}
.mv-cta .btn{
  min-width: 220px;
}
strong{
  font-weight: bolder;
}
/* ======================== Section Blocks ======================== */
.moreve-Concept,.moreve-Overview,.moreve-Model,.moreve-Detail,.moreve-Contact{margin:28px 0}
.panel h3{color:var(--brand-deep);font-weight:900;margin-top:10px;
font-size: 1.8rem;}
/* コンセプト：ポイント表 */

.moreve-Concept{
  position: relative;
  margin:4.5rem 0 6rem;
}
.moreve-Concept::before{
  content: "";
  position: absolute;
  transform:translate(-50%, -50%);
  width: 240px;
  height: 30px;
  top: -30px;
  left: 50%; /* 左から50% */
  background: var(--brand-deep);
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
}
.moreve-Concept__box.panel{
  border:2px solid var(--brand-deep);
  background: transparent;
  box-shadow: none;
  padding: 15px 1.2rem 30px;
  overflow:hidden;
  border-radius:0;
  max-width: 80%;
  margin: 0 auto;
}
@media(max-width: 768px){
  .moreve-Concept{
    margin:3.4rem 0 4rem;
  }
  .moreve-Concept::before{
    width: 36%;
    height: 3rem;
    top: -20px;
  }
  .moreve-Concept__box.panel{
  padding: 10px 1rem 20px;
  max-width: 100%;
  }
}
/*.points-grid{display:grid;grid-template-columns:220px 1fr}*/
.points-title{background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;text-align:center;padding:20px;border-radius:0}
.points-list{
  display: flex;
  flex-direction: column;
  align-items: center;
}
.points-list li{
    padding: 15px 0 0;
    font-size: clamp(16px, 1.7vw, 24px);
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
    position: relative;
  }
.points-list li::after {
  content: "";
  display: block;
  border-bottom: 1px solid var(--brand-deep);
  width: 20px;
  margin: 15px auto 0
}
.points-list li:last-of-type::after{
  content: none;
}
  .points-list li span{
  /*border-bottom: 2px solid var(--brand-deep);*/
  padding-bottom: clamp(1px, 0.5vw, 6px);
  }

@media(max-width:820px){.points-grid{grid-template-columns:1fr}.points-title{justify-content:flex-start;border-radius:0; text-align: left;}}

@media(max-width: 768px){
  .points-list li {
    padding: 10px 0 0;
  }
  .points-list li::after {
    margin: 10px auto 0;
  }
}
/* 料金 */
.pricing-head{display:flex;gap:12px;margin:0 0 12px;align-items: center;}
  @media(max-width:600px){
  .pricing-head{
    flex-direction: column;
    align-items: flex-start;
  }
  }
.chip{background:var(--brand);color:#fff;border-radius:0;padding:8px 12px;font-weight:800}
.pricing-grid{display:grid;grid-template-columns:1fr;gap:18px}
.price-card{text-align:center;padding:22px 5px}
.price-card h3{color:#637878;/* muted系 */font-weight:700;margin-bottom:14px}
.price{font-size:clamp(28px,5vw,44px);font-weight:900;letter-spacing:.02em;margin:.1em 0}
.price-note{color:#5a6b7b;font-size:1.4rem}

/* 詳細（余白増し） */

.moreve-Detail h4{margin:1.1em 0 .6em; font-weight: bold;}
.moreve-Detail ul{margin:.6em 0 1.2em 1.2em; list-style:disc;}
.moreve-Detail li{margin:.4em 0}

/* Flow（8ステップ対応・余白増し） */
.flow-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:16px}
@media(max-width:600px){
  .flow-steps{
    display: flex;
    flex-direction: column;
  }
}
.step{
  border:1px solid var(--line);
  border-radius:0;
  padding:16px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  font-weight:700;
  position: relative;
  }
.step::after {
  content: "";
  display:inline-block;
  background: #e7f0f5;
  width: 15px;
  height: 30px;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translateY(-50%);
}
@media(max-width:600px){
  .step::after {
    width: 30px;
    height: 15px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    right: auto;
    top:auto;
    bottom: -15px;
    transform: translateY(0%);
  }
}
.step:last-of-type::after{
  display: none;

}
.step span{
  display: block;
  font-weight: normal;
  font-size: 1.4rem;
  padding-bottom: 0.5em;
}
.step-note{color:#5a6b7b;font-size:1.4rem; font-weight: normal;}
