/* 部品：top-features（STUDIOでは埋め込みだったもの） */
.sp-part--top-features .spark-features-section-bg{
width: 100%;
background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 60%, #FDFBF4 100%);
padding: 80px 0;
font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
color: #333;
box-sizing: border-box;
}.sp-part--top-features .spark-features-inner-container{
width: 100%;
max-width: 1100px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box;
}.sp-part--top-features .spark-section-header{
text-align: center;
margin-bottom: 90px;
}.sp-part--top-features .spark-main-title{
font-family: 'Shippori Mincho', serif;
font-size: 32px;
font-weight: bold;
color: #333;
letter-spacing: 0.1em;
margin-bottom: 15px;
position: relative;
display: inline-block;
}.sp-part--top-features .spark-main-title::after{
content: '';
display: block;
width: 60px;
height: 3px;
background: linear-gradient(90deg, #dcb043, #f5d782);
margin: 15px auto 0;
}.sp-part--top-features .spark-sub-title{
font-size: 15px;
color: #666;
line-height: 1.8;
letter-spacing: 0.05em;
}.sp-part--top-features .spark-feature-item{
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 100px;
gap: 5%;
position: relative;
}.sp-part--top-features .spark-feature-item.reverse{
flex-direction: row-reverse;
}.sp-part--top-features .spark-img-box{
width: 48%;
position: relative;
display: flex;
justify-content: center;
align-items: flex-start;
z-index: 2;
}.sp-part--top-features .spark-img-box img{
width: 100%;
height: auto;
border-radius: 8px;
box-shadow: 0 15px 35px rgba(0,0,0,0.08);
transition: transform 0.3s ease;
object-fit: cover;
aspect-ratio: 3/2;
}.sp-part--top-features .spark-img-box.map-container{
align-items: center;
}.sp-part--top-features .spark-img-box.map-container img{
object-fit: contain;
aspect-ratio: auto;
width: auto;
max-width: 100%;
max-height: 400px;
box-shadow: none;
}.sp-part--top-features .spark-feature-item:hover .spark-img-box img{
transform: translateY(-5px);
}.sp-part--top-features .spark-text-box{
width: 45%;
position: relative;
z-index: 2;
}.sp-part--top-features .spark-bg-number{
position: absolute;
top: -60px;
left: -30px;
font-size: 110px;
font-weight: 900;
z-index: 1;
font-family: 'Times New Roman', serif;
line-height: 1;
background: linear-gradient(180deg, #E6E6E6 0%, #FFFFFF 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
color: #f0f0f0;
}.sp-part--top-features .spark-feature-item.reverse .spark-bg-number{
left: auto;
right: -30px;
}.sp-part--top-features .spark-feature-title{
font-family: 'Shippori Mincho', serif;
font-size: 24px;
font-weight: bold;
margin-bottom: 24px;
line-height: 1.5;
color: #222;
}.sp-part--top-features .spark-highlight{
background: linear-gradient(transparent 70%, #faeab9 70%);
padding-bottom: 2px;
color: inherit;
}.sp-part--top-features .spark-feature-desc{
font-size: 15px;
line-height: 2;
color: #555;
text-align: justify;
letter-spacing: 0.02em;
}@media screen and (max-width: 768px){.sp-part--top-features .spark-features-section-bg{
padding: 50px 0;
background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 80%, #FDFBF4 100%);
}.sp-part--top-features .spark-section-header{
margin-bottom: 50px;
}.sp-part--top-features .spark-feature-item{
flex-direction: column;
margin-bottom: 70px;
gap: 20px;
}.sp-part--top-features .spark-feature-item.reverse{
flex-direction: column;
}.sp-part--top-features .spark-img-box,.sp-part--top-features .spark-text-box{
width: 100%;
}.sp-part--top-features .spark-img-box.map-container img{
max-height: 250px;
}.sp-part--top-features .spark-bg-number{
position: relative;
top: auto;
left: auto;
right: auto;
transform: none;
text-align: center;
margin-bottom: 0px;
font-size: 80px;
opacity: 1;
background: linear-gradient(180deg, #d4d4d4 0%, #f7f7f7 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}.sp-part--top-features .spark-feature-item.reverse .spark-bg-number{
left: auto;
right: auto;
text-align: center;
}.sp-part--top-features .spark-feature-title{
font-size: 22px;
margin-top: 0;
text-align: center;
}.sp-part--top-features .spark-feature-title br{
display: none;
}.sp-part--top-features .spark-feature-desc{
font-size: 14px;
text-align: justify;
}
}
