p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }


.inner { 
	width: 100%; 
	margin: auto; 
	max-width: 1300px; 	 
font-family: '游明朝 Medium','Yu Mincho Medium',YuMincho,'Hiragino Mincho Pro',serif;}




.plan-detail-contents .inner {
    max-width:1300px;
    display:grid;
    grid-template-columns:0.698fr 1fr;
    column-gap:4.5rem
}
.plan-detail-contents .plan-detail-header {
    grid-column:span 2;
    order:1;
    color:#fff;
    background-color: #194f3b; /* フォールバック用 */
  background-image: linear-gradient(135deg, #194f3b 2%, #5fb491 49%, #194f3b);
    text-align:center;
    padding:1rem 0;
	margin-bottom: 2rem;
}
.plan-detail-contents .plan-detail-header .plan-name {
    font-family:"Cinzel", serif;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:2rem;
    line-height:1
}
.plan-detail-contents .plan-detail-header .plan-name .title {
    font-size:1rem;
/*	margin-bottom: 0.5rem;*/
}
.plan-detail-contents .plan-detail-header .plan-name .type {
    font-size:3rem;
    display:flex;
    align-items:center;
    letter-spacing:0.5rem;
    gap:1rem
}
.plan-detail-contents .plan-detail-header .plan-name .type .name {
    font-size:120%
}

.plan-detail-contents .plan-detail-header .layout {
    font-size:2.5rem;
    border-top:1px solid #ffffff;
    line-height:1;
    padding:1rem 1rem 0
}

.plan-detail-contents .scale {
    grid-column:span 2;
    order:2;
/*    margin-top:2rem;*/
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    align-items:center;
    gap:0rem 2rem;
}

.plan-detail-contents .scale .main {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    align-items:flex-end;
	margin-top: 2rem;
}

.plan-detail-contents .scale .main .title,
.plan-detail-contents .scale .main .tsubo {
    font-size:1.2rem;
    line-height:2;
    margin-right: 0.5rem;
}
.plan-detail-contents .scale .main .title {
    margin-right:0.5rem;
}
.plan-detail-contents .scale .main .size {
    color:#527F66;
    font-size:2rem;
    line-height:1;
}
.plan-detail-contents .scale .main .size .large {
    font-size:186%;

}

@media screen and (max-width: 1000px) {
    .plan-detail-contents .inner {
        grid-template-columns:1fr;
    }

    .plan-detail-contents .plan-detail-header,.plan-detail-contents .scale,.plan-detail-contents .features,.plan-detail-contents .other-appeal,.plan-detail-contents .back-to-list {
        grid-column:span 1;
		margin-bottom: 0rem;
    }
    .plan-detail-contents .scale {
        flex-direction:column
    }
 
}
@media screen and (max-width: 768px) {
	

    .plan-detail-contents .plan-detail-header .plan-name {
        flex-direction:column;
        gap:0;
        padding:1rem 0;
    }
   
    .plan-detail-contents .scale .main {
	
/*        row-gap:0.5rem;*/
    }
    .plan-detail-contents .scale .main .title {
/*        width:100%;*/
        text-align:center;
/*		margin-top: 2rem;*/
    }
	
.plan-detail-contents .scale .main .size .large {
    font-size:140%;

}

}


.point-titel{
    font-size:1.5rem;
	padding:0 1rem 0;
	color: #527F66;

}


.point{
	margin-bottom: 1rem;

}

.point li{
   background-color: #527F66;
   color: #fff;
   padding: 1rem;
	border-bottom: 1px dotted #fff;

}



@media screen and (min-width: 768px) {

.point{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;

}
	
.point li{
	width: 33%;
	gap:0.5rem;
	padding: 3rem 1rem;
	font-size:1.3rem;

}
	
.point li span.small{
	font-size:1rem;

}
	
}



/* ==========================================
   間取り図エリア（プレースホルダー）
   ========================================== */
.floorplan-display {
/*    margin-bottom: 60px;*/
}

.floorplan-placeholder {
 /*   background-color: #ffffff;

    border: 1px solid #e8e8df;
    box-shadow: 0 5px 15px rgba(0,0,0,0.02);
    border-radius: 4px;
*/
	max-width:1300px;
	margin: 0 auto;
}

.floorplan-placeholder p {
    font-size: 1.25rem;
    color: #555;
    font-weight: 600;
    letter-spacing: 0.1em;
    margin-bottom: 12px;
}


/* ==========================================
   セクション共通タイトル
   ========================================== */
.section-title {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 600;
    color:#527F66;
    margin-bottom: 45px;
    position: relative;
    letter-spacing: 0.1em;
}

.section-title span {
    background-color: #ffffff;
    padding: 0 25px;
    position: relative;
    z-index: 1;
}

.section-title::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
	background-color: #e0e0d5;
    z-index: 0;
}

/* ==========================================
   ポイントセクション
   ========================================== */
.points-section {

    margin-bottom: 70px;
}

.points-grid {
max-width: 1300px;
	margin: 0 auto;
}

.point-card {
    background-color: #ffffff;
    border-top: 3px solid #527F66;
    padding: 35px 25px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.03);
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.point-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.06);
}

.point-num {
    font-size: 2.2rem;
    font-weight: 700;
    color: #b28247;
    line-height: 1;
    margin-bottom: 18px;
}

.point-content h4 {
    font-size: 1.5rem;
    color: #595757;
    margin-bottom: 14px;
    font-weight: 700;
    letter-spacing: 0.03em;
}

.point-content p {
    font-size: 0.9rem;
    color: #444;
    text-align: justify;
}


@media screen and (min-width: 1024px) {

.points-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;

}
	
.point-content h4 {
    font-size: 1.2rem;
 
}
	
}
