@charset "utf-8";

/******************* 統一設定 *******************/

/******************* 各セクション *******************/
#sec01{
	width:100%;
	height:100dvh;
	background:#41a664;
	overflow:hidden;
	position:relative;
}

#sec01::before{
	width:70%;
	background: url("./../img/top/bgcircle.svg") no-repeat center/contain;
	position:absolute;
	top:17.5%;
	left:-24.5%;
	z-index:0;
	aspect-ratio:1/1;
	content:"";
}

#sec01::after{
	width:50%;
	max-width:700px;
	height:1494px;
	background: url("./../img/top/sec01_img.png") no-repeat center/contain;
	position:absolute;
	top:-350px;
	right:clamp(20px,7vw,120px);
	z-index:0;
	content:"";
}

#sec01 .titlebox{
	width:62.5%;
	max-width:625px;
	height:100%;
	margin:0 auto;
	color:#fff;
	font-size:var(--sm-font-size-20px);
	flex-direction:column;
	justify-content:center;
	row-gap:20px;
	position:relative;
	right:clamp(120px,17.25vw,320px);
	z-index:1;
}

#sec01 .titlebox p.subtitle,#sec01 .titlebox p.description{
	text-shadow:0 0 8px #0009;
	font-weight:bold;
}

#sec01 .titlebox h1{
	line-height:1.5em;
	text-shadow:0 0 8px #0009;
	font-size:3.5em;
	font-weight:900;
}

#sec01 .titlebox div.spimg{
	display:none;
}

#sec01 .titlebox div.button{
	width:300px;
	margin-top:15px;
}

#sec01 .titlebox div.button a{
	padding:15px 45px;
	color:#41A664;
	background:#fff;
	text-align:center;
	font-weight:bold;
	border-radius:999px;
	position:relative;
}

#sec01 .titlebox div.button a::after{
	font-size:2em;
	font-weight:900;
	line-height:.875;
	position:absolute;
	right:8px;
	content:"・";
}

#sec01 .newnewsInfo{
	width:90%;
	max-width:1280px;
	margin:0 auto;
	padding:20px 30px;
	background:#fff;
	border-radius:15px 15px 0 0;
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	z-index:10;
	display:none;
}

#sec01 .newnewsInfo .item{
	padding-right:20px;
	column-gap:20px;
	align-items:center;
	position:relative;
}

#sec01 .newnewsInfo .item::after{
	color:#707070;
	font-weight:bold;
	position:absolute;
	right:0;
	content:"\f138";
}

#sec01 .newnewsInfo .item h6,#sec01 .newnewsInfo .item .category{
	text-wrap:nowrap;
	font-size:1em;
	font-weight:bold;
}

#sec01 .newnewsInfo .item .category{
	padding:5px 20px;
	background:#e6e6e6;
	border-radius:999px;
	text-align:center;
}

#sec01 .newnewsInfo .item .detail{
	text-wrap:nowrap;
	text-overflow:ellipsis;
	font-weight:bold;
	overflow:hidden;
}


#sec02{
	padding:50px 15px;
	background:#f2f2f2;
	text-align:center;
	font-size:clamp(24px,3vw,29px);
	font-weight:900;
}

#sec02 span{
	font-weight:900;
}

#sec03{
	width:90%;
	max-width:1280px;
	margin:0 auto;
	padding:50px 0;
}

#sec03 .introbox{
	column-gap:15px;
}

#sec03 .introbox .textbox{
	width:50%;
	flex-direction:column;
	row-gap:15px;
}

#sec03 .introbox .textbox h1{
	font-size:3.5em;
	font-weight:900;
}

#sec03 .introbox .textbox h1 span{
	font-weight:900;
}

#sec03 .introbox .textbox p{
	line-height:2em;
}

#sec03 .introbox .textbox div.button{
	width:250px;
	margin-top:15px;
}

#sec03 .introbox .textbox div.button a{
	padding:15px 45px;
	color:#fff;
	background:#EF5B5B;
	text-align:center;
	font-weight:bold;
	border-radius:999px;
	position:relative;
}

#sec03 .introbox .textbox div.button a::after{
	font-size:2em;
	font-weight:900;
	line-height:.875;
	position:absolute;
	right:8px;
	content:"・";
}

#sec03 .introbox .img{
	width:50%;
}

#sec03 .introbox .img img.sp{
	display:none;
}

#sec04{
	width:90%;
	max-width:1280px;
	margin:0 auto;
	padding:50px 20px;
	color:#fff;
	background:#41a664;
	text-align:center;
	border-radius:20px;
}

#sec04 h3{
	margin-bottom:15px;
	font-size:2em;
	font-weight:900;
}

#sec04 p.desctiption{
	margin-bottom:20px;
	font-weight:900;
}

#sec04 .about-features{
	margin-bottom:30px;
	column-gap:15px;
	justify-content:center;
}

#sec04 .about-features p{
	font-weight:900;
}

#sec04 .detailbox{
	width:100%;
	max-width:900px;
	margin:0 auto 30px;
	padding:30px 70px;
	color:#000;
	background:#fff;
	text-align:left;
	border-radius:15px;
	column-gap:25px;
	justify-content:center;
}

#sec04 .detailbox .textbox{
	width:55%;
}

#sec04 .detailbox .textbox h2{
	margin-bottom:20px;
	line-height:1.5;
	font-size:2.5em;
	font-weight:900;
}

#sec04 .detailbox .textbox h2 small{
	font-size:.45em;
	font-weight:bold;
}

#sec04 .detailbox .textbox h2 span.greentxt{
	font-weight:900;
}

#sec04 .detailbox .graph{
	width:45%;
}

#sec04 .detailbox .graph img.sp{
	display:none;
}

#sec04 .detailbox .graph p.sp{
	display:none;
}

#sec04 .consultbox{
	width:100%;
	max-width:900px;
	margin:0 auto 30px;
	padding:30px 70px;
	color:#000;
	background:#fff;
	text-align:left;
	border-radius:15px;
	column-gap:25px;
	align-items:center;
	justify-content:center;
}

#sec04 .consultbox p{
	font-weight:bold;
}

#sec04 .consultbox h4{
	font-size:1.5em;
	font-weight:900;
}

#sec04 .consultbox h4 span.redtxt{
	font-weight:900;
}

#sec04 .consultbox .textbox,#sec04 .consultbox .button{
	width:50%;
	padding:10px 0;
}

#sec04 .consultbox .textbox{
	padding:10px 0;
	border-right:dashed 3px #41a664;
}

#sec04 .consultbox .button a{
	padding:15px 45px;
	color:#fff;
	background:#EF5B5B;
	font-weight:900;
	border-radius:999px;
}

#sec04 .consultbox .button a::before{
	padding:1px 6px;
	font-size:.8em;
	border:solid 1px #fff;
	border-radius:5px;
	position:relative;
	top:-1px;
	left:-5px;
	content:"無料";
}

#sec04 .advisor.button{
	display:none;
}

#sec05{
	width:90%;
	max-width:900px;
	margin:50px auto 0;
}

#sec05 h3{
	text-align:center;
	font-size:2em;
	font-weight:900;
}

#sec05 .reasons-list{
	margin:30px auto 0;
	flex-direction:column;
	row-gap:75px;
}

#sec05 .reasons-list .items{
	column-gap:40px;
}

#sec05 .reasons-list .items:nth-child(even){
	flex-direction:row-reverse;
}

#sec05 .reasons-list .items .img,#sec05 .reasons-list .items .textbox{
	width:50%;
}

#sec05 .reasons-list .items .img img{
	width:100%;
}

#sec05 .reasons-list .items .textbox{
	flex-direction:column;
	justify-content:center;
	row-gap:20px;
}

#sec05 .reasons-list .items .textbox .number{
	height:22.5%;
	max-height:50px;
}

#sec05 .reasons-list .items .textbox .number img{
	height:100%;
}

#sec05 .reasons-list .items .textbox h5,#sec05 .reasons-list .items .textbox h5 span{
	font-weight:bold;
}

#sec05 .reasons-list .items .textbox p{
	line-height:1.75;
}

#sec05 div.button{
	margin:50px auto 0;
}

#sec05 div.button a{
	padding:15px 45px;
	color:#fff;
	background:#EF5B5B;
	font-weight:900;
	border-radius:999px;
	position:relative;
}

#sec05 div.button a::after{
	font-size:2em;
	font-weight:900;
	line-height:.875;
	position:absolute;
	right:8px;
	content:"・";
}

#sec06{
	width:90%;
	max-width:800px;
	margin:100px auto 0;
}

#sec06 h3{
	text-align:center;
	font-size:2em;
	font-weight:900;
}

#sec06 .reasons-list{
	margin:30px auto 0;
	flex-direction:column;
	row-gap:75px;
}

#sec06 .reasons-list .items{
	column-gap:40px;
}

#sec06 .reasons-list .items .img,#sec06 .reasons-list .items .textbox{
	width:50%;
}

#sec06 .reasons-list .items .img img{
	width:100%;
}

#sec06 .reasons-list .items .img img.sp{
	display:none;
}

#sec06 .reasons-list .items .textbox{
	flex-direction:column;
	justify-content:center;
	row-gap:20px;
}

#sec06 .reasons-list .items .textbox h5,#sec06 .reasons-list .items .textbox h5 span{
	font-weight:bold;
}

#sec06 .reasons-list .items .textbox p{
	line-height:1.75;
}


@media (max-width:1366px){
	#sec01 .titlebox h1{
		font-size:2.8em;
	}

	#sec03 .introbox .textbox h1{
		font-size:2.8em;
	}
}

@media (max-width:999px){
	#sec01 .titlebox{
		width:76.5%;
		right:max(30px,5.75vw)
	}

	#sec03 .introbox .textbox h1{
		font-size:clamp(32px,4.75vw,45px);
	}

	#sec04 .detailbox .textbox h2{
		font-size:clamp(28px,3.75vw,40px);
	}

	#sec04 .consultbox h4{
		font-size:clamp(12px,2.1vw,22px);
	}

	#sec05 .reasons-list .items .textbox h5,#sec06 .reasons-list .items .textbox h5{
		font-size:clamp(12px,2.5vw,22px);
	}

	#sec05 .reasons-list .items .textbox .number{
		max-height:35px;
	}
}

@media (max-width:767px){
	#sec01::before,#sec01::after{
		display:none;
	}

	#sec01 .titlebox{
		width:90%;
		margin:20px auto 0;
		row-gap:10px;
		right:unset;
	}

	#sec01 .titlebox h1{
		font-size:2.45em;
	}

	#sec01 .titlebox div.spimg{
		overflow:hidden;
		display:block;
	}

	#sec01 .titlebox div.spimg img{
		object-position:center;
	}

	#sec01 .titlebox div.button{
		width:100%;
	}

	#sec01 .titlebox div.button a{
		width:100vw;
	}

	#sec01 .newnewsInfo{
		width:100%;
		padding:15px 12px;
		border-radius:0;
	}

	#sec01 .newnewsInfo .item{
		column-gap:10px;
	}

	#sec01 .newnewsInfo .item h6, #sec01 .newnewsInfo .item .category,#sec01 .newnewsInfo .item .detail{
		font-size:.85em;
	}

	#sec02{
		display:none;
	}

	#sec03 .introbox{
		flex-direction:column;
		row-gap:15px;
	}

	#sec03 .introbox .textbox,#sec03 .introbox .img{
		width:100%;
	}

	#sec03 .introbox .textbox h1,#sec03 .introbox .textbox p{
		text-align:center;
	}

	#sec03 .introbox .textbox p{
		font-size:1.1em;
		font-weight:bold;
	}

	#sec03 .introbox .textbox div.button{
		width:100%;
	}

	#sec03 .introbox .textbox div.button a{
		width:100vw;
	}

	#sec03 .introbox .img{
		margin-top:50px;
	}

	#sec03 .introbox .img img.pc{
		display:none;
	}

	#sec03 .introbox .img img.sp{
		width:50%;
		margin:0 auto;
		display:block;
	}

	#sec04 h3{
		font-size:5vw;
	}

	#sec04 p.desctiption{
		text-align:center;
	}

	#sec04 .about-features{
		flex-wrap:wrap;
		row-gap:20px;
	}

	#sec04 .detailbox{
		padding:30px 15px;
		flex-direction:column;
	}

	#sec04 .detailbox .textbox,#sec04 .detailbox .graph{
		width:100%;
	}

	#sec04 .detailbox .textbox h2{
		text-align:center;
		font-size:clamp(28px,7.25vw,40px);
	}

	#sec04 .detailbox .textbox p.pc{
		display:none;
	}

	#sec04 .detailbox .graph img.pc{
		display:none;
	}

	#sec04 .detailbox .graph img.sp{
		display:block;
	}

	#sec04 .detailbox .graph p.sp{
		margin-top:20px;
		line-height:1.75;
		font-weight:bold;
		display:block;
	}

	#sec04 .consultbox{
		display:none;
	}

	#sec04 .advisor.button{
		display:block;
	}

	#sec04 .advisor.button a{
		width:100vw;
		padding:15px;
		color:#fff;
		background:#EF5B5B;
		font-weight:900;
		border-radius:999px;
		position:relative;
	}

	#sec04 .advisor.button a::after{
		font-size:2em;
		font-weight:900;
		line-height:.875;
		position:absolute;
		right:8px;
		content:"・";
	}

	#sec05 h3{
		font-size:5vw;
	}

	#sec05 .reasons-list .items,#sec05 .reasons-list .items:nth-child(even){
		flex-direction:column;
	}

	#sec05 .reasons-list .items .img, #sec05 .reasons-list .items .textbox{
		width:100%;
	}

	#sec05 .reasons-list .items .textbox{
		align-items:center;
	}

	#sec05 .reasons-list .items .textbox .number{
		width:22.5%;
		max-width:100px;
		height:unset;
		max-height:unset;
		margin:-40px auto 0;
	}

	#sec05 .reasons-list .items .textbox h5, #sec05 .reasons-list .items .textbox h5 span{
		color:#41a664;
		text-align:center;
		font-size:4.5vw;
		font-weight:900;
	}

	#sec06 h3{
		font-size:5vw;
	}

	#sec06 .reasons-list .items{
		flex-direction:column;
		row-gap:15px;
	}

	#sec06 .reasons-list .items .img, #sec06 .reasons-list .items .textbox{
		width:100%;
	}

	#sec06 .reasons-list .items .img img.pc{
		display:none;
	}

	#sec06 .reasons-list .items .img img.sp{
		display:block;
	}

	#sec06 .reasons-list .items .textbox h5{
		font-size:5vw;
	}

	#sec06 .reasons-list .items .textbox p{
		line-height:2;
	}
}
