@charset "UTF-8";
.ly-main{
	display: flex;
	flex-direction: column;
	margin-top: -100px;
}
@media screen and (max-width: 750px) {
	.ly-main{
		display: flex;
		flex-direction: column;
		margin-top: -100px;
	}
}
/*=======================================================
mv
=======================================================*/
.bl-mv{
	background: url(../images/lp/mv-bg.jpg) top center / cover no-repeat;
	padding: 9.6vh 0 0;
	position: relative;
	min-height: 800px;
	height: 100vh;
	max-height: 1000px;
	z-index: 3;
}
.bl-mv .ly-cont-inner{
	/* display: flex;
	flex-direction: column; */
	width: auto;
	/* width: min(calc(1024 / 1200 * 100vw), 1024px); */
}
.bl-mv .el-ttl{
	text-align: center;
}
.bl-mv .el-s-ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	letter-spacing: 1.56px;
	font-size: min(calc(26 / 1200 * 100vw), 26px);
}
.bl-mv .el-s-ttl::after{
	content: '';
	background: url(../images/lp/icon-airplane.svg) top center / contain no-repeat;
	/* width: 50px;
	height: 50px; 
	margin-left: 16px;*/
	width: min(calc(50 / 1200 * 100vw), 50px);
	height: min(calc(50 / 1200 * 100vw), 50px);
	margin-left: min(calc(16 / 1200 * 100vw), 16px);
}
.bl-mv .el-s-ttl > span{
	/* width: 68px;
	height: 68px; */
	width: min(calc(68 / 1200 * 100vw), 68px);
	height: min(calc(68 / 1200 * 100vw), 68px);
	font-size: min(calc(40 / 1200 * 100vw), 40px);
	display: flex;
	justify-content: center;
	align-items: center;
	background: #F4AA02;
	border-radius: 68px;
	color: #fff;
	/* margin: 0 16px; */
	margin: 0 min(calc(16 / 1200 * 100vw), 16px);
}
.bl-mv .el-ttl > img{
	width: min(calc(1024 / 1200 * 100vw), 1024px);
}
.bl-mv .el-att{
	width: 100%;
	/* margin-top: 8px; */
	margin-top: min(calc(8 / 1200 * 100vw), 8px);
	font-size: min(calc(14 / 1200 * 100vw), 14px);
}
.bl-mv .el-subsidy{
	/* width: 485px;
	height: 62px; */
	width: min(calc(485 / 1200 * 100vw), 485px);
	height: min(calc(62 / 1200 * 100vw), 62px);
	border-radius: min(calc(62 / 1200 * 100vw), 62px);
	background: #F88496;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: min(calc(26 / 1200 * 100vw), 26px);
	font-weight: bold;
	letter-spacing: 1.56px;
	color: #fff;
	padding-bottom: 1px;
	margin: min(calc(16 / 1200 * 100vw), 26px) auto 0;
}
@media screen and (min-width: 751px) and (max-width: 1200px) {
	
}
@media screen and (max-width: 750px) {
	.bl-mv{
		min-height: 1200px;
		max-height: 1200px;
		background: url(../images/lp/mv-bg-sp.jpg) top center / cover no-repeat;
		padding: 216px 0 0;
	}
	.bl-mv .ly-cont-inner{
		width: 690px;
	}
	.bl-mv .el-s-ttl{
		font-size: 34px;
		letter-spacing: 2.04px;
		margin-bottom: 24px;
	}
	.bl-mv .el-s-ttl::after{
		margin-left: 8px;
	}
	.bl-mv .el-s-ttl > span{
		font-size: 36px;
		width: 68px;
		height: 68px;
		margin: 0 8px;
	}
	.bl-mv .el-ttl > img{
		width: 100%;
	}
	.bl-mv .el-att{
		font-size: 18px;
		/* margin-top: 8px; */
	}
	.bl-mv .el-subsidy{
		width: 618px;
		height: 74px;
		font-size: 32px;
		letter-spacing: 2.04px;
		margin: 32px auto 0;
	}
}

/*=======================================================
point
=======================================================*/
.bl-point{
	background: #FFF9DA;
	padding: 64px 0 184px;
	position: relative;
	z-index: 3;
}
.bl-point::before{
	content: '';
	position: absolute;
	background: url(../images/lp/mv-bottom.png) top center / contain no-repeat;
	width: 2000px;
	height: 400px;
	left: 50%;
	transform: translateX(-50%);
	top: -258px;
	z-index: -2;
}
.bl-point::after{
	content: '';
	position: absolute;
	background: url(../images/lp/point-bg-left.png) top left / contain no-repeat,url(../images/lp/point-bg-right.png) top right / contain no-repeat;
	width: 2000px;
	height: 7781px;
	top: 50%;
	top: -141px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}
.bl-point .el-main-ttl{
	width: 664px;
	margin-bottom: 96px;
}
.bl-point .el-main-ttl > span:nth-of-type(2){
	font-size: 32px;
	text-align: center;
	display: block;
	margin-bottom: 16px;
}
.bl-point .bl-media{
	margin-left: -154px;
	display: grid;
    grid-template: auto 1fr / 634px auto;
	grid-template-areas:
        "imgWrapper title"
        "imgWrapper body"
        "btm_txt btm_txt";
}
.bl-point .bl-media.point:not(.--01){
	margin-top: 124px;
}
@media screen and (min-width: 751px) {
	.bl-media.reverse{
		grid-template: 1fr auto / auto 634px;
		grid-template-areas:
			"title imgWrapper"
			"body imgWrapper";
		margin: 0 -154px 0 0;
	}
}
.bl-point .bl-media-img-wrapper{
	position: relative;
}
.bl-point .bl-media-img-wrapper::before{
	content: '';
	position: absolute;
	background: url(../images/lp/point01.svg) top center / contain no-repeat;
	width: 98px;
	height: 150px;
	top: -34px;
	left: 80px;
}
.bl-point .bl-media.point.--02 .bl-media-img-wrapper::before{
	background: url(../images/lp/point02.svg) top center / contain no-repeat;
	width: 116px;
	height: 150px;
	top: -88px;
	left: inherit;
	right: 138px;
}
.bl-point .bl-media.point.--03 .bl-media-img-wrapper::before{
	background: url(../images/lp/point03.svg) top center / contain no-repeat;
	width: 118px;
	height: 152px;
	top: -76px;
	left: 114px;
}
.bl-point .bl-media.point.--04 .bl-media-img-wrapper::before{
	background: url(../images/lp/point04.svg) top center / contain no-repeat;
	width: 120px;
	height: 150px;
	top: -76px;
	left: inherit;
	right: 138px;
}
.bl-point .el-media-ttl{
	margin-bottom: 32px; 
}
.bl-point .el-media-ttl > img{
	width: 374px;
}
.bl-point .point.--02 .el-media-ttl > img{
	width: 520px;
}
.bl-point .point.--03 .el-media-ttl > img{
	width: 422px;
}
.bl-point .point.--04 .el-media-ttl > img{
	width: 520px;
}
.bl-point .el-media-ttl > img:nth-of-type(2){
	width: 464px!important;
	margin: 8px 0 0 32px;
}
.bl-point .bl-media-body{
	padding-left: 13px;

}
/* 南国市の交通 */
.bl-toggle-cont.transport{
	padding: 36px 38px;
}
.bl-point .bl-transport-list{
	display: flex;
	flex-wrap: wrap;
	gap: 32px 36px;
}
.bl-point .bl-transport-item{
	border: 2px solid #3CB407;
	border-radius: 16px;
	padding: 36px;
}
.bl-point .bl-transport-item:nth-of-type(2){
	width: 454px;
	border: 2px solid #3AAAE1;
}
.bl-point .bl-transport-item:nth-of-type(3){
	width: 454px;
	border: 2px solid #F88496;
}
.bl-point .bl-transport-item .el-deco-ttl{
}
.bl-point .bl-vehicle-unit{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
}
.bl-point .bl-vehicle-item{
	width: 280px;
}
.bl-point .bl-vehicle-item > img{
	border-radius: 32px;
}
.bl-point .bl-vehicle-item figcaption{
	text-align: center;
	letter-spacing: 0.8px;
	line-height: 1.5;
	font-weight: bold;
	margin-top: 16px;
}
/* 医療施設数 */
.bl-point .bl-medical-list{
	margin: 40px 0 24px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 32px;
}
.bl-point .bl-medical-item{
	width: 286px;
	height: 210px;
	background: #3AAAE1;
	border-radius: 16px;
	color: #fff;
	font-weight: bold;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.bl-point .bl-medical-item:nth-of-type(even){
	background: #009095;
}
.bl-point .bl-medical-item > dt{
	font-size: 24px;
	text-align: center;
}
.bl-point .bl-medical-item > dd{
	text-align: center;
	letter-spacing: 0.8px;
}
.bl-point .bl-medical-item > dd > span{
	font-size: 68px;
	letter-spacing: 2.72px;
}
.bl-point .el-att{
	
}
/* 教育・保育施設 */
.bl-point .bl-education-list{
	margin: 40px 0 32px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px 12px;
}
.bl-point .bl-education-item{
	width: 175px;
	height: 180px;
	background: #F88496;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
	font-weight: bold;
}
.bl-point .bl-education-item:nth-of-type(even){
	background: #009095;
}
.bl-point .bl-education-item > dt{
	line-height: 1.5;
	min-height: 60px;
	display: flex;
	align-items: center;
}
.bl-point .bl-education-item:last-of-type > dt{
	min-height: auto;
}
.bl-point .bl-education-item:last-of-type  > dd:not(:first-of-type){
	margin-top: -24px;
}
.bl-point .bl-education-item > dd > span{
	font-size: 48px;
	letter-spacing: 1.92px;
}
.bl-point .bl-free-list{
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
}
.bl-point .bl-free-item{
	width: 446px;
	height: 217px;
	border: 2px solid #009095;
	border-radius: 16px;
	padding-top: 24px;
	text-align: center;
	font-weight: bold;
	position: relative;
}
.bl-point .bl-free-item::after{
	content: '';
	position: absolute;
	background: url(../images/lp/illust-education01.svg) top center / contain no-repeat;
	width: 122px;
	height: 124px;
	top: 70px;
	left: 50%;
	transform: translateX(-50%);
}
.bl-point .bl-free-item:nth-of-type(2)::after{
	background: url(../images/lp/illust-education02.svg) top center / contain no-repeat;
	width: 148px;
	height: 124px;
}
/* 家族で楽しめるお出かけスポット */
.bl-toggle-cont.fun{
	padding: 36px 36px;
}
.bl-point .bl-fun-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 32px 24px;
}
.bl-point .bl-fun-item{
	width: 300px;
}
.bl-point .bl-card-img-wrapper > img{
	border-radius: 16px 16px 0px 0px;
}
.bl-point .el-card-ttl{
	font-size: 18px;
	color: #fff;
	letter-spacing: 0.72px;
	line-height: 1.5;
	height: 60px;
	background: #3CB407;
	border-radius: 0px 0px 16px 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 1px;
}
.bl-point .bl-fun-item:nth-of-type(even) .el-card-ttl{
	background: #F4AA02;
}
.bl-point .bl-fun-item .el-txt{
	font-size: 17px;
	text-align: left;
}
.bl-point .bl-photo-list{
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin-top: 80px;
}
.bl-point .bl-photo-list > img{
	width: 320px;
	border-radius: 32px;
}
.bl-point .bl-logo{
	width: 94px;
	margin: 48px auto 0;
}
@media screen and (max-width: 750px) {
	.bl-point{
		padding: 144px 0 200px;
	}
	.bl-point::before{
		background: url(../images/lp/mv-bottom-sp.png) top center / contain no-repeat;
		width: 750px;
		height: 400px;
		top: -135px;
	}
	.bl-point::after{
		background: url(../images/lp/point-bottom-sp.png) top center / contain no-repeat;
		width: 750px;
		height: 300px;
		top: inherit;
		bottom: -84px;
	}
	.bl-point .el-main-ttl{
		margin-bottom: 120px;
	}
	.bl-point .el-main-ttl > span:nth-of-type(2){
		font-size: 34px;
		letter-spacing: 2.04px;
	}
	.bl-point .bl-media{
		margin-left: 0;
		grid-template: auto / auto;
        grid-template-areas:
        "imgWrapper"
        "title"
        "body";
	}
	.bl-point .bl-media.point:not(.--01){
		margin-top: 120px;
	}
	.bl-point .bl-media.point.--03{
		margin-left: 0;
		grid-template: auto / auto;
        grid-template-areas:
        "imgWrapper"
        "title"
        "body";
	}
	.bl-point .bl-media-img-wrapper{
		width: 634px;
		margin: 0 auto 40px;
	}
	.bl-point .bl-media-img-wrapper::before{
		top: -40px!important;
		left: inherit!important;
		right: 12px!important;
	}
	.bl-point .el-media-ttl{
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 32px; 
	}
	.bl-point .el-media-ttl > img:nth-of-type(2){
		margin: 8px auto 0;
	}
	.bl-point .bl-media-body{
		padding-left: 0;
		width: 610px;
		margin: 0 auto;
	}
	/* 南国市の交通 */
	.bl-toggle-cont.transport{
		padding: 40px;
	}
	.bl-point .bl-transport-list{
		gap: 32px;
	}
	.bl-point .bl-transport-item:nth-of-type(2),
	.bl-point .bl-transport-item:nth-of-type(3){
		width: 100%;
	}
	.bl-point .bl-vehicle-unit{
		gap: 24px;
	}
	.bl-point .bl-vehicle-item{
		width: 100%;
	}
	/* 医療施設数 */
	.bl-point .bl-medical-list{
		gap: 32px 24px;
	}
	.bl-point .bl-medical-item{
		width: 287px;
		min-height: 210px;
		height: auto;
		padding: 16px;
	}
	.bl-point .bl-medical-item > dt{
		font-size: 32px;
		line-height: 1.3;
	}
	.bl-point .bl-medical-item > dd > span{
		font-size: 68px;
		letter-spacing: 2.72px;
	}
	/* 教育・保育施設 */
	.bl-point .bl-education-list{
		gap: 24px 16px;
	}
	.bl-point .bl-education-item{
		width: 190px;
		height: 180px;
	}
	/* .bl-point .bl-education-item:last-of-type{
		width: 380px;
	} */
	.bl-point .bl-education-item > dt{
		min-height: 60px;
		width: 100%;
		justify-content: center;
	}
	.bl-point .bl-education-item:last-of-type > dt{
		min-height: auto;
	}
	.bl-point .bl-education-item:last-of-type  > dd:not(:first-of-type){
		margin-top: -24px;
	}
	.bl-point .bl-education-item > dd > span{
		font-size: 48px;
		letter-spacing: 1.92px;
	}
	.bl-point .bl-free-list{
		gap: 16px;
	}
	.bl-point .bl-free-item{
		width: 295px;
		height: 270px;
	}
	.bl-point .bl-free-item::after{
		top: 120px;
	}
	/* 家族で楽しめるお出かけスポット */
	.bl-toggle-cont.fun{
		padding: 40px;
	}
	.bl-point .bl-fun-list{
		gap: 32px;
	}
	.bl-point .bl-fun-item{
		width: 100%;
	}
	.bl-point .el-card-ttl{
		font-size: 32px;
		height: 80px;
	}
	.bl-point .bl-fun-item .el-txt{
		font-size: 26px;
	}
	.bl-point .bl-photo-list{
		margin-top: 56px;
		gap: 40px;
	}
	.bl-point .bl-photo-list > img{
		width: 610px;
		margin: 0 auto;
	}
	.bl-point .bl-logo{
		width: 160px;
	}
}

/*=======================================================
subsidy
=======================================================*/
.bl-subsidy{
	padding: 328px 0;
	background: url(../images/lp/subsidy-bg.png) top center / cover no-repeat;
	margin-top: -280px;
	z-index: 4;
}
.bl-subsidy .el-main-ttl{
	width: 460px;
}
.bl-subsidy .el-txt.big{
	font-weight: bold;
	margin-bottom: 96px;
}
.bl-subsidy-item{
	border-radius: 32px;
	background: #fff;
	padding: 32px;
	position: relative;
}
.bl-subsidy-item:not(:first-of-type){
	margin-top: 64px;
}
.bl-subsidy-item.childcare{
	/* height: 584px; */
	padding: 80px;
	z-index: 1;
}
.bl-subsidy-item.childcare::before{
	content: '';
	position: absolute;
	background: url(../images/lp/subsidy-img03.jpg) top center / cover no-repeat;
	width: calc(100% - 64px);
	height: calc(100% - 64px);
	border-radius: 24px;
	top: 32px;
	left: 32px;
	z-index: -1;
}
.bl-subsidy-item hgroup{
	background: url(../images/lp/subsidy-img01.jpg) top center / cover no-repeat;
	padding: 50px 0;
	height: 350px;
	border-radius: 24px;
	position: relative;
}
.bl-subsidy-item.student hgroup{
	background: url(../images/lp/subsidy-img02.jpg) top center / cover no-repeat;
}
.bl-subsidy-item.childcare hgroup{
	background: none;
	padding: 0;
	height: auto;
	border-radius: none;
}
.bl-subsidy-item.childcare hgroup::before{
	content: '';
	position: absolute;
	background: url(../images/lp/shamo02.png) top center / contain no-repeat;
	width: 104px;
	height: 110px;
	top: 0;
	left: 125px;
}
.bl-subsidy-item .el-subsidy-ttl{
	width: 458px;
	height: 68px;
	background: #3AAAE1;
	border-radius: 68px;
	font-size: 26px;
	text-align: center;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 2px;
	margin: 0 auto 24px;
}
.bl-subsidy-item .el-subsidy-ttl.green{
	width: 530px;
	background: #3CB407;
}
.bl-subsidy-item .el-subsidy-ttl.red{
	width: 350px;
	background: #D74257;
}
.el-subsidy-amount{
	display: flex;
	justify-content: center;
	align-items: center;
}
.el-subsidy-amount .el-vertical{
  writing-mode: vertical-rl;
	font-size: 34px;
	font-weight: bold;
	letter-spacing: 0px;
}
.el-subsidy-amount .el-amount{
	width: 132px;
	display: block;
}
.bl-subsidy-item.student .el-subsidy-amount .el-amount{
	width: 138px;
}
.bl-subsidy-item .el-subsidy-amount{
	font-size: 34px;
	font-weight: bold;
	letter-spacing: 0px;
	display: flex;
	align-items: flex-end;
	gap: 16px;
}
.bl-subsidy-item.student .el-subsidy-amount .el-month{
	margin-left: -8px;
}
.bl-def-list{
	margin-top: 24px;
}
.bl-def-item{
	display: flex;
	flex-wrap: wrap;
	letter-spacing: 0.04em;
	line-height: 1.5;
}
.bl-def-item dt{
	width: 176px;
	background: #3AAAE1;
	padding: 20px 30px 21px;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.72px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl-def-item:not(:first-of-type) dt{
	border-top: 1px solid #fff;
}
.bl-def-item dd{
	flex: 1;
	padding: 24px 23px;
	font-size: 14px;
	letter-spacing: 0.56px;
	border-top: 1px solid #3AAAE1;
	border-right: 1px solid #3AAAE1;
}
.bl-def-item:last-of-type dd{
	border-bottom: 1px solid #3AAAE1;
}
.green .bl-def-item dt{
	background: #3CB407;
}
.green .bl-def-item dd{
	border-top: 1px solid #3CB407;
	border-right: 1px solid #3CB407;
}
.green .bl-def-item:last-of-type dd{
	border-bottom: 1px solid #3CB407;
}
.bl-detail-list{
	display: flex;
	flex-wrap: wrap;
	gap: 48px;
}
.bl-detail-item{
	width: 400px;
	display: flex;
	flex-direction: column;
}
.bl-detail-item dt{
	height: 94px;
	background: #F88496;
	line-height: 1.5;
	text-align: center;
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 1px;
	border-radius: 32px 32px 0px 0px;
}
.bl-detail-item dd{
	background: #fff;
	flex: 1;
	font-size: 17px;
	padding: 24px 30px;
	border: 2px solid #F88496;
	letter-spacing: 0.68px;
	border-radius: 0px 0px 32px 32px;
}
@media screen and (max-width: 750px) {
	.bl-subsidy{
		padding: 224px 0 200px;
		background: url(../images/lp/subsidy-bg-sp.png) top center / cover no-repeat;
		margin-top: -42px;
	}
	.bl-subsidy .el-txt.big{
		margin-bottom: 64px;
	}
	.bl-subsidy-item{
		padding: 40px;
	}
	.bl-subsidy-item.childcare{
		height: auto;
		padding: 68px 70px 88px;
		z-index: 1;
	}
	.bl-subsidy-item.childcare::before{
		background: url(../images/lp/subsidy-img03-sp.jpg) top center / cover no-repeat;
		width: calc(100% - 68px);
		height: calc(100% - 80px);
		top: 34px;
		left: 40px;
	}
	.bl-subsidy-item hgroup{
		background: none;
		padding: 34px 0;
		height: 454px;
		position: relative;
		z-index: 1;
	}
	.bl-subsidy-item.student hgroup{
		background: none;
	}
	.bl-subsidy-item hgroup::before{
		content: '';
		position: absolute;
		background: url(../images/lp/subsidy-img01-sp.jpg) top center / cover no-repeat;
		opacity: 0.6;
		border-radius: 24px;
		width: 610px;
		height: 454px;
		top: 0;
		left: 0;
		z-index: -1;
	}
	/* .bl-subsidy-item:nth-of-type(2) hgroup{
		display: none;
	} */
	.bl-subsidy-item.student hgroup::before{
		background: url(../images/lp/subsidy-img02-sp.jpg) top center / cover no-repeat;
	}
	.bl-subsidy-item.childcare hgroup::before{
		content: none;
	}
	.bl-subsidy-item .el-subsidy-ttl{
		width: 540px;
		height: 130px;
		font-size: 34px;
		letter-spacing: 2.04px;
	}
	.bl-subsidy-item .el-subsidy-ttl.green{
		width: 530px;
	}
	.bl-subsidy-item .el-subsidy-ttl.red{
		width: 470px;
		height: 80px;
		margin-bottom: 32px;
	}
	.bl-def-item{
		border: 1px solid #3AAAE1;
	}
	.bl-def-item dt{
		width: 100%;
		background: #3AAAE1;
		padding: 12px 16px 15px;
		font-size: 30px;
	}
	.bl-def-item:not(:first-of-type) dt{
		border-top: none!important;
	}
	.bl-def-item dd{
		padding: 32px;
		font-size: 28px;
		border: none!important;
	}
	.bl-def-item:last-of-type dd{
		border-bottom: none;
	}
	.green .bl-def-item{
		border: 1px solid #3CB407;
	}
	.bl-detail-list{
		justify-content: center;
		gap: 24px;
	}
	.bl-detail-item{
		width: 540px;
	}
	.bl-detail-item dt{
		font-size: 30px;
		height: 120px;
		letter-spacing: 1.8px;
	}
	.bl-detail-item dd{
		font-size: 28px;
		padding: 32px;
	}
}
