@charset "utf-8";

/***
* main 
**************************************/
main {
	position: relative;
}

/***
* main 
**************************************/
.main {
	padding-top: calc(var(--winW) * 40);
	padding-bottom: calc(var(--winW) * 40);
	text-align: center;
	letter-spacing: 0.04em;
}
.main .title {
	font-size: calc(var(--winW) * 24);
	letter-spacing: calc(0em / 100);
	line-height: calc(36 / 24);
}
.main .section-text {
	font-size: calc(var(--winW) * 16);
	line-height: 1.8;
	margin-top: calc(var(--winW) * 25);
	margin-bottom: calc(var(--winW) * 25);
}
@media screen and (min-width: 769px) {
	.main {
		padding-top: calc(var(--winW) * 50);
		padding-bottom: calc(var(--winW) * 50);
		max-width: calc(var(--winW) * 1370);
		margin: 0 auto;
	}
	.main .title {
		font-size: calc(var(--winW) * 36);
		line-height: 1.8;
	}
	.main .section-text {
		font-size: calc(var(--winW) * 22);
		margin-top: calc(var(--winW) * 24);
		margin-bottom: calc(var(--winW) * 0);
	}
}

/***
* 車種選択
**************************************/
.top-carmodel__body-pc {
	width:90%;
	margin: calc(var(--winW) * 40) auto;
}
.top-carmodel__tablist {
	text-align: center;
	width: 100%;
	display: table;
	border-collapse: collapse;
}
.top-carmodel__tabitem {
	font-size: calc(var(--winW) * 16);
	padding: calc(var(--winW) * 24) calc(var(--winW) * 5);
	border: calc(var(--winW) * 1) solid #ccc;
	letter-spacing: 0.1em;
	display: table-cell;
	vertical-align: middle;
	background-color: #f6f6f6;
	color: #000;
	cursor: pointer;
}
.top-carmodel__tabitem.is-active {
	position: relative;
	background-color: #fff;
	border-bottom: none;
}
.top-carmodel__tabitem.is-active::after {
	content: "";
	display: block;
	width: 70%;
	height: calc(var(--winW) * 5);
	background-color: #c3002f;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.top-carmodel__panel {
	display: none;
	padding-top: calc(var(--winW) * 15);
	padding-bottom: calc(var(--winW) * 35);
	border-left: calc(var(--winW) * 1) solid #ccc;
	border-right: calc(var(--winW) * 1) solid #ccc;
	border-bottom: calc(var(--winW) * 1) solid #ccc;
}
.top-carmodel__panel.is-show {
	display: block;
}

.top-carmodel__body-pc ul, .top-carmodel__body-sp ul {
	list-style: none;
	margin-left: inherit;
	margin-bottom: inherit;
	padding: 0;
}
.top-carmodel__panel-list {
	display: flex;
	justify-content: center;
	align-items: center;
}
.top-carmodel__panel-item {
	width: 18%;
	text-align: center;
	position: relative;
	cursor: pointer;
}
.top-carmodel__panel-item > .vehicle-block {
	display: block;
	padding: calc(var(--winW) * 10);
}
.top-carmodel__panel-item img {
	width: 100%;
}
.top-carmodel__panel-item .carname {
	display: block;
	margin-top: calc(var(--winW) * 10);
	font-size: calc(var(--winW) * 18);
	position: relative;
}
.top-carmodel__panel-item .carname::after {
	content: "\e66c";
	font-family: icon-Nissan-Global;
	speak: none;
	font-weight: 400;
	line-height: 1;
	font-size: calc(var(--winW) * 18);
	color: #c3002f;
	position: absolute;
	top: 50%;
	right:0;
	transform: translateY(-50%);
}
.top-carmodel__panel-item.menu-open .carname::after {
	content: "\e609";
	font-family: icon-Nissan-Global;
	color: #323232;
}
.menu-open .info-links {
	display: block;
}
.info-links {
	display: none;
	background-color: #2a2a2a;
	z-index: 10;
	width: calc(var(--winW) * 340);
	position: absolute;
	top: auto;
	left: 50%;
	transform: translateX(-50%);
}
.info-links span {
	position: relative;
	font-size: calc(var(--winW) * 14);
	border-bottom: calc(var(--winW) * 1) solid #1a1a1a;
	height: 100%;
	display: flex;
	align-items: center;
	line-height: 1.5;
}
.info-links span a {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: calc(var(--winW) * 20) calc(var(--winW) * 50) calc(var(--winW) * 20) calc(var(--winW) * 62);
	font-size: calc(var(--winW) * 16);
	text-align: left;
	height: 100%;
	width: 100%;
	position: relative;
	display: flex;
	align-items: center;
}
.info-links .icon-first:before {
	font-family: 'icon-Nissan-Global' !important;
	content: "\e667";
	color: #c1c1c1;
	font-size: calc(var(--winW) * 30);
	position:absolute;
	top: 50%;
	left: calc(var(--winW) * 20);
	transform: translateY(-50%);
}
.info-links .icon-second:before {
	font-family: 'icon-Nissan-Global' !important;
	content: "\e64e";
	color: #c1c1c1;
	left: calc(var(--winW) * 16);
	font-size: calc(var(--winW) * 30);
	position:absolute;
	top: 50%;
	left: calc(var(--winW) * 20);
	transform: translateY(-50%);
}
.info-links span a:after{
	font-family: icon-Nissan-Global;
	speak: none;
	font-style: normal;
	font-weight: 400;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	font-size: calc(var(--winW) * 14);
	content: "";
	color: #c3002f;
	right: calc(var(--winW) * 20);
	top: 50%;
	position: absolute;
	font-variant: normal;
	overflow: hidden;
	transform: translateY(-50%);
}

.top-carmodel__body-sp {
	font-size: calc(var(--winW) * 14);
	border-bottom: calc(var(--winW) * 1) solid #d2d2d2;
	width:90%;
	margin: calc(var(--winW) * 15) auto;
}
.top-carmodel__header {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0 0.8em;
	padding: calc(var(--winW) * 6) calc(var(--winW) * 30) calc(var(--winW) * 6) 0;
	border-top: calc(var(--winW) * 1) solid #d2d2d2;
}
.top-carmodel__header span {
	font-size: calc(var(--winW) * 16);
}
.top-carmodel__header img {
	width: 30%;
	max-width: calc(var(--winW) * 80);
}
.top-carmodel__header-mark {
	position: absolute;
	right: calc(var(--winW) * 12);
	width: calc(var(--winW) * 12);
	height: calc(var(--winW) * 12);
	top:50%;
	transform: translateY(-50%);
}
.top-carmodel__header-lines {
	position: relative;
	width: 100%;
	height: 100%;
}
.top-carmodel__header-lines span {
	position: absolute;
	top: calc(var(--winW) * 4);
	width: 100%;
	height: calc(var(--winW) * 1.5);
	background-color: #c3002f;
	border-radius: calc(var(--winW) * 1);
}
.top-carmodel__header-lines span:last-child {
	transform: rotate(90deg);
	transition: all 0.3s;
}
.top-carmodel__header-lines.is-active span:last-child {
	transform: rotate(0);
}

.top-carmodel__content {
	display: none;
	padding: calc(var(--winW) * 5) 0 calc(var(--winW) * 15);
}

.top-carmodel__body-pc ul, .top-carmodel__body-sp ul {
	list-style: none;
	margin-left: inherit;
	margin-bottom: inherit;
	padding: 0;
}
.top-carmodel__body-sp .top-carmodel__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0 calc(var(--winW) * 5);
}
.top-carmodel__body-sp .top-carmodel__item {
	width: calc(var(--winW) * 105);
	display: block;
	position: relative;
	cursor: pointer;
}
.top-carmodel__body-sp .top-carmodel__item .carname {
	display: block;
	width: 80%;
	text-align: center;
	font-size: calc(var(--winW) * 11);
	line-height: 1.3;
	position: relative;
	padding: calc(var(--winW) * 3) 0;
	width: 100%;
}
.top-carmodel__body-sp .top-carmodel__item .carname::after {
	content: "\e66c";
	font-family: icon-Nissan-Global;
	speak: none;
	font-weight: 400;
	line-height: 1;
	font-size: calc(var(--winW) * 10);
	color: #c3002f;
	position: absolute;
	right: 0;
	top:50%;
	transform: translateY(-50%);
}
.top-carmodel__body-sp .top-carmodel__item.menu-open .carname::after {
	content: "\e609";
	font-family: icon-Nissan-Global;
	color: #323232;
}

.top-carmodel__body-sp .info-links {
	display: none;
	background-color: #2a2a2a;
	z-index: 10;
	width: calc(var(--winW) * 240);
	position: absolute;
	top: auto;
	left: 50%;
	transform: translateX(-50%);
	line-height: 1.5;
}
.top-carmodel__body-sp .top-carmodel__item:nth-of-type(1) .info-links,
.top-carmodel__body-sp .top-carmodel__item:nth-of-type(4) .info-links {
	left: 0;
	transform: none;
}
.top-carmodel__body-sp .top-carmodel__item:nth-of-type(3) .info-links {
	left: calc(var(--winW) * -130);
	transform: none;
}
.menu-open .info-links {
	display: block;
}

.top-carmodel__body-sp .info-links span a {
	padding: calc(var(--winW) * 14) calc(var(--winW) * 26) calc(var(--winW) * 14) calc(var(--winW) * 40);
	font-size: calc(var(--winW) * 12);
}
.top-carmodel__body-sp .info-links .icon-first:before {
	font-size: calc(var(--winW) * 18);
	left: calc(var(--winW) * 12);
}
.top-carmodel__body-sp .info-links span a:after {
	font-size: calc(var(--winW) * 10);
	right: calc(var(--winW) * 8);
}

.option_btn {
	width: fit-content;
	margin:calc(var(--winW) * 20) auto calc(var(--winW) * 100) auto;
}
.option_btn a {
	padding: calc(var(--winW) * 8) calc(var(--winW) * 40) calc(var(--winW) * 8) calc(var(--winW) * 20);
	font-size: calc(var(--winW) * 14);
	position: relative;
	align-items: center;
	background-color: #eee;
	line-height: 1.5;
	color: #666;
	justify-content: center;
	text-align:left;
/*
	display: flex;
*/
	display: block;
}

.option_btn a:hover {
	color:#c30002;
}
.option_btn a:after{
	font-size: calc(var(--winW) * 12);
	right: calc(var(--winW) * 10);
	font-family: icon-Nissan-Global;
	font-style: normal;
	font-weight: 400;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	content: "";
	color: #c3002f;
	top: 50%;
	position: absolute;
	font-variant: normal;
	overflow: hidden;
	transform: translateY(-50%);
	transition: right 0.4s ease;
}
.option_btn a:hover::after {
	right: calc(var(--winW) * 7);
}
@media screen and (min-width: 769px) {
	.option_btn a {
		padding: calc(var(--winW) * 12) calc(var(--winW) * 50) calc(var(--winW) * 12) calc(var(--winW) * 20);
		font-size: calc(var(--winW) * 16);
	}
	.option_btn a::after {
		font-size: calc(var(--winW) * 14);
		right: calc(var(--winW) * 20);
	}
	.option_btn a:hover::after {
		right: calc(var(--winW) * 15);
	}
}
.option_btn .text-big {
	font-size: 1.1em;
}
.option_btn .text-min {
	font-size: 0.7em;
}
@media screen and (min-width: 769px) {
	.option_btn .text-min {
		font-size: 0.8em;
	}
}
