/* =============================================
   TOP MV / ファーストビュー
============================================= */
.mv{
  background-image:url('../img/m-bg.webp');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  /*background-color:#d6eef8;*/
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  height:541px;
}/* 共通MV */
.mv .container{
  padding:0; /* MVのみ左右余白を解除。重要！style.cssの左右余白20px上書き*/
  position:relative;
  width:100%;
  height:100%;
  margin: 0 auto;
}
.mv-title,.mv-catch,.mv-subtitle{
position: absolute;
left:12.5%;
z-index: 2;
}
.mv-title,.mv-catch{
text-shadow:
  1px 1px 0 #fff,
 -1px 1px 0 #fff,
  1px -1px 0 #fff,
 -1px -1px 0 #fff,
  1px 0 0 #fff,
 -1px 0 0 #fff,
  0 1px 0 #fff,
  0 -1px 0 #fff;
  z-index: 2;
}
.mv-subtitle{
  top:10%;
    display:inline-flex;
    align-items:center;
    gap:2px;
    background:#1f9d55;
    color:#fff;
    font-weight:700;
    font-size:.95rem;
    padding:7px 20px 7px 12px;
    border-radius:999px;
    box-shadow:0 6px 16px rgba(46,168,213,.22);
    z-index:3;
}
.mv-subtitle svg{
    width:20px;
    height:20px;
    fill:currentColor;
    flex:none;
filter:drop-shadow(0 1px 1px rgba(0,0,0,.15));
 opacity:.95;
}
.mv-title{
  top:21%;
  font-size:4rem;
  font-weight:900;
  color:#0a2d4a;
  line-height:1.2;
  margin-bottom:10px;
}

/* MV キャッチコピー */
.mv-catch{
  max-width: 620px;
  top:37%;
  font-size:1rem;
  margin:0;
  padding:0;
  font-weight:500;
  color:#0a2d4a;
  letter-spacing: -.02rem;
}

/* MV内 画像 */
.mv-person{
  position:absolute;
  inset:0;
  z-index:1;
}

.mv-person img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}

.mizuiro{color:#2EA8D5}
/* iPad */
@media (max-width:900px){

  .mv{
    height:500px;
  }
.mv-subtitle{
    font-size:.75rem;
padding:6px 18px 6px 10px;
  }
  .mv-title{
    font-size:3.5rem;
  }
.mv-title,
.mv-catch,
.mv-subtitle{
  left:6%;
}

}

/* スマホ */
@media(max-width:680px){
  .mv{
    height:auto;
    min-height:0;
  }
   .mv-person{
    position:relative;
    z-index:1;
  }
  .mv-person img{
    width:100%;
    height:auto;
    object-fit:contain;
    display:block;
  }
  .mv-subtitle{
    position:absolute;
    top:5.5%;
    left:5.5%;
    font-size:3vw;
  }
  .mv-title{
    position:absolute;
    top:18%;
    left:6%;
    width:auto;
    white-space:normal; /* ←重要 */
    font-size:13vw;
    line-height:1.15;
  }
  .mv-catch{
    position:absolute;
    font-size:4vw;
    top:33%;
    left:5%;
    width:62%;
    padding: 12px;
  }
}

.wrap{max-width:900px;margin:30px auto;padding:20px}
.card{background:#fff;padding:20px;border-radius:10px}
label{display:block;margin-top:15px;font-weight:bold}
select,button{width:100%;padding:12px;margin-top:5px}
button{margin-top:20px}
.result-item{background:#fff;padding:15px;margin-top:10px;border-radius:10px}
.shindan-wrap{
max-width:900px;
margin:40px auto;
padding:0 20px;
}

.shindan-box{
background:#fff;
border-radius:14px;
padding:24px;
box-shadow:0 3px 12px rgba(0,0,0,.08);
}

.shindan-title{
text-align:center;
font-size:2rem;
margin-bottom:10px;
}

.shindan-lead{
text-align:center;
color:#666;
margin-bottom:30px;
}

.result-card{
background:#fff;
border-radius:14px;
padding:20px;
margin-top:15px;
box-shadow:0 3px 12px rgba(0,0,0,.08);
}

.rank1{
border-left:8px solid #f6b300;
}

.rank2{
border-left:8px solid #b8bec9;
}

.rank3{
border-left:8px solid #cd7f32;
}

.result-title{
text-align:center;
margin:30px 0 20px;
}

.result-card{
background:#fff;
padding:20px;
margin-bottom:15px;
border-radius:14px;
box-shadow:0 3px 12px rgba(0,0,0,.08);
}

.rank1{
border-left:8px solid #f6b300;
}

.rank2{
border-left:8px solid #b8bec9;
}

.rank3{
border-left:8px solid #cd7f32;
}

.result-rank{
font-size:1.1rem;
font-weight:bold;
margin-bottom:10px;
}

.result-card h3{
margin:0 0 10px;
font-size:1.5rem;
}

.result-features{
margin:10px 0;
padding-left:20px;
}

.result-score{
font-weight:bold;
margin-top:10px;
color:#2EA8D5;
}

.detail-btn{
display:inline-block;
margin-top:12px;
padding:10px 16px;
background:#2EA8D5;
color:#fff;
text-decoration:none;
border-radius:8px;
font-weight:700;
}

.detail-btn:hover{
opacity:.9;
}

.breadcrumb-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;list-style:none;margin:0;padding:0;}
.breadcrumb-list li+li::before{content:'›';color:var(--color-subtext);margin-right:8px;}
/* =============================================
   index.html インラインstyle 外部化
============================================= */

.shindan-h1{text-align:center;margin-bottom:10px;}
.shindan-form{background:#fff;border:1px solid #ddd;padding:20px;border-radius:12px;}
.shindan-select{width:100%;padding:12px;margin:8px 0 20px;}

.simple-body h3{/*上書き*/
  margin:24px 0 10px;
  font-size:1.1rem;
  font-weight:700;
  color:#222;
  border-bottom:none!important;
}
.shindan-btn{
  width:100%;padding:25px;margin-top:20px;
  background:#2EA8D5;color:#fff;border:none;border-radius:8px;
  font-size: 1.5rem;
  font-weight:bold;}
.shindan-result{margin-top:30px;}
#saishindan{
  scroll-margin-top:90px; /* ヘッダー高さに合わせる */
}
.result-recommend{
  margin:8px 0 6px;
  font-size:1.05rem;
  font-weight:700;
}
.recommend-star{
  color:#ff9800;
  letter-spacing:2px;
}
.reason-box{
  margin:12px 0;
  padding:10px 14px;
  background:#eef8ff;
  border-left:4px solid #2196f3;
  border-radius:8px;
  font-weight:700;
  color:#1565c0;
  line-height:1.6;
}
.result-note{
  margin:0 0 18px;
  color:#555;
  font-size:.95rem;
}

.result-bottom{
  text-align:center;
  margin:30px 0;
}

.retry-btn,
.compare-btn{
  display:inline-block;
  margin:12px 4px;
  padding:10px 12px;
  border-radius:8px;
  text-decoration:none;
  font-weight:700;
}
.retry-btn{
  background:#f5f5f5;
  color:#333;
}
.compare-btn{
  background:#1da1d2;
  color:#fff;
}
.result-btns{
  display:flex;
  gap:10px;
  margin-top:16px;
}

.result-btns a{
  flex:1;
  text-align:center;
}

.detail-btn,
.compare-btn{
  margin:0;
}
input{margin-left: 15px; margin-right: 5px;}
.shindan-select{
  width:100%;
  height:56px;
  padding:0 42px 0 14px;
  font-size:18px;
  font-weight:700;
  border:1px solid #ccc;
  border-radius:8px;
  appearance:none;
  -webkit-appearance:none;
  background:
    #fff
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23666' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E")
    no-repeat right 14px center;
}
.form-group{ margin-bottom: 32px;}
@media(max-width:680px){
.shindan-h1{ font-size: clamp(5vw, 6vw, 6.5vw)!important;}
  .shindan-inline-btn{padding:14px 10px;}
  .shindan-inline-arrow{display:none;}
  .shindan-cta-title{font-size:1.05rem;}
  .shindan-cta-btn{padding:15px 32px;font-size:1rem;}

.compare-btn,.detail-btn{
display:inline-block;
padding:10px 4px;
}
}