

.plan-section {
	text-align: center;
	h1{
		font-size: min(60px, 6vw);
		margin: 0 auto;
		height: min(360px, 50vw);
		//line-height: min(72px, 7.2vw);
		padding: 0 10px;
		white-space: pre-wrap;
		word-break: break-all;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align:center;
	}
	
	.h1-bg {
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100%;
		background-repeat: no-repeat;
		position: absolute;
		opacity: .75;
		height: 100%;
		width: 100%;
		margin: auto;
		display: flex;
		z-index: -1;
	}
	  
	
	article {
		border: 1px solid #dfd3c5;
		box-shadow: 0 0 5px 1px rgba(64, 34, 0, .05);
		margin: 10px auto;
		padding: 10px;
		
	}
	h2 {
		font-size: 24px;
		margin: 0 auto;
		
	}
	
	p {
		font-size: 16px;
		font-weight: normal;
	}
	
	.plan-content {
		display: block;
	}
	
	.plan-main-img {
		
		width: 100%;
		aspect-ratio: 4 / 3;
		object-fit: cover;
	}
	
	table {
		border-collapse: collapse;
		background-color: #eee;
		width: 100%;
		margin: 10px auto;
	}
	
	tr {
		background-color: #fff;
		height: auto;
		
	}
	th,td {
		border: 1px solid #ddd;
		text-align: right;
		padding: 5px;
		min-height: 120px;
		min-height: 120px;
	}
	th {
		width: 120px;
		
	}
	
	td {
		text-align: right;
	}
	td.description {
		text-align: left;
	}
	
	.cell-content {
		min-height: 42px;
		display: flex;
		text-align: right;
		justify-content: flex-end;
		height: 100%;
		line-height: 42px;
		width: 100%;
		vertical-align: middle;
	}
	
	
	
	a {
		text-decoration: underline;
		margin: 20px auto;
		font-weight: 700;
		font-size: 20px;
		display: inline-block;
		
	}
	
	
}

.plan-single {
	article {
		display: block;
	}
}
@media (min-width:768px){
	.plan-section {
		.plan-content {
			display: flex;
			flex-wrap: nowrap;
			align-items: flex-start;
			gap: 5px;
		}
		
		.plan-main-img {
		
			width: 50%;
			aspect-ratio: 4 / 3;
			object-fit: cover;
		}
		table {
			width: 50%;
		}
		th,td {
			
		}
		
		
		#single-product-img-box {
			width: 50%;
		}
		.plan-content {
			display: flex;
			flex-wrap: nowrap;
			align-items: flex-start;
			gap: 5px;
		}
		.plan-single {
			article{
				display: flex;
				flex-wrap: nowrap;
				align-items: flex-start;
				gap: 5px;
			}
		}
	}
}




.caution {
	border: 3px solid #faa;
	margin: 15px auto;
	text-align:center;
	h3 {
		color: #fff;
		background-color: #faa;
		font-size: 20px;
		height: 42px;
		line-height: 42px;
		margin: 0 auto;
	}
	
	ul {
		
		max-width: 425px;
		text-align:left;
		margin: 15px auto;
		padding-left:20px;
	}
	li {
		list-style: circle;
		font-size: 12px;
		min-height: 24px;
	}
	p{
		
		text-align: center;
	}
	@media (min-width:768px){
		li {
			font-size: 14px;
		}
	}
}




.related-plan-section {
	
	margin-top: min(60px, 10vw);
}




















	