@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainVisual {
	padding: 121px 30px 341px;
	position: relative;
	text-align: center;
	background: #86CDF9;
}
.mainVisual::before {
	width: 100%;
	height: 330px;
	position: absolute;
	left: 0;
	bottom: -15px;
	background: url("../img/index/bg01.png") no-repeat left calc(50% - 7px) bottom / 1949px auto;
	content: '';
}
.mainVisual::after {
	width: 269px;
	height: 216px;
	position: absolute;
	bottom: -31px;
	left: calc(50% - 427px);
	background: url("../img/index/bg02.png") no-repeat center center;
	background-size: 269px auto;
	content: '';
	transform: translateX(-50%);
}
.mainVisual .mainImg {
	margin: 0 auto;
	padding-right: 8px;
	max-width: 1690px;
	box-sizing: border-box;
}
#main {
	margin-bottom: 28px;
}
#main .secBox {
	padding-top: 56px;
	background: #FFD200;
}
#main .secBox .topBox {
	margin: 0 auto;
	padding: 0 45px;
	max-width: 1810px;
	text-align: right;
	box-sizing: border-box;
}
#main .secBox .topBox img {
	width: 100%;
	max-width: 1625px;
}
#main .secBox .h2Ttl {
	margin-top: -16px;
	margin-bottom: 3px;
	position: relative;
	z-index: 1;
	text-align: center;
	color: #6490E8;
	font-size: 6.2rem;
	font-weight: 900;
	letter-spacing: 0.025em;
}
#main .secBox .h2Ttl .red {
	color: #E74900;
}
#main .secBox .innerBox {
	margin-bottom: 56px;
}
#main .secBox .numImg {
	width: 132px;
	position: absolute;
	left: -54px;
	top: -59px;
}
#main .secBox .subSec01 {
	box-sizing: border-box;
	margin-bottom: 84px;
	width: 100%;
	padding: 37px 4.55% 48px 5.7%;
	position: relative;
	background: url("../img/index/bg03.jpg") no-repeat center top / cover;
}
#main .secBox .subSec01::after {
	width: 163px;
	height: 198px;
	position: absolute;
	left: 13%;
	bottom: -75px;
	background: url("../img/index/bg04.png") no-repeat center center / 100% auto;
	content: '';
}
#main .secBox .subSec01 .numImg {
	left: 8px;
	top: -85px;
}
#main .secBox .h3Ttl {
	margin-bottom: 40px;
	text-align: center;
	color: #6490E8;
	font-size: 4.8rem;
	font-weight: 900;
	letter-spacing: 0.02em;
}
#main .secBox .subSec01 .h3Ttl {
	letter-spacing: 0.22em;
}
#main .secBox .subSec01 .imgList {
	margin-bottom: 61px;
}
#main .secBox .subSec01 .imgList li {
	margin-right: 4%;
	width: 16.8%;
	font-size: 1.5rem;
	text-align: center;
	background: #fff;
}
#main .secBox .subSec01 .imgList li:nth-child(5n) {
	margin-right: 0;
}
#main .secBox .subSec01 .imgList li img {
	width: 100%;
}
#main .secBox .subSec01 .imgList li .txt {
	padding: 5px 5px 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.35;
	letter-spacing: 0.02em;
}
#main .secBox .price {
	text-align: center;
	color: #6490E8;
	font-size: 5.4rem;
	letter-spacing: 0.08em;
}
#main .secBox .subSec02 {
	box-sizing: border-box;
	margin-left: 9px;
	width: 47.4%;
	padding: 100px 3% 40px;
	position: relative;
	background: url("../img/index/bg05.jpg") no-repeat center top / cover;
}
#main .secBox .subSec02 .h3Ttl {
	margin-bottom: 73px;
}
#main .secBox .subSec02 .imgBox {
	margin-bottom: 94px;
	align-items: center;
}
#main .secBox .subSec02 .imgBox .photoBox {
	width: 45.5%;
}
#main .secBox .subSec02 .imgBox .photoBox img {
	width: 100%;
}
#main .secBox .subSec02 .imgBox .textBox {
	box-sizing: border-box;
	padding-bottom: 12px;
	width: 49.3%;
}
#main .secBox .subSec02 .imgBox .textBox p {
	font-size: 3rem;
	line-height: 1.65;
}
#main .secBox .subSec03 {
	box-sizing: border-box;
	width: 47%;
	padding: 105px 4.95% 40px;
	position: relative;
	background: url("../img/index/bg05.jpg") no-repeat center top / cover;
}
#main .secBox .subSec03::after {
	width: 408px;
	height: 187px;
	position: absolute;
	right: 30px;
	bottom: -204px;
	background: url("../img/index/bg07.png") no-repeat center top / 100% auto;
	content: '';
}
#main .secBox .subSec03 .imgTxt {
	width: 62.6%;
	max-width: 502px;
	position: absolute;
	right: -23px;
	top: -45px;
	text-align: right;
}
#main .secBox .subSec03 .imgTxt img {
	width: 100%;
}
#main .secBox .subSec03 .h3Ttl {
	margin-bottom: 15px;
	position: relative;
	z-index: 1;
}
#main .secBox .subSec03 .h3Ttl span {
	display: inline-block;
	position: relative;
	z-index: 1;
}
#main .secBox .subSec03 .h3Ttl span::after {
	width: 79px;
	height: 128px;
	position: absolute;
	right: -45px;
	bottom: -40px;
	background: url("../img/index/bg06.png") no-repeat center center / cover;
	content: '';
	z-index: -1;
}
#main .secBox .subSec03 .logoImg {
	margin-left: 3px;
	margin-bottom: 22px;
	max-width: 189px;
}
#main .secBox .subSec03 .imgList {
	margin-bottom: 8px;
}
#main .secBox .subSec03 .imgList li {
	width: 46.3%;
	font-size: 2.6rem;
}
#main .secBox .subSec03 .imgList li:not(:nth-child(2n)) {
	margin-right: 4.4%;
}
#main .secBox .subSec03 .imgList li img {
	width: 100%;
}
#main .secBox .subSec03 .imgList li .txt {
	padding: 7px 6px 0;
	display: block;
}
#main .secBox .subSec03 .text {
	margin-bottom: 3px;
	text-align: center;
	line-height: 2.15;
}
#main .secBox .priceTxt {
	margin-bottom: 83px;
	position: relative;
	z-index: 2;
	text-align: center;
	color: #FFA000;
	font-size: 4.8rem;
}
#main .secBox .priceTxt .txt {
	padding: 26px 40px 25px;
	display: inline-block;
	vertical-align: top;
	letter-spacing: 0.1em;
	border-radius: 46px;
	background-color: #fff;
}
#main .secBox .priceTxt .txt .num {
	margin-left: 0.5em;
	display: inline-block;
	vertical-align: bottom;
	font-size: 5.3rem;
	line-height: 1.35;
	letter-spacing: 0.05em;
}
#main .bgBox {
	position: relative;
	padding-bottom: 73px;
}
#main .bgBox::after {
	width: 100%;
	height: calc(100% - 355px);
	position: absolute;
	left: 0;
	bottom: 0;
	background: #fff;
	content: '';
}
#main .bgBox .content {
	max-width: 1750px;
	position: relative;
	z-index: 1;
}
#main .bgBox .checkBox {
	margin: 0 0 16px;
	padding: 1px 40px 72px;
	position: relative;
	background-color: #D7D7D7;
}
#main .bgBox .checkBox .textBox {
	display: flex;
	justify-content: flex-end;
}
#main .bgBox .checkBox::before {
	width: 308px;
	height: 295px;
	position: absolute;
	left: -8px;
	top: -215px;
	background: url(../img/index/bg08.png) no-repeat center center / cover;
	content: '';
}
#main .bgBox .checkBox h3 {
	margin: -41px 0 60px;
	text-align: center;
}
#main .bgBox .checkBox h3 img {
	width: 280px;
}
#main .bgBox .checkBox .rBox {
	margin-left: 60px;
	width: 58.3%;
}
#main .bgBox .checkBox .rBox .priceList {
	margin-bottom: 70px;
	position: relative;
	display: flex;
	justify-content: space-between;
}
#main .bgBox .checkBox .rBox .priceList:last-of-type {
	margin-bottom: 0;
}
#main .bgBox .checkBox .rBox .priceList.btmList::before {
	width: 86.84%;
	height: 3px;
	position: absolute;
	left: 50%;
	top: -38px;
	transform: translateX(-50%);
	background-color: #000;
	content: '';
}
#main .bgBox .checkBox .rBox .priceList li {
	width: calc((100% - 46px) / 2);
}
#main .bgBox .checkBox .rBox .priceList .ttl {
	margin: 0 auto 10px;
	padding: 7px 10px 8px;
	width: 71.13%;
	text-align: center;
	font-size: 3.6rem;
	box-sizing: border-box;
	background-color: #F9FF73;
}
#main .bgBox .checkBox .rBox .priceList dl {
	font-size: 2.4rem;
}
#main .bgBox .checkBox .rBox .priceList dt {
	float: left;
}
#main .bgBox .checkBox .rBox .priceList dd {
	margin-bottom: 11px;
	padding-left: 11.5em;
	font-size: 2.6rem;
}
#main .bgBox .checkBox .rBox .priceList li:nth-of-type(2n - 1) dd {
	padding-left: 10em;
}
#main .bgBox .checkBox .rBox .priceList.btmList dd {
	margin-bottom: 20px;
	padding-left: 10em;
}
#main .bgBox .checkBox .rBox .priceList.btmList li:nth-of-type(2n - 1) dd {
	padding-left: 11em;
}
#main .bgBox .checkBox .rBox .priceList dd:last-of-type {
	margin-bottom: 0;
}
#main .bgBox .checkBox .lBox {
	margin-top: -12px;
	width: 31.14%;
}
#main .bgBox .checkBox .lBox h4 {
	margin-bottom: 55px;
	font-size: 4.8rem;
	font-weight: 900;
	line-height: 1.23;
	text-align: center;
}
#main .bgBox .checkBox .lBox .text {
	margin-bottom: 12px;
	color: #fff;
	font-size: 3rem;
	text-align: right;
}
#main .bgBox .checkBox .lBox .text small {
	display: block;
	font-size: 2.4rem;
	line-height: 1.38;
}
#main .bgBox .checkBox .lBox .price {
	padding: 12px;
	position: relative;
	color: #FFD200;
	font-size: 5.6rem;
	letter-spacing: 0.02em;
	text-align: center;
	background-color: #000;
}
#main .bgBox .checkBox .lBox .price span {
	width: 135px;
	display: block;
	position: absolute;
	left: -80px;
	top: -120px;
}
#main .bgBox .textList {
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap-reverse;
}
#main .bgBox .textList > li {
	padding: 39px 16px 38px;
	width: 50%;
	box-sizing: border-box;
	background-color: #86CDF9;
}
#main .bgBox .textList > li:nth-of-type(2n) {
	background-color: #FFA000;
}
#main .bgBox .textList li .ttl01 {
	margin-bottom: 64px;
	color: #fff;
	font-size: 4.8rem;
	text-align: center;
}
#main .bgBox .textList li .txtList {
	margin: -30px 0 43px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main .bgBox .textList li .txtList::after {
	width: calc((100% - 20px) / 3);
}
#main .bgBox .textList li .txtList li {
	margin-top: 30px;
	padding: 0;
	width: calc((100% - 20px) / 3);
}
#main .bgBox .textList li .txtList .ttl03 {
	margin-bottom: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 2.4rem;
	text-align: center;
	line-height: 1.17;
}
#main .bgBox .textList li .txtList .price {
	padding: 8px 5px 9px;
	color: #000;
	font-size: 4rem;
	text-align: center;
	border-radius: 45px;
	background-color: #fff;
}
#main .bgBox .textList li .subBox {
	margin: 0 auto;
	width: 75.5%;
}
#main .bgBox .textList li .subBox p {
	margin-bottom: 4px;
	padding: 0 20px;
	font-size: 2.7rem;
	letter-spacing: 0.07em;
}
#main .bgBox .textList li .subBox ul {
	background: url(../img/index/bg09.png) no-repeat center center / 100% 100%;
}
#main .bgBox .textList li .subBox ul li {
	padding: 14px 20px 13px;
	font-size: 3.4rem;
	background: url(../img/index/line01.png) repeat-x left bottom / 600px auto;
}
#main .bgBox .textList li .subBox ul li.list01 {
	padding: 0 20px 0 5px;
	background: url(../img/index/bg11.png) no-repeat right 50px bottom 20px / 219px auto;
}
#main .bgBox .textList li .subBox ul li span {
	margin-top: 5px;
	float: right;
	font-size: 3.8rem;
	line-height: 1;
	letter-spacing: 0.02em;
}
#main .bgBox .textList li .subBox ul li .ttl02 {
	margin: 2px auto 0;
	padding: 0;
	width: 90%;
	max-width: 465px;
	position: relative;
	z-index: 1;
	font-size: 3.4rem;
	text-align: center;
	box-sizing: border-box;
}
#main .bgBox .textList li .subBox ul li .ttl02::after {
	width: 100%;
	padding-bottom: 23.3%;
	display: block;
	content: '';
}
#main .bgBox .textList li .subBox ul li .ttl02 span {
	margin-top: -1px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 3.4rem;
	line-height: 1;
	white-space: nowrap;
	transform: translate(-50%, -50%);
}
#main .bgBox .textList li .subBox ul li .ttl02::before {
	margin-left: 19px;
	width: 100%;
	max-width: 465px;
	height: 100%;
	max-height: 109px;
	position: absolute;
	left: 50%;
	top: 50%;
	background: url(../img/index/bg10.png) no-repeat center center / cover;
	content: '';
	z-index: -1;
	transform: translate(-50%, -50%);
}
#main .bgBox .textList li .subBox ul li .price {
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #E74900;
	font-size: 5rem;
	letter-spacing: 0;
}
#main .bgBox .textList li .subBox ul li .price span {
	margin: 0;
	width: 40.38%;
	float: none;
}
#main .bgBox .noteList li {
	margin-bottom: 5px;
	padding-left: 1em;
	text-indent: -1em;
	font-weight: 700;
}
#main .bgBox .noteList li:last-of-type {
	margin-bottom: 0;
}
#main .thor .topBox {
	margin-bottom: -63px;
	max-width: 1834px;
	padding-right: 0;
}
#main .thor .topBox img {
	max-width: 1712px;
}
#main .boon {
	padding-top: 166px;
	background: #FFD200 url(../img/index/boon_bg01.png) no-repeat right calc(50% - 728px) top 35px / 514px auto;
}
#main .boon .topBox {
	text-align: right;
}
#main .boon .topBox img {
	width: 100%;
	max-width: 1575px;
}
#main .boon .bgBox {
	padding-bottom: 0;
}
#main .boon .bgBox .textList {
	margin-bottom: 26px;
}
@media all and (min-width: 897px) and (max-width: 1920px) {
	#main .boon {
		background-size: 26.77vw auto;
		background-position: right -1.35vw top 1.82vw;
	}
}
@media all and (min-width: 897px) and (max-width: 1660px) {
	#main .bgBox .checkBox {
		padding: 1px 2.4vw 72px;
	}
	#main .bgBox .checkBox .rBox .priceList dl {
		font-size: 1.44vw;
	}
	#main .bgBox .checkBox .rBox .priceList dd {
		font-size: 1.56vw;
	}
}
@media all and (min-width: 897px) and (max-width: 1600px) {
	#main .bgBox .textList li .ttl01 {
		font-size: 3vw;
	}
	#main .bgBox .textList li .txtList .ttl03 {
		font-size: 1.5vw;
	}
	#main .bgBox .textList li .txtList .price {
		font-size: 2.3vw;
		letter-spacing: 0;
	}
	#main .bgBox .textList li .subBox p {
		font-size: 1.68vw;
	}
	#main .bgBox .textList li .subBox ul li {
		font-size: 2.125vw;
	}
	#main .bgBox .textList li .subBox ul li span {
		font-size: 2.3vw;
	}
	#main .bgBox .textList li .subBox ul li .ttl02 {
		font-size: 2.125vw;
	}
	#main .bgBox .textList li .subBox ul li .ttl02 span {
		font-size: 2.125vw;
	}
	#main .bgBox .textList li .subBox ul li .price {
		font-size: 2.8vw;
	}
	#main .bgBox .textList li .subBox ul li.list01 {
		background-size: 10vw auto;
	}
}
@media all and (min-width: 897px) and (max-width: 1500px) {
	#main .bgBox .checkBox::before {
		width: 20.5vw;
		height: 17.3vw;
		top: -13.4vw;
	}
	#main .bgBox .checkBox .textBox {
		justify-content: space-between;
	}
	#main .bgBox .checkBox .lBox {
		width: 35%;
	}
	#main .bgBox .checkBox .rBox {
		width: 62%;
		margin: 0;
	}
	#main .bgBox .checkBox .lBox h4 {
		font-size: 3.2vw;
	}
	#main .bgBox .checkBox .lBox .price {
		font-size: 3.6vw;
	}
	#main .bgBox .checkBox .lBox .text {
		font-size: 2vw;
	}
	#main .bgBox .checkBox .lBox .text small {
		font-size: 1.6vw;
	}
	#main .bgBox .checkBox .lBox .price span {
		width: 10.54vw;
		top: -9.3vw;
		left: -5vw;
	}
	#main .bgBox .checkBox .rBox .priceList li {
		width: 48%;
	}
	#main .bgBox .textList li .subBox ul li .ttl02::before {
		margin-left: 4px;
	}
}
@media all and (min-width: 897px) and (max-width: 1420px) {
	#main .bgBox .checkBox .rBox .priceList .ttl {
		font-size: 2.2vw;
	}
}
@media all and (min-width: 897px) and (max-width: 1280px) {
	.mainVisual::after {
		left: 6.5%;
		transform: none;
	}
	#main .secBox .subSec01 {
		padding: 37px 3% 48px;
	}
	#main .secBox .subSec01 .imgList li {
		margin-right: 2.5%;
		width: 18%;
		font-size: 1.17vw;
	}
	#main .secBox .subSec01 .imgList li:nth-child(5n) {
		margin-right: 0;
	}
	#main .secBox .h3Ttl {
		margin-left: -15px;
		margin-right: -15px;
		letter-spacing: 0;
		font-size: 3.6vw;
	}
	#main .secBox .subSec03 .h3Ttl span::after {
		right: 0;
	}
	#main .secBox .subSec02 .imgBox .textBox p {
		font-size: 2.34vw;
	}
	#main .secBox .subSec03 .imgList li {
		font-size: 2vw;
	}
	#main .secBox .subSec03 .text {
		font-size: 1.56vw;
	}
}
@media all and (max-width: 896px) {
	.mainVisual {
		padding: 67px 15px 106px;
	}
	.mainVisual::before {
		height: 64px;
		bottom: 2px;
		background-position: center bottom;
		background-size: 375px auto;
	}
	.mainVisual::after {
		width: 52px;
		height: 42px;
		bottom: -1px;
		left: calc(50% - 76px);
		background-size: 52px auto;
	}
	.mainVisual .mainImg {
		padding: 0 0 0 4px;
		max-width: 310px;
	}
	#main {
		margin-bottom: 16px;
	}
	#main .secBox {
		margin-bottom: 0;
		padding-top: 22px;
	}
	#main .secBox .topBox {
		margin: 0 auto 40px;
		padding: 0;
		width: 100%;
		max-width: 375px;
		text-align: center;
		box-sizing: border-box;
	}
	#main .secBox .topBox img {
		width: 100%;
		max-width: 100%;
	}
	#main .secBox .h2Ttl {
		margin: 0 0 48px;
		font-size: 2.4rem;
	}
	#main .secBox .innerBox {
		margin: 0 5px 33px;
		display: block !important;
	}
	#main .secBox .numImg {
		width: 50px;
		left: 50%;
		top: -26px;
		transform: translateX(-50%);
		z-index: 5;
	}
	#main .secBox .subSec01 {
		margin-bottom: 119px;
		padding: 61px 20px 15px;
		width: auto;
		background-image: url("../img/index/sp_bg03.jpg");
	}
	#main .secBox .subSec01::after {
		width: 118px;
		height: 146px;
		left: 15px;
		bottom: -113px;
		background: url("../img/index/bg04.png") no-repeat center center / 100% auto;
		content: '';
	}
	#main .secBox .subSec01 .numImg {
		left: 50%;
		top: -26px;
	}
	#main .secBox .h3Ttl {
		margin-bottom: 41px;
		font-size: 2rem;
	}
	#main .secBox .subSec01 .h3Ttl {
		letter-spacing: 0.22em;
	}
	#main .secBox .subSec01 .imgList {
		margin: 0 auto 20px;
		width: 67%;
		min-width: 190px;
		display: block;
	}
	#main .secBox .subSec01 .imgList li {
		margin: 0 0 22px;
		width: auto;
		font-size: 1rem;
		text-align: center;
		background: #fff;
	}
	#main .secBox .subSec01 .imgList li:last-child {
		margin-bottom: 0;
	}
	#main .secBox .subSec01 .imgList li:nth-child(5n) {
		margin-right: 0;
	}
	#main .secBox .subSec01 .imgList li img {
		width: 100%;
	}
	#main .secBox .subSec01 .imgList li .txt {
		padding: 6px 5px 12px;
		min-height: 43px;
		line-height: 1.25;
		box-sizing: border-box;
	}
	#main .secBox .price {
		font-size: 2.4rem;
	}
	#main .secBox .subSec02 {
		margin: 0 0 93px;
		width: auto;
		padding: 67px 20px 18px;
		background-image: url("../img/index/sp_bg03.jpg");
		background-position: center center;
	}
	#main .secBox .subSec02 .h3Ttl {
		margin-bottom: 32px;
	}
	#main .secBox .subSec02 .imgBox {
		margin-bottom: 20px;
		display: block !important;
	}
	#main .secBox .subSec02 .imgBox .photoBox {
		margin: 0 auto 14px;
		width: 67%;
		min-width: 196px;
	}
	#main .secBox .subSec02 .imgBox .textBox {
		padding-bottom: 0;
		width: auto;
	}
	#main .secBox .subSec02 .imgBox .textBox p {
		font-size: 1.3rem;
		line-height: 1.54;
		text-align: center;
	}
	#main .secBox .subSec03 {
		width: auto;
		padding: 68px 20px 19px;
		background-image: url("../img/index/sp_bg03.jpg");
		background-position: center center;
	}
	#main .secBox .subSec03::after {
		width: 231px;
		height: 109px;
		right: 37px;
		bottom: auto;
		top: -117px;
		background-image: url(../img/index/sp_bg07.png);
	}
	#main .secBox .subSec03 .imgTxt {
		right: 0;
		top: 115px;
		max-width: 204px;
	}
	#main .secBox .subSec03 .imgTxt img {
		width: 100%;
	}
	#main .secBox .subSec03 .h3Ttl {
		margin-bottom: 85px;
		position: relative;
		z-index: 1;
	}
	#main .secBox .subSec03 .h3Ttl span {
		display: inline-block;
		position: relative;
		z-index: 1;
	}
	#main .secBox .subSec03 .h3Ttl span::after {
		width: 46px;
		height: 75px;
		right: -35px;
		bottom: -25px;
	}
	#main .secBox .subSec03 .logoImg {
		margin: 0 auto 27px;
		max-width: 139px;
	}
	#main .secBox .subSec03 .imgList {
		margin: 0 -7px 10px;
	}
	#main .secBox .subSec03 .imgList li {
		width: calc((100% - 28px) / 2);
		font-size: 1rem;
	}
	#main .secBox .subSec03 .imgList li:not(:nth-child(2n)) {
		margin-right: 28px;
	}
	#main .secBox .subSec03 .imgList li .txt {
		padding: 7px 6px 0;
		display: block;
	}
	#main .secBox .subSec03 .text {
		margin-bottom: 17px;
		width: 90%;
		font-size: 1.3rem;
		font-weight: 400;
		text-align: left;
		line-height: 2;
	}
	#main .secBox .priceTxt {
		margin-bottom: 103px;
		font-size: 2.2rem;
	}
	#main .secBox .priceTxt .txt {
		padding: 17px 15px 16px;
	}
	#main .secBox .priceTxt .txt .num {
		margin-left: 5px;
		font-size: 2.4rem;
	}
	#main .bgBox {
		padding-bottom: 50px;
	}
	#main .bgBox .content {
		max-width: inherit;
	}
	#main .bgBox .checkBox {
		margin: -1px -20px 15px;
		padding: 75px 40px 51px;
	}
	#main .bgBox .checkBox .textBox {
		display: block;
	}
	#main .bgBox .checkBox::before {
		width: 139px;
		height: 133px;
		left: 50%;
		top: -78px;
		transform: translateX(-50%);
	}
	#main .bgBox .checkBox h3 {
		margin: 0 0 18px;
	}
	#main .bgBox .checkBox h3 img {
		width: 91px;
	}
	#main .bgBox .checkBox .rBox {
		margin-left: 0;
		width: auto;
	}
	#main .bgBox .checkBox .rBox .priceList {
		margin-bottom: 68px;
		display: block;
	}
	#main .bgBox .checkBox .rBox .priceList.btmList::before {
		width: 100%;
		height: 2px;
		top: -18px;
	}
	#main .bgBox .checkBox .rBox .priceList li {
		margin-bottom: 20px;
		width: auto;
	}
	#main .bgBox .checkBox .rBox .priceList.btmList li {
		margin-bottom: 30px;
	}
	#main .bgBox .checkBox .rBox .priceList li:last-of-type {
		margin-bottom: 0;
	}
	#main .bgBox .checkBox .rBox .priceList .ttl {
		width: 170px;
		box-sizing: border-box;
		font-size: 2.4rem;
	}
	#main .bgBox .checkBox .rBox .priceList li:nth-of-type(2n - 1) .ttl {
		width: 175px;
	}
	#main .bgBox .checkBox .rBox .priceList dl {
		font-size: 1.5rem;
	}
	#main .bgBox .checkBox .rBox .priceList dt {
		float: left;
	}
	#main .bgBox .checkBox .rBox .priceList dd {
		margin-bottom: 20px;
		padding-left: 12.5em !important;
		font-size: 1.5rem;
	}
	#main .bgBox .checkBox .rBox .priceList.btmList dd {
		margin-bottom: 10px;
		padding-left: 10em;
	}
	#main .bgBox .checkBox .rBox .priceList.btmList li:nth-of-type(2n - 1) dd {
		padding-left: 11em;
	}
	#main .bgBox .checkBox .rBox .priceList dd:last-of-type {
		margin-bottom: 0;
	}
	#main .bgBox .checkBox .lBox {
		margin: 0 0 57px;
		width: auto;
	}
	#main .bgBox .checkBox .lBox h4 {
		margin-bottom: 18px;
		font-size: 2.4rem;
		line-height: 1.46;
	}
	#main .bgBox .checkBox .lBox .text {
		margin-bottom: 25px;
		font-size: 1.5rem;
		text-align: center;
	}
	#main .bgBox .checkBox .lBox .text small {
		font-size: 1.3rem;
		line-height: 2.4;
	}
	#main .bgBox .checkBox .lBox .price {
		margin: 0 auto;
		width: 238px;
		padding: 18px 10px;
		position: relative;
		font-size: 2.4rem;
		box-sizing: border-box;
		transform: translateX(3px);
	}
	#main .bgBox .checkBox .lBox .price span {
		width: 67px;
		left: -37px;
		top: -41px;
	}
	#main .bgBox .textList {
		margin: 0 -20px;
		display: block;
	}
	#main .bgBox .textList > li {
		padding: 35px 10px 32px;
		width: auto;
	}
	#main .bgBox .textList li .ttl01 {
		margin-bottom: 12px;
		font-size: 2.4rem;
	}
	#main .bgBox .textList li .txtList {
		margin: 0 0 20px;
		display: block;
	}
	#main .bgBox .textList li .txtList::after {
		display: none;
	}
	#main .bgBox .textList li .txtList li {
		margin: 0 0 26px;
		padding: 0;
		width: auto;
		text-align: center;
	}
	#main .bgBox .textList li .txtList li:last-of-type {
		margin-bottom: 0;
	}
	#main .bgBox .textList li .txtList .ttl03 {
		margin-bottom: 13px;
		color: #fff;
		font-size: 1.8rem;
		text-align: center;
		line-height: 1.17;
	}
	#main .bgBox .textList li .txtList .list01 .ttl03 {
		margin: 0 0 10px;
	}
	#main .bgBox .textList li .txtList .price {
		margin: 0 auto;
		padding: 8px;
		width: 184px;
		border-radius: 23px;
		font-size: 2.4rem;
		box-sizing: border-box;
	}
	#main .bgBox .textList li .subBox {
		width: 100%;
		max-width: 356px;
	}
	#main .bgBox .textList li .subBox p {
		font-size: 1.4rem;
	}
	#main .bgBox .textList li .subBox ul {
		background-image: url("../img/index/sp_bg09.png");
	}
	#main .bgBox .textList li .subBox ul li {
		padding: 7px 10px 8px;
		font-size: 2rem;
		background: url(../img/index/sp_line01.png) repeat-x left bottom / auto 5px;
	}
	#main .bgBox .textList li .subBox ul li.list01 {
		padding: 0 20px 0 5px;
		background-size: 128px auto;
		background-position: right 35px bottom 17px;
	}
	#main .bgBox .textList li .subBox ul li span {
		float: right;
		font-size: 1.9rem;
	}
	#main .bgBox .textList li .subBox ul li .ttl02 {
		margin: 0 auto -8px;
		font-size: 2rem;
		transform: translateX(15px);
	}
	#main .bgBox .textList li .subBox ul li .ttl02::before {
		margin: 0;
		max-width: 273px;
		max-height: 64px;
		background-image: url("../img/index/sp_bg10.png");
	}
	#main .bgBox .textList li .subBox ul li .ttl02 span {
		font-size: 2rem;
	}
	#main .bgBox .textList li .subBox ul li .price {
		padding: 0;
		color: #E74900;
		font-size: 2.7rem;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#main .bgBox .textList li .subBox ul li .price span {
		width: 42%;
	}
	#main .bgBox .noteList li {
		margin-bottom: 3px;
		font-size: 1.3rem;
		line-height: 1.75;
	}
	#main .bgBox .noteList li span {
		margin-left: -1em;
		padding-left: 1em;
		display: block;
		text-indent: -1em;
	}
	#main .thor .topBox {
		margin-bottom: 40px;
		max-width: 375px;
		padding-right: 0;
	}
	#main .thor .topBox img {
		max-width: 100%;
	}
	#main .boon {
		padding-top: 10px;
		background: #FFD200;
	}
	#main .boon .topBox {
		text-align: center;
	}
	#main .boon .topBox img {
		width: 100%;
		max-width: 100%;
	}
	#main .boon .subSec02 {
		padding-top: 73px;
	}
	#main .boon .subSec02 .numImg {
		top: -18px;
	}
	#main .boon .subSec02 .h3Ttl {
		margin-bottom: 43px;
	}
	#main .boon .subSec02 .imgBox {
		margin-bottom: 40px;
	}
	#main .boon .subSec02 .imgBox .photoBox {
		margin-bottom: 30px;
		width: 83%;
	}
	#main .boon .bgBox .textList {
		margin-bottom: 17px;
	}
	#main .bgBox .noteList li {
		margin-bottom: 0;
		line-height: 1.77;
	}
}
@media all and (max-width: 359px) {
	#main .bgBox .checkBox .rBox .priceList dd {
		padding-left: 11.5em !important;
	}
}