@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@400;700&display=swap");
body, html {
	overflow-x: hidden;
	width: 100%
}
body {
	color: #171725;
	font-family: Roboto, Noto Sans JP, Hiragino Kaku Gothic ProN, Hiragino Sans, meiryo, sans-serif
}
img {
	max-width: 100%
}
.p-effective {
	padding: 14.0096618357vw 0 14.4927536232vw
}
@media (min-width:52.1875em) {
	.p-effective {
		padding: 5.2777777778vw 0 2.9166666667vw
	}
}
@media (min-width:90em) {
	.p-effective {
		padding: 76px 0 42px
	}
}
.p-effective.p-effective--background {
	background: #fafafa
}
.p-effective__title {
	margin-bottom: 2.8985507246vw
}
@media (min-width:52.1875em) {
	.p-effective__title {
		margin-bottom: 4.0277777778vw
	}
}
@media (min-width:90em) {
	.p-effective__title {
		margin-bottom: 58px
	}
}

.p-features.p-features--background {
	padding: 13.0434782609vw 0 5.7971014493vw
}
@media (min-width:52.1875em) {
	.p-features.p-features--background {
		padding: 7.2222222222vw 0 3.4722222222vw
	}
}
@media (min-width:90em) {
	.p-features.p-features--background {
		padding: 104px 0 50px
	}
}
.p-features__head {
	margin-bottom: 32px;
}
@media (min-width:52.1875em) {
	.p-features__head {
		margin-bottom: 3.888888vw;
	}
}
@media (min-width:90em) {
	.p-features__head {
		margin-bottom: 56px;
	}
}
.p-features__block {
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 1.9323671498vw;
	margin: 3.832335vw auto 2.8742514vw;
	padding: 3.832335vw 2.8742514vw;
	position: relative
}
@media (min-width:52.1875em) {
	.p-features__block {
		border-radius: .5555555556vw;
		margin-bottom: 3.3333333333vw;
		margin-top: 0;
		padding: 3.3333333333vw 2.77777777vw;
	}
}
@media (min-width:90em) {
	.p-features__block {
		border-radius: 8px;
		margin-bottom: 48px;
		max-width: 810px;
		padding: 48px 40px;
	}
}
.p-features__block.p-features__block--white {
	background: #fff
}

.p-features__block__image {
	margin-top: 7.7294685vw;
	text-align: center;
}
@media (min-width:52.1875em) {
	.p-features__block__image {
		margin-top: 2.22222222vw;
	}
}
@media (min-width:90em) {
	.p-features__block__image {
		margin-top: 32px;
	}
}
.p-features__block__image img {
	filter: drop-shadow(0 24px 60px rgba(23, 23, 37, .1))
}
.p-features__block__lead {
	font-size: 3.864734vw;
	line-height: 1.7;
	margin-top: 3.864734vw;
	font-weight: 700;
}
@media (min-width:52.1875em) {
	.p-features__block__lead {
		font-size: 1.25vw;
		margin-top: 1.666666vw
	}
}
@media (min-width:90em) {
	.p-features__block__lead {
		font-size: 18px;
		margin-top: 24px
	}
}
.p-features__block__point {
	margin-top: 7.729468599vw
}
@media (min-width:52.1875em) {
	.p-features__block__point {
		margin-top: 1.9444444444vw
	}
}
@media (min-width:90em) {
	.p-features__block__point {
		margin-top: 28px
	}
}
.p-features__block__point__text {
	margin-top: 2.8985507246vw
}
@media (min-width:52.1875em) {
	.p-features__block__point__text {
		margin-top: .8333333333vw;
		max-width: 25.1388888889vw
	}
}
@media (min-width:90em) {
	.p-features__block__point__text {
		margin-top: 12px;
		max-width: 362px
	}
}
.p-features__block__label span {
	background: #008981;
	border-radius: 4px;
	color: #fff;
	display: inline-block;
	font-size: 3.3816425121vw;
	font-weight: 700;
	margin-top: 5.3140096618vw;
	padding: 2.4154589372vw 3.8647342995vw
}
@media (min-width:52.1875em) {
	.p-features__block__label span {
		font-size: .9722222222vw;
		margin-top: 1.8055555556vw;
		padding: .6944444444vw 1.1111111111vw
	}
}
@media (min-width:90em) {
	.p-features__block__label span {
		font-size: 14px;
		margin-top: 26px;
		padding: 10px 16px
	}
}
.p-features__block__list {
	font-size: 3.3816425121vw;
	list-style: inside;
	margin-top: 5.3140096618vw
}
@media (min-width:52.1875em) {
	.p-features__block__list {
		font-size: .9722222222vw;
		margin-top: 1.5277777778vw
	}
}
@media (min-width:90em) {
	.p-features__block__list {
		font-size: 14px;
		margin-top: 22px
	}
}
.p-features__block__list li {
	margin-top: 2.8985507246vw
}
@media (min-width:52.1875em) {
	.p-features__block__list li {
		margin-top: .5555555556vw
	}
}
@media (min-width:90em) {
	.p-features__block__list li {
		margin-top: 8px
	}
}



.c-heading--features{
    display: flex;
    align-items: center;
}
.c-heading--features img{
	width: 80px;
	margin-right: 16px;
}
.float-wrap h3.c-heading{
	font-size: 5.7971014vw;
}
.float-wrap .c-heading.c-heading--border:before{
	height: 8.6956521vw;
}
.float-wrap .c-text{
	margin-top: 3.864734vw;
}

.float-aside{
	margin-bottom: 7.66467vw;
}
.aside-nav{
	background: #fff;
	border-radius: 8px;
	padding: 24px;
	max-width: 88.4057971014vw;
	margin: 0 auto;
	box-shadow: 0px 1px 15px 0px rgba(0, 0, 0, 0.1);
}
.aside-nav__ttl{
	font-size: 2.576489vw;
	font-weight: 700;
	color: #74747C;
	margin-bottom: 16px;
}
.aside-nav__list{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.aside-nav__list + .aside-nav__ttl{
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid #EEEEEE;
}
.aside-nav__list li{
	width: 50%;
}
.aside-nav__list li a{
	padding: 8px;
	display: block;
	font-size: 2.2544283vw;
	font-weight: 400;
	margin-bottom: 1.288244vw;
}

.actual{
	border: 1px solid #008981;
	padding: 16px;
	margin-top:3.864734vw;
}
.actual-ttl{
	font-size: 14px;
	font-weight: 700;
	color: #008981;
	margin-bottom: 16px;
}
.actual-list li{
	font-size: 14px;
	font-weight: 500;
	color: #171725;
	line-height: 1.7;
	padding-left: 4.347826087vw;
	position: relative;
}
.actual-list li:before {
    content: "・";
    left: 0;
    position: absolute;
    top: 0;
}
.features-btn__area ul{
	background: #ffffff;
    padding: 8.6956521739vw 5.7971014493vw 11.5942028986vw;
}
.features-btn{
	margin-top: 3.3816425121vw;
}
.features-btn a{
	background: #FFA826;
	border: 1px solid #FFA826;
    border-radius: 0.9661835749vw;
    color: #fff;
    display: block;
    font-size: 3.8647342995vw;
    font-weight: 700;
    padding: 4.8309178744vw;
    text-align: center;
	width: 100%;
}
.features-btn + .features-btn a{
	background: #0FB6B2;
	border: 1px solid #0FB6B2;
}
@media (min-width:52.1875em) {
	.c-heading--features img{
		width: 100px;
		margin-right: 24px;
	}
	.float-wrap{
		max-width: 75vw;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		position: relative;
	}
	.float-main{
		width: 75%;
	}
	.float-wrap .c-background{
		width: 100vw;
		margin: 0 calc(50% - 50vw);
		overflow: hidden;
	}
	.float-wrap .c-background .c-container.c-container--wide{
		max-width: 75vw;
	}
	.float-wrap h3.c-heading{
		font-size: 1.9444444vw;
	}
	.float-wrap .c-heading.c-heading--border:before{
		height: 2.9166666vw;
	}
	.float-wrap .c-text{
		margin-top: 1.6666666vw;
	}
	.float-wrap .c-background .p-features.p-features--background{
		width: 75%;
		margin-left: auto;
	}
	.float-aside{
		width: 15vw;
	}
	.aside-nav{
		padding: 2.222222vw 1.3888888vw;
	}
	.aside-nav__ttl{
		font-size: 0.9vw;
		margin-bottom: 1.1111111vw;
	}
	.aside-nav__list{
		flex-direction: column;
	}
	.aside-nav__list li{
		width: 100%;
	}
	.aside-nav__list li a{
		font-size: .972222222vw;
		margin-bottom: .555555555vw;
	}
	.text-wrap{
		display: flex;
		justify-content: space-between;
		gap: 1.91616vw;
	}
	.text-wrap .c-text{
		width: 50%;
	}
	.actual{
		width: 50%;
		margin-top:1.6666666vw;
	}
	.actual-list li{
		padding-left: 1.25vw;
	}
	.features-btn__area ul{
		display: flex;
		justify-content: center;
		padding: 4.1666666667vw 0;
	}
	.features-btn{
		margin: 0 0.9722222222vw;
	}
	.features-btn a{
		border-radius: 0.2777777778vw;
		font-size: 1.25vw;
		padding: 1.3888888889vw 1.7361111111vw;
		transition: all .6s ease;
		width: 30vw;
	}
	.features-btn a:hover{
		color: #FFA826;
		background: #ffffff;
	}
	.features-btn + .features-btn a:hover{
		color: #0FB6B2;
	}
	.aside-nav__list li a{
		position: relative;
		
	}
	.aside-nav__list li.is-active a{
		font-weight: bold;
	}
	.aside-nav__list li.is-active a::after{
		content: "";
		position: absolute;
		top:0 ;
		left: -1.3888888vw;
		border-left: 4px solid #0FB6B2;
		width: 100%;
		height: 100%;
	}
}

@media (min-width:90em) {
	.float-aside{
		width: 200px;
	}
	.aside-nav__ttl{
		font-size: 16px;
	}
	.float-wrap{
		max-width: 1080px;
	}
	.float-main{
		width:810px;
	}
	.float-wrap .c-background{
		width: 100vw;
		margin: 0 calc(50% - 50vw);
	}
	.float-wrap .c-background .c-container.c-container--wide{
		max-width: 1080px;
	}
	.float-wrap h3.c-heading{
		font-size: 28px;
	}
	.float-wrap .c-heading.c-heading--border:before{
		height: 42px;
	}
	.float-wrap .c-text{
		margin-top: 24px;
	}
	.aside-nav__list li a{
		font-size: 14px;
		margin-bottom: 8px;
	}

	.actual{
		margin-top:24px;
	}
	.actual-list li{
		padding-left: 18px;
	}
	.features-btn__area ul{
		padding: 60px 0;
	}
	.features-btn{
		margin: 0 14px;
	}
	.features-btn a{
		border-radius: 4px;
		font-size: 18px;
		padding: 20px;
		width: 400px;
	}
}
@media (max-width:834px) {
	.float-aside{
		height: auto!important;
		position: static !important;
		top: auto!important;
	}
	.float-main{
		padding-left: 0!important;
	}
	.aside-nav__ttl{
		font-size: 0.875rem;
	}
	.aside-nav__list li a{
		position: relative;
		font-size: 0.875rem;
	}
	.aside-nav__list li a::after{
		content: '';
		display: inline-block;
		border-style: solid;
		border-width: 5px 5px 0 5px;
		border-color: #0FB6B2 transparent transparent transparent;
		display: inline-block;
		width: 0;
		height: 0;
		/* 矢印アイコンの位置を設定 */
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translateY(-50%); /* translateYのみ */
	}
}
