@charset "utf-8";
/* -----------------------------------------------------------
    u-cmn.css  料金ページ(price.css) / エリアトップ(area-detail.css) 共通パーツ
    ・値は area-detail.css を正として統合
    ・セレクタは「エリア側の元セレクタ」+「.price_detail 付き」の2本立て
      (エリア側の詳細度を変えず、料金ページ側は従来と同じ詳細度を維持するため)
    ・読み込み順: u-cmn.css → area-detail.css / price.css
-------------------------------------------------------------- */

/* -----------------------------------------------------------
    選ばれる理由 (reason_*)
-------------------------------------------------------------- */
.reason_area,
.price_detail .reason_area{
	padding: 0 0 80px;
	background: url(../img/bg_beige01.jpg) repeat;
}

.reason_area_img,
.price_detail .reason_area_img{
	position: relative;
}

.reason_area_img img,
.price_detail .reason_area_img img{
	width: 100%;
}

.reason_title,
.price_detail .reason_title{
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	font: 500 3.5rem / 1 'Noto Serif JP', serif;
	margin: 40px 0 0;
}

.reason_title img,
.price_detail .reason_title img{
	display: block;
	width: 210px;
	margin: 10px 15px 0 0;
}

.reason_title strong,
.price_detail .reason_title strong{
	color: #1f518e;
	font-size: 8rem;
	padding: 0 5px;
}

.reason_catch,
.price_detail .reason_catch{
	font: 600 3.8rem / 1.5 'Noto Serif JP', serif;
	text-align: center;
	margin: 30px 0 0;
}

#area.detail .reason_list,
.price_detail .reason_list{
	display: flex;
	width: 100%;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 90px 0 0;
	gap: 60px;
}

#area.detail .reason_list li,
.price_detail .reason_list li{
	width: 320px;
	width: calc((100% - 120px) / 3);
	background: #fff;
	border-radius: 10px;
	box-shadow: 3px 3px 3px 0 #e9e5dd;
	position: relative;
}

#area.detail .reason_num,
.price_detail .reason_num{
    width: 70px;
    height: 70px;
    color: #fff;
    font: 500 1.2rem / 1 'Josefin Sans', sans-serif;
    text-align: center;
    background: #1f518e;
    border-radius: 50%;
    padding: 21px 0 0;
    position: absolute;
    top: -35px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
}

#area.detail .reason_num span,
.price_detail .reason_num span{
    display: block;
    font-size: 2.8rem;
    margin: 3px 0 0;
}

#area.detail .reason_list img,
.price_detail .reason_list img{
	width: 320px;
	width: 100%;
	height: 210px;
	object-fit: cover;
	border-radius: 10px 10px 0 0;
}

#area.detail .reason_block,
.price_detail .reason_block{
	padding: 30px 30px 40px;
}

#area.detail .reason_block_title,
.price_detail .reason_block_title{
	font-family: 游ゴシック;
	font-weight: bold;
	font-size: 2.1rem;
	line-height: 1.5;
	text-align: center;
}

#area.detail .reason_block_txt,
.price_detail .reason_block_txt{
	font-size: 1.6rem;
	line-height: 1.6;
	margin: 15px 0 0;
}

#area.detail .reason_list li.reason1,
.price_detail .reason_list li.reason1{
	display: flex;
	width: 100%;
	align-items: center;
	padding: 20px 25px;
}

#area.detail .reason_list li.reason1 .reason_block_title,
.price_detail .reason_list li.reason1 .reason_block_title{
	text-align: left;
}

#area.detail .reason_list .reason1 img,
.price_detail .reason_list .reason1 img{
	border-radius: 0;
	width: 320px;
}

#area.detail .reason1 .reason_block,
.price_detail .reason1 .reason_block{
	padding: 0 0 0 50px;
}

#area.detail .reason1 .reason_block_txt,
.price_detail .reason1 .reason_block_txt{
	margin: 15px 0 0;
}

@media screen and (max-width: 768px) {
	.reason_area,
	.price_detail .reason_area{
			padding: 0 0 50px;
		}

	.reason_title,
	.price_detail .reason_title{
			display: none;
		}

	.reason_area_img,
	.price_detail .reason_area_img{
			position: relative;
		}

	.reason_area .section_eng,
	.price_detail .reason_area .section_eng{
			margin: 31px 0 0;
		}

	.reason_area .reason_catch,
	.price_detail .reason_area .reason_catch{
			line-height: 1.5;
			margin: 20px 0 0;
			text-align: center;
			font-size: 2.0rem;
			/* font-weight: 600; */
		}

	#area.detail .reason_list,
	.price_detail .reason_list{
			display: block;
			margin: 40px 0 0;
		}

	#area.detail .reason_list li,
	.price_detail .reason_list li{
			width: 100%;
			padding: 40px 20px 20px;
			margin: 0 0 40px;
		}

	#area.detail .reason_list li:last-of-type,
	.price_detail .reason_list li:last-of-type{
			margin: 0;
		}

	#area.detail .reason_num,
	.price_detail .reason_num{
			width: 50px;
			height: 50px;
			font-size: 1rem;
			padding: 17px 0 0;
			top: -23px;
		}

	#area.detail .reason_num span,
	.price_detail .reason_num span{
			font-size: 1.9rem;
	    	margin: 0;
		}

	#area.detail .reason_list img,
	.price_detail .reason_list img{
			width: 100%;
			border-radius: 0;
		}

	#area.detail .reason_block,
	.price_detail .reason_block{
			padding: 15px 0 0;
		}

	#area.detail .reason_block_title,
	.price_detail .reason_block_title{
			font-size: 1.8rem;
			line-height: 1.4;
		}

	#area.detail .reason_block_txt,
	.price_detail .reason_block_txt{
			margin: 10px 0 0;
			font-size: 1.5rem;
		}

	#area.detail .reason_list li.reason1,
	.price_detail .reason_list li.reason1{
			display: block;
			padding: 40px 20px 20px;
		}

	#area.detail .reason1 .reason_block,
	.price_detail .reason1 .reason_block{
			padding: 15px 0 0;
		}

	#area.detail .reason1 .reason_block_txt,
	.price_detail .reason1 .reason_block_txt{
			margin: 10px 0 0;
		}

}

/* -----------------------------------------------------------
    料金プラン (price_plan_*)
-------------------------------------------------------------- */
.price_plan_dl,
.price_detail .price_plan_dl{
	position: relative;
}

.price_plan_dl,
.price_detail .price_plan_dl{
	text-align: center;
	background: #fff;
	border-radius: 10px 10px 0 0;
	margin: 40px 0 0;
}

.price_plan_title,
.price_detail .price_plan_title{
	color: #fff;
	font: bold 3rem / 1 'Noto Sans JP', sans-serif;
	border-radius: 10px 10px 0 0;
	padding: 25px 0 20px;
	background-color: var(--blue02);
}

.price_plan_dl > dd,
.price_detail .price_plan_dl > dd{
	padding: 40px 75px;
	background-color: var(--gray03);
}

.price_plan_dl .plan_price,
.price_detail .price_plan_dl .plan_price{
	color: #333;
}

.price_plan_dl .plan_price strong,
.price_detail .price_plan_dl .plan_price strong{
	font-size: 5.6rem;
	padding: 0 8px 0 0;
}

.price_plan_dl dd .service_price,
.price_detail .price_plan_dl dd .service_price{
	align-items: center;
    display: flex;
    gap: 40px;
	justify-content: center;
}

.price_plan_dl dd .service_price .price_box,
.price_detail .price_plan_dl dd .service_price .price_box{
	align-items: center;
	display: flex;
	gap: 15px;
}

.price_plan_dl dd .service_price .price_box .price,
.price_detail .price_plan_dl dd .service_price .price_box .price{
	font-family: var(--serif);
    font-size: 5.6rem;
	font-weight: 400;
}

.price_plan_dl dd .service_price .price_box .supplement,
.price_detail .price_plan_dl dd .service_price .price_box .supplement{
	font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    line-height: 1.5;
}

.price_plan_dl dd .service_price .price_box .supplement span,
.price_detail .price_plan_dl dd .service_price .price_box .supplement span{
    font-size: 2.2rem;
}

.price_plan_dl dd .service_price .txt_box,
.price_detail .price_plan_dl dd .service_price .txt_box{
	text-align: left;
}

.price_plan_dl dd .service_price .txt_box .price_plan_txt,
.price_detail .price_plan_dl dd .service_price .txt_box .price_plan_txt{
	line-height: 1.6;
	/* margin: 10px 0; */
}

.price_plan_dl dd .service_price .txt_box .price_plan_txt + .price_plan_txt,
.price_detail .price_plan_dl dd .service_price .txt_box .price_plan_txt + .price_plan_txt{
	margin: 10px 0 0;
}

.price_plan_dl hr,
.price_detail .price_plan_dl hr{
	border-bottom: 1px solid var(--blue02);
	margin: 50px 0 0;
}

.price_plan_wrap,
.price_detail .price_plan_wrap{
	display: flex;
	width: 100%;
	justify-content: space-between;
	margin: 40px 0 0;
	gap: 40px;
}

.price_plan_wrap dl,
.price_detail .price_plan_wrap dl{
	width: calc((100% - 40px) / 2);
	background: #fff;
	border: solid 1px #707070;
	padding: 30px 30px 20px;
	border-radius: 10px;
}

.price_plan_wrap h3,
.price_detail .price_plan_wrap h3{
	color: var(--blue02);
	font-weight: bold;
	font-size: 2rem;
}

.price_plan_wrap .line,
.price_detail .price_plan_wrap .line{
	background: linear-gradient(transparent 75%, #bce1f5 75%);
}

.price_plan_wrap dd,
.price_detail .price_plan_wrap dd{
	text-align: left;
	line-height: 1.8;
	margin: 15px 0 0;
}

@media screen and (max-width: 768px) {
	.price_plan_dl,
	.price_detail .price_plan_dl{
			margin: 30px 0 0;
			position: relative;
		}

	.price_plan_title,
	.price_detail .price_plan_title{
			font-size: 1.8rem;
			padding: 10px 0;
		}

	.price_plan_title span,
	.price_detail .price_plan_title span{
			display: block;
			font-size: 1.3rem;
			margin: 0 0 5px;
		}

	.price_plan_dl > dd,
	.price_detail .price_plan_dl > dd{
			padding: 20px 10px;
			border-radius: 0 0 10px 10px;
		}

	.price_plan_dl > dd .accordion_icon,
	.price_detail .price_plan_dl > dd .accordion_icon{
			width: 15px;
			height: 15px;
			top: 50%;
			right: auto;
			left: 50%;
			transform: translate(-50%, -50%);
		}

	.price_plan_dl dd .service_price,
	.price_detail .price_plan_dl dd .service_price{
			flex-direction: column;
			gap: 15px;
		}

	.price_plan_dl .plan_price strong,
	.price_detail .price_plan_dl .plan_price strong{
			font-size: 3.0rem;
			padding: 0 6px 0 0;
		}

	.price_plan_dl .plan_price_right,
	.price_detail .price_plan_dl .plan_price_right{
			font-size: 1.2rem;
		}

	.price_plan_dl .plan_price_yen,
	.price_detail .price_plan_dl .plan_price_yen{
			font-size: 1.4rem;
			margin: 2px 0 0;
		}

	.price_plan_dl dd .service_price .price_box,
	.price_detail .price_plan_dl dd .service_price .price_box{
			gap: 10px;
		}

	.price_plan_dl dd .service_price .price_box .price,
	.price_detail .price_plan_dl dd .service_price .price_box .price{
			font-size: 3.4rem;
		}

	.price_plan_dl dd .service_price .price_box .supplement,
	.price_detail .price_plan_dl dd .service_price .price_box .supplement{
			font-size: 1.2rem;
		}

	.price_plan_dl dd .service_price .price_box .supplement span,
	.price_detail .price_plan_dl dd .service_price .price_box .supplement span{
			font-size: 1.4rem;
		}

	.price_plan_dl dd .service_price .txt_box,
	.price_detail .price_plan_dl dd .service_price .txt_box{
			text-align: left;
		}

	.price_plan_dl dd .service_price .txt_box .price_plan_txt,
	.price_detail .price_plan_dl dd .service_price .txt_box .price_plan_txt{
			font-size: 1.4rem;
			line-height: 1.4;
			text-align: left;
			margin: 0;
		}

	.price_plan_dl hr,
	.price_detail .price_plan_dl hr{
			display: none;
		}

	.price_plan_wrap,
	.price_detail .price_plan_wrap{
			display: block;
			margin: 10px 0 0;
		}

	.price_plan_wrap dl,
	.price_detail .price_plan_wrap dl{
			width: 100%;
			padding: 20px;
		}

	.price_plan_wrap dl:first-of-type,
	.price_detail .price_plan_wrap dl:first-of-type{
			margin: 0 0 10px;
		}

	.price_plan_wrap h3,
	.price_detail .price_plan_wrap h3{
			font-size: 1.6rem;
			text-align: left;
			line-height: 1.4;
		}

	.price_plan_wrap dd,
	.price_detail .price_plan_wrap dd{
			font-size: 1.5rem;
		}

}

/* -----------------------------------------------------------
    サービス内容 (price_service_*)
-------------------------------------------------------------- */
.price_service_dl,
.price_detail .price_service_dl{
	background: #fff;
	background: var(--gray03);
	padding: 40px 75px 0;
	border-top: 1px solid #eaeaea;
	position: relative;
}

.price_service_dl:last-of-type,
.price_detail .price_service_dl:last-of-type{
	border-radius: 0 0 10px 10px;
	padding: 40px 75px 40px;
}

.price_detail .price_service_dl:last-of-type::after{
	position: absolute;
	content: "";
	width: calc(100% + 200px);
	height: 40px;
	background-color: #fff;
	border-radius: 0 0 10px 10px;
	bottom: -40px;
	left: 50%;
    transform: translateX(-50%);
}

.price_service_title,
.price_detail .price_service_title{
	color: #fff;
    font: bold 2.2rem / 1 'Noto Sans JP', sans-serif;
	text-align: center;
	background: var(--blue02);
    border-radius: 10px;
    padding: 20px 0;
	margin: 0 0 30px;
}

.price_service_txt,
.price_detail .price_service_txt{
	line-height: 1.8;
	text-align: left;
}

.price_service_list,
.price_detail .price_service_list{
	padding: 0 0 0px 200px;
}

.price_service_list li:not(:last-of-type),
.price_detail .price_service_list li:not(:last-of-type){
	margin: 0 0 20px;
}

.price_service_list li,
.price_detail .price_service_list li{
	text-align: left;
}

.price_service_list li:not(:last-of-type),
.price_detail .price_service_list li:not(:last-of-type){
	margin: 0 0 20px;
}

.price_service_list li::before,
.price_detail .price_service_list li::before{
	display: inline;
    content: "\f00c";
	color: #0070af;
    font-weight: normal;
    font-family: 'FontAwesome';
    padding: 0 8px 0 0;
}

.price_service_wrap,
.price_detail .price_service_wrap{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: 20px;
	/* padding: 0 30px 20px; */
	margin: 30px 0 0;
	justify-content: center;
}

.price_service_wrap li,
.price_detail .price_service_wrap li{
	display: flex;
	width: 160px;
	line-height: 1.4;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	border: 1px solid #ddd;
	box-shadow: 2px 2px 2px 0 #ddd;
	padding: 20px 15px 15px;
	/* margin: 0 20px 20px 0; */
	background-color: #fff;
}

.price_service_wrap img,
.price_detail .price_service_wrap img{
	display: block;
	margin: 0 0 10px;
    object-fit: contain;
}

.price_service_wrap p,
.price_detail .price_service_wrap p{
	margin: auto;
}

@media screen and (max-width: 768px) {
	.price_service_dl,
	.price_detail .price_service_dl{
			padding: 20px !important;
		}

	.price_service_title,
	.price_detail .price_service_title{
			font-size: 1.6rem;
			padding: 15px 0;
			margin: 0;
			position: relative;
		}

	.price_service_title .accordion_icon,
	.price_detail .price_service_title .accordion_icon{
			right: 20px;
        top: 50%;
        transform: translateY(-50%);
		}

	.price_service_title .accordion_icon span,
	.price_detail .price_service_title .accordion_icon span{
			background-color: #fff;
		}

	.price_service_txt,
	.price_detail .price_service_txt{
			font-size: 1.5rem;
			padding: 15px 0 0;
		}

	.price_service_list,
	.price_detail .price_service_list{
			padding: 0;
		}

	.price_service_list li,
	.price_detail .price_service_list li{
			font-size: 1.5rem;
			line-height: 1.4;
			text-indent: -24px;
	    	padding: 0 0 0 24px;
		}

	.price_service_list li:not(:last-of-type),
	.price_detail .price_service_list li:not(:last-of-type){
			margin: 0 0 10px;
		}

	.price_service_wrap,
	.price_detail .price_service_wrap{
			/* display: block; */
			flex-wrap: wrap;
			padding: 0;
			margin: 0;
			gap: 10px;
		}

	.price_service_wrap li,
	.price_detail .price_service_wrap li{
			width: calc((100% - 10px) / 2);
			gap: 10px;
			justify-content: center;
			text-align: left;
			line-height: 1.4;
			padding: 10px 20px;
			margin: 0;
		
			/* width: 100%; */
			/* flex-direction: row; */
			text-align: left;
			line-height: 1.4;
			padding: 10px 20px;
		}

	.price_service_wrap img,
	.price_detail .price_service_wrap img{
			width: 52px;
			height: 38px;
			margin: 0;
			/* margin: 0 10px 0 0; */
		}

	.price_service_wrap p,
	.price_detail .price_service_wrap p{
			font-size: 1.2rem;
			margin: 0;
		}

}

/* -----------------------------------------------------------
    プランボックス プレミアム (parts/cmn-premium.php)
    ・area側: .plan-area .plan-box / 料金ページ側: .price_detail .plan-box
-------------------------------------------------------------- */
.plan-area .plan-box,
.price_detail .plan-box{
	padding: 80px 0;
	margin: 70px auto 0;
	position: relative;
}

.plan-area .plan-box::before,
.price_detail .plan-box::before{
	position: absolute;
	content: "";
	width: calc(100% + 200px);
	height: 100%;
	background-color: #fff;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 0;
	border-radius: 10px;
}

.plan-area .plan-box .plan-ttl-box,
.price_detail .plan-box .plan-ttl-box{
	display: flex;
	justify-content: space-between;
	gap: 60px;
	position: relative;

}

.plan-area .plan-box .plan-ttl-box .txt-box,
.price_detail .plan-box .plan-ttl-box .txt-box{
	width: calc(100% - 600px);
	width: calc(100% - 575px);
}

.plan-area .plan-box .plan-ttl-box .txt-box .yellow-ribbon,
.price_detail .plan-box .plan-ttl-box .txt-box .yellow-ribbon{
	/* width: 320px; */
    height: 36px;
    font-weight: bold;
    background: url(../img/ribbon_yellow01.png) no-repeat center / 100%;
    line-height: 36px;
	text-align: center;
	display: inline-block;
	padding: 0 35px;
}

.plan-area .plan-box .plan-ttl-box .txt-box .plan-title,
.price_detail .plan-box .plan-ttl-box .txt-box .plan-title{
	border-bottom: 1px solid;
	border-image: linear-gradient(to right, var(--main), #fff) 1;
	color: var(--main);
	font-family: 'Noto Serif JP', serif;
	font-size: 4.6rem;
	font-weight: 600;
	padding: 0 0 10px 0;
	margin: 10px 0 0;
}

.plan-area .plan-box .plan-ttl-box .txt-box .plan-catch,
.price_detail .plan-box .plan-ttl-box .txt-box .plan-catch{
	font-size: 2.8rem;
	line-height: 1.6;
	font-weight: bold;
	margin: 18px 0 24px;
}

.plan-area .plan-box .plan-ttl-box .txt-box .service_price,
.price_detail .plan-box .plan-ttl-box .txt-box .service_price{
	align-items: center;
    display: flex;
	flex-wrap: wrap;
    gap: 0px 5px;
    margin: 16px 0 0;
}

.plan-area .plan-box .plan-ttl-box .txt-box .fs-wrap,
.price_detail .plan-box .plan-ttl-box .txt-box .fs-wrap{
	gap: 15px;
}

.plan-area .plan-box .plan-ttl-box .txt-box .service_price .txt,
.price_detail .plan-box .plan-ttl-box .txt-box .service_price .txt{
	width: 100%;
	background-color: var(--gold);
	color: #fff;
	text-align: center;
	margin: 0 0 5px;
}

.plan-area .plan-box .plan-ttl-box .txt-box .service_price .price,
.price_detail .plan-box .plan-ttl-box .txt-box .service_price .price{
	font-family: var(--Josefin);
    font-size: 4.5rem;
}

.plan-area .plan-box .plan-ttl-box .txt-box .service_price .price .supplement,
.price_detail .plan-box .plan-ttl-box .txt-box .service_price .price .supplement{
	font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 1.2;
}

.plan-area .plan-box .plan-ttl-box .img,
.price_detail .plan-box .plan-ttl-box .img{
	width: 515px;
	background-color: #ddd;
}

.plan-area .plan-box.premium,
.price_detail .plan-box.premium{
	margin: 40px 0 0;
}

.plan-area .plan-box.premium::before,
.price_detail .plan-box.premium::before{
	border: 2px solid  var(--gold);
}

.plan-area .plan-box.premium .plan-ttl-box .txt-box .yellow-ribbon,
.price_detail .plan-box.premium .plan-ttl-box .txt-box .yellow-ribbon{
	height: 40px;
	line-height: 40px;
	background: url(../img/ribbon_gold.png) no-repeat center / 100%;
	color: #fff;
}

.plan-area .plan-box.premium .plan-ttl-box .txt-box .plan-title,
.price_detail .plan-box.premium .plan-ttl-box .txt-box .plan-title{
	border-image: linear-gradient(to right, #AA940C, #fff) 1;
	color: var(--gold);
	font-size: 3.6rem;
}

.plan-area .plan-box.premium .plan-ttl-box .txt-box .plan-catch,
.price_detail .plan-box.premium .plan-ttl-box .txt-box .plan-catch{
	font-size: 2.0rem;
	margin: 15px 0 15px;
}

.plan-area .plan-box.premium .img  img,
.price_detail .plan-box.premium .img  img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.plan-area .plan-box.premium .plan-ttl-box .txt-box .service_price .price,
.price_detail .plan-box.premium .plan-ttl-box .txt-box .service_price .price{
	font-family: var(--serif);
}

.plan-area .plan-box.premium .plan-ttl-box .txt-box .service_price .supplement,
.price_detail .plan-box.premium .plan-ttl-box .txt-box .service_price .supplement{
	line-height: 1.5;
}

/* .fs-wrap（初年度/2年目の価格並び）: area側は .plan-area .fs-wrap の指定が効いているため料金ページ側へ同等を付与 */
.price_detail .plan-box .fs-wrap{
	display: flex;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 768px) {
	.plan-area .plan-box,
	.price_detail .plan-box{
			padding: 40px 10px;
			margin: 20px 0 0;
		}

	.plan-area .plan-box::before,
	.price_detail .plan-box::before{
			width: 100%;
		}

	.plan-area .plan-box .plan-ttl-box,
	.price_detail .plan-box .plan-ttl-box{
			flex-wrap: wrap;
			/* gap: 24px; */
			padding: 0 10px;
		}

	.plan-area .plan-box .plan-ttl-box .txt-box,
	.price_detail .plan-box .plan-ttl-box .txt-box{
			width: 100%;
			order: 0;
		}

	.plan-area .plan-box .plan-ttl-box .txt-box .yellow-ribbon,
	.price_detail .plan-box .plan-ttl-box .txt-box .yellow-ribbon{
			/* width: 260px; */
			height: 30px;
			line-height: 30px;
			position: absolute;
			top: -54px;
		}

	.plan-area .plan-box .plan-ttl-box .txt-box .plan-title,
	.price_detail .plan-box .plan-ttl-box .txt-box .plan-title{
			font-size: 2.6rem;
			padding: 0;
			margin: 0 0 15px;
			border: none;
		}

	.plan-area .plan-box .plan-ttl-box .txt-box .plan-catch,
	.price_detail .plan-box .plan-ttl-box .txt-box .plan-catch{
			font-size: 2.0rem;
			margin: 20px 0 10px;
		}

	.plan-area .plan-box .plan-ttl-box .txt-box .service_price .price,
	.price_detail .plan-box .plan-ttl-box .txt-box .service_price .price{
			font-size: 3.6rem;
		}

	.plan-area .plan-box .plan-ttl-box .img,
	.price_detail .plan-box .plan-ttl-box .img{
			width: 100%;
			height: 180px;
			order: 1;
		}

	.plan-area .plan-box .plan-ttl-box .img img,
	.price_detail .plan-box .plan-ttl-box .img img{
			width: 100%;
			height: 100%;
			object-fit: cover;
		}

	.plan-area .plan-box.premium::before,
	.price_detail .plan-box.premium::before{
			border: 2px solid var(--gold);
		}

	.plan-area .plan-box.premium .plan-ttl-box .txt-box .yellow-ribbon,
	.price_detail .plan-box.premium .plan-ttl-box .txt-box .yellow-ribbon{
			height: 30px;
			line-height: 30px;
			right: auto;
			left: 50%;
			transform: translateX(-50%);
			margin: 0 auto;
		}

	.plan-area .plan-box.premium .plan-ttl-box .txt-box .plan-title,
	.price_detail .plan-box.premium .plan-ttl-box .txt-box .plan-title{
			font-size: 2.6rem;
			color: var(--gold);
		}

	.plan-area .plan-box.premium .plan-ttl-box .txt-box .img,
	.price_detail .plan-box.premium .plan-ttl-box .txt-box .img{
			width: 100%;
			height: 180px;
		}

	.plan-area .plan-box.premium .plan-ttl-box .txt-box .img img,
	.price_detail .plan-box.premium .plan-ttl-box .txt-box .img img{
			width: 100%;
		}

	.plan-area .plan-box.premium .plan-ttl-box .txt-box .service_price .price,
	.price_detail .plan-box.premium .plan-ttl-box .txt-box .service_price .price{
			font-family: var(--serif);
		}

	.plan-area .plan-box.premium .plan-ttl-box .txt-box .service_price .supplement,
	.price_detail .plan-box.premium .plan-ttl-box .txt-box .service_price .supplement{
			line-height: 1.5;
		}

	.price_detail .plan-box .fs-wrap{
		flex-direction: column;
		gap: 0px !important;
	}

}
