@charset "UTF-8";

.wrap.contents-wrap {
	padding: 0;
	max-width: none;
}

.container {
	padding: 0 3%;
	max-width: 1000px;
	margin: 0 auto;
}

/***************************************
priceページ共通装飾
****************************************/
body {
	font-family: "ヒラギノ角ゴ ProN W3", HiraKakuProN-W3, 游ゴシック, "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
	--bg-color: #F58431;
	--text-color: #ED6D1F;
}

.box {
	padding: 48px 3%;
	color: #583816;
	font-size: 16px;
	font-weight: 500;
	margin: 0 auto;
}

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

.sp_only {
	display: none;
}

@media screen and (max-width: 768px) {
	.sp_only {
		display: block;
	}
}

.pc_only {
	display: block;
}

@media screen and (max-width: 768px) {
	.pc_only {
		display: none;
	}
}

.pc_only_span {
	display: inline;
}

@media screen and (max-width: 768px) {
	.pc_only_span {
		display: none;
	}
}

.box_title {
	text-align: left;
	font-size: 24px;
	line-height: 1.4;
	border-bottom: 1px solid #583816;
	padding-bottom: 8px;
	color: #583816;
	margin-bottom: 50px;
}

.box_title img {
	margin-right: 10px;
	margin-bottom: 6px;
}

.brown {
	color: #583816;
}

.orange {
	color: #ed6d1f
}

.yellow {
	color: #ed6d1f
}

.green {
	color: #6eba44
}

.bold {
	font-weight: bold;
}

.blank {
	width: 1em;
	display: inline-flex;
}

table td {
	color: #583816;
	background: white;
}

table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 25px;
}

table.base.bgorange td.price {
	border-right: 1px solid #ed6d1f;
	width: 15em;
	text-align: right;
	align-content: center;
}

table.base.bgyellow td.price {
	border-right: 1px solid #faa770;
	width: 15em;
	text-align: right;
	align-content: center;
}

table.base.bgorange {
	border: 2px solid #ed6d1f;
}

table.base.bgorange th {
	background: #ed6d1f;
	color: white;
	font-size: 24px;
	width: 7em;
	text-align: center;
	align-content: center;
	vertical-align: middle;
	font-weight: 500;
	border-right: 2px solid #ed6d1f;
}

table.base.bgorange th.bold {
	font-weight: bold;
}

table.base.bgorange td {
	padding: 20px;
	vertical-align: middle;
}

table.base.bgyellow {
	border: 2px solid #faa770;
}

table.base.bgyellow th {
	background: #fffce4;
	color: #faa770;
	font-size: 24px;
	width: 7em;
	text-align: center;
	vertical-align: middle;
	align-content: center;
	font-weight: bold;
	border-right: 2px solid #faa770;
}

table.base.bgyellow td {
	padding: 20px;
	vertical-align: middle;
}

span.num {
	font-size: 28px;
	margin: 0 5px;
}

span.num02 {
	font-size: 22px;
	border-bottom: 1px solid;
	padding-bottom: 3px;
}

span.num.top {
	margin-left: 4.5em;
}

span.bgpink {
	background: #fff0e8;
	border-radius: 20px;
	padding: 3px 10px;
	margin: 0 4px;
}

table.base td ul {
	margin-top: 10px;
}

table.base td ul li {
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
}

table.base td ul li.line {
	border-bottom: 1px solid #faa770;
	display: inline-block;
	margin-bottom: 3px;
	text-align: left;
}

.sp {
	display: none;
}

.pc {
	display: contents;
}

@media screen and (max-width: 640px) {
	.sp {
		display: block;
	}

	.pc {
		display: none;
	}

	.blanksp {
		width: 1em;
		display: inline-flex;
	}

	.box_title img {
		width: 15px;
	}

	.box_title {
		font-size: 18px;
		margin-bottom: 40px;
	}

	.box04 .box_title {
		font-size: 16px;
	}

	table.base th,
	table.base td,
	table.base.bgorange th,
	table.base.bgyellow th {
		display: block;
		width: 100%;
	}

	table.base.bgorange th,
	table.base.bgyellow th {
		font-size: 18px;
		padding: 10px 0;
		border-right: 0;
	}

	span.num.top {
		margin-left: 0;
	}

	table.base.bgorange td,
	table.base.bgyellow td {
		padding: 13px;
		text-align: center;
	}
	table.base.bgorange td.irregular {
		text-align: left;
		padding: 13px 92px;
	}

	table.base.bgorange td.price {
		width: 100%;
		text-align: center;
		border-bottom: 1px solid #ed6d1f;
		border-right: 0;
	}

	table.base.bgyellow td.price {
		width: 100%;
		text-align: center;
		border-bottom: 1px solid #faa770;
		border-right: 0;
	}

	table.base td ul li.line {
		display: table-cell;
	}
}

/***************************************
box01
****************************************/
.box01 {
	display: block;
	text-align: center;
	background-color: #fff;
	padding-bottom: 0;
}

.box01 .title {
	font-size: 32px;
	font-weight: 500;
	letter-spacing: 0.05em;
	color: var(--text-color);
	background: url(../images/parts_title_price.jpg) no-repeat 47% 10px;
	padding-bottom: 20px;
	margin-bottom: 25px;
}

@media screen and (max-width: 896px) {
	.box01 .title {
		font-size: 24px;
	}

	.box01 .title {
		padding-bottom: 45px;
	}
}

@media screen and (max-width: 640px) {
	.box01 .title {
		background: url(../images/parts_title_price.jpg) no-repeat 0% 20px;
		padding-bottom: 45px;
		margin-bottom: 5px;
		background-size: 95%;
	}
}

.box01 .title-kakko {
	font-size: 16px;
	font-weight: 400;
}

.box01 .sub-title {
	font-size: 16px;
	font-weight: 400;
}

/***************************************
box02
****************************************/
.dining_image {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin-bottom: 32px;
}

.dining_image_box {
	display: block;
	width: 32%;
	text-align: center;
}

/***************************************
box03
****************************************/
.box03 {
	background: #eef8ec;
	padding: 60px 3%;
}

.free_box {
	clear: both;
	width: 100%;
	display: inline-block;
}

.free_box ul {
	width: 100%;
}

.free_box img {
	float: left;
	width: 30%;
}

.free_box ul li {
	background: white;
	border-radius: 90px;
	margin-bottom: 15px;
	padding: 10px 30px 10px 55px;
	position: relative;
}

li span.mr {
	position: absolute;
	left: 30px;
}

@media screen and (max-width: 640px) {
	.free_box ul {
		float: left;
		width: 100%;
		margin-right: 0%;
	}

	.free_box ul li {
		padding: 7px 25px 7px 35px;
	}

	li span.mr {
		left: 15px;
	}

	.free_box img {
		float: none;
		width: 100%;
		margin-top: 25px;
	}
}

/***************************************
box04
****************************************/
.box04 {
	background: #fef6f2;
	padding: 60px 3%;
}

.box04 table {
	margin-bottom: 15px;
}

.box04 table.base.bgorange th {
	font-size: 20px;
	width: 10em;
}

.box04 ul.plan_list {
	margin-top: 30px;
}

.box04 ul.plan_list li {
	text-indent: -1.3em;
	padding-left: 1.3em;
}

.box04 .inner {
	overflow: hidden;
}

.box04 .inner p {
	float: left;
	width: 52%;
	margin-top: 60px;
}

.box04 .inner img {
	width: 45%;
	float: right;
}

@media screen and (max-width: 640px) {
	span.num02 {
		font-size: 18px;
	}

	.box04 table.base.bgorange th {
		display: block;
		width: 100%;
	}

	.box04 table.base.bgorange th {
		font-size: 18px;
		padding: 10px 0;
	}

	.box04 ul.plan_list li {
		margin: 10px 0;
	}

	.box04 .inner p {
		float: none;
		width: 100%;
		margin-top: 0;
	}

	.box04 .inner img {
		width: 100%;
		float: none;
		margin-top: 40px;
	}
}

/***************************************
box05
****************************************/
.box05 ul.other_list01 {
	margin-bottom: 40px;
}

.box05 ul.other_list01 li {
	margin: 15px 0;
	text-indent: -1.3em;
	padding-left: 1.3em;
}

.box05 p.caution {
	font-size: 20px;
}

.box05 ul.other_list02 {
	width: 100%;
	display: inline-block;
	margin-top: 30px;
}

.box05 ul.other_list02 li {
	width: 48%;
	float: left;
	margin-right: 4%;
}

.box05 ul.other_list02 li:last-child {
	margin-right: 0;
}

.box05 ul.other_list02 .boxtxt a {
	color: #6eba44;
	background: white;
	border-radius: 5px;
	border: 1px solid #6eba44;
	display: block;
	padding: 10px 15px;
	box-sizing: border-box;
	margin-top: 10px;
	position: relative;
}

.box05 ul.other_list02 .boxtxt a:hover {
	background: #f6fff0;
}

.box05 ul.other_list02 .boxtxt a::before {
	position: absolute;
	content: url(../images/price_icon_arrow.svg);
	top: 32%;
	right: 15px;
	width: 30px;
}

@media screen and (max-width: 640px) {
	.box05 p.caution {
		font-size: 18px;
	}

	.box05 ul.other_list02 li {
		width: 100%;
		float: none;
		margin-right: 0%;
		margin-bottom: 20px;
	}

	.box05 ul.other_list01 li.indnone {
		text-indent: 0;
		padding-left: 0;
	}

	.box05 ul.other_list01 li p.pl {
		padding-left: 1em;
	}
}