@charset "utf-8";

/*--------------------------------------
trouble common｜お悩み
--------------------------------------*/
.trouble .inner{ max-width: 900px; }
.cards li{
	width: 100%;
	height: 80px;
	border-radius: 0 20px;
}
	.cards li a{
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		width: 100%;
		height: 100%;
		font-size: 21px;
		font-weight: 500;
		text-align: center;
	}
	.cards li a.thin{
		font-size: 18px;
		letter-spacing: 0;
	}
		.cards li a span{
			display: block;
			font-size: 14px;
			font-weight: 400;
			margin-bottom: 8px;
			padding-top: 4px;
		}
.cards .noBtn{
	pointer-events: none;
}

/* kv
-------------------------------------- */
.kv{
	position: relative;
}
.kv::before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100px;
	background : linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
}
	.kvWrap{
		height: 310px;
		background: url('../../img/common/pc/bg_trouble_kv.png') center/1500px repeat-x,
		#e8e8e8;
	}
		.kvTxt{
			font-size: 44px;
			letter-spacing: .15em;
			text-shadow: 5px 5px 1px rgba(0, 0, 0, .1);
			text-align: center;
		}

	.KvSubTxt{
		display: block;
		font-size: 24px;
		letter-spacing: .15em;
		color: #de8c9a;
		margin-top: 28px;
		text-shadow: none;
	}

@media screen and (max-width: 768px){
	.kv::before{
		height: 50px;
	}
		.kvWrap{
			height: 155px;
			background: url('../../img/common/sp/bg_trouble_kv.png') center/380px repeat-x,
			#e8e8e8;
		}
			.kvTxt{
				font-size: 24px;
			}
	
		.KvSubTxt{
		font-size: 12px;
		letter-spacing: .1em;
		margin-top: 18px;
	}
}

/* スティッキー
-------------------------------------- */
 /* reservation-btn */
.reservation-btn {
	display: flex;
	gap: 16px;
	justify-content: center;
	align-items: center;
}

.reservation-btn a {
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
	flex-basis: calc(50% - 8px);
	padding: 16px 0;
	color: #fff;
	font-size: 18px;
}
.reservation-btn a:hover {
	opacity: 0.8;
}

.reservation-btn a::before {
	display: inline-block;
	content: '';
	width: 20px;
	height: 20px;
	background-size: cover;
}

.reservation-btn .tel {
	background-color: #8a7a2c;
}
.reservation-btn .tel::before {
	background-image: url(../../img/common/pc/icon_tel.svg);
}

.reservation-btn .web {
	background-color: #de8c9a;
}
.reservation-btn .web::before {
	background-image: url(../../img/common/pc/icon_reserve.svg);
}

.reservation-inner {
	box-sizing: border-box;
	margin: 60px auto 20px;
	width: 80%;
	max-width: 700px;
	text-align: center;
	font-size: 18px;
	letter-spacing: 2px;
}

@media screen and (max-width: 768px){
	.reservation-btn a {
		font-size: 14px;
	}

	.reservation-btn a::before {
		width: 14px;
		height: 14px;
	}
}

/* sticky */
.sticky {
	opacity: 0;
  visibility: hidden;
}

@media screen and (max-width: 768px){
.sticky {
	box-sizing: border-box;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	padding: 12px 8px;
	background-color: rgba(68, 68, 68,0.8);
	transition: .3s;
}
.sticky.active {
	opacity: 1;
	visibility: visible;
}

.sticky p {
	color: #fff;
	font-size: 12px;
	letter-spacing: 0;
	line-height: 1.4;
	white-space: nowrap;
}

.sticky .reservation-btn {
	gap: 8px;
}

.sticky .reservation-btn a {
	gap: 4px;
	padding: 16px 4px;
	font-size: 12px;
}

.sticky .reservation-btn a::before {
	width: 11px;
	height: 11px;
}
}

/* message
---------------------------------------------- */
.message{
	margin-bottom: 70px;
}
	.trouble .messageWrap.inner{
		max-width: 920px;
	}
	.messageWrap + .messageWrap{
		margin-top: 40px;
	}
		.messageWrap._wrap1 .messageImgBox{
			width: calc(321 / 920 * 100%);
			margin-left: 30px;
		}

		.messageWrap._wrap2 .messageTxtBox{
			width: calc(426 / 920 * 100%);
		}
		.messageWrap._wrap2 .messageImgBox{
			width: calc(420 / 920 * 100%);
			margin-right: calc(74 / 920 * 100%);
		}

			.messageTtl{
				font-size: 30px;
				margin-bottom: 30px;
				line-height: 1.3;
			}
			.messageTxt{
				font-size: 18px;
				line-height: 2.2223;
				letter-spacing: .1em;
				text-align: justify;
			}

@media screen and (max-width: 768px){
	.message{
		margin-bottom: 30px;
	}
		.messageWrap{
			position: relative;
		}
		.messageWrap + .messageWrap{
			margin-top: 20px;
		}
			.messageWrap._wrap1 .messageImgBox{
				width: calc(140 / 280 * 100%);
				margin-left: 15px;
			}
			.messageWrap._wrap2 .messageImgBox{
				width: calc(165 / 280 * 100%);
				margin-right: 15px;
			}

				.messageTtl{
					position: absolute;
					top: 15px;
					font-size: 16px;
					line-height: 1.6785;
					margin-bottom: 0;
				}
				.messageTxt{
					font-size: 12px;
					line-height: 1.8;
					letter-spacing: .05em;
				}
				.messageWrap._wrap1 .messageTxt{
					margin-top: 80px;
				}
}

/* intro
-------------------------------------- */
.intro{
}
	.intro .ttl{
		width: 62.681819%;
		max-width: 689px;
		margin: -60px auto 0;
	}
		.intro .list1{
			margin-top: -25px;
		}
			.intro .list1 li{
				position: relative;
				width: 50%;
				height: 150px;
				margin-top: 15px;
				padding: 26px 0 35px;
				box-sizing: border-box;
			}
			.intro .list1 li::before{
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: url('../../img/common/pc/bg_plan_card.svg') center/contain no-repeat;
				z-index: -1;
			}
				.intro .list1 li .copy{
					font-size: 28px;
					letter-spacing: .05em;
					text-shadow: 3px 3px 1px rgba(0, 0, 0, .1);
					text-align: center;
				}
				.intro .list1 li .cont{
					flex-wrap: nowrap;
					margin-top: 15px;
				}
					.intro .list1 li .cont h3{
						font-size: 26px;
						letter-spacing: .03em;
						margin-right: 4.445%;
						text-align: right;
					}
					.intro .list1 li .cont h3.smallTtl{
						font-size: 21px;
						line-height: 1.2;
					}
						.intro .list1 li .cont h3 small{
							font-size: 14px;
						}
					.intro .list1 li .cont .firstPriceBox{
						flex-wrap: nowrap;
					}
						.intro .list1 li .firstPriceBox .first{
							width: 33px;
							margin-right: 7px;
						}
						.intro .list1 li .firstPriceBox .firstPrice{
							position: relative;
							font-size: 36px;
							letter-spacing: .01em;
							white-space: nowrap;
						}
						.intro .list1 li .firstPriceBox .firstPrice::before{
							content: '';
							position: absolute;
							top: 0;
							right: -4px;
							width: 28px;
							height: 13px;
							background: url('../../img/common/pc/txt_tax.svg') center/contain no-repeat;
						}
						.intro .list1 li .firstPriceBox .firstPrice.normal::before{
							background: url('../../img/common/pc/txt_tax_normal.svg') center/contain no-repeat;
						}
							.intro .list1 li .firstPriceBox .firstPrice .comma{
								font-size: 26px;
								vertical-align: 2px;
							}
							.intro .list1 li .firstPriceBox .firstPrice .yen{
								font-size: 20px;
								margin-left: 1px;
							}

/* index */
.index{
	margin-top: 70px;
}
	.indexList{
	}
		.indexList > li{
			/* width: 18.6666667%; */
			width: calc(168 / 900 * 100%); /* 5個 */
			height: 110px;
		}
			.indexList > li a{
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 100%;
				font-size: 18px;
				font-weight: 600;
				line-height: 1.3;
				font-family: 'Yu Gothic',Yugothic,sans-serif;
				color: #6e5a50;
				background: #faf9f7;
				text-align: center;
			}
			.indexList > li a::before{
				border-top: 30px solid transparent;
					border-right: 30px solid #e8aeb8;
			}

@media screen and (min-width: 769px){
	.indexList.item4 > li{ /* カード4枚 */
		width: calc(208 / 900 * 100%);
	}
	.indexList.item6 > li{ /* カード6枚 */
		width: calc(140 / 900 * 100%);
	}
}
@media screen and (max-width: 768px){
	.intro{
	}
		.intro .ttl{
			width: 88.125%;
			margin-top: -40px;
		}
			.intro .list1{
				width: 90%;
				margin-top: -5px;
			}
				.intro .list1 li{
					width: 100%;
					height: 98px;
					margin-top: 0;
					padding: 18px 0 22px;
				}
				.intro .list1 li + li{
					margin-top: 6px
				}
				.intro .list1 li::before{
					background: url('../../img/common/pc/bg_plan_card.svg') center/contain no-repeat;
				}
					.intro .list1 li .copy{
						font-size: 18px;
					}
					.intro .list1 li .cont{
						margin-top: 10px;
					}
						.intro .list1 li .cont h3{
							font-size: 16px;
							margin-right: 12px;
						}
						.intro .list1 li .cont h3.smallTtl{
							font-size: 13px;
						}
							.intro .list1 li .cont h3 small{
								font-size: 9px;
								letter-spacing: 0;
							}
						.intro .list1 li .cont .firstPriceBox{
						}
							.intro .list1 li .firstPriceBox .first{
								width: 21px;
								margin-right: 5px;
							}
							.intro .list1 li .firstPriceBox .firstPrice{
								font-size: 22px;
							}
							.intro .list1 li .firstPriceBox .firstPrice::before{
								right: -3px;
								width: 19px;
								height: 8px;
								background: url('../../img/common/pc/txt_tax.svg') center/contain no-repeat;
							}
							.intro .list1 li .firstPriceBox .firstPrice.normal::before{
								background: url('../../img/common/pc/txt_tax_normal.svg') center/contain no-repeat;
							}
								.intro .list1 li .firstPriceBox .firstPrice .comma{
									font-size: 16px;
									vertical-align: 2px;
								}
								.intro .list1 li .firstPriceBox .firstPrice .yen{
									font-size: 13px;
									margin-left: 1px;
								}

	/* index */
	.index{
		margin-top: 27px;
	}
		.indexList{
			margin-top: -5px;
		}
			.indexList > li{
				flex-grow: 1;
				width: 48.928572%;
				height: 40px;
				margin-top: 5px;
				margin-right: 2.1428571%;
			}
			.indexList > li:nth-child(even),
			.indexList > li:last-child{
				margin-right: 0;
			}
				.indexList > li a{
					justify-content: flex-start;
					font-size: 12px;
					line-height: 1.2;
					padding-left: 15px;
					text-align: left;
					box-sizing: border-box;
				}
				.indexList > li a::before{
					border-top: 20px solid transparent;
						border-right: 20px solid #e8aeb8;
				}
}

/* age
---------------------------------------------- */
.age{
	margin-top: 120px;
}
	.ageWrap{
		margin-top: 45px;
	}
		.ageBox{
		}
		.ageBox + .ageBox{
			margin-top: 50px;
		}
			.ageBox .img{
				width: 33.3333334%;
			}
			.ageBox .txt{
				width: 62.2222223%;
			}
				.ageBox .copy{
					font-size: 26px;
					line-height: 1.77;
					letter-spacing: .14em;
					margin-bottom: 30px;
				}
					.ageBox .copy .markerLine{
						position: relative;
					}
					.ageBox .copy .markerLine::before,
					.ageBox .copy .markerLine::after{
						content: '';
						position: absolute;
						bottom: -3px;
						left: 50%;
						transform: translateX(-50%);
						height: 11px;
					}
					.ageBox .copy .markerLine::before{
						width: 103%;
						background:
						url('../../img/common/pc/bg_line_brush.png');
						z-index: -2;
					}
					.ageBox .copy .markerLine::after{
						width: 104%;
						background:
						url('../../img/common/pc/bg_line_brush_left.png') no-repeat,
						url('../../img/common/pc/bg_line_brush_right.png') no-repeat;
						background-size: 11px;
						background-position: 0, 100%;
						z-index: -1;
					}
				.ageBox .txt .txt2{
					font-size: 16px;
					font-weight: 600;
					margin-bottom: 20px;
					padding-bottom: 10px;
					border-bottom: 1px solid #e2dedc;
				}
				.ageBox .txt .cards{
					margin-top: -20px;
				}
					.ageBox .txt .cards li{
						width: 48.214286%;
						height: 80px;
						margin-top: 20px;
					}
						/* .ageBox .txt .cards li a{
							font-size: 21px;
						} */
						.ageBox .txt .cards li a::before{
							border-top: 36px solid transparent;
						}
							.ageBox .txt .cards li a span{
								font-size: 14px;
							}

.ageBox10 .txt .cards li{
	background : -webkit-radial-gradient(50% 50%, circle farthest-corner, rgba(254, 249, 248, 1) 0%, rgba(252, 242, 241, 1) 100%);
	background : -ms-radial-gradient(50% 50%, circle farthest-corner, rgba(254, 249, 248, 1) 0%, rgba(252, 242, 241, 1) 100%);
	background : radial-gradient(50% 50%, circle farthest-corner, rgba(254, 249, 248, 1) 0%, rgba(252, 242, 241, 1) 100%);
}
	.ageBox10 .txt .cards li a::before{
		border-right: 36px solid #eaa5a0;
	}
.ageBox20 .txt .cards li{
	background : -webkit-radial-gradient(50% 50%, circle farthest-corner, rgba(253, 249, 245, 1) 0%, rgba(251, 245, 236, 1) 92.06%, rgba(251, 244, 235, 1) 100%);
	background : -ms-radial-gradient(50% 50%, circle farthest-corner, rgba(253, 249, 245, 1) 0%, rgba(251, 245, 236, 1) 92.06%, rgba(251, 244, 235, 1) 100%);
	background : radial-gradient(50% 50%, circle farthest-corner, rgba(253, 249, 245, 1) 0%, rgba(251, 245, 236, 1) 92.06%, rgba(251, 244, 235, 1) 100%);
}
	.ageBox20 .txt .cards li a::before{
		border-right: 36px solid #e6b276;
	}

.ageBox30 .txt .cards li{
	background : -webkit-radial-gradient(50% 50%, circle farthest-corner, rgba(247, 250, 252, 1) 0%, rgba(239, 244, 249, 1) 100%);
	background : -ms-radial-gradient(50% 50%, circle farthest-corner, rgba(247, 250, 252, 1) 0%, rgba(239, 244, 249, 1) 100%);
	background : radial-gradient(50% 50%, circle farthest-corner, rgba(247, 250, 252, 1) 0%, rgba(239, 244, 249, 1) 100%);
}
	.ageBox30 .txt .cards li a::before{
		border-right: 36px solid #92b5d8;
	}

.ageBox40 .txt .cards li{
	background : -webkit-radial-gradient(50% 50%, circle farthest-corner, rgba(248, 251, 248, 1) 0%, rgba(242, 248, 243, 1) 100%);
	background : -ms-radial-gradient(50% 50%, circle farthest-corner, rgba(248, 251, 248, 1) 0%, rgba(242, 248, 243, 1) 100%);
	background : radial-gradient(50% 50%, circle farthest-corner, rgba(248, 251, 248, 1) 0%, rgba(242, 248, 243, 1) 100%);
}
	.ageBox40 .txt .cards li a::before{
		border-right: 36px solid #9dcaa0;
	}

.ageBox50 .txt .cards li{
	background : -webkit-radial-gradient(50% 50%, circle farthest-corner, rgba(253, 252, 242, 1) 0%, rgba(251, 248, 229, 1) 100%);
	background : -ms-radial-gradient(50% 50%, circle farthest-corner, rgba(253, 252, 242, 1) 0%, rgba(251, 248, 229, 1) 100%);
	background : radial-gradient(50% 50%, circle farthest-corner, rgba(253, 252, 242, 1) 0%, rgba(251, 248, 229, 1) 100%);
}
	.ageBox50 .txt .cards li a::before{
		border-right: 36px solid #e5cf4c;
	}
.ageBox60 .txt .cards li{
	background : -webkit-radial-gradient(50% 50%, circle farthest-corner, rgba(251, 248, 251, 1) 0%, rgba(246, 240, 246, 1) 100%);
	background : -ms-radial-gradient(50% 50%, circle farthest-corner, rgba(251, 248, 251, 1) 0%, rgba(246, 240, 246, 1) 100%);
	background : radial-gradient(50% 50%, circle farthest-corner, rgba(251, 248, 251, 1) 0%, rgba(246, 240, 246, 1) 100%);
}
	.ageBox60 .txt .cards li a::before{
		border-right: 36px solid #c399c3;
	}

@media screen and (max-width: 768px){
	.age{
		margin-top: 75px;
	}
		.ageWrap{
			margin-top: 25px;
		}
			.ageBox{
			}
			.ageBox + .ageBox{
				margin-top: 25px;
			}
				.ageBox .img{
					position: relative;
					display: flex;
					width: 100%;
				}
					.ageBox .img .icon{
						width: 47.857143%;
					}
					.ageBox .copy{
						/* position: absolute;
						top: 46%;
						left: 38%; */
						width: 64%;
						font-size: 12px;
						line-height: 1.69;
						letter-spacing: .05em;
						margin-top: 21%;
						margin-left: -12%;
						margin-bottom: 0;
						text-align: justify;
						z-index: 10;
					}
					/* 複数世代の場合のコピー位置（「40〜50代」などの場合） */
					.ageBox.two-age .copy{
						/* top: 64%; */
						margin-top: 28%;
					}
						.ageBox .copy .markerLine::before,
						.ageBox .copy .markerLine::after{
							bottom: 1px;
							height: 6px;
						}
						.ageBox .copy .markerLine::before{
							width: 103%;
						}
						.ageBox .copy .markerLine::after{
							width: 104%;
						}
				.ageBox .txt{
					width: 100%;
					margin-top: 20px;
				}
					.ageBox .txt .txt2{
						font-size: 11px;
						margin-bottom: 15px;
						padding-bottom: 5px;
					}
					.ageBox .txt .cards{
						margin-top: 0;
					}
						.ageBox .txt .cards li{
							width: 100%;
							height: 50px;
							margin-top: 0;
						}
						.ageBox .txt .cards li + li{
							margin-top: 10px;
						}
							.ageBox .txt .cards li a{
								font-size: 15px;
							}
							.ageBox .txt .cards li a::before{
								border-top: 18px solid transparent;
							}
								.ageBox .txt .cards li a span{
									font-size: 11px;
									margin-bottom: 5px;
									padding-top: 0;
								}

	.ageBox10 .txt .cards li a::before{ border-right: 18px solid #eaa5a0; }
	.ageBox20 .txt .cards li a::before{ border-right: 18px solid #e6b276; }
	.ageBox30 .txt .cards li a::before{ border-right: 18px solid #92b5d8; }
	.ageBox40 .txt .cards li a::before{ border-right: 18px solid #9dcaa0; }
	.ageBox50 .txt .cards li a::before{ border-right: 18px solid #e5cf4c; }
	.ageBox60 .txt .cards li a::before{ border-right: 18px solid #c399c3; }
}

/* acc｜アコーディオン
---------------------------------------------- */
.accWrap{
}
	.accBox{
	}
		.accBox + .accBox{
			margin-top: 10px;
		}
			.accTtl{
				width: 100%;
				height: 60px;
				background: #de8c9a;
				cursor: pointer;
				user-select: none;
			}
			.accTtl::before{
				border-top: 40px solid transparent;
				border-right: 40px solid #e8aeb8;
			}
			.accTtl::after{
				bottom: 8px;
				right: 11px;
				width: 5px;
				height: 5px;
			}
				.accTtl a{
					display: flex;
					justify-content: center;
					align-items: center;
					width: 100%;
					height: 100%;
					font-size: 20px;
				}
			.accBox .accCont{
				display: none;
				margin-top: 20px;
				margin-bottom: 20px;
			}

@media screen and (max-width: 768px){
	.accWrap{
	}
		.accBox{
		}
			.accBox + .accBox{
				margin-top: 5px;
			}
				.accTtl{
					width: 100%;
					height: 40px;
				}
				.accTtl::before{
					border-top: 20px solid transparent;
					border-right: 20px solid #e8aeb8;
				}
				.accTtl::after{
					bottom: 4px;
					right: 5px;
					width: 3px;
					height: 3px;
				}
					.accTtl a{
						font-size: 16px;
					}
				.accBox .cellBox{
					margin-top: 10px;
					margin-bottom: 10px;
				}
}

/* chart
---------------------------------------------- */
.chart{
	margin-top: 120px;
}
	.chartBox{
		margin-top: 30px;
	}
	.chartBox a{
		position: absolute;
		display: block;
		height: 100px;
		background: rgba(255,255,255,0);
		transition: background .3s;
	}
	.chartBox a:hover{
		background: rgba(255,255,255,.3);
	}
	.chartBox .large{
		width: 210px;
		left: 70%;
	}
	.chartBox .small{
		width: 180px;
		bottom: 6.8181818%;
	}

@media screen and (max-width: 768px){
	.chart{
		margin-top: 100px;
	}
		.chartBox{
			margin-top: 20px;
		}
		.chartBox a{
			height: 32px;
		}
		.chartBox .large{
			width: 66px;
		}
		.chartBox .small{
			width: 56px;
			bottom: 6.8181818%;
		}
}

/* recommend
---------------------------------------------- */
.recommend{
	margin-top: 110px;
}
	.recommendWrap{
		margin-top: 45px;
	}
		.recommendBox{
		}
		.recommendBox + .recommendBox{
			margin-top: 60px;
		}
			.recommendBox figure{
			}
			.recommendBox .btn{
				max-width: 380px;
				margin: 30px auto 0;
			}
				.recommendBox .btn a{
					height: 60px;
					font-size: 16px;
					letter-spacing: .1em;
					color: #fff;
					background: #de8c9a;
				}
				.recommendBox .btn a::after{
					top: 50%;
					right: 7%;
					bottom: auto;
					width: 5px;
					height: 5px;
					border-top: 1px solid #fff;
					border-right: 1px solid #fff;
				}

.other{
	margin-top: 110px;
}
	.otherWrap{
		margin-top: 20px;
	}
		.otherWrap .list{
			margin-top: -60px;
		}
			.otherWrap .list li{
				width: 46.6666667%;
				margin-top: 60px;
				box-sizing: border-box;
			}
				.otherWrap .list li .img{
					position: relative;
					display: block;
				}
				.otherWrap .list li .img::before{
					content: '';
					position: absolute;
					top: 50%;
					left: 50%;
					transform: translate(-50%, -50%);
					width: 97.619048%;
					height: 96.428572%;
					border: 1px solid rgba(255, 255, 255, .5);
				}
				.otherWrap .list li .ttl{
					font-size: 20px;
					font-weight: 600;
					letter-spacing: .1em;
					margin-top: 30px;
					margin-bottom: 15px;
				}
				.otherWrap .list li .des{
					font-size: 16px;
					line-height: 1.875;
					letter-spacing: .1em;
					text-align: justify;
					text-justify: inter-ideograph;
				}
				.otherWrap .list li .noLink{
					pointer-events: none;
				}

@media screen and (max-width: 768px){
	.recommend{
		margin-top: 50px;
	}
		.recommendWrap{
			margin-top: 18px;
		}
			.recommendBox{
			}
			.recommendBox + .recommendBox{
				margin-top: 35px;
			}
				.recommendBox figure{
				}
				.recommendBox .btn{
					max-width: 250px;
					margin: 15px auto 0;
				}
					.recommendBox .btn a{
						height: 50px;
						font-size: 12px;
						letter-spacing: .05em;
						line-height: 1.3;
					}

	.other{
		margin-top: 80px;
	}
		.otherWrap{
			margin-top: 18px;
		}
			.otherWrap .list{
				margin-top: 0;
			}
				.otherWrap .list li{
					width: 100%;
					margin-top: 0;
				}
				.otherWrap .list li + li{
					margin-top: 24px;
				}
					.otherWrap .list li .img{
					}
					.otherWrap .list li .ttl{
						font-size: 13px;
						letter-spacing: .05em;
						margin-top: 20px;
						margin-bottom: 12px;
					}
					.otherWrap .list li .des{
						font-size: 12px;
						line-height: 1.8;
						letter-spacing: .05em;
					}
}

/* case
---------------------------------------------- */
.case{
	margin-top: 200px;
}
	.caseWrap{
		position: relative;
		margin-top: 80px;
	}
	.caseWrap + .caseWrap{
		margin-top: 130px;
	}
	.caseWrap::before{
		content: '';
		position: absolute;
		top: -35px;
		left: 50%;
		transform: translateX(-50%);
		width: 92px;
		height: 12px;
		background: url('../../img/common/pc/icon_star.svg') center/contain no-repeat;
	}
		.caseWrap h3,
		.caseWrap h4{
			font-size: 32px;
			text-align: center;
		}
			.caseWrap h3 small,
			.caseWrap h4 small{
				font-size: 24px;
			}
		.caseWrap figure{
			position: relative;
			max-width: 739px;
			margin: 50px auto 50px;
		}
		.caseWrap figure .icon{
			position: absolute;
			flex-direction: column;
			top: -20px;
			right: -20px;
			width: 90px;
			height: 90px;
			font-size: 16px;
			letter-spacing: .05em;
			background: #de8c9a;
			border-radius: 50%;
			text-align: center;
			box-shadow: 5px 5px 3px rgba(0, 0, 0, .1);
		}
			.caseWrap figure .icon small{
				font-size: 14px;
				margin-top: 6px;
			}
		.caseWrap figure .iconBefore{
			right: 55%;
		    width: 70px;
		    height: 70px;
		    background: #8b7b73;
		}
		/* .caseWrap figure::before{
			content: '';
			position: absolute;
			top: 0;
			right: -20px;
			width: 90px;
			height: 90px;
			border-radius: 50%;
			box-shadow: 5px 5px 3px rgba(0, 0, 0, .1);
		}
		.caseWrap figure.caseAfter::before{
			background: url('../../img/common/pc/icon_case_after.svg') center/contain no-repeat;
		}
		.caseWrap figure.case2w::before{
			background: url('../../img/common/pc/icon_case_2w.svg') center/contain no-repeat;
		}
		.caseWrap figure.case3m::before{
			background: url('../../img/common/pc/icon_case_3m.svg') center/contain no-repeat;
		}
		.caseWrap figure.case4m::before{
			background: url('../../img/common/pc/icon_case_4m.svg') center/contain no-repeat;
		}
		.case .cellBox dl dd{
			padding-top: 18px;
			padding-bottom: 18px;
		} */
	.case .caution{
		max-width: 500px;
		height: 40px;
		margin: 40px auto 0;
		background: #fcf4f6;
		border-radius: 20px;
		text-align: center;
	}

	/* 画像3枚 */
	.caseWrap.column3 figure{
		max-width: 100%;
	}
	.caseWrap.column3 figure .iconBefore{
		right: 69%;
	}
	.caseWrap.column3 figure .icon2{
		right: 33%;
	}

	/* 画像4枚 */
	.caseWrap.column4 figure{
		max-width: 100%;
	}
	.caseWrap.column4 figure .iconBefore{
		right: 77%;
	}
	.caseWrap.column4 figure .icon2{
		right: 50%;
	}
	.caseWrap.column4 figure .icon3{
		right: 24%;
	}

@media screen and (max-width: 768px){
	.case{
		margin-top: 90px;
	}
		.caseWrap{
			margin-top: 25px;
		}
		.caseWrap + .caseWrap{
			margin-top: 52px;
		}
		.caseWrap::before{
			top: -18px;
			width: 46px;
			height: 6px;
		}
			.caseWrap h3,
			.caseWrap h4{
				font-size: 16px;
				letter-spacing: .05em;
				line-height: 1.4;
				white-space: nowrap;
			}
				.caseWrap h3 small,
				.caseWrap h4 small{
					font-size: 12px;
				}
			.caseWrap figure{
				max-width: 773px;
				margin: 25px auto 20px;
			}
			.caseWrap figure .icon{
				top: -15px;
				width: 60px;
				height: 60px;
				font-size: 12px;
				letter-spacing: 0;
				transform: scale(.8)
			}
				.caseWrap figure .icon small{
					font-size: 9px;
					margin-top: 4px;
				}
			.caseWrap figure .iconBefore{
				top: -12px;
				right: 53%;
			    width: 45px;
			    height: 45px;
			}
			/* .caseWrap figure::before{
				right: -10px;
				width: 45px;
				height: 45px;
			} */
			.case .cellBox dl dd{
				padding-top: 9px;
				padding-bottom: 9px;
			}
		.case .caution{
			max-width: 250px;
			height: 30px;
			font-size: 12px;
			margin: 25px auto 0;
		}
}


/* priceArea
---------------------------------------------- */
.priceArea{
	margin-top: 120px;
	padding-bottom: 80px;
}
	.priceAreaWrap{
		margin-top: 30px;
	}

@media screen and (max-width: 768px){
	.priceArea{
		margin-top: 60px;
		padding-bottom: 40px;
	}
		.priceAreaWrap{
			margin-top: 15px;
		}
}