/* 
 lineup single
----------------------------------------------------------- */ 
.l-main.p-single-lineup{
	overflow: inherit;
}

.c-bottom-title__en::before{
	background-color: var(--theme-color, var(--main-color));
}
.c-en-title__en{
	color: var(--theme-color, var(--main-color));
}
.c-center-title__en{
	color: var(--theme-color, var(--main-color));
}

/* fv */
.fv{
	width:100%;
	height:100vh;
	height:100dvh;
	position: relative;
	z-index: 0;
}
.fv picture {
	height: 100%;
	width: 100%;
}
.fv__img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.fv-head{
	position: absolute;
	left: 5%;
	bottom: clamp(45px, 4.7vw, 90px);
	z-index: 2;
	color: #fff;
	width: min(90%,630px);
	opacity: 0;
	transform: translateY(30px);
	transition: opacity var(--trans-base), transform var(--trans-base);
}
.fv-head.is-show{
	opacity: 1;
	transform: translateY(0);
}
.fv-head__model{
	font-size: 24px;
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
	font-weight: 700;
	color: var(--fv-textcolor);
}
.fv-head__logo{
	height: clamp(47px, 3.1vw, 60px);
	width: auto;
	margin-top: 12px;
	font-weight: 700;
}
.fv-head__heading{
	display: flex;
	align-items: center;
	column-gap: clamp(20px, 2vw, 40px);
	row-gap: 10px;
	margin-top: 5px;
	font-weight: 700;
}
.fv-head__title{
	font-size: clamp(28px, 1.8vw, 35px);
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
	font-weight: 700;
	color: var(--fv-textcolor);
}
.fv-head__en{
	border: 1px solid var(--fv-textcolor-70);
	border-radius: 20px;
	line-height: 1.3;
	width: fit-content;
	padding: 3px 20px;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	background-color: rgba(255,255,255,0);
	color: var(--fv-textcolor);
}
.fv-head__en > span{
	padding-left: 18px;
	position: relative;
	z-index: 0;
	font-family: var(--font-en);
	font-size: var(--fontsize-14);
}
.fv-head__en > span::before{
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;
	border-radius: 5px;
	background-color: var(--theme-color, var(--main-color));
}
.fv-head__en > span::after{
	content: "";
	position: absolute;
	left: 2px;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 6px;
	border-radius: 5px;
	background-color: rgba(255,255,255,0.5);
}
.fv-head__text{
	margin-top: 15px;
	text-shadow: 0 0 5px rgba(0,0,0,0.15);
	color: var(--fv-textcolor);
}
.fv-head__cta{
	margin-top: 20px;
}
.fv-head .c-maru-btn:hover{
	background-color: var(--theme-color, var(--main-color));
}
.fv-sub{
	position: absolute;
	right: 5%;
	top: 50%;
	color: var(--fv-textcolor);
	opacity: 0;
	transform: translate(30px,-50%);
	transition: opacity var(--trans-base), transform var(--trans-base);
	line-height: 1.6;
	text-shadow: 0 0 5px rgba(0,0,0,0.15);
}
.fv-sub.is-show{
	opacity: 1;
	transform: translate(0,-50%);
}
.fv-sub__en{
	font-family: var(--font-en);
	font-size: clamp(15px, 1.6vw, 30px);
	font-weight: 700;
}
.fv-sub__title{
	font-family: var(--font-en);
	font-size: clamp(70px, 7.3vw, 140px);
	font-weight: 700;
	line-height: 1;
}
.fv-sub__ja{
	font-size: clamp(25px, 2.6vw, 50px);
	font-weight: 700;
}

/* performance */
.performance{
	background: url("../img/test/super-performance-bg.jpg") center center / cover no-repeat;
	width:100%;
	height:100vh;
	height:100dvh;
	color: #fff;
	position: relative;
	line-height: 1.6;
}
.performance::before{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.55);
}
.performance .l-inner{
	height: 100%;
	position: relative;
	z-index: 1;
}
.performance-list__item{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.performance-list__en{
	text-align: center;
	display: block;
	font-family: var(--font-en);
	font-weight: 700;
	font-size: clamp(23px, 1.8vw, 35px);
	color: rgba(255,255,255,0.65);
}
.performance-list__title{
	text-align: center;
	font-weight: 700;
	font-size: clamp(30px, 2.6vw, 50px);
	margin-top: 5px;
}
.performance-list__sub{
	width: fit-content;
	display: block;
	margin: 20px auto 0;
	font-family: var(--font-en);
	font-weight: 700;
	font-size: var(--fontsize-14);
	color: var(--theme-color, var(--main-color));
}
.performance-list__sub::before,
.performance-list__sub::after{
	content: " / "
}
.performance-list__text{
	text-align: center;
	font-size: var(--fontsize-20);
	margin-top: clamp(25px, 3.6vw, 70px);
}

/* about */
.about{
	padding-top: clamp(70px, 8.3vw, 160px);
}
.about-sticky{
	position: relative;
}
.about-sticky > .c-en-title:not(:first-of-type){
	border-top: 1px solid var(--font-color);
}
.about-sticky__item{
	padding-block: clamp(40px, 4.4vw, 85px);
	border-bottom: 1px solid var(--font-color);
}
.about-sticky__item:first-of-type{
	border-top: 1px solid var(--font-color);
}
.about-sticky__item .l-inner{
	width: min(100%,1345px);
}
.about-overview__text{
	margin-top: clamp(20px, 2.3vw, 45px);
}
.about-overview__video{
	width: 100%;
	height: auto;
	margin-top: 30px;
}
.about-who__item:not(:last-child){
	margin-bottom: 25px;
}
.about-who__item{
	background-color: #E0E0E0;
	border-radius: 0 8px 8px 0;
	padding: clamp(15px, 2vw, 40px) clamp(20px, 3.6vw, 70px);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(10px, 3.1vw, 60px);
	border-left: 3px solid var(--theme-color, var(--main-color));
}
.about-who__img{
	height: 40px;
	width: auto;
}
.about-who__text{
	flex: 1;
	font-weight: 700;
	font-size: clamp(18px, 1.1vw, 22px);
	line-height: 1.6;
}
.about-features__list{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}
.about-features__item{
	position: relative;
	height: clamp(230px, 19.5vw, 375px);
	width: clamp(230px, 19.5vw, 375px);
	border-radius: 50%;
	padding: 30px;
	box-sizing: border-box;
	transition: transform 3s cubic-bezier(0.16, 1, 0.3, 1);
	line-height: 1.6;
}
.about-features__item:not(:first-child){
	margin-left: calc(var(--overlap, 30px) * -1);
}
.about-features__num{
	display: block;
	text-align: center;
	font-weight: 700;
	font-family: var(--font-en);
	line-height: 1.3;
	padding-bottom: clamp(40px, 5.5vw, 105px);
	position: relative;
	color: var(--theme-color, var(--main-color));
}
.about-features__num::before{
	content: "";
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	height: clamp(30px, 4.7vw, 90px);
	background-color: #9A9A9A;
}
.about-features__num::after{
	content: "";
	position: absolute;
	bottom: 7px;
	left: 50%;
	transform: translateX(-50%);
	width: 5px;
	height: 5px;
	border-radius: 3px;
	background-color: #9A9A9A;
}
.about-features__ja{
	font-weight: 700;
	font-size: clamp(18px, 1.1vw, 22px);
	text-align: center;
}
.about-features__en{
	font-weight: 700;
	font-size: var(--fontsize-14);
	text-align: center;
	font-family: var(--font-en);
	color: var(--theme-color, var(--main-color));
}
.about-features__circle{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 0;
}
.about-features__item > *:not(.about-features__circle){
	position: relative;
	z-index: 1;
}
.about-features__circle .draw-path{
	fill: none;
	stroke: #fff;
	stroke-width: 4;
	stroke-linecap: round;
	transform-origin: 50% 50%;
	transition: stroke-dashoffset 3s cubic-bezier(0.16, 1, 0.3, 1);
}
.about-features__circle .dashed-path{
	fill: none;
	stroke: var(--font-color);
	stroke-width: 1;
	vector-effect: non-scaling-stroke;
	stroke-dasharray: 2 5;
}
.about-features__num,
.about-features__ja,
.about-features__en{
	opacity: 0;
	transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1);
}

/* custom */
.s-custom{
	padding-top: clamp(50px, 6.8vw, 130px);
}

/* package */
.package{
	padding-block: clamp(70px, 8.3vw, 160px) clamp(50px, 6.5vw, 125px);
	border-bottom: 1px solid var(--border-color);
}
.package__body{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: center;
}
.package-content{
	flex: 1;
	min-width: 0;
}
.package-size{
	width: clamp(300px, 26.6vw, 510px);
}
.package-content__title{
	font-size: clamp(25px, 2.6vw, 50px);
	font-weight: 700;
}
.package-content__text{
	margin-top: clamp(20px, 2.3vw, 45px);
}
.package-content__slider,
.package-content__img-list{
	min-width: 0;
}
.package-content__img{
	position: relative;
	overflow: hidden;
	width: min(100%,670px);
	min-width: 0;
	margin-top: clamp(20px, 4.1vw, 80px);
}
.package-content__img-item{
	background-color: var(--bg-color);
}
.package-content__img img{
	width: 100%;
	height: auto;
}
.package .swiper-pagination {
	width: fit-content;
	bottom: 16px;
	right: 24px;
	left: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.package .swiper-pagination-bullet{
	margin: 0 5px !important;
	background: rgba(109,111,108,0.4);
	opacity: 1;
}
.package .swiper-pagination-bullet-active{
	background: var(--gray-color);
	position: relative;
}
.package-size__title{
	background-color: var(--black-color);
	text-align: center;
	color: #fff;
	font-weight: 600;
	padding: 8px;
	font-size: var(--fontsize-18);
	border-radius: 6px;
}
.package-size__title--white{
	background-color: var(--bg-white);
	color: var(--font-color);
}
.package-size__color{
	display: grid;
	gap: 13px;
	grid-template-columns: repeat(4, 1fr);
	width: fit-content;
	margin: 25px auto 30px;
}
.package-size__list{
	line-height: 1.6;
}
.package-size__row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 13px 23px;
	border-bottom: 1px solid var(--bg-white);
}
.package-size__term{
	width: 210px;
	font-weight: 700;
}
.package-size__description{
	flex: 1;
	text-align: right;
}
.package-size__notice{
	text-align: right;
	margin-top: 13px;
	font-size: var(--fontsize-14);
}

/* package */
.s-purchase{
	padding-block: clamp(50px, 6.8vw, 130px);
}

/* comparison */
.comparison{
	padding-block: clamp(60px, 7.3vw, 140px) clamp(65px, 7.6vw, 145px);
	background-color: var(--bg-white);
	border-bottom: 1px solid var(--border-color);
}
.comparison__lead{
	margin-bottom: clamp(30px, 4.1vw, 80px);
}

/* performance-test */
.s-performance{
	background-color: var(--bg-white);
	padding-block: clamp(65px, 7.6vw, 145px) clamp(70px, 8.3vw, 160px);
}
.s-performance__head{
	align-items: flex-start;
	margin-bottom: clamp(30px, 4.1vw, 80px);
}

/* why */
.why{
	padding-block: clamp(70px, 8.3vw, 160px) clamp(50px, 6.8vw, 130px);
}
.why__body{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 30px;
}
.why__content{
	width: min(calc(52.5% - 30px),550px);
}
.why__img{
	width: 47.5%;
}
.why__img img{
	width: 100%;
	height: auto;
}
.why__title{
	margin-bottom: clamp(20px, 2.3vw, 45px);
	font-weight: 700;
	font-size: clamp(30px, 2.6vw, 50px);
}

/* point */
.point{
	background: url("../img/lineup/point-bg.jpg") center center / cover no-repeat;
	padding-block: clamp(50px, 6.8vw, 130px) clamp(65px, 7.6vw, 145px);
}
.point__list{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: clamp(20px, 1.8vw, 35px);
}
.point__item{
	flex: 0 0 calc((100% - clamp(20px, 1.8vw, 35px) * 2) / 3);
	border-radius: 6px;
	background-color: rgba(255,255,255,0.9);
	padding: clamp(20px, 3.9vw, 75px) clamp(20px, 3.4vw, 65px);
	display: flex;
	align-items: center;
	gap: clamp(15px, 2vw, 40px);
}
.point__num{
	font-family: var(--font-en);
	font-weight: 700;
	font-size: var(--fontsize-33);
	text-align: center;
	line-height: 1.3;
	color: var(--theme-color, var(--main-color));
}
.point__num > span{
	font-size: var(--fontsize-14);
	display: block;
	text-align: center;
}
.point_content{
	flex: 1;
}
.point___title{
	font-weight: 700;
	margin-bottom: 13px;
	font-size: clamp(18px, 1.1vw, 22px);
}
.point__text{
	line-height: 1.8;
}

/* patent */
.patent{
	padding-block: clamp(70px, 8.3vw, 160px);
}
.patent__title{
	text-align: center;
	margin-bottom: clamp(20px, 2.3vw, 45px);
	font-weight: 700;
	font-size: clamp(30px, 2.6vw, 50px);
}
.patent-body{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: clamp(25px, 3.6vw, 70px);
	gap: clamp(25px, 2.3vw, 45px);
}
.patent-body__img{
	flex: 1;
}
.patent-body__content{
	width: 50%;
}
.patent-body__img > img{
	width: 100%;
	height: auto;
}
.patent-body__box{
	margin-top: clamp(25px, 3.9vw, 75px);
	border: 1px solid #707070;
	border-radius: 6px;
	padding: clamp(20px, 1.6vw, 30px) clamp(20px, 2vw, 40px);
}
.patent-body__box-title{
	font-size: var(--fontsize-16);
	font-weight: 700;
	margin-bottom: 6px;
}
.patent-body__box-text{
	font-size: var(--fontsize-14);
	line-height: 1.5;
}
.patent-body__title{
	background-color: #E0E0E0;
	border-radius: 10px 10px 0 0;
	padding: clamp(15px, 1.6vw, 30px) clamp(20px, 2.6vw, 50px);
	display: flex;
	align-items: center;
	gap: clamp(15px, 2vw, 40px);
	font-size: clamp(18px, 1.1vw, 22px);
	font-weight: 700;
}
.patent-body__title > span{
	font-size: var(--fontsize-14);
	font-family: var(--font-en);
	color: var(--theme-color, var(--main-color));
}
.patent-body__item{
	padding: clamp(20px, 2.6vw, 50px) clamp(20px, 3.9vw, 75px);
}
.patent-body__item:not(:last-child){
	border-bottom: 1px solid #D0D0D0;
}
.patent-body__item-title{
	font-size: clamp(18px, 1.1vw, 22px);
	font-weight: 700;
	margin-bottom: 8px;
}
.patent-body__item-text{
	line-height: 1.8;
}

/* investigate */
.investigate{
	border-bottom: 1px solid var(--border-color);
}

/* product */
.product{
	border-bottom: 1px solid var(--border-color);
	margin-bottom: clamp(45px, 6.2vw, 120px);
}
.product .c-lineup{
	margin-top: clamp(25px, 2.6vw, 50px);
}

@media screen and (max-width: 1024px){
	.point__item{
		padding: 25px;
		flex: 0 0 calc((100% - clamp(20px, 1.8vw, 35px) * 1) / 2);
	}
	.point___title{
		margin-bottom: 5px;
	}
}
@media screen and (max-width: 767px){
	.fv-head{
		left: 5%;
		width: 90%;
		height: calc(100% - 120px);
		display: flex;
		flex-direction: column;
		bottom: 30px;
	}
	.fv-head__text{
		margin-top: 20px;
		line-height: 1.8;
		text-align: center;
	}
	.fv-sub__ja{
		text-align: center;
		line-height: 1.6;
	}
	.fv-sub__en{
		text-align: center;
		line-height: 1.6;
	}
	.fv-head__cta{
		margin-top: 20px;
	}
	.fv-head__cta .c-maru-btn{
		margin-inline: auto;
	}
	.fv-head__heading{
		flex-direction: column;
		margin-bottom: auto;
	}
	.fv-head__model{
		text-align: center;
		line-height: 1.6;
	}
	.fv-head__logo{
		margin-inline: auto;
		margin-top: 13px;
	}
	.fv-head__title{
		text-align: center;
		line-height: 1.6;
	}
	.fv-head__en{
		margin-inline: auto;
	}
	.fv-sub--pc{
		display: none;
	}
	.about-features__item:not(:first-child){
		margin-left: 0;
	}
	.about-features__list{
		width: min(100%,500px);
		margin-inline: auto;
	}
	.about-features__item:nth-child(2n){
		margin-left: -30px;
	}
	.about-features__item:nth-child(n+3){
		margin-top: -30px;
	}
	.package-content{
		flex: auto;
		width: 100%;
	}
	.package-size{
		width: 100%;
	}
	.why__content{
		width: 100%;
	}
	.why__img{
		flex: auto;
		width: 100%;
	}
	.point__item{
		flex: auto;
		width: 100%;
		padding: 20px;
	}
	.patent-body__img{
		flex: auto;
		width: 100%;
	}
	.patent-body__content{
		width: 100%;
	}
}
@media screen and (max-width: 480px){
	.about-features__item{
		height: clamp(180px, 19.5vw, 375px);
		width: clamp(180px, 19.5vw, 375px);
		padding: 20px;
	}
	.about-features__item:nth-child(2n){
		margin-left: -30px;
	}
	.about-features__item:nth-child(n+3){
		margin-top: -30px;
	}
}